From aeec2982a0fc7c7a9ef47fad4d390d826f149e91 Mon Sep 17 00:00:00 2001 From: DrBroiler Date: Sun, 11 Jul 2021 23:06:30 +0200 Subject: [PATCH] first push --- LICENSE.md | 660 + README.md | 20 + app.js | 40 + assets/favicon/android-chrome-192x192.png | Bin 0 -> 3693 bytes assets/favicon/android-chrome-512x512.png | Bin 0 -> 9270 bytes assets/favicon/apple-touch-icon.png | Bin 0 -> 3221 bytes assets/favicon/browserconfig.xml | 12 + assets/favicon/favicon-16x16.png | Bin 0 -> 485 bytes assets/favicon/favicon-32x32.png | Bin 0 -> 886 bytes assets/favicon/favicon.ico | Bin 0 -> 15086 bytes assets/favicon/mstile-144x144.png | Bin 0 -> 2454 bytes assets/favicon/mstile-150x150.png | Bin 0 -> 2235 bytes assets/favicon/mstile-310x150.png | Bin 0 -> 2301 bytes assets/favicon/mstile-310x310.png | Bin 0 -> 4335 bytes assets/favicon/mstile-70x70.png | Bin 0 -> 1676 bytes assets/favicon/safari-pinned-tab.svg | 1 + assets/favicon/site.webmanifest | 21 + assets/faviconData.json | 1 + assets/fonts/Assistant-Bold.ttf | Bin 0 -> 76500 bytes assets/fonts/Assistant-Bold.woff | Bin 0 -> 34780 bytes assets/fonts/Assistant-Bold.woff2 | Bin 0 -> 31036 bytes assets/fonts/Assistant-Light.ttf | Bin 0 -> 75508 bytes assets/fonts/Assistant-Light.woff | Bin 0 -> 34304 bytes assets/fonts/Assistant-Light.woff2 | Bin 0 -> 30836 bytes assets/icons/_icon-mixin.scss | 7 + assets/icons/fonts/meshviewer.ttf | Bin 0 -> 4332 bytes assets/icons/fonts/meshviewer.woff | Bin 0 -> 2948 bytes assets/icons/fonts/meshviewer.woff2 | Bin 0 -> 2336 bytes assets/icons/icon.scss | 54 + assets/logo.svg | 30 + config.default.js | 186 + config.js | 75 + config.js.save | 92 + gulp/config.js | 47 + gulp/serve.js | 39 + gulp/tasks/clean.js | 6 + gulp/tasks/copy.js | 13 + gulp/tasks/eslint.js | 8 + gulp/tasks/favicon.js | 65 + gulp/tasks/html.js | 60 + gulp/tasks/javascript.js | 13 + gulp/tasks/jsonMinify.js | 7 + gulp/tasks/sass.js | 18 + gulp/tasks/sasslint.js | 12 + gulp/tasks/setDevelopment.js | 6 + gulpfile.js | 39 + html/index.html | 48 + html/offline.html | 23 + lib/about.js | 44 + lib/container.js | 22 + lib/datadistributor.js | 103 + lib/filters/filtergui.js | 44 + lib/filters/genericnode.js | 63 + lib/filters/hostname.js | 42 + lib/filters/nodefilter.js | 22 + lib/forcegraph.js | 288 + lib/forcegraph/draw.js | 120 + lib/gui.js | 143 + lib/infobox/link.js | 89 + lib/infobox/location.js | 71 + lib/infobox/main.js | 70 + lib/infobox/node.js | 194 + lib/legend.js | 55 + lib/linklist.js | 71 + lib/main.js | 123 + lib/map.js | 251 + lib/map/activearea.js | 291 + lib/map/button.js | 154 + lib/map/clientlayer.js | 62 + lib/map/labellayer.js | 352 + lib/map/locationmarker.js | 32 + lib/nodelist.js | 101 + lib/proportions.js | 187 + lib/sidebar.js | 64 + lib/simplenodelist.js | 66 + lib/sorttable.js | 69 + lib/tabs.js | 63 + lib/title.js | 36 + lib/utils/helper.js | 206 + lib/utils/language.js | 70 + lib/utils/math.js | 31 + lib/utils/node.js | 144 + lib/utils/router.js | 150 + lib/utils/version.js | 99 + locale/cz.json | 96 + locale/de.json | 98 + locale/en.json | 98 + locale/fr.json | 96 + locale/ru.json | 96 + locale/tr.json | 96 + package-lock.json | 24959 ++++++++++++++++++++ package.json | 68 + polyfill.js | 30 + scss/custom/_custom.scss | 10 + scss/custom/_variables.scss | 4 + scss/main.scss | 29 + scss/mixins/_font.scss | 19 + scss/mixins/_icon.scss | 7 + scss/modules/_base.scss | 92 + scss/modules/_button.scss | 105 + scss/modules/_filter.scss | 70 + scss/modules/_forcegraph.scss | 11 + scss/modules/_infobox.scss | 51 + scss/modules/_leaflet.scss | 529 + scss/modules/_legend.scss | 74 + scss/modules/_loader.scss | 7 + scss/modules/_map.scss | 61 + scss/modules/_node.scss | 30 + scss/modules/_proportion.scss | 29 + scss/modules/_reset.scss | 40 + scss/modules/_sidebar.scss | 147 + scss/modules/_table.scss | 94 + scss/modules/_tabs.scss | 29 + scss/modules/_variables.scss | 50 + scss/modules/font/_font.scss | 6 + scss/modules/font/_icon.scss | 54 + scss/night.scss | 142 + service-worker.js | 23 + yarn.lock | 7649 ++++++ 119 files changed, 40594 insertions(+) create mode 100644 LICENSE.md create mode 100644 README.md create mode 100644 app.js create mode 100644 assets/favicon/android-chrome-192x192.png create mode 100644 assets/favicon/android-chrome-512x512.png create mode 100644 assets/favicon/apple-touch-icon.png create mode 100644 assets/favicon/browserconfig.xml create mode 100644 assets/favicon/favicon-16x16.png create mode 100644 assets/favicon/favicon-32x32.png create mode 100644 assets/favicon/favicon.ico create mode 100644 assets/favicon/mstile-144x144.png create mode 100644 assets/favicon/mstile-150x150.png create mode 100644 assets/favicon/mstile-310x150.png create mode 100644 assets/favicon/mstile-310x310.png create mode 100644 assets/favicon/mstile-70x70.png create mode 100644 assets/favicon/safari-pinned-tab.svg create mode 100644 assets/favicon/site.webmanifest create mode 100644 assets/faviconData.json create mode 100644 assets/fonts/Assistant-Bold.ttf create mode 100644 assets/fonts/Assistant-Bold.woff create mode 100644 assets/fonts/Assistant-Bold.woff2 create mode 100644 assets/fonts/Assistant-Light.ttf create mode 100644 assets/fonts/Assistant-Light.woff create mode 100644 assets/fonts/Assistant-Light.woff2 create mode 100644 assets/icons/_icon-mixin.scss create mode 100644 assets/icons/fonts/meshviewer.ttf create mode 100644 assets/icons/fonts/meshviewer.woff create mode 100644 assets/icons/fonts/meshviewer.woff2 create mode 100644 assets/icons/icon.scss create mode 100644 assets/logo.svg create mode 100644 config.default.js create mode 100644 config.js create mode 100644 config.js.save create mode 100644 gulp/config.js create mode 100644 gulp/serve.js create mode 100644 gulp/tasks/clean.js create mode 100644 gulp/tasks/copy.js create mode 100644 gulp/tasks/eslint.js create mode 100644 gulp/tasks/favicon.js create mode 100644 gulp/tasks/html.js create mode 100644 gulp/tasks/javascript.js create mode 100644 gulp/tasks/jsonMinify.js create mode 100644 gulp/tasks/sass.js create mode 100644 gulp/tasks/sasslint.js create mode 100644 gulp/tasks/setDevelopment.js create mode 100644 gulpfile.js create mode 100644 html/index.html create mode 100644 html/offline.html create mode 100644 lib/about.js create mode 100644 lib/container.js create mode 100644 lib/datadistributor.js create mode 100644 lib/filters/filtergui.js create mode 100644 lib/filters/genericnode.js create mode 100644 lib/filters/hostname.js create mode 100644 lib/filters/nodefilter.js create mode 100644 lib/forcegraph.js create mode 100644 lib/forcegraph/draw.js create mode 100644 lib/gui.js create mode 100644 lib/infobox/link.js create mode 100644 lib/infobox/location.js create mode 100644 lib/infobox/main.js create mode 100644 lib/infobox/node.js create mode 100644 lib/legend.js create mode 100644 lib/linklist.js create mode 100644 lib/main.js create mode 100644 lib/map.js create mode 100644 lib/map/activearea.js create mode 100644 lib/map/button.js create mode 100644 lib/map/clientlayer.js create mode 100644 lib/map/labellayer.js create mode 100644 lib/map/locationmarker.js create mode 100644 lib/nodelist.js create mode 100644 lib/proportions.js create mode 100644 lib/sidebar.js create mode 100644 lib/simplenodelist.js create mode 100644 lib/sorttable.js create mode 100644 lib/tabs.js create mode 100644 lib/title.js create mode 100644 lib/utils/helper.js create mode 100644 lib/utils/language.js create mode 100644 lib/utils/math.js create mode 100644 lib/utils/node.js create mode 100644 lib/utils/router.js create mode 100644 lib/utils/version.js create mode 100644 locale/cz.json create mode 100644 locale/de.json create mode 100644 locale/en.json create mode 100644 locale/fr.json create mode 100644 locale/ru.json create mode 100644 locale/tr.json create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 polyfill.js create mode 100644 scss/custom/_custom.scss create mode 100644 scss/custom/_variables.scss create mode 100644 scss/main.scss create mode 100644 scss/mixins/_font.scss create mode 100644 scss/mixins/_icon.scss create mode 100644 scss/modules/_base.scss create mode 100644 scss/modules/_button.scss create mode 100644 scss/modules/_filter.scss create mode 100644 scss/modules/_forcegraph.scss create mode 100644 scss/modules/_infobox.scss create mode 100644 scss/modules/_leaflet.scss create mode 100644 scss/modules/_legend.scss create mode 100644 scss/modules/_loader.scss create mode 100644 scss/modules/_map.scss create mode 100644 scss/modules/_node.scss create mode 100644 scss/modules/_proportion.scss create mode 100644 scss/modules/_reset.scss create mode 100644 scss/modules/_sidebar.scss create mode 100644 scss/modules/_table.scss create mode 100644 scss/modules/_tabs.scss create mode 100644 scss/modules/_variables.scss create mode 100644 scss/modules/font/_font.scss create mode 100644 scss/modules/font/_icon.scss create mode 100644 scss/night.scss create mode 100644 service-worker.js create mode 100644 yarn.lock diff --git a/LICENSE.md b/LICENSE.md new file mode 100644 index 0000000..88f1b84 --- /dev/null +++ b/LICENSE.md @@ -0,0 +1,660 @@ +### 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 . \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..0c3d60a --- /dev/null +++ b/README.md @@ -0,0 +1,20 @@ +# Meshviewer +[![Build Status](https://img.shields.io/travis/com/ffrgb/meshviewer/develop.svg?style=flat-square)](https://travis-ci.com/ffrgb/meshviewer) +[![Scrutinizer Code Quality](https://img.shields.io/scrutinizer/g/ffrgb/meshviewer/develop.svg?style=flat-square)](https://scrutinizer-ci.com/g/ffrgb/meshviewer/?branch=develop) +[![License: AGPL v3](https://img.shields.io/github/license/ffrgb/meshviewer.svg?style=flat-square)](https://www.gnu.org/licenses/agpl-3.0) + +Meshviewer is an online visualization app to represent nodes and links on a map for Freifunk open mesh network. + +### Demo + +Embedded: https://regensburg.freifunk.net/netz/karte/ +Standalone: https://regensburg.freifunk.net/meshviewer/ + +## Sponsoring / Supporting + +- [BrowserStack](https://www.browserstack.com/) for providing an awesome testing service for hundreds of browsers +- [Travis CI](https://travis-ci.com/) for building meshviewer on every push and pull request +- [Scrutinizer CI](https://scrutinizer-ci.com/g/ffrgb/meshviewer/) for testing code quality on every push and pull request +- [POEditor](https://poeditor.com/join/project/VZBjPNNic9) for providing an easy non-developer translation environment + +These tools need a lot of infrastructures and provide a free account for open source software. diff --git a/app.js b/app.js new file mode 100644 index 0000000..0f47e23 --- /dev/null +++ b/app.js @@ -0,0 +1,40 @@ +'use strict'; + +require.config({ + paths: { + 'polyglot': '../node_modules/node-polyglot/build/polyglot', + 'Navigo': '../node_modules/navigo/lib/navigo', + 'leaflet': '../node_modules/leaflet/dist/leaflet', + 'moment': '../node_modules/moment/min/moment.min', + // d3 modules indirect dependencies + // by d3-zoom: d3-drag + 'd3-ease': '../node_modules/d3-ease/dist/d3-ease', + 'd3-transition': '../node_modules/d3-transition/dist/d3-transition', + 'd3-color': '../node_modules/d3-color/dist/d3-color', + 'd3-interpolate': '../node_modules/d3-interpolate/dist/d3-interpolate', + // by d3-force + 'd3-collection': '../node_modules/d3-collection/dist/d3-collection', + 'd3-dispatch': '../node_modules/d3-dispatch/dist/d3-dispatch', + 'd3-quadtree': '../node_modules/d3-quadtree/dist/d3-quadtree', + 'd3-timer': '../node_modules/d3-timer/dist/d3-timer', + // by d3-drag: d3-selection + // d3 modules dependencies + 'd3-selection': '../node_modules/d3-selection/dist/d3-selection', + 'd3-force': '../node_modules/d3-force/dist/d3-force', + 'd3-zoom': '../node_modules/d3-zoom/dist/d3-zoom', + 'd3-drag': '../node_modules/d3-drag/dist/d3-drag', + 'snabbdom': '../node_modules/snabbdom/dist/snabbdom-patch', + 'rbush': '../node_modules/rbush/rbush', + 'helper': 'utils/helper' + }, + shim: { + 'd3-drag': ['d3-selection'], + 'd3-force': ['d3-collection', 'd3-dispatch', 'd3-quadtree', 'd3-timer'], + 'd3-interpolate': ['d3-color'], + 'd3-zoom': ['d3-drag', 'd3-ease', 'd3-transition', 'd3-interpolate'] + } +}); + +require(['main'], function (main) { + main(); +}); diff --git a/assets/favicon/android-chrome-192x192.png b/assets/favicon/android-chrome-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..c5dd45d31fa9eaeed851697a6bf9d80cf2f328ef GIT binary patch literal 3693 zcmZ8kcQhPY_Z^I0qK)V+N}@)K-g~c4A0gs5i-9-4`i-h0?AK@2B z-Gpuv0}D+9&%k4$IZM<2;BvjMql+|}as&A>ACuV&o*6t}L1szvzXF4!}_REFAb91wJuj)ZAierV4HBa_Z@^Nzr3WlfYk95j#3#OLnS+APbZKhRJzq!~-db0Q}~;HTc>3 ziZoc&B5j{1Dc1XPRgWkXY0GsiZ6@RkgXDkX=vWieEuFh$#|BeH4ZH>ouSQ>6I?871 z1YYHAMG3Hamis#tUSDPy^&M1Ptd<`}Wh0>VK^0F8DuaH8URAOM7j$^be-PC9m9v{e zNg}myB^c^{H;%mA+9S~gje(TA~^fF?Ele7k)i1bq7RD6%$(CF;Sn{BwK546@`ofAWn$DP`l0EB1Q%gJ_E*SBdEFh~zPo$EDVN4QZ z7}}(jKts(t7rLz0V}=_A-uh8k-sXH?;+~*nBid6l zTd-A$Cw6Asj^H~GrfVV+LB1=1w!(PzgmGRn@zKS?+liR;g)^fod9-KyBiakl3Y+zzI|Q(|)ReWmzh@Bs~;KnULZ zvYk(_}_e> zGr-4oUe|YA1g4Phq8g*6d%S_nA~mhE{r1Y{^(Ez()c4Oi?iqSw<#mi96Go)*n>OC!NZDITw?p`184G%W^?cfC27wjK!sKd7K z)&tx5H6tT8xig)T4I0#0+JpB5R&je+4@3U#7+fXEk^l)QM5$qF(C+u@i4RJ2e)nva z4&J3sd-&`(?$~XAU^5;oE`QBrD_LN4Wll?)oUP@-=~pw2tsEbXk~NQvv&<@fl$9XM z4HqZWrI=dGQ^Q&4j?Ddt9?8gk$1hvOp+d{JPETMv<5DMt-4H#MlsyS zR*mv}$R58J-;KS4$O@NeJao2?=o6r;I9jrW`=|IHlR2~XVfj=P1xQgqeDnN@azO!L@ zi>ImY6vMZTKY+}K+MR`1yTh6*$xM)GLH$Xc-q1ZnhSgVHVT1L!)`#}_`-)oLBPOnKiWSpEtH$xl zAx@(M*W0U|z^mJDdVhyn;wEV0El*g_)$4r8danmAq$7^qn!o$aE#aK_CNjX`^L(m3$o~S;W*5YG8gCBbk2oO{%xEU^{9oni^ zGOT39rV-Yh6BIN{6OxPvIM>MyD<@#vJO_gD%Vbe0Ij?skT9+u@<|TeT9>i$vIT2_K z$(`jw3Ay~sro4Z=K(D;taahUNE5jdvuoy5Br@VDm^LKdz&|eUg4yGWYvGVl2Kqd0Q zHzG^vb$_<&f+6IPQjSk5)N?zSs@{ z9w0Q{Bj9q7kI!u=0i6=+fc?0V(2r|+CSDWWRxClUpAy{B2ilqzxgrJ4ZfQ^e_;hnf z!R2l*xH^rwzth+K#BrF|1ZrF!fU-<+dJhJ>4tFufz9L)oBBl3Wy}i@!LSf)GxZq;a zVo2zHCaJBlak(4}`Ga8v1^e%xnN>mwKaNAL6xazz%MQG%vds0+Lk?AU1Y}aF0!6wW z5mYreURIxeV+Pu%hgV<-?$w3yA7B&_zFUoJd##$5k$R~XzB^x>7gifjwa&Ub90+H< zJU=iGO$)E@cYnD8@^%r6jOqkGSvEY8euJ6vSVc3n5e;=4=Y6Do$|6BjP4W)=!LMM! z)*uRU=QUBg0Ft?Fjcz6Fl>G~I;%!(5Jw^Vu#^@)so65--7iTq&dN95 z-@&$jvF}W9`_mbChYGwQ$Fe*n*T@oG3>0DV2v1OgBGw&$#P9nK$0TPw*b<+RpPd*T@^J1`cVIfhIvI%3$eZSR=Lo>*8o?vmgvWd*B|>TT{q ze3QF!8*A1HZs%1ryqagZzutG!4Y?-@_QHzM6%yS3+zeg{zjK;JT^4W98U4bN?{p$2 zS&o-3TS@{{Ve#6KlIiY@7jo>4I*!5Z~v!Jj3>dp0 z2N3`R8pnT9$V1E3OJh%`%ZKbs+)QKdcQ=wKO6u$lE~$_;AZXk~aF9&aHZ@#^bMX+W zNs0d8;@-w4?-4h1!Z|)!;kHqvhHa`;n$|54QAsO%L#w(V=h~8R@z!FJ6mb)|a*0u6 zQtKg8#iMJ#TM9>T$wdP=WV#4u5bI_zZXeeWJ^X=;Piu-+Ii!~^Oj`Kf15}-^8~lghOH52i50FVN}8;4P8{E+McNjiFAZ-{s4>Io%U&hIy^4-)k@Q71=$T zwdIp131j&VX~}1Ht4y=Z%^Z?akO!@ha3jDXoXDT$`J5N&QH}@VC8CdSKQ#6%Lmtph z`Ad_z>o)hE;K)p>`_$!ZmVCgDLl}R;cdw|31@cdw8lRU0n8RlS`%ENJFVcSPl|L!L z05tY36Cpn1c#GDNSzq5x1S(~6@&9;2PaMGVkYH0LdNdAF{w2Al)HGZbL1V&X0&mGC z0fJ(laWUsI7ENzd)R#^P(nEP4=Mik_tg1a{o|-<-;uG}+QTi=+s2g1_t!4ZsizoaX z8MS%G(7{P?Ba6|6I6x^{VO!1erMNGQsQF9J($1K+-Ts~DL3u6Qw=o_Z%P_m%Eg>fY z{_xSrQ2qV52@c;zItE|lh4MPT41acrJJJeUk~C+z{4_tHDYc#WtRdYJnjW5fd+HA2 z7_v*^br@8vw!K(ddBZ$ObND&Y6o@RQn%7=kY3$g zg_}P!7bM>=KPx0WI~CT2iUL>21YpIn{|#2}uJObt^|y%@0yl2jE`YA4kw%@GQ|$i% D0$C&@ literal 0 HcmV?d00001 diff --git a/assets/favicon/android-chrome-512x512.png b/assets/favicon/android-chrome-512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..7f2934383cb9359470fa40555f4250f778998bdc GIT binary patch literal 9270 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 V=rTn5HR}C`qOGB?UZ!dv`ag}IKcN5s literal 0 HcmV?d00001 diff --git a/assets/favicon/apple-touch-icon.png b/assets/favicon/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7bcafc10fd7d50ff98e1e4a5e892f89184d51feb GIT binary patch literal 3221 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 literal 0 HcmV?d00001 diff --git a/assets/favicon/browserconfig.xml b/assets/favicon/browserconfig.xml new file mode 100644 index 0000000..153c99b --- /dev/null +++ b/assets/favicon/browserconfig.xml @@ -0,0 +1,12 @@ + + + + + + + + + #dc0067 + + + diff --git a/assets/favicon/favicon-16x16.png b/assets/favicon/favicon-16x16.png new file mode 100644 index 0000000000000000000000000000000000000000..42ff0beb16a67d625f9119317d4abeec2c99d82a GIT binary patch literal 485 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf#sHrXSD(zn^>X2Gv{WQ+y=?f6 zE^8pUPC5c8zCtJlNPau5_4Sn22KjKHI9xHD0hIlAPV@6IZMevKneZ*zAzw~t0})W; zmy_CGj%$Cvpb0eL>q+fb>x>X8<-)(7(K_Jm3secT@p`k}ZhQYvM|56qH2Qi<`~6-$ zAbEe9#pNo;BcWbE!Kv3a@B$rgT@vIM%&@L>r3vd4MmYgdo^G!>)@PP+Xy+W*t;?~g zZF6wFo3vtoX|v!g%d7L}srL(+6>V(Uk-F)~(aA=e=K54W-Vg;eW`(DVV~B(#>p@m0 zCPxN_13UNaRa)ZA!XmQq_J8{`l0X#--j@|yirIP=Wi-C3voyLb;#8#f`-SRimF(Tp zi9-FyIL=lC`EK7{I@yF@ljroa58uDemDgfb_)}B1{QfQmgW2+Lca?2tOu4?iY+HT( zZNI?fPecFx`D8eM|2p~VMw?kZk5}E5*H69IFE+DoXJ70t^(m(-0(MKgtW4VFxbakV h%j;ss1weP%KWE@Rv*7%kKR_2Tc)I$ztaD0e0swpL&g1|9 literal 0 HcmV?d00001 diff --git a/assets/favicon/favicon-32x32.png b/assets/favicon/favicon-32x32.png new file mode 100644 index 0000000000000000000000000000000000000000..7c478b7b1370633f939c8f6d072d78641f3e3d4a GIT binary patch literal 886 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabRA=0VB`q!332twEL<-azC}A^y=*uL z$-zhq%{}VxW2u1A;#6*8g-+2PkqZ$^)Vv$bK}({7#=0 zM8OV=zzfArd!7C6PqhSk_U=TG_?yj!N5Z^-44{@5MgK#AK@(OIMp?pfUQBJ-df3eJ1I4$EG*TX1KgtcQxx z)KV_(cNRIjzGS@ovp%Qa)z(Pj#Arg{D52jbo3SeNn zFuhWrhr$Q*9`i^QXC zafj|di!_(L)zv2PxXml{@ke&)=TZ$XBs)6Wp5NwTKM?bz@W^r@qXWzNI+l8Nq?$2r z*!q;GV9LophKmLQk5?QspQlBSo7zuvw1P*p9>&UGvAh28%?3P&$DJHTyxUqOEDft6Rj9sFzX#8>$I z62a>ao|ZIKlzu(cwJ4)#`O_&I_1b(z{kxJ|Q(8sNs+KC;j}ot9KIUfjk;f@GmqAi% ziF}8WiI>Cj)LI9hucFFxm)JF|S)F9&bAsX1U9bJklgmOAs{9fflDsDfuVYDgY;jFY zeNyb&^()vOIDT~ZoOR@4=+g8@H}5EKv0+xY)pF?*&+{4g=A5?BYLi<2$n-B0tF^%| Ui`qhOV4`90boFyt=akR{0FlF*6#xJL literal 0 HcmV?d00001 diff --git a/assets/favicon/favicon.ico b/assets/favicon/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..fc79f4e7f678499e464a7417d10912b1a1dea57c GIT binary patch literal 15086 zcmeI2du*508OL7&^Ri%JOcL!Jtq5~0qXo7a7?&RgF`$HrA`mtc{KF{3KY+~%$)IeQ zvN#A!z%3HCv4lh+G%RT5CV~ZYwJZfUfw?G1X)=by&<=_%mcILb&gIwhyS%;85&r0# zJbljPInV7p=Q)>Oqo`lhKN>S85-yHj9T`RUMNw2-?COJ~=#<(93)BD1fGDaE!8b*t zA<-fM?dBU{QQzM_5A=B;zXu*%R@;BUJ(UBdzW8Ck{1i84t8^YISRr_2!SKpT;Z1^R z0%e37`;(3{1;+((7FomEVz5u?F;U%9Hw$Xl6?94KJ|YjK=&rqYlQa- z&bhWLYFnB#K5QrUN@|*Jxz^Z|-X)T~MSxGw2o4IK6y*3(ZGRAW-IuCd0G+d|*7d=s zFw`}>T>95bUn_mDX?2Qg^!l-N_B(;fmT;2{PhYb?k!h~TCymM1?s5lyxBg@;+W7UcO*~Hy$Ex1s=(mLJl-17qr5_vS zW%v8KbR8l%A$VPO6bNs3^&y_7D_AlL1wNLE3*%2=^gws)S`qS6-O>~HS}$3B%ok(u z|D3QdEEDra_v%Y0g;zS=U#C5!>#QspBNey*b~0Cadehz>Cl$UOtUmG!{sqXLtY`SJ z7W^8<2Ig?FAa5>^&f^8d{sqlJtML3#PG@EK3dr9+9%`K~%n5$ySLpe!ha+T9_k9c~SULO74vC%b@TZS= zZwtClOY(#IZl&MxW4`7IjIAaw*tjAegf?Omw&?_KKk3O@-XdLNL94^I%)F3em0Mk& z41JEj(0j7L>SALX{)>qdFQcc}@g;VMAwQ@1=OgT%zVyhqr2Ec5Z`J|1^m0bqI~S|x zO#VxQ#(Cf3hgI46qo;ayHV!$Gw^(pI(BVp|;=}s1p6$7a^#ItsWalML{o-Hfjt`8_ z{hkdDW2`e>uBG3t{R(0he~x?W0&x;cSMuoiY~E@cEvSVC+6SMleL3{G+D8c3!`Vlc zbT|KI%j-(r$F#*57u&O+)kpUT;)2+Ae!n2hnzr{! ztx5TvGrGTuFyg3m+-u{nNPCO%ryt`92dfPeYO^dT9G68=E zMQ+Bu8vdQ>4~@nZnswZ619yQrjCK9Dx^vb@=G(W^*VRw_xC^x3G1_I}H`??1Ofk=1 z#l4<9G&|g@LfI}3xv$%~w0B_MJ^=iLe~`nP;lA7D^$x9o@#xB(h&%&Ne~;mgmUE}m z`X%3^JK*=!#C$Iv#3S?T=M?_F?BmO0&h2@97W##<=9c>% z>HLI%yu;alw17OcGMj%`7a#cI-%xM-gI$}XOHI&6d#Cf@#-jgm=Gn_*toZr2j*K@M zXq?{Y%sy=QUD@QvCt>mRZ%*8WGxj$ZXV~I%#-=1bzFoBV1O3lvd^$&~-Y!RXF;DNY z%blDfiGA$g+>>)A^7I~yFY}7LbD_MTzfgVn-st4pld$M!3Vf^+_j3gE++12YS$Wg* zV!gU`V9r6lJqepU*Zv-RP;zqY&7!%I#LKsf2Qj%tfUW?s>Ejbzk(5_FkM3acv$AZg z=jgBg0Vb}jE=^tG?c$C&B8PeX$w|DI<;ds?&mc$HhISW_Jtkzn*D1jIkh+QMQ`if$FI)=eIDq# z2V(O@QD?Z((N&dGh@v&Zt*Iy)ma31Ni=wC~bs%mS1g?o2k6L`OI*JO4>P>yk%`I`2 z`m27{60Z?`e0s%A1?9rcW1>_n+}7`OIXLd$aM9rE<~oN5IvhFNXmGt$g1)ZK;?pWq zuZk?6ih(IpA2g*1+*Xtt1U{Wgtpit;rw-jLyk>RL>HfmMTm4CcZhY~u)kVz>7PmAD zuP=`q!7|w3195EH<%Q-(wd-qToW3^r@%`Rm6 z3k8b=?B5HuAAa?EX(@TU7ab6^3BE8e+}y>BdrJrLEEdca%*eJ)b?*Jmf)@l+1RDhC zu_2#)-Fvt*uP%A7>7j4G|9Qs$Y~-UCpBaLW1=c<*Fa55d_KO1Szm4(er}7a&jc@aO z^@jUp$$m|+OK@0_`0ikMiKlqL`#*x^f?o@;E&LyX&s4AReo>isqkjq?@oiqd<$PMr`Hat4ku>9yn$-(B$tOq}iIY0;fMsW7w`G?AA7Y*->yVSSU z&yT0?2}a)7{SEt!t;z!-4{Su1paprtn*|?;_C?qJY)IdevXimb`8ww}JjvN6U|x{@ ztgG)8CRQHliOlRV&K~@qVUOBJ%kEPK+*%OLAmj?B^+pV!%fy#HxqsZ77cMy;5PQt= z;{x(hJo#52zti0q&$cnC4qw4`V%+Fp;}Cxvn6&v+-Q%Tuh=1})I>#sR>rT7)-6p=| zN`9Z)gCFFB=kT}W6XOq=b?)=0#l_u`kxlDz8FI;`>>cDG@}l7z>__Q+Kz-y3@~5E< z^JX^xj_Mk3*1Ir!AwVuZ5b~4V!E&ZVE<(= z0J8@mf1#&kyyOypA2=N{)}v_2>3+WfI9nA z`b;93W-lh^JNa|{c#qv!<_($bBb)&M{0YDGKIq4Q)y`glu8Ul~MCH%KZ!2{^W53=1 zu>ZBB{Hk%t$B$F&NW&j~>?ifUEyQZ~{rC(&v6rH6+W*kIe8}%Hd2bfZe&Y3*%ISSC zXxB|9|EDqRmF#24MOQNy`Kgmz#e-bHe49N9O1B?lTVDG;H}w;TWzcsNubw_1*7z9$ z{Lh>-uf)IiXWseG$ET-l=q-7iV^~AP6wqP(_f%HWICOA6$9^E=Oqn#Uul@h;0sD^7 z{&%g4Uy0*&6B^@tCp5+18Qju#@0!W2H^+C~p(haa)}2ko7f%b$2+r!!qB@Qn`p0qo z*f_3U5w{KcX?bhWlzvx_ynW}@qp3-)Me(GzR6I#+Ul!<r)VD&kb9@nC(Iphn0}urSNVC` zl(TOaY%P87(vPY8&(K*p&x>})5AJ+*pfJ2D1$zZmf@OlCC4aj-Q~#H>R%ek3@H1nf z9d3S)fxhC0cfIl@$77u9AEkC^_Ducxi5JEk`tQ3MyL;TehBqF$|II(6! zjPrVh7@m)Q?~RAcD$gB9hmylhH=#$_A3xnAeou+tMtl>F$u5sR`gs9z(Vag0pgMPj zS(NknHRQpZPFwj8W~L*w>Y^@$o&C_;XxGa=O9` z8v6#T_uns~XqA55EvSp42CcfQzY%;AMXf5gd_RinpNyjOKZ&BVmo=ujecb;5ITe(g literal 0 HcmV?d00001 diff --git a/assets/favicon/mstile-144x144.png b/assets/favicon/mstile-144x144.png new file mode 100644 index 0000000000000000000000000000000000000000..8131e67dec58087223ae3a24c92717bfff03c118 GIT binary patch literal 2454 zcmcJR`9IT-1IORyJ|ek~Mmdr*5*mFB%avmbbDv?3k73L$Qi{2+=8D{WK0<|%D3Ruj zwwPpyIYZ`X6TW>P-@oDedOTjQ=Z~*npQ&&wlQUf6TmS%^F*AkT{=@A5mV^1vekweN z`vX_Fh3!oX|IpL_TLfsUpg%|8@Y_~4zyg=>8tc^W!=Io`uw3cczIuzUk#ILPe;vaY z33gP!9BTmJ7&3zy*hbC#a3;4`EArUE*bss%>ZhkghZQhH$f}J`x!VR3d=$PW&nXsB zxe~vuINO z%C!MuUH}kz*StXB)Oo;52wwR4PKCTJz0M(N_EQ4MjU$=r*kBasIMd%rs4VW%7Xk34 zWCJx3)3`3F+xmhCiG)tOpSwHVF0-qd6L5RNMWy`0#nm9F;dlR0X00NmbNm^Uc*_X| zrWtIALuL7r4h%95_CT(B7Z4-e?05Iw(#xrJ4acz?biNM#1gQJgdpu6xLmmA_cx_m_ z?0aZ`%R+`nh5N=83td#+0?}br^X!ANyw@L1B#Pp?Sfi1dKh zDR-9XgS}0S>2>c#+BaB;k9iUq7dyj-HFS$DX(~!t2`Z?M83khg=;%b^2{IybF?&A| z?k-I?Q8#i9-Da+E2%OxtFmd8TR&V`W7BVh6<0ug$Wg^cDK;47$7BXDEfNjlWdswP3 zO2FG}J^=un*trBGmPnAn!Rf-v{MM!U(EI1H7;3uAb3VXlGrB^jgZS?Rc5VJu8mSV! zW*8C~FWO!vS9)Cf19Rtno0vpgnbbrFi?h~}!D_VU3}^S37Syt(#VCypN zZprJZkZWX=1i3304g2xJns1Tkr1jkJTIK;obkRG#wn1UN+&5J!4!4ZrKz>dotcoJ% zjTO+v@@A(kQ)yp8HUL0v9_-(j0&wf3JB7c1=tsp3;)7aQ8EHv%UlaQtONfA?%kyQO zW2b-1OKa|it;A+^JE%2ND4+-Fd)V`gxy4@71ZH>uF}EXAZyN#oCinEMY2Dou9#-GI zBcCv)j~4FLr`*c_5K17Rs-m8;*ExsYeX%f4ja2*fY&$83Zc)H{G_Svge-$@Pn=}(k zO~o%3aCTwxddl+a-He8_Ey#aSJjqdR!8Og7_@BMQpR;G|D@8J5Ec$Ry@Co6^x1cH;*Qr++=kXhPJ(*64eF_t= z$yX3AVz#?BYa5B4&fy3&TkR;6QfERDb)NQ&`car*m30C$7|bJt`}e)<)jqMpQuogL z>y2f;o~^5%B2;07S!PF5l0!eUEK~`Hg`MYKD=YHkx5Rl^5Cv{A=Rhv8Ui-Ry$@j+a zUKEYiRAVAwvYGGun&*JeOosB%+La+QWEa-aYQ89Ki4Yw%GBW;FI`vhh3T)ZGBB>g( znWv$|CdUa}DO$mS5*e+yb8);1nDH5y&P%Jizq22PU@9)K(~-=;X}CZoyJe$(WXw}u z=pGYvSg;c!&D7E~zTPgLY-{wPl|WRLj5A)MFZF&K7**im`rPn{PZv9r`}yxSZ^-un zKDXF>30>!*nu~AhJ)HKQzZJ#eN?enxsE%wWB^{mByayA+oXzXL6pb14n4Qrkj(@mE zI`l21{)QzD%|%QLs1Q7wx`MW}%^82ur6o0en*5oy_7ej@5!K|;O^IChJnZXB#<@UFo@Fi8BUl=>9 zj>?N^4KW&X`{Gtahd-fqv&^z!JE(j?Y;Lex!SneEAGF?GiQ=a3- zJzlbm#jpuN8^1TtyI+roc)iN)s}(jv)IYbj7RZ;4Ywsxzw*j|$N4^VNQq|=77^o0& z`SPYv*|)TUppbD(2c(R>wCpo%EkEF3OjTE;y?lQ4g0nf7mUx}xc5CUgDEaU8UsctU z^k)h};2@}QzpHD;9TFAkHLcW8t*!8E`Wj;V;2yl|Krb-HMGI1}Bx*fVCy5Th-w(4& zdnmELYGsC0oW*k+FNcc;3`1^ECHt|Z`gXT-!1<9t{!w9PE@GZnptFlSxmnQvvckcT zjyBOzojP*THp|tY z;1dQ@ght7im`D1bO%I)Qx<9%3bWW2R^$X2iF*Ta{rDHC8W`wLM)Luc&#l#99dHDjs z=5k0R0cpv>v9atW;{QWM;>W59wf-`Y-9_NmarT@U>c;y0YMHxvO?#W|(nOWLO%`&p zW{Y0{LrK$oN~q+pfYM5aiDbpR`Hr@PW7u49Iu_j2n4pfAOC`~YAL~t1VwkwPqfxCL zQ)IvR#!c+uwrh7KwF5>sN^MEBKywlW+v({Ap6NS-_Jq25q=68xoCg%3@JF#%}| zlJ?vaX+QMita~fb3%i_s)a4;2jNG-XZka2$>@oOFN2*M#AW28LA~yUCwq3LOBxQc* zL{#N$Z*R3eByZyY8go5_RslCGjky{$vsjbUGyaT)yl>AwEckX>#W6zG$}5D(R|uln zonA6}Kekn({KAi}^R7G)tXUAUqAN(Wz@F5VKX9T@$ToXeTf&Rbp}Npxk0ia8oKHbV zY@3CZhtn>=Qz?4&QmI#EAS+cPD!io@I$$Jo7?msb?yt+R?Yqq9tYGV%bngd?vYeUY zf#}I+8RYGF&W&hK%f>EnbgyFS&Y=XfR~a$M`ygzr(>;B(_oq;tsJ81AR(bR*{65F^f=DyBaYPySz$6jf%#qRaHABMpSJr zLL>F;QAKJKH7bg#^6mQzzVDpxJ?EZ#&OP^he!WR>D-$k`D;z8=EL<>Cuq_MAf4Kkg z1=e4UHHtmwS3uwv_7DsI;Isc*30O?kFQ5S0*2<2B+*@2xF)dSWET_TQ-F3o99AqUa#cjCUhU^ehHPK1iI8jwDG7#|#W1U#z;_RPPHRkNnc z5bSYpH+W3u`T(A#(ez&Z;@lRR4YfX_Y0N7$9r@jzGLlV^*m(&QJ;J(s(QgAR}4%Q$j9xAfy`QtuyL8GH8W3s3u5a z@huvsy#!VuBD2wr)RTQFh1}k&p>KSHV?reEZn~Tgeu{Y!DtunkvoCv0n&45o z;oI0(!R*dYFZI~A!PV%1pVnGkn9Wnw48s_dFP~GKR9coA*iDaJKdqfOovWL?_$-3} z*dUh%U##?F=4(L>%(1$!d7>rp@mhV_mPrt{lZ)BBp+D12g5~{_8>@-)SMgXa0R_SW zb<`;__xo%76IJC=Qm)-MpWM}5PlpauQO~sv(5PCTMbXXB5ph+$xOg;oySLMmni$Do z1k*BaFTt4#5nW6#m7{lAT-mf=eyp}5%qcH@S}V$d?iw&2pGXP1{>tNAeOQ&KzP6<{ z*OVYu=tkcwqR1>!&FHpuhpy<;-tPwP9>jQ58UIp*sF@USAbF zN$04$@W@g=33HE#=li(;VMJ$xjDZE)T!F3_0xecGOM3L;(e!6bDxtZk0xK$!)}YDN ze}dyKGF>U&)(kM&s0)g|oM`RB9KNIei7h?JiYsG1pE!s)s{0wSc5MZ#td!WRYY#f z%k4#eDI6J&4UabNYu0@;PTLy6#*b^9bq^x|nLf;ALRgGom~5M{6bhEAqGgWb%{&^s z*H{>T-$)=7`>;N6M|Qk1@;r=NFfo9?Bv5W%r7taoslm}eR>=_~$;&qoHtSLZ0;M1I z3^u#P8?St9H*P+N^zR)aU$-;t5O#a-Kg9195US(`y1#Xo2RHvCWfTIOY!Q#^_`S`6 z7xEj`EMkKgg<6F;atSjA&D9Sg{;0qdU0gZ5yK81>I_KEVzPHCvUiH3Ay}3&v4G<7O zX4z+@8?g2g^XOtCQNy*fs&KNoTI1t#D!7ect5m4|4U$AdO-S(PY+#=F%WdE$icM?Q z77Izxen8dXaa%~xG=GMFWE&MD-cP#nW5K-5o{fa@csKHNP6j)^J2}Or2VNNI`Chgg zGg6R2h9bZ9fS%+`al2^^j>TFnT}wOA32v^LuuNcdr^ul_kTjmfAZ6%W@O<2qv$^@o zXmZUgxwX!>xF7q}Wr)HzzYZvo1V1<=tTojH^c7c3(ZT+BLvRVLZD{iO`lqtr0y|w4 zR&}^<-DVIvmE7zl-i!?h&BWlwE$EGIAL~;qNwWkR`>bw9R_(bW+~|h@p_1aC;g;*h zt@lZKf-6h+9=cN2vR2W$N>Wy&A5jO$aMo2uPWK)hGaeSAxO{%Bi$>PS-D+4mT%7dm zHvlU5wwQx3&8Lr@guNnrx9IO$Wt}$X6i&(PVfXWf|8rz@B$g6#xrL8^kMhqJ2C)K@jPAt$7qDti A_y7O^ literal 0 HcmV?d00001 diff --git a/assets/favicon/mstile-310x150.png b/assets/favicon/mstile-310x150.png new file mode 100644 index 0000000000000000000000000000000000000000..0e044dcadc848dd4432a6d11e7c460fee02cd674 GIT binary patch literal 2301 zcmb7_=Q|q;1I2^nTA@X1w2B(7D3V&KRiZ&{301S)8ns=dirBSMd+$=jtUXK3){L#K zotL%|u~%I#>bf7^KcMH!d7j^Mo^w7PyrI4(3)6Kb006+E^$3Ll0B9uv02)>Xx=WHZ z;i_?Ia)!Fb>bg#z7r(D!0_o#r0~;2jZv?or->k?<`DYF^hz2_rCkG9egD$ri?6pux zW8eABd7{@l0f;J^hK7c`ccFr#w^0x)F>?64*x^8}fEO6#aVhIvcKxo71Kh2i49G5X zy%ki$kZ@^X0(QIJwIfb-g!A-B3Gb$h|8*ZE9KruNrNeF z!ueC%z6zI=6-8u7JpujtXek>nuXzxF_TrLk@~c}scErIi#$dXD~`p+f%}}^hdIW z90jUO%4*h318eC0I%Efat`^JD`YpLwNut9ISTnHhW(mrVB+y^eF`Gx;Z^WVqaXJxI z+rd{Q2ZY&Np;8f}*3$z-hlQ!tYcNS7LY^^SRx{tlppws786hzFI)-oQ4a7V&z^xm4xtRQ%vL4c% zRynG+BOL~Gbw4dC9G;>?eZ2gLYiEogal;5(ml{+GM zA}S~r{qcv)8^qQM=SWXKN{0!&N}p?pHb$N?i4}%SN2u`;hQ1^O_!Y#sHBpbQF_(PE zf2+xl2~GYD?p| zwYSWv-j3bS>3_tPJ(YtfxyG0D9))yA9G!?_y~U6vZxEqKREk@=^z#3-4;*G{MC zV0GAy8Rw&&-w*W6rIyB_&$_QMA7f?{30#OJL&B0zRz$}fyXhO)Jd0q1!nPC}KsVg^ zx*HR`0nl}VNu#X=i3Y5w%+-H~(tzr|Gb02Et7GB1z<|ONsmCP3k{q$nF+5Zkcqoc| zZ!TkG$)a-8yDy|ECMKJ-H^X*=TH0OQ`UB3NReR@(jOD@+hevM{w+=lYyJ1Xpka-l$ z&!;6qW7YQ1G3bd(3@TH1_8;k+r z+QT+(Got}o8MG#ASc<3QlY8iX`6SF(WHjpRjU-51CqrpnQ~ymAWWcvW*lKZSed>Gb zuXrL!)?%qtb@l5^;yn$|pjDIzPJgz5m_0cDumVcWsbYIn0!#hl<`7h=02XxMc>^hK_|N9E5L7ctVkbRH) zX07WjQB-8WXFCTavwlt|XQ!W0shuJ%;pvmelHfn%?7#>tQC4C=oKbq%Ul&iRCMFrT zVyD?pGZn0eBmB50@mp|)PhfES+;;GsHTQz+Sm~oz((5U`BOJ6ELgir~S~;nCGtFJ$ z!^%QJ2`jlf)kH>{+^rM_Jh%jyR>8#mkh3*gRM^Srv-0}&a+U0h9&lwue{yu9&C{-( zMy8oGCBdvE*f7tgYA-b|gZ%hv>?-d7wX+-(9Y;D{w&{YnD`%fSU~pS#ZZ}!NTp9QY z-hjkL4#r}{O_hwgP-Ff{Iu8;e`~BI^SJDXQhwaUg5Gs-l#frF3-VvAdY^7d_tsK1efF ze6#uZO1erg(<_EU-1l)KPKdKlo<&c+&`cvC}ER5E)96VPvP;zwnZ8 zhmH?6Cg2w}}hNFAYIwo5c0S#e^*dvV|4Vs&yLWaNGOS{6S_;7tiaZ z$4RGk59_FQHS2Kcgy_^{JbJXrC8}*s(I`u8uU^d5Lz?)tVWqHb(TDMw^OwLXw}xB% zM0>NcoH+2rc+7Hw=ULK;H--r$-)|Hz#)UlwI9jsWq)!#y{vpijXvoVG zDgrWJkbnNHI>D7!o?~X$u2Edq`g%U(4>VMyhdWOQPn6pl9CNGY%Gt zk7;Oeqo4$!BQI=Yag%L>8)nW+$4 Z|NPx6Av5o?;G4Vu0WEcXRJEE-*uVUmOospf literal 0 HcmV?d00001 diff --git a/assets/favicon/mstile-310x310.png b/assets/favicon/mstile-310x310.png new file mode 100644 index 0000000000000000000000000000000000000000..1b00e9ad231280592cc811b0c4f4eb8185f1d4a4 GIT binary patch literal 4335 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 literal 0 HcmV?d00001 diff --git a/assets/favicon/safari-pinned-tab.svg b/assets/favicon/safari-pinned-tab.svg new file mode 100644 index 0000000..93d40d0 --- /dev/null +++ b/assets/favicon/safari-pinned-tab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/assets/favicon/site.webmanifest b/assets/favicon/site.webmanifest new file mode 100644 index 0000000..2a6acaa --- /dev/null +++ b/assets/favicon/site.webmanifest @@ -0,0 +1,21 @@ +{ + "name": "Meshviewer", + "short_name": "Meshviewer", + "icons": [ + { + "src": "./android-chrome-192x192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "./android-chrome-512x512.png", + "sizes": "512x512", + "type": "image/png" + } + ], + "theme_color": "#dc0067", + "background_color": "#dc0067", + "start_url": ".", + "display": "standalone", + "orientation": "portrait" +} diff --git a/assets/faviconData.json b/assets/faviconData.json new file mode 100644 index 0000000..f851d58 --- /dev/null +++ b/assets/faviconData.json @@ -0,0 +1 @@ +{"result":{"status":"success"},"favicon":{"package_url":"https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/favicon_package_v0.16.zip","files_urls":["https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/android-chrome-192x192.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/android-chrome-512x512.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/apple-touch-icon.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/browserconfig.xml","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/favicon-16x16.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/favicon-32x32.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/favicon.ico","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/mstile-144x144.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/mstile-150x150.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/mstile-310x150.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/mstile-310x310.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/mstile-70x70.png","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/safari-pinned-tab.svg","https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/package_files/site.webmanifest"],"html_code":"\n\n\n\n\n\n\">\n\">\n\n\n\n","compression":"true","overlapping_markups":["link[rel=\"apple-touch-icon\"]","meta[name=\"apple-mobile-web-app-title\"]","link[rel=\"shortcut\"]","link[rel=\"shortcut icon\"]","link[rel=\"icon\",sizes=\"16x16\"]","link[rel=\"icon\",sizes=\"32x32\"]","meta[name=\"msapplication-TileColor\"]","meta[name=\"msapplication-TileImage\"]","meta[name=\"msapplication-config\"]","meta[name=\"application-name\"]","link[rel=\"manifest\"]","meta[name=\"theme-color\"]","link[rel=\"mask-icon\"]"]},"files_location":{"type":"path","path":"."},"preview_picture_url":"https://realfavicongenerator.net/files/ed9ef5a59ae048602fb9a5b74436696e43a575ce/favicon_preview.png","version":"0.16"} diff --git a/assets/fonts/Assistant-Bold.ttf b/assets/fonts/Assistant-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..4a58b5b37f21e8cbb4d662bd60e7e8835cf5f98d GIT binary patch literal 76500 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 OD7E}2m&sH0suh(00000000000000000000 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̀Jy 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 AS^xk5 literal 0 HcmV?d00001 diff --git a/assets/fonts/Assistant-Light.woff2 b/assets/fonts/Assistant-Light.woff2 new file mode 100644 index 0000000000000000000000000000000000000000..a353ca0811faf3b8780013030a2948d6325a4761 GIT binary patch literal 30836 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 z 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 POfx8-((f%t5>x;H)jcpW literal 0 HcmV?d00001 diff --git a/assets/icons/_icon-mixin.scss b/assets/icons/_icon-mixin.scss new file mode 100644 index 0000000..48a164d --- /dev/null +++ b/assets/icons/_icon-mixin.scss @@ -0,0 +1,7 @@ +@mixin icon($name, $code, $prefix: 'ion-') { + .#{$prefix}#{$name} { + &::before { + content: '#{$code}'; + } + } +} diff --git a/assets/icons/fonts/meshviewer.ttf b/assets/icons/fonts/meshviewer.ttf new file mode 100644 index 0000000000000000000000000000000000000000..96878e608f694eeee32befab8470ae4a7eb1f708 GIT binary patch literal 4332 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 NLJT9rztDGR{|54%3zYx> literal 0 HcmV?d00001 diff --git a/assets/icons/fonts/meshviewer.woff b/assets/icons/fonts/meshviewer.woff new file mode 100644 index 0000000000000000000000000000000000000000..9f3e44ce8c1a1de6f5d3b94d0346a26ec3388fea GIT binary patch literal 2948 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 G0000~6?!fJ literal 0 HcmV?d00001 diff --git a/assets/icons/icon.scss b/assets/icons/icon.scss new file mode 100644 index 0000000..bbb385e --- /dev/null +++ b/assets/icons/icon.scss @@ -0,0 +1,54 @@ +// Needed for standalone scss +// @import 'icon-mixin'; + +$cache-breaker: unique-id(); + +@font-face { + font-family: 'ionicons'; + font-style: normal; + font-weight: normal; + src: + url('fonts/meshviewer.woff2?rel=#{$cache-breaker}') format('woff2'), + url('fonts/meshviewer.woff?rel=#{$cache-breaker}') format('woff'), + url('fonts/meshviewer.ttf?rel=#{$cache-breaker}') format('truetype'); +} + +[class^='ion-'], +[class*=' ion-'] { + &::before { + display: inline-block; + font-family: $font-family-icons; + font-style: normal; + font-variant: normal; + font-weight: normal; + line-height: 1; + speak: none; + text-rendering: auto; + text-transform: none; + vertical-align: 0; + } +} + +@include icon('chevron-left', '\f124'); +@include icon('chevron-right', '\f125'); +@include icon('pin', '\f3a3'); +@include icon('wifi', '\f25c'); +@include icon('eye', '\f133'); +@include icon('up-b', '\f10d'); +@include icon('down-b', '\f104'); +@include icon('locate', '\f2e9'); +@include icon('close', '\f2d7'); +@include icon('location', '\f456'); +@include icon('layer', '\f229'); +@include icon('filter', '\f38B'); +@include icon('connection-bars', '\f274'); +@include icon('share-alt', '\f3ac'); +@include icon('clipboard', '\f376'); +@include icon('people', '\f39e'); +@include icon('person', '\f3a0'); +@include icon('time', '\f3b3'); +@include icon('arrow-resize', '\f264'); +@include icon('arrow-left-c', '\f108'); +@include icon('arrow-right-c', '\f10b'); +@include icon('full-enter', '\e901'); +@include icon('full-exit', '\e900'); diff --git a/assets/logo.svg b/assets/logo.svg new file mode 100644 index 0000000..c06717b --- /dev/null +++ b/assets/logo.svg @@ -0,0 +1,30 @@ + + + Meshviewer + + + + + diff --git a/config.default.js b/config.default.js new file mode 100644 index 0000000..493a7a6 --- /dev/null +++ b/config.default.js @@ -0,0 +1,186 @@ +module.exports = function () { + return { + 'reverseGeocodingApi': 'https://nominatim.openstreetmap.org/reverse', + 'maxAge': 60, + 'maxAgeAlert': 30, + 'nodeZoom': 18, + 'labelZoom': 13, + 'clientZoom': 15, + 'fullscreen': true, + 'fullscreenFrame': true, + 'nodeAttr': [ + // value can be a node attribute (1 depth) or a a function in utils/node with prefix show + { + 'name': 'node.status', + 'value': 'Status' + }, + { + 'name': 'node.databaseid', + 'value': 'DatabaseID' + }, + + { + 'name': 'node.gateway', + 'value': 'Gateway' + }, + { + 'name': 'node.coordinates', + 'value': 'GeoURI' + }, + { + "name": "node.contact", + "value": "owner" + }, + { + 'name': 'node.hardware', + 'value': 'model' + }, + { + 'name': 'node.primaryMac', + 'value': 'mac' + }, + { + 'name': 'node.macs', + 'value': 'MACs' + }, + { + 'name': 'node.firmware', + 'value': 'Firmware' + }, + { + 'name': 'node.uptime', + 'value': 'Uptime' + }, + { + 'name': 'node.firstSeen', + 'value': 'FirstSeen' + }, + { + 'name': 'node.systemLoad', + 'value': 'Load' + }, + { + 'name': 'node.ram', + 'value': 'RAM' + }, + { + 'name': 'node.ipAddresses', + 'value': 'IPs' + }, + { + 'name': 'node.update', + 'value': 'Autoupdate' + }, + { + 'name': 'node.domain', + 'value': 'Domain' + }, + { + 'name': 'node.clients', + 'value': 'Clients' + } + ], + 'supportedLocale': [ + 'en', + 'de', + 'cz', + 'fr', + 'tr', + 'ru' + ], + // Color configs + 'icon': { + 'base': { + 'fillOpacity': 0.6, + 'opacity': 0.6, + 'weight': 2, + 'radius': 6, + 'className': 'stroke-first' + }, + 'online': { + 'color': '#1566A9', + 'fillColor': '#1566A9' + }, + 'offline': { + 'color': '#D43E2A', + 'fillColor': '#D43E2A', + 'radius': 3 + }, + 'lost': { + 'color': '#D43E2A', + 'fillColor': '#D43E2A', + 'radius': 4 + }, + 'alert': { + 'color': '#D43E2A', + 'fillColor': '#D43E2A', + 'radius': 5 + }, + 'new': { + 'color': '#1566A9', + 'fillColor': '#93E929' + } + }, + 'client': { + 'wifi24': 'rgba(220, 0, 103, 0.7)', + 'wifi5': 'rgba(10, 156, 146, 0.7)', + 'other': 'rgba(227, 166, 25, 0.7)' + }, + 'map': { + 'labelNewColor': '#459c18', + 'tqFrom': '#F02311', + 'tqTo': '#04C714', + 'highlightNode': { + 'color': '#ad2358', + 'weight': 8, + 'fillOpacity': 1, + 'opacity': 0.4, + 'className': 'stroke-first' + }, + 'highlightLink': { + 'weight': 4, + 'opacity': 1, + 'dashArray': '5, 10' + } + }, + 'forceGraph': { + 'nodeColor': '#fff', + 'nodeOfflineColor': '#D43E2A', + 'highlightColor': 'rgba(255, 255, 255, 0.2)', + 'labelColor': '#fff', + 'tqFrom': '#770038', + 'tqTo': '#dc0067', + 'zoomModifier': 1 + }, + 'locate': { + 'outerCircle': { + 'stroke': false, + 'color': '#4285F4', + 'opacity': 1, + 'fillOpacity': 0.3, + 'clickable': false, + 'radius': 16 + }, + 'innerCircle': { + 'stroke:': true, + 'color': '#ffffff', + 'fillColor': '#4285F4', + 'weight': 1.5, + 'clickable': false, + 'opacity': 1, + 'fillOpacity': 1, + 'radius': 7 + }, + 'accuracyCircle': { + 'stroke': true, + 'color': '#4285F4', + 'weight': 1, + 'clickable': false, + 'opacity': 0.7, + 'fillOpacity': 0.2 + } + }, + 'cacheBreaker': '' + }; +}; + diff --git a/config.js b/config.js new file mode 100644 index 0000000..4f3e624 --- /dev/null +++ b/config.js @@ -0,0 +1,75 @@ +module.exports = function () { + return { + 'nodeInfos': [ + { + 'name': 'Clientstatistik', + 'href': 'https://stats.freifunk-leipzig.de/d/GVI39bqGk/nodespublic?orgId=1&refresh=5m&var-nodeid={NODE_ID}', + 'image': 'https://stats.freifunk-leipzig.de/render/d-solo/GVI39bqGk/statistiken?orgId=1&panelId=2&var-nodeid={NODE_ID}&width=650&height=350&from=now-1d&theme=light', + 'title': 'Entwicklung der Anzahl der Clients innerhalb des letzten Tages' + }, + { + 'name': 'Traffic', + 'href': 'https://stats.freifunk-leipzig.de/d/GVI39bqGk/nodespublic?orgId=1&refresh=5m&var-nodeid={NODE_ID}', + 'image': 'https://stats.freifunk-leipzig.de/render/d-solo/GVI39bqGk/statistiken?orgId=1&panelId=6&var-nodeid={NODE_ID}&width=650&height=350&from=now-1d&theme=light', + 'title': 'Traffic innerhalb des letzten Tages' + } + ], + // Array of data provider are supported + 'dataPath': [ + 'https://meshviewer.freifunk-leipzig.de/data/' + ], + 'siteName': 'Freifunk Leipzig', + 'mapLayers': [ + { + 'name': 'OpenStreetMap.HOT', + 'url': 'https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png', + 'config': { + 'maxZoom': 19, + 'attribution': '© Openstreetmap France | © OpenStreetMap' + } + }, + { + 'name': 'Esri.WorldImagery', + 'url': '//server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', + 'config': { + 'maxZoom': 20, + 'attribution': 'Tiles © Esri — Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community' + } + } + ], + // Set a visible frame + 'fixedCenter': [ + // Northwest + [ + 51.4168, + 12.1983 + ], + // Southeast + [ + 51.2516, + 12.4791 + ] + ], + 'domainNames': [ + { + 'domain': 'l', + 'name': 'Leipzig (Gluon)' + }, + { + 'domain': 'meshkit', + 'name': 'Leipzig (meshkit)' + } + ], + 'linkList': [ + { + 'title': 'Impressum', + 'href': 'https://freifunk.net/impressum/' + }, + { + 'title': 'Datenschutz', + 'href': 'https://freifunk.net/datenschutz/' + } + ] + }; +}; + diff --git a/config.js.save b/config.js.save new file mode 100644 index 0000000..9631010 --- /dev/null +++ b/config.js.save @@ -0,0 +1,92 @@ +module.exports = function () { + return { + 'nodeInfos': [ + { + 'name': 'Clientstatistik', + 'href': 'https://stats.freifunk-leipzig.de/d/hRIn3dRWk/nodes?viewPanel=2&orgId=1&refresh=5m&var-nodeid={NODE_ID}from=now-24h&to=now', + 'href': 'https://stats.freifunk-leipzig.de/d/hRIn3dRWk/nodes?orgId=1&refresh=5m&var-nodeid=={NODE_ID}', + 'image': 'https://multi.meshviewer.org/graph/000000002/node?panelId=1&var-node={NODE_ID}&from=now-86399s&width=650&height=350&theme=light', + 'title': 'Entwicklung der Anzahl der Clients innerhalb des letzten Tages' + }, + { + 'name': 'Hardwareauslastung', + 'href': 'https://data.meshviewer.org/d/000000002/node?var-node={NODE_ID}', + 'image': 'https://multi.meshviewer.org/graph/000000002/node?panelId=4&var-node={NODE_ID}&from=now-86399s&width=650&height=350&theme=light', + 'title': 'Loadavg und Arbeitspeicherauslastung innerhalb des letzten Tages' + } + ], + 'linkInfos': [ + { + 'name': 'Statistik für alle Links zwischen diese Knoten', + 'href': 'https://data.meshviewer.org/d/nvSNqoHmz/link?var-node={SOURCE_ID}&var-nodetolink={TARGET_ID}', + 'image': 'https://multi.meshviewer.org/graph/nvSNqoHmz/link?panelId=7&var-node={SOURCE_ID}&var-nodetolink={TARGET_ID}&from=now-86399s&width=650&height=350&theme=light', + 'title': 'Linkstatistik des letzten Tages, min und max aller Links zwischen diesen Knoten' + } + ], + 'linkTypeInfos': [ + { + 'name': 'Statistik für {TYPE}', + 'href': 'https://data.meshviewer.org/d/nvSNqoHmz/link?var-node={SOURCE_ID}&var-nodetolink={TARGET_ID}&var-source_mac={SOURCE_MAC}&var-target_mac={TARGET_MAC}', + 'image': 'https://multi.meshviewer.org/graph/nvSNqoHmz/link?panelId=8&var-node={SOURCE_ID}&var-nodetolink={TARGET_ID}&var-source_mac={SOURCE_MAC}&var-target_mac={TARGET_MAC}&from=now-86399s&width=650&height=350&theme=light', + 'title': 'Linkstatistik des letzten Tages des einzelnen Links in beide Richtungen' + } + ], + // Array of data provider are supported + 'dataPath': [ + 'https://bhc-pn.de/meshviewer/data/' + ], + 'siteName': 'Freifunk Leipzig', + 'mapLayers': [ + { + 'name': 'OpenStreetMap.HOT', + 'url': 'https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png', + 'config': { + 'maxZoom': 19, + 'attribution': '© Openstreetmap France | © OpenStreetMap' + } + }, + { + 'name': 'Esri.WorldImagery', + 'url': '//server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', + 'config': { + 'maxZoom': 20, + 'attribution': 'Tiles © Esri — Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community' + } + } + ], + // Set a visible frame + 'fixedCenter': [ + // Northwest + [ + 51.4168, + 12.1983 + ], + // Southeast + [ + 51.2516, + 12.4791 + ] + ], + 'domainNames': [ + { + 'domain': 'l', + 'name': 'Leipzig (Gluon)' + }, + { + 'domain': 'meshkit', + 'name': 'Leipzig (meshkit)' + } + ], + 'linkList': [ + { + 'title': 'Impressum', + 'href': 'https://freifunk.net/impressum/' + }, + { + 'title': 'Datenschutz', + 'href': 'https://freifunk.net/datenschutz/' + } + ] + }; +}; + diff --git a/gulp/config.js b/gulp/config.js new file mode 100644 index 0000000..2ce8356 --- /dev/null +++ b/gulp/config.js @@ -0,0 +1,47 @@ +module.exports = function () { + const build = 'build'; + + return { + build: build, + faviconData: 'assets/faviconData.json', + src: { + sass: 'scss/**/*.scss', + javascript: ['./app.js', 'lib/**/*.js'], + json: 'locale/*.json', + html: ['html/*.html', './config*.js'] + }, + clean: [build + '/*.map', build + '/vendor', build + '/main.css'], + browsersync: { + open: false, + server: { + baseDir: build + }, + files: [ + build + '/*.css', + build + '/*.js', + build + '/*.html', + build + '/locale/*.json' + ] + }, + requireJs: { + prod: { + baseUrl: 'lib', + name: '../node_modules/almond/almond', + mainConfigFile: 'app.js', + include: '../app', + out: 'app.js', + build: true, + preserveLicenseComments: true + }, + dev: { + baseUrl: 'lib', + name: '../node_modules/almond/almond', + mainConfigFile: 'app.js', + include: '../app', + optimize: 'none', + out: 'app.js', + build: false + } + } + }; +}; diff --git a/gulp/serve.js b/gulp/serve.js new file mode 100644 index 0000000..53bc464 --- /dev/null +++ b/gulp/serve.js @@ -0,0 +1,39 @@ +module.exports = function (gulp, plugins, config, env) { + const browserSync = require('browser-sync'); + + function getTask(task) { + return require('./tasks/' + task)(gulp, plugins, config, env); + } + + gulp.task('ws', () => + browserSync(config.browsersync) + ); + + gulp.task('watch:html', () => + gulp.watch(config.src.html, + gulp.parallel(getTask('html')) + ) + ); + + gulp.task('watch:javascript', () => + gulp.watch(config.src.javascript, + gulp.parallel(getTask('eslint'), getTask('javascript')) + ) + ); + + gulp.task('watch:styles', () => + gulp.watch(config.src.sass, + gulp.parallel(getTask('sasslint'), getTask('sass')) + ) + ); + + gulp.task('watch:json', () => + gulp.watch(config.src.json, + gulp.parallel(getTask('jsonMinify')) + ) + ); + + gulp.task('watch', + gulp.parallel('watch:html', 'watch:styles', 'watch:javascript', 'watch:json') + ); +}; diff --git a/gulp/tasks/clean.js b/gulp/tasks/clean.js new file mode 100644 index 0000000..fff6e48 --- /dev/null +++ b/gulp/tasks/clean.js @@ -0,0 +1,6 @@ +const del = require('del'); +module.exports = function (gulp, plugins, config) { + return function clean() { + return del(config.clean); + }; +}; diff --git a/gulp/tasks/copy.js b/gulp/tasks/copy.js new file mode 100644 index 0000000..885522c --- /dev/null +++ b/gulp/tasks/copy.js @@ -0,0 +1,13 @@ +module.exports = function (gulp, plugins, config) { + return function copy() { + gulp.src(['html/*.html', 'assets/favicon/*']) + .pipe(gulp.dest(config.build)); + gulp.src(['assets/logo.svg', 'service-worker.js']) + .pipe(gulp.dest(config.build)); + gulp.src(['polyfill.js']) + .pipe(gulp.dest(config.build + '/vendor')); + return gulp.src(['assets/fonts/*', 'assets/icons/fonts/*']) + .pipe(gulp.dest(config.build + '/fonts')); + }; +}; + diff --git a/gulp/tasks/eslint.js b/gulp/tasks/eslint.js new file mode 100644 index 0000000..c815420 --- /dev/null +++ b/gulp/tasks/eslint.js @@ -0,0 +1,8 @@ +module.exports = function (gulp, plugins, config, env) { + return function eslint() { + return gulp.src(['app.js', 'gulpfile.js', 'lib/**/*.js', 'gulp/**/*.js']) + .pipe(plugins.eslint()) + .pipe(plugins.eslint.format()) + .pipe(env.production(plugins.eslint.failAfterError())); + }; +}; diff --git a/gulp/tasks/favicon.js b/gulp/tasks/favicon.js new file mode 100644 index 0000000..9f3036f --- /dev/null +++ b/gulp/tasks/favicon.js @@ -0,0 +1,65 @@ +module.exports = function (gulp, plugins, config) { + return function javascript(cb) { + plugins.realFavicon.generateFavicon({ + masterPicture: 'assets/logo.svg', + dest: 'assets/favicon', + iconsPath: '.', + design: { + ios: { + pictureAspect: 'backgroundAndMargin', + backgroundColor: '#ffffff', + margin: '14%', + assets: { + ios6AndPriorIcons: false, + ios7AndLaterIcons: false, + precomposedIcons: false, + declareOnlyDefaultIcon: true + }, + appName: 'Meshviewer' + }, + desktopBrowser: {}, + windows: { + pictureAspect: 'whiteSilhouette', + backgroundColor: '#dc0067', + onConflict: 'override', + assets: { + windows80Ie10Tile: false, + windows10Ie11EdgeTiles: { + small: true, + medium: true, + big: true, + rectangle: false + } + }, + appName: 'Meshviewer' + }, + androidChrome: { + // pictureAspect: 'shadow', + themeColor: '#dc0067', + manifest: { + name: 'Meshviewer', + display: 'standalone', + orientation: 'portrait', + onConflict: 'override', + declared: true + }, + assets: { + legacyIcon: false, + lowResolutionIcons: false + } + }, + safariPinnedTab: { + pictureAspect: 'silhouette', + themeColor: '#dc0067' + } + }, + settings: { + compression: 2, + scalingAlgorithm: 'Mitchell', + errorOnImageTooSmall: false + }, + markupFile: config.faviconData + }); + return cb(); + }; +}; diff --git a/gulp/tasks/html.js b/gulp/tasks/html.js new file mode 100644 index 0000000..474d85e --- /dev/null +++ b/gulp/tasks/html.js @@ -0,0 +1,60 @@ +const fs = require('fs'); + +// stringify functions https://gist.github.com/cowboy/3749767 +var stringify = function (obj) { + var placeholder = '____PLACEHOLDER____'; + var fns = []; + var json = JSON.stringify(obj, function (key, value) { + if (typeof value === 'function') { + fns.push(value); + return placeholder; + } + return value; + }, 2); + json = json.replace(new RegExp('"' + placeholder + '"', 'g'), function () { + return fns.shift(); + }); + return json; +}; + +module.exports = function (gulp, plugins, config, env) { + return function html() { + return gulp.src(env.production() ? config.build + '/*.html' : 'html/*.html') + .pipe(plugins.realFavicon.injectFaviconMarkups(JSON.parse(fs.readFileSync(config.faviconData)).favicon.html_code)) + .pipe(env.production(plugins.inlineSource({ compress: false }))) + .pipe(plugins.inject(gulp.src(['config.js']), { + removeTags: true, + starttag: '', + transform: function () { + delete require.cache[require.resolve('../../config.default')]; + delete require.cache[require.resolve('../../config')]; + var buildConfig = Object.assign({}, require('../../config.default')(), require('../../config')()); + return '' + buildConfig.siteName + ' - loading...' + + ''; + } + })) + .pipe(plugins.inject(gulp.src(['config.js']), { + removeTags: true, + starttag: '', + transform: function () { + delete require.cache[require.resolve('../../config.default')]; + delete require.cache[require.resolve('../../config')]; + var buildConfig = Object.assign({}, require('../../config.default')(), require('../../config')()); + return buildConfig.siteName; + } + })) + .pipe(plugins.cacheBust({ + type: 'timestamp' + })) + .pipe(plugins.htmlmin({ + removeComments: true, + collapseWhitespace: true, + minifyJS: true + })) + .pipe(gulp.dest(config.build)); + }; +}; diff --git a/gulp/tasks/javascript.js b/gulp/tasks/javascript.js new file mode 100644 index 0000000..88e7137 --- /dev/null +++ b/gulp/tasks/javascript.js @@ -0,0 +1,13 @@ +module.exports = function (gulp, plugins, config, env) { + return function javascript() { + return gulp.src('app.js') + .pipe(env.development(plugins.sourcemaps.init())) + .pipe(plugins.requirejsOptimize(env.production() ? config.requireJs.prod : config.requireJs.dev)) + .on('error', function () { + this.emit('end'); + }) + .pipe(env.production(plugins.uglify({ output: { comments: 'all' } }))) + .pipe(env.development(plugins.sourcemaps.write('.', { addComment: true }))) + .pipe(gulp.dest(config.build)); + }; +}; diff --git a/gulp/tasks/jsonMinify.js b/gulp/tasks/jsonMinify.js new file mode 100644 index 0000000..412f7a8 --- /dev/null +++ b/gulp/tasks/jsonMinify.js @@ -0,0 +1,7 @@ +module.exports = function (gulp, plugins, config) { + return function jsonMinify() { + return gulp.src(config.src.json) + .pipe(plugins.jsonminify()) + .pipe(gulp.dest(config.build + '/locale')); + }; +}; diff --git a/gulp/tasks/sass.js b/gulp/tasks/sass.js new file mode 100644 index 0000000..e0a9c5e --- /dev/null +++ b/gulp/tasks/sass.js @@ -0,0 +1,18 @@ +module.exports = function (gulp, plugins, config, env) { + return function sass() { + return gulp.src('scss/*.scss') + .pipe(env.development(plugins.sourcemaps.init())) + .pipe(plugins.sass({ + outputStyle: 'compressed', + sourceMap: false + })) + .on('error', function () { + this.emit('end'); + }) + .pipe(plugins.autoprefixer({ + browsers: config.autoprefixer + })) + .pipe(env.development(plugins.sourcemaps.write('.', { addComment: true }))) + .pipe(gulp.dest(config.build)); + }; +}; diff --git a/gulp/tasks/sasslint.js b/gulp/tasks/sasslint.js new file mode 100644 index 0000000..488ddc3 --- /dev/null +++ b/gulp/tasks/sasslint.js @@ -0,0 +1,12 @@ +module.exports = function (gulp, plugins, config, env) { + return function sasslint() { + return gulp.src('scss/**/*.scss') + .pipe(plugins.stylelint({ + syntax: 'scss', + failAfterError: env.production(), + reporters: [ + { formatter: 'string', console: true } + ] + })); + }; +}; diff --git a/gulp/tasks/setDevelopment.js b/gulp/tasks/setDevelopment.js new file mode 100644 index 0000000..f464b54 --- /dev/null +++ b/gulp/tasks/setDevelopment.js @@ -0,0 +1,6 @@ +module.exports = function (gulp, plugins, config, env) { + return function setDevelopment(done) { + plugins.environments.current(env.development); + done(); + }; +}; diff --git a/gulpfile.js b/gulpfile.js new file mode 100644 index 0000000..e217c8f --- /dev/null +++ b/gulpfile.js @@ -0,0 +1,39 @@ +const gulp = require('gulp'); +const plugins = require('gulp-load-plugins')(); +const config = require('./gulp/config')(); + +const env = { + development: plugins.environments.development, + production: plugins.environments.production +}; + +// Default environment is production +plugins.environments.current(env.production); + +function getTask(task) { + return require('./gulp/tasks/' + task)(gulp, plugins, config, env); +} + +gulp.task('generate-favicon', + getTask('favicon') +); + +require('./gulp/serve')(gulp, plugins, config, env); +gulp.task('serve', + gulp.series( + getTask('setDevelopment'), + gulp.parallel(getTask('eslint'), getTask('sasslint')), + gulp.parallel(getTask('copy'), getTask('javascript'), getTask('sass'), getTask('jsonMinify')), + getTask('html'), + gulp.parallel('watch', 'ws') + ) +); + +gulp.task('default', + gulp.series( + gulp.parallel(getTask('eslint'), getTask('sasslint')), + gulp.parallel(getTask('copy'), getTask('javascript'), getTask('sass'), getTask('jsonMinify')), + getTask('html'), + getTask('clean') + ) +); diff --git a/html/index.html b/html/index.html new file mode 100644 index 0000000..f3b9de7 --- /dev/null +++ b/html/index.html @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+ Lade
+ Loading ... +
+ Karten & Knoten... +

+ +
+ + diff --git a/html/offline.html b/html/offline.html new file mode 100644 index 0000000..a58cda7 --- /dev/null +++ b/html/offline.html @@ -0,0 +1,23 @@ + + + + + <!-- inject:title --><!-- endinject --> + + + + +
+

+ You are Offline!
+ Loading ... +
+ No connection available. +


+

+ +
+ + diff --git a/lib/about.js b/lib/about.js new file mode 100644 index 0000000..908c4c5 --- /dev/null +++ b/lib/about.js @@ -0,0 +1,44 @@ +define(function () { + 'use strict'; + + return function () { + this.render = function render(d) { + d.innerHTML = _.t('sidebar.aboutInfo') + + '

' + _.t('node.nodes') + '

' + + '

' + + ' ' + _.t('sidebar.nodeNew') + '' + + ' ' + _.t('sidebar.nodeOnline') + '' + + ' ' + _.t('sidebar.nodeOffline') + '' + + '

' + + '

' + _.t('node.clients') + '

' + + '

' + + ' 2.4 GHz' + + ' 5 GHz' + + ' ' + _.t('others') + '' + + '

' + + '

AGPL 3

' + + + '

Copyright (C) Milan Pässler

' + + '

Copyright (C) Nils Schneider

' + + + '

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 ' + + '' + + 'https://www.gnu.org/licenses/.

' + + + '

The source code is available at ' + + '' + + 'https://github.com/ffrgb/meshviewer.

'; + }; + }; +}); diff --git a/lib/container.js b/lib/container.js new file mode 100644 index 0000000..914eecb --- /dev/null +++ b/lib/container.js @@ -0,0 +1,22 @@ +define([], function () { + 'use strict'; + + return function (tag) { + if (!tag) { + tag = 'div'; + } + + var self = this; + var container = document.createElement(tag); + + self.add = function add(d) { + d.render(container); + }; + + self.render = function render(el) { + el.appendChild(container); + }; + + return self; + }; +}); diff --git a/lib/datadistributor.js b/lib/datadistributor.js new file mode 100644 index 0000000..385f65a --- /dev/null +++ b/lib/datadistributor.js @@ -0,0 +1,103 @@ +define(['filters/nodefilter'], function (NodeFilter) { + 'use strict'; + + return function () { + var targets = []; + var filterObservers = []; + var filters = []; + var filteredData; + var data; + + function remove(d) { + targets = targets.filter(function (e) { + return d !== e; + }); + } + + function add(d) { + targets.push(d); + + if (filteredData !== undefined) { + d.setData(filteredData); + } + } + + function setData(d) { + data = d; + refresh(); + } + + function refresh() { + if (data === undefined) { + return; + } + + var filter = filters.reduce(function (a, f) { + return function (d) { + return a(d) && f.run(d); + }; + }, function () { + return true; + }); + + filteredData = new NodeFilter(filter)(data); + + targets.forEach(function (t) { + t.setData(filteredData); + }); + } + + function notifyObservers() { + filterObservers.forEach(function (d) { + d.filtersChanged(filters); + }); + } + + function addFilter(d) { + var newItem = true; + + filters.forEach(function (f) { + if (f.getKey && f.getKey() === d.getKey()) { + removeFilter(f); + newItem = false; + } + }); + + if (newItem) { + filters.push(d); + notifyObservers(); + d.setRefresh(refresh); + refresh(); + } + } + + function removeFilter(d) { + filters = filters.filter(function (e) { + return d !== e; + }); + notifyObservers(); + refresh(); + } + + function watchFilters(d) { + filterObservers.push(d); + + d.filtersChanged(filters); + + return function () { + filterObservers = filterObservers.filter(function (e) { + return d !== e; + }); + }; + } + + return { + add: add, + remove: remove, + setData: setData, + addFilter: addFilter, + removeFilter: removeFilter, + watchFilters: watchFilters + }; + }; +}); diff --git a/lib/filters/filtergui.js b/lib/filters/filtergui.js new file mode 100644 index 0000000..767d5f9 --- /dev/null +++ b/lib/filters/filtergui.js @@ -0,0 +1,44 @@ +define(function () { + 'use strict'; + + return function (distributor) { + var container = document.createElement('ul'); + container.classList.add('filters'); + var div = document.createElement('div'); + + function render(el) { + el.appendChild(div); + } + + function filtersChanged(filters) { + while (container.firstChild) { + container.removeChild(container.firstChild); + } + + filters.forEach(function (d) { + var li = document.createElement('li'); + container.appendChild(li); + d.render(li); + + var button = document.createElement('button'); + button.classList.add('ion-close'); + button.setAttribute('aria-label', _.t('remove')); + button.onclick = function onclick() { + distributor.removeFilter(d); + }; + li.appendChild(button); + }); + + if (container.parentNode === div && filters.length === 0) { + div.removeChild(container); + } else if (filters.length > 0) { + div.appendChild(container); + } + } + + return { + render: render, + filtersChanged: filtersChanged + }; + }; +}); diff --git a/lib/filters/genericnode.js b/lib/filters/genericnode.js new file mode 100644 index 0000000..ca43a38 --- /dev/null +++ b/lib/filters/genericnode.js @@ -0,0 +1,63 @@ +define(['helper'], function (helper) { + 'use strict'; + + return function (name, key, value, f) { + var negate = false; + var refresh; + + var label = document.createElement('label'); + var strong = document.createElement('strong'); + label.textContent = name + ': '; + label.appendChild(strong); + + function run(d) { + var o = helper.dictGet(d, key.slice(0)); + + if (f) { + o = f(o); + } + + return o === value ? !negate : negate; + } + + function setRefresh(r) { + refresh = r; + } + + function draw(el) { + if (negate) { + el.classList.add('not'); + } else { + el.classList.remove('not'); + } + + strong.textContent = value; + } + + function render(el) { + el.appendChild(label); + draw(el); + + label.onclick = function onclick() { + negate = !negate; + + draw(el); + + if (refresh) { + refresh(); + } + }; + } + + function getKey() { + return value.concat(name); + } + + return { + run: run, + setRefresh: setRefresh, + render: render, + getKey: getKey + }; + }; +}); diff --git a/lib/filters/hostname.js b/lib/filters/hostname.js new file mode 100644 index 0000000..6fbc932 --- /dev/null +++ b/lib/filters/hostname.js @@ -0,0 +1,42 @@ +define(function () { + 'use strict'; + + return function () { + var refreshFunctions = []; + var timer; + var input = document.createElement('input'); + + function refresh() { + clearTimeout(timer); + timer = setTimeout(function () { + refreshFunctions.forEach(function (f) { + f(); + }); + }, 250); + } + + function run(d) { + return d.hostname.toLowerCase().includes(input.value.toLowerCase()); + } + + function setRefresh(f) { + refreshFunctions.push(f); + } + + function render(el) { + input.type = 'search'; + input.placeholder = _.t('sidebar.nodeFilter'); + input.setAttribute('aria-label', _.t('sidebar.nodeFilter')); + input.addEventListener('input', refresh); + el.classList.add('filter-node'); + el.classList.add('ion-filter'); + el.appendChild(input); + } + + return { + run: run, + setRefresh: setRefresh, + render: render + }; + }; +}); diff --git a/lib/filters/nodefilter.js b/lib/filters/nodefilter.js new file mode 100644 index 0000000..b8e24a8 --- /dev/null +++ b/lib/filters/nodefilter.js @@ -0,0 +1,22 @@ +define(function () { + 'use strict'; + + return function (filter) { + return function (data) { + var n = Object.create(data); + n.nodes = {}; + + for (var key in data.nodes) { + if (data.nodes.hasOwnProperty(key)) { + n.nodes[key] = data.nodes[key].filter(filter); + } + } + + n.links = data.links.filter(function (d) { + return filter(d.source) && filter(d.target); + }); + + return n; + }; + }; +}); diff --git a/lib/forcegraph.js b/lib/forcegraph.js new file mode 100644 index 0000000..5f1d4ea --- /dev/null +++ b/lib/forcegraph.js @@ -0,0 +1,288 @@ +define(['d3-selection', 'd3-force', 'd3-zoom', 'd3-drag', 'd3-timer', 'd3-ease', 'd3-interpolate', 'utils/math', 'forcegraph/draw'], + function (d3Selection, d3Force, d3Zoom, d3Drag, d3Timer, d3Ease, d3Interpolate, math, draw) { + 'use strict'; + + return function (linkScale, sidebar) { + var self = this; + var el; + var canvas; + var ctx; + var force; + var forceLink; + + var transform = d3Zoom.zoomIdentity; + var intNodes = []; + var dictNodes = {}; + var intLinks = []; + var movetoTimer; + var initial = 1.8; + + var NODE_RADIUS_DRAG = 10; + var NODE_RADIUS_SELECT = 15; + var LINK_RADIUS_SELECT = 12; + var ZOOM_ANIMATE_DURATION = 350; + + var ZOOM_MIN = 1 / 8; + var ZOOM_MAX = 3; + + var FORCE_ALPHA = 0.01; + + draw.setTransform(transform); + + function resizeCanvas() { + canvas.width = el.offsetWidth; + canvas.height = el.offsetHeight; + draw.setMaxArea(canvas.width, canvas.height); + } + + function transformPosition(p) { + transform.x = p.x; + transform.y = p.y; + transform.k = p.k; + } + + function moveTo(callback, forceMove) { + clearTimeout(movetoTimer); + if (!forceMove && force.alpha() > 0.3) { + movetoTimer = setTimeout(function timerOfMoveTo() { + moveTo(callback); + }, 300); + return; + } + var result = callback(); + var x = result[0]; + var y = result[1]; + var k = result[2]; + var end = { k: k }; + + end.x = (canvas.width + sidebar.getWidth()) / 2 - x * k; + end.y = canvas.height / 2 - y * k; + + var start = { x: transform.x, y: transform.y, k: transform.k }; + + var interpolate = d3Interpolate.interpolateObject(start, end); + + var timer = d3Timer.timer(function (t) { + if (t >= ZOOM_ANIMATE_DURATION) { + timer.stop(); + return; + } + + var v = interpolate(d3Ease.easeQuadInOut(t / ZOOM_ANIMATE_DURATION)); + transformPosition(v); + window.requestAnimationFrame(redraw); + }); + } + + function onClick() { + if (d3Selection.event.defaultPrevented) { + return; + } + + var e = transform.invert([d3Selection.event.clientX, d3Selection.event.clientY]); + var n = force.find(e[0], e[1], NODE_RADIUS_SELECT); + + if (n !== undefined) { + router.fullUrl({ node: n.o.node_id }); + return; + } + + e = { x: e[0], y: e[1] }; + + var closedLink; + var radius = LINK_RADIUS_SELECT; + intLinks + .forEach(function (d) { + var distance = math.distanceLink(e, d.source, d.target); + if (distance < radius) { + closedLink = d; + radius = distance; + } + }); + + if (closedLink !== undefined) { + router.fullUrl({ link: closedLink.o.id }); + } + } + + function redraw() { + ctx.save(); + ctx.clearRect(0, 0, canvas.width, canvas.height); + ctx.translate(transform.x, transform.y); + ctx.scale(transform.k, transform.k); + + intLinks.forEach(draw.drawLink); + intNodes.forEach(draw.drawNode); + + ctx.restore(); + } + + el = document.createElement('div'); + el.classList.add('graph'); + + forceLink = d3Force.forceLink() + .distance(function (d) { + if (d.o.type.indexOf('vpn') === 0) { + return 0; + } + return 75; + }) + .strength(function (d) { + if (d.o.type.indexOf('vpn') === 0) { + return 0.02; + } + return Math.max(0.5, d.o.source_tq); + }); + + var zoom = d3Zoom.zoom() + .scaleExtent([ZOOM_MIN, ZOOM_MAX]) + .on('zoom', function () { + transform = d3Selection.event.transform; + draw.setTransform(transform); + redraw(); + }); + + force = d3Force.forceSimulation() + .force('link', forceLink) + .force('charge', d3Force.forceManyBody()) + .force('x', d3Force.forceX().strength(0.02)) + .force('y', d3Force.forceY().strength(0.02)) + .force('collide', d3Force.forceCollide()) + .on('tick', redraw) + .alphaDecay(0.025); + + var drag = d3Drag.drag() + .subject(function () { + var e = transform.invert([d3Selection.event.x, d3Selection.event.y]); + var n = force.find(e[0], e[1], NODE_RADIUS_DRAG); + + if (n !== undefined) { + n.x = d3Selection.event.x; + n.y = d3Selection.event.y; + return n; + } + return undefined; + }) + .on('start', function () { + if (!d3Selection.event.active) { + force.alphaTarget(FORCE_ALPHA).restart(); + } + d3Selection.event.subject.fx = transform.invertX(d3Selection.event.subject.x); + d3Selection.event.subject.fy = transform.invertY(d3Selection.event.subject.y); + }) + .on('drag', function () { + d3Selection.event.subject.fx = transform.invertX(d3Selection.event.x); + d3Selection.event.subject.fy = transform.invertY(d3Selection.event.y); + }) + .on('end', function () { + if (!d3Selection.event.active) { + force.alphaTarget(0); + } + d3Selection.event.subject.fx = null; + d3Selection.event.subject.fy = null; + }); + + canvas = d3Selection.select(el) + .append('canvas') + .on('click', onClick) + .call(drag) + .call(zoom) + .node(); + + ctx = canvas.getContext('2d'); + draw.setCTX(ctx); + + window.addEventListener('resize', function () { + resizeCanvas(); + redraw(); + }); + + self.setData = function setData(data) { + intNodes = data.nodes.all.map(function (d) { + var e = dictNodes[d.node_id]; + if (!e) { + e = {}; + dictNodes[d.node_id] = e; + } + + e.o = d; + + return e; + }); + + intLinks = data.links.filter(function (d) { + return data.nodeDict[d.source.node_id].is_online && data.nodeDict[d.target.node_id].is_online; + }).map(function (d) { + return { + o: d, + source: dictNodes[d.source.node_id], + target: dictNodes[d.target.node_id], + color: linkScale(d.source_tq), + color_to: linkScale(d.target_tq) + }; + }); + + force.nodes(intNodes); + forceLink.links(intLinks); + + force.alpha(initial).velocityDecay(0.15).restart(); + if (initial === 1.8) { + initial = 0.5; + } + + resizeCanvas(); + }; + + self.resetView = function resetView() { + moveTo(function calcToReset() { + draw.setHighlight(null); + return [0, 0, (ZOOM_MIN + config.forceGraph.zoomModifier) / 2]; + }, true); + }; + + self.gotoNode = function gotoNode(d) { + moveTo(function calcToNode() { + draw.setHighlight({ type: 'node', id: d.node_id }); + var n = dictNodes[d.node_id]; + if (n) { + return [n.x, n.y, (ZOOM_MAX + 1) / 2]; + } + return self.resetView(); + }); + }; + + self.gotoLink = function gotoLink(d) { + moveTo(function calcToLink() { + draw.setHighlight({ type: 'link', id: d[0].id }); + var l = intLinks.find(function (link) { + return link.o.id === d[0].id; + }); + if (l) { + return [(l.source.x + l.target.x) / 2, (l.source.y + l.target.y) / 2, (ZOOM_MAX / 2) + ZOOM_MIN]; + } + return self.resetView(); + }); + }; + + self.gotoLocation = function gotoLocation() { + // ignore + }; + + self.destroy = function destroy() { + force.stop(); + canvas.parentNode.removeChild(canvas); + force = null; + + if (el.parentNode) { + el.parentNode.removeChild(el); + } + }; + + self.render = function render(d) { + d.appendChild(el); + resizeCanvas(); + }; + + return self; + }; + }); diff --git a/lib/forcegraph/draw.js b/lib/forcegraph/draw.js new file mode 100644 index 0000000..29e5e9a --- /dev/null +++ b/lib/forcegraph/draw.js @@ -0,0 +1,120 @@ +define(['helper'], function (helper) { + var self = {}; + + var ctx; + var width; + var height; + var transform; + var highlight; + + var NODE_RADIUS = 15; + var LINE_RADIUS = 12; + + function drawDetailNode(d) { + if (transform.k > 1 && d.o.is_online) { + helper.positionClients(ctx, d, Math.PI, d.o, 15); + ctx.beginPath(); + var name = d.o.node_id; + if (d.o) { + name = d.o.hostname; + } + ctx.textAlign = 'center'; + ctx.fillStyle = config.forceGraph.labelColor; + ctx.fillText(name, d.x, d.y + 20); + } + } + + function drawHighlightNode(d) { + if (highlight && highlight.type === 'node' && d.o.node_id === highlight.id) { + ctx.arc(d.x, d.y, NODE_RADIUS * 1.5, 0, 2 * Math.PI); + ctx.fillStyle = config.forceGraph.highlightColor; + ctx.fill(); + ctx.beginPath(); + } + } + + function drawHighlightLink(d, to) { + if (highlight && highlight.type === 'link' && d.o.id === highlight.id) { + ctx.lineTo(to[0], to[1]); + ctx.strokeStyle = config.forceGraph.highlightColor; + ctx.lineWidth = LINE_RADIUS * 2; + ctx.lineCap = 'round'; + ctx.stroke(); + to = [d.source.x, d.source.y]; + } + return to; + } + + self.drawNode = function drawNode(d) { + if (d.x < transform.invertX(0) || d.y < transform.invertY(0) || transform.invertX(width) < d.x || transform.invertY(height) < d.y) { + return; + } + ctx.beginPath(); + + drawHighlightNode(d); + + if (d.o.is_online) { + ctx.arc(d.x, d.y, 8, 0, 2 * Math.PI); + if (d.o.is_gateway) { + ctx.rect(d.x - 9, d.y - 9, 18, 18); + } + ctx.fillStyle = config.forceGraph.nodeColor; + } else { + ctx.arc(d.x, d.y, 6, 0, 2 * Math.PI); + ctx.fillStyle = config.forceGraph.nodeOfflineColor; + } + + ctx.fill(); + + drawDetailNode(d); + }; + + self.drawLink = function drawLink(d) { + var zero = transform.invert([0, 0]); + var area = transform.invert([width, height]); + if (d.source.x < zero[0] && d.target.x < zero[0] || d.source.y < zero[1] && d.target.y < zero[1] || + d.source.x > area[0] && d.target.x > area[0] || d.source.y > area[1] && d.target.y > area[1]) { + return; + } + ctx.beginPath(); + ctx.moveTo(d.source.x, d.source.y); + var to = [d.target.x, d.target.y]; + + to = drawHighlightLink(d, to); + + var grd = ctx.createLinearGradient(d.source.x, d.source.y, d.target.x, d.target.y); + grd.addColorStop(0.45, d.color); + grd.addColorStop(0.55, d.color_to); + + ctx.lineTo(to[0], to[1]); + ctx.strokeStyle = grd; + if (d.o.type.indexOf('vpn') === 0) { + ctx.globalAlpha = 0.2; + ctx.lineWidth = 1.5; + } else { + ctx.globalAlpha = 0.8; + ctx.lineWidth = 2.5; + } + ctx.stroke(); + ctx.globalAlpha = 1; + }; + + self.setCTX = function setCTX(newValue) { + ctx = newValue; + }; + + self.setHighlight = function setHighlight(newValue) { + highlight = newValue; + }; + + self.setTransform = function setTransform(newValue) { + transform = newValue; + }; + + self.setMaxArea = function setMaxArea(newWidth, newHeight) { + width = newWidth; + height = newHeight; + }; + + return self; +}); diff --git a/lib/gui.js b/lib/gui.js new file mode 100644 index 0000000..f4b7d4a --- /dev/null +++ b/lib/gui.js @@ -0,0 +1,143 @@ +define(['d3-interpolate', 'map', 'sidebar', 'tabs', 'container', 'legend', + 'linklist', 'nodelist', 'simplenodelist', 'infobox/main', + 'proportions', 'forcegraph', 'title', 'about', 'datadistributor', + 'filters/filtergui', 'filters/hostname', 'helper'], +function (d3Interpolate, Map, Sidebar, Tabs, Container, Legend, Linklist, + Nodelist, SimpleNodelist, Infobox, Proportions, ForceGraph, + Title, About, DataDistributor, FilterGUI, HostnameFilter, helper) { + 'use strict'; + + return function (language) { + var self = this; + var content; + var contentDiv; + + var linkScale = d3Interpolate.interpolate(config.map.tqFrom, config.map.tqTo); + var sidebar; + + var buttons = document.createElement('div'); + buttons.classList.add('buttons'); + + var fanout = new DataDistributor(); + var fanoutUnfiltered = new DataDistributor(); + fanoutUnfiltered.add(fanout); + + function removeContent() { + if (!content) { + return; + } + + router.removeTarget(content); + fanout.remove(content); + + content.destroy(); + + content = null; + } + + function addContent(K) { + removeContent(); + + content = new K(linkScale, sidebar, buttons); + content.render(contentDiv); + + fanout.add(content); + router.addTarget(content); + } + + function mkView(K) { + return function () { + addContent(K); + }; + } + + var loader = document.getElementsByClassName('loader')[0]; + loader.classList.add('hide'); + + contentDiv = document.createElement('div'); + contentDiv.classList.add('content'); + document.body.appendChild(contentDiv); + + sidebar = new Sidebar(document.body); + + contentDiv.appendChild(buttons); + + var buttonToggle = document.createElement('button'); + buttonToggle.classList.add('ion-eye'); + buttonToggle.setAttribute('aria-label', _.t('button.switchView')); + buttonToggle.onclick = function onclick() { + var data; + if (content.constructor === Map) { + data = { view: 'graph', lat: undefined, lng: undefined, zoom: undefined }; + } else { + data = { view: 'map' }; + } + router.fullUrl(data, false, true); + }; + + buttons.appendChild(buttonToggle); + + if (config.fullscreen || config.fullscreenFrame && window.frameElement) { + var buttonFullscreen = document.createElement('button'); + buttonFullscreen.classList.add('ion-full-enter'); + buttonFullscreen.setAttribute('aria-label', _.t('button.fullscreen')); + buttonFullscreen.onclick = function onclick() { + helper.fullscreen(buttonFullscreen); + }; + + buttons.appendChild(buttonFullscreen); + } + + var title = new Title(); + + var header = new Container('header'); + var infobox = new Infobox(sidebar, linkScale); + var tabs = new Tabs(); + var overview = new Container(); + var legend = new Legend(language); + var newnodeslist = new SimpleNodelist('new', 'firstseen', _.t('node.new')); + var lostnodeslist = new SimpleNodelist('lost', 'lastseen', _.t('node.missing')); + var nodelist = new Nodelist(); + var linklist = new Linklist(linkScale); + var statistics = new Proportions(fanout); + var about = new About(); + + fanoutUnfiltered.add(legend); + fanoutUnfiltered.add(newnodeslist); + fanoutUnfiltered.add(lostnodeslist); + fanoutUnfiltered.add(infobox); + fanout.add(nodelist); + fanout.add(linklist); + fanout.add(statistics); + + sidebar.add(header); + header.add(legend); + + overview.add(newnodeslist); + overview.add(lostnodeslist); + + var filterGUI = new FilterGUI(fanout); + fanout.watchFilters(filterGUI); + header.add(filterGUI); + + var hostnameFilter = new HostnameFilter(); + fanout.addFilter(hostnameFilter); + + sidebar.add(tabs); + tabs.add('sidebar.actual', overview); + tabs.add('node.nodes', nodelist); + tabs.add('node.links', linklist); + tabs.add('sidebar.stats', statistics); + tabs.add('sidebar.about', about); + + router.addTarget(title); + router.addTarget(infobox); + + router.addView('map', mkView(Map)); + router.addView('graph', mkView(ForceGraph)); + + self.setData = fanoutUnfiltered.setData; + + return self; + }; +}); diff --git a/lib/infobox/link.js b/lib/infobox/link.js new file mode 100644 index 0000000..ba2092f --- /dev/null +++ b/lib/infobox/link.js @@ -0,0 +1,89 @@ +define(['helper', 'snabbdom'], function (helper, V) { + 'use strict'; + V = V.default; + + function showStatImg(img, o, d, time) { + var subst = { + '{SOURCE_ID}': d.source.node_id, + '{SOURCE_NAME}': d.source.hostname.replace(/[^a-z0-9\-]/ig, '_'), + '{SOURCE_ADDR}': d.source_addr, + '{SOURCE_MAC}': d.source_mac ? d.source_mac : d.source_addr, + '{TARGET_ID}': d.target.node_id, + '{TARGET_NAME}': d.target.hostname.replace(/[^a-z0-9\-]/ig, '_'), + '{TARGET_ADDR}': d.target_addr, + '{TARGET_MAC}': d.target_mac ? d.target_mac : d.target_addr, + '{TYPE}': d.type, + '{TIME}': time, + '{LOCALE}': _.locale() + }; + + img.push(V.h('h4', helper.listReplace(o.name, subst))); + img.push(helper.showStat(V, o, subst)); + } + + return function (el, d, linkScale) { + var self = this; + var header = document.createElement('div'); + var table = document.createElement('table'); + var images = document.createElement('div'); + el.appendChild(header); + el.appendChild(table); + el.appendChild(images); + + self.render = function render() { + var children = []; + var img = []; + var time = d[0].target.lastseen.format('DDMMYYYYHmmss'); + + header = V.patch(header, V.h('div', V.h('h2', [ + V.h('a', { + props: { href: router.generateLink({ node: d[0].source.node_id }) } + }, d[0].source.hostname), + V.h('span', ' - '), + V.h('a', { + props: { href: router.generateLink({ node: d[0].target.node_id }) } + }, d[0].target.hostname) + ]))); + + helper.attributeEntry(V, children, 'node.hardware', (d[0].source.model ? d[0].source.model + ' – ' : '') + + (d[0].target.model ? d[0].target.model : '')); + helper.attributeEntry(V, children, 'node.distance', helper.showDistance(d[0])); + + d.forEach(function (link) { + children.push(V.h('tr', { props: { className: 'header' } }, [ + V.h('th', _.t('node.connectionType')), + V.h('th', link.type) + ])); + helper.attributeEntry(V, children, 'node.tq', V.h('span', + { style: { color: linkScale((link.source_tq + link.target_tq) / 2) } }, + helper.showTq(link.source_tq) + ' - ' + helper.showTq(link.target_tq)) + ); + + if (config.linkTypeInfos) { + config.linkTypeInfos.forEach(function (o) { + showStatImg(img, o, link, time); + }); + } + }); + + if (config.linkInfos) { + config.linkInfos.forEach(function (o) { + showStatImg(img, o, d[0], time); + }); + } + + var elNew = V.h('table', children); + table = V.patch(table, elNew); + table.elm.classList.add('attributes'); + images = V.patch(images, V.h('div', img)); + }; + + self.setData = function setData(data) { + d = data.links.filter(function (a) { + return a.id === d[0].id; + }); + self.render(); + }; + return self; + }; +}); diff --git a/lib/infobox/location.js b/lib/infobox/location.js new file mode 100644 index 0000000..cc4bcf5 --- /dev/null +++ b/lib/infobox/location.js @@ -0,0 +1,71 @@ +define(['helper'], function (helper) { + 'use strict'; + + return function (el, d) { + var sidebarTitle = document.createElement('h2'); + sidebarTitle.textContent = _.t('location.location'); + el.appendChild(sidebarTitle); + + helper.getJSON(config.reverseGeocodingApi + '?format=json&lat=' + d.lat + '&lon=' + d.lng + '&zoom=18&addressdetails=0&accept-language=' + _.locale()) + .then(function (result) { + if (result.display_name) { + sidebarTitle.outerHTML += '

' + result.display_name + '

'; + } + }); + + var editLat = document.createElement('input'); + editLat.setAttribute('aria-label', _.t('location.latitude')); + editLat.type = 'text'; + editLat.value = d.lat.toFixed(9); + el.appendChild(createBox('lat', _.t('location.latitude'), editLat)); + + var editLng = document.createElement('input'); + editLng.setAttribute('aria-label', _.t('location.longitude')); + editLng.type = 'text'; + editLng.value = d.lng.toFixed(9); + el.appendChild(createBox('lng', _.t('location.longitude'), editLng)); + + var editUci = document.createElement('textarea'); + editUci.setAttribute('aria-label', 'Uci'); + editUci.value = + "uci set gluon-node-info.@location[0]='location'; " + + "uci set gluon-node-info.@location[0].share_location='1';" + + "uci set gluon-node-info.@location[0].latitude='" + d.lat.toFixed(9) + "';" + + "uci set gluon-node-info.@location[0].longitude='" + d.lng.toFixed(9) + "';" + + 'uci commit gluon-node-info'; + + el.appendChild(createBox('uci', 'Uci', editUci)); + + function createBox(name, title, inputElem) { + var box = document.createElement('div'); + var heading = document.createElement('h3'); + heading.textContent = title; + box.appendChild(heading); + var btn = document.createElement('button'); + btn.classList.add('ion-clipboard'); + btn.title = _.t('location.copy'); + btn.setAttribute('aria-label', _.t('location.copy')); + btn.onclick = function onclick() { + copy2clip(inputElem.id); + }; + inputElem.id = 'location-' + name; + inputElem.readOnly = true; + var line = document.createElement('p'); + line.appendChild(inputElem); + line.appendChild(btn); + box.appendChild(line); + box.id = 'box-' + name; + return box; + } + + function copy2clip(id) { + var copyField = document.querySelector('#' + id); + copyField.select(); + try { + document.execCommand('copy'); + } catch (err) { + console.warn(err); + } + } + }; +}); diff --git a/lib/infobox/main.js b/lib/infobox/main.js new file mode 100644 index 0000000..b607075 --- /dev/null +++ b/lib/infobox/main.js @@ -0,0 +1,70 @@ +define(['infobox/link', 'infobox/node', 'infobox/location'], function (Link, Node, location) { + 'use strict'; + + return function (sidebar, linkScale) { + var self = this; + var el; + var node; + var link; + + function destroy() { + if (el && el.parentNode) { + el.parentNode.removeChild(el); + node = link = el = undefined; + sidebar.reveal(); + } + } + + function create() { + destroy(); + sidebar.ensureVisible(); + sidebar.hide(); + + el = document.createElement('div'); + sidebar.container.children[1].appendChild(el); + + el.scrollIntoView(false); + el.classList.add('infobox'); + el.destroy = destroy; + + var closeButton = document.createElement('button'); + closeButton.classList.add('close'); + closeButton.classList.add('ion-close'); + closeButton.setAttribute('aria-label', _.t('close')); + closeButton.onclick = function () { + router.fullUrl(); + }; + el.appendChild(closeButton); + } + + self.resetView = destroy; + + self.gotoNode = function gotoNode(d, nodeDict) { + create(); + node = new Node(el, d, linkScale, nodeDict); + node.render(); + }; + + self.gotoLink = function gotoLink(d) { + create(); + link = new Link(el, d, linkScale); + link.render(); + }; + + self.gotoLocation = function gotoLocation(d) { + create(); + location(el, d); + }; + + self.setData = function setData(d) { + if (typeof node === 'object') { + node.setData(d); + } + if (typeof link === 'object') { + link.setData(d); + } + }; + + return self; + }; +}); diff --git a/lib/infobox/node.js b/lib/infobox/node.js new file mode 100644 index 0000000..1410303 --- /dev/null +++ b/lib/infobox/node.js @@ -0,0 +1,194 @@ +define(['sorttable', 'snabbdom', 'd3-interpolate', 'helper', 'utils/node'], + function (SortTable, V, d3Interpolate, helper, nodef) { + 'use strict'; + V = V.default; + + function showStatImg(o, d) { + var subst = { + '{NODE_ID}': d.node_id, + '{NODE_NAME}': d.hostname.replace(/[^a-z0-9\-]/ig, '_'), + '{TIME}': d.lastseen.format('DDMMYYYYHmmss'), + '{LOCALE}': _.locale() + }; + return helper.showStat(V, o, subst); + } + + return function (el, d, linkScale, nodeDict) { + function nodeLink(node) { + return V.h('a', { + props: { + className: node.is_online ? 'online' : 'offline', + href: router.generateLink({ node: node.node_id }) + }, on: { + click: function (e) { + router.fullUrl({ node: node.node_id }, e); + } + } + }, node.hostname); + } + + function nodeIdLink(nodeId) { + if (nodeDict[nodeId]) { + return nodeLink(nodeDict[nodeId]); + } + return nodeId; + } + + function showGateway(node) { + var gatewayCols = [ + V.h('span', [ + nodeIdLink(node.gateway_nexthop), + V.h('br'), + _.t('node.nexthop') + ]), + V.h('span', { props: { className: 'ion-arrow-right-c' } }), + V.h('span', [ + nodeIdLink(node.gateway), + V.h('br'), + 'IPv4' + ]) + ]; + + if (node.gateway6 !== undefined) { + gatewayCols.push(V.h('span', [ + nodeIdLink(node.gateway6), + V.h('br'), + 'IPv6' + ])); + } + + return V.h('td', { props: { className: 'gateway' } }, gatewayCols); + } + + function renderNeighbourRow(n) { + var icons = [V.h('span', { props: { className: 'icon ion-' + (n.link.type.indexOf('wifi') === 0 ? 'wifi' : 'share-alt'), title: _.t(n.link.type) } })]; + if (helper.hasLocation(n.node)) { + icons.push(V.h('span', { props: { className: 'ion-location', title: _.t('location.location') } })); + } + + return V.h('tr', [ + V.h('td', icons), + V.h('td', nodeLink(n.node)), + V.h('td', n.node.clients), + V.h('td', [V.h('a', { + style: { + color: linkScale((n.link.source_tq + n.link.target_tq) / 2) + }, + props: { + title: n.link.source.hostname + ' - ' + n.link.target.hostname, + href: router.generateLink({ link: n.link.id }) + }, on: { + click: function (e) { + router.fullUrl({ link: n.link.id }, e); + } + } + }, helper.showTq(n.link.source_tq) + ' - ' + helper.showTq(n.link.target_tq))]), + V.h('td', helper.showDistance(n.link)) + ]); + } + + var self = this; + var header = document.createElement('h2'); + var table = document.createElement('table'); + var images = document.createElement('div'); + var neighbours = document.createElement('h3'); + var headings = [{ + name: '', + sort: function (a, b) { + return a.link.type.localeCompare(b.link.type); + } + }, { + name: 'node.nodes', + sort: function (a, b) { + return a.node.hostname.localeCompare(b.node.hostname); + }, + reverse: false + }, { + name: 'node.clients', + class: 'ion-people', + sort: function (a, b) { + return a.node.clients - b.node.clients; + }, + reverse: true + }, { + name: 'node.tq', + class: 'ion-connection-bars', + sort: function (a, b) { + return a.link.source_tq - b.link.source_tq; + }, + reverse: true + }, { + name: 'node.distance', + class: 'ion-arrow-resize', + sort: function (a, b) { + return (a.link.distance === undefined ? -1 : a.link.distance) - + (b.link.distance === undefined ? -1 : b.link.distance); + }, + reverse: true + }]; + var tableNeighbour = new SortTable(headings, 1, renderNeighbourRow); + + el.appendChild(header); + el.appendChild(table); + el.appendChild(neighbours); + el.appendChild(tableNeighbour.el); + el.appendChild(images); + + self.render = function render() { + V.patch(header, V.h('h2', d.hostname)); + + var children = []; + + config.nodeAttr.forEach(function (row) { + var field = d[row.value]; + if (typeof row.value === 'function') { + field = row.value(d, nodeDict); + } else if (nodef['show' + row.value] !== undefined) { + field = nodef['show' + row.value](d); + } + + if (field) { + if (typeof field !== 'object') { + field = V.h('td', field); + } + children.push(V.h('tr', [ + row.name !== undefined ? V.h('th', _.t(row.name)) : null, + field + ])); + } + }); + + children.push(V.h('tr', [ + V.h('th', _.t('node.gateway')), + showGateway(d) + ])); + + var elNew = V.h('table', children); + table = V.patch(table, elNew); + table.elm.classList.add('attributes'); + + V.patch(neighbours, V.h('h3', _.t('node.link', d.neighbours.length) + ' (' + d.neighbours.length + ')')); + if (d.neighbours.length > 0) { + tableNeighbour.setData(d.neighbours); + tableNeighbour.el.elm.classList.add('node-links'); + } + + if (config.nodeInfos) { + var img = []; + config.nodeInfos.forEach(function (nodeInfo) { + img.push(V.h('h4', nodeInfo.name)); + img.push(showStatImg(nodeInfo, d)); + }); + images = V.patch(images, V.h('div', img)); + } + }; + + self.setData = function setData(data) { + if (data.nodeDict[d.node_id]) { + d = data.nodeDict[d.node_id]; + } + self.render(); + }; + return self; + }; + }); diff --git a/lib/legend.js b/lib/legend.js new file mode 100644 index 0000000..45091f2 --- /dev/null +++ b/lib/legend.js @@ -0,0 +1,55 @@ +define(['helper'], function (helper) { + 'use strict'; + + return function (language) { + var self = this; + var stats = document.createTextNode(''); + var timestamp = document.createTextNode(''); + + self.setData = function setData(d) { + var totalNodes = Object.keys(d.nodeDict).length; + var totalOnlineNodes = d.nodes.online.length; + var totalClients = helper.sum(d.nodes.online.map(function (n) { + return n.clients; + })); + var totalGateways = helper.sum(d.nodes.online.filter(function (n) { + return n.is_gateway; + }).map(helper.one)); + + stats.textContent = _.t('sidebar.nodes', { total: totalNodes, online: totalOnlineNodes }) + ' ' + + _.t('sidebar.clients', { smart_count: totalClients }) + ' ' + + _.t('sidebar.gateway', { smart_count: totalGateways }); + + timestamp.textContent = _.t('sidebar.lastUpdate') + ' ' + d.timestamp.fromNow(); + }; + + self.render = function render(el) { + var h1 = document.createElement('h1'); + h1.textContent = config.siteName; + el.appendChild(h1); + + language.languageSelect(el); + + var p = document.createElement('p'); + p.classList.add('legend'); + + p.appendChild(stats); + p.appendChild(document.createElement('br')); + p.appendChild(timestamp); + + if (config.linkList) { + p.appendChild(document.createElement('br')); + config.linkList.forEach(function (link) { + var a = document.createElement('a'); + a.innerText = link.title; + a.href = link.href; + p.appendChild(a); + }); + } + + el.appendChild(p); + }; + + return self; + }; +}); diff --git a/lib/linklist.js b/lib/linklist.js new file mode 100644 index 0000000..cc5b190 --- /dev/null +++ b/lib/linklist.js @@ -0,0 +1,71 @@ +define(['sorttable', 'snabbdom', 'helper'], function (SortTable, V, helper) { + 'use strict'; + V = V.default; + + function linkName(d) { + return (d.source ? d.source.hostname : d.source.id) + ' – ' + d.target.hostname; + } + + var headings = [{ + name: '', + sort: function (a, b) { + return a.type.localeCompare(b.type); + } + }, { + name: 'node.nodes', + sort: function (a, b) { + return linkName(a).localeCompare(linkName(b)); + }, + reverse: false + }, { + name: 'node.tq', + class: 'ion-connection-bars', + sort: function (a, b) { + return (a.source_tq + a.target_tq) / 2 - (b.source_tq + b.target_tq) / 2; + }, + reverse: true + }, { + name: 'node.distance', + class: 'ion-arrow-resize', + sort: function (a, b) { + return (a.distance === undefined ? -1 : a.distance) - + (b.distance === undefined ? -1 : b.distance); + }, + reverse: true + }]; + + return function (linkScale) { + var table = new SortTable(headings, 3, renderRow); + + function renderRow(d) { + var td1Content = [V.h('a', { + props: { + href: router.generateLink({ link: d.id }) + }, on: { + click: function (e) { + router.fullUrl({ link: d.id }, e); + } + } + }, linkName(d))]; + + return V.h('tr', [ + V.h('td', V.h('span', { props: { className: 'icon ion-' + (d.type.indexOf('wifi') === 0 ? 'wifi' : 'share-alt'), title: _.t(d.type) } })), + V.h('td', td1Content), + V.h('td', { style: { color: linkScale((d.source_tq + d.target_tq) / 2) } }, helper.showTq(d.source_tq) + ' - ' + helper.showTq(d.target_tq)), + V.h('td', helper.showDistance(d)) + ]); + } + + this.render = function render(d) { + var h2 = document.createElement('h2'); + h2.textContent = _.t('node.links'); + d.appendChild(h2); + table.el.elm.classList.add('link-list'); + d.appendChild(table.el.elm); + }; + + this.setData = function setData(d) { + table.setData(d.links); + }; + }; +}); diff --git a/lib/main.js b/lib/main.js new file mode 100644 index 0000000..5e03ec1 --- /dev/null +++ b/lib/main.js @@ -0,0 +1,123 @@ +define(['moment', 'utils/router', 'leaflet', 'gui', 'helper', 'utils/language'], + function (moment, Router, L, GUI, helper, Language) { + 'use strict'; + + return function () { + function handleData(data) { + var timestamp; + var nodes = []; + var links = []; + var nodeDict = {}; + + for (var i = 0; i < data.length; ++i) { + nodes = nodes.concat(data[i].nodes); + timestamp = data[i].timestamp; + links = links.concat(data[i].links); + } + + nodes.forEach(function (node) { + node.firstseen = moment.utc(node.firstseen).local(); + node.lastseen = moment.utc(node.lastseen).local(); + }); + + var age = moment().subtract(config.maxAge, 'days'); + + var online = nodes.filter(function (d) { + return d.is_online; + }); + var offline = nodes.filter(function (d) { + return !d.is_online; + }); + + var newnodes = helper.limit('firstseen', age, helper.sortByKey('firstseen', online)); + var lostnodes = helper.limit('lastseen', age, helper.sortByKey('lastseen', offline)); + + nodes.forEach(function (d) { + d.neighbours = []; + nodeDict[d.node_id] = d; + }); + + links.forEach(function (d) { + d.source = nodeDict[d.source]; + d.target = nodeDict[d.target]; + + d.id = [d.source.node_id, d.target.node_id].join('-'); + d.source.neighbours.push({ node: d.target, link: d }); + d.target.neighbours.push({ node: d.source, link: d }); + + try { + d.latlngs = []; + d.latlngs.push(L.latLng(d.source.location.latitude, d.source.location.longitude)); + d.latlngs.push(L.latLng(d.target.location.latitude, d.target.location.longitude)); + + d.distance = d.latlngs[0].distanceTo(d.latlngs[1]); + } catch (e) { + // ignore exception + } + }); + + return { + now: moment(), + timestamp: moment.utc(timestamp).local(), + nodes: { + all: nodes, + online: online, + offline: offline, + new: newnodes, + lost: lostnodes + }, + links: links, + nodeDict: nodeDict + }; + } + + var language = new Language(); + window.router = new Router(language); + + config.dataPath.forEach(function (d, i) { + config.dataPath[i] += 'meshviewer.json'; + }); + + language.init(router); + + function update() { + return Promise.all(config.dataPath.map(helper.getJSON)) + .then(handleData); + } + + update() + .then(function (d) { + return new Promise(function (resolve, reject) { + var count = 0; + (function waitForLanguage() { + if (Object.keys(_.phrases).length > 0) { + resolve(d); + } else if (count > 500) { + reject(new Error('translation not loaded after 10 seconds')); + } else { + setTimeout(waitForLanguage.bind(this), 20); + } + count++; + })(); + }); + }) + .then(function (d) { + var gui = new GUI(language); + gui.setData(d); + router.setData(d); + router.resolve(); + + window.setInterval(function () { + update().then(function (n) { + gui.setData(n); + router.setData(n); + }); + }, 60000); + }) + .catch(function (e) { + document.querySelector('.loader').innerHTML += e.message + + '


or report to your community'; + console.warn(e); + }); + }; + }); diff --git a/lib/map.js b/lib/map.js new file mode 100644 index 0000000..4139964 --- /dev/null +++ b/lib/map.js @@ -0,0 +1,251 @@ +define(['map/clientlayer', 'map/labellayer', 'map/button', 'leaflet', 'map/activearea'], + function (ClientLayer, LabelLayer, Button, L) { + 'use strict'; + + var options = { + worldCopyJump: true, + zoomControl: true, + minZoom: 0 + }; + + return function (linkScale, sidebar, buttons) { + var self = this; + var savedView; + + var map; + var layerControl; + var baseLayers = {}; + + function saveView() { + savedView = { + center: map.getCenter(), + zoom: map.getZoom() + }; + } + + function contextMenuOpenLayerMenu() { + document.querySelector('.leaflet-control-layers').classList.add('leaflet-control-layers-expanded'); + } + + function mapActiveArea() { + map.setActiveArea({ + position: 'absolute', + left: sidebar.getWidth() + 'px', + right: 0, + top: 0, + bottom: 0 + }); + } + + function setActiveArea() { + setTimeout(mapActiveArea, 300); + } + + var el = document.createElement('div'); + el.classList.add('map'); + + map = L.map(el, options); + mapActiveArea(); + + var now = new Date(); + config.mapLayers.forEach(function (item, i) { + if ((typeof item.config.start === 'number' && item.config.start <= now.getHours()) || (typeof item.config.end === 'number' && item.config.end > now.getHours())) { + item.config.order = item.config.start * -1; + } else { + item.config.order = i; + } + }); + + config.mapLayers = config.mapLayers.sort(function (a, b) { + return a.config.order - b.config.order; + }); + + var layers = config.mapLayers.map(function (d) { + return { + 'name': d.name, + 'layer': L.tileLayer(d.url.replace('{format}', document.createElement('canvas').toDataURL('image/webp').indexOf('data:image/webp') === 0 ? 'webp' : 'png'), d.config) + }; + }); + + map.addLayer(layers[0].layer); + + layers.forEach(function (d) { + baseLayers[d.name] = d.layer; + }); + + var button = new Button(map, buttons); + + map.on('locationfound', button.locationFound); + map.on('locationerror', button.locationError); + map.on('dragend', saveView); + map.on('contextmenu', contextMenuOpenLayerMenu); + + if (config.geo) { + [].forEach.call(config.geo, function (geo) { + geo.json().then(function (result) { + if (result) { + L.geoJSON(result, geo.option).addTo(map); + } + }); + }); + } + + button.init(); + + layerControl = L.control.layers(baseLayers, [], { position: 'bottomright' }); + layerControl.addTo(map); + + map.zoomControl.setPosition('topright'); + + var clientLayer = new ClientLayer({ minZoom: config.clientZoom }); + clientLayer.addTo(map); + clientLayer.setZIndex(5); + + var labelLayer = new LabelLayer({ minZoom: config.labelZoom }); + labelLayer.addTo(map); + labelLayer.setZIndex(6); + + sidebar.button.addEventListener('visibility', setActiveArea); + + map.on('zoom', function () { + clientLayer.redraw(); + labelLayer.redraw(); + }); + + map.on('baselayerchange', function (e) { + map.options.maxZoom = e.layer.options.maxZoom; + clientLayer.options.maxZoom = map.options.maxZoom; + labelLayer.options.maxZoom = map.options.maxZoom; + if (map.getZoom() > map.options.maxZoom) { + map.setZoom(map.options.maxZoom); + } + + var style = document.querySelector('.css-mode:not([media="not"])'); + if (style && e.layer.options.mode !== '' && !style.classList.contains(e.layer.options.mode)) { + style.media = 'not'; + labelLayer.updateLayer(); + } + if (e.layer.options.mode) { + var newStyle = document.querySelector('.css-mode.' + e.layer.options.mode); + newStyle.media = ''; + newStyle.appendChild(document.createTextNode('')); + labelLayer.updateLayer(); + } + }); + + map.on('load', function () { + var inputs = document.querySelectorAll('.leaflet-control-layers-selector'); + [].forEach.call(inputs, function (input) { + input.setAttribute('role', 'radiogroup'); + input.setAttribute('aria-label', input.nextSibling.innerHTML.trim()); + }); + }); + + var nodeDict = {}; + var linkDict = {}; + var highlight; + + function resetMarkerStyles(nodes, links) { + Object.keys(nodes).forEach(function (d) { + nodes[d].resetStyle(); + }); + + Object.keys(links).forEach(function (d) { + links[d].resetStyle(); + }); + } + + function setView(bounds, zoom) { + map.fitBounds(bounds, { maxZoom: (zoom ? zoom : config.nodeZoom) }); + } + + function goto(m) { + var bounds; + + if ('getBounds' in m) { + bounds = m.getBounds(); + } else { + bounds = L.latLngBounds([m.getLatLng()]); + } + + setView(bounds); + + return m; + } + + function updateView(nopanzoom) { + resetMarkerStyles(nodeDict, linkDict); + var m; + + if (highlight !== undefined) { + if (highlight.type === 'node' && nodeDict[highlight.o.node_id]) { + m = nodeDict[highlight.o.node_id]; + m.setStyle(config.map.highlightNode); + } else if (highlight.type === 'link' && linkDict[highlight.o.id]) { + m = linkDict[highlight.o.id]; + m.setStyle(config.map.highlightLink); + } + } + + if (!nopanzoom) { + if (m) { + goto(m); + } else if (savedView) { + map.setView(savedView.center, savedView.zoom); + } else { + setView(config.fixedCenter); + } + } + } + + self.setData = function setData(data) { + nodeDict = {}; + linkDict = {}; + + clientLayer.setData(data); + labelLayer.setData(data, map, nodeDict, linkDict, linkScale); + + updateView(true); + }; + + self.resetView = function resetView() { + button.disableTracking(); + highlight = undefined; + updateView(); + }; + + self.gotoNode = function gotoNode(d) { + button.disableTracking(); + highlight = { type: 'node', o: d }; + updateView(); + }; + + self.gotoLink = function gotoLink(d) { + button.disableTracking(); + highlight = { type: 'link', o: d[0] }; + updateView(); + }; + + self.gotoLocation = function gotoLocation(d) { + button.disableTracking(); + map.setView([d.lat, d.lng], d.zoom); + }; + + self.destroy = function destroy() { + button.clearButtons(); + sidebar.button.removeEventListener('visibility', setActiveArea); + map.remove(); + + if (el.parentNode) { + el.parentNode.removeChild(el); + } + }; + + self.render = function render(d) { + d.appendChild(el); + map.invalidateSize(); + }; + + return self; + }; + }); diff --git a/lib/map/activearea.js b/lib/map/activearea.js new file mode 100644 index 0000000..736a0ef --- /dev/null +++ b/lib/map/activearea.js @@ -0,0 +1,291 @@ +define(function () { + /** + * https://github.com/Mappy/Leaflet-active-area + * Apache 2.0 license https://www.apache.org/licenses/LICENSE-2.0 + */ + + var previousMethods = { + getCenter: L.Map.prototype.getCenter, + setView: L.Map.prototype.setView, + setZoomAround: L.Map.prototype.setZoomAround, + getBoundsZoom: L.Map.prototype.getBoundsZoom, + RendererUpdate: L.Renderer.prototype._update + }; + + L.Map.include({ + getBounds: function () { + if (this._viewport) { + return this.getViewportLatLngBounds(); + } + var bounds = this.getPixelBounds(); + var sw = this.unproject(bounds.getBottomLeft()); + var ne = this.unproject(bounds.getTopRight()); + + return new L.LatLngBounds(sw, ne); + }, + + getViewport: function () { + return this._viewport; + }, + + getViewportBounds: function () { + var vp = this._viewport; + var topleft = L.point(vp.offsetLeft, vp.offsetTop); + var vpsize = L.point(vp.clientWidth, vp.clientHeight); + + if (vpsize.x === 0 || vpsize.y === 0) { + // Our own viewport has no good size - so we fallback to the container size: + vp = this.getContainer(); + if (vp) { + topleft = L.point(0, 0); + vpsize = L.point(vp.clientWidth, vp.clientHeight); + } + } + + return L.bounds(topleft, topleft.add(vpsize)); + }, + + getViewportLatLngBounds: function () { + var bounds = this.getViewportBounds(); + return L.latLngBounds(this.containerPointToLatLng(bounds.min), this.containerPointToLatLng(bounds.max)); + }, + + getOffset: function () { + var mCenter = this.getSize().divideBy(2); + var vCenter = this.getViewportBounds().getCenter(); + + return mCenter.subtract(vCenter); + }, + + getCenter: function (withoutViewport) { + var center = previousMethods.getCenter.call(this); + + if (this.getViewport() && !withoutViewport) { + var zoom = this.getZoom(); + var point = this.project(center, zoom); + point = point.subtract(this.getOffset()); + + center = this.unproject(point, zoom); + } + + return center; + }, + + setView: function (center, zoom, options) { + center = L.latLng(center); + zoom = zoom === undefined ? this._zoom : this._limitZoom(zoom); + + if (this.getViewport()) { + var point = this.project(center, this._limitZoom(zoom)); + point = point.add(this.getOffset()); + center = this.unproject(point, this._limitZoom(zoom)); + } + + return previousMethods.setView.call(this, center, zoom, options); + }, + + setZoomAround: function (latlng, zoom, options) { + var vp = this.getViewport(); + + if (vp) { + var scale = this.getZoomScale(zoom); + var viewHalf = this.getViewportBounds().getCenter(); + var containerPoint = latlng instanceof L.Point ? latlng : this.latLngToContainerPoint(latlng); + + var centerOffset = containerPoint.subtract(viewHalf).multiplyBy(1 - 1 / scale); + var newCenter = this.containerPointToLatLng(viewHalf.add(centerOffset)); + + return this.setView(newCenter, zoom, { zoom: options }); + } + return previousMethods.setZoomAround.call(this, latlng, zoom, options); + }, + + getBoundsZoom: function (bounds, inside, padding) { // (LatLngBounds[, Boolean, Point]) -> Number + bounds = L.latLngBounds(bounds); + padding = L.point(padding || [0, 0]); + + var zoom = this.getZoom() || 0; + var min = this.getMinZoom(); + var max = this.getMaxZoom(); + var nw = bounds.getNorthWest(); + var se = bounds.getSouthEast(); + var vp = this.getViewport(); + var size = (vp ? L.point(vp.clientWidth, vp.clientHeight) : this.getSize()).subtract(padding); + var boundsSize = this.project(se, zoom).subtract(this.project(nw, zoom)); + var snap = L.Browser.any3d ? this.options.zoomSnap : 1; + + var scale = Math.min(size.x / boundsSize.x, size.y / boundsSize.y); + + zoom = this.getScaleZoom(scale, zoom); + + if (snap) { + zoom = Math.round(zoom / (snap / 100)) * (snap / 100); // don't jump if within 1% of a snap level + zoom = inside ? Math.ceil(zoom / snap) * snap : Math.floor(zoom / snap) * snap; + } + + return Math.max(min, Math.min(max, zoom)); + } + }); + + L.Map.include({ + setActiveArea: function (css, keepCenter, animate) { + var center; + if (keepCenter && this._zoom) { + // save center if map is already initialized + // and keepCenter is passed + center = this.getCenter(); + } + + if (!this._viewport) { + // Make viewport if not already made + var container = this.getContainer(); + this._viewport = L.DomUtil.create('div', ''); + container.insertBefore(this._viewport, container.firstChild); + } + + if (typeof css === 'string') { + this._viewport.className = css; + } else { + L.extend(this._viewport.style, css); + } + + if (center) { + this.setView(center, this.getZoom(), { animate: !!animate }); + } + return this; + } + }); + + L.Renderer.include({ + _onZoom: function () { + this._updateTransform(this._map.getCenter(true), this._map.getZoom()); + }, + + _update: function () { + previousMethods.RendererUpdate.call(this); + this._center = this._map.getCenter(true); + } + }); + + L.GridLayer.include({ + _updateLevels: function () { + var zoom = this._tileZoom; + var maxZoom = this.options.maxZoom; + + if (zoom === undefined) { + return undefined; + } + + for (var z in this._levels) { + if (this._levels[z].el.children.length || z === zoom) { + this._levels[z].el.style.zIndex = maxZoom - Math.abs(zoom - z); + } else { + L.DomUtil.remove(this._levels[z].el); + this._removeTilesAtZoom(z); + delete this._levels[z]; + } + } + + var level = this._levels[zoom]; + var map = this._map; + + if (!level) { + level = this._levels[zoom] = {}; + + level.el = L.DomUtil.create('div', 'leaflet-tile-container leaflet-zoom-animated', this._container); + level.el.style.zIndex = maxZoom; + + level.origin = map.project(map.unproject(map.getPixelOrigin()), zoom).round(); + level.zoom = zoom; + + this._setZoomTransform(level, map.getCenter(true), map.getZoom()); + + // force the browser to consider the newly added element for transition + L.Util.falseFn(level.el.offsetWidth); + } + + this._level = level; + + return level; + }, + + _resetView: function (e) { + var animating = e && (e.pinch || e.flyTo); + this._setView(this._map.getCenter(true), this._map.getZoom(), animating, animating); + }, + + _update: function (center) { + var map = this._map; + if (!map) { + return; + } + var zoom = map.getZoom(); + + if (center === undefined) { + center = map.getCenter(this); + } + if (this._tileZoom === undefined) { + return; + } // if out of minzoom/maxzoom + + var pixelBounds = this._getTiledPixelBounds(center); + var tileRange = this._pxBoundsToTileRange(pixelBounds); + var tileCenter = tileRange.getCenter(); + var queue = []; + + for (var key in this._tiles) { + this._tiles[key].current = false; + } + + // _update just loads more tiles. If the tile zoom level differs too much + // from the map's, let _setView reset levels and prune old tiles. + if (Math.abs(zoom - this._tileZoom) > 1) { + this._setView(center, zoom); + return; + } + + // create a queue of coordinates to load tiles from + for (var j = tileRange.min.y; j <= tileRange.max.y; j++) { + for (var i = tileRange.min.x; i <= tileRange.max.x; i++) { + var coords = new L.Point(i, j); + coords.z = this._tileZoom; + + if (!this._isValidTile(coords)) { + continue; + } + + var tile = this._tiles[this._tileCoordsToKey(coords)]; + if (tile) { + tile.current = true; + } else { + queue.push(coords); + } + } + } + + // sort tile queue to load tiles in order of their distance to center + queue.sort(function (a, b) { + return a.distanceTo(tileCenter) - b.distanceTo(tileCenter); + }); + + if (queue.length !== 0) { + // if its the first batch of tiles to load + if (!this._loading) { + this._loading = true; + // @event loading: Event + // Fired when the grid layer starts loading tiles + this.fire('loading'); + } + + // create DOM fragment to append tiles in one batch + var fragment = document.createDocumentFragment(); + + for (i = 0; i < queue.length; i++) { + this._addTile(queue[i], fragment); + } + + this._level.el.appendChild(fragment); + } + } + }); +}); diff --git a/lib/map/button.js b/lib/map/button.js new file mode 100644 index 0000000..b0a2f33 --- /dev/null +++ b/lib/map/button.js @@ -0,0 +1,154 @@ +define(['map/clientlayer', 'map/labellayer', 'leaflet', 'map/locationmarker'], + function (ClientLayer, LabelLayer, L, LocationMarker) { + 'use strict'; + var self = {}; + + var ButtonBase = L.Control.extend({ + options: { + position: 'bottomright' + }, + + active: false, + button: undefined, + + initialize: function (f, o) { + L.Util.setOptions(this, o); + this.f = f; + }, + + update: function () { + this.button.classList.toggle('active', this.active); + }, + + set: function (v) { + this.active = v; + this.update(); + } + }); + + var LocateButton = ButtonBase.extend({ + onAdd: function () { + var button = L.DomUtil.create('button', 'ion-locate'); + button.setAttribute('aria-label', _.t('button.tracking')); + L.DomEvent.disableClickPropagation(button); + L.DomEvent.addListener(button, 'click', this.onClick, this); + + this.button = button; + + return button; + }, + + onClick: function () { + this.f(!this.active); + } + }); + + var CoordsPickerButton = ButtonBase.extend({ + onAdd: function () { + var button = L.DomUtil.create('button', 'ion-pin'); + button.setAttribute('aria-label', _.t('button.location')); + + // Click propagation isn't disabled as this causes problems with the + // location picking mode; instead propagation is stopped in onClick(). + L.DomEvent.addListener(button, 'click', this.onClick, this); + + this.button = button; + + return button; + }, + + onClick: function (e) { + L.DomEvent.stopPropagation(e); + this.f(!this.active); + } + }); + + return function (map, buttons) { + var userLocation; + + var locateUserButton = new LocateButton(function (d) { + if (d) { + enableTracking(); + } else { + self.disableTracking(); + } + }); + + var mybuttons = []; + + function addButton(button) { + var el = button.onAdd(); + mybuttons.push(el); + buttons.appendChild(el); + } + + self.clearButtons = function clearButtons() { + mybuttons.forEach(function (d) { + buttons.removeChild(d); + }); + }; + + var showCoordsPickerButton = new CoordsPickerButton(function (d) { + if (d) { + enableCoords(); + } else { + disableCoords(); + } + }); + + function enableTracking() { + map.locate({ + watch: true, + enableHighAccuracy: true, + setView: true + }); + locateUserButton.set(true); + } + + self.disableTracking = function disableTracking() { + map.stopLocate(); + self.locationError(); + locateUserButton.set(false); + }; + + function enableCoords() { + map.getContainer().classList.add('pick-coordinates'); + map.on('click', showCoordinates); + showCoordsPickerButton.set(true); + } + + function disableCoords() { + map.getContainer().classList.remove('pick-coordinates'); + map.off('click', showCoordinates); + showCoordsPickerButton.set(false); + } + + function showCoordinates(e) { + router.fullUrl({ zoom: map.getZoom(), lat: e.latlng.lat, lng: e.latlng.lng }); + disableCoords(); + } + + self.locationFound = function locationFound(e) { + if (!userLocation) { + userLocation = new LocationMarker(e.latlng).addTo(map); + } + + userLocation.setLatLng(e.latlng); + userLocation.setAccuracy(e.accuracy); + }; + + self.locationError = function locationError() { + if (userLocation) { + map.removeLayer(userLocation); + userLocation = null; + } + }; + + self.init = function init() { + addButton(locateUserButton); + addButton(showCoordsPickerButton); + }; + + return self; + }; + }); diff --git a/lib/map/clientlayer.js b/lib/map/clientlayer.js new file mode 100644 index 0000000..fd006b0 --- /dev/null +++ b/lib/map/clientlayer.js @@ -0,0 +1,62 @@ +define(['leaflet', 'rbush', 'helper'], + function (L, RBush, helper) { + 'use strict'; + + return L.GridLayer.extend({ + mapRTree: function mapRTree(d) { + return { + minX: d.location.latitude, minY: d.location.longitude, + maxX: d.location.latitude, maxY: d.location.longitude, + node: d + }; + }, + setData: function (data) { + var rtreeOnlineAll = new RBush(9); + + this.data = rtreeOnlineAll.load(data.nodes.online.filter(helper.hasLocation).map(this.mapRTree)); + + // pre-calculate start angles + this.data.all().forEach(function (n) { + n.startAngle = (parseInt(n.node.node_id.substr(10, 2), 16) / 255) * 2 * Math.PI; + }); + this.redraw(); + }, + createTile: function (tilePoint) { + var tile = L.DomUtil.create('canvas', 'leaflet-tile'); + + var tileSize = this.options.tileSize; + tile.width = tileSize; + tile.height = tileSize; + + if (!this.data) { + return tile; + } + + var ctx = tile.getContext('2d'); + var s = tilePoint.multiplyBy(tileSize); + var map = this._map; + + var margin = 50; + var bbox = helper.getTileBBox(s, map, tileSize, margin); + + var nodes = this.data.search(bbox); + + if (nodes.length === 0) { + return tile; + } + + var startDistance = 10; + + nodes.forEach(function (d) { + var p = map.project([d.node.location.latitude, d.node.location.longitude]); + + p.x -= s.x; + p.y -= s.y; + + helper.positionClients(ctx, p, d.startAngle, d.node, startDistance); + }); + + return tile; + } + }); + }); diff --git a/lib/map/labellayer.js b/lib/map/labellayer.js new file mode 100644 index 0000000..7ff25ac --- /dev/null +++ b/lib/map/labellayer.js @@ -0,0 +1,352 @@ +define(['leaflet', 'rbush', 'helper', 'moment'], + function (L, RBush, helper, moment) { + 'use strict'; + + var groupOnline; + var groupOffline; + var groupNew; + var groupLost; + var groupLines; + + var labelLocations = [['left', 'middle', 0 / 8], + ['center', 'top', 6 / 8], + ['right', 'middle', 4 / 8], + ['left', 'top', 7 / 8], + ['left', 'ideographic', 1 / 8], + ['right', 'top', 5 / 8], + ['center', 'ideographic', 2 / 8], + ['right', 'ideographic', 3 / 8]]; + var labelShadow; + var bodyStyle = { fontFamily: 'sans-serif' }; + var nodeRadius = 4; + + var cFont = document.createElement('canvas').getContext('2d'); + + function measureText(font, text) { + cFont.font = font; + return cFont.measureText(text); + } + + function mapRTree(d) { + return { minX: d.position.lat, minY: d.position.lng, maxX: d.position.lat, maxY: d.position.lng, label: d }; + } + + function prepareLabel(fillStyle, fontSize, offset, stroke) { + return function (d) { + var font = fontSize + 'px ' + bodyStyle.fontFamily; + return { + position: L.latLng(d.location.latitude, d.location.longitude), + label: d.hostname, + offset: offset, + fillStyle: fillStyle, + height: fontSize * 1.2, + font: font, + stroke: stroke, + width: measureText(font, d.hostname).width + }; + }; + } + + function calcOffset(offset, loc) { + return [offset * Math.cos(loc[2] * 2 * Math.PI), + offset * Math.sin(loc[2] * 2 * Math.PI)]; + } + + function labelRect(p, offset, anchor, label, minZoom, maxZoom, z) { + var margin = 1 + 1.41 * (1 - (z - minZoom) / (maxZoom - minZoom)); + + var width = label.width * margin; + var height = label.height * margin; + + var dx = { + left: 0, + right: -width, + center: -width / 2 + }; + + var dy = { + top: 0, + ideographic: -height, + middle: -height / 2 + }; + + var x = p.x + offset[0] + dx[anchor[0]]; + var y = p.y + offset[1] + dy[anchor[1]]; + + return { minX: x, minY: y, maxX: x + width, maxY: y + height }; + } + + function mkMarker(dict, iconFunc) { + return function (d) { + var m = L.circleMarker([d.location.latitude, d.location.longitude], iconFunc(d)); + + m.resetStyle = function resetStyle() { + m.setStyle(iconFunc(d)); + }; + + m.on('click', function () { + router.fullUrl({ node: d.node_id }); + }); + m.bindTooltip(helper.escape(d.hostname)); + + dict[d.node_id] = m; + + return m; + }; + } + + function addLinksToMap(dict, linkScale, graph) { + graph = graph.filter(function (d) { + return 'distance' in d && d.type.indexOf('vpn') !== 0; + }); + + return graph.map(function (d) { + var opts = { + color: linkScale((d.source_tq + d.target_tq) / 2), + weight: 4, + opacity: 0.5, + dashArray: 'none' + }; + + var line = L.polyline(d.latlngs, opts); + + line.resetStyle = function resetStyle() { + line.setStyle(opts); + }; + + line.bindTooltip(helper.escape(d.source.hostname + ' – ' + d.target.hostname) + + '
' + helper.showDistance(d) + ' / ' + helper.showTq(d.source_tq) + ' - ' + helper.showTq(d.target_tq) + '
' + d.type + '
'); + + line.on('click', function () { + router.fullUrl({ link: d.id }); + }); + + dict[d.id] = line; + + return line; + }); + } + + function getIcon(color) { + return Object.assign({}, config.icon.base, config.icon[color]); + } + + return L.GridLayer.extend({ + onAdd: function (map) { + L.GridLayer.prototype.onAdd.call(this, map); + if (this.data) { + this.prepareLabels(); + } + }, + setData: function (data, map, nodeDict, linkDict, linkScale) { + var iconOnline = getIcon('online'); + var iconOffline = getIcon('offline'); + var iconLost = getIcon('lost'); + var iconAlert = getIcon('alert'); + var iconNew = getIcon('new'); + // Check if init or data is already set + if (groupLines) { + groupOffline.clearLayers(); + groupOnline.clearLayers(); + groupNew.clearLayers(); + groupLost.clearLayers(); + groupLines.clearLayers(); + } + + var lines = addLinksToMap(linkDict, linkScale, data.links); + groupLines = L.featureGroup(lines).addTo(map); + + var nodesOnline = helper.subtract(data.nodes.online, data.nodes.new).filter(helper.hasLocation); + var nodesOffline = helper.subtract(data.nodes.offline, data.nodes.lost).filter(helper.hasLocation); + var nodesNew = data.nodes.new.filter(helper.hasLocation); + var nodesLost = data.nodes.lost.filter(helper.hasLocation); + + var markersOnline = nodesOnline.map(mkMarker(nodeDict, function () { + return iconOnline; + })); + + var markersOffline = nodesOffline.map(mkMarker(nodeDict, function () { + return iconOffline; + })); + + var markersNew = nodesNew.map(mkMarker(nodeDict, function () { + return iconNew; + })); + + var markersLost = nodesLost.map(mkMarker(nodeDict, function (d) { + var age = moment(data.now).diff(d.lastseen, 'days', true); + if (age <= config.maxAgeAlert) { + return iconAlert; + } + if (age <= config.maxAge) { + return iconLost; + } + return null; + })); + + groupOffline = L.featureGroup(markersOffline).addTo(map); + groupLost = L.featureGroup(markersLost).addTo(map); + groupOnline = L.featureGroup(markersOnline).addTo(map); + groupNew = L.featureGroup(markersNew).addTo(map); + + this.data = { + online: nodesOnline, + offline: nodesOffline, + new: nodesNew, + lost: nodesLost + }; + this.updateLayer(); + }, + updateLayer: function () { + if (this._map) { + this.prepareLabels(); + } + }, + prepareLabels: function () { + var d = this.data; + + // label: + // - position (WGS84 coords) + // - offset (2D vector in pixels) + // - anchor (tuple, textAlignment, textBaseline) + // - minZoom (inclusive) + // - label (string) + // - color (string) + + var labelsOnline = d.online.map(prepareLabel(null, 11, 8, true)); + var labelsOffline = d.offline.map(prepareLabel(config.icon.offline.color, 9, 5, false)); + var labelsNew = d.new.map(prepareLabel(config.map.labelNewColor, 11, 8, true)); + var labelsLost = d.lost.map(prepareLabel(config.icon.lost.color, 11, 8, true)); + + var labels = [] + .concat(labelsNew) + .concat(labelsLost) + .concat(labelsOnline) + .concat(labelsOffline); + + var minZoom = this.options.minZoom; + var maxZoom = this.options.maxZoom; + + var trees = []; + + var map = this._map; + + function nodeToRect(z) { + return function (n) { + var p = map.project(n.position, z); + return { minX: p.x - nodeRadius, minY: p.y - nodeRadius, maxX: p.x + nodeRadius, maxY: p.y + nodeRadius }; + }; + } + + for (var z = minZoom; z <= maxZoom; z++) { + trees[z] = new RBush(9); + trees[z].load(labels.map(nodeToRect(z))); + } + + labels = labels.map(function (n) { + var best = labelLocations.map(function (loc) { + var offset = calcOffset(n.offset, loc); + var i; + + for (i = maxZoom; i >= minZoom; i--) { + var p = map.project(n.position, i); + var rect = labelRect(p, offset, loc, n, minZoom, maxZoom, i); + var candidates = trees[i].search(rect); + + if (candidates.length > 0) { + break; + } + } + + return { loc: loc, z: i + 1 }; + }).filter(function (k) { + return k.z <= maxZoom; + }).sort(function (a, b) { + return a.z - b.z; + })[0]; + + if (best !== undefined) { + n.offset = calcOffset(n.offset, best.loc); + n.minZoom = best.z; + n.anchor = best.loc; + + for (var i = maxZoom; i >= best.z; i--) { + var p = map.project(n.position, i); + var rect = labelRect(p, n.offset, best.loc, n, minZoom, maxZoom, i); + trees[i].insert(rect); + } + + return n; + } + return undefined; + }).filter(function (n) { + return n !== undefined; + }); + + this.margin = 16; + + if (labels.length > 0) { + this.margin += labels.map(function (n) { + return n.width; + }).sort().reverse()[0]; + } + + this.labels = new RBush(9); + this.labels.load(labels.map(mapRTree)); + + this.redraw(); + }, + createTile: function (tilePoint) { + var tile = L.DomUtil.create('canvas', 'leaflet-tile'); + + var tileSize = this.options.tileSize; + tile.width = tileSize; + tile.height = tileSize; + + if (!this.labels) { + return tile; + } + + var s = tilePoint.multiplyBy(tileSize); + var map = this._map; + bodyStyle = window.getComputedStyle(document.querySelector('body')); + labelShadow = bodyStyle.backgroundColor.replace(/rgb/i, 'rgba').replace(/\)/i, ',0.7)'); + + function projectNodes(d) { + var p = map.project(d.label.position); + + p.x -= s.x; + p.y -= s.y; + + return { p: p, label: d.label }; + } + + var bbox = helper.getTileBBox(s, map, tileSize, this.margin); + var labels = this.labels.search(bbox).map(projectNodes); + var ctx = tile.getContext('2d'); + + ctx.lineWidth = 5; + ctx.strokeStyle = labelShadow; + ctx.miterLimit = 2; + + function drawLabel(d) { + ctx.font = d.label.font; + ctx.textAlign = d.label.anchor[0]; + ctx.textBaseline = d.label.anchor[1]; + ctx.fillStyle = d.label.fillStyle === null ? bodyStyle.color : d.label.fillStyle; + + if (d.label.stroke) { + ctx.strokeText(d.label.label, d.p.x + d.label.offset[0], d.p.y + d.label.offset[1]); + } + + ctx.fillText(d.label.label, d.p.x + d.label.offset[0], d.p.y + d.label.offset[1]); + } + + labels.filter(function (d) { + return tilePoint.z >= d.label.minZoom; + }).forEach(drawLabel); + + return tile; + } + }); + }); diff --git a/lib/map/locationmarker.js b/lib/map/locationmarker.js new file mode 100644 index 0000000..905aedc --- /dev/null +++ b/lib/map/locationmarker.js @@ -0,0 +1,32 @@ +define(['leaflet'], function (L) { + 'use strict'; + + return L.CircleMarker.extend({ + initialize: function (latlng) { + this.accuracyCircle = L.circle(latlng, 0, config.locate.accuracyCircle); + this.outerCircle = L.circleMarker(latlng, config.locate.outerCircle); + L.CircleMarker.prototype.initialize.call(this, latlng, config.locate.innerCircle); + + this.on('remove', function () { + this._map.removeLayer(this.accuracyCircle); + this._map.removeLayer(this.outerCircle); + }); + }, + + setLatLng: function (latlng) { + this.accuracyCircle.setLatLng(latlng); + this.outerCircle.setLatLng(latlng); + L.CircleMarker.prototype.setLatLng.call(this, latlng); + }, + + setAccuracy: function (accuracy) { + this.accuracyCircle.setRadius(accuracy); + }, + + onAdd: function (map) { + this.accuracyCircle.addTo(map).bringToBack(); + this.outerCircle.addTo(map); + L.CircleMarker.prototype.onAdd.call(this, map); + } + }); +}); diff --git a/lib/nodelist.js b/lib/nodelist.js new file mode 100644 index 0000000..9792f42 --- /dev/null +++ b/lib/nodelist.js @@ -0,0 +1,101 @@ +define(['sorttable', 'snabbdom', 'helper'], function (SortTable, V, helper) { + 'use strict'; + V = V.default; + + function showUptime(uptime) { + // 1000ms are 1 second and 60 second are 1min: 60 * 1000 = 60000 + var s = uptime / 60000; + if (Math.abs(s) < 60) { + return Math.round(s) + ' m'; + } + s /= 60; + if (Math.abs(s) < 24) { + return Math.round(s) + ' h'; + } + s /= 24; + return Math.round(s) + ' d'; + } + + var headings = [{ + name: '' + }, { + name: 'node.nodes', + sort: function (a, b) { + return a.hostname.localeCompare(b.hostname); + }, + reverse: false + }, { + name: 'node.uptime', + class: 'ion-time', + sort: function (a, b) { + return a.uptime - b.uptime; + }, + reverse: true + }, { + name: 'node.links', + class: 'ion-share-alt', + sort: function (a, b) { + return a.neighbours.length - b.neighbours.length; + }, + reverse: true + }, { + name: 'node.clients', + class: 'ion-people', + sort: function (a, b) { + return a.clients - b.clients; + }, + reverse: true + }]; + + return function () { + function renderRow(d) { + var td0Content = ''; + if (helper.hasLocation(d)) { + td0Content = V.h('span', { props: { className: 'icon ion-location', title: _.t('location.location') } }); + } + + var td1Content = V.h('a', { + props: { + className: ['hostname', d.is_online ? 'online' : 'offline'].join(' '), + href: router.generateLink({ node: d.node_id }) + }, on: { + click: function (e) { + router.fullUrl({ node: d.node_id }, e); + } + } + }, d.hostname); + + return V.h('tr', [ + V.h('td', td0Content), + V.h('td', td1Content), + V.h('td', showUptime(d.uptime)), + V.h('td', d.neighbours.length), + V.h('td', d.clients) + ]); + } + + var table = new SortTable(headings, 1, renderRow); + + this.render = function render(d) { + var h2 = document.createElement('h2'); + h2.textContent = _.t('node.all'); + d.appendChild(h2); + table.el.elm.classList.add('node-list'); + d.appendChild(table.el.elm); + }; + + this.setData = function setData(d) { + var data = d.nodes.all.map(function (e) { + var n = Object.create(e); + if (e.is_online) { + n.uptime = d.now - new Date(e.uptime).getTime(); + } else { + n.uptime = e.lastseen - d.now; + } + return n; + }); + + table.setData(data); + }; + }; +}); diff --git a/lib/proportions.js b/lib/proportions.js new file mode 100644 index 0000000..4d2125a --- /dev/null +++ b/lib/proportions.js @@ -0,0 +1,187 @@ +define(['d3-interpolate', 'snabbdom', 'utils/version', 'filters/genericnode', 'helper'], + function (d3Interpolate, V, versionCompare, Filter, helper) { + 'use strict'; + V = V.default; + + return function (filterManager) { + var self = this; + var scale = d3Interpolate.interpolate(config.forceGraph.tqFrom, config.forceGraph.tqTo); + var time; + + var statusTable; + var fwTable; + var hwTable; + var geoTable; + var autoTable; + var gatewayTable; + var gateway6Table; + var domainTable; + + function count(nodes, key, f) { + var dict = {}; + + nodes.forEach(function (d) { + var v = helper.dictGet(d, key.slice(0)); + + if (f !== undefined) { + v = f(v); + } + + if (v === null) { + return; + } + + dict[v] = 1 + (v in dict ? dict[v] : 0); + }); + + return Object.keys(dict).map(function (d) { + return [d, dict[d], key, f]; + }); + } + + function addFilter(filter) { + return function () { + filterManager.addFilter(filter); + return false; + }; + } + + function fillTable(name, table, data) { + if (!table) { + table = document.createElement('table'); + } + + var max = Math.max.apply(Math, data.map(function (o) { + return o[1]; + })); + + var items = data.map(function (d) { + var v = d[1] / max; + + var filter = new Filter(_.t(name), d[2], d[0], d[3]); + + var a = V.h('a', { on: { click: addFilter(filter) } }, d[0]); + + var th = V.h('th', a); + var td = V.h('td', V.h('span', { + style: { + width: 'calc(25px + ' + Math.round(v * 90) + '%)', + backgroundColor: scale(v) + } + }, d[1].toFixed(0))); + + return V.h('tr', [th, td]); + }); + var tableNew = V.h('table', { props: { className: 'proportion' } }, items); + return V.patch(table, tableNew); + } + + self.setData = function setData(data) { + var onlineNodes = data.nodes.online; + var nodes = onlineNodes.concat(data.nodes.lost); + time = data.timestamp; + + function hostnameOfNodeID(nodeid) { + var gateway = data.nodeDict[nodeid]; + if (gateway) { + return gateway.hostname; + } + return null; + } + + var gatewayDict = count(nodes, ['gateway'], hostnameOfNodeID); + var gateway6Dict = count(nodes, ['gateway6'], hostnameOfNodeID); + + var statusDict = count(nodes, ['is_online'], function (d) { + return d ? 'online' : 'offline'; + }); + var fwDict = count(nodes, ['firmware', 'release']); + var hwDict = count(nodes, ['model']); + var geoDict = count(nodes, ['location'], function (d) { + return d && d.longitude && d.latitude ? _.t('yes') : _.t('no'); + }); + + var autoDict = count(nodes, ['autoupdater'], function (d) { + if (d.enabled) { + return d.branch; + } + return _.t('node.deactivated'); + }); + + var domainDict = count(nodes, ['domain'], function (d) { + if (config.domainNames) { + config.domainNames.some(function (t) { + if (d === t.domain) { + d = t.name; + return true; + } + }); + } + return d; + }); + + statusTable = fillTable('node.status', statusTable, statusDict.sort(function (a, b) { + return b[1] - a[1]; + })); + fwTable = fillTable('node.firmware', fwTable, fwDict.sort(versionCompare)); + hwTable = fillTable('node.hardware', hwTable, hwDict.sort(function (a, b) { + return b[1] - a[1]; + })); + geoTable = fillTable('node.visible', geoTable, geoDict.sort(function (a, b) { + return b[1] - a[1]; + })); + autoTable = fillTable('node.update', autoTable, autoDict.sort(function (a, b) { + return b[1] - a[1]; + })); + gatewayTable = fillTable('node.selectedGatewayIPv4', gatewayTable, gatewayDict.sort(function (a, b) { + return b[1] - a[1]; + })); + gateway6Table = fillTable('node.selectedGatewayIPv6', gateway6Table, gateway6Dict.sort(function (a, b) { + return b[1] - a[1]; + })); + domainTable = fillTable('node.domain', domainTable, domainDict.sort(function (a, b) { + return b[1] - a[1]; + })); + }; + + self.render = function render(el) { + self.renderSingle(el, 'node.status', statusTable); + self.renderSingle(el, 'node.firmware', fwTable); + self.renderSingle(el, 'node.hardware', hwTable); + self.renderSingle(el, 'node.visible', geoTable); + self.renderSingle(el, 'node.update', autoTable); + self.renderSingle(el, 'node.selectedGatewayIPv4', gatewayTable); + self.renderSingle(el, 'node.selectedGatewayIPv6', gateway6Table); + self.renderSingle(el, 'node.domain', domainTable); + + if (config.globalInfos) { + var images = document.createElement('div'); + el.appendChild(images); + var img = []; + var subst = { + '{TIME}': time, + '{LOCALE}': _.locale() + }; + config.globalInfos.forEach(function (globalInfo) { + img.push(V.h('h2', globalInfo.name)); + img.push(helper.showStat(V, globalInfo, subst)); + }); + V.patch(images, V.h('div', img)); + } + }; + + self.renderSingle = function renderSingle(el, heading, table) { + if (table.children.length > 0) { + var h2 = document.createElement('h2'); + h2.classList.add('proportion-header'); + h2.textContent = _.t(heading); + h2.onclick = function onclick() { + table.elm.classList.toggle('hide'); + }; + el.appendChild(h2); + el.appendChild(table.elm); + } + }; + return self; + }; + }); diff --git a/lib/sidebar.js b/lib/sidebar.js new file mode 100644 index 0000000..b28cf3c --- /dev/null +++ b/lib/sidebar.js @@ -0,0 +1,64 @@ +define(function () { + 'use strict'; + + return function (el) { + var self = this; + + // Needed to avoid render blocking + var gridBreakpoints = { + lg: [992, 446], + xl: [1200, 560] + }; + + var sidebar = document.createElement('div'); + sidebar.classList.add('sidebar'); + el.appendChild(sidebar); + + var button = document.createElement('button'); + var visibility = new CustomEvent('visibility'); + sidebar.appendChild(button); + + button.classList.add('sidebarhandle'); + button.setAttribute('aria-label', _.t('sidebar.toggle')); + button.onclick = function onclick() { + button.dispatchEvent(visibility); + sidebar.classList.toggle('hidden'); + }; + + var container = document.createElement('div'); + container.classList.add('container'); + sidebar.appendChild(container); + + self.getWidth = function getWidth() { + if (gridBreakpoints.lg[0] > window.innerWidth || sidebar.classList.contains('hidden')) { + return 0; + } else if (gridBreakpoints.xl[0] > window.innerWidth) { + return gridBreakpoints.lg[1]; + } + return gridBreakpoints.xl[1]; + }; + + self.add = function add(d) { + d.render(container); + }; + + self.ensureVisible = function ensureVisible() { + sidebar.classList.remove('hidden'); + }; + + self.hide = function hide() { + container.children[1].classList.add('hide'); + container.children[2].classList.add('hide'); + }; + + self.reveal = function reveal() { + container.children[1].classList.remove('hide'); + container.children[2].classList.remove('hide'); + }; + + self.container = sidebar; + self.button = button; + + return self; + }; +}); diff --git a/lib/simplenodelist.js b/lib/simplenodelist.js new file mode 100644 index 0000000..919e9c7 --- /dev/null +++ b/lib/simplenodelist.js @@ -0,0 +1,66 @@ +define(['moment', 'snabbdom', 'helper'], function (moment, V, helper) { + 'use strict'; + V = V.default; + + return function (nodes, field, title) { + var self = this; + var el; + var tbody; + + self.render = function render(d) { + el = d; + }; + + self.setData = function setData(data) { + var list = data.nodes[nodes]; + + if (list.length === 0) { + tbody = null; + return; + } + + if (!tbody) { + var h2 = document.createElement('h2'); + h2.textContent = title; + el.appendChild(h2); + + var table = document.createElement('table'); + table.classList.add('node-list'); + el.appendChild(table); + + tbody = document.createElement('tbody'); + tbody.last = V.h('tbody'); + table.appendChild(tbody); + } + + var items = list.map(function (d) { + var td0Content = ''; + if (helper.hasLocation(d)) { + td0Content = V.h('span', { props: { className: 'icon ion-location', title: _.t('location.location') } }); + } + + var td1Content = V.h('a', { + props: { + className: ['hostname', d.is_online ? 'online' : 'offline'].join(' '), + href: router.generateLink({ node: d.node_id }) + }, on: { + click: function (e) { + router.fullUrl({ node: d.node_id }, e); + } + } + }, d.hostname); + + return V.h('tr', [ + V.h('td', td0Content), + V.h('td', td1Content), + V.h('td', moment(d[field]).from(data.now)) + ]); + }); + + var tbodyNew = V.h('tbody', items); + tbody = V.patch(tbody, tbodyNew); + }; + + return self; + }; +}); diff --git a/lib/sorttable.js b/lib/sorttable.js new file mode 100644 index 0000000..235b66c --- /dev/null +++ b/lib/sorttable.js @@ -0,0 +1,69 @@ +define(['snabbdom'], function (V) { + 'use strict'; + V = V.default; + + return function (headings, sortIndex, renderRow) { + var self = this; + var data; + var sortReverse = false; + self.el = document.createElement('table'); + + function sortTable(i) { + sortReverse = i === sortIndex ? !sortReverse : false; + sortIndex = i; + + updateView(); + } + + function sortTableHandler(i) { + return function () { + sortTable(i); + }; + } + + function updateView() { + var children = []; + + if (data.length !== 0) { + var th = headings.map(function (d, i) { + var name = _.t(d.name); + var properties = { + onclick: sortTableHandler(i), + className: 'sort-header' + }; + + if (d.class) { + properties.className += ' ' + d.class; + properties.title = name; + name = ''; + } + + if (sortIndex === i) { + properties.className += sortReverse ? ' sort-up' : ' sort-down'; + } + + return V.h('th', { props: properties }, name); + }); + + var links = data.slice(0).sort(headings[sortIndex].sort); + + if (headings[sortIndex].reverse ? !sortReverse : sortReverse) { + links = links.reverse(); + } + + children.push(V.h('thead', V.h('tr', th))); + children.push(V.h('tbody', links.map(renderRow))); + } + + var elNew = V.h('table', children); + self.el = V.patch(self.el, elNew); + } + + self.setData = function setData(d) { + data = d; + updateView(); + }; + + return self; + }; +}); diff --git a/lib/tabs.js b/lib/tabs.js new file mode 100644 index 0000000..f3c13d2 --- /dev/null +++ b/lib/tabs.js @@ -0,0 +1,63 @@ +define(function () { + 'use strict'; + + return function () { + var self = this; + + var tabs = document.createElement('ul'); + tabs.classList.add('tabs'); + + var container = document.createElement('div'); + + function gotoTab(li) { + for (var i = 0; i < tabs.children.length; i++) { + tabs.children[i].classList.remove('visible'); + } + + while (container.firstChild) { + container.removeChild(container.firstChild); + } + + li.classList.add('visible'); + + var tab = document.createElement('div'); + tab.classList.add('tab'); + container.appendChild(tab); + li.child.render(tab); + } + + function switchTab() { + gotoTab(this); + + return false; + } + + self.add = function add(title, d) { + var li = document.createElement('li'); + li.textContent = _.t(title); + li.onclick = switchTab; + li.child = d; + tabs.appendChild(li); + + var anyVisible = false; + + for (var i = 0; i < tabs.children.length; i++) { + if (tabs.children[i].classList.contains('visible')) { + anyVisible = true; + break; + } + } + + if (!anyVisible) { + gotoTab(li); + } + }; + + self.render = function render(el) { + el.appendChild(tabs); + el.appendChild(container); + }; + + return self; + }; +}); diff --git a/lib/title.js b/lib/title.js new file mode 100644 index 0000000..812bca3 --- /dev/null +++ b/lib/title.js @@ -0,0 +1,36 @@ +define(function () { + 'use strict'; + + return function () { + function setTitle(d) { + var title = [config.siteName]; + + if (d !== undefined) { + title.unshift(d); + } + + document.title = title.join(' - '); + } + + this.resetView = function resetView() { + setTitle(); + }; + + this.gotoNode = function gotoNode(d) { + setTitle(d.hostname); + }; + + this.gotoLink = function gotoLink(d) { + setTitle(d[0].source.hostname + ' \u21D4 ' + d[0].target.hostname); + }; + + this.gotoLocation = function gotoLocation() { + // ignore + }; + + this.destroy = function destroy() { + }; + + return this; + }; +}); diff --git a/lib/utils/helper.js b/lib/utils/helper.js new file mode 100644 index 0000000..3092b69 --- /dev/null +++ b/lib/utils/helper.js @@ -0,0 +1,206 @@ +'use strict'; + +define({ + get: function get(url) { + return new Promise(function (resolve, reject) { + var req = new XMLHttpRequest(); + req.open('GET', url); + + req.onload = function onload() { + if (req.status === 200) { + resolve(req.response); + } else { + reject(Error(req.statusText)); + } + }; + + req.onerror = function onerror() { + reject(Error('Network Error')); + }; + + req.send(); + }); + }, + + getJSON: function getJSON(url) { + return require('helper').get(url).then(JSON.parse); + }, + + sortByKey: function sortByKey(key, d) { + return d.sort(function (a, b) { + return b[key] - a[key]; + }); + }, + + limit: function limit(key, m, d) { + return d.filter(function (n) { + return n[key].isAfter(m); + }); + }, + + sum: function sum(a) { + return a.reduce(function (b, c) { + return b + c; + }, 0); + }, + + one: function one() { + return 1; + }, + + dictGet: function dictGet(dict, key) { + var k = key.shift(); + + if (!(k in dict)) { + return null; + } + + if (key.length === 0) { + return dict[k]; + } + + return this.dictGet(dict[k], key); + }, + + listReplace: function listReplace(s, subst) { + for (var key in subst) { + if (subst.hasOwnProperty(key)) { + var re = new RegExp(key, 'g'); + s = s.replace(re, subst[key]); + } + } + return s; + }, + + hasLocation: function hasLocation(d) { + return 'location' in d && + Math.abs(d.location.latitude) < 90 && + Math.abs(d.location.longitude) < 180; + }, + + subtract: function subtract(a, b) { + var ids = {}; + + b.forEach(function (d) { + ids[d.node_id] = true; + }); + + return a.filter(function (d) { + return !ids[d.node_id]; + }); + }, + + /* Helpers working with links */ + + showDistance: function showDistance(d) { + if (isNaN(d.distance)) { + return ''; + } + + return d.distance.toFixed(0) + ' m'; + }, + + showTq: function showTq(d) { + return (d * 100).toFixed(0) + '%'; + }, + + attributeEntry: function attributeEntry(V, children, label, value) { + if (value !== undefined) { + if (typeof value !== 'object') { + value = V.h('td', value); + } + + children.push(V.h('tr', [ + V.h('th', _.t(label)), + value + ])); + } + }, + showStat: function showStat(V, o, subst) { + var content = V.h('img', { attrs: { src: require('helper').listReplace(o.image, subst), width: o.width, height: o.height, alt: _.t('loading', { name: o.name }) } }); + + if (o.href) { + return V.h('div', V.h('a', { + attrs: + { + href: require('helper').listReplace(o.href, subst), + target: '_blank', + title: require('helper').listReplace(o.title, subst) + } + }, content)); + } + return V.h('div', content); + }, + + getTileBBox: function getTileBBox(s, map, tileSize, margin) { + var tl = map.unproject([s.x - margin, s.y - margin]); + var br = map.unproject([s.x + margin + tileSize, s.y + margin + tileSize]); + + return { minX: br.lat, minY: tl.lng, maxX: tl.lat, maxY: br.lng }; + }, + positionClients: function positionClients(ctx, p, startAngle, node, startDistance) { + if (node.clients === 0) { + return; + } + + var radius = 3; + var a = 1.2; + var mode = 0; + + ctx.beginPath(); + ctx.fillStyle = config.client.wifi24; + + for (var orbit = 0, i = 0; i < node.clients; orbit++) { + var distance = startDistance + orbit * 2 * radius * a; + var n = Math.floor((Math.PI * distance) / (a * radius)); + var delta = node.clients - i; + + for (var j = 0; j < Math.min(delta, n); i++, j++) { + if (mode !== 1 && i >= (node.clients_wifi24 + node.clients_wifi5)) { + mode = 1; + ctx.fill(); + ctx.beginPath(); + ctx.fillStyle = config.client.wifi5; + } else if (mode === 0 && i >= node.clients_wifi24) { + mode = 2; + ctx.fill(); + ctx.beginPath(); + ctx.fillStyle = config.client.other; + } + var angle = 2 * Math.PI / n * j; + var x = p.x + distance * Math.cos(angle + startAngle); + var y = p.y + distance * Math.sin(angle + startAngle); + + ctx.moveTo(x, y); + ctx.arc(x, y, radius, 0, 2 * Math.PI); + } + } + ctx.fill(); + }, + fullscreen: function fullscreen(btn) { + if (!document.fullscreenElement && !document.webkitFullscreenElement && !document.mozFullScreenElement) { + var fel = document.firstElementChild; + var func = fel.requestFullscreen + || fel.webkitRequestFullScreen + || fel.mozRequestFullScreen; + func.call(fel); + btn.classList.remove('ion-full-enter'); + btn.classList.add('ion-full-exit'); + } else { + func = document.exitFullscreen + || document.webkitExitFullscreen + || document.mozCancelFullScreen; + if (func) { + func.call(document); + btn.classList.remove('ion-full-exit'); + btn.classList.add('ion-full-enter'); + } + } + }, + escape: function escape(string) { + return string.replace(//g, '>') + .replace(/"/g, '"') + .replace(/'/g, '''); + } +}); diff --git a/lib/utils/language.js b/lib/utils/language.js new file mode 100644 index 0000000..3e72b1a --- /dev/null +++ b/lib/utils/language.js @@ -0,0 +1,70 @@ +define(['polyglot', 'moment', 'helper'], function (Polyglot, moment, helper) { + 'use strict'; + return function () { + var router; + + function languageSelect(el) { + var select = document.createElement('select'); + select.className = 'language-switch'; + select.setAttribute('aria-label', 'Language'); + select.addEventListener('change', setSelectLocale); + el.appendChild(select); + + // Keep english + select.innerHTML = ''; + for (var i = 0; i < config.supportedLocale.length; i++) { + select.innerHTML += ''; + } + } + + function setSelectLocale(event) { + router.fullUrl({ lang: event.target.value }, false, true); + } + + function getLocale(input) { + var language = input || navigator.languages && navigator.languages[0] || navigator.language; + var locale = config.supportedLocale[0]; + config.supportedLocale.some(function (item) { + if (language.indexOf(item) !== -1) { + locale = item; + return true; + } + return false; + }); + return locale; + } + + function setTranslation(json) { + _.extend(json); + + if (moment.locale(_.locale()) !== _.locale()) { + moment.defineLocale(_.locale(), { + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY HH:mm', + LLLL: 'dddd, D. MMMM YYYY HH:mm' + }, + calendar: json.momentjs.calendar, + relativeTime: json.momentjs.relativeTime + }); + } + } + + function init(r) { + router = r; + /** global: _ */ + window._ = new Polyglot({ locale: getLocale(router.getLang()), allowMissing: true }); + helper.getJSON('locale/' + _.locale() + '.json?' + config.cacheBreaker).then(setTranslation); + document.querySelector('html').setAttribute('lang', _.locale()); + } + + return { + init: init, + getLocale: getLocale, + languageSelect: languageSelect + }; + }; +}); diff --git a/lib/utils/math.js b/lib/utils/math.js new file mode 100644 index 0000000..32e2eb2 --- /dev/null +++ b/lib/utils/math.js @@ -0,0 +1,31 @@ +define(function () { + var self = {}; + + self.distance = function distance(a, b) { + return (a.x - b.x) * (a.x - b.x) + (a.y - b.y) * (a.y - b.y); + }; + + self.distancePoint = function distancePoint(a, b) { + return Math.sqrt(self.distance(a, b)); + }; + + self.distanceLink = function distanceLink(p, a, b) { + /* http://stackoverflow.com/questions/849211 */ + var l2 = self.distance(a, b); + if (l2 === 0) { + return self.distance(p, a); + } + var t = ((p.x - a.x) * (b.x - a.x) + (p.y - a.y) * (b.y - a.y)) / l2; + if (t < 0) { + return self.distance(p, a); + } else if (t > 1) { + return self.distance(p, b); + } + return self.distancePoint(p, { + x: a.x + t * (b.x - a.x), + y: a.y + t * (b.y - a.y) + }); + }; + + return self; +}); diff --git a/lib/utils/node.js b/lib/utils/node.js new file mode 100644 index 0000000..0ed439d --- /dev/null +++ b/lib/utils/node.js @@ -0,0 +1,144 @@ +define(['snabbdom', 'helper', 'moment'], function (V, helper, moment) { + 'use strict'; + V = V.default; + + var self = {}; + + function showBar(v, width, warning) { + return V.h('span', + { props: { className: 'bar' + (warning ? ' warning' : '') } }, + [ + V.h('span', + { + style: { width: (width * 100) + '%' } + }), + V.h('label', v) + ] + ); + } + + self.showStatus = function showStatus(d) { + return V.h('td', + { props: { className: d.is_online ? 'online' : 'offline' } }, + _.t((d.is_online ? 'node.lastOnline' : 'node.lastOffline'), { + time: d.lastseen.fromNow(), + date: d.lastseen.format('DD.MM.YYYY, H:mm:ss') + })); + }; + + self.showGeoURI = function showGeoURI(d) { + if (!helper.hasLocation(d)) { + return undefined; + } + + return V.h('td', + V.h('a', + { props: { href: 'geo:' + d.location.latitude + ',' + d.location.longitude } }, + Number(d.location.latitude.toFixed(6)) + ', ' + Number(d.location.longitude.toFixed(6)) + ) + ); + }; + + self.showGateway = function showGateway(d) { + return d.is_gateway ? _.t('yes') : undefined; + }; + + self.showFirmware = function showFirmware(d) { + return [ + helper.dictGet(d, ['firmware', 'release']), + helper.dictGet(d, ['firmware', 'base']) + ].filter(function (n) { + return n !== null; + }).join(' / ') || undefined; + }; + + self.showUptime = function showUptime(d) { + return moment.utc(d.uptime).local().fromNow(true); + }; + + self.showFirstSeen = function showFirstSeen(d) { + return d.firstseen.fromNow(true); + }; + + self.showLoad = function showLoad(d) { + return showBar(d.loadavg.toFixed(2), d.loadavg / (d.nproc || 1), d.loadavg >= d.nproc); + }; + + self.showRAM = function showRAM(d) { + return showBar(Math.round(d.memory_usage * 100) + ' %', d.memory_usage, d.memory_usage >= 0.8); + }; + + self.showDomain = function showDomain(d) { + var rt = d.domain; + if (config.domainNames) { + config.domainNames.some(function (t) { + if (rt === t.domain) { + rt = t.name; + return true; + } + }); + } + return rt; + }; + + self.showClients = function showClients(d) { + if (!d.is_online) { + return undefined; + } + + var clients = [ + V.h('span', [ + d.clients > 0 ? d.clients : _.t('none'), + V.h('br'), + V.h('i', { props: { className: 'ion-people', title: _.t('node.clients') } }) + ]), + V.h('span', + { props: { className: 'legend-24ghz' } }, + [ + d.clients_wifi24, + V.h('br'), + V.h('span', { props: { className: 'symbol', title: '2,4 GHz' } }) + ]), + V.h('span', + { props: { className: 'legend-5ghz' } }, + [ + d.clients_wifi5, + V.h('br'), + V.h('span', { props: { className: 'symbol', title: '5 GHz' } }) + ]), + V.h('span', + { props: { className: 'legend-others' } }, + [ + d.clients_other, + V.h('br'), + V.h('span', { props: { className: 'symbol', title: _.t('others') } }) + ]) + ]; + + return V.h('td', { props: { className: 'clients' } }, clients); + }; + + self.showIPs = function showIPs(d) { + var string = []; + var ips = d.addresses; + ips.sort(); + ips.forEach(function (ip, i) { + if (i > 0) { + string.push(V.h('br')); + } + + if (ip.indexOf('fe80:') !== 0) { + string.push(V.h('a', { props: { href: 'http://[' + ip + ']/', target: '_blank' } }, ip)); + } else { + string.push(ip); + } + }); + return V.h('td', string); + }; + + self.showAutoupdate = function showAutoupdate(d) { + return d.autoupdater.enabled ? _.t('node.activated', { branch: d.autoupdater.branch }) : _.t('node.deactivated'); + }; + + return self; +}); diff --git a/lib/utils/router.js b/lib/utils/router.js new file mode 100644 index 0000000..e35bf96 --- /dev/null +++ b/lib/utils/router.js @@ -0,0 +1,150 @@ +define(['Navigo'], function (Navigo) { + 'use strict'; + + return function (language) { + var init = false; + var objects = {}; + var targets = []; + var views = {}; + var current = {}; + var state = { lang: language.getLocale(), view: 'map' }; + + function resetView() { + targets.forEach(function (t) { + t.resetView(); + }); + } + + function gotoNode(d) { + if (objects.nodeDict[d.nodeId]) { + targets.forEach(function (t) { + t.gotoNode(objects.nodeDict[d.nodeId], objects.nodeDict); + }); + } + } + + function gotoLink(d) { + var link = objects.links.filter(function (value) { + return value.id === d.linkId; + }); + if (link) { + targets.forEach(function (t) { + t.gotoLink(link); + }); + } + } + + function view(d) { + if (d.view in views) { + views[d.view](); + state.view = d.view; + resetView(); + } + } + + function customRoute(lang, viewValue, node, link, zoom, lat, lng) { + current = { + lang: lang, + view: viewValue, + node: node, + link: link, + zoom: zoom, + lat: lat, + lng: lng + }; + + if (lang && lang !== state.lang && lang === language.getLocale(lang)) { + location.reload(); + } + + if (!init || viewValue && viewValue !== state.view) { + if (!viewValue) { + viewValue = state.view; + } + view({ view: viewValue }); + init = true; + } + + if (node) { + gotoNode({ nodeId: node }); + } else if (link) { + gotoLink({ linkId: link }); + } else if (lat) { + targets.forEach(function (t) { + t.gotoLocation({ + zoom: parseInt(zoom, 10), + lat: parseFloat(lat), + lng: parseFloat(lng) + }); + }); + } else { + resetView(); + } + } + + var router = new Navigo(null, true, '#!'); + + router + .on(/^\/?#?!?\/([\w]{2})?\/?(map|graph)?\/?([a-f\d]{12})?([a-f\d\-]{25})?\/?(?:(\d+)\/(-?[\d.]+)\/(-?[\d.]+))?$/, customRoute) + .on({ + '*': function () { + router.fullUrl(); + } + }); + + router.generateLink = function generateLink(data, full, deep) { + var result = '#!'; + + if (full) { + data = Object.assign({}, state, data); + } else if (deep) { + data = Object.assign({}, current, data); + } + + for (var key in data) { + if (!data.hasOwnProperty(key) || data[key] === undefined) { + continue; + } + result += '/' + data[key]; + } + + return result; + }; + + router.fullUrl = function fullUrl(data, e, deep) { + if (e) { + e.preventDefault(); + } + router.navigate(router.generateLink(data, !deep, deep)); + }; + + router.getLang = function getLang() { + var lang = location.hash.match(/^\/?#!?\/([\w]{2})\//); + if (lang) { + state.lang = language.getLocale(lang[1]); + return lang[1]; + } + return null; + }; + + router.addTarget = function addTarget(d) { + targets.push(d); + }; + + router.removeTarget = function removeTarget(d) { + targets = targets.filter(function (e) { + return d !== e; + }); + }; + + router.addView = function addView(k, d) { + views[k] = d; + }; + + router.setData = function setData(data) { + objects = data; + }; + + return router; + }; +}); diff --git a/lib/utils/version.js b/lib/utils/version.js new file mode 100644 index 0000000..32fe792 --- /dev/null +++ b/lib/utils/version.js @@ -0,0 +1,99 @@ +define(function () { + 'use strict'; + + /* + reimplate after node-deb-version-compare under MIT + (https://github.com/sdumetz/node-deb-version-compare) + */ + + function Version(v) { + var version = /^[a-zA-Z]?([0-9]*(?=:))?:(.*)/.exec(v); + this.epoch = (version) ? version[1] : 0; + version = (version && version[2]) ? version[2] : v; + version = version.split('-'); + this.debian = (version.length > 1) ? version.pop() : ''; + this.upstream = version.join('-'); + } + + Version.prototype.compare = function (b) { + if ((this.epoch > 0 || b.epoch > 0) && Math.sign(this.epoch - b.epoch) !== 0) { + return Math.sign(this.epoch - b.epoch); + } + if (this.compareStrings(this.upstream, b.upstream) !== 0) { + return this.compareStrings(this.upstream, b.upstream); + } + return this.compareStrings(this.debian, b.debian); + }; + + Version.prototype.charCode = function (c) { // the lower the charcode the lower the version. + // if (c === '~') {return 0;} // tilde sort before anything + // else + if (/[a-zA-Z]/.test(c)) { + return c.charCodeAt(0) - 'A'.charCodeAt(0) + 1; + } else if (/[.:+-:]/.test(c)) { + return c.charCodeAt(0) + 'z'.charCodeAt(0) + 1; + } // charcodes are 46..58 + return 0; + }; + + // find index of "val" in "ar". + Version.prototype.findIndex = function (ar, fn) { + for (var i = 0; i < ar.length; i++) { + if (fn(ar[i], i)) { + return i; + } + } + return -1; + }; + + Version.prototype.compareChunk = function (a, b) { + var ca = a.split(''); + var cb = b.split(''); + var diff = this.findIndex(ca, function (c, index) { + return !(cb[index] && c === cb[index]); + }); + if (diff === -1) { + if (cb.length > ca.length) { + if (cb[ca.length] === '~') { + return 1; + } + return -1; + } + return 0; // no diff found and same length + } else if (!cb[diff]) { + return (ca[diff] === '~') ? -1 : 1; + } + return (this.charCode(ca[diff]) > this.charCode(cb[diff])) ? 1 : -1; + }; + + Version.prototype.compareStrings = function (a, b) { + if (a === b) { + return 0; + } + var parseA = /([^0-9]+|[0-9]+)/g; + var parseB = /([^0-9]+|[0-9]+)/g; + var ra = parseA.exec(a); + var rb = parseB.exec(b); + while (ra !== null && rb !== null) { + if ((isNaN(ra[1]) || isNaN(rb[1])) && ra[1] !== rb[1]) { // a or b is not a number and they're not equal. Note : "" IS a number so both null is impossible + return this.compareChunk(ra[1], rb[1]); + } // both are numbers + if (ra[1] !== rb[1]) { + return (parseInt(ra[1], 10) > parseInt(rb[1], 10)) ? 1 : -1; + } + ra = parseA.exec(a); + rb = parseB.exec(b); + } + if (!ra && rb) { // rb doesn't get exec-ed when ra == null + return (rb.length > 0 && rb[1].split('')[0] === '~') ? 1 : -1; + } else if (ra && !rb) { + return (ra[1].split('')[0] === '~') ? -1 : 1; + } + return 0; + }; + return function compare(a, b) { + var va = new Version(a[0]); + var vb = new Version(b[0]); + return vb.compare(va); + }; +}); diff --git a/locale/cz.json b/locale/cz.json new file mode 100644 index 0000000..e1e7438 --- /dev/null +++ b/locale/cz.json @@ -0,0 +1,96 @@ +{ + "node": { + "all": "Všechny uzly", + "nodes": "Uzly", + "uptime": "Celková doba provozu", + "links": "Odkazy", + "clients": "Klienti", + "distance": "Vzdálenost", + "connectionType": "typ připojení", + "tq": "tq", + "lastOnline": "poslední on-line %{time} (%{date})", + "lastOffline": "lastOffline %{time} (%{date})", + "activated": "aktivováno (%{branch})", + "deactivated": "deaktivováno", + "status": "Stav", + "firmware": "Verze firmwaru", + "hardware": "Model hardwaru", + "visible": "Visible on the map", + "update": "Automatický update", + "domain": "Domain", + "gateway": "Brána", + "coordinates": "Souřadnice", + "contact": "Kontakt", + "primaryMac": "Hlavní MAC", + "id": "Identifikace uzlu", + "firstSeen": "firstSeen", + "systemLoad": "Průměrné zatížení", + "ram": "Využití paměti", + "ipAddresses": "IP adresa", + "nexthop": "Další skok", + "selectedGatewayIPv4": "vybranýGatewayIPv4", + "selectedGatewayIPv6": "vybranýGatewayIPv6", + "link": "Odkaz ||| Odkazy", + "node": "Uzel ||| Uzly", + "new": "Nové uzly", + "missing": "Zmizelé uzly" + }, + "location": { + "location": "Poloha", + "latitude": "Zeměpisná šířka", + "longitude": "Zeměpisná délka", + "copy": "Kopírovat" + }, + "sidebar": { + "nodeFilter": "nodeFilter", + "nodes": "%{total} uzly, %{online} uzly on-line", + "clients": "%{smart_count} klienti |||| %{smart_count} klienti", + "gateway": " %{smart_count} gateway |||| %{smart_count} gateways", + "lastUpdate": "Poslední update", + "nodeNew": "nodeNew", + "nodeOnline": "Uzel je online", + "nodeOffline": "Uzel je offline", + "aboutInfo": "aboutInfo", + "actual": "aktuální", + "stats": "Statistika", + "about": "O produktu", + "toggle": "přepínat" + }, + "button": { + "switchView": "Přepnout zobrazení", + "location": "Vybrat souřadnice", + "tracking": "Lokalizace" + }, + "momentjs": { + "calendar": { + "sameDay": "[Today at] LT", + "nextDay": "[Tomorrow at] LT", + "nextWeek": "dddd [at] LT", + "lastDay": "[Yesterday at] LT", + "lastWeek": "[Last] dddd [at] LT", + "sameElse": "L" + }, + "relativeTime": { + "future": "in %s", + "past": "%s ago", + "s": "Několik sekund", + "m": "minuta", + "mm": "%d minut", + "h": "an hour", + "hh": "%d hodin", + "d": "den", + "dd": "%d dnů", + "M": "měsíc", + "MM": "%d měsíců", + "y": "rok", + "yy": "%d let" + } + }, + "yes": "ano", + "no": "ne", + "unknown": "neznámý", + "others": "ostatní", + "none": "žádný", + "remove": "odstranit", + "close": "zavřít" +} diff --git a/locale/de.json b/locale/de.json new file mode 100644 index 0000000..e98a2de --- /dev/null +++ b/locale/de.json @@ -0,0 +1,98 @@ +{ + "node": { + "all": "Alle Knoten", + "nodes": "Knoten", + "uptime": "Laufzeit", + "links": "Verbindungen", + "clients": "Nutzer", + "distance": "Entfernung", + "connectionType": "Verbindungsart", + "tq": "Übertragungsqualität", + "lastOnline": "online, letzte Nachricht %{time} (%{date})", + "lastOffline": "offline, letzte Nachricht %{time} (%{date})", + "activated": "aktiviert (%{branch})", + "deactivated": "deaktiviert", + "status": "Status", + "firmware": "Firmware-Version", + "hardware": "Geräte-Modell", + "visible": "Auf der Karte sichtbar", + "update": "Auto-Update", + "domain": "Domain", + "gateway": "Gateway", + "coordinates": "Koordinaten", + "contact": "Kontakt", + "primaryMac": "Primäre MAC", + "id": "Knoten ID", + "firstSeen": "Erstmals gesehen", + "systemLoad": "Systemlast", + "ram": "Speicherauslastung", + "ipAddresses": "IP Adressen", + "nexthop": "Nächster Sprung", + "selectedGatewayIPv4": "Gewähltes ipv4 Gateway", + "selectedGatewayIPv6": "Gewähltes ipv6 Gateway", + "link": "Verbindung |||| Verbindungen", + "node": "Knoten", + "new": "Neue Knoten", + "missing": "Verschwundene Knoten" + }, + "location": { + "location": "Standort", + "latitude": "Breitengrad", + "longitude": "Längengrad", + "copy": "Kopieren" + }, + "sidebar": { + "nodeFilter": "Knotenfilter", + "nodes": "%{total} Knoten, davon %{online} Knoten online", + "clients": "mit %{smart_count} Nutzer |||| mit %{smart_count} Nutzern", + "gateway": "auf %{smart_count} Gateway |||| auf %{smart_count} Gateways", + "lastUpdate": "Letzte Aktualisierung", + "nodeNew": "neu", + "nodeOnline": "online", + "nodeOffline": "offline", + "aboutInfo": "

Über Meshviewer

Mit Doppelklick kann man in die Karte hinein zoomen und Shift+Doppelklick heraus zoomen.

", + "actual": "Aktuell", + "stats": "Statistiken", + "about": "Über", + "toggle": "Seitenleiste anzeigen/ausblenden" + }, + "button": { + "switchView": "Ansicht wechseln", + "location": "Koordinaten wählen", + "tracking": "Lokalisierung", + "fullscreen": "Vollbildmodus wechseln" + }, + "momentjs": { + "calendar": { + "sameDay": "[heute um] LT [Uhr]", + "nextDay": "[morgen um] LT [Uhr]", + "nextWeek": "dddd [um] LT [Uhr]", + "lastDay": "[gestern um] LT [Uhr]", + "lastWeek": "[letzten] dddd [um] LT [Uhr]", + "sameElse": "L" + }, + "relativeTime": { + "future": "in %s", + "past": "vor %s", + "s": "ein paar Sekunden", + "m": "einer Minute", + "mm": "%d Minuten", + "h": "einer Stunde", + "hh": "%d Stunden", + "d": "einem Tag", + "dd": "%d Tagen", + "M": "einem Monat", + "MM": "%d Monate", + "y": "einem Jahr", + "yy": "%d Jahre" + } + }, + "yes": "ja", + "no": "nein", + "unknown": "unbekannt", + "others": "andere", + "none": "keine", + "remove": "entfernen", + "close": "schließen", + "loading": "%{name} graph (wird generiert)" +} diff --git a/locale/en.json b/locale/en.json new file mode 100644 index 0000000..251203d --- /dev/null +++ b/locale/en.json @@ -0,0 +1,98 @@ +{ + "node": { + "all": "All nodes", + "nodes": "Nodes", + "uptime": "Uptime", + "links": "Links", + "clients": "Clients", + "distance": "Distance", + "connectionType": "Connection type", + "tq": "Transmit quality", + "lastOnline": "online, last message %{time} (%{date})", + "lastOffline": "offline, last message %{time} (%{date})", + "activated": "activated (%{branch})", + "deactivated": "deactivated", + "status": "Status", + "firmware": "Firmware version", + "hardware": "Hardware model", + "visible": "Visible on the map", + "update": "Auto update", + "domain": "Domain", + "gateway": "Gateway", + "coordinates": "Coordinates", + "contact": "Contact", + "primaryMac": "Primary MAC", + "id": "Node ID", + "firstSeen": "First seen", + "systemLoad": "Load average", + "ram": "Memory usage", + "ipAddresses": "IP addresses", + "nexthop": "Nexthop", + "selectedGatewayIPv4": "Selected ipv4-gateway", + "selectedGatewayIPv6": "Selected ipv6-gateway", + "link": "Link |||| Links", + "node": "Node |||| Nodes", + "new": "New nodes", + "missing": "Disappeared nodes" + }, + "location": { + "location": "Location", + "latitude": "Latitude", + "longitude": "Longitude", + "copy": "Copy" + }, + "sidebar": { + "nodeFilter": "Node filter", + "nodes": "%{total} nodes, including %{online} nodes online", + "clients": "with %{smart_count} client |||| with %{smart_count} clients", + "gateway": "on %{smart_count} gateway |||| on %{smart_count} gateways", + "lastUpdate": "Last update", + "nodeNew": "new", + "nodeOnline": "online", + "nodeOffline": "offline", + "aboutInfo": "

About Meshviewer

You can zoom in with double-click and zoom out with shift+double-click

", + "actual": "Current", + "stats": "Statistics", + "about": "About", + "toggle": "Toggle Sidebar" + }, + "button": { + "switchView": "Switch view", + "location": "Pick coordinates", + "tracking": "Localisation", + "fullscreen": "Toggle fullscreen" + }, + "momentjs": { + "calendar": { + "sameDay": "[Today at] LT", + "nextDay": "[Tomorrow at] LT", + "nextWeek": "dddd [at] LT", + "lastDay": "[Yesterday at] LT", + "lastWeek": "[Last] dddd [at] LT", + "sameElse": "L" + }, + "relativeTime": { + "future": "in %s", + "past": "%s ago", + "s": "a few seconds", + "m": "a minute", + "mm": "%d minutes", + "h": "an hour", + "hh": "%d hours", + "d": "a day", + "dd": "%d days", + "M": "a month", + "MM": "%d months", + "y": "a year", + "yy": "%d years" + } + }, + "yes": "yes", + "no": "no", + "unknown": "unknown", + "others": "other", + "none": "none", + "remove": "remove", + "close": "close", + "loading": "%{name} graph (is generated)" +} diff --git a/locale/fr.json b/locale/fr.json new file mode 100644 index 0000000..4dc6a20 --- /dev/null +++ b/locale/fr.json @@ -0,0 +1,96 @@ +{ + "node": { + "all": "Tous les nœuds", + "nodes": "Nœuds", + "uptime": "Temps de fonctionnement", + "links": "Connexion", + "clients": "Clients", + "distance": "Distance", + "connectionType": "Type de connexion", + "tq": "Qualité de transmission", + "lastOnline": "en ligne, dernier message %{time} (%{date})", + "lastOffline": "hors ligne, dernier message %{time} (%{date})", + "activated": "activé (%{branch})", + "deactivated": "désactivé", + "status": "Statut", + "firmware": "Version firmware", + "hardware": "Modèle matériel", + "visible": "Visible sur la carte", + "update": "Mise à jour automatique", + "domain": "Domain", + "gateway": "Passerelle", + "coordinates": "Coordonnées", + "contact": "Contact", + "primaryMac": "MAC primaire", + "id": "ID de nœud", + "firstSeen": "Vu pour la première fois", + "systemLoad": "Charge moyenne", + "ram": "Utilisation de la mémoire", + "ipAddresses": "Adresse IP", + "nexthop": "Nexthop", + "selectedGatewayIPv4": "Selected ipv4-gateway", + "selectedGatewayIPv6": "Selected ipv6-gateway", + "link": "Connexion |||| Connexions", + "node": "Nœud |||| Nœuds", + "new": "Nouveaux nœuds", + "missing": "Nœuds disparus" + }, + "location": { + "location": "Lieu", + "latitude": "Latitude", + "longitude": "Longitude", + "copy": "Copier" + }, + "sidebar": { + "nodeFilter": "Filtre de nœud", + "nodes": "%{total} nœud, dont %{online} nœuds en ligne", + "clients": "avec %{smart_count} client |||| avec %{smart_count} clients", + "gateway": "sur %{smart_count} passerelle |||| sur %{smart_count} passerelles", + "lastUpdate": "Dernière actualisation", + "nodeNew": "Nœud est nouveau", + "nodeOnline": "Nœud est en ligne", + "nodeOffline": "Nœud hors ligne", + "aboutInfo": "

Sur Meshviewer

Vous pouvez zoomer avec double-clic et effectuer un zoom arrière avec shift + double-clic

", + "actual": "Actuel", + "stats": "Statistiques", + "about": "À propros", + "toggle": "Toggle Sidebar" + }, + "button": { + "switchView": "Basculer l’affichage", + "location": "Choisir les coordonnées", + "tracking": "Localisation" + }, + "momentjs": { + "calendar": { + "sameDay": "[Aujourd'hui à] LT [heures]", + "nextDay": "[Demain à] LT [heures]", + "nextWeek": "dddd [à] LT [heures]", + "lastDay": "[Hier à] LT [heures]", + "lastWeek": "[Dernier] dddd [à] LT [heures]", + "sameElse": "L" + }, + "relativeTime": { + "future": "dans %s", + "past": "il y a %s", + "s": "quelques secondes", + "m": "une minute", + "mm": "%d minute", + "h": "une heure", + "hh": "%d heures", + "d": "un jour", + "dd": "%d jours", + "M": "un mois", + "MM": "%d mois", + "y": "un an", + "yy": "%d ans" + } + }, + "yes": "oui", + "no": "non", + "unknown": "inconnu", + "others": "autres", + "none": "aucun", + "remove": "supprimer", + "close": "fermer" +} diff --git a/locale/ru.json b/locale/ru.json new file mode 100644 index 0000000..ecf388a --- /dev/null +++ b/locale/ru.json @@ -0,0 +1,96 @@ +{ + "node": { + "all": "Все узлы", + "nodes": "Узлы", + "uptime": "Время работы", + "links": "Ссылки", + "clients": "Клиенты", + "distance": "Расстояние", + "connectionType": "Тип подключения", + "tq": "Качество связи", + "lastOnline": "в сети, последнее сообщение %{time} (%{date})", + "lastOffline": "не в сети, последнее сообщение %{time} (%{date})", + "activated": "активировано (%{branch})", + "deactivated": "деактивировано", + "status": "Статус", + "firmware": "Версия прошивки", + "hardware": "Тип оборудования", + "visible": "Видно на карте", + "update": "Автообновление", + "domain": "Сайт", + "gateway": "Шлюз", + "coordinates": "Координаты", + "contact": "Контакты", + "primaryMac": "Основной MAC", + "id": "Идентификатор узла", + "firstSeen": "Впервые замечен", + "systemLoad": "Средняя загрузка", + "ram": "Используемая память", + "ipAddresses": "IP адреса", + "nexthop": "Следующий скачок", + "selectedGatewayIPv4": "Выбранный шлюз ipv4", + "selectedGatewayIPv6": "Выбранный шлюз ipv6", + "link": "Ссылка |||| Ссылки", + "node": "Узел |||| Узлы", + "new": "Новые узлы", + "missing": "Исчезнувшие узлы" + }, + "location": { + "location": "Расположение", + "latitude": "Широта", + "longitude": "Долгота", + "copy": "Копировать" + }, + "sidebar": { + "nodeFilter": "Фильтр узлов", + "nodes": "%{total} узлов, включая %{online} узлов онлайн", + "clients": "с %{smart_count} клиентом |||| с %{smart_count} клиентами", + "gateway": "на %{smart_count} шлюзе |||| на %{smart_count} шлюзах", + "lastUpdate": "Последнее обновление", + "nodeNew": "Узел новый", + "nodeOnline": "Узел в сети", + "nodeOffline": "Узел не в сети", + "aboutInfo": "

О Meshviewer

Вы можете увеличить масштаб двойным щелчком мыши и уменьшить с shift + двойной щелчок

", + "actual": "Текущее", + "stats": "Статистика", + "about": "О продукте", + "toggle": "Включить панель" + }, + "button": { + "switchView": "Переключить вид", + "location": "Взять координаты", + "tracking": "Локализация" + }, + "momentjs": { + "calendar": { + "sameDay": "[Сегодня в] LT", + "nextDay": "[Завтра в] LT", + "nextWeek": "dddd [в] LT", + "lastDay": "[Вчера в] LT", + "lastWeek": "[Последний] dddd [в] LT", + "sameElse": "L" + }, + "relativeTime": { + "future": "в %s", + "past": "%s назад", + "s": "несколько секунд", + "m": "минута", + "mm": "%d минут", + "h": "час", + "hh": "%d часов", + "d": "день", + "dd": "%d дней", + "M": "месяц", + "MM": "%d месяцев", + "y": "год", + "yy": "%d лет" + } + }, + "yes": "да", + "no": "нет", + "unknown": "неизвестно", + "others": "другие", + "none": "нет", + "remove": "убрать", + "close": "закрыть" +} diff --git a/locale/tr.json b/locale/tr.json new file mode 100644 index 0000000..bab9c0e --- /dev/null +++ b/locale/tr.json @@ -0,0 +1,96 @@ +{ + "node": { + "all": "Bütün düğümler", + "nodes": "Düğümler", + "uptime": "Çalışma süresi", + "links": "Bağlantılar", + "clients": "Müşteriler", + "distance": "Mesafe", + "connectionType": "Bağlantı türü", + "tq": "İletim kalitesi", + "lastOnline": "çevrimiçi, son mesaj %{time} (%{date})", + "lastOffline": "çevrimdışı, son mesaj %{time} (%{date})", + "activated": "aktif (%{branch})", + "deactivated": "devredışı bırakıldı", + "status": "Durum", + "firmware": "Yazılım versiyonu", + "hardware": "Donanım modeli", + "visible": "Harita üzerinde görünür", + "update": "Otomatik güncelleme", + "domain": "Domain", + "gateway": "Geçit", + "coordinates": "Koordinatlar", + "contact": "İlişki", + "primaryMac": "Birincil MAC", + "id": "Düğüm kimliği", + "firstSeen": "İlk görülme", + "systemLoad": "Ortalama yük", + "ram": "Bellek kullanımı", + "ipAddresses": "IP adresleri", + "nexthop": "Bir sonraki atlama", + "selectedGatewayIPv4": "Seçili Ipv4-ağ geçidi", + "selectedGatewayIPv6": "Seçili Ipv6-ağ geçidi", + "link": "Bağlantı ||| Bağlantılar", + "node": "Düğüm ||| Düğümler", + "new": "Yeni düğümler", + "missing": "Kaybolan düğümler" + }, + "location": { + "location": "Konum", + "latitude": "Enlem", + "longitude": "Boylam", + "copy": "Kopya" + }, + "sidebar": { + "nodeFilter": "Düğüm Filtresi", + "nodes": "%{total} düğümler, %{online} çevrimiçi düğümler dahil", + "clients": "%{smart_count} müşteri ile |||| %{smart_count} müşteriler ile", + "gateway": "%{smart_count} geçit üzerinde |||| %{smart_count} geçitler üzerinde", + "lastUpdate": "Son güncelleme", + "nodeNew": "yeni", + "nodeOnline": "çevrimiçi", + "nodeOffline": "çevrimdışı", + "aboutInfo": "

Meshviewer Hakkında

Çift tıklayarak yakınlaştırabilir ve Shift tuşuna basıp+çift tıklayarak uzaklaştırabilirsiniz

", + "actual": "Mevcut", + "stats": "İstatistikler", + "about": "Hakkında", + "toggle": "Kenar çubuğunu değiştir" + }, + "button": { + "switchView": "Görünümü Değiştir", + "location": "Koordinatları seç", + "tracking": "Yerelleştirme" + }, + "momentjs": { + "calendar": { + "sameDay": "[Bugün] LT", + "nextDay": "[Yarın] LT", + "nextWeek": "dddd [at] LT", + "lastDay": "[Dün] LT", + "lastWeek": "[Last] dddd [at] LT", + "sameElse": "L" + }, + "relativeTime": { + "future": "%s içinde", + "past": "%s önce", + "s": "birkaç saniye", + "m": "bir dakika", + "mm": "%d dakikalar", + "h": "bir saat", + "hh": "%d saatler", + "d": "bir gün", + "dd": "%d günler", + "M": "bir ay", + "MM": "%d aylar", + "y": "bir yıl", + "yy": "%d yıllar" + } + }, + "yes": "evet", + "no": "hayır", + "unknown": "bilinmeyen", + "others": "diğer", + "none": "hiçbiri", + "remove": "kaldır", + "close": "kapat" +} diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..aa0036a --- /dev/null +++ b/package-lock.json @@ -0,0 +1,24959 @@ +{ + "name": "meshviewer", + "version": "11.1.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "version": "11.1.0", + "license": "AGPL-3.0", + "dependencies": { + "almond": "^0.3.3", + "d3-drag": "^1.2.5", + "d3-force": "^1.2.1", + "d3-selection": "^1.4.2", + "d3-zoom": "^1.8.3", + "leaflet": "^1.7.1", + "moment": "^2.28.0", + "navigo": "^7.1.2", + "node-polyglot": "2.2.2", + "rbush": "^3.0.1", + "requirejs": "^2.3.6", + "snabbdom": "^0.7.4" + }, + "devDependencies": { + "babel-eslint": "^10.0.1", + "browser-sync": "^2.26.14", + "del": "^6.0.0", + "eslint": "^7.20.0", + "eslint-config-airbnb-es5": "^1.2.0", + "eslint-config-defaults": "^9.0.0", + "eslint-plugin-react": "^7.22.0", + "gulp": "^4.0.2", + "gulp-autoprefixer": "^7.0.1", + "gulp-cache-bust": "^1.4.0", + "gulp-cli": "^2.3.0", + "gulp-environments": "^1.0.1", + "gulp-eslint": "^6.0.0", + "gulp-htmlmin": "^5.0.1", + "gulp-inject": "^5.0.2", + "gulp-inline-source": "^4.0.0", + "gulp-jsonminify": "^1.1.0", + "gulp-load-plugins": "^2.0.6", + "gulp-real-favicon": "^0.3.2", + "gulp-requirejs-optimize": "^1.3.0", + "gulp-sass": "^4.1.0", + "gulp-sourcemaps": "^3.0.0", + "gulp-stylelint": "^13.0.0", + "gulp-uglify": "^3.0.2", + "stylelint": "^13.10.0", + "stylelint-config-standard": "^20.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", + "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.12.13" + } + }, + "node_modules/@babel/core": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.16.tgz", + "integrity": "sha512-t/hHIB504wWceOeaOoONOhu+gX+hpjfeN6YRBT209X/4sibZQfSF1I0HFRRlBe97UZZosGx5XwUg1ZgNbelmNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.15", + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helpers": "^7.12.13", + "@babel/parser": "^7.12.16", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/core/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/generator": { + "version": "7.12.15", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz", + "integrity": "sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.12.13", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + } + }, + "node_modules/@babel/generator/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", + "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-get-function-arity": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-get-function-arity": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", + "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.16.tgz", + "integrity": "sha512-zYoZC1uvebBFmj1wFAlXwt35JLEgecefATtKp20xalwEK8vHAixLBXTGxNrVGEmTT+gzOThUgr8UEdgtalc1BQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz", + "integrity": "sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz", + "integrity": "sha512-acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-replace-supers": "^7.12.13", + "@babel/helper-simple-access": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/helper-validator-identifier": "^7.12.11", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", + "lodash": "^4.17.19" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", + "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz", + "integrity": "sha512-pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.12.13", + "@babel/helper-optimise-call-expression": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz", + "integrity": "sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", + "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@babel/helpers": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.13.tgz", + "integrity": "sha512-oohVzLRZ3GQEk4Cjhfs9YkJA4TdIDTObdBEZGrd6F/T0GPSnuV6l22eMcxlvcvzVIPH3VTtxbseudM1zIE+rPQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/highlight": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", + "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.12.11", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.16.tgz", + "integrity": "sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw==", + "dev": true, + "license": "MIT", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/template": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", + "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "node_modules/@babel/traverse": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz", + "integrity": "sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.13", + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + } + }, + "node_modules/@babel/traverse/node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/types": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", + "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.12.11", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz", + "integrity": "sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@gulp-sourcemaps/identity-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-2.0.1.tgz", + "integrity": "sha512-Tb+nSISZku+eQ4X1lAkevcQa+jknn/OVUgZ3XCxEKIsLsqYuPoJwJOPQeaOk75X3WPftb29GWY1eqE7GLsXb1Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "acorn": "^6.4.1", + "normalize-path": "^3.0.0", + "postcss": "^7.0.16", + "source-map": "^0.6.0", + "through2": "^3.0.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/@gulp-sourcemaps/identity-map/node_modules/acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/@gulp-sourcemaps/identity-map/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@gulp-sourcemaps/identity-map/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/@gulp-sourcemaps/identity-map/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, + "node_modules/@gulp-sourcemaps/map-sources": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", + "integrity": "sha1-iQrnxdjId/bThIYCFazp1+yUW9o=", + "dev": true, + "license": "MIT", + "dependencies": { + "normalize-path": "^2.0.1", + "through2": "^2.0.3" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/@gulp-sourcemaps/map-sources/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "license": "MIT", + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", + "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.4", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", + "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", + "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.4", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@stylelint/postcss-css-in-js": { + "version": "0.37.2", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz", + "integrity": "sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/core": ">=7.9.0" + }, + "peerDependencies": { + "postcss": ">=7.0.0", + "postcss-syntax": ">=0.36.2" + } + }, + "node_modules/@stylelint/postcss-markdown": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz", + "integrity": "sha512-2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "remark": "^13.0.0", + "unist-util-find-all-after": "^3.0.2" + }, + "peerDependencies": { + "postcss": ">=7.0.0", + "postcss-syntax": ">=0.36.2" + } + }, + "node_modules/@types/mdast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.3.tgz", + "integrity": "sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/minimist": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", + "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/q": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", + "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/unist": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz", + "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true, + "license": "ISC" + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/after": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", + "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", + "dev": true, + "license": "MIT" + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "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" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/almond": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/almond/-/almond-0.3.3.tgz", + "integrity": "sha1-oOfJWsdiTWQXtElLHmi/9pMWiiA=", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true, + "license": "BSD-3-Clause OR MIT", + "engines": { + "node": ">=0.4.2" + } + }, + "node_modules/ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-wrap": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.11.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-escapes/node_modules/type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-wrap": "0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", + "dev": true, + "license": "MIT" + }, + "node_modules/anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "license": "ISC", + "dependencies": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + } + }, + "node_modules/anymatch/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "license": "MIT", + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/append-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", + "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-equal": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true, + "license": "ISC" + }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true, + "license": "MIT" + }, + "node_modules/are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "license": "ISC", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-filter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz", + "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=", + "dev": true, + "license": "MIT", + "dependencies": { + "make-iterator": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz", + "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "make-iterator": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-includes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz", + "integrity": "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "get-intrinsic": "^1.0.1", + "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-initial": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz", + "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=", + "dev": true, + "license": "MIT", + "dependencies": { + "array-slice": "^1.0.0", + "is-number": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-initial/node_modules/is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-last": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz", + "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-last/node_modules/is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-sort": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz", + "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "default-compare": "^1.0.0", + "get-value": "^2.0.6", + "kind-of": "^5.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-sort/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array.prototype.flatmap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/arraybuffer.slice": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", + "dev": true, + "license": "MIT" + }, + "node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true, + "license": "MIT" + }, + "node_modules/async-done": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz", + "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.2", + "process-nextick-args": "^2.0.0", + "stream-exhaust": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/async-each-series": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-0.1.1.tgz", + "integrity": "sha1-dhfBkXQB/Yykooqtzj266Yr+tDI=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/async-settle": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", + "integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=", + "dev": true, + "license": "MIT", + "dependencies": { + "async-done": "^1.2.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true, + "license": "MIT" + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true, + "license": "(MIT OR Apache-2.0)", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/autoprefixer": { + "version": "9.8.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", + "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dev": true, + "license": "MIT", + "dependencies": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "colorette": "^1.2.1", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "funding": { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true, + "license": "MIT" + }, + "node_modules/axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.10.0" + } + }, + "node_modules/babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + }, + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "eslint": ">= 4.12.1" + } + }, + "node_modules/bach": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", + "integrity": "sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA=", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-filter": "^1.1.1", + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "array-each": "^1.0.0", + "array-initial": "^1.0.0", + "array-last": "^1.1.1", + "async-done": "^1.2.2", + "async-settle": "^1.0.0", + "now-and-later": "^2.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/backo2": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", + "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", + "dev": true, + "license": "MIT" + }, + "node_modules/bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true, + "license": "MIT" + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/base64-arraybuffer": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", + "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=", + "dev": true, + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "license": "MIT", + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true, + "license": "MIT" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", + "dev": true, + "license": "MIT", + "dependencies": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/blob": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "dev": true, + "license": "MIT" + }, + "node_modules/block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "dev": true, + "license": "ISC", + "dependencies": { + "inherits": "~2.0.0" + }, + "engines": { + "node": "0.4 || >=0.5.8" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true, + "license": "ISC" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/braces/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/browser-sync": { + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.14.tgz", + "integrity": "sha512-3TtpsheGolJT6UFtM2CZWEcGJmI4ZEvoCKiKE2bvcDnPxRkhQT4nIGVtfiyPcoHKXGM0LwMOZmYJNWfiNfVXWA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "browser-sync-client": "^2.26.14", + "browser-sync-ui": "^2.26.14", + "bs-recipes": "1.3.4", + "bs-snippet-injector": "^2.0.1", + "chokidar": "^3.5.1", + "connect": "3.6.6", + "connect-history-api-fallback": "^1", + "dev-ip": "^1.0.1", + "easy-extender": "^2.3.4", + "eazy-logger": "3.1.0", + "etag": "^1.8.1", + "fresh": "^0.5.2", + "fs-extra": "3.0.1", + "http-proxy": "^1.18.1", + "immutable": "^3", + "localtunnel": "^2.0.1", + "micromatch": "^4.0.2", + "opn": "5.3.0", + "portscanner": "2.1.1", + "qs": "6.2.3", + "raw-body": "^2.3.2", + "resp-modifier": "6.0.2", + "rx": "4.1.0", + "send": "0.16.2", + "serve-index": "1.9.1", + "serve-static": "1.13.2", + "server-destroy": "1.0.1", + "socket.io": "2.4.0", + "ua-parser-js": "^0.7.18", + "yargs": "^15.4.1" + }, + "bin": { + "browser-sync": "dist/bin.js" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/browser-sync-client": { + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.14.tgz", + "integrity": "sha512-be0m1MchmKv/26r/yyyolxXcBi052aYrmaQep5nm8YNMjFcEyzv0ZoOKn/c3WEXNlEB/KeXWaw70fAOJ+/F1zQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "etag": "1.8.1", + "fresh": "0.5.2", + "mitt": "^1.1.3", + "rxjs": "^5.5.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/browser-sync-ui": { + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.26.14.tgz", + "integrity": "sha512-6oT1sboM4KVNnWCCJDMGbRIeTBw97toMFQ+srImvwQ6J5t9KMgizaIX8HcKLiemsUMSJkgGM9RVKIpq2UblgOA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "async-each-series": "0.1.1", + "connect-history-api-fallback": "^1", + "immutable": "^3", + "server-destroy": "1.0.1", + "socket.io-client": "^2.4.0", + "stream-throttle": "^0.1.3" + } + }, + "node_modules/browser-sync/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-sync/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-sync/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/browser-sync/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-sync/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/browserslist": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", + "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001181", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.649", + "escalade": "^3.1.1", + "node-releases": "^1.1.70" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/bs-recipes": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz", + "integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=", + "dev": true, + "license": "ISC" + }, + "node_modules/bs-snippet-injector": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/bs-snippet-injector/-/bs-snippet-injector-2.0.1.tgz", + "integrity": "sha1-YbU5PxH1JVntEgaTEANDtu2wTdU=", + "dev": true, + "license": "MIT" + }, + "node_modules/buffer-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", + "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true, + "license": "MIT" + }, + "node_modules/buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", + "dev": true, + "engines": { + "node": ">=0.2.0" + } + }, + "node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cache-base/node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cachebust": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/cachebust/-/cachebust-2.4.1.tgz", + "integrity": "sha512-Y2O58hqbFeeD09qyC3o9nPp9qHPC4KvRnZkiXI+Eaxs15IIA/3mqGrTrE8AWcThgADrwtQ+97yKbc2c/CypaAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "cheerio": "^0.22.0", + "md5": "^2.0.0" + }, + "bin": { + "cachebust": "cli.js" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "license": "MIT", + "dependencies": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-keys/node_modules/map-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001187", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001187.tgz", + "integrity": "sha512-w7/EP1JRZ9552CyrThUnay2RkZ1DXxKe/Q2swTC4+LElLh9RRYrL1Z+27LlakB8kzY0fSmHw9mc7XYDUKAKWMA==", + "dev": true, + "license": "CC-BY-4.0" + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", + "dev": true, + "license": "MIT/X11", + "dependencies": { + "traverse": ">=0.3.0 <0.4" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chalk/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/chalk/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true, + "license": "MIT" + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true, + "license": "MIT" + }, + "node_modules/charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": "*" + } + }, + "node_modules/cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "dev": true, + "license": "MIT", + "dependencies": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cheerio/node_modules/css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "license": "BSD-like", + "dependencies": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "node_modules/cheerio/node_modules/dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "license": "MIT", + "dependencies": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "node_modules/cheerio/node_modules/domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/cheerio/node_modules/domutils/node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/cheerio/node_modules/domutils/node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz", + "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/cheerio/node_modules/domutils/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "license": "MIT", + "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" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.1" + } + }, + "node_modules/chokidar/node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/chokidar/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/chokidar/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/clean-css": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "dev": true, + "license": "MIT", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 10" + } + }, + "node_modules/cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/clone-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", + "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/clone-regexp": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", + "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-regexp": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-stats": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true, + "license": "MIT" + }, + "node_modules/cloneable-readable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", + "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.1", + "process-nextick-args": "^2.0.0", + "readable-stream": "^2.3.5" + } + }, + "node_modules/coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + }, + "engines": { + "node": ">= 4.0" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/collection-map": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", + "integrity": "sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-map": "^2.0.2", + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "license": "MIT", + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true, + "license": "ISC", + "bin": { + "color-support": "bin.js" + } + }, + "node_modules/colorette": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/component-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", + "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", + "dev": true + }, + "node_modules/component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true, + "license": "MIT" + }, + "node_modules/component-inherit": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", + "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "engines": [ + "node >= 0.8" + ], + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "node_modules/connect": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", + "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.0", + "parseurl": "~1.3.2", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true, + "license": "ISC" + }, + "node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.1" + } + }, + "node_modules/convert-source-map/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, + "node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==", + "dev": true, + "license": "MIT" + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/copy-props": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", + "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "each-props": "^1.3.0", + "is-plain-object": "^2.0.1" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true, + "license": "MIT" + }, + "node_modules/cosmiconfig": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", + "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": "*" + } + }, + "node_modules/css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + } + }, + "node_modules/css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "node_modules/css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", + "dev": true, + "license": "MIT" + }, + "node_modules/css-select/node_modules/css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "1.0.0-alpha.28", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.28.tgz", + "integrity": "sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdn-data": "~1.1.0", + "source-map": "^0.5.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-tree/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/css-url-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/css-url-regex/-/css-url-regex-1.1.0.tgz", + "integrity": "sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w=", + "dev": true, + "license": "MIT" + }, + "node_modules/css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": "*" + } + }, + "node_modules/css/node_modules/source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "dev": true, + "license": "MIT", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "license": "MIT", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/csso": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/csso/-/csso-3.5.1.tgz", + "integrity": "sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "css-tree": "1.0.0-alpha.29" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/csso/node_modules/css-tree": { + "version": "1.0.0-alpha.29", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.29.tgz", + "integrity": "sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdn-data": "~1.1.0", + "source-map": "^0.5.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/csso/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "license": "MIT", + "dependencies": { + "array-find-index": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "license": "ISC", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/d3-collection": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz", + "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-color": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.4.1.tgz", + "integrity": "sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-dispatch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", + "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-drag": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.5.tgz", + "integrity": "sha512-rD1ohlkKQwMZYkQlYVCrSFxsWPzI97+W+PaEIBNTMxRuxz9RF0Hi5nJWHGVJ3Om9d2fRTe1yOBINJyy/ahV95w==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-dispatch": "1", + "d3-selection": "1" + } + }, + "node_modules/d3-ease": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.7.tgz", + "integrity": "sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-force": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-1.2.1.tgz", + "integrity": "sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-collection": "1", + "d3-dispatch": "1", + "d3-quadtree": "1", + "d3-timer": "1" + } + }, + "node_modules/d3-interpolate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.4.0.tgz", + "integrity": "sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-color": "1" + } + }, + "node_modules/d3-quadtree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz", + "integrity": "sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-selection": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.4.2.tgz", + "integrity": "sha512-SJ0BqYihzOjDnnlfyeHT0e30k0K1+5sR3d5fNueCNeuhZTnGw4M4o8mqJchSwgKMXCNFo+e2VTChiSJ0vYtXkg==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-timer": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", + "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==", + "license": "BSD-3-Clause" + }, + "node_modules/d3-transition": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-1.3.2.tgz", + "integrity": "sha512-sc0gRU4PFqZ47lPVHloMn9tlPcv8jxgOQg+0zjhfZXMQuvppjG6YuwdMBE0TuqCZjeJkLecku/l9R0JPcRhaDA==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-color": "1", + "d3-dispatch": "1", + "d3-ease": "1", + "d3-interpolate": "1", + "d3-selection": "^1.1.0", + "d3-timer": "1" + } + }, + "node_modules/d3-zoom": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.8.3.tgz", + "integrity": "sha512-VoLXTK4wvy1a0JpH2Il+F2CiOhVu7VRXWF5M/LroMIh3/zBAC3WAt7QoIvPibOavVo20hN6/37vwAsdBejLyKQ==", + "license": "BSD-3-Clause", + "dependencies": { + "d3-dispatch": "1", + "d3-drag": "1", + "d3-interpolate": "1", + "d3-selection": "1", + "d3-transition": "1" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/debug-fabulous": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-1.1.0.tgz", + "integrity": "sha512-GZqvGIgKNlUnHUPQhepnUZFIMoi3dgZKQBzKDeL2g7oJF9SNAji/AAu36dusFUas0O+pae74lNeoIPHqXWDkLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "3.X", + "memoizee": "0.4.X", + "object-assign": "4.X" + } + }, + "node_modules/debug-fabulous/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/debug-fabulous/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "license": "MIT", + "dependencies": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true, + "license": "MIT" + }, + "node_modules/default-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", + "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^5.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-compare/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-resolution": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz", + "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "license": "MIT", + "dependencies": { + "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-accessor-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-data-descriptor/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/define-property/node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true, + "license": "MIT" + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true, + "license": "MIT" + }, + "node_modules/detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/dev-ip": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz", + "integrity": "sha1-p2o+0YVb56ASu4rBbLgPPADcKPA=", + "dev": true, + "bin": { + "dev-ip": "lib/dev-ip.js" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "license": "MIT", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true, + "license": "MIT" + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz", + "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true, + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "node_modules/each-props": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", + "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.1", + "object.defaults": "^1.1.0" + } + }, + "node_modules/easy-extender": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", + "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", + "dev": true, + "dependencies": { + "lodash": "^4.17.10" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/eazy-logger": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-3.1.0.tgz", + "integrity": "sha512-/snsn2JqBtUSSstEl4R0RKjkisGHAhvYj89i7r3ytNUKW12y178KDZwXLXIgwDqLW6E/VRMT9qfld7wvFae8bQ==", + "dev": true, + "dependencies": { + "tfunk": "^4.0.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "license": "MIT", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true, + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.3.664", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.664.tgz", + "integrity": "sha512-yb8LrTQXQnh9yhnaIHLk6CYugF/An50T20+X0h++hjjhVfgSp1DGoMSYycF8/aD5eiqS4QwaNhiduFvK8rifRg==", + "dev": true, + "license": "ISC" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/engine.io": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.5.0.tgz", + "integrity": "sha512-21HlvPUKaitDGE4GXNtQ7PLP0Sz4aWLddMPw2VTyFz1FVZqu/kZsJUO8WNpKuE/OCL7nkfRaOui2ZCJloGznGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "debug": "~4.1.0", + "engine.io-parser": "~2.2.0", + "ws": "~7.4.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/engine.io-client": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.0.tgz", + "integrity": "sha512-12wPRfMrugVw/DNyJk34GQ5vIVArEcVMXWugQGGuw2XxUSztFNmJggZmv8IZlLyEdnpO1QB9LkcjeWewO2vxtA==", + "dev": true, + "license": "MIT", + "dependencies": { + "component-emitter": "~1.3.0", + "component-inherit": "0.0.3", + "debug": "~3.1.0", + "engine.io-parser": "~2.2.0", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parseqs": "0.0.6", + "parseuri": "0.0.6", + "ws": "~7.4.2", + "xmlhttprequest-ssl": "~1.5.4", + "yeast": "0.1.2" + } + }, + "node_modules/engine.io-client/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/engine.io-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", + "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", + "dev": true, + "license": "MIT", + "dependencies": { + "after": "0.8.2", + "arraybuffer.slice": "~0.0.7", + "base64-arraybuffer": "0.1.4", + "blob": "0.0.5", + "has-binary2": "~1.0.2" + } + }, + "node_modules/engine.io/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/engine.io/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/enquirer/node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true, + "license": "BSD-2-Clause" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.18.0-next.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz", + "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.1", + "object-inspect": "^1.9.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.3", + "string.prototype.trimstart": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "node_modules/es5-ext/node_modules/next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true, + "license": "MIT" + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "license": "MIT", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "license": "ISC", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dev": true, + "license": "ISC", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true, + "license": "MIT" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.20.0.tgz", + "integrity": "sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.3.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "file-entry-cache": "^6.0.0", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.4", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-airbnb-es5": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-es5/-/eslint-config-airbnb-es5-1.2.0.tgz", + "integrity": "sha512-MaOKwNpqNZIRy+3augFj5vGHJ4F1sskPjJ/Od7K3N8Vv+8pD6t73XCL18KrHrF1m58qFxPBDl1US6bswE65IbQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "strip-json-comments": "1.0.2" + } + }, + "node_modules/eslint-config-airbnb-es5/node_modules/strip-json-comments": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz", + "integrity": "sha1-WkirlgI9usG3uND/q/b2PxZ3vp8=", + "dev": true, + "license": "MIT", + "bin": { + "strip-json-comments": "cli.js" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/eslint-config-defaults": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-defaults/-/eslint-config-defaults-9.0.0.tgz", + "integrity": "sha1-oJCtwTspNeP0OzzQSKknAWVOWtU=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/eslint-plugin-react": { + "version": "7.22.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.22.0.tgz", + "integrity": "sha512-p30tuX3VS+NWv9nQot9xIGAHBXR0+xJVaZriEsHoJrASGCJZDJ8JLNM0YqKqI0AKm6Uxaa1VUHoNEibxRCMQHA==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + } + }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/eslint/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dev": true, + "license": "MIT", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true, + "license": "MIT" + }, + "node_modules/execall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", + "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone-regexp": "^2.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "license": "MIT", + "dependencies": { + "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "license": "ISC", + "dependencies": { + "type": "^2.0.0" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.2.0.tgz", + "integrity": "sha512-M/u37b4oSGlusaU8ZB96BfFPWQ8MbsZYXB+kXGMiDj6IKinkcNaQvmirBuWj8mAXqP6LYn1rQvbTYum3yPhaOA==", + "dev": true, + "license": "ISC" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true, + "license": "MIT" + }, + "node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extend-shallow/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "license": "MIT", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT" + }, + "node_modules/fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", + "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/fast-glob/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", + "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz", + "integrity": "sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA==", + "dev": true, + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/file-entry-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz", + "integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fill-range/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/findup-sync": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", + "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^4.0.2", + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/findup-sync/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/findup-sync/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/findup-sync/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/findup-sync/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/findup-sync/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/fined": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", + "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", + "dev": true, + "license": "MIT", + "dependencies": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^2.0.3", + "object.defaults": "^1.1.0", + "object.pick": "^1.2.0", + "parse-filepath": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/flagged-respawn": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", + "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flat-cache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/flatted": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "dev": true, + "license": "ISC" + }, + "node_modules/flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "node_modules/follow-redirects": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz", + "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA==", + "dev": true, + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "license": "MIT", + "dependencies": { + "for-in": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/fork-stream": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/fork-stream/-/fork-stream-0.0.4.tgz", + "integrity": "sha1-24Sfznf2cIpfjzhq5TOgkHtUrnA=", + "dev": true, + "license": "BSD" + }, + "node_modules/form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/formidable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://ko-fi.com/tunnckoCore/commissions" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "license": "MIT", + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", + "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^3.0.0", + "universalify": "^0.1.0" + } + }, + "node_modules/fs-mkdirp-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", + "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.11", + "through2": "^2.0.3" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true, + "license": "ISC" + }, + "node_modules/fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "dev": true, + "license": "ISC", + "dependencies": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + }, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "license": "MIT" + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true, + "license": "MIT" + }, + "node_modules/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "license": "ISC", + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "node_modules/gauge/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "license": "MIT", + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "license": "MIT", + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gauge/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "globule": "^1.0.0" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "license": "ISC", + "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" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-stream": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", + "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "extend": "^3.0.0", + "glob": "^7.1.1", + "glob-parent": "^3.1.0", + "is-negated-glob": "^1.0.0", + "ordered-read-streams": "^1.0.0", + "pumpify": "^1.3.5", + "readable-stream": "^2.1.5", + "remove-trailing-separator": "^1.0.1", + "to-absolute-glob": "^2.0.0", + "unique-stream": "^2.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/glob-stream/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/glob-stream/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz", + "integrity": "sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "^2.0.0", + "async-done": "^1.2.0", + "chokidar": "^2.0.0", + "is-negated-glob": "^1.0.0", + "just-debounce": "^1.0.0", + "normalize-path": "^3.0.0", + "object.defaults": "^1.1.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/glob-watcher/node_modules/binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "license": "MIT", + "dependencies": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + }, + "optionalDependencies": { + "fsevents": "^1.2.7" + } + }, + "node_modules/glob-watcher/node_modules/glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "license": "ISC", + "dependencies": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "node_modules/glob-watcher/node_modules/glob-parent/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/glob-watcher/node_modules/readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "license": "MIT", + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", + "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/globby/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", + "dev": true, + "license": "MIT" + }, + "node_modules/globule": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", + "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/glogg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", + "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "sparkles": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gonzales-pe": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", + "integrity": "sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "gonzales": "bin/gonzales.js" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/group-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/group-array/-/group-array-1.0.0.tgz", + "integrity": "sha512-PJresALe5TUzSIcdWKLdAKcdUDxv8du2EGueShgAL2xknbcTo5Bk1xbNaNhxpWxxAx/SV7N+5S0UyK7XV0+QhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.1.0", + "for-own": "^1.0.0", + "get-value": "^3.0.1", + "kind-of": "^6.0.2", + "split-string": "^6.1.0", + "union-value": "^2.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/group-array/node_modules/get-value": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", + "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/group-array/node_modules/split-string": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-6.1.0.tgz", + "integrity": "sha512-9UBdnmnvx2NLLd4bMs7CEKK+wSzbujVv3ONyorkP1o8M3pVJQtXDO1cN19xD1JJs6ltOrtPrkUND0HzLSinUcA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + } + }, + "node_modules/gulp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", + "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==", + "dev": true, + "license": "MIT", + "dependencies": { + "glob-watcher": "^5.0.3", + "gulp-cli": "^2.2.0", + "undertaker": "^1.2.1", + "vinyl-fs": "^3.0.0" + }, + "bin": { + "gulp": "bin/gulp.js" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gulp-autoprefixer": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/gulp-autoprefixer/-/gulp-autoprefixer-7.0.1.tgz", + "integrity": "sha512-QJGEmHw+bEt7FSqvmbAUTxbCuNLJYx4sz3ox9WouYqT/7j5FH5CQ8ZnpL1M7H5npX1bUJa7lUVY1w20jXxhOxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "autoprefixer": "^9.6.1", + "fancy-log": "^1.3.2", + "plugin-error": "^1.0.1", + "postcss": "^7.0.17", + "through2": "^3.0.1", + "vinyl-sourcemaps-apply": "^0.2.1" + }, + "engines": { + "node": ">=8" + }, + "peerDependencies": { + "gulp": ">=4" + }, + "peerDependenciesMeta": { + "gulp": { + "optional": true + } + } + }, + "node_modules/gulp-autoprefixer/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gulp-autoprefixer/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/gulp-autoprefixer/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, + "node_modules/gulp-cache-bust": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/gulp-cache-bust/-/gulp-cache-bust-1.4.1.tgz", + "integrity": "sha512-ksYCu06p2hpUDilgtv/jMB9lxBLg/v9F0xEAYbndgS/xWqamHpIpGRPAKj76VRXJpDTHgEqVPcd2rCofj4TERg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^1.0.1", + "cachebust": "2.4.1", + "fancy-log": "^1.3.2", + "graceful-fs": "^4.1.9", + "map-stream": "^0.1.0", + "plugin-error": "^0.1.2", + "temp-write": "^2.1.0", + "through2": "2.0.1", + "vinyl": "^2.1.0" + }, + "engines": { + "node": ">=4.4.5", + "npm": ">=2.15.1" + } + }, + "node_modules/gulp-cache-bust/node_modules/arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cache-bust/node_modules/arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cache-bust/node_modules/array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cache-bust/node_modules/extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cache-bust/node_modules/kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cache-bust/node_modules/plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cache-bust/node_modules/process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true, + "license": "MIT" + }, + "node_modules/gulp-cache-bust/node_modules/readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/gulp-cache-bust/node_modules/through2": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.1.tgz", + "integrity": "sha1-OE51MU1J8y3hLuu4E2uOtrXVnak=", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "~2.0.0", + "xtend": "~4.0.0" + } + }, + "node_modules/gulp-cli": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", + "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^1.0.1", + "archy": "^1.0.0", + "array-sort": "^1.0.0", + "color-support": "^1.1.3", + "concat-stream": "^1.6.0", + "copy-props": "^2.0.1", + "fancy-log": "^1.3.2", + "gulplog": "^1.0.0", + "interpret": "^1.4.0", + "isobject": "^3.0.1", + "liftoff": "^3.1.0", + "matchdep": "^2.0.0", + "mute-stdout": "^1.0.0", + "pretty-hrtime": "^1.0.0", + "replace-homedir": "^1.0.0", + "semver-greatest-satisfied-range": "^1.1.0", + "v8flags": "^3.2.0", + "yargs": "^7.1.0" + }, + "bin": { + "gulp": "bin/gulp.js" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/gulp-cli/node_modules/camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "node_modules/gulp-cli/node_modules/get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true, + "license": "ISC" + }, + "node_modules/gulp-cli/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "license": "MIT", + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true, + "license": "ISC" + }, + "node_modules/gulp-cli/node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "license": "MIT", + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true, + "license": "ISC" + }, + "node_modules/gulp-cli/node_modules/wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "license": "MIT", + "dependencies": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-cli/node_modules/y18n": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/gulp-cli/node_modules/yargs": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz", + "integrity": "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "5.0.0-security.0" + } + }, + "node_modules/gulp-cli/node_modules/yargs-parser": { + "version": "5.0.0-security.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz", + "integrity": "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^3.0.0", + "object.assign": "^4.1.0" + } + }, + "node_modules/gulp-environments": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gulp-environments/-/gulp-environments-1.0.1.tgz", + "integrity": "sha512-ooM/H+1ZFImalQPHCaMGvKap/8UQxHMcyo65f/Y6ZakCpa4FgJ9NH/9ux7hj7Z8J22mFlJu9RQgxuZT82UtlKg==", + "dev": true, + "license": "MIT", + "dependencies": { + "gulp-if": "^2.0.1", + "yargs": "^15.0.1" + } + }, + "node_modules/gulp-eslint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gulp-eslint/-/gulp-eslint-6.0.0.tgz", + "integrity": "sha512-dCVPSh1sA+UVhn7JSQt7KEb4An2sQNbOdB3PA8UCfxsoPlAKjJHxYHGXdXC7eb+V1FAnilSFFqslPrq037l1ig==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint": "^6.0.0", + "fancy-log": "^1.3.2", + "plugin-error": "^1.0.1" + } + }, + "node_modules/gulp-eslint/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-eslint/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-eslint/node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-eslint/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/gulp-eslint/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true, + "license": "MIT" + }, + "node_modules/gulp-eslint/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/gulp-eslint/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/gulp-eslint/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true, + "license": "MIT" + }, + "node_modules/gulp-eslint/node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/gulp-eslint/node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-eslint/node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/gulp-eslint/node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "license": "MIT", + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-eslint/node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "license": "MIT", + "dependencies": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-eslint/node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true, + "license": "ISC" + }, + "node_modules/gulp-eslint/node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/gulp-eslint/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-eslint/node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.5.0" + } + }, + "node_modules/gulp-eslint/node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/gulp-eslint/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/gulp-eslint/node_modules/shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-eslint/node_modules/shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-eslint/node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-eslint/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-eslint/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-eslint/node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/gulp-htmlmin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/gulp-htmlmin/-/gulp-htmlmin-5.0.1.tgz", + "integrity": "sha512-ASlyDPZOSKjHYUifYV0rf9JPDflN9IRIb8lw2vRqtYMC4ljU3zAmnnaVXwFQ3H+CfXxZSUesZ2x7jrnPJu93jA==", + "dev": true, + "license": "MIT", + "dependencies": { + "html-minifier": "^3.5.20", + "plugin-error": "^1.0.1", + "through2": "^2.0.3" + }, + "engines": { + "node": ">= 6.0" + } + }, + "node_modules/gulp-if": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-2.0.2.tgz", + "integrity": "sha1-pJe351cwBQQcqivIt92jyARE1ik=", + "dev": true, + "license": "MIT", + "dependencies": { + "gulp-match": "^1.0.3", + "ternary-stream": "^2.0.1", + "through2": "^2.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/gulp-inject": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/gulp-inject/-/gulp-inject-5.0.5.tgz", + "integrity": "sha512-5bGMjqleXUHPu4CI1pnVzHtwyMy+Zt8EMo1RFwNsOpidPxwjFwyLgmsRZWGMMI8UenJMJRjURqwznfFmqb5wgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^4.1.1", + "arrify": "^2.0.1", + "escape-string-regexp": "^2.0.0", + "fancy-log": "^1.3.3", + "group-array": "^1.0.0", + "plugin-error": "^1.0.1", + "stream-to-array": "^2.3.0", + "through2": "^3.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-inject/node_modules/ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-inject/node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-inject/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gulp-inject/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/gulp-inject/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, + "node_modules/gulp-inline-source": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/gulp-inline-source/-/gulp-inline-source-4.0.0.tgz", + "integrity": "sha512-LrqCom18aYkceV2YPqJyCrDpHNyLGrHHNYCmWQXFvJUMyYIpf+xxBzmvR45cokyoq2KW9H8oxijvnDjHn9s3Pw==", + "dev": true, + "license": "MIT", + "dependencies": { + "inline-source": "~6.1.8", + "plugin-error": "~1.0.1", + "through2": "~2.0.0" + }, + "engines": { + "node": ">=7.6" + } + }, + "node_modules/gulp-jsonminify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-jsonminify/-/gulp-jsonminify-1.1.0.tgz", + "integrity": "sha512-nkqH5aRajfCGD8HB2yN+QSEQG0SMEpS7UyOp3HS966Og4DqUX0y8sPF5SU8uSsGLLLXbnHwyHbDkxauYO/pSpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "jsonminify": "~0.2.3", + "plugin-error": "^0.1.2", + "through2": "~0.6.5" + } + }, + "node_modules/gulp-jsonminify/node_modules/arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-jsonminify/node_modules/arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-jsonminify/node_modules/array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-jsonminify/node_modules/extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-jsonminify/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true, + "license": "MIT" + }, + "node_modules/gulp-jsonminify/node_modules/kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-jsonminify/node_modules/plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/gulp-jsonminify/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/gulp-jsonminify/node_modules/through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + }, + "node_modules/gulp-load-plugins": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-2.0.6.tgz", + "integrity": "sha512-HP5jUhPzvib37kWYLFvhDQJpBar2pXG7diFOFI4/PgCrQWobV5/MfnU0dMx0d5NfyJGcRrpUI1E0MROlLvNO4A==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-unique": "^0.3.2", + "fancy-log": "^1.2.0", + "findup-sync": "^4.0.0", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "micromatch": "^4.0.2", + "resolve": "^1.17.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-load-plugins/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-load-plugins/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-load-plugins/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/gulp-load-plugins/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-load-plugins/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/gulp-match": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-match/-/gulp-match-1.1.0.tgz", + "integrity": "sha512-DlyVxa1Gj24DitY2OjEsS+X6tDpretuxD6wTfhXE/Rw2hweqc1f6D/XtsJmoiCwLWfXgR87W9ozEityPCVzGtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimatch": "^3.0.3" + } + }, + "node_modules/gulp-real-favicon": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/gulp-real-favicon/-/gulp-real-favicon-0.3.2.tgz", + "integrity": "sha512-DNCv4BWcdcY12KBlZDUHZ7MSUzM6PEOdhiyLe3ClDjuzToAQf+T30X0A2zny8Jfg4pxBIrALKzbVw5nizRrEbQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^1.1.0", + "fancy-log": "^1.3.2", + "plugin-error": "^1.0.1", + "rfg-api": "^0.5.0", + "through2": "^2.0.0" + } + }, + "node_modules/gulp-requirejs-optimize": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/gulp-requirejs-optimize/-/gulp-requirejs-optimize-1.3.0.tgz", + "integrity": "sha512-6Jc8xg2tneeNVOv1cwiUtnDxJByTA2JCuJ1MbzKCvKcASdH8Y4kjJCE8Xpw1LNnkZwN18B5+vCRf9ZmEJQB6OQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^2.3.2", + "fancy-log": "^1.3.2", + "lodash.defaults": "^4.0.1", + "plugin-error": "^1.0.1", + "requirejs": "^2.2.0", + "through2": "^2.0.1", + "vinyl": "^2.1.0", + "vinyl-sourcemaps-apply": "^0.2.1" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/gulp-sass": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-4.1.0.tgz", + "integrity": "sha512-xIiwp9nkBLcJDpmYHbEHdoWZv+j+WtYaKD6Zil/67F3nrAaZtWYN5mDwerdo7EvcdBenSAj7Xb2hx2DqURLGdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^2.3.0", + "lodash": "^4.17.11", + "node-sass": "^4.8.3", + "plugin-error": "^1.0.1", + "replace-ext": "^1.0.0", + "strip-ansi": "^4.0.0", + "through2": "^2.0.0", + "vinyl-sourcemaps-apply": "^0.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/gulp-sass/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-sass/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/gulp-sourcemaps": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-3.0.0.tgz", + "integrity": "sha512-RqvUckJkuYqy4VaIH60RMal4ZtG0IbQ6PXMNkNsshEGJ9cldUPRb/YCgboYae+CLAs1HQNb4ADTKCx65HInquQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "@gulp-sourcemaps/identity-map": "^2.0.1", + "@gulp-sourcemaps/map-sources": "^1.0.0", + "acorn": "^6.4.1", + "convert-source-map": "^1.0.0", + "css": "^3.0.0", + "debug-fabulous": "^1.0.0", + "detect-newline": "^2.0.0", + "graceful-fs": "^4.0.0", + "source-map": "^0.6.0", + "strip-bom-string": "^1.0.0", + "through2": "^2.0.0" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gulp-sourcemaps/node_modules/acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/gulp-stylelint": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/gulp-stylelint/-/gulp-stylelint-13.0.0.tgz", + "integrity": "sha512-qFWBXnYDsGy6ttzqptctMZjJhhGc0FdFE+UNPlj/5fTyuUo5mfxcc7pzN4hIJnvB79BO1WikLtdtXuC/G2AhGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^3.0.0", + "fancy-log": "^1.3.3", + "plugin-error": "^1.0.1", + "source-map": "^0.7.3", + "strip-ansi": "^6.0.0", + "through2": "^3.0.1" + }, + "engines": { + "node": ">=10.12.0" + }, + "peerDependencies": { + "stylelint": "^13.0.0" + } + }, + "node_modules/gulp-stylelint/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/gulp-stylelint/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/gulp-stylelint/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">= 8" + } + }, + "node_modules/gulp-stylelint/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/gulp-stylelint/node_modules/through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + }, + "node_modules/gulp-uglify": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz", + "integrity": "sha512-gk1dhB74AkV2kzqPMQBLA3jPoIAPd/nlNzP2XMDSG8XZrqnlCiDGAqC+rZOumzFvB5zOphlFh6yr3lgcAb/OOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-each": "^1.0.1", + "extend-shallow": "^3.0.2", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "isobject": "^3.0.1", + "make-error-cause": "^1.1.1", + "safe-buffer": "^5.1.2", + "through2": "^2.0.0", + "uglify-js": "^3.0.5", + "vinyl-sourcemaps-apply": "^0.2.0" + } + }, + "node_modules/gulplog": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", + "dev": true, + "license": "MIT", + "dependencies": { + "glogg": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-binary2": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", + "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "isarray": "2.0.1" + } + }, + "node_modules/has-binary2/node_modules/isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true, + "license": "MIT" + }, + "node_modules/has-cors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", + "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", + "dev": true, + "license": "MIT" + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-gulplog": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", + "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", + "dev": true, + "license": "MIT", + "dependencies": { + "sparkles": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true, + "license": "ISC" + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true, + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "license": "MIT", + "dependencies": { + "parse-passwd": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true, + "license": "ISC" + }, + "node_modules/html-minifier": { + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", + "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" + }, + "bin": { + "html-minifier": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/html-minifier/node_modules/commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true, + "license": "MIT" + }, + "node_modules/html-minifier/node_modules/uglify-js": { + "version": "3.4.10", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", + "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "commander": "~2.19.0", + "source-map": "~0.6.1" + }, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/html-minifier/node_modules/uglify-js/node_modules/commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true, + "license": "MIT" + }, + "node_modules/html-tags": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", + "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/htmlparser2/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/htmlparser2/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "license": "MIT", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-errors/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true, + "license": "ISC" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/immutable": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", + "integrity": "sha1-wkOZUUVbs5kT2vKBN28VMOEErfM=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "license": "MIT", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/in-publish": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", + "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==", + "dev": true, + "license": "ISC", + "bin": { + "in-install": "in-install.js", + "in-publish": "in-publish.js", + "not-in-install": "not-in-install.js", + "not-in-publish": "not-in-publish.js" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true, + "license": "MIT" + }, + "node_modules/indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true, + "license": "ISC" + }, + "node_modules/inline-source": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/inline-source/-/inline-source-6.1.10.tgz", + "integrity": "sha512-v/1yBPb3YfomHuEbxsYJEw3jlhycn8IWjq671jsihwgwLN1pUsx45MTEwuMMinGNeH2pT9tWxpLEq98Etp+kUA==", + "dev": true, + "license": "MIT", + "dependencies": { + "csso": "~3.5.1", + "htmlparser2": "^3.10.1", + "superagent": "~5.0.5", + "svgo": "~1.2.2", + "terser": "~3.17.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/rxjs": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", + "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true, + "license": "MIT" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", + "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-negated-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", + "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number-like": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", + "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lodash.isfinite": "^3.3.2" + } + }, + "node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/is-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", + "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-regexp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz", + "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-unc-path": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true, + "license": "MIT" + }, + "node_modules/is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "unc-path-regex": "^0.1.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true, + "license": "MIT" + }, + "node_modules/is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true, + "license": "MIT" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true, + "license": "ISC" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true, + "license": "MIT" + }, + "node_modules/js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "license": "MIT" + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true, + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true, + "license": "MIT" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true, + "license": "ISC" + }, + "node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "dev": true, + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonminify": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/jsonminify/-/jsonminify-0.2.3.tgz", + "integrity": "sha1-S4Qsij/l1qpIsvj5Whz5qAwBnY4=", + "dev": true, + "engines": { + "node": ">=0.8.0", + "npm": ">=1.1.0" + } + }, + "node_modules/jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "node_modules/jsx-ast-utils": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", + "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "array-includes": "^3.1.2", + "object.assign": "^4.1.2" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/just-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", + "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=", + "dev": true, + "license": "MIT" + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/known-css-properties": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.21.0.tgz", + "integrity": "sha512-sZLUnTqimCkvkgRS+kbPlYW5o8q5w1cu+uIisKpEWkj31I8mx8kNG162DwRav8Zirkva6N5uoFsm9kzK4mUXjw==", + "dev": true, + "license": "MIT" + }, + "node_modules/last-run": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", + "integrity": "sha1-RblpQsF7HHnHchmCWbqUO+v4yls=", + "dev": true, + "license": "MIT", + "dependencies": { + "default-resolution": "^2.0.0", + "es6-weak-map": "^2.0.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "^2.0.5" + }, + "engines": { + "node": ">= 0.6.3" + } + }, + "node_modules/lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "license": "MIT", + "dependencies": { + "invert-kv": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lead": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz", + "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=", + "dev": true, + "license": "MIT", + "dependencies": { + "flush-write-stream": "^1.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/leaflet": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.7.1.tgz", + "integrity": "sha512-/xwPEBidtg69Q3HlqPdU3DnrXQOvQU/CCHA1tcDQVzOwm91YMYaILjNp7L4Eaw5Z4sOYdbBz6koWyibppd8Zqw==", + "license": "BSD-2-Clause" + }, + "node_modules/levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/liftoff": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", + "integrity": "sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend": "^3.0.0", + "findup-sync": "^3.0.0", + "fined": "^1.0.1", + "flagged-respawn": "^1.0.0", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.0", + "rechoir": "^0.6.2", + "resolve": "^1.1.7" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/liftoff/node_modules/findup-sync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", + "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/limiter": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", + "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==", + "dev": true + }, + "node_modules/lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true, + "license": "MIT" + }, + "node_modules/load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/load-json-file/node_modules/parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "license": "MIT", + "dependencies": { + "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/localtunnel": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-2.0.1.tgz", + "integrity": "sha512-LiaI5wZdz0xFkIQpXbNI62ZnNn8IMsVhwxHmhA+h4vj8R9JG/07bQHWwQlyy7b95/5fVOCHJfIHv+a5XnkvaJA==", + "dev": true, + "license": "MIT", + "dependencies": { + "axios": "0.21.1", + "debug": "4.3.1", + "openurl": "1.1.1", + "yargs": "16.2.0" + }, + "bin": { + "lt": "bin/lt.js" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/localtunnel/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/localtunnel/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/localtunnel/node_modules/y18n": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz", + "integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/localtunnel/node_modules/yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "license": "MIT", + "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" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isfinite": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", + "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", + "dev": true, + "license": "MIT" + }, + "node_modules/log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/log-symbols/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "license": "MIT", + "dependencies": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true, + "license": "MIT" + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/lru-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", + "integrity": "sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=", + "dev": true, + "license": "MIT", + "dependencies": { + "es5-ext": "~0.10.2" + } + }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true, + "license": "ISC" + }, + "node_modules/make-error-cause": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/make-error-cause/-/make-error-cause-1.2.2.tgz", + "integrity": "sha1-3wOI/NCzeBbf8KX7gQiTl3fcvJ0=", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "make-error": "^1.2.0" + } + }, + "node_modules/make-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", + "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz", + "integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=", + "dev": true + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "license": "MIT", + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/match-stream": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/match-stream/-/match-stream-0.0.2.tgz", + "integrity": "sha1-mesFAJOzTf+t5CG5rAtBCpz6F88=", + "dev": true, + "license": "MIT", + "dependencies": { + "buffers": "~0.1.1", + "readable-stream": "~1.0.0" + } + }, + "node_modules/match-stream/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true, + "license": "MIT" + }, + "node_modules/match-stream/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/matchdep": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", + "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", + "dev": true, + "license": "MIT", + "dependencies": { + "findup-sync": "^2.0.0", + "micromatch": "^3.0.4", + "resolve": "^1.4.0", + "stack-trace": "0.0.10" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/matchdep/node_modules/findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "license": "MIT", + "dependencies": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/matchdep/node_modules/is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "node_modules/mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", + "dev": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-1.1.4.tgz", + "integrity": "sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA==", + "dev": true, + "license": "MPL-2.0" + }, + "node_modules/memoizee": { + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", + "integrity": "sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "d": "^1.0.1", + "es5-ext": "^0.10.53", + "es6-weak-map": "^2.0.3", + "event-emitter": "^0.3.5", + "is-promise": "^2.2.2", + "lru-queue": "^0.1.0", + "next-tick": "^1.1.0", + "timers-ext": "^0.1.7" + } + }, + "node_modules/meow": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", + "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize": "^1.2.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/hosted-git-info": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", + "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/normalize-package-data": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz", + "integrity": "sha512-6lUjEI0d3v6kFrtgA/lOx4zHCWULXsFNIjHolnZCKCTLA6m/G625cdn3O7eNmT0iD3jfo6HZ9cdImGZwf21prw==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^3.0.6", + "resolve": "^1.17.0", + "semver": "^7.3.2", + "validate-npm-package-license": "^3.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/meow/node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/read-pkg/node_modules/hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true, + "license": "ISC" + }, + "node_modules/meow/node_modules/read-pkg/node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/meow/node_modules/read-pkg/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/meow/node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/meow/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/meow/node_modules/type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "^2.0.1" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/metaparser": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/metaparser/-/metaparser-1.0.7.tgz", + "integrity": "sha1-wGmaZoageovOGsBrYulGLC5mqso=", + "dev": true, + "license": "ISC", + "dependencies": { + "async": "*", + "cheerio": "*", + "mkdirp": "*", + "underscore": "*" + } + }, + "node_modules/metaparser/node_modules/async": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==", + "dev": true, + "license": "MIT" + }, + "node_modules/metaparser/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], + "license": "MIT", + "dependencies": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "node_modules/micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/micromatch/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + } + }, + "node_modules/mime-db": { + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", + "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.28", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", + "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "mime-db": "1.45.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true, + "license": "MIT" + }, + "node_modules/minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/minimist-options/node_modules/arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mitt": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", + "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", + "dev": true, + "license": "MIT" + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "license": "MIT", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true, + "license": "MIT" + }, + "node_modules/mute-stdout": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz", + "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true, + "license": "ISC" + }, + "node_modules/nan": { + "version": "2.14.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", + "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true, + "license": "MIT" + }, + "node_modules/navigo": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/navigo/-/navigo-7.1.3.tgz", + "integrity": "sha512-dFsj+a0ml09P4rtX8xzsPl/SXb15YOTes7vjDSTsifRAMJ400+M4Hb5oiI9L5fhmaILBrzp0Y0o0+DZ+f3NLfw==", + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "lower-case": "^1.1.1" + } + }, + "node_modules/node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "dev": true, + "license": "MIT", + "dependencies": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/node-gyp/node_modules/semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/node-polyglot": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/node-polyglot/-/node-polyglot-2.2.2.tgz", + "integrity": "sha1-Gj921zkvg26ggjg27egX5upuwmw=", + "license": "BSD-2-Clause", + "dependencies": { + "for-each": "^0.3.2", + "has": "^1.0.1", + "string.prototype.trim": "^1.1.2", + "warning": "^3.0.0" + } + }, + "node_modules/node-releases": { + "version": "1.1.70", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz", + "integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==", + "dev": true, + "license": "MIT" + }, + "node_modules/node-sass": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz", + "integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash": "^4.17.15", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.13.2", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "2.2.5", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "bin": { + "node-sass": "bin/node-sass" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "license": "MIT", + "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" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "dev": true, + "license": "MIT", + "dependencies": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "node_modules/node-sass/node_modules/indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "license": "MIT", + "dependencies": { + "repeating": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "license": "ISC", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/node-sass/node_modules/meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "license": "MIT", + "dependencies": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "license": "MIT", + "dependencies": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "license": "MIT", + "dependencies": { + "get-stdin": "^4.0.1" + }, + "bin": { + "strip-indent": "cli.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/node-sass/node_modules/trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/node-sass/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true, + "license": "ISC" + }, + "node_modules/node-unzip-2": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/node-unzip-2/-/node-unzip-2-0.2.8.tgz", + "integrity": "sha512-fmJi73zTRW7RSo/1wyrKc2srKMwb3L6Ppke/7elzQ0QRt6sUjfiIcVsWdrqO5uEHAdvRKXjoySuo4HYe5BB0rw==", + "dev": true, + "license": "MIT", + "dependencies": { + "binary": "~0.3.0", + "fstream": "~1.0.12", + "match-stream": "~0.0.2", + "pullstream": "~0.4.0", + "readable-stream": "~1.0.0", + "setimmediate": "~1.0.1" + } + }, + "node_modules/node-unzip-2/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true, + "license": "MIT" + }, + "node_modules/node-unzip-2/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "license": "ISC", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-selector": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", + "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=", + "dev": true, + "license": "MIT" + }, + "node_modules/now-and-later": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", + "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "once": "^1.3.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "license": "ISC", + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true, + "license": "MIT" + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "license": "MIT", + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", + "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "dev": true, + "license": "MIT", + "dependencies": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.entries": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", + "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.fromentries": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz", + "integrity": "sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.getownpropertydescriptors": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.1.tgz", + "integrity": "sha512-6DtXgZ/lIZ9hqx4GtZETobXLR/ZLaa0aqV0kzbn80Rf8Z2e/XFnhA0I7p07N2wH8bBBltr2xQPi6sbKWAY2Eng==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + }, + "engines": { + "node": ">= 0.8" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "dev": true, + "license": "MIT", + "dependencies": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.reduce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz", + "integrity": "sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60=", + "dev": true, + "license": "MIT", + "dependencies": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.values": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz", + "integrity": "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "license": "MIT", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/openurl": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", + "integrity": "sha1-OHW0sO96UsFW8NtB1GCduw+Us4c=", + "dev": true, + "license": "MIT" + }, + "node_modules/opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-wsl": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "license": "MIT", + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/optionator/node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/optionator/node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/optionator/node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/ordered-read-streams": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", + "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "^2.0.1" + } + }, + "node_modules/os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "license": "MIT", + "dependencies": { + "lcid": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "license": "ISC", + "dependencies": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "node_modules/over": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/over/-/over-0.0.5.tgz", + "integrity": "sha1-8phS5w/X4l82DgE6jsRMgq7bVwg=", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "license": "MIT", + "dependencies": { + "no-case": "^2.2.0" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "license": "MIT", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/parseqs": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", + "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", + "dev": true, + "license": "MIT" + }, + "node_modules/parseuri": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", + "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", + "dev": true, + "license": "MIT" + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true, + "license": "MIT" + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "dev": true, + "license": "MIT", + "dependencies": { + "path-root-regex": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true, + "license": "MIT" + }, + "node_modules/picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "license": "MIT", + "dependencies": { + "pinkie": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/plugin-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/portscanner": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.1.1.tgz", + "integrity": "sha1-6rtAnk3iSVD1oqUW01rnaTQ/u5Y=", + "dev": true, + "license": "MIT", + "dependencies": { + "async": "1.5.2", + "is-number-like": "^1.0.3" + }, + "engines": { + "node": ">=0.4", + "npm": ">=1.0.0" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-html": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", + "integrity": "sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "htmlparser2": "^3.10.0" + }, + "peerDependencies": { + "postcss": ">=5.0.0", + "postcss-syntax": ">=0.36.0" + } + }, + "node_modules/postcss-less": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz", + "integrity": "sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss": "^7.0.14" + }, + "engines": { + "node": ">=6.14.4" + } + }, + "node_modules/postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=", + "dev": true, + "license": "MIT" + }, + "node_modules/postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=", + "dev": true, + "license": "MIT" + }, + "node_modules/postcss-safe-parser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz", + "integrity": "sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss": "^7.0.26" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-sass": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.4.4.tgz", + "integrity": "sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg==", + "dev": true, + "license": "MIT", + "dependencies": { + "gonzales-pe": "^4.3.0", + "postcss": "^7.0.21" + } + }, + "node_modules/postcss-scss": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz", + "integrity": "sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss": "^7.0.6" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", + "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-syntax": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", + "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "postcss": ">=5.0.0" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/postcss/node_modules/supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true, + "license": "MIT" + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true, + "license": "ISC" + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/pullstream": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pullstream/-/pullstream-0.4.1.tgz", + "integrity": "sha1-1vs79a7Wl+gxFQ6xACwlo/iuExQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "over": ">= 0.0.5 < 1", + "readable-stream": "~1.0.31", + "setimmediate": ">= 1.0.2 < 2", + "slice-stream": ">= 1.0.0 < 2" + } + }, + "node_modules/pullstream/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true, + "license": "MIT" + }, + "node_modules/pullstream/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" + } + }, + "node_modules/qs": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz", + "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz", + "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==", + "license": "ISC" + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "dev": true, + "license": "MIT", + "dependencies": { + "bytes": "3.1.0", + "http-errors": "1.7.3", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "dev": true, + "license": "MIT", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body/node_modules/setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true, + "license": "ISC" + }, + "node_modules/rbush": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", + "license": "MIT", + "dependencies": { + "quickselect": "^2.0.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "license": "MIT", + "dependencies": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "license": "MIT", + "dependencies": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "license": "MIT", + "dependencies": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg-up/node_modules/path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "license": "MIT", + "dependencies": { + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/read-pkg/node_modules/path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "license": "MIT", + "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" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true, + "license": "MIT" + }, + "node_modules/readable-stream/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "license": "MIT", + "dependencies": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remark": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/remark/-/remark-13.0.0.tgz", + "integrity": "sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "remark-parse": "^9.0.0", + "remark-stringify": "^9.0.0", + "unified": "^9.1.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdast-util-from-markdown": "^0.8.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-stringify": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", + "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", + "dev": true, + "license": "MIT", + "dependencies": { + "mdast-util-to-markdown": "^0.6.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remove-bom-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", + "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5", + "is-utf8": "^0.2.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/remove-bom-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz", + "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=", + "dev": true, + "license": "MIT", + "dependencies": { + "remove-bom-buffer": "^3.0.0", + "safe-buffer": "^5.1.0", + "through2": "^2.0.3" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true, + "license": "ISC" + }, + "node_modules/repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-finite": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/replace-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/replace-homedir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz", + "integrity": "sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw=", + "dev": true, + "license": "MIT", + "dependencies": { + "homedir-polyfill": "^1.0.1", + "is-absolute": "^1.0.0", + "remove-trailing-separator": "^1.1.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request/node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/request/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true, + "license": "MIT", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true, + "license": "ISC" + }, + "node_modules/requirejs": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz", + "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==", + "license": "MIT", + "bin": { + "r_js": "bin/r.js", + "r.js": "bin/r.js" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true, + "license": "MIT" + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "license": "MIT", + "dependencies": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-dir/node_modules/global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "license": "MIT", + "dependencies": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-dir/node_modules/global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "license": "MIT", + "dependencies": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-options": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz", + "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=", + "dev": true, + "license": "MIT", + "dependencies": { + "value-or-function": "^3.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true, + "license": "MIT" + }, + "node_modules/resp-modifier": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/resp-modifier/-/resp-modifier-6.0.2.tgz", + "integrity": "sha1-sSTeXE+6/LpUH0j/pzlw9KpFa08=", + "dev": true, + "dependencies": { + "debug": "^2.2.0", + "minimatch": "^3.0.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/resp-modifier/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true, + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rfg-api": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/rfg-api/-/rfg-api-0.5.1.tgz", + "integrity": "sha512-F4JJDx7gTFcGNybw+0trDFSYjuy2hbdqDqdaNBkMdSVlasglkfwyTWHTFqSUOLszbpZLwatLy0dxAJonNZi6hw==", + "dev": true, + "license": "MIT", + "dependencies": { + "axios": "^0.18.0", + "fstream": "^1.0.2", + "metaparser": "^1.0.7", + "mkdirp": "^0.5.0", + "node-unzip-2": "^0.2.7" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/rfg-api/node_modules/axios": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz", + "integrity": "sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==", + "dev": true, + "license": "MIT", + "dependencies": { + "follow-redirects": "1.5.10", + "is-buffer": "^2.0.2" + } + }, + "node_modules/rfg-api/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/rfg-api/node_modules/follow-redirects": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "=3.1.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/rfg-api/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "license": "ISC", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rx": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", + "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "symbol-observable": "1.0.1" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "license": "MIT", + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true, + "license": "MIT" + }, + "node_modules/sass-graph": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz", + "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", + "dev": true, + "license": "MIT", + "dependencies": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^13.3.2" + } + }, + "node_modules/sass-graph/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/sass-graph/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/sass-graph/node_modules/cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "node_modules/sass-graph/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/sass-graph/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true, + "license": "MIT" + }, + "node_modules/sass-graph/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true, + "license": "MIT" + }, + "node_modules/sass-graph/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "license": "MIT", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sass-graph/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sass-graph/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sass-graph/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/sass-graph/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sass-graph/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sass-graph/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sass-graph/node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "node_modules/sass-graph/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true, + "license": "ISC" + }, + "node_modules/scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "dev": true, + "license": "MIT", + "dependencies": { + "js-base64": "^2.1.8", + "source-map": "^0.4.2" + } + }, + "node_modules/scss-tokenizer/node_modules/source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "amdefine": ">=0.0.4" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/semver-greatest-satisfied-range": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", + "integrity": "sha1-E+jCZYq5aRywzXEJMkAoDTb3els=", + "dev": true, + "license": "MIT", + "dependencies": { + "sver-compat": "^1.5.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "license": "MIT", + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "dev": true, + "license": "MIT", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", + "send": "0.16.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/server-destroy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", + "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=", + "dev": true, + "license": "ISC" + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true, + "license": "ISC" + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/set-value/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true, + "license": "MIT" + }, + "node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true, + "license": "ISC" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-stream/-/slice-stream-1.0.0.tgz", + "integrity": "sha1-WzO9ZvATsaf4ZGCwPUY97DmtPqA=", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "~1.0.31" + } + }, + "node_modules/slice-stream/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true, + "license": "MIT" + }, + "node_modules/slice-stream/node_modules/readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "license": "MIT", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/snabbdom": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/snabbdom/-/snabbdom-0.7.4.tgz", + "integrity": "sha512-nnN+7uZ2NTIiu7EPMNwSDhmrYXqwlfCP/j72RdzvDPujXyvQxOW7Jl9yuLayzxMHDNWQR7FM6Pcn4wnDpKRe6Q==", + "license": "MIT" + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "license": "MIT", + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node/node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/socket.io": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.4.0.tgz", + "integrity": "sha512-9UPJ1UTvKayuQfVv2IQ3k7tCQC/fboDyIK62i99dAQIyHKaBsNdTpwHLgKJ6guRWxRtC9H+138UwpaGuQO9uWQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "debug": "~4.1.0", + "engine.io": "~3.5.0", + "has-binary2": "~1.0.2", + "socket.io-adapter": "~1.1.0", + "socket.io-client": "2.4.0", + "socket.io-parser": "~3.4.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", + "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", + "dev": true, + "license": "MIT" + }, + "node_modules/socket.io-client": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.4.0.tgz", + "integrity": "sha512-M6xhnKQHuuZd4Ba9vltCLT9oa+YvTsP8j9NcEiLElfIg8KeYPyhWOes6x4t+LTAC8enQbE/995AdTem2uNyKKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "backo2": "1.0.2", + "component-bind": "1.0.0", + "component-emitter": "~1.3.0", + "debug": "~3.1.0", + "engine.io-client": "~3.5.0", + "has-binary2": "~1.0.2", + "indexof": "0.0.1", + "parseqs": "0.0.6", + "parseuri": "0.0.6", + "socket.io-parser": "~3.3.0", + "to-array": "0.1.4" + } + }, + "node_modules/socket.io-client/node_modules/debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/socket.io-client/node_modules/isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true, + "license": "MIT" + }, + "node_modules/socket.io-client/node_modules/socket.io-parser": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.2.tgz", + "integrity": "sha512-FJvDBuOALxdCI9qwRrO/Rfp9yfndRtc1jSgVgV8FDraihmSP/MLGD5PEuJrNfjALvcQ+vMDM/33AWOYP/JSjDg==", + "dev": true, + "license": "MIT", + "dependencies": { + "component-emitter": "~1.3.0", + "debug": "~3.1.0", + "isarray": "2.0.1" + } + }, + "node_modules/socket.io-parser": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.1.tgz", + "integrity": "sha512-11hMgzL+WCLWf1uFtHSNvliI++tcRUWdoeYuwIl+Axvwy9z2gQM+7nJyN3STj1tLj5JyIUH8/gpDGxzAlDdi0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "component-emitter": "1.2.1", + "debug": "~4.1.0", + "isarray": "2.0.1" + } + }, + "node_modules/socket.io-parser/node_modules/component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true, + "license": "MIT" + }, + "node_modules/socket.io-parser/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/socket.io-parser/node_modules/isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true, + "license": "MIT" + }, + "node_modules/socket.io-parser/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/socket.io/node_modules/debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "license": "MIT", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/socket.io/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true, + "license": "MIT" + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "license": "MIT", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "dev": true, + "license": "MIT" + }, + "node_modules/sparkles": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", + "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true, + "license": "CC-BY-3.0" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", + "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", + "dev": true, + "license": "CC0-1.0" + }, + "node_modules/specificity": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", + "dev": true, + "license": "MIT", + "bin": { + "specificity": "bin/specificity" + } + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true, + "license": "MIT" + }, + "node_modules/stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stdout-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "^2.0.1" + } + }, + "node_modules/stream-exhaust": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", + "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", + "dev": true, + "license": "MIT" + }, + "node_modules/stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/stream-throttle": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz", + "integrity": "sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM=", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "commander": "^2.2.0", + "limiter": "^1.0.5" + }, + "bin": { + "throttleproxy": "bin/throttleproxy.js" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "dev": true, + "license": "MIT", + "dependencies": { + "any-promise": "^1.1.0" + } + }, + "node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true, + "license": "MIT" + }, + "node_modules/string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.matchall": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.3.tgz", + "integrity": "sha512-OBxYDA2ifZQ2e13cP82dWFMaCV9CGF8GzmN4fljBVw5O5wep0lu4gacm1OL6MjROoUnB8VbkWRThqkV2YFLNxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has-symbols": "^1.0.1", + "internal-slot": "^1.0.2", + "regexp.prototype.flags": "^1.3.0", + "side-channel": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.3.tgz", + "integrity": "sha512-16IL9pIBA5asNOSukPfxX2W68BaBvxyiRK16H3RA/lWW9BDosh+w7f+LhomPHpXJ82QEe7w7/rY/S1CV97raLg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz", + "integrity": "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz", + "integrity": "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-utf8": "^0.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "min-indent": "^1.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=", + "dev": true, + "license": "ISC" + }, + "node_modules/stylelint": { + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.10.0.tgz", + "integrity": "sha512-eDuLrL0wzPKbl5/TbNGZcbw0lTIGbDEr5W6lCODvb1gAg0ncbgCRt7oU0C2VFDvbrcY0A3MFZOwltwTRmc0XCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@stylelint/postcss-css-in-js": "^0.37.2", + "@stylelint/postcss-markdown": "^0.36.2", + "autoprefixer": "^9.8.6", + "balanced-match": "^1.0.0", + "chalk": "^4.1.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.3.1", + "execall": "^2.0.0", + "fast-glob": "^3.2.5", + "fastest-levenshtein": "^1.0.12", + "file-entry-cache": "^6.0.0", + "get-stdin": "^8.0.0", + "global-modules": "^2.0.0", + "globby": "^11.0.2", + "globjoin": "^0.1.4", + "html-tags": "^3.1.0", + "ignore": "^5.1.8", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "known-css-properties": "^0.21.0", + "lodash": "^4.17.20", + "log-symbols": "^4.0.0", + "mathml-tag-names": "^2.1.3", + "meow": "^9.0.0", + "micromatch": "^4.0.2", + "normalize-selector": "^0.2.0", + "postcss": "^7.0.35", + "postcss-html": "^0.36.0", + "postcss-less": "^3.1.4", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^4.0.2", + "postcss-sass": "^0.4.4", + "postcss-scss": "^2.1.1", + "postcss-selector-parser": "^6.0.4", + "postcss-syntax": "^0.36.2", + "postcss-value-parser": "^4.1.0", + "resolve-from": "^5.0.0", + "slash": "^3.0.0", + "specificity": "^0.4.1", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "style-search": "^0.1.0", + "sugarss": "^2.0.0", + "svg-tags": "^1.0.0", + "table": "^6.0.7", + "v8-compile-cache": "^2.2.0", + "write-file-atomic": "^3.0.3" + }, + "bin": { + "stylelint": "bin/stylelint.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/stylelint" + } + }, + "node_modules/stylelint-config-recommended": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", + "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "stylelint": ">=10.1.0" + } + }, + "node_modules/stylelint-config-standard": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz", + "integrity": "sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA==", + "dev": true, + "license": "MIT", + "dependencies": { + "stylelint-config-recommended": "^3.0.0" + }, + "peerDependencies": { + "stylelint": ">=10.1.0" + } + }, + "node_modules/stylelint/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "license": "MIT", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/stylelint/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/stylelint/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/stylelint/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/stylelint/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/stylelint/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/sugarss": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", + "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "postcss": "^7.0.2" + } + }, + "node_modules/superagent": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.0.9.tgz", + "integrity": "sha512-aOBxh0xN3nCcaG0oot9apJe77FzzCOsg469l06Nw0gW7p9q0mfyAOhSiCLzHCFxKKCNtTx8cxymqoY2cGUfV8g==", + "dev": true, + "license": "MIT", + "dependencies": { + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.2", + "debug": "^4.1.1", + "fast-safe-stringify": "^2.0.6", + "form-data": "^2.3.3", + "formidable": "^1.2.1", + "methods": "^1.1.2", + "mime": "^2.4.4", + "qs": "^6.7.0", + "readable-stream": "^3.4.0", + "semver": "^6.1.1" + }, + "engines": { + "node": ">= 6.4.0" + } + }, + "node_modules/superagent/node_modules/mime": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz", + "integrity": "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==", + "dev": true, + "license": "MIT", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/superagent/node_modules/qs": { + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/superagent/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/superagent/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/superagent/node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-color/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/sver-compat": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz", + "integrity": "sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg=", + "dev": true, + "license": "MIT", + "dependencies": { + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", + "dev": true + }, + "node_modules/svgo": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.2.2.tgz", + "integrity": "sha512-rAfulcwp2D9jjdGu+0CuqlrAUin6bBWrpoqXWwKDZZZJfXcUXQSxLJOFJCQCSA0x0pP2U0TxSlJu2ROq5Bq6qA==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.28", + "css-url-regex": "^1.1.0", + "csso": "^3.5.1", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/table": { + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", + "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "ajv": "^7.0.2", + "lodash": "^4.17.20", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/table/node_modules/ajv": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.0.tgz", + "integrity": "sha512-svS9uILze/cXbH0z2myCK2Brqprx/+JJYK5pHicT/GQiBfzzhUVAIT6MwqJg8y4xV/zoGsUeuPuwtoiKSGE15g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/table/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true, + "license": "MIT" + }, + "node_modules/tar": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", + "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", + "dev": true, + "license": "ISC", + "dependencies": { + "block-stream": "*", + "fstream": "^1.0.12", + "inherits": "2" + } + }, + "node_modules/temp-write": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-2.1.0.tgz", + "integrity": "sha1-WYkJGODvCdVIqqNC9L00CdhATpY=", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "os-tmpdir": "^1.0.0", + "pify": "^2.2.0", + "pinkie-promise": "^2.0.0", + "uuid": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ternary-stream": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ternary-stream/-/ternary-stream-2.1.1.tgz", + "integrity": "sha512-j6ei9hxSoyGlqTmoMjOm+QNvUKDOIY6bNl4Uh1lhBvl6yjPW2iLqxDUYyfDPZknQ4KdRziFl+ec99iT4l7g0cw==", + "dev": true, + "license": "MIT", + "dependencies": { + "duplexify": "^3.5.0", + "fork-stream": "^0.0.4", + "merge-stream": "^1.0.0", + "through2": "^2.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/terser": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz", + "integrity": "sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "commander": "^2.19.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.10" + }, + "bin": { + "terser": "bin/uglifyjs" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true, + "license": "MIT" + }, + "node_modules/tfunk": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tfunk/-/tfunk-4.0.0.tgz", + "integrity": "sha512-eJQ0dGfDIzWNiFNYFVjJ+Ezl/GmwHaFTBTjrtqNPW0S7cuVDBrZrmzUz6VkMeCR4DZFqhd4YtLwsw3i2wYHswQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "chalk": "^1.1.3", + "dlv": "^1.1.3" + } + }, + "node_modules/tfunk/node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tfunk/node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "license": "MIT", + "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" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tfunk/node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tfunk/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true, + "license": "MIT" + }, + "node_modules/through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "node_modules/through2-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", + "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", + "dev": true, + "license": "MIT", + "dependencies": { + "through2": "~2.0.0", + "xtend": "~4.0.0" + } + }, + "node_modules/time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/timers-ext": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", + "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "es5-ext": "~0.10.46", + "next-tick": "1" + } + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/to-absolute-glob": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", + "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-absolute": "^1.0.0", + "is-negated-glob": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-array": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", + "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", + "dev": true + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-through": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz", + "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=", + "dev": true, + "license": "MIT", + "dependencies": { + "through2": "^2.0.3" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "license": "BSD-3-Clause", + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/traverse": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", + "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", + "dev": true, + "license": "MIT/X11" + }, + "node_modules/trim-newlines": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/true-case-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "glob": "^7.1.2" + } + }, + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true, + "license": "0BSD" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, + "license": "Unlicense" + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true, + "license": "ISC" + }, + "node_modules/type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "license": "MIT", + "dependencies": { + "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=8" + } + }, + "node_modules/typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true, + "license": "MIT" + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/ua-parser-js": { + "version": "0.7.24", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.24.tgz", + "integrity": "sha512-yo+miGzQx5gakzVK3QFfN0/L9uVhosXBBO7qmnk7c2iw1IhL212wfA3zbnI54B0obGwC/5NWub/iT9sReMx+Fw==", + "dev": true, + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/uglify-js": { + "version": "3.12.8", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.8.tgz", + "integrity": "sha512-fvBeuXOsvqjecUtF/l1dwsrrf5y2BCUk9AOJGzGcm6tE7vegku5u/YvqjyDaAGr422PLoLnrxg3EnRvTqsdC1w==", + "dev": true, + "license": "BSD-2-Clause", + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/underscore": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz", + "integrity": "sha512-21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/undertaker": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz", + "integrity": "sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "bach": "^1.0.0", + "collection-map": "^1.0.0", + "es6-weak-map": "^2.0.1", + "fast-levenshtein": "^1.0.0", + "last-run": "^1.1.0", + "object.defaults": "^1.0.0", + "object.reduce": "^1.0.0", + "undertaker-registry": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/undertaker-registry": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz", + "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/undertaker/node_modules/fast-levenshtein": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz", + "integrity": "sha1-5qdUzI8V5YmHqpy9J69m/W9OWvk=", + "dev": true, + "license": "MIT" + }, + "node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unified/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/unified/node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/union-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-2.0.1.tgz", + "integrity": "sha512-NmcRHHhUy1qWmp6yYWsaURV2qwfS24TmTtO9S9x0L41wCNNVBQFD3toOzO0cd8SsNrFhbw/O0iYO5uffXGYocw==", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^3.0.1", + "set-value": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/union-value/node_modules/get-value": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", + "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/union-value/node_modules/set-value": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-3.0.2.tgz", + "integrity": "sha512-npjkVoz+ank0zjlV9F47Fdbjfj/PfXyVhZvGALWsyIYU/qrMzpi6avjKW3/7KeSU2Df3I46BrN1xOI1+6vW0hA==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true, + "license": "MIT" + }, + "node_modules/unique-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", + "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "json-stable-stringify-without-jsonify": "^1.0.1", + "through2-filter": "^3.0.0" + } + }, + "node_modules/unist-util-find-all-after": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz", + "integrity": "sha512-xaTC/AGZ0rIM2gM28YVRAFPIZpzbpDtU3dRmp7EXlNVA8ziQc4hY3H7BHXM1J49nEmiqc3svnqMReW+PGqbZKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.4.tgz", + "integrity": "sha512-3dF39j/u423v4BBQrk1AQ2Ve1FxY5W3JKwXxVFzBODQ6WEvccguhgp802qQLKSnxPODE6WuRZtV+ohlUg4meBA==", + "dev": true, + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", + "dev": true, + "license": "MIT" + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "license": "MIT", + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "license": "MIT", + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4", + "yarn": "*" + } + }, + "node_modules/upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true, + "license": "MIT" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true, + "license": "MIT" + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true, + "license": "MIT" + }, + "node_modules/util.promisify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", + "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/util.promisify/node_modules/es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "license": "MIT", + "dependencies": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=", + "dev": true, + "license": "MIT" + }, + "node_modules/v8-compile-cache": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/v8flags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", + "dev": true, + "license": "MIT", + "dependencies": { + "homedir-polyfill": "^1.0.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/value-or-function": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz", + "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT", + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/verror/node_modules/extsprintf": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz", + "integrity": "sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=", + "dev": true, + "engines": [ + "node >=0.6.0" + ], + "license": "MIT" + }, + "node_modules/vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile/node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/vinyl": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz", + "integrity": "sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==", + "dev": true, + "license": "MIT", + "dependencies": { + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vinyl-fs": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", + "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", + "dev": true, + "license": "MIT", + "dependencies": { + "fs-mkdirp-stream": "^1.0.0", + "glob-stream": "^6.1.0", + "graceful-fs": "^4.0.0", + "is-valid-glob": "^1.0.0", + "lazystream": "^1.0.0", + "lead": "^1.0.0", + "object.assign": "^4.0.4", + "pumpify": "^1.3.5", + "readable-stream": "^2.3.3", + "remove-bom-buffer": "^3.0.0", + "remove-bom-stream": "^1.2.0", + "resolve-options": "^1.1.0", + "through2": "^2.0.0", + "to-through": "^2.0.0", + "value-or-function": "^3.0.0", + "vinyl": "^2.0.0", + "vinyl-sourcemap": "^1.1.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vinyl-sourcemap": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz", + "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=", + "dev": true, + "license": "MIT", + "dependencies": { + "append-buffer": "^1.0.2", + "convert-source-map": "^1.5.0", + "graceful-fs": "^4.1.6", + "normalize-path": "^2.1.1", + "now-and-later": "^2.0.0", + "remove-bom-buffer": "^3.0.0", + "vinyl": "^2.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vinyl-sourcemap/node_modules/normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "license": "MIT", + "dependencies": { + "remove-trailing-separator": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/vinyl-sourcemaps-apply": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", + "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", + "dev": true, + "license": "ISC", + "dependencies": { + "source-map": "^0.5.1" + } + }, + "node_modules/vinyl-sourcemaps-apply/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "license": "BSD-3-Clause", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true, + "license": "ISC" + }, + "node_modules/wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^1.0.2 || 2" + } + }, + "node_modules/wide-align/node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/wide-align/node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/wide-align/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true, + "license": "ISC" + }, + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "license": "MIT", + "dependencies": { + "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz", + "integrity": "sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xmlhttprequest-ssl": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", + "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/y18n": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", + "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs-parser": { + "version": "20.2.5", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.5.tgz", + "integrity": "sha512-jYRGS3zWy20NtDtK2kBgo/TlAoy5YUuhD9/LZ7z7W4j1Fdw2cqD0xEEclf8fxc8xjD6X5Qr+qQQwCEsP8iRiYg==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/yeast": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", + "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", + "dev": true, + "license": "MIT" + }, + "node_modules/zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "dev": true, + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", + "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "dev": true, + "requires": { + "@babel/highlight": "^7.12.13" + } + }, + "@babel/core": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.16.tgz", + "integrity": "sha512-t/hHIB504wWceOeaOoONOhu+gX+hpjfeN6YRBT209X/4sibZQfSF1I0HFRRlBe97UZZosGx5XwUg1ZgNbelmNw==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.15", + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helpers": "^7.12.13", + "@babel/parser": "^7.12.16", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.12.15", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz", + "integrity": "sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ==", + "dev": true, + "requires": { + "@babel/types": "^7.12.13", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", + "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", + "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", + "dev": true, + "requires": { + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-member-expression-to-functions": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.16.tgz", + "integrity": "sha512-zYoZC1uvebBFmj1wFAlXwt35JLEgecefATtKp20xalwEK8vHAixLBXTGxNrVGEmTT+gzOThUgr8UEdgtalc1BQ==", + "dev": true, + "requires": { + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-module-imports": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz", + "integrity": "sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g==", + "dev": true, + "requires": { + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-module-transforms": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz", + "integrity": "sha512-acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA==", + "dev": true, + "requires": { + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-replace-supers": "^7.12.13", + "@babel/helper-simple-access": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/helper-validator-identifier": "^7.12.11", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", + "lodash": "^4.17.19" + } + }, + "@babel/helper-optimise-call-expression": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", + "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", + "dev": true, + "requires": { + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-replace-supers": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz", + "integrity": "sha512-pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg==", + "dev": true, + "requires": { + "@babel/helper-member-expression-to-functions": "^7.12.13", + "@babel/helper-optimise-call-expression": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-simple-access": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz", + "integrity": "sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA==", + "dev": true, + "requires": { + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", + "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", + "dev": true, + "requires": { + "@babel/types": "^7.12.13" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==", + "dev": true + }, + "@babel/helpers": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.13.tgz", + "integrity": "sha512-oohVzLRZ3GQEk4Cjhfs9YkJA4TdIDTObdBEZGrd6F/T0GPSnuV6l22eMcxlvcvzVIPH3VTtxbseudM1zIE+rPQ==", + "dev": true, + "requires": { + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "@babel/highlight": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", + "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.12.11", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@babel/parser": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.16.tgz", + "integrity": "sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw==", + "dev": true + }, + "@babel/template": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", + "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13" + } + }, + "@babel/traverse": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz", + "integrity": "sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.13", + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" + }, + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", + "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.12.11", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" + } + }, + "@eslint/eslintrc": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz", + "integrity": "sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg==", + "dev": true, + "requires": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + } + }, + "@gulp-sourcemaps/identity-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-2.0.1.tgz", + "integrity": "sha512-Tb+nSISZku+eQ4X1lAkevcQa+jknn/OVUgZ3XCxEKIsLsqYuPoJwJOPQeaOk75X3WPftb29GWY1eqE7GLsXb1Q==", + "dev": true, + "requires": { + "acorn": "^6.4.1", + "normalize-path": "^3.0.0", + "postcss": "^7.0.16", + "source-map": "^0.6.0", + "through2": "^3.0.1" + }, + "dependencies": { + "acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } + } + }, + "@gulp-sourcemaps/map-sources": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz", + "integrity": "sha1-iQrnxdjId/bThIYCFazp1+yUW9o=", + "dev": true, + "requires": { + "normalize-path": "^2.0.1", + "through2": "^2.0.3" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "@nodelib/fs.scandir": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", + "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "2.0.4", + "run-parallel": "^1.1.9" + } + }, + "@nodelib/fs.stat": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", + "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==", + "dev": true + }, + "@nodelib/fs.walk": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", + "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", + "dev": true, + "requires": { + "@nodelib/fs.scandir": "2.1.4", + "fastq": "^1.6.0" + } + }, + "@stylelint/postcss-css-in-js": { + "version": "0.37.2", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz", + "integrity": "sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA==", + "dev": true, + "requires": { + "@babel/core": ">=7.9.0" + } + }, + "@stylelint/postcss-markdown": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz", + "integrity": "sha512-2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ==", + "dev": true, + "requires": { + "remark": "^13.0.0", + "unist-util-find-all-after": "^3.0.2" + } + }, + "@types/mdast": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.3.tgz", + "integrity": "sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw==", + "dev": true, + "requires": { + "@types/unist": "*" + } + }, + "@types/minimist": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz", + "integrity": "sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg==", + "dev": true + }, + "@types/normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", + "dev": true + }, + "@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", + "dev": true + }, + "@types/q": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz", + "integrity": "sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug==", + "dev": true + }, + "@types/unist": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz", + "integrity": "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==", + "dev": true + }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "requires": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + } + }, + "acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true + }, + "acorn-jsx": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", + "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "dev": true, + "requires": {} + }, + "after": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz", + "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=", + "dev": true + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "almond": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/almond/-/almond-0.3.3.tgz", + "integrity": "sha1-oOfJWsdiTWQXtElLHmi/9pMWiiA=" + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-colors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "requires": { + "ansi-wrap": "^0.1.0" + } + }, + "ansi-cyan": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz", + "integrity": "sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM=", + "dev": true, + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-escapes": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "dev": true, + "requires": { + "type-fest": "^0.11.0" + }, + "dependencies": { + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "dev": true + } + } + }, + "ansi-gray": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", + "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", + "dev": true, + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-red": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", + "integrity": "sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw=", + "dev": true, + "requires": { + "ansi-wrap": "0.1.0" + } + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "ansi-wrap": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", + "dev": true + }, + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=", + "dev": true + }, + "anymatch": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", + "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", + "dev": true, + "requires": { + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "append-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", + "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", + "dev": true, + "requires": { + "buffer-equal": "^1.0.0" + } + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=", + "dev": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", + "dev": true, + "requires": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "requires": { + "sprintf-js": "~1.0.2" + } + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true + }, + "arr-filter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz", + "integrity": "sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4=", + "dev": true, + "requires": { + "make-iterator": "^1.0.0" + } + }, + "arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true + }, + "arr-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz", + "integrity": "sha1-Onc0X/wc814qkYJWAfnljy4kysQ=", + "dev": true, + "requires": { + "make-iterator": "^1.0.0" + } + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true + }, + "array-each": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz", + "integrity": "sha1-p5SvDAWrF1KEbudTofIRoFugxE8=", + "dev": true + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "dev": true + }, + "array-includes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz", + "integrity": "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "get-intrinsic": "^1.0.1", + "is-string": "^1.0.5" + } + }, + "array-initial": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz", + "integrity": "sha1-L6dLJnOTccOUe9enrcc74zSz15U=", + "dev": true, + "requires": { + "array-slice": "^1.0.0", + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "array-last": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz", + "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==", + "dev": true, + "requires": { + "is-number": "^4.0.0" + }, + "dependencies": { + "is-number": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true + } + } + }, + "array-slice": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz", + "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==", + "dev": true + }, + "array-sort": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz", + "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==", + "dev": true, + "requires": { + "default-compare": "^1.0.0", + "get-value": "^2.0.6", + "kind-of": "^5.0.2" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "dev": true + }, + "array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", + "dev": true + }, + "array.prototype.flatmap": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", + "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "function-bind": "^1.1.1" + } + }, + "arraybuffer.slice": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz", + "integrity": "sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog==", + "dev": true + }, + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "dev": true + }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dev": true, + "requires": { + "safer-buffer": "~2.1.0" + } + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + }, + "assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true + }, + "astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true + }, + "async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", + "dev": true + }, + "async-done": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz", + "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.2", + "process-nextick-args": "^2.0.0", + "stream-exhaust": "^1.0.1" + } + }, + "async-each": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", + "dev": true + }, + "async-each-series": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-0.1.1.tgz", + "integrity": "sha1-dhfBkXQB/Yykooqtzj266Yr+tDI=", + "dev": true + }, + "async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", + "dev": true + }, + "async-settle": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz", + "integrity": "sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs=", + "dev": true, + "requires": { + "async-done": "^1.2.2" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "dev": true + }, + "autoprefixer": { + "version": "9.8.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", + "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", + "dev": true, + "requires": { + "browserslist": "^4.12.0", + "caniuse-lite": "^1.0.30001109", + "colorette": "^1.2.1", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.32", + "postcss-value-parser": "^4.1.0" + } + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "dev": true + }, + "aws4": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", + "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", + "dev": true + }, + "axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", + "dev": true, + "requires": { + "follow-redirects": "^1.10.0" + } + }, + "babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + } + }, + "bach": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz", + "integrity": "sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA=", + "dev": true, + "requires": { + "arr-filter": "^1.1.1", + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "array-each": "^1.0.0", + "array-initial": "^1.0.0", + "array-last": "^1.1.1", + "async-done": "^1.2.2", + "async-settle": "^1.0.0", + "now-and-later": "^2.0.0" + } + }, + "backo2": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz", + "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=", + "dev": true + }, + "bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "dev": true + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "base": { + "version": "0.11.2", + "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "dev": true, + "requires": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + } + } + }, + "base64-arraybuffer": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz", + "integrity": "sha1-mBjHngWbE1X5fgQooBfIOOkLqBI=", + "dev": true + }, + "base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true + }, + "batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dev": true, + "requires": { + "tweetnacl": "^0.14.3" + } + }, + "binary": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz", + "integrity": "sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk=", + "dev": true, + "requires": { + "buffers": "~0.1.1", + "chainsaw": "~0.1.0" + } + }, + "binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true + }, + "blob": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", + "dev": true + }, + "block-stream": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", + "dev": true, + "requires": { + "inherits": "~2.0.0" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "browser-sync": { + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.14.tgz", + "integrity": "sha512-3TtpsheGolJT6UFtM2CZWEcGJmI4ZEvoCKiKE2bvcDnPxRkhQT4nIGVtfiyPcoHKXGM0LwMOZmYJNWfiNfVXWA==", + "dev": true, + "requires": { + "browser-sync-client": "^2.26.14", + "browser-sync-ui": "^2.26.14", + "bs-recipes": "1.3.4", + "bs-snippet-injector": "^2.0.1", + "chokidar": "^3.5.1", + "connect": "3.6.6", + "connect-history-api-fallback": "^1", + "dev-ip": "^1.0.1", + "easy-extender": "^2.3.4", + "eazy-logger": "3.1.0", + "etag": "^1.8.1", + "fresh": "^0.5.2", + "fs-extra": "3.0.1", + "http-proxy": "^1.18.1", + "immutable": "^3", + "localtunnel": "^2.0.1", + "micromatch": "^4.0.2", + "opn": "5.3.0", + "portscanner": "2.1.1", + "qs": "6.2.3", + "raw-body": "^2.3.2", + "resp-modifier": "6.0.2", + "rx": "4.1.0", + "send": "0.16.2", + "serve-index": "1.9.1", + "serve-static": "1.13.2", + "server-destroy": "1.0.1", + "socket.io": "2.4.0", + "ua-parser-js": "^0.7.18", + "yargs": "^15.4.1" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "browser-sync-client": { + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.14.tgz", + "integrity": "sha512-be0m1MchmKv/26r/yyyolxXcBi052aYrmaQep5nm8YNMjFcEyzv0ZoOKn/c3WEXNlEB/KeXWaw70fAOJ+/F1zQ==", + "dev": true, + "requires": { + "etag": "1.8.1", + "fresh": "0.5.2", + "mitt": "^1.1.3", + "rxjs": "^5.5.6" + } + }, + "browser-sync-ui": { + "version": "2.26.14", + "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.26.14.tgz", + "integrity": "sha512-6oT1sboM4KVNnWCCJDMGbRIeTBw97toMFQ+srImvwQ6J5t9KMgizaIX8HcKLiemsUMSJkgGM9RVKIpq2UblgOA==", + "dev": true, + "requires": { + "async-each-series": "0.1.1", + "connect-history-api-fallback": "^1", + "immutable": "^3", + "server-destroy": "1.0.1", + "socket.io-client": "^2.4.0", + "stream-throttle": "^0.1.3" + } + }, + "browserslist": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", + "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", + "dev": true, + "requires": { + "caniuse-lite": "^1.0.30001181", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.649", + "escalade": "^3.1.1", + "node-releases": "^1.1.70" + } + }, + "bs-recipes": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz", + "integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=", + "dev": true + }, + "bs-snippet-injector": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/bs-snippet-injector/-/bs-snippet-injector-2.0.1.tgz", + "integrity": "sha1-YbU5PxH1JVntEgaTEANDtu2wTdU=", + "dev": true + }, + "buffer-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", + "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", + "dev": true + }, + "buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", + "dev": true + }, + "buffers": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz", + "integrity": "sha1-skV5w77U1tOWru5tmorn9Ugqt7s=", + "dev": true + }, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true + }, + "cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "dev": true, + "requires": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "dependencies": { + "union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + } + } + } + }, + "cachebust": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/cachebust/-/cachebust-2.4.1.tgz", + "integrity": "sha512-Y2O58hqbFeeD09qyC3o9nPp9qHPC4KvRnZkiXI+Eaxs15IIA/3mqGrTrE8AWcThgADrwtQ+97yKbc2c/CypaAQ==", + "dev": true, + "requires": { + "cheerio": "^0.22.0", + "md5": "^2.0.0" + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true + }, + "camel-case": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", + "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, + "requires": { + "no-case": "^2.2.0", + "upper-case": "^1.1.1" + } + }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, + "camelcase-keys": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "dev": true, + "requires": { + "camelcase": "^5.3.1", + "map-obj": "^4.0.0", + "quick-lru": "^4.0.1" + }, + "dependencies": { + "map-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz", + "integrity": "sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g==", + "dev": true + } + } + }, + "caniuse-lite": { + "version": "1.0.30001187", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001187.tgz", + "integrity": "sha512-w7/EP1JRZ9552CyrThUnay2RkZ1DXxKe/Q2swTC4+LElLh9RRYrL1Z+27LlakB8kzY0fSmHw9mc7XYDUKAKWMA==", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chainsaw": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz", + "integrity": "sha1-XqtQsor+WAdNDVgpE4iCi15fvJg=", + "dev": true, + "requires": { + "traverse": ">=0.3.0 <0.4" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "dev": true + }, + "character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "dev": true + }, + "character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "dev": true + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "charenc": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz", + "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=", + "dev": true + }, + "cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha1-qbqoYKP5tZWmuBsahocxIe06Jp4=", + "dev": true, + "requires": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + }, + "dependencies": { + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + }, + "dependencies": { + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz", + "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==", + "dev": true + } + } + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + } + } + } + } + }, + "chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", + "dev": true, + "requires": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.3.1", + "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" + }, + "dependencies": { + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "dev": true, + "requires": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + } + }, + "clean-css": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", + "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", + "dev": true, + "requires": { + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "dev": true + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dev": true, + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "dev": true + }, + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, + "clone-buffer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", + "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", + "dev": true + }, + "clone-regexp": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz", + "integrity": "sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q==", + "dev": true, + "requires": { + "is-regexp": "^2.0.0" + } + }, + "clone-stats": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true + }, + "cloneable-readable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz", + "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==", + "dev": true, + "requires": { + "inherits": "^2.0.1", + "process-nextick-args": "^2.0.0", + "readable-stream": "^2.3.5" + } + }, + "coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "dev": true, + "requires": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + } + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "dev": true + }, + "collection-map": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz", + "integrity": "sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw=", + "dev": true, + "requires": { + "arr-map": "^2.0.2", + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "dev": true, + "requires": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", + "dev": true + }, + "colorette": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==", + "dev": true + }, + "combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dev": true, + "requires": { + "delayed-stream": "~1.0.0" + } + }, + "commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", + "dev": true + }, + "component-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz", + "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=", + "dev": true + }, + "component-emitter": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", + "dev": true + }, + "component-inherit": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz", + "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", + "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" + } + }, + "connect": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", + "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=", + "dev": true, + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.0", + "parseurl": "~1.3.2", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", + "dev": true + }, + "convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + } + } + }, + "cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "dev": true + }, + "cookiejar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz", + "integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==", + "dev": true + }, + "copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", + "dev": true + }, + "copy-props": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz", + "integrity": "sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A==", + "dev": true, + "requires": { + "each-props": "^1.3.0", + "is-plain-object": "^2.0.1" + } + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cosmiconfig": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz", + "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==", + "dev": true, + "requires": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "dependencies": { + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "crypt": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz", + "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=", + "dev": true + }, + "css": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz", + "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "source-map": "^0.6.1", + "source-map-resolve": "^0.6.0" + }, + "dependencies": { + "source-map-resolve": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz", + "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0" + } + } + } + }, + "css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "dev": true, + "requires": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + }, + "dependencies": { + "css-what": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", + "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==", + "dev": true + } + } + }, + "css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==", + "dev": true + }, + "css-tree": { + "version": "1.0.0-alpha.28", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.28.tgz", + "integrity": "sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w==", + "dev": true, + "requires": { + "mdn-data": "~1.1.0", + "source-map": "^0.5.3" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "css-url-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/css-url-regex/-/css-url-regex-1.1.0.tgz", + "integrity": "sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w=", + "dev": true + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, + "cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true + }, + "csso": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/csso/-/csso-3.5.1.tgz", + "integrity": "sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg==", + "dev": true, + "requires": { + "css-tree": "1.0.0-alpha.29" + }, + "dependencies": { + "css-tree": { + "version": "1.0.0-alpha.29", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.29.tgz", + "integrity": "sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg==", + "dev": true, + "requires": { + "mdn-data": "~1.1.0", + "source-map": "^0.5.3" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "dev": true, + "requires": { + "array-find-index": "^1.0.1" + } + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dev": true, + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "d3-collection": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz", + "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==" + }, + "d3-color": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.4.1.tgz", + "integrity": "sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q==" + }, + "d3-dispatch": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz", + "integrity": "sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA==" + }, + "d3-drag": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.5.tgz", + "integrity": "sha512-rD1ohlkKQwMZYkQlYVCrSFxsWPzI97+W+PaEIBNTMxRuxz9RF0Hi5nJWHGVJ3Om9d2fRTe1yOBINJyy/ahV95w==", + "requires": { + "d3-dispatch": "1", + "d3-selection": "1" + } + }, + "d3-ease": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.7.tgz", + "integrity": "sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ==" + }, + "d3-force": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/d3-force/-/d3-force-1.2.1.tgz", + "integrity": "sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg==", + "requires": { + "d3-collection": "1", + "d3-dispatch": "1", + "d3-quadtree": "1", + "d3-timer": "1" + } + }, + "d3-interpolate": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.4.0.tgz", + "integrity": "sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA==", + "requires": { + "d3-color": "1" + } + }, + "d3-quadtree": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz", + "integrity": "sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA==" + }, + "d3-selection": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-1.4.2.tgz", + "integrity": "sha512-SJ0BqYihzOjDnnlfyeHT0e30k0K1+5sR3d5fNueCNeuhZTnGw4M4o8mqJchSwgKMXCNFo+e2VTChiSJ0vYtXkg==" + }, + "d3-timer": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz", + "integrity": "sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw==" + }, + "d3-transition": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/d3-transition/-/d3-transition-1.3.2.tgz", + "integrity": "sha512-sc0gRU4PFqZ47lPVHloMn9tlPcv8jxgOQg+0zjhfZXMQuvppjG6YuwdMBE0TuqCZjeJkLecku/l9R0JPcRhaDA==", + "requires": { + "d3-color": "1", + "d3-dispatch": "1", + "d3-ease": "1", + "d3-interpolate": "1", + "d3-selection": "^1.1.0", + "d3-timer": "1" + } + }, + "d3-zoom": { + "version": "1.8.3", + "resolved": "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.8.3.tgz", + "integrity": "sha512-VoLXTK4wvy1a0JpH2Il+F2CiOhVu7VRXWF5M/LroMIh3/zBAC3WAt7QoIvPibOavVo20hN6/37vwAsdBejLyKQ==", + "requires": { + "d3-dispatch": "1", + "d3-drag": "1", + "d3-interpolate": "1", + "d3-selection": "1", + "d3-transition": "1" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "requires": { + "ms": "2.1.2" + }, + "dependencies": { + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + } + } + }, + "debug-fabulous": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-1.1.0.tgz", + "integrity": "sha512-GZqvGIgKNlUnHUPQhepnUZFIMoi3dgZKQBzKDeL2g7oJF9SNAji/AAu36dusFUas0O+pae74lNeoIPHqXWDkLg==", + "dev": true, + "requires": { + "debug": "3.X", + "memoizee": "0.4.X", + "object-assign": "4.X" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true + }, + "decamelize-keys": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz", + "integrity": "sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk=", + "dev": true, + "requires": { + "decamelize": "^1.1.0", + "map-obj": "^1.0.0" + } + }, + "decode-uri-component": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", + "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", + "dev": true + }, + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "default-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz", + "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==", + "dev": true, + "requires": { + "kind-of": "^5.0.2" + }, + "dependencies": { + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "default-resolution": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz", + "integrity": "sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ=", + "dev": true + }, + "define-properties": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "requires": { + "object-keys": "^1.0.12" + } + }, + "define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", + "dev": true, + "requires": { + "is-descriptor": "^0.1.0" + }, + "dependencies": { + "is-accessor-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", + "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-data-descriptor": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", + "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-descriptor": { + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", + "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" + } + }, + "kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "dev": true + } + } + }, + "del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dev": true, + "requires": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "dependencies": { + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", + "dev": true + }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "dev": true + }, + "destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", + "dev": true + }, + "detect-file": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz", + "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=", + "dev": true + }, + "detect-newline": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=", + "dev": true + }, + "dev-ip": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz", + "integrity": "sha1-p2o+0YVb56ASu4rBbLgPPADcKPA=", + "dev": true + }, + "dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "requires": { + "path-type": "^4.0.0" + } + }, + "dlv": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", + "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==", + "dev": true + }, + "doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + }, + "dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "dev": true, + "requires": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz", + "integrity": "sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w==", + "dev": true + }, + "entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "dev": true + } + } + }, + "domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "dev": true + }, + "domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dev": true, + "requires": { + "domelementtype": "1" + } + }, + "domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "duplexify": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", + "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", + "dev": true, + "requires": { + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" + } + }, + "each-props": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz", + "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.1", + "object.defaults": "^1.1.0" + } + }, + "easy-extender": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", + "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + }, + "eazy-logger": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-3.1.0.tgz", + "integrity": "sha512-/snsn2JqBtUSSstEl4R0RKjkisGHAhvYj89i7r3ytNUKW12y178KDZwXLXIgwDqLW6E/VRMT9qfld7wvFae8bQ==", + "dev": true, + "requires": { + "tfunk": "^4.0.0" + } + }, + "ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dev": true, + "requires": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.664", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.664.tgz", + "integrity": "sha512-yb8LrTQXQnh9yhnaIHLk6CYugF/An50T20+X0h++hjjhVfgSp1DGoMSYycF8/aD5eiqS4QwaNhiduFvK8rifRg==", + "dev": true + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dev": true, + "requires": { + "once": "^1.4.0" + } + }, + "engine.io": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.5.0.tgz", + "integrity": "sha512-21HlvPUKaitDGE4GXNtQ7PLP0Sz4aWLddMPw2VTyFz1FVZqu/kZsJUO8WNpKuE/OCL7nkfRaOui2ZCJloGznGA==", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "debug": "~4.1.0", + "engine.io-parser": "~2.2.0", + "ws": "~7.4.2" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "engine.io-client": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.0.tgz", + "integrity": "sha512-12wPRfMrugVw/DNyJk34GQ5vIVArEcVMXWugQGGuw2XxUSztFNmJggZmv8IZlLyEdnpO1QB9LkcjeWewO2vxtA==", + "dev": true, + "requires": { + "component-emitter": "~1.3.0", + "component-inherit": "0.0.3", + "debug": "~3.1.0", + "engine.io-parser": "~2.2.0", + "has-cors": "1.1.0", + "indexof": "0.0.1", + "parseqs": "0.0.6", + "parseuri": "0.0.6", + "ws": "~7.4.2", + "xmlhttprequest-ssl": "~1.5.4", + "yeast": "0.1.2" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "engine.io-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz", + "integrity": "sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg==", + "dev": true, + "requires": { + "after": "0.8.2", + "arraybuffer.slice": "~0.0.7", + "base64-arraybuffer": "0.1.4", + "blob": "0.0.5", + "has-binary2": "~1.0.2" + } + }, + "enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1" + }, + "dependencies": { + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + } + } + }, + "entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "dev": true + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dev": true, + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.18.0-next.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz", + "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==", + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.1", + "object-inspect": "^1.9.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.3", + "string.prototype.trimstart": "^1.0.3" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dev": true, + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + }, + "dependencies": { + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "dev": true + } + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dev": true, + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "es6-weak-map": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz", + "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "^0.10.46", + "es6-iterator": "^2.0.3", + "es6-symbol": "^3.1.1" + } + }, + "escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "eslint": { + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.20.0.tgz", + "integrity": "sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw==", + "dev": true, + "requires": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.3.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "file-entry-cache": "^6.0.0", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash": "^4.17.20", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.4", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dev": true, + "requires": { + "@babel/highlight": "^7.10.4" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "eslint-visitor-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", + "dev": true + }, + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + } + } + }, + "eslint-config-airbnb-es5": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-es5/-/eslint-config-airbnb-es5-1.2.0.tgz", + "integrity": "sha512-MaOKwNpqNZIRy+3augFj5vGHJ4F1sskPjJ/Od7K3N8Vv+8pD6t73XCL18KrHrF1m58qFxPBDl1US6bswE65IbQ==", + "dev": true, + "requires": { + "strip-json-comments": "1.0.2" + }, + "dependencies": { + "strip-json-comments": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz", + "integrity": "sha1-WkirlgI9usG3uND/q/b2PxZ3vp8=", + "dev": true + } + } + }, + "eslint-config-defaults": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-defaults/-/eslint-config-defaults-9.0.0.tgz", + "integrity": "sha1-oJCtwTspNeP0OzzQSKknAWVOWtU=", + "dev": true + }, + "eslint-plugin-react": { + "version": "7.22.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.22.0.tgz", + "integrity": "sha512-p30tuX3VS+NWv9nQot9xIGAHBXR0+xJVaZriEsHoJrASGCJZDJ8JLNM0YqKqI0AKm6Uxaa1VUHoNEibxRCMQHA==", + "dev": true, + "requires": { + "array-includes": "^3.1.1", + "array.prototype.flatmap": "^1.2.3", + "doctrine": "^2.1.0", + "has": "^1.0.3", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "object.entries": "^1.1.2", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.18.1", + "string.prototype.matchall": "^4.0.2" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, + "requires": { + "esutils": "^2.0.2" + } + } + } + }, + "eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "requires": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "dependencies": { + "estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true + } + } + }, + "eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + }, + "espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "requires": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "requires": { + "estraverse": "^5.1.0" + } + }, + "esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "requires": { + "estraverse": "^5.2.0" + } + }, + "estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "dev": true + }, + "esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "dev": true + }, + "event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dev": true, + "requires": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", + "dev": true + }, + "execall": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz", + "integrity": "sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow==", + "dev": true, + "requires": { + "clone-regexp": "^2.1.0" + } + }, + "expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", + "dev": true, + "requires": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "expand-tilde": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz", + "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dev": true, + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.2.0.tgz", + "integrity": "sha512-M/u37b4oSGlusaU8ZB96BfFPWQ8MbsZYXB+kXGMiDj6IKinkcNaQvmirBuWj8mAXqP6LYn1rQvbTYum3yPhaOA==", + "dev": true + } + } + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + } + }, + "extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "dev": true + }, + "fancy-log": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz", + "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==", + "dev": true, + "requires": { + "ansi-gray": "^0.1.1", + "color-support": "^1.1.3", + "parse-node-version": "^1.0.0", + "time-stamp": "^1.0.0" + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "fast-glob": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", + "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "dev": true, + "requires": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "fast-safe-stringify": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz", + "integrity": "sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA==", + "dev": true + }, + "fastest-levenshtein": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", + "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", + "dev": true + }, + "fastq": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz", + "integrity": "sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA==", + "dev": true, + "requires": { + "reusify": "^1.0.4" + } + }, + "figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "file-entry-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz", + "integrity": "sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA==", + "dev": true, + "requires": { + "flat-cache": "^3.0.4" + } + }, + "fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "finalhandler": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "statuses": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=", + "dev": true + } + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "findup-sync": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz", + "integrity": "sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ==", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^4.0.2", + "resolve-dir": "^1.0.1" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "fined": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz", + "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "is-plain-object": "^2.0.3", + "object.defaults": "^1.1.0", + "object.pick": "^1.2.0", + "parse-filepath": "^1.0.1" + } + }, + "flagged-respawn": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz", + "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==", + "dev": true + }, + "flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "requires": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "dependencies": { + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "flatted": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz", + "integrity": "sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==", + "dev": true + }, + "flush-write-stream": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", + "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "readable-stream": "^2.3.6" + } + }, + "follow-redirects": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz", + "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA==", + "dev": true + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "requires": { + "is-callable": "^1.1.3" + } + }, + "for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true + }, + "for-own": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", + "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", + "dev": true, + "requires": { + "for-in": "^1.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "fork-stream": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/fork-stream/-/fork-stream-0.0.4.tgz", + "integrity": "sha1-24Sfznf2cIpfjzhq5TOgkHtUrnA=", + "dev": true + }, + "form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "formidable": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz", + "integrity": "sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q==", + "dev": true + }, + "fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", + "dev": true, + "requires": { + "map-cache": "^0.2.2" + } + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "dev": true + }, + "fs-extra": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", + "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^3.0.0", + "universalify": "^0.1.0" + } + }, + "fs-mkdirp-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", + "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "through2": "^2.0.3" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "fstream": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", + "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dev": true, + "requires": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + } + } + }, + "gaze": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", + "dev": true, + "requires": { + "globule": "^1.0.0" + } + }, + "gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "dev": true + }, + "get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true + }, + "get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true + }, + "get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", + "dev": true + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "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-parent": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", + "dev": true, + "requires": { + "is-glob": "^4.0.1" + } + }, + "glob-stream": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", + "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", + "dev": true, + "requires": { + "extend": "^3.0.0", + "glob": "^7.1.1", + "glob-parent": "^3.1.0", + "is-negated-glob": "^1.0.0", + "ordered-read-streams": "^1.0.0", + "pumpify": "^1.3.5", + "readable-stream": "^2.1.5", + "remove-trailing-separator": "^1.0.1", + "to-absolute-glob": "^2.0.0", + "unique-stream": "^2.0.2" + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "glob-watcher": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz", + "integrity": "sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-done": "^1.2.0", + "chokidar": "^2.0.0", + "is-negated-glob": "^1.0.0", + "just-debounce": "^1.0.0", + "normalize-path": "^3.0.0", + "object.defaults": "^1.1.0" + }, + "dependencies": { + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", + "dev": true + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "dev": true, + "requires": { + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.1" + } + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, + "requires": { + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" + }, + "dependencies": { + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "dev": true, + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + } + } + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dev": true, + "requires": { + "global-prefix": "^3.0.0" + } + }, + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dev": true, + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + } + }, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", + "dev": true, + "requires": { + "type-fest": "^0.8.1" + } + }, + "globby": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", + "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", + "dev": true, + "requires": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "dependencies": { + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + } + } + }, + "globjoin": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz", + "integrity": "sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM=", + "dev": true + }, + "globule": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", + "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", + "dev": true, + "requires": { + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" + } + }, + "glogg": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz", + "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==", + "dev": true, + "requires": { + "sparkles": "^1.0.0" + } + }, + "gonzales-pe": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz", + "integrity": "sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true + }, + "group-array": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/group-array/-/group-array-1.0.0.tgz", + "integrity": "sha512-PJresALe5TUzSIcdWKLdAKcdUDxv8du2EGueShgAL2xknbcTo5Bk1xbNaNhxpWxxAx/SV7N+5S0UyK7XV0+QhA==", + "dev": true, + "requires": { + "arr-flatten": "^1.1.0", + "for-own": "^1.0.0", + "get-value": "^3.0.1", + "kind-of": "^6.0.2", + "split-string": "^6.1.0", + "union-value": "^2.0.1" + }, + "dependencies": { + "get-value": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", + "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "split-string": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-6.1.0.tgz", + "integrity": "sha512-9UBdnmnvx2NLLd4bMs7CEKK+wSzbujVv3ONyorkP1o8M3pVJQtXDO1cN19xD1JJs6ltOrtPrkUND0HzLSinUcA==", + "dev": true + } + } + }, + "gulp": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz", + "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==", + "dev": true, + "requires": { + "glob-watcher": "^5.0.3", + "gulp-cli": "^2.2.0", + "undertaker": "^1.2.1", + "vinyl-fs": "^3.0.0" + } + }, + "gulp-autoprefixer": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/gulp-autoprefixer/-/gulp-autoprefixer-7.0.1.tgz", + "integrity": "sha512-QJGEmHw+bEt7FSqvmbAUTxbCuNLJYx4sz3ox9WouYqT/7j5FH5CQ8ZnpL1M7H5npX1bUJa7lUVY1w20jXxhOxg==", + "dev": true, + "requires": { + "autoprefixer": "^9.6.1", + "fancy-log": "^1.3.2", + "plugin-error": "^1.0.1", + "postcss": "^7.0.17", + "through2": "^3.0.1", + "vinyl-sourcemaps-apply": "^0.2.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } + } + }, + "gulp-cache-bust": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/gulp-cache-bust/-/gulp-cache-bust-1.4.1.tgz", + "integrity": "sha512-ksYCu06p2hpUDilgtv/jMB9lxBLg/v9F0xEAYbndgS/xWqamHpIpGRPAKj76VRXJpDTHgEqVPcd2rCofj4TERg==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "cachebust": "2.4.1", + "fancy-log": "^1.3.2", + "graceful-fs": "^4.1.9", + "map-stream": "^0.1.0", + "plugin-error": "^0.1.2", + "temp-write": "^2.1.0", + "through2": "2.0.1", + "vinyl": "^2.1.0" + }, + "dependencies": { + "arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" + } + }, + "arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", + "dev": true + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true + }, + "extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "dev": true, + "requires": { + "kind-of": "^1.1.0" + } + }, + "kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", + "dev": true + }, + "plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "dev": true, + "requires": { + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "readable-stream": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", + "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" + } + }, + "through2": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.1.tgz", + "integrity": "sha1-OE51MU1J8y3hLuu4E2uOtrXVnak=", + "dev": true, + "requires": { + "readable-stream": "~2.0.0", + "xtend": "~4.0.0" + } + } + } + }, + "gulp-cli": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz", + "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "archy": "^1.0.0", + "array-sort": "^1.0.0", + "color-support": "^1.1.3", + "concat-stream": "^1.6.0", + "copy-props": "^2.0.1", + "fancy-log": "^1.3.2", + "gulplog": "^1.0.0", + "interpret": "^1.4.0", + "isobject": "^3.0.1", + "liftoff": "^3.1.0", + "matchdep": "^2.0.0", + "mute-stdout": "^1.0.0", + "pretty-hrtime": "^1.0.0", + "replace-homedir": "^1.0.0", + "semver-greatest-satisfied-range": "^1.1.0", + "v8flags": "^3.2.0", + "yargs": "^7.1.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", + "dev": true + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + } + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", + "dev": true + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" + } + }, + "y18n": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz", + "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==", + "dev": true + }, + "yargs": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz", + "integrity": "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "5.0.0-security.0" + } + }, + "yargs-parser": { + "version": "5.0.0-security.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz", + "integrity": "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==", + "dev": true, + "requires": { + "camelcase": "^3.0.0", + "object.assign": "^4.1.0" + } + } + } + }, + "gulp-environments": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gulp-environments/-/gulp-environments-1.0.1.tgz", + "integrity": "sha512-ooM/H+1ZFImalQPHCaMGvKap/8UQxHMcyo65f/Y6ZakCpa4FgJ9NH/9ux7hj7Z8J22mFlJu9RQgxuZT82UtlKg==", + "dev": true, + "requires": { + "gulp-if": "^2.0.1", + "yargs": "^15.0.1" + } + }, + "gulp-eslint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gulp-eslint/-/gulp-eslint-6.0.0.tgz", + "integrity": "sha512-dCVPSh1sA+UVhn7JSQt7KEb4An2sQNbOdB3PA8UCfxsoPlAKjJHxYHGXdXC7eb+V1FAnilSFFqslPrq037l1ig==", + "dev": true, + "requires": { + "eslint": "^6.0.0", + "fancy-log": "^1.3.2", + "plugin-error": "^1.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", + "chalk": "^2.1.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", + "esutils": "^2.0.2", + "file-entry-cache": "^5.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.3.0", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", + "mkdirp": "^0.5.1", + "natural-compare": "^1.4.0", + "optionator": "^0.8.3", + "progress": "^2.0.0", + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + } + }, + "eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "requires": { + "eslint-visitor-keys": "^1.1.0" + } + }, + "espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dev": true, + "requires": { + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + } + }, + "file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", + "dev": true, + "requires": { + "flat-cache": "^2.0.1" + } + }, + "flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "requires": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + } + }, + "flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", + "dev": true + }, + "optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", + "dev": true, + "requires": { + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.6", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "word-wrap": "~1.2.3" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", + "dev": true + }, + "rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "^1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", + "is-fullwidth-code-point": "^2.0.0" + } + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "requires": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + } + } + } + }, + "gulp-htmlmin": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/gulp-htmlmin/-/gulp-htmlmin-5.0.1.tgz", + "integrity": "sha512-ASlyDPZOSKjHYUifYV0rf9JPDflN9IRIb8lw2vRqtYMC4ljU3zAmnnaVXwFQ3H+CfXxZSUesZ2x7jrnPJu93jA==", + "dev": true, + "requires": { + "html-minifier": "^3.5.20", + "plugin-error": "^1.0.1", + "through2": "^2.0.3" + } + }, + "gulp-if": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-2.0.2.tgz", + "integrity": "sha1-pJe351cwBQQcqivIt92jyARE1ik=", + "dev": true, + "requires": { + "gulp-match": "^1.0.3", + "ternary-stream": "^2.0.1", + "through2": "^2.0.1" + } + }, + "gulp-inject": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/gulp-inject/-/gulp-inject-5.0.5.tgz", + "integrity": "sha512-5bGMjqleXUHPu4CI1pnVzHtwyMy+Zt8EMo1RFwNsOpidPxwjFwyLgmsRZWGMMI8UenJMJRjURqwznfFmqb5wgw==", + "dev": true, + "requires": { + "ansi-colors": "^4.1.1", + "arrify": "^2.0.1", + "escape-string-regexp": "^2.0.0", + "fancy-log": "^1.3.3", + "group-array": "^1.0.0", + "plugin-error": "^1.0.1", + "stream-to-array": "^2.3.0", + "through2": "^3.0.1" + }, + "dependencies": { + "ansi-colors": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", + "dev": true + }, + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } + } + }, + "gulp-inline-source": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/gulp-inline-source/-/gulp-inline-source-4.0.0.tgz", + "integrity": "sha512-LrqCom18aYkceV2YPqJyCrDpHNyLGrHHNYCmWQXFvJUMyYIpf+xxBzmvR45cokyoq2KW9H8oxijvnDjHn9s3Pw==", + "dev": true, + "requires": { + "inline-source": "~6.1.8", + "plugin-error": "~1.0.1", + "through2": "~2.0.0" + } + }, + "gulp-jsonminify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-jsonminify/-/gulp-jsonminify-1.1.0.tgz", + "integrity": "sha512-nkqH5aRajfCGD8HB2yN+QSEQG0SMEpS7UyOp3HS966Og4DqUX0y8sPF5SU8uSsGLLLXbnHwyHbDkxauYO/pSpQ==", + "dev": true, + "requires": { + "jsonminify": "~0.2.3", + "plugin-error": "^0.1.2", + "through2": "~0.6.5" + }, + "dependencies": { + "arr-diff": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz", + "integrity": "sha1-aHwydYFjWI/vfeezb6vklesaOZo=", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1", + "array-slice": "^0.2.3" + } + }, + "arr-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz", + "integrity": "sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0=", + "dev": true + }, + "array-slice": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", + "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "dev": true + }, + "extend-shallow": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz", + "integrity": "sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE=", + "dev": true, + "requires": { + "kind-of": "^1.1.0" + } + }, + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "kind-of": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz", + "integrity": "sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ=", + "dev": true + }, + "plugin-error": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz", + "integrity": "sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4=", + "dev": true, + "requires": { + "ansi-cyan": "^0.1.1", + "ansi-red": "^0.1.1", + "arr-diff": "^1.0.1", + "arr-union": "^2.0.1", + "extend-shallow": "^1.1.2" + } + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "through2": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", + "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, + "requires": { + "readable-stream": ">=1.0.33-1 <1.1.0-0", + "xtend": ">=4.0.0 <4.1.0-0" + } + } + } + }, + "gulp-load-plugins": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-2.0.6.tgz", + "integrity": "sha512-HP5jUhPzvib37kWYLFvhDQJpBar2pXG7diFOFI4/PgCrQWobV5/MfnU0dMx0d5NfyJGcRrpUI1E0MROlLvNO4A==", + "dev": true, + "requires": { + "array-unique": "^0.3.2", + "fancy-log": "^1.2.0", + "findup-sync": "^4.0.0", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "micromatch": "^4.0.2", + "resolve": "^1.17.0" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "gulp-match": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/gulp-match/-/gulp-match-1.1.0.tgz", + "integrity": "sha512-DlyVxa1Gj24DitY2OjEsS+X6tDpretuxD6wTfhXE/Rw2hweqc1f6D/XtsJmoiCwLWfXgR87W9ozEityPCVzGtQ==", + "dev": true, + "requires": { + "minimatch": "^3.0.3" + } + }, + "gulp-real-favicon": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/gulp-real-favicon/-/gulp-real-favicon-0.3.2.tgz", + "integrity": "sha512-DNCv4BWcdcY12KBlZDUHZ7MSUzM6PEOdhiyLe3ClDjuzToAQf+T30X0A2zny8Jfg4pxBIrALKzbVw5nizRrEbQ==", + "dev": true, + "requires": { + "ansi-colors": "^1.1.0", + "fancy-log": "^1.3.2", + "plugin-error": "^1.0.1", + "rfg-api": "^0.5.0", + "through2": "^2.0.0" + } + }, + "gulp-requirejs-optimize": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/gulp-requirejs-optimize/-/gulp-requirejs-optimize-1.3.0.tgz", + "integrity": "sha512-6Jc8xg2tneeNVOv1cwiUtnDxJByTA2JCuJ1MbzKCvKcASdH8Y4kjJCE8Xpw1LNnkZwN18B5+vCRf9ZmEJQB6OQ==", + "dev": true, + "requires": { + "chalk": "^2.3.2", + "fancy-log": "^1.3.2", + "lodash.defaults": "^4.0.1", + "plugin-error": "^1.0.1", + "requirejs": "^2.2.0", + "through2": "^2.0.1", + "vinyl": "^2.1.0", + "vinyl-sourcemaps-apply": "^0.2.1" + } + }, + "gulp-sass": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-4.1.0.tgz", + "integrity": "sha512-xIiwp9nkBLcJDpmYHbEHdoWZv+j+WtYaKD6Zil/67F3nrAaZtWYN5mDwerdo7EvcdBenSAj7Xb2hx2DqURLGdA==", + "dev": true, + "requires": { + "chalk": "^2.3.0", + "lodash": "^4.17.11", + "node-sass": "^4.8.3", + "plugin-error": "^1.0.1", + "replace-ext": "^1.0.0", + "strip-ansi": "^4.0.0", + "through2": "^2.0.0", + "vinyl-sourcemaps-apply": "^0.2.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "gulp-sourcemaps": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-3.0.0.tgz", + "integrity": "sha512-RqvUckJkuYqy4VaIH60RMal4ZtG0IbQ6PXMNkNsshEGJ9cldUPRb/YCgboYae+CLAs1HQNb4ADTKCx65HInquQ==", + "dev": true, + "requires": { + "@gulp-sourcemaps/identity-map": "^2.0.1", + "@gulp-sourcemaps/map-sources": "^1.0.0", + "acorn": "^6.4.1", + "convert-source-map": "^1.0.0", + "css": "^3.0.0", + "debug-fabulous": "^1.0.0", + "detect-newline": "^2.0.0", + "graceful-fs": "^4.0.0", + "source-map": "^0.6.0", + "strip-bom-string": "^1.0.0", + "through2": "^2.0.0" + }, + "dependencies": { + "acorn": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", + "dev": true + } + } + }, + "gulp-stylelint": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/gulp-stylelint/-/gulp-stylelint-13.0.0.tgz", + "integrity": "sha512-qFWBXnYDsGy6ttzqptctMZjJhhGc0FdFE+UNPlj/5fTyuUo5mfxcc7pzN4hIJnvB79BO1WikLtdtXuC/G2AhGA==", + "dev": true, + "requires": { + "chalk": "^3.0.0", + "fancy-log": "^1.3.3", + "plugin-error": "^1.0.1", + "source-map": "^0.7.3", + "strip-ansi": "^6.0.0", + "through2": "^3.0.1" + }, + "dependencies": { + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "through2": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz", + "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==", + "dev": true, + "requires": { + "inherits": "^2.0.4", + "readable-stream": "2 || 3" + } + } + } + }, + "gulp-uglify": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz", + "integrity": "sha512-gk1dhB74AkV2kzqPMQBLA3jPoIAPd/nlNzP2XMDSG8XZrqnlCiDGAqC+rZOumzFvB5zOphlFh6yr3lgcAb/OOg==", + "dev": true, + "requires": { + "array-each": "^1.0.1", + "extend-shallow": "^3.0.2", + "gulplog": "^1.0.0", + "has-gulplog": "^0.1.0", + "isobject": "^3.0.1", + "make-error-cause": "^1.1.1", + "safe-buffer": "^5.1.2", + "through2": "^2.0.0", + "uglify-js": "^3.0.5", + "vinyl-sourcemaps-apply": "^0.2.0" + } + }, + "gulplog": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", + "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", + "dev": true, + "requires": { + "glogg": "^1.0.0" + } + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "dev": true + }, + "har-validator": { + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", + "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", + "dev": true, + "requires": { + "ajv": "^6.12.3", + "har-schema": "^2.0.0" + } + }, + "hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "has-binary2": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz", + "integrity": "sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw==", + "dev": true, + "requires": { + "isarray": "2.0.1" + }, + "dependencies": { + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true + } + } + }, + "has-cors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz", + "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=", + "dev": true + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true + }, + "has-gulplog": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", + "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", + "dev": true, + "requires": { + "sparkles": "^1.0.0" + } + }, + "has-symbols": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", + "dev": true + }, + "has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", + "dev": true, + "requires": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "dependencies": { + "kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "dev": true + }, + "homedir-polyfill": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", + "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", + "dev": true, + "requires": { + "parse-passwd": "^1.0.0" + } + }, + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "html-minifier": { + "version": "3.5.21", + "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz", + "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==", + "dev": true, + "requires": { + "camel-case": "3.0.x", + "clean-css": "4.2.x", + "commander": "2.17.x", + "he": "1.2.x", + "param-case": "2.1.x", + "relateurl": "0.2.x", + "uglify-js": "3.4.x" + }, + "dependencies": { + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "dev": true + }, + "uglify-js": { + "version": "3.4.10", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", + "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==", + "dev": true, + "requires": { + "commander": "~2.19.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true + } + } + } + } + }, + "html-tags": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz", + "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==", + "dev": true + }, + "htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dev": true, + "requires": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + } + } + }, + "http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dev": true, + "requires": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + } + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true + }, + "immutable": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", + "integrity": "sha1-wkOZUUVbs5kT2vKBN28VMOEErfM=", + "dev": true + }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "dependencies": { + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + } + } + }, + "import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "in-publish": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", + "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==", + "dev": true + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "dev": true + }, + "inline-source": { + "version": "6.1.10", + "resolved": "https://registry.npmjs.org/inline-source/-/inline-source-6.1.10.tgz", + "integrity": "sha512-v/1yBPb3YfomHuEbxsYJEw3jlhycn8IWjq671jsihwgwLN1pUsx45MTEwuMMinGNeH2pT9tWxpLEq98Etp+kUA==", + "dev": true, + "requires": { + "csso": "~3.5.1", + "htmlparser2": "^3.10.1", + "superagent": "~5.0.5", + "svgo": "~1.2.2", + "terser": "~3.17.0" + } + }, + "inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "rxjs": { + "version": "6.6.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", + "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "dev": true + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", + "dev": true + }, + "is-absolute": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", + "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, + "requires": { + "is-relative": "^1.0.0", + "is-windows": "^1.0.1" + } + }, + "is-accessor-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", + "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "dev": true + }, + "is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dev": true, + "requires": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dev": true, + "requires": { + "binary-extensions": "^2.0.0" + } + }, + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true + }, + "is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==" + }, + "is-core-module": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", + "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, + "is-data-descriptor": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", + "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", + "dev": true, + "requires": { + "kind-of": "^6.0.0" + } + }, + "is-date-object": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" + }, + "is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "dev": true + }, + "is-descriptor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", + "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", + "dev": true, + "requires": { + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" + } + }, + "is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true + }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-glob": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", + "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", + "dev": true, + "requires": { + "is-extglob": "^2.1.1" + } + }, + "is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "dev": true + }, + "is-negated-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", + "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", + "dev": true + }, + "is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" + }, + "is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "is-number-like": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", + "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", + "dev": true, + "requires": { + "lodash.isfinite": "^3.3.2" + } + }, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "dev": true + }, + "is-path-inside": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz", + "integrity": "sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg==", + "dev": true + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", + "dev": true + }, + "is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==", + "dev": true + }, + "is-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", + "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "requires": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.1" + } + }, + "is-regexp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz", + "integrity": "sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA==", + "dev": true + }, + "is-relative": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", + "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, + "requires": { + "is-unc-path": "^1.0.0" + } + }, + "is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", + "dev": true + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "requires": { + "has-symbols": "^1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", + "dev": true + }, + "is-unc-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", + "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, + "requires": { + "unc-path-regex": "^0.1.2" + } + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true + }, + "is-valid-glob": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", + "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", + "dev": true + }, + "is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true + }, + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "dev": true + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true + }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "dev": true + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonminify": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/jsonminify/-/jsonminify-0.2.3.tgz", + "integrity": "sha1-S4Qsij/l1qpIsvj5Whz5qAwBnY4=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "jsx-ast-utils": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", + "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", + "dev": true, + "requires": { + "array-includes": "^3.1.2", + "object.assign": "^4.1.2" + } + }, + "just-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz", + "integrity": "sha1-h/zPrv/AtozRnVX2cilD+SnqNeo=", + "dev": true + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true + }, + "known-css-properties": { + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.21.0.tgz", + "integrity": "sha512-sZLUnTqimCkvkgRS+kbPlYW5o8q5w1cu+uIisKpEWkj31I8mx8kNG162DwRav8Zirkva6N5uoFsm9kzK4mUXjw==", + "dev": true + }, + "last-run": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz", + "integrity": "sha1-RblpQsF7HHnHchmCWbqUO+v4yls=", + "dev": true, + "requires": { + "default-resolution": "^2.0.0", + "es6-weak-map": "^2.0.1" + } + }, + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, + "requires": { + "readable-stream": "^2.0.5" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "dev": true, + "requires": { + "invert-kv": "^1.0.0" + } + }, + "lead": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz", + "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=", + "dev": true, + "requires": { + "flush-write-stream": "^1.0.2" + } + }, + "leaflet": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/leaflet/-/leaflet-1.7.1.tgz", + "integrity": "sha512-/xwPEBidtg69Q3HlqPdU3DnrXQOvQU/CCHA1tcDQVzOwm91YMYaILjNp7L4Eaw5Z4sOYdbBz6koWyibppd8Zqw==" + }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, + "liftoff": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz", + "integrity": "sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==", + "dev": true, + "requires": { + "extend": "^3.0.0", + "findup-sync": "^3.0.0", + "fined": "^1.0.1", + "flagged-respawn": "^1.0.0", + "is-plain-object": "^2.0.4", + "object.map": "^1.0.0", + "rechoir": "^0.6.2", + "resolve": "^1.1.7" + }, + "dependencies": { + "findup-sync": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz", + "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^4.0.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + } + } + }, + "limiter": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", + "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==", + "dev": true + }, + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", + "dev": true + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" + }, + "dependencies": { + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "^1.2.0" + } + } + } + }, + "localtunnel": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-2.0.1.tgz", + "integrity": "sha512-LiaI5wZdz0xFkIQpXbNI62ZnNn8IMsVhwxHmhA+h4vj8R9JG/07bQHWwQlyy7b95/5fVOCHJfIHv+a5XnkvaJA==", + "dev": true, + "requires": { + "axios": "0.21.1", + "debug": "4.3.1", + "openurl": "1.1.1", + "yargs": "16.2.0" + }, + "dependencies": { + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz", + "integrity": "sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg==", + "dev": true + }, + "yargs": { + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "dev": true, + "requires": { + "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" + } + } + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", + "dev": true + }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=", + "dev": true + }, + "lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU=", + "dev": true + }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=", + "dev": true + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=", + "dev": true + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=", + "dev": true + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=", + "dev": true + }, + "lodash.isfinite": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", + "integrity": "sha1-+4m2WpqAKBgz8LdHizpRBPiY67M=", + "dev": true + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=", + "dev": true + }, + "lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=", + "dev": true + }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=", + "dev": true + }, + "lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU=", + "dev": true + }, + "lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha1-G7nzFO9ri63tE7VJFpsqlF62jk0=", + "dev": true + }, + "log-symbols": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz", + "integrity": "sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA==", + "dev": true, + "requires": { + "chalk": "^4.0.0" + }, + "dependencies": { + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + } + } + }, + "longest-streak": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz", + "integrity": "sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg==", + "dev": true + }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "dev": true, + "requires": { + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" + } + }, + "lower-case": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "requires": { + "yallist": "^4.0.0" + } + }, + "lru-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz", + "integrity": "sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM=", + "dev": true, + "requires": { + "es5-ext": "~0.10.2" + } + }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "dev": true + }, + "make-error-cause": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/make-error-cause/-/make-error-cause-1.2.2.tgz", + "integrity": "sha1-3wOI/NCzeBbf8KX7gQiTl3fcvJ0=", + "dev": true, + "requires": { + "make-error": "^1.2.0" + } + }, + "make-iterator": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz", + "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==", + "dev": true, + "requires": { + "kind-of": "^6.0.2" + } + }, + "map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", + "dev": true + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", + "dev": true + }, + "map-stream": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz", + "integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=", + "dev": true + }, + "map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "dev": true, + "requires": { + "object-visit": "^1.0.0" + } + }, + "match-stream": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/match-stream/-/match-stream-0.0.2.tgz", + "integrity": "sha1-mesFAJOzTf+t5CG5rAtBCpz6F88=", + "dev": true, + "requires": { + "buffers": "~0.1.1", + "readable-stream": "~1.0.0" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + } + } + }, + "matchdep": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz", + "integrity": "sha1-xvNINKDY28OzfCfui7yyfHd1WC4=", + "dev": true, + "requires": { + "findup-sync": "^2.0.0", + "micromatch": "^3.0.4", + "resolve": "^1.4.0", + "stack-trace": "0.0.10" + }, + "dependencies": { + "findup-sync": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", + "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "dev": true, + "requires": { + "detect-file": "^1.0.0", + "is-glob": "^3.1.0", + "micromatch": "^3.0.4", + "resolve-dir": "^1.0.1" + } + }, + "is-glob": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", + "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "mathml-tag-names": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz", + "integrity": "sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg==", + "dev": true + }, + "md5": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", + "integrity": "sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g==", + "dev": true, + "requires": { + "charenc": "0.0.2", + "crypt": "0.0.2", + "is-buffer": "~1.1.6" + } + }, + "mdast-util-from-markdown": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", + "integrity": "sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ==", + "dev": true, + "requires": { + "@types/mdast": "^3.0.0", + "mdast-util-to-string": "^2.0.0", + "micromark": "~2.11.0", + "parse-entities": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "mdast-util-to-markdown": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz", + "integrity": "sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "longest-streak": "^2.0.0", + "mdast-util-to-string": "^2.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.0.0", + "zwitch": "^1.0.0" + } + }, + "mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", + "dev": true + }, + "mdn-data": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-1.1.4.tgz", + "integrity": "sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA==", + "dev": true + }, + "memoizee": { + "version": "0.4.15", + "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz", + "integrity": "sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ==", + "dev": true, + "requires": { + "d": "^1.0.1", + "es5-ext": "^0.10.53", + "es6-weak-map": "^2.0.3", + "event-emitter": "^0.3.5", + "is-promise": "^2.2.2", + "lru-queue": "^0.1.0", + "next-tick": "^1.1.0", + "timers-ext": "^0.1.7" + } + }, + "meow": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz", + "integrity": "sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ==", + "dev": true, + "requires": { + "@types/minimist": "^1.2.0", + "camelcase-keys": "^6.2.2", + "decamelize": "^1.2.0", + "decamelize-keys": "^1.1.0", + "hard-rejection": "^2.1.0", + "minimist-options": "4.1.0", + "normalize-package-data": "^3.0.0", + "read-pkg-up": "^7.0.1", + "redent": "^3.0.0", + "trim-newlines": "^3.0.0", + "type-fest": "^0.18.0", + "yargs-parser": "^20.2.3" + }, + "dependencies": { + "hosted-git-info": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", + "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "normalize-package-data": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz", + "integrity": "sha512-6lUjEI0d3v6kFrtgA/lOx4zHCWULXsFNIjHolnZCKCTLA6m/G625cdn3O7eNmT0iD3jfo6HZ9cdImGZwf21prw==", + "dev": true, + "requires": { + "hosted-git-info": "^3.0.6", + "resolve": "^1.17.0", + "semver": "^7.3.2", + "validate-npm-package-license": "^3.0.1" + } + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dev": true, + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", + "dev": true + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "dev": true + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dev": true, + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "dependencies": { + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + } + } + }, + "semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "dev": true, + "requires": { + "lru-cache": "^6.0.0" + } + }, + "type-fest": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", + "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", + "dev": true + } + } + }, + "merge-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", + "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true + }, + "metaparser": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/metaparser/-/metaparser-1.0.7.tgz", + "integrity": "sha1-wGmaZoageovOGsBrYulGLC5mqso=", + "dev": true, + "requires": { + "async": "*", + "cheerio": "*", + "mkdirp": "*", + "underscore": "*" + }, + "dependencies": { + "async": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==", + "dev": true + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + } + } + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "dev": true + }, + "micromark": { + "version": "2.11.4", + "resolved": "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz", + "integrity": "sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA==", + "dev": true, + "requires": { + "debug": "^4.0.0", + "parse-entities": "^2.0.0" + } + }, + "micromatch": { + "version": "3.1.10", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", + "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + } + } + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true + }, + "mime-db": { + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", + "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==", + "dev": true + }, + "mime-types": { + "version": "2.1.28", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", + "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", + "dev": true, + "requires": { + "mime-db": "1.45.0" + } + }, + "mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true + }, + "min-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "^1.1.7" + } + }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "minimist-options": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, + "requires": { + "arrify": "^1.0.1", + "is-plain-obj": "^1.1.0", + "kind-of": "^6.0.3" + }, + "dependencies": { + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + } + } + }, + "mitt": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", + "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", + "dev": true + }, + "mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "dev": true, + "requires": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "mkdirp": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, + "moment": { + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz", + "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "mute-stdout": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz", + "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==", + "dev": true + }, + "mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "dev": true + }, + "nan": { + "version": "2.14.2", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", + "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==", + "dev": true + }, + "nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "dev": true, + "requires": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + } + } + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "navigo": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/navigo/-/navigo-7.1.3.tgz", + "integrity": "sha512-dFsj+a0ml09P4rtX8xzsPl/SXb15YOTes7vjDSTsifRAMJ400+M4Hb5oiI9L5fhmaILBrzp0Y0o0+DZ+f3NLfw==" + }, + "negotiator": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==", + "dev": true + }, + "next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==", + "dev": true + }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, + "no-case": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", + "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, + "requires": { + "lower-case": "^1.1.1" + } + }, + "node-gyp": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", + "dev": true, + "requires": { + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" + }, + "dependencies": { + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", + "dev": true + } + } + }, + "node-polyglot": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/node-polyglot/-/node-polyglot-2.2.2.tgz", + "integrity": "sha1-Gj921zkvg26ggjg27egX5upuwmw=", + "requires": { + "for-each": "^0.3.2", + "has": "^1.0.1", + "string.prototype.trim": "^1.1.2", + "warning": "^3.0.0" + } + }, + "node-releases": { + "version": "1.1.70", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz", + "integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==", + "dev": true + }, + "node-sass": { + "version": "4.14.1", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz", + "integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==", + "dev": true, + "requires": { + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash": "^4.17.15", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.13.2", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "2.2.5", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", + "dev": true + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "dev": true, + "requires": { + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" + } + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "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" + } + }, + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "dev": true, + "requires": { + "lru-cache": "^4.0.1", + "which": "^1.2.9" + } + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "^2.0.0" + } + }, + "lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dev": true, + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "dev": true, + "requires": { + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "dev": true, + "requires": { + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, + "requires": { + "get-stdin": "^4.0.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", + "dev": true + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } + } + }, + "node-unzip-2": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/node-unzip-2/-/node-unzip-2-0.2.8.tgz", + "integrity": "sha512-fmJi73zTRW7RSo/1wyrKc2srKMwb3L6Ppke/7elzQ0QRt6sUjfiIcVsWdrqO5uEHAdvRKXjoySuo4HYe5BB0rw==", + "dev": true, + "requires": { + "binary": "~0.3.0", + "fstream": "~1.0.12", + "match-stream": "~0.0.2", + "pullstream": "~0.4.0", + "readable-stream": "~1.0.0", + "setimmediate": "~1.0.1" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + } + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "dev": true, + "requires": { + "abbrev": "1" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dev": true, + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "normalize-selector": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz", + "integrity": "sha1-0LFF62kRicY6eNIB3E/bEpPvDAM=", + "dev": true + }, + "now-and-later": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz", + "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==", + "dev": true, + "requires": { + "once": "^1.3.2" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dev": true, + "requires": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dev": true, + "requires": { + "boolbase": "~1.0.0" + } + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", + "dev": true, + "requires": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "object-inspect": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", + "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==" + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", + "dev": true, + "requires": { + "isobject": "^3.0.0" + } + }, + "object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" + } + }, + "object.defaults": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz", + "integrity": "sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8=", + "dev": true, + "requires": { + "array-each": "^1.0.1", + "array-slice": "^1.0.0", + "for-own": "^1.0.0", + "isobject": "^3.0.0" + } + }, + "object.entries": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", + "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has": "^1.0.3" + } + }, + "object.fromentries": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz", + "integrity": "sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has": "^1.0.3" + } + }, + "object.getownpropertydescriptors": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.1.tgz", + "integrity": "sha512-6DtXgZ/lIZ9hqx4GtZETobXLR/ZLaa0aqV0kzbn80Rf8Z2e/XFnhA0I7p07N2wH8bBBltr2xQPi6sbKWAY2Eng==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + } + }, + "object.map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", + "integrity": "sha1-z4Plncj8wK1fQlDh94s7gb2AHTc=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "object.reduce": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz", + "integrity": "sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60=", + "dev": true, + "requires": { + "for-own": "^1.0.0", + "make-iterator": "^1.0.0" + } + }, + "object.values": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz", + "integrity": "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has": "^1.0.3" + } + }, + "on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1" + } + }, + "onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "requires": { + "mimic-fn": "^2.1.0" + } + }, + "openurl": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", + "integrity": "sha1-OHW0sO96UsFW8NtB1GCduw+Us4c=", + "dev": true + }, + "opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "dependencies": { + "levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + } + }, + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "requires": { + "prelude-ls": "^1.2.1" + } + } + } + }, + "ordered-read-streams": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", + "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "dev": true, + "requires": { + "lcid": "^1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "osenv": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "dev": true, + "requires": { + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" + } + }, + "over": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/over/-/over-0.0.5.tgz", + "integrity": "sha1-8phS5w/X4l82DgE6jsRMgq7bVwg=", + "dev": true + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true + }, + "param-case": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", + "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, + "requires": { + "no-case": "^2.2.0" + } + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dev": true, + "requires": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + } + }, + "parse-filepath": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz", + "integrity": "sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE=", + "dev": true, + "requires": { + "is-absolute": "^1.0.0", + "map-cache": "^0.2.0", + "path-root": "^0.1.1" + } + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "dev": true + }, + "parse-passwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", + "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", + "dev": true + }, + "parseqs": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz", + "integrity": "sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w==", + "dev": true + }, + "parseuri": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz", + "integrity": "sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow==", + "dev": true + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "dev": true + }, + "pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", + "dev": true + }, + "path-dirname": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", + "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "dev": true + }, + "path-root": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", + "integrity": "sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc=", + "dev": true, + "requires": { + "path-root-regex": "^0.1.0" + } + }, + "path-root-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz", + "integrity": "sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0=", + "dev": true + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", + "dev": true + }, + "picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "^2.0.0" + } + }, + "plugin-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" + } + }, + "portscanner": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.1.1.tgz", + "integrity": "sha1-6rtAnk3iSVD1oqUW01rnaTQ/u5Y=", + "dev": true, + "requires": { + "async": "1.5.2", + "is-number-like": "^1.0.3" + } + }, + "posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", + "dev": true + }, + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "postcss-html": { + "version": "0.36.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz", + "integrity": "sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw==", + "dev": true, + "requires": { + "htmlparser2": "^3.10.0" + } + }, + "postcss-less": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz", + "integrity": "sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA==", + "dev": true, + "requires": { + "postcss": "^7.0.14" + } + }, + "postcss-media-query-parser": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ=", + "dev": true + }, + "postcss-resolve-nested-selector": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz", + "integrity": "sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4=", + "dev": true + }, + "postcss-safe-parser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz", + "integrity": "sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g==", + "dev": true, + "requires": { + "postcss": "^7.0.26" + } + }, + "postcss-sass": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.4.4.tgz", + "integrity": "sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg==", + "dev": true, + "requires": { + "gonzales-pe": "^4.3.0", + "postcss": "^7.0.21" + } + }, + "postcss-scss": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz", + "integrity": "sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA==", + "dev": true, + "requires": { + "postcss": "^7.0.6" + } + }, + "postcss-selector-parser": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", + "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1", + "util-deprecate": "^1.0.2" + } + }, + "postcss-syntax": { + "version": "0.36.2", + "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz", + "integrity": "sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w==", + "dev": true, + "requires": {} + }, + "postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "pretty-hrtime": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", + "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", + "dev": true + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true + }, + "prop-types": { + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "dev": true, + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" + } + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", + "dev": true + }, + "pullstream": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/pullstream/-/pullstream-0.4.1.tgz", + "integrity": "sha1-1vs79a7Wl+gxFQ6xACwlo/iuExQ=", + "dev": true, + "requires": { + "over": ">= 0.0.5 < 1", + "readable-stream": "~1.0.31", + "setimmediate": ">= 1.0.2 < 2", + "slice-stream": ">= 1.0.0 < 2" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + } + } + }, + "pump": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", + "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "pumpify": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", + "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, + "requires": { + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + }, + "qs": { + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz", + "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=", + "dev": true + }, + "queue-microtask": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz", + "integrity": "sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg==", + "dev": true + }, + "quick-lru": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "dev": true + }, + "quickselect": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz", + "integrity": "sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==" + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "dev": true + }, + "raw-body": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz", + "integrity": "sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA==", + "dev": true, + "requires": { + "bytes": "3.1.0", + "http-errors": "1.7.3", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "dependencies": { + "http-errors": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz", + "integrity": "sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + } + }, + "setprototypeof": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", + "dev": true + } + } + }, + "rbush": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz", + "integrity": "sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w==", + "requires": { + "quickselect": "^2.0.0" + } + }, + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", + "dev": true + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "dev": true, + "requires": { + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" + }, + "dependencies": { + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + } + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "dev": true, + "requires": { + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" + }, + "dependencies": { + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, + "requires": { + "pinkie-promise": "^2.0.0" + } + } + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "requires": { + "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" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + } + } + }, + "readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", + "dev": true, + "requires": { + "picomatch": "^2.2.1" + } + }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "requires": { + "resolve": "^1.1.6" + } + }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "dev": true, + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" + } + }, + "regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + } + }, + "regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "regexpp": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==", + "dev": true + }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true + }, + "remark": { + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/remark/-/remark-13.0.0.tgz", + "integrity": "sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA==", + "dev": true, + "requires": { + "remark-parse": "^9.0.0", + "remark-stringify": "^9.0.0", + "unified": "^9.1.0" + } + }, + "remark-parse": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz", + "integrity": "sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw==", + "dev": true, + "requires": { + "mdast-util-from-markdown": "^0.8.0" + } + }, + "remark-stringify": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz", + "integrity": "sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg==", + "dev": true, + "requires": { + "mdast-util-to-markdown": "^0.6.0" + } + }, + "remove-bom-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", + "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==", + "dev": true, + "requires": { + "is-buffer": "^1.1.5", + "is-utf8": "^0.2.1" + } + }, + "remove-bom-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz", + "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=", + "dev": true, + "requires": { + "remove-bom-buffer": "^3.0.0", + "safe-buffer": "^5.1.0", + "through2": "^2.0.3" + } + }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, + "repeat-element": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", + "dev": true + }, + "repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "^1.0.0" + } + }, + "replace-ext": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz", + "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==", + "dev": true + }, + "replace-homedir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz", + "integrity": "sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw=", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1", + "is-absolute": "^1.0.0", + "remove-trailing-separator": "^1.1.0" + } + }, + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dev": true, + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "qs": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", + "dev": true + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "dev": true + } + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "dev": true + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "dev": true + }, + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "dev": true + }, + "requirejs": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz", + "integrity": "sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg==" + }, + "requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", + "dev": true + }, + "resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "requires": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + } + }, + "resolve-dir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", + "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.0", + "global-modules": "^1.0.0" + }, + "dependencies": { + "global-modules": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", + "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "dev": true, + "requires": { + "global-prefix": "^1.0.1", + "is-windows": "^1.0.1", + "resolve-dir": "^1.0.0" + } + }, + "global-prefix": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", + "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "dev": true, + "requires": { + "expand-tilde": "^2.0.2", + "homedir-polyfill": "^1.0.1", + "ini": "^1.3.4", + "is-windows": "^1.0.1", + "which": "^1.2.14" + } + } + } + }, + "resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true + }, + "resolve-options": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz", + "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=", + "dev": true, + "requires": { + "value-or-function": "^3.0.0" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "resp-modifier": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/resp-modifier/-/resp-modifier-6.0.2.tgz", + "integrity": "sha1-sSTeXE+6/LpUH0j/pzlw9KpFa08=", + "dev": true, + "requires": { + "debug": "^2.2.0", + "minimatch": "^3.0.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dev": true, + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "ret": { + "version": "0.1.15", + "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "dev": true + }, + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "dev": true + }, + "rfg-api": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/rfg-api/-/rfg-api-0.5.1.tgz", + "integrity": "sha512-F4JJDx7gTFcGNybw+0trDFSYjuy2hbdqDqdaNBkMdSVlasglkfwyTWHTFqSUOLszbpZLwatLy0dxAJonNZi6hw==", + "dev": true, + "requires": { + "axios": "^0.18.0", + "fstream": "^1.0.2", + "metaparser": "^1.0.7", + "mkdirp": "^0.5.0", + "node-unzip-2": "^0.2.7" + }, + "dependencies": { + "axios": { + "version": "0.18.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz", + "integrity": "sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g==", + "dev": true, + "requires": { + "follow-redirects": "1.5.10", + "is-buffer": "^2.0.2" + } + }, + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "follow-redirects": { + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", + "dev": true, + "requires": { + "debug": "=3.1.0" + } + }, + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true + } + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "dev": true + }, + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "dev": true, + "requires": { + "queue-microtask": "^1.2.2" + } + }, + "rx": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", + "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", + "dev": true + }, + "rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "dev": true, + "requires": { + "symbol-observable": "1.0.1" + } + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "dev": true + }, + "safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", + "dev": true, + "requires": { + "ret": "~0.1.10" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, + "sass-graph": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz", + "integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==", + "dev": true, + "requires": { + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^13.3.2" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, + "requires": { + "color-convert": "^1.9.0" + } + }, + "cliui": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", + "dev": true, + "requires": { + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dev": true, + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dev": true, + "requires": { + "ansi-regex": "^4.1.0" + } + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + }, + "yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dev": true, + "requires": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" + } + }, + "yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", + "dev": true + }, + "scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "dev": true, + "requires": { + "js-base64": "^2.1.8", + "source-map": "^0.4.2" + }, + "dependencies": { + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "dev": true, + "requires": { + "amdefine": ">=0.0.4" + } + } + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + }, + "semver-greatest-satisfied-range": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz", + "integrity": "sha1-E+jCZYq5aRywzXEJMkAoDTb3els=", + "dev": true, + "requires": { + "sver-compat": "^1.5.0" + } + }, + "send": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true + } + } + }, + "serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } + } + }, + "serve-static": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", + "send": "0.16.2" + } + }, + "server-destroy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", + "integrity": "sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0=", + "dev": true + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", + "dev": true + }, + "set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "dev": true, + "requires": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "dependencies": { + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + } + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, + "slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + } + } + }, + "slice-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-stream/-/slice-stream-1.0.0.tgz", + "integrity": "sha1-WzO9ZvATsaf4ZGCwPUY97DmtPqA=", + "dev": true, + "requires": { + "readable-stream": "~1.0.31" + }, + "dependencies": { + "isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true + }, + "readable-stream": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + } + } + }, + "snabbdom": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/snabbdom/-/snabbdom-0.7.4.tgz", + "integrity": "sha512-nnN+7uZ2NTIiu7EPMNwSDhmrYXqwlfCP/j72RdzvDPujXyvQxOW7Jl9yuLayzxMHDNWQR7FM6Pcn4wnDpKRe6Q==" + }, + "snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "dev": true, + "requires": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, + "requires": { + "is-extendable": "^0.1.0" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "dev": true, + "requires": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "dependencies": { + "define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", + "dev": true, + "requires": { + "is-descriptor": "^1.0.0" + } + } + } + }, + "snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "dev": true, + "requires": { + "kind-of": "^3.2.0" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "socket.io": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.4.0.tgz", + "integrity": "sha512-9UPJ1UTvKayuQfVv2IQ3k7tCQC/fboDyIK62i99dAQIyHKaBsNdTpwHLgKJ6guRWxRtC9H+138UwpaGuQO9uWQ==", + "dev": true, + "requires": { + "debug": "~4.1.0", + "engine.io": "~3.5.0", + "has-binary2": "~1.0.2", + "socket.io-adapter": "~1.1.0", + "socket.io-client": "2.4.0", + "socket.io-parser": "~3.4.0" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "socket.io-adapter": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz", + "integrity": "sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g==", + "dev": true + }, + "socket.io-client": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.4.0.tgz", + "integrity": "sha512-M6xhnKQHuuZd4Ba9vltCLT9oa+YvTsP8j9NcEiLElfIg8KeYPyhWOes6x4t+LTAC8enQbE/995AdTem2uNyKKQ==", + "dev": true, + "requires": { + "backo2": "1.0.2", + "component-bind": "1.0.0", + "component-emitter": "~1.3.0", + "debug": "~3.1.0", + "engine.io-client": "~3.5.0", + "has-binary2": "~1.0.2", + "indexof": "0.0.1", + "parseqs": "0.0.6", + "parseuri": "0.0.6", + "socket.io-parser": "~3.3.0", + "to-array": "0.1.4" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true + }, + "socket.io-parser": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.2.tgz", + "integrity": "sha512-FJvDBuOALxdCI9qwRrO/Rfp9yfndRtc1jSgVgV8FDraihmSP/MLGD5PEuJrNfjALvcQ+vMDM/33AWOYP/JSjDg==", + "dev": true, + "requires": { + "component-emitter": "~1.3.0", + "debug": "~3.1.0", + "isarray": "2.0.1" + } + } + } + }, + "socket.io-parser": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.1.tgz", + "integrity": "sha512-11hMgzL+WCLWf1uFtHSNvliI++tcRUWdoeYuwIl+Axvwy9z2gQM+7nJyN3STj1tLj5JyIUH8/gpDGxzAlDdi0A==", + "dev": true, + "requires": { + "component-emitter": "1.2.1", + "debug": "~4.1.0", + "isarray": "2.0.1" + }, + "dependencies": { + "component-emitter": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", + "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", + "dev": true + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "isarray": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", + "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", + "dev": true + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "dev": true, + "requires": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dev": true, + "requires": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "dev": true + }, + "sparkles": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", + "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==", + "dev": true + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dev": true, + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", + "dev": true + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dev": true, + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", + "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", + "dev": true + }, + "specificity": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", + "dev": true + }, + "split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "dev": true, + "requires": { + "extend-shallow": "^3.0.0" + } + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dev": true, + "requires": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + } + }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "dev": true + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=", + "dev": true + }, + "static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", + "dev": true, + "requires": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + } + }, + "statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "dev": true + }, + "stdout-stream": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", + "dev": true, + "requires": { + "readable-stream": "^2.0.1" + } + }, + "stream-exhaust": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz", + "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==", + "dev": true + }, + "stream-shift": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", + "dev": true + }, + "stream-throttle": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz", + "integrity": "sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM=", + "dev": true, + "requires": { + "commander": "^2.2.0", + "limiter": "^1.0.5" + } + }, + "stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "dev": true, + "requires": { + "any-promise": "^1.1.0" + } + }, + "string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true + }, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "dev": true, + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true + } + } + }, + "string.prototype.matchall": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.3.tgz", + "integrity": "sha512-OBxYDA2ifZQ2e13cP82dWFMaCV9CGF8GzmN4fljBVw5O5wep0lu4gacm1OL6MjROoUnB8VbkWRThqkV2YFLNxw==", + "dev": true, + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has-symbols": "^1.0.1", + "internal-slot": "^1.0.2", + "regexp.prototype.flags": "^1.3.0", + "side-channel": "^1.0.3" + } + }, + "string.prototype.trim": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.3.tgz", + "integrity": "sha512-16IL9pIBA5asNOSukPfxX2W68BaBvxyiRK16H3RA/lWW9BDosh+w7f+LhomPHpXJ82QEe7w7/rY/S1CV97raLg==", + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + } + }, + "string.prototype.trimend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz", + "integrity": "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==", + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + } + }, + "string.prototype.trimstart": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz", + "integrity": "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==", + "requires": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dev": true, + "requires": { + "ansi-regex": "^5.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + } + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, + "requires": { + "is-utf8": "^0.2.0" + } + }, + "strip-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI=", + "dev": true + }, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "dev": true, + "requires": { + "min-indent": "^1.0.0" + } + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "style-search": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", + "integrity": "sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI=", + "dev": true + }, + "stylelint": { + "version": "13.10.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-13.10.0.tgz", + "integrity": "sha512-eDuLrL0wzPKbl5/TbNGZcbw0lTIGbDEr5W6lCODvb1gAg0ncbgCRt7oU0C2VFDvbrcY0A3MFZOwltwTRmc0XCw==", + "dev": true, + "requires": { + "@stylelint/postcss-css-in-js": "^0.37.2", + "@stylelint/postcss-markdown": "^0.36.2", + "autoprefixer": "^9.8.6", + "balanced-match": "^1.0.0", + "chalk": "^4.1.0", + "cosmiconfig": "^7.0.0", + "debug": "^4.3.1", + "execall": "^2.0.0", + "fast-glob": "^3.2.5", + "fastest-levenshtein": "^1.0.12", + "file-entry-cache": "^6.0.0", + "get-stdin": "^8.0.0", + "global-modules": "^2.0.0", + "globby": "^11.0.2", + "globjoin": "^0.1.4", + "html-tags": "^3.1.0", + "ignore": "^5.1.8", + "import-lazy": "^4.0.0", + "imurmurhash": "^0.1.4", + "known-css-properties": "^0.21.0", + "lodash": "^4.17.20", + "log-symbols": "^4.0.0", + "mathml-tag-names": "^2.1.3", + "meow": "^9.0.0", + "micromatch": "^4.0.2", + "normalize-selector": "^0.2.0", + "postcss": "^7.0.35", + "postcss-html": "^0.36.0", + "postcss-less": "^3.1.4", + "postcss-media-query-parser": "^0.2.3", + "postcss-resolve-nested-selector": "^0.1.1", + "postcss-safe-parser": "^4.0.2", + "postcss-sass": "^0.4.4", + "postcss-scss": "^2.1.1", + "postcss-selector-parser": "^6.0.4", + "postcss-syntax": "^0.36.2", + "postcss-value-parser": "^4.1.0", + "resolve-from": "^5.0.0", + "slash": "^3.0.0", + "specificity": "^0.4.1", + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "style-search": "^0.1.0", + "sugarss": "^2.0.0", + "svg-tags": "^1.0.0", + "table": "^6.0.7", + "v8-compile-cache": "^2.2.0", + "write-file-atomic": "^3.0.3" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "get-stdin": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz", + "integrity": "sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==", + "dev": true + }, + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "dev": true + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dev": true, + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "requires": { + "is-number": "^7.0.0" + } + } + } + }, + "stylelint-config-recommended": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz", + "integrity": "sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ==", + "dev": true, + "requires": {} + }, + "stylelint-config-standard": { + "version": "20.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz", + "integrity": "sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA==", + "dev": true, + "requires": { + "stylelint-config-recommended": "^3.0.0" + } + }, + "sugarss": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", + "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", + "dev": true, + "requires": { + "postcss": "^7.0.2" + } + }, + "superagent": { + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/superagent/-/superagent-5.0.9.tgz", + "integrity": "sha512-aOBxh0xN3nCcaG0oot9apJe77FzzCOsg469l06Nw0gW7p9q0mfyAOhSiCLzHCFxKKCNtTx8cxymqoY2cGUfV8g==", + "dev": true, + "requires": { + "component-emitter": "^1.3.0", + "cookiejar": "^2.1.2", + "debug": "^4.1.1", + "fast-safe-stringify": "^2.0.6", + "form-data": "^2.3.3", + "formidable": "^1.2.1", + "methods": "^1.1.2", + "mime": "^2.4.4", + "qs": "^6.7.0", + "readable-stream": "^3.4.0", + "semver": "^6.1.1" + }, + "dependencies": { + "mime": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz", + "integrity": "sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag==", + "dev": true + }, + "qs": { + "version": "6.9.6", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz", + "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==", + "dev": true + }, + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "dev": true + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dev": true, + "requires": { + "safe-buffer": "~5.2.0" + } + } + } + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + }, + "dependencies": { + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + } + } + }, + "sver-compat": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz", + "integrity": "sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg=", + "dev": true, + "requires": { + "es6-iterator": "^2.0.1", + "es6-symbol": "^3.1.1" + } + }, + "svg-tags": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz", + "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=", + "dev": true + }, + "svgo": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.2.2.tgz", + "integrity": "sha512-rAfulcwp2D9jjdGu+0CuqlrAUin6bBWrpoqXWwKDZZZJfXcUXQSxLJOFJCQCSA0x0pP2U0TxSlJu2ROq5Bq6qA==", + "dev": true, + "requires": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.28", + "css-url-regex": "^1.1.0", + "csso": "^3.5.1", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" + } + }, + "symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true + }, + "table": { + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/table/-/table-6.0.7.tgz", + "integrity": "sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g==", + "dev": true, + "requires": { + "ajv": "^7.0.2", + "lodash": "^4.17.20", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.0" + }, + "dependencies": { + "ajv": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-7.1.0.tgz", + "integrity": "sha512-svS9uILze/cXbH0z2myCK2Brqprx/+JJYK5pHicT/GQiBfzzhUVAIT6MwqJg8y4xV/zoGsUeuPuwtoiKSGE15g==", + "dev": true, + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", + "dev": true + } + } + }, + "tar": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", + "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", + "dev": true, + "requires": { + "block-stream": "*", + "fstream": "^1.0.12", + "inherits": "2" + } + }, + "temp-write": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/temp-write/-/temp-write-2.1.0.tgz", + "integrity": "sha1-WYkJGODvCdVIqqNC9L00CdhATpY=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "os-tmpdir": "^1.0.0", + "pify": "^2.2.0", + "pinkie-promise": "^2.0.0", + "uuid": "^2.0.1" + } + }, + "ternary-stream": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ternary-stream/-/ternary-stream-2.1.1.tgz", + "integrity": "sha512-j6ei9hxSoyGlqTmoMjOm+QNvUKDOIY6bNl4Uh1lhBvl6yjPW2iLqxDUYyfDPZknQ4KdRziFl+ec99iT4l7g0cw==", + "dev": true, + "requires": { + "duplexify": "^3.5.0", + "fork-stream": "^0.0.4", + "merge-stream": "^1.0.0", + "through2": "^2.0.1" + } + }, + "terser": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz", + "integrity": "sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==", + "dev": true, + "requires": { + "commander": "^2.19.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.10" + } + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "tfunk": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tfunk/-/tfunk-4.0.0.tgz", + "integrity": "sha512-eJQ0dGfDIzWNiFNYFVjJ+Ezl/GmwHaFTBTjrtqNPW0S7cuVDBrZrmzUz6VkMeCR4DZFqhd4YtLwsw3i2wYHswQ==", + "dev": true, + "requires": { + "chalk": "^1.1.3", + "dlv": "^1.1.3" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "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" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "^2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "dev": true, + "requires": { + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" + } + }, + "through2-filter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz", + "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==", + "dev": true, + "requires": { + "through2": "~2.0.0", + "xtend": "~4.0.0" + } + }, + "time-stamp": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", + "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=", + "dev": true + }, + "timers-ext": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz", + "integrity": "sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ==", + "dev": true, + "requires": { + "es5-ext": "~0.10.46", + "next-tick": "1" + } + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "~1.0.2" + } + }, + "to-absolute-glob": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", + "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", + "dev": true, + "requires": { + "is-absolute": "^1.0.0", + "is-negated-glob": "^1.0.0" + } + }, + "to-array": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz", + "integrity": "sha1-F+bBH3PdTz10zaek/zI46a2b+JA=", + "dev": true + }, + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + }, + "to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", + "dev": true, + "requires": { + "kind-of": "^3.0.2" + }, + "dependencies": { + "kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, + "requires": { + "is-buffer": "^1.1.5" + } + } + } + }, + "to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "dev": true, + "requires": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "dependencies": { + "define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "dev": true, + "requires": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + } + } + } + }, + "to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", + "dev": true, + "requires": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + } + }, + "to-through": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz", + "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=", + "dev": true, + "requires": { + "through2": "^2.0.3" + } + }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", + "dev": true + }, + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dev": true, + "requires": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + } + }, + "traverse": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz", + "integrity": "sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk=", + "dev": true + }, + "trim-newlines": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz", + "integrity": "sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA==", + "dev": true + }, + "trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "dev": true + }, + "true-case-path": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", + "dev": true, + "requires": { + "glob": "^7.1.2" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==", + "dev": true + }, + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2" + } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true + }, + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true + }, + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dev": true, + "requires": { + "is-typedarray": "^1.0.0" + } + }, + "ua-parser-js": { + "version": "0.7.24", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.24.tgz", + "integrity": "sha512-yo+miGzQx5gakzVK3QFfN0/L9uVhosXBBO7qmnk7c2iw1IhL212wfA3zbnI54B0obGwC/5NWub/iT9sReMx+Fw==", + "dev": true + }, + "uglify-js": { + "version": "3.12.8", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.8.tgz", + "integrity": "sha512-fvBeuXOsvqjecUtF/l1dwsrrf5y2BCUk9AOJGzGcm6tE7vegku5u/YvqjyDaAGr422PLoLnrxg3EnRvTqsdC1w==", + "dev": true + }, + "unc-path-regex": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", + "dev": true + }, + "underscore": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz", + "integrity": "sha512-21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ==", + "dev": true + }, + "undertaker": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz", + "integrity": "sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg==", + "dev": true, + "requires": { + "arr-flatten": "^1.0.1", + "arr-map": "^2.0.0", + "bach": "^1.0.0", + "collection-map": "^1.0.0", + "es6-weak-map": "^2.0.1", + "fast-levenshtein": "^1.0.0", + "last-run": "^1.1.0", + "object.defaults": "^1.0.0", + "object.reduce": "^1.0.0", + "undertaker-registry": "^1.0.0" + }, + "dependencies": { + "fast-levenshtein": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz", + "integrity": "sha1-5qdUzI8V5YmHqpy9J69m/W9OWvk=", + "dev": true + } + } + }, + "undertaker-registry": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz", + "integrity": "sha1-XkvaMI5KiirlhPm5pDWaSZglzFA=", + "dev": true + }, + "unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dev": true, + "requires": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true + }, + "is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "dev": true + } + } + }, + "union-value": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/union-value/-/union-value-2.0.1.tgz", + "integrity": "sha512-NmcRHHhUy1qWmp6yYWsaURV2qwfS24TmTtO9S9x0L41wCNNVBQFD3toOzO0cd8SsNrFhbw/O0iYO5uffXGYocw==", + "dev": true, + "requires": { + "get-value": "^3.0.1", + "set-value": "^3.0.0" + }, + "dependencies": { + "get-value": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz", + "integrity": "sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA==", + "dev": true, + "requires": { + "isobject": "^3.0.1" + } + }, + "set-value": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/set-value/-/set-value-3.0.2.tgz", + "integrity": "sha512-npjkVoz+ank0zjlV9F47Fdbjfj/PfXyVhZvGALWsyIYU/qrMzpi6avjKW3/7KeSU2Df3I46BrN1xOI1+6vW0hA==", + "dev": true, + "requires": { + "is-plain-object": "^2.0.4" + } + } + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + }, + "unique-stream": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz", + "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==", + "dev": true, + "requires": { + "json-stable-stringify-without-jsonify": "^1.0.1", + "through2-filter": "^3.0.0" + } + }, + "unist-util-find-all-after": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz", + "integrity": "sha512-xaTC/AGZ0rIM2gM28YVRAFPIZpzbpDtU3dRmp7EXlNVA8ziQc4hY3H7BHXM1J49nEmiqc3svnqMReW+PGqbZKQ==", + "dev": true, + "requires": { + "unist-util-is": "^4.0.0" + } + }, + "unist-util-is": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.4.tgz", + "integrity": "sha512-3dF39j/u423v4BBQrk1AQ2Ve1FxY5W3JKwXxVFzBODQ6WEvccguhgp802qQLKSnxPODE6WuRZtV+ohlUg4meBA==", + "dev": true + }, + "unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dev": true, + "requires": { + "@types/unist": "^2.0.2" + } + }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "dev": true + }, + "unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", + "dev": true + }, + "unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", + "dev": true, + "requires": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "dependencies": { + "has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", + "dev": true, + "requires": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "dependencies": { + "isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, + "requires": { + "isarray": "1.0.0" + } + } + } + }, + "has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", + "dev": true + } + } + }, + "upath": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", + "dev": true + }, + "upper-case": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "requires": { + "punycode": "^2.1.0" + } + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "use": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "dev": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "util.promisify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", + "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.2", + "has-symbols": "^1.0.1", + "object.getownpropertydescriptors": "^2.1.0" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } + } + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true + }, + "uuid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz", + "integrity": "sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho=", + "dev": true + }, + "v8-compile-cache": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "dev": true + }, + "v8flags": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz", + "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==", + "dev": true, + "requires": { + "homedir-polyfill": "^1.0.1" + } + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dev": true, + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "value-or-function": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz", + "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + }, + "dependencies": { + "extsprintf": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz", + "integrity": "sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=", + "dev": true + } + } + }, + "vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "dependencies": { + "is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "dev": true + } + } + }, + "vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dev": true, + "requires": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + } + }, + "vinyl": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz", + "integrity": "sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==", + "dev": true, + "requires": { + "clone": "^2.1.1", + "clone-buffer": "^1.0.0", + "clone-stats": "^1.0.0", + "cloneable-readable": "^1.0.0", + "remove-trailing-separator": "^1.0.1", + "replace-ext": "^1.0.0" + } + }, + "vinyl-fs": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", + "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", + "dev": true, + "requires": { + "fs-mkdirp-stream": "^1.0.0", + "glob-stream": "^6.1.0", + "graceful-fs": "^4.0.0", + "is-valid-glob": "^1.0.0", + "lazystream": "^1.0.0", + "lead": "^1.0.0", + "object.assign": "^4.0.4", + "pumpify": "^1.3.5", + "readable-stream": "^2.3.3", + "remove-bom-buffer": "^3.0.0", + "remove-bom-stream": "^1.2.0", + "resolve-options": "^1.1.0", + "through2": "^2.0.0", + "to-through": "^2.0.0", + "value-or-function": "^3.0.0", + "vinyl": "^2.0.0", + "vinyl-sourcemap": "^1.1.0" + } + }, + "vinyl-sourcemap": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz", + "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=", + "dev": true, + "requires": { + "append-buffer": "^1.0.2", + "convert-source-map": "^1.5.0", + "graceful-fs": "^4.1.6", + "normalize-path": "^2.1.1", + "now-and-later": "^2.0.0", + "remove-bom-buffer": "^3.0.0", + "vinyl": "^2.0.0" + }, + "dependencies": { + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, + "requires": { + "remove-trailing-separator": "^1.0.1" + } + } + } + }, + "vinyl-sourcemaps-apply": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz", + "integrity": "sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU=", + "dev": true, + "requires": { + "source-map": "^0.5.1" + }, + "dependencies": { + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "requires": { + "loose-envify": "^1.0.0" + } + }, + "which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "wide-align": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", + "dev": true, + "requires": { + "string-width": "^1.0.2 || 2" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", + "dev": true, + "requires": { + "mkdirp": "^0.5.1" + } + }, + "write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dev": true, + "requires": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "ws": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz", + "integrity": "sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA==", + "dev": true, + "requires": {} + }, + "xmlhttprequest-ssl": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz", + "integrity": "sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4=", + "dev": true + }, + "xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "dev": true + }, + "y18n": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz", + "integrity": "sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + }, + "yaml": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz", + "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==", + "dev": true + }, + "yargs": { + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "dev": true, + "requires": { + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" + }, + "dependencies": { + "yargs-parser": { + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "dev": true, + "requires": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + } + } + } + }, + "yargs-parser": { + "version": "20.2.5", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.5.tgz", + "integrity": "sha512-jYRGS3zWy20NtDtK2kBgo/TlAoy5YUuhD9/LZ7z7W4j1Fdw2cqD0xEEclf8fxc8xjD6X5Qr+qQQwCEsP8iRiYg==", + "dev": true + }, + "yeast": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz", + "integrity": "sha1-AI4G2AlDIMNy28L47XagymyKxBk=", + "dev": true + }, + "zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..268817b --- /dev/null +++ b/package.json @@ -0,0 +1,68 @@ +{ + "name": "meshviewer", + "version": "11.1.0", + "license": "AGPL-3.0", + "repository": { + "type": "git", + "url": "https://github.com/ffrgb/meshviewer.git" + }, + "bugs": { + "url": "https://github.com/ffrgb/meshviewer/issues" + }, + "devDependencies": { + "babel-eslint": "^10.0.1", + "browser-sync": "^2.26.14", + "del": "^6.0.0", + "eslint": "^7.20.0", + "eslint-config-airbnb-es5": "^1.2.0", + "eslint-config-defaults": "^9.0.0", + "eslint-plugin-react": "^7.22.0", + "gulp": "^4.0.2", + "gulp-autoprefixer": "^7.0.1", + "gulp-cache-bust": "^1.4.0", + "gulp-cli": "^2.3.0", + "gulp-environments": "^1.0.1", + "gulp-eslint": "^6.0.0", + "gulp-htmlmin": "^5.0.1", + "gulp-inject": "^5.0.2", + "gulp-inline-source": "^4.0.0", + "gulp-jsonminify": "^1.1.0", + "gulp-load-plugins": "^2.0.6", + "gulp-real-favicon": "^0.3.2", + "gulp-requirejs-optimize": "^1.3.0", + "gulp-sass": "^4.1.0", + "gulp-sourcemaps": "^3.0.0", + "gulp-stylelint": "^13.0.0", + "gulp-uglify": "^3.0.2", + "stylelint": "^13.10.0", + "stylelint-config-standard": "^20.0.0" + }, + "eslintConfig": { + "env": { + "browser": true, + "amd": true, + "es6": true, + "node": true + } + }, + "dependencies": { + "almond": "^0.3.3", + "d3-drag": "^1.2.5", + "d3-force": "^1.2.1", + "d3-selection": "^1.4.2", + "d3-zoom": "^1.8.3", + "leaflet": "^1.7.1", + "moment": "^2.28.0", + "navigo": "^7.1.2", + "node-polyglot": "2.2.2", + "rbush": "^3.0.1", + "requirejs": "^2.3.6", + "snabbdom": "^0.7.4" + }, + "scripts": { + "gulp": "./node_modules/gulp-cli/bin/gulp.js" + }, + "browserslist": [ + "> 1% in DE" + ] +} diff --git a/polyfill.js b/polyfill.js new file mode 100644 index 0000000..3831f1c --- /dev/null +++ b/polyfill.js @@ -0,0 +1,30 @@ +'use strict'; +// Polyfills for (old) firefox 75 +// From https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/ +if (typeof Object.assign !== 'function') { + Object.assign = function (target, varArgs) { // .length of function is 2 + if (target == null) { // TypeError if undefined or null + throw new TypeError('Cannot convert undefined or null to object'); + } + + var to = Object(target); + + for (var index = 1; index < arguments.length; index++) { + var nextSource = arguments[index]; + + if (nextSource != null) { // Skip over if undefined or null + for (var nextKey in nextSource) { + // Avoid bugs when hasOwnProperty is shadowed + if (Object.prototype.hasOwnProperty.call(nextSource, nextKey)) { + to[nextKey] = nextSource[nextKey]; + } + } + } + } + return to; + }; +} + +if ('serviceWorker' in navigator) { + navigator.serviceWorker.register('service-worker.js'); +} diff --git a/scss/custom/_custom.scss b/scss/custom/_custom.scss new file mode 100644 index 0000000..138593f --- /dev/null +++ b/scss/custom/_custom.scss @@ -0,0 +1,10 @@ +// Example of overwriting variables. Take a look at modules/variables +// .node-links { +// color: $color-primary; +// } + +// You can also include additional files for style example https://github.com/ffrgb/meshviewer/tree/ffrgb-config/scss/custom +// Include syntax: @include "name" -> Filename: _name.scss + +// SCSS supports css with a lot of additional features like variables or mixins. +// Autoprefixer runs in postcss, no need to add browser-prefixes like -webkit, -moz or -ms diff --git a/scss/custom/_variables.scss b/scss/custom/_variables.scss new file mode 100644 index 0000000..5fbb6c3 --- /dev/null +++ b/scss/custom/_variables.scss @@ -0,0 +1,4 @@ +// Example of overwriting variables. Take a look at modules/variables +//$color-black: #fff; +//$color-white: invert($color-white); +//$color-primary: invert($color-primary); diff --git a/scss/main.scss b/scss/main.scss new file mode 100644 index 0000000..351edeb --- /dev/null +++ b/scss/main.scss @@ -0,0 +1,29 @@ +// Set variables +@import 'modules/variables'; +@import 'custom/variables'; + +// Mixins +@import 'mixins/icon'; +@import 'mixins/font'; + +// Add modules +@import 'modules/reset'; +@import 'modules/font/font'; +@import 'modules/base'; +@import 'modules/font/icon'; +@import 'modules/loader'; +@import 'modules/leaflet'; +@import 'modules/table'; +@import 'modules/filter'; +@import 'modules/sidebar'; +@import 'modules/map'; +@import 'modules/forcegraph'; +@import 'modules/legend'; +@import 'modules/proportion'; +@import 'modules/tabs'; +@import 'modules/node'; +@import 'modules/infobox'; +@import 'modules/button'; + +// Make adjustments in custom scss +@import 'custom/custom'; diff --git a/scss/mixins/_font.scss b/scss/mixins/_font.scss new file mode 100644 index 0000000..0057e94 --- /dev/null +++ b/scss/mixins/_font.scss @@ -0,0 +1,19 @@ +$font-path: 'fonts' !default; + +@mixin load-font($name, $type, $weight, $style, $alias: '') { + @if $alias == '' { + $alias: $name; + } + + @font-face { + font-family: '#{$alias}'; + font-style: $style; + font-weight: $weight; + src: + local('#{$name} #{$type}'), + local('#{$name}-#{$type}'), + url('#{$font-path}/#{$name}-#{$type}.woff2') format('woff2'), + url('#{$font-path}/#{$name}-#{$type}.woff') format('woff'), + url('#{$font-path}/#{$name}-#{$type}.ttf') format('truetype'); + } +} diff --git a/scss/mixins/_icon.scss b/scss/mixins/_icon.scss new file mode 100644 index 0000000..48a164d --- /dev/null +++ b/scss/mixins/_icon.scss @@ -0,0 +1,7 @@ +@mixin icon($name, $code, $prefix: 'ion-') { + .#{$prefix}#{$name} { + &::before { + content: '#{$code}'; + } + } +} diff --git a/scss/modules/_base.scss b/scss/modules/_base.scss new file mode 100644 index 0000000..f20012c --- /dev/null +++ b/scss/modules/_base.scss @@ -0,0 +1,92 @@ +body { + -webkit-tap-highlight-color: transparent; + background: $color-white; + color: $color-black; + font-family: $font-family; + font-size: $font-size; + overflow: hidden; + overflow-y: scroll; +} + +header { + background: transparentize($color-black, .98); + border-bottom: 1px solid darken($color-white, 10%); +} + +textarea, +input { + background: transparent; + color: $color-black, 100; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: bold; +} + +h1, +h2 { + font-size: 1.5em; + padding: .83em 0; +} + +h3 { + font-size: 1.17em; + padding: 1em 0; +} + +h1, +h2, +h3 { + padding-left: $button-distance; + padding-right: $button-distance; +} + +p, +pre, +ul, +h4 { + padding: 0 $button-distance 1em; +} + +img { + max-width: 100%; + height: auto; +} + +a { + color: $color-online; + text-decoration: none; + + &:focus { + color: darken($color-online, 15%); + } +} + +p { + line-height: 1.67em; +} + +strong { + font-weight: bold; +} + +.hide { + display: none !important; +} + +.sr-only { + border: 0; + clip: rect(0, 0, 0, 0); + clip-path: inset(50%); + height: 1px; + overflow: hidden; + padding: 0; + position: absolute; + white-space: nowrap; + width: 1px; +} diff --git a/scss/modules/_button.scss b/scss/modules/_button.scss new file mode 100644 index 0000000..7481834 --- /dev/null +++ b/scss/modules/_button.scss @@ -0,0 +1,105 @@ +button { + background: $color-white; + border: 0; + border-radius: .9em; + color: $color-black; + cursor: pointer; + font-family: $font-family-icons; + font-size: $button-font-size; + height: 1.8em; + line-height: 1.95; + opacity: .7; + outline: none; + padding: 0; + transition: box-shadow .5s, background-color .5s, color .5s; + width: 1.8em; + + &.text { + background: $color-primary; + border: 1px solid $color-primary; + border-radius: 0; + color: $color-white; + font: inherit; + line-height: initial; + padding: 0 20px; + width: auto; + + &:hover { + background: $color-white; + } + } + + &.active, + &:focus { + box-shadow: 0 0 0 2px $color-primary; + } + + &:hover { + color: $color-primary; + } + + // Tooltip + &[data-tooltip] { + &::after { + background: $color-black; + border-radius: 3px; + color: $color-white; + content: attr(data-tooltip); + font-family: $font-family; + font-size: $font-size; + padding: 0 12px; + position: absolute; + transform: translate(45px, 52px); + visibility: hidden; + white-space: nowrap; + } + + &:hover { + &::after { + transition: visibility 0s linear .3s; + visibility: visible; + } + } + } + + &.close { + background-color: transparent; + border-radius: 0; + color: transparentize($color-black, .5); + float: right; + font-size: $button-font-size; + height: auto; + line-height: 1.2; + margin: $button-distance; + width: auto; + } +} + +// Tooltip +.content, +.sidebar > { + button { + &[aria-label] { + &::after { + background: $color-black; + border-radius: 3px; + color: $color-white; + content: attr(aria-label); + font-family: $font-family; + font-size: $font-size; + padding: 0 12px; + position: absolute; + transform: translate(45px, 52px); + visibility: hidden; + white-space: nowrap; + } + + &:hover { + &::after { + transition: visibility 0s linear .3s; + visibility: visible; + } + } + } + } +} diff --git a/scss/modules/_filter.scss b/scss/modules/_filter.scss new file mode 100644 index 0000000..c484f59 --- /dev/null +++ b/scss/modules/_filter.scss @@ -0,0 +1,70 @@ +.filters { + display: flex; + flex-wrap: wrap; + font-size: .83em; + padding: 0 8px 8px; + + li { + align-items: center; + background: transparent; + border: 1px solid $color-primary; + color: $color-primary; + display: flex; + margin: 4px; + padding: 0 0 0 10px; + + label { + cursor: pointer; + } + + button { + background: none; + color: $color-gray-light; + font-size: $font-size-small; + height: 24px; + margin: 3px; + width: 24px; + + &:hover { + color: $color-primary; + } + } + + &.not { + label { + color: $color-primary; + text-decoration: line-through; + } + } + } + + .filter-node { + border: 0; + padding: 0 5px; + width: 100%; + + &::before { + font-size: 1.8em; + } + + input { + background: transparent; + border: 0; + border-bottom: 1px solid $color-primary; + font-family: $font-family; + font-size: $font-size; + margin: 0 15px 0 3px; + outline: none; + padding: 0 2px; + width: 100%; + + &:focus { + background: transparentize($color-primary, .95); + } + } + + button { + display: none; + } + } +} diff --git a/scss/modules/_forcegraph.scss b/scss/modules/_forcegraph.scss new file mode 100644 index 0000000..01ebe62 --- /dev/null +++ b/scss/modules/_forcegraph.scss @@ -0,0 +1,11 @@ +.graph { + background: $color-gray-dark; + font: $font-size-small $font-family; + height: 100%; + width: 100%; + + canvas { + display: block; + position: absolute; + } +} diff --git a/scss/modules/_infobox.scss b/scss/modules/_infobox.scss new file mode 100644 index 0000000..e7c50c9 --- /dev/null +++ b/scss/modules/_infobox.scss @@ -0,0 +1,51 @@ +.infobox { + .clients, + .gateway { + display: flex; + flex-flow: wrap; + + span { + flex-grow: 1; + text-align: center; + } + + .ion-people, + .ion-arrow-right-c { + font-size: 1.5em; + } + } + + .node-links { + table-layout: fixed; + + th, + td { + &:nth-child(3), + &:nth-child(5) { + width: 12%; + } + } + } + + input, + textarea { + border: 1px solid $color-gray-light; + font-family: $font-family-monospace; + font-size: 1.15em; + line-height: 1.67em; + margin-right: .7em; + max-width: 500px; + min-height: 42px; + padding: 3px 6px; + vertical-align: bottom; + width: calc(100% - 80px); + } + + textarea { + font-size: .8em; + height: 100px; + max-height: 300px; + overflow: auto; + resize: vertical; + } +} diff --git a/scss/modules/_leaflet.scss b/scss/modules/_leaflet.scss new file mode 100644 index 0000000..0f4732a --- /dev/null +++ b/scss/modules/_leaflet.scss @@ -0,0 +1,529 @@ +.leaflet-pane, +.leaflet-tile, +.leaflet-marker-icon, +.leaflet-marker-shadow, +.leaflet-tile-container, +.leaflet-pane > svg, +.leaflet-pane > canvas, +.leaflet-zoom-box, +.leaflet-image-layer, +.leaflet-layer { + left: 0; + position: absolute; + top: 0; +} + +.leaflet-container { + background: $color-gray-light; + outline: 0; + overflow: hidden; + + .leaflet-control-attribution { + background: transparentize($color-white, .3); + margin: 0; + } + + .leaflet-control-attribution, + .leaflet-control-scale { + font-size: 11px; + padding: 5px; + } + + .leaflet-marker-pane, + .leaflet-shadow-pane, + .leaflet-tile-pane { + img { + max-width: none; + } + } + + img { + &.leaflet-image-layer { + max-width: none; + } + } + + .leaflet-overlay-pane { + svg { + max-width: none; + } + } + + &.leaflet-touch-zoom { + -ms-touch-action: pan-x pan-y; + touch-action: pan-x pan-y; + } + + &.leaflet-touch-drag { + -ms-touch-action: pinch-zoom; + + &.leaflet-touch-drag { + -ms-touch-action: none; + touch-action: none; + } + } + + .leaflet-control-layers-toggle { + background: $color-white; + border-radius: 50%; + color: $color-black; + display: block; + font-size: 1.6rem; + height: 1.8em; + line-height: 1.95; + margin-right: 16px; + opacity: .9; + text-align: center; + transition: background-color .5s, color .5s; + width: 1.8em; + + @media screen and (max-width: map-get($grid-breakpoints, lg) - 1) { + margin-right: -2px; + transform: scale(.8); + } + + &::before { + content: '\f229'; + font-family: $font-family-icons; + speak: none; + text-rendering: auto; + } + } + + .leaflet-control-layers-expanded { + padding: 0; + + .leaflet-control-layers-list { + display: block; + position: relative; + } + + .leaflet-control-layers-toggle { + display: none; + } + } +} + +.leaflet-tile, +.leaflet-marker-icon, +.leaflet-marker-shadow { + user-select: none; +} + +///* Safari renders non-retina tile on retina better with this, but Chrome is worse */ +.leaflet-safari { + .leaflet-tile { + image-rendering: -webkit-optimize-contrast; + } + + ///* hack that prevents hw layers "stretching" when loading new tiles */ + .leaflet-tile-container { + -webkit-transform-origin: 0 0; + height: 1600px; + width: 1600px; + } +} + +.leaflet-marker-icon, +.leaflet-marker-shadow { + display: block; +} + +.leaflet-tile { + filter: inherit; + visibility: hidden; +} + +.leaflet-tile-loaded { + visibility: inherit; +} + +.leaflet-zoom-box { + -moz-box-sizing: border-box; + box-sizing: border-box; + height: 0; + width: 0; + z-index: 800; +} + +///* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */ +.leaflet-overlay-pane { + z-index: 400; + + svg { + -moz-user-select: none; + } +} + +.leaflet-pane { + z-index: 400; +} + +.leaflet-tile-pane { + z-index: 200; +} + +.leaflet-shadow-pane { + z-index: 500; +} + +.leaflet-marker-pane { + z-index: 600; +} + +.leaflet-tooltip-pane { + z-index: 650; +} + +.leaflet-popup-pane { + z-index: 700; +} + +.leaflet-map-pane { + canvas { + z-index: 100; + } + + svg { + z-index: 200; + } +} + +.leaflet-vml-shape { + height: 1px; + width: 1px; +} + +.lvml { + display: inline-block; + position: absolute; +} + +.leaflet-control { + clear: both; + float: left; + pointer-events: auto; + position: relative; + z-index: 800; +} + +.leaflet-top, +.leaflet-bottom { + pointer-events: none; + position: absolute; + z-index: 1000; +} + +.leaflet-right { + right: 0; + + .leaflet-control { + float: right; + } +} + +.leaflet-top { + top: 0; + + .leaflet-control { + margin-top: 10px; + } +} + +.leaflet-bottom { + bottom: 0; +} + +.leaflet-left { + left: 0; + + .leaflet-control { + margin-left: 10px; + } +} + +.leaflet-fade-anim { + .leaflet-tile { + will-change: opacity; + } + + .leaflet-popup { + opacity: 0; + transition: opacity .2s linear; + } + + .leaflet-map-pane { + .leaflet-popup { + opacity: 1; + } + } +} + +.leaflet-zoom-animated { + transform-origin: 0 0; +} + +.leaflet-zoom-anim { + .leaflet-zoom-animated { + transition: transform .25s cubic-bezier(0, 0, .25, 1); + will-change: transform; + } + + .leaflet-zoom-hide { + visibility: hidden; + } +} + +.leaflet-zoom-anim, +.leaflet-pan-anim { + .leaflet-tile { + transition: none; + } +} + +.leaflet-interactive { + cursor: pointer; +} + +.leaflet-grab { + cursor: -webkit-grab; + cursor: -moz-grab; +} + +.leaflet-crosshair { + &, + &.leaflet-interactive { + cursor: crosshair; + } +} + +.leaflet-popup-pane, +.leaflet-control { + cursor: auto; +} + +.leaflet-dragging { + .leaflet-marker-draggable, + .leaflet-grab { + &, + &.leaflet-interactive { + cursor: move; + cursor: -webkit-grabbing; + cursor: -moz-grabbing; + } + } +} + +.leaflet-marker-icon, +.leaflet-marker-shadow, +.leaflet-image-layer, +.leaflet-tile-container { + pointer-events: none; +} + +.leaflet-pane > svg { + path { + pointer-events: none; + + &.leaflet-interactive { + pointer-events: auto; + } + } +} + +.leaflet-marker-icon, +.leaflet-image-layer { + &.leaflet-interactive { + pointer-events: auto; + } +} + +.leaflet-control-layers { + &.leaflet-control { + background: transparent; + border: 0; + border-radius: 0; + box-shadow: none; + margin: 0; + opacity: .8; + } + + .leaflet-control-layers-list { + display: none; + } + + label { + display: block; + } +} + +.leaflet-control-layers-scrollbar { + overflow-y: scroll; + padding-right: 5px; +} + +.leaflet-control-layers-selector { + display: none; + + + span { + display: block; + padding: 5px 0 8px 20px; + + &::before { + border: 1px solid $color-primary; + border-radius: 50%; + content: ' '; + height: 10px; + margin: 0 0 0 -18px; + position: absolute; + transition: background .3s; + width: 10px; + } + + &:hover { + &::before { + background: transparentize($color-primary, .7); + } + } + } + + &:checked { + + span { + &::before { + background: $color-primary; + } + } + } +} + +.leaflet-tooltip { + background-color: $color-white; + border: 1px solid $color-primary; + border-radius: 2px; + color: $color-primary; + font-size: 12px; + line-height: 1.2; + padding: 6px; + pointer-events: none; + position: absolute; + user-select: none; + white-space: nowrap; + + &.leaflet-clickable { + cursor: pointer; + pointer-events: auto; + } +} + +.leaflet-tooltip-top, +.leaflet-tooltip-bottom, +.leaflet-tooltip-left, +.leaflet-tooltip-right { + &::before { + background: transparent; + border: 6px solid transparent; + content: ''; + pointer-events: none; + position: absolute; + } +} + +.leaflet-tooltip-bottom { + margin-top: 6px; + + &::before { + border-bottom-color: $color-white; + margin-left: -6px; + margin-top: -12px; + top: 0; + } +} + +.leaflet-tooltip-top { + margin-top: -6px; + + &::before { + border-top-color: $color-white; + bottom: 0; + margin-bottom: -12px; + } +} + +.leaflet-tooltip-bottom, +.leaflet-tooltip-top { + &::before { + left: 50%; + margin-left: -6px; + } +} + +.leaflet-tooltip-left { + margin-left: -6px; + + &::before { + border-left-color: $color-white; + margin-right: -12px; + right: 0; + } +} + +.leaflet-tooltip-right { + margin-left: 6px; + + &::before { + border-right-color: $color-white; + left: 0; + margin-left: -12px; + } +} + +.leaflet-tooltip-left, +.leaflet-tooltip-right { + &::before { + margin-top: -6px; + top: 50%; + } +} + +.leaflet-control-layers-list { + background: transparentize($color-white, .1); + color: $color-gray-dark; + padding: 10px; + + label { + cursor: pointer; + } +} + +.leaflet-control-zoom { + opacity: .7; + right: 16px; + top: 65px; + + @media screen and (max-width: map-get($grid-breakpoints, lg) - 1) { + right: calc(100vw - 50px); + top: -10px; + transform: scale(.8); + } + + a { + background: $color-white; + border-radius: 5px 5px 0 0; + color: $color-black; + display: block; + font-size: 40px; + height: 46px; + text-align: center; + transition: background-color .5s, color .5s; + width: 46px; + + &:hover { + color: $color-primary; + } + + + a { + border-radius: 0 0 5px 5px; + border-top: 1px solid $color-gray-light; + } + } +} diff --git a/scss/modules/_legend.scss b/scss/modules/_legend.scss new file mode 100644 index 0000000..ca20f16 --- /dev/null +++ b/scss/modules/_legend.scss @@ -0,0 +1,74 @@ +header { + h1 { + display: inline-block; + } +} + +.language-switch { + background: transparent; + border: 0; + color: $color-black; + float: right; + margin: 20px 16px 0 0; + + option { + background: $color-white; + } +} + +.legend { + a { + margin-right: 10px; + } + + span { + &:not(:first-child) { + margin-left: 1em; + } + } +} + +.symbol { + border-radius: 50%; + display: inline-block; + height: 1em; + vertical-align: -5%; + width: 1em; +} + +// Dot looks compared to thin font a bit darker - lighten it 10% +.legend-new { + .symbol { + background-color: lighten($color-new, 10%); + } +} + +.legend-online { + .symbol { + background-color: lighten($color-online, 10%); + } +} + +.legend-offline { + .symbol { + background-color: lighten($color-offline, 10%); + } +} + +.legend-24ghz { + .symbol { + background-color: $color-24ghz; + } +} + +.legend-5ghz { + .symbol { + background-color: $color-5ghz; + } +} + +.legend-others { + .symbol { + background-color: $color-others; + } +} diff --git a/scss/modules/_loader.scss b/scss/modules/_loader.scss new file mode 100644 index 0000000..2876a79 --- /dev/null +++ b/scss/modules/_loader.scss @@ -0,0 +1,7 @@ +.loader { + color: $color-primary; + font-size: 1.8em; + line-height: 2; + margin: 30vh auto; + text-align: center; +} diff --git a/scss/modules/_map.scss b/scss/modules/_map.scss new file mode 100644 index 0000000..8c74a88 --- /dev/null +++ b/scss/modules/_map.scss @@ -0,0 +1,61 @@ +.content { + height: 100vh; + position: fixed; + width: 100%; + + .buttons { + direction: rtl; + position: absolute; + right: $button-distance; + top: $button-distance; + unicode-bidi: bidi-override; + z-index: 1001; + + button { + margin-left: $button-distance; + } + + @media screen and (max-width: map-get($grid-breakpoints, lg) - 1) { + right: .1rem; + top: 0; + transform: scale(.8); + transform-origin: right; + } + } + + @media screen and (max-width: map-get($grid-breakpoints, lg) - 1) { + height: calc(100vh - 150px); + min-height: 240px; + position: relative; + width: auto; + } + + @media all and (device-height: 1024px) and (orientation: portrait) { + height: 800px; + } + + @media all and (device-width: 768px) and (orientation: landscape) { + height: 768px; + } + + @media only screen and (device-height: 568px) and (orientation: portrait) { + height: 320px; + } + + @media only screen and (device-width: 320px) and (orientation: landscape) { + height: 240px; + } +} + +.stroke-first { + paint-order: stroke; +} + +.pick-coordinates { + cursor: crosshair; +} + +.map { + height: 100%; + width: 100%; +} diff --git a/scss/modules/_node.scss b/scss/modules/_node.scss new file mode 100644 index 0000000..a0b1bb1 --- /dev/null +++ b/scss/modules/_node.scss @@ -0,0 +1,30 @@ +.bar { + background: mix($color-new, $color-white, 60); + display: block; + height: 1.4em; + position: relative; + + &.warning { + background: mix($color-offline, $color-white, 60); + + span { + background: $color-offline; + } + } + + span { + background: $color-new; + display: inline-block; + height: 1.4em; + max-width: 100%; + } + + label { + color: $color-white; + font-weight: bold; + position: absolute; + right: .5em; + top: .1em; + white-space: nowrap; + } +} diff --git a/scss/modules/_proportion.scss b/scss/modules/_proportion.scss new file mode 100644 index 0000000..f08530b --- /dev/null +++ b/scss/modules/_proportion.scss @@ -0,0 +1,29 @@ +.proportion-header { + cursor: pointer; +} + +.proportion { + th { + font-size: .95em; + font-weight: normal; + padding-right: .71em; + text-align: right; + } + + td { + text-align: left; + } + + span { + box-sizing: border-box; + color: $color-white; + display: inline-block; + font-weight: bold; + min-width: 1.5em; + padding: .25em .5em; + } + + a { + cursor: pointer; + } +} diff --git a/scss/modules/_reset.scss b/scss/modules/_reset.scss new file mode 100644 index 0000000..0032e11 --- /dev/null +++ b/scss/modules/_reset.scss @@ -0,0 +1,40 @@ +// Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/) +// http://cssreset.com +/* stylelint-disable */ +html, body, div, span, applet, object, iframe, +h1, h2, h3, h4, h5, h6, p, blockquote, pre, +a, abbr, acronym, address, big, cite, code, +del, dfn, em, img, ins, kbd, q, s, samp, +small, strike, strong, sub, sup, tt, var, +b, u, i, center, +dl, dt, dd, ol, ul, li, +fieldset, form, label, legend, +table, caption, tbody, tfoot, thead, tr, th, td, +article, aside, canvas, details, embed, +figure, figcaption, footer, header, +menu, nav, output, ruby, section, summary, +time, mark, audio, video { + border: 0; + font: inherit; + font-size: 100%; + margin: 0; + padding: 0; + vertical-align: baseline; +} + +body { + line-height: 1; +} + +ol, ul { + list-style: none; +} + +blockquote, q { + quotes: none; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} diff --git a/scss/modules/_sidebar.scss b/scss/modules/_sidebar.scss new file mode 100644 index 0000000..e41f83b --- /dev/null +++ b/scss/modules/_sidebar.scss @@ -0,0 +1,147 @@ +.sidebar { + box-sizing: border-box; + left: 0; + position: absolute; + transition: left .5s; + width: $sidebar-width; + z-index: 1005; + + &.hidden { + left: -$sidebar-width - $button-distance; + + .sidebarhandle { + left: $button-distance; + transform: scale(-1, 1); + + &[aria-label] { + &::after { + transform: scale(-1, 1) translate(105px, 52px) !important; + } + } + } + + @media screen and (max-width: map-get($grid-breakpoints, lg) - 1) { + width: auto; + } + } + + .tab { + padding-bottom: 15px; + } + + img { + padding: 0 $button-distance 1em; + box-sizing: border-box; + } + + .node-list, + .node-links, + .link-list { + th, + td { + &:first-child { + width: 25px; + } + + &:nth-child(2) { + overflow: hidden; + text-align: left; + text-overflow: ellipsis; + white-space: nowrap; + width: 50%; + } + } + } + + .link-list { + th, + td { + &:nth-child(2) { + width: 60%; + } + } + } + + .node-links { + padding-bottom: 15px; + + th, + td { + &:first-child { + width: 35px; + } + } + } + + .container { + background: transparentize($color-white, .03); + border-right: 1px solid darken($color-white, 10%); + min-height: 100vh; + overflow-y: visible; + + &.hidden { + display: none; + } + } + + @media screen and (max-width: map-get($grid-breakpoints, xl) - 1) { + background: $color-white; + font-size: .8em; + margin: 0; + width: $sidebar-width-small; + + .sidebarhandle { + left: $sidebar-width-small + $button-distance; + } + + .container, + .infobox { + border-radius: 0; + margin: 0; + } + } + + @media screen and (max-width: map-get($grid-breakpoints, lg) - 1) { + height: auto; + min-height: 0; + position: static; + width: auto; + + .sidebarhandle { + display: none; + } + + .content { + height: 60vh; + position: relative; + width: auto; + } + } +} + +.sidebarhandle { + left: $sidebar-width + 2 * $button-distance; + position: fixed; + top: $button-distance; + transition: left .5s, color .5s, transform .5s; + z-index: 1010; + + &::before { + content: '\f124'; + padding-right: .125em; + } + + &[aria-label] { + &::after { + transform: translate(-45px, 52px) !important; + } + } +} + +.online { + color: $color-new; +} + +.offline { + color: $color-offline; +} diff --git a/scss/modules/_table.scss b/scss/modules/_table.scss new file mode 100644 index 0000000..beba0dc --- /dev/null +++ b/scss/modules/_table.scss @@ -0,0 +1,94 @@ +table { + border-collapse: separate; + border-spacing: 0 .5em; + padding: 0 $button-distance; + width: 100%; + + &.attributes { + line-height: 1.41em; + + th { + font-weight: bold; + padding-right: 1em; + text-align: left; + vertical-align: top; + white-space: nowrap; + } + + td { + text-align: left; + width: 100%; + } + } +} + +tr { + &.header { + font-size: 1.2em; + + th { + padding-top: 1em; + } + } +} + +td, +th { + line-height: 1.41em; + text-align: right; + + &:first-child { + text-align: left; + } +} + +th { + font-weight: bold; + + &[class*=' ion-'] { + &::before { + font-size: 1.3em; + } + } + + &.sort-header { + cursor: pointer; + + &::selection { + background: transparent; + } + + &::after { + content: '\f10d'; + font-family: $font-family-icons; + padding-left: .25em; + visibility: hidden; + } + + &:hover { + &::after { + visibility: visible; + } + } + } + + &.sort-up { + &::after { + content: '\f104'; + } + } + + &.sort-up, + &.sort-down { + &::after { + opacity: .4; + visibility: visible; + } + } +} + +.tab { + table { + table-layout: fixed; + } +} diff --git a/scss/modules/_tabs.scss b/scss/modules/_tabs.scss new file mode 100644 index 0000000..390dab6 --- /dev/null +++ b/scss/modules/_tabs.scss @@ -0,0 +1,29 @@ +.tabs { + background: transparentize($color-black, .98); + border: 0 solid darken($color-white, 10%); + border-bottom-width: 1px; + display: flex; + display: -webkit-flex; + list-style: none; + margin: 0; + padding: 0; + + li { + -webkit-flex: 1 1 auto; + color: transparentize($color-black, .5); + cursor: pointer; + flex: 1 1 auto; + padding: 1.3em .5em 1em; + text-align: center; + text-transform: uppercase; + + &:hover { + color: $color-black; + } + } + + .visible { + border-bottom: 2px solid $color-primary; + color: $color-primary; + } +} diff --git a/scss/modules/_variables.scss b/scss/modules/_variables.scss new file mode 100644 index 0000000..824e057 --- /dev/null +++ b/scss/modules/_variables.scss @@ -0,0 +1,50 @@ +$color-white: #fff !default; +$color-black: #000 !default; + +$color-gray-light: darken($color-white, 30%) !default; +$color-gray-dark: lighten($color-black, 20%) !default; + +$color-primary: #dc0067 !default; + +$color-new: #459c18 !default; +$color-online: #1566a9 !default; +$color-offline: #cf3e2a !default; + +$color-24ghz: $color-primary !default; +$color-5ghz: #e3a619 !default; +$color-others: #0a9c92 !default; + +$color-map-background: #f8f4f0 !default; + +$font-family: "Assistant", sans-serif !default; +$font-family-icons: ionicons !default; +$font-family-monospace: monospace !default; +$font-size: 15px !default; +$font-size-small: 11px !default; +$font-size-map-control: 12px !default; + +$button-font-size: 1.6rem !default; +$button-distance: 16px !default; + +// Bootstrap breakpoints +// In lib/sidebar to avoid render blocking onload +$grid-breakpoints: ( + // Extra small screen / phone + xs: 0, + // Small screen / phone + sm: 544px, + // Medium screen / tablet + md: 768px, + // Large screen / desktop + lg: 992px, + // Extra large screen / wide desktop + xl: 1200px +) !default; + +// 45% sidebar - based on viewport +// In lib/sidebar to avoid render blocking onload +$sidebar-width: map-get($grid-breakpoints, xl) * .45 !default; +$sidebar-width-small: map-get($grid-breakpoints, lg) * .45 !default; + +// En/disable included font +$use-included-font: 1 !default; diff --git a/scss/modules/font/_font.scss b/scss/modules/font/_font.scss new file mode 100644 index 0000000..0f915e0 --- /dev/null +++ b/scss/modules/font/_font.scss @@ -0,0 +1,6 @@ +$font-path: 'fonts'; + +@if $use-included-font == 1 { + @include load-font('Assistant', 'Light', 300, normal); + @include load-font('Assistant', 'Bold', 700, normal); +} diff --git a/scss/modules/font/_icon.scss b/scss/modules/font/_icon.scss new file mode 100644 index 0000000..bbb385e --- /dev/null +++ b/scss/modules/font/_icon.scss @@ -0,0 +1,54 @@ +// Needed for standalone scss +// @import 'icon-mixin'; + +$cache-breaker: unique-id(); + +@font-face { + font-family: 'ionicons'; + font-style: normal; + font-weight: normal; + src: + url('fonts/meshviewer.woff2?rel=#{$cache-breaker}') format('woff2'), + url('fonts/meshviewer.woff?rel=#{$cache-breaker}') format('woff'), + url('fonts/meshviewer.ttf?rel=#{$cache-breaker}') format('truetype'); +} + +[class^='ion-'], +[class*=' ion-'] { + &::before { + display: inline-block; + font-family: $font-family-icons; + font-style: normal; + font-variant: normal; + font-weight: normal; + line-height: 1; + speak: none; + text-rendering: auto; + text-transform: none; + vertical-align: 0; + } +} + +@include icon('chevron-left', '\f124'); +@include icon('chevron-right', '\f125'); +@include icon('pin', '\f3a3'); +@include icon('wifi', '\f25c'); +@include icon('eye', '\f133'); +@include icon('up-b', '\f10d'); +@include icon('down-b', '\f104'); +@include icon('locate', '\f2e9'); +@include icon('close', '\f2d7'); +@include icon('location', '\f456'); +@include icon('layer', '\f229'); +@include icon('filter', '\f38B'); +@include icon('connection-bars', '\f274'); +@include icon('share-alt', '\f3ac'); +@include icon('clipboard', '\f376'); +@include icon('people', '\f39e'); +@include icon('person', '\f3a0'); +@include icon('time', '\f3b3'); +@include icon('arrow-resize', '\f264'); +@include icon('arrow-left-c', '\f108'); +@include icon('arrow-right-c', '\f10b'); +@include icon('full-enter', '\e901'); +@include icon('full-exit', '\e900'); diff --git a/scss/night.scss b/scss/night.scss new file mode 100644 index 0000000..12590b8 --- /dev/null +++ b/scss/night.scss @@ -0,0 +1,142 @@ +// Overwrite normal style (colors) +@import 'modules/variables'; +@import 'custom/variables'; + +$color-white: #1c1c13; +$color-black: #fefefe; +$color-map-background: #0d151c; + +$color-online: lighten($color-online, 25%); + +html { + //@import 'modules/base'; + body, + textarea, + input { + background: $color-white; + color: lighten($color-black, 100); + } + + header { + background: transparentize($color-black, .98); + border-bottom-color: lighten($color-white, 10%); + } + + a { + color: $color-online; + text-decoration: none; + + &:focus { + color: darken($color-online, 15%); + } + } + + //@import 'modules/leaflet'; + .leaflet-container { + background: $color-map-background; + } + + .leaflet-label { + &.leaflet-label-right { + background-color: $color-white; + } + } + + .leaflet-control-container { + .leaflet-control-layers-toggle { + background: lighten($color-white, 10); + color: $color-black; + } + } + + .leaflet-control-zoom { + a { + background: lighten($color-white, 10); + color: $color-black; + + &:hover { + background: $color-white; + } + } + } + + .leaflet-control-layers { + &.leaflet-control { + opacity: .9; + } + } + + .language-switch { + color: $color-black; + + option { + background: $color-white; + } + } + + //@import 'modules/filter'; + .filter-node { + input { + color: $color-black; + } + } + + //@import 'modules/sidebar'; + .sidebar { + .infobox, + .container { + background: transparentize($color-white, .03); + border-right: 1px solid darken($color-white, 10%); + } + + img { + filter: invert(100%); + } + + @media screen and (max-width: map-get($grid-breakpoints, xl) - 1) { + background: $color-white; + } + } + + //@import 'modules/tabs'; + .tabs { + background: transparentize($color-black, .98); + border-bottom-color: lighten($color-white, 10%); + + li { + color: transparentize($color-black, .5); + + &:hover { + color: $color-black; + } + } + } + + //@import 'modules/node'; + .bar { + background: mix($color-new, $color-white, 60); + + &.warning { + background: mix($color-offline, $color-white, 60); + } + + label { + color: $color-white; + } + } + + //@import 'modules/button'; + button { + background: lighten($color-white, 10); + color: $color-black; + + &:hover { + background: $color-white; + } + + &.close { + background: transparent; + color: transparentize($color-black, .5); + } + } +} diff --git a/service-worker.js b/service-worker.js new file mode 100644 index 0000000..c34c979 --- /dev/null +++ b/service-worker.js @@ -0,0 +1,23 @@ +self.addEventListener('install', function (event) { + var offlineRequest = new Request('offline.html'); + event.waitUntil( + fetch(offlineRequest).then(function (response) { + return caches.open('offline').then(function (cache) { + return cache.put(offlineRequest, response); + }); + }) + ); +}); + +self.addEventListener('fetch', function (event) { + var request = event.request; + if (request.method === 'GET') { + event.respondWith( + fetch(request).catch(function () { + return caches.open('offline').then(function (cache) { + return cache.match('offline.html'); + }); + }) + ); + } +}); diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 0000000..1598b6c --- /dev/null +++ b/yarn.lock @@ -0,0 +1,7649 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@7.12.11": + version "7.12.11" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz" + integrity sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g== + dependencies: + "@babel/highlight" "^7.12.13" + +"@babel/core@>=7.9.0": + version "7.12.16" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.12.16.tgz" + integrity sha512-t/hHIB504wWceOeaOoONOhu+gX+hpjfeN6YRBT209X/4sibZQfSF1I0HFRRlBe97UZZosGx5XwUg1ZgNbelmNw== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.12.15" + "@babel/helper-module-transforms" "^7.12.13" + "@babel/helpers" "^7.12.13" + "@babel/parser" "^7.12.16" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.12.13" + "@babel/types" "^7.12.13" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.1" + json5 "^2.1.2" + lodash "^4.17.19" + semver "^5.4.1" + source-map "^0.5.0" + +"@babel/generator@^7.12.13", "@babel/generator@^7.12.15": + version "7.12.15" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz" + integrity sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ== + dependencies: + "@babel/types" "^7.12.13" + jsesc "^2.5.1" + source-map "^0.5.0" + +"@babel/helper-function-name@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz" + integrity sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA== + dependencies: + "@babel/helper-get-function-arity" "^7.12.13" + "@babel/template" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/helper-get-function-arity@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz" + integrity sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-member-expression-to-functions@^7.12.13": + version "7.12.16" + resolved "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.16.tgz" + integrity sha512-zYoZC1uvebBFmj1wFAlXwt35JLEgecefATtKp20xalwEK8vHAixLBXTGxNrVGEmTT+gzOThUgr8UEdgtalc1BQ== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-module-imports@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz" + integrity sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-module-transforms@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz" + integrity sha512-acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA== + dependencies: + "@babel/helper-module-imports" "^7.12.13" + "@babel/helper-replace-supers" "^7.12.13" + "@babel/helper-simple-access" "^7.12.13" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/helper-validator-identifier" "^7.12.11" + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.12.13" + "@babel/types" "^7.12.13" + lodash "^4.17.19" + +"@babel/helper-optimise-call-expression@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz" + integrity sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-replace-supers@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz" + integrity sha512-pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.12.13" + "@babel/helper-optimise-call-expression" "^7.12.13" + "@babel/traverse" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/helper-simple-access@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz" + integrity sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-split-export-declaration@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz" + integrity sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg== + dependencies: + "@babel/types" "^7.12.13" + +"@babel/helper-validator-identifier@^7.12.11": + version "7.12.11" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz" + integrity sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw== + +"@babel/helpers@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.13.tgz" + integrity sha512-oohVzLRZ3GQEk4Cjhfs9YkJA4TdIDTObdBEZGrd6F/T0GPSnuV6l22eMcxlvcvzVIPH3VTtxbseudM1zIE+rPQ== + dependencies: + "@babel/template" "^7.12.13" + "@babel/traverse" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/highlight@^7.10.4", "@babel/highlight@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz" + integrity sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/parser@^7.12.13", "@babel/parser@^7.12.16", "@babel/parser@^7.7.0": + version "7.12.16" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.12.16.tgz" + integrity sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw== + +"@babel/template@^7.12.13": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz" + integrity sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/parser" "^7.12.13" + "@babel/types" "^7.12.13" + +"@babel/traverse@^7.12.13", "@babel/traverse@^7.7.0": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz" + integrity sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA== + dependencies: + "@babel/code-frame" "^7.12.13" + "@babel/generator" "^7.12.13" + "@babel/helper-function-name" "^7.12.13" + "@babel/helper-split-export-declaration" "^7.12.13" + "@babel/parser" "^7.12.13" + "@babel/types" "^7.12.13" + debug "^4.1.0" + globals "^11.1.0" + lodash "^4.17.19" + +"@babel/types@^7.12.13", "@babel/types@^7.7.0": + version "7.12.13" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz" + integrity sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ== + dependencies: + "@babel/helper-validator-identifier" "^7.12.11" + lodash "^4.17.19" + to-fast-properties "^2.0.0" + +"@eslint/eslintrc@^0.3.0": + version "0.3.0" + resolved "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz" + integrity sha512-1JTKgrOKAHVivSvOYw+sJOunkBjUOvjqWk1DPja7ZFhIS2mX/4EgTT8M7eTK9jrKhL/FvXXEbQwIs3pg1xp3dg== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + lodash "^4.17.20" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + +"@gulp-sourcemaps/identity-map@^2.0.1": + version "2.0.1" + resolved "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-2.0.1.tgz" + integrity sha512-Tb+nSISZku+eQ4X1lAkevcQa+jknn/OVUgZ3XCxEKIsLsqYuPoJwJOPQeaOk75X3WPftb29GWY1eqE7GLsXb1Q== + dependencies: + acorn "^6.4.1" + normalize-path "^3.0.0" + postcss "^7.0.16" + source-map "^0.6.0" + through2 "^3.0.1" + +"@gulp-sourcemaps/map-sources@^1.0.0": + version "1.0.0" + resolved "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz" + integrity sha1-iQrnxdjId/bThIYCFazp1+yUW9o= + dependencies: + normalize-path "^2.0.1" + through2 "^2.0.3" + +"@nodelib/fs.scandir@2.1.4": + version "2.1.4" + resolved "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz" + integrity sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA== + dependencies: + "@nodelib/fs.stat" "2.0.4" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.4", "@nodelib/fs.stat@^2.0.2": + version "2.0.4" + resolved "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz" + integrity sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.6" + resolved "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz" + integrity sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow== + dependencies: + "@nodelib/fs.scandir" "2.1.4" + fastq "^1.6.0" + +"@stylelint/postcss-css-in-js@^0.37.2": + version "0.37.2" + resolved "https://registry.npmjs.org/@stylelint/postcss-css-in-js/-/postcss-css-in-js-0.37.2.tgz" + integrity sha512-nEhsFoJurt8oUmieT8qy4nk81WRHmJynmVwn/Vts08PL9fhgIsMhk1GId5yAN643OzqEEb5S/6At2TZW7pqPDA== + dependencies: + "@babel/core" ">=7.9.0" + +"@stylelint/postcss-markdown@^0.36.2": + version "0.36.2" + resolved "https://registry.npmjs.org/@stylelint/postcss-markdown/-/postcss-markdown-0.36.2.tgz" + integrity sha512-2kGbqUVJUGE8dM+bMzXG/PYUWKkjLIkRLWNh39OaADkiabDRdw8ATFCgbMz5xdIcvwspPAluSL7uY+ZiTWdWmQ== + dependencies: + remark "^13.0.0" + unist-util-find-all-after "^3.0.2" + +"@types/mdast@^3.0.0": + version "3.0.3" + resolved "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.3.tgz" + integrity sha512-SXPBMnFVQg1s00dlMCc/jCdvPqdE4mXaMMCeRlxLDmTAEoegHT53xKtkDnzDTOcmMHUfcjyf36/YYZ6SxRdnsw== + dependencies: + "@types/unist" "*" + +"@types/minimist@^1.2.0": + version "1.2.1" + resolved "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.1.tgz" + integrity sha512-fZQQafSREFyuZcdWFAExYjBiCL7AUCdgsk80iO0q4yihYYdcIiH28CcuPTGFgLOCC8RlW49GSQxdHwZP+I7CNg== + +"@types/normalize-package-data@^2.4.0": + version "2.4.0" + resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz" + integrity sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA== + +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + +"@types/q@^1.5.1": + version "1.5.4" + resolved "https://registry.npmjs.org/@types/q/-/q-1.5.4.tgz" + integrity sha512-1HcDas8SEj4z1Wc696tH56G8OlRaH/sqZOynNNB+HF0WOeXPaxTtbYzJY2oEfiUxjSKjhCKr+MvR7dCHcEelug== + +"@types/unist@*", "@types/unist@^2.0.0", "@types/unist@^2.0.2": + version "2.0.3" + resolved "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz" + integrity sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ== + +abbrev@1: + version "1.1.1" + resolved "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +accepts@~1.3.4: + version "1.3.7" + resolved "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz" + integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + +acorn-jsx@^5.2.0, acorn-jsx@^5.3.1: + version "5.3.1" + resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz" + integrity sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng== + +acorn@^6.4.1: + version "6.4.2" + resolved "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz" + integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== + +acorn@^7.1.1, acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +after@0.8.2: + version "0.8.2" + resolved "https://registry.npmjs.org/after/-/after-0.8.2.tgz" + integrity sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8= + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv@^6.10.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.4: + version "6.12.6" + resolved "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" + 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" + +ajv@^7.0.2: + version "7.1.0" + resolved "https://registry.npmjs.org/ajv/-/ajv-7.1.0.tgz" + integrity sha512-svS9uILze/cXbH0z2myCK2Brqprx/+JJYK5pHicT/GQiBfzzhUVAIT6MwqJg8y4xV/zoGsUeuPuwtoiKSGE15g== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +almond@^0.3.3: + version "0.3.3" + resolved "https://registry.npmjs.org/almond/-/almond-0.3.3.tgz" + integrity sha1-oOfJWsdiTWQXtElLHmi/9pMWiiA= + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" + integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= + +ansi-colors@^1.0.1, ansi-colors@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz" + integrity sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA== + dependencies: + ansi-wrap "^0.1.0" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-cyan@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz" + integrity sha1-U4rlKK+JgvKK4w2G8vF0VtJgmHM= + dependencies: + ansi-wrap "0.1.0" + +ansi-escapes@^4.2.1: + version "4.3.1" + resolved "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz" + integrity sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA== + dependencies: + type-fest "^0.11.0" + +ansi-gray@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz" + integrity sha1-KWLPVOyXksSFEKPetSRDaGHvclE= + dependencies: + ansi-wrap "0.1.0" + +ansi-red@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz" + integrity sha1-jGOPnRCAgAo1PJwoyKgcpHBdlGw= + dependencies: + ansi-wrap "0.1.0" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + +ansi-regex@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz" + integrity sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg== + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" + integrity sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4= + +ansi-styles@^3.2.0, ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +ansi-wrap@0.1.0, ansi-wrap@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz" + integrity sha1-qCJQ3bABXponyoLoLqYDu/pF768= + +any-promise@^1.1.0: + version "1.3.0" + resolved "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz" + integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@~3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz" + integrity sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +append-buffer@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz" + integrity sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE= + dependencies: + buffer-equal "^1.0.0" + +aproba@^1.0.3: + version "1.2.0" + resolved "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== + +archy@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz" + integrity sha1-+cjBN1fMHde8N5rHeyxipcKGjEA= + +are-we-there-yet@~1.1.2: + version "1.1.5" + resolved "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz" + integrity sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w== + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +arr-diff@^1.0.1: + version "1.1.0" + resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz" + integrity sha1-aHwydYFjWI/vfeezb6vklesaOZo= + dependencies: + arr-flatten "^1.0.1" + array-slice "^0.2.3" + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz" + integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + +arr-filter@^1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz" + integrity sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4= + dependencies: + make-iterator "^1.0.0" + +arr-flatten@^1.0.1, arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-map@^2.0.0, arr-map@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz" + integrity sha1-Onc0X/wc814qkYJWAfnljy4kysQ= + dependencies: + make-iterator "^1.0.0" + +arr-union@^2.0.1: + version "2.1.0" + resolved "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz" + integrity sha1-IPnqtexw9cfSFbEHexw5Fh0pLH0= + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz" + integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + +array-each@^1.0.0, array-each@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz" + integrity sha1-p5SvDAWrF1KEbudTofIRoFugxE8= + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz" + integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= + +array-includes@^3.1.1, array-includes@^3.1.2: + version "3.1.2" + resolved "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz" + integrity sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + get-intrinsic "^1.0.1" + is-string "^1.0.5" + +array-initial@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz" + integrity sha1-L6dLJnOTccOUe9enrcc74zSz15U= + dependencies: + array-slice "^1.0.0" + is-number "^4.0.0" + +array-last@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz" + integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== + dependencies: + is-number "^4.0.0" + +array-slice@^0.2.3: + version "0.2.3" + resolved "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz" + integrity sha1-3Tz7gO15c6dRF82sabC5nshhhvU= + +array-slice@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz" + integrity sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w== + +array-sort@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz" + integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== + dependencies: + default-compare "^1.0.0" + get-value "^2.0.6" + kind-of "^5.0.2" + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz" + integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + +array.prototype.flatmap@^1.2.3: + version "1.2.4" + resolved "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz" + integrity sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + function-bind "^1.1.1" + +arraybuffer.slice@~0.0.7: + version "0.0.7" + resolved "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.7.tgz" + integrity sha512-wGUIVQXuehL5TCqQun8OW81jGzAWycqzFF8lFp+GOM5BXLYj3bKNsYC4daB7n6XjCqxQA/qgTJ+8ANR3acjrog== + +arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" + integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + +arrify@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz" + integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== + +asn1@~0.2.3: + version "0.2.4" + resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz" + integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg== + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz" + integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + +astral-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz" + integrity sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg== + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +async-done@^1.2.0, async-done@^1.2.2: + version "1.3.2" + resolved "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz" + integrity sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.2" + process-nextick-args "^2.0.0" + stream-exhaust "^1.0.1" + +async-each-series@0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/async-each-series/-/async-each-series-0.1.1.tgz" + integrity sha1-dhfBkXQB/Yykooqtzj266Yr+tDI= + +async-each@^1.0.1: + version "1.0.3" + resolved "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz" + integrity sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ== + +async-foreach@^0.1.3: + version "0.1.3" + resolved "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz" + integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= + +async-settle@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz" + integrity sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs= + dependencies: + async-done "^1.2.2" + +async@*: + version "3.2.0" + resolved "https://registry.npmjs.org/async/-/async-3.2.0.tgz" + integrity sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw== + +async@1.5.2: + version "1.5.2" + resolved "https://registry.npmjs.org/async/-/async-1.5.2.tgz" + integrity sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo= + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + +autoprefixer@^9.6.1, autoprefixer@^9.8.6: + version "9.8.6" + resolved "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz" + integrity sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg== + dependencies: + browserslist "^4.12.0" + caniuse-lite "^1.0.30001109" + colorette "^1.2.1" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^7.0.32" + postcss-value-parser "^4.1.0" + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + +aws4@^1.8.0: + version "1.11.0" + resolved "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz" + integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== + +axios@0.21.1: + version "0.21.1" + resolved "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz" + integrity sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA== + dependencies: + follow-redirects "^1.10.0" + +axios@^0.18.0: + version "0.18.1" + resolved "https://registry.npmjs.org/axios/-/axios-0.18.1.tgz" + integrity sha512-0BfJq4NSfQXd+SkFdrvFbG7addhYSBA2mQwISr46pD6E5iqkWg02RAs8vyTT/j0RTnoYmeXauBuSv1qKwR179g== + dependencies: + follow-redirects "1.5.10" + is-buffer "^2.0.2" + +babel-eslint@^10.0.1: + version "10.1.0" + resolved "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz" + integrity sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg== + dependencies: + "@babel/code-frame" "^7.0.0" + "@babel/parser" "^7.7.0" + "@babel/traverse" "^7.7.0" + "@babel/types" "^7.7.0" + eslint-visitor-keys "^1.0.0" + resolve "^1.12.0" + +bach@^1.0.0: + version "1.2.0" + resolved "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz" + integrity sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA= + dependencies: + arr-filter "^1.1.1" + arr-flatten "^1.0.1" + arr-map "^2.0.0" + array-each "^1.0.0" + array-initial "^1.0.0" + array-last "^1.1.1" + async-done "^1.2.2" + async-settle "^1.0.0" + now-and-later "^2.0.0" + +backo2@1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz" + integrity sha1-MasayLEpNjRj41s+u2n038+6eUc= + +bail@^1.0.0: + version "1.0.5" + resolved "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz" + integrity sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ== + +balanced-match@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz" + integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= + +base64-arraybuffer@0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.4.tgz" + integrity sha1-mBjHngWbE1X5fgQooBfIOOkLqBI= + +base64id@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz" + integrity sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog== + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.npmjs.org/base/-/base-0.11.2.tgz" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +batch@0.6.1: + version "0.6.1" + resolved "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz" + integrity sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY= + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + dependencies: + tweetnacl "^0.14.3" + +binary-extensions@^1.0.0: + version "1.13.1" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz" + integrity sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +binary@~0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/binary/-/binary-0.3.0.tgz" + integrity sha1-n2BVO8XOjDOG87VTz/R0Yq3sqnk= + dependencies: + buffers "~0.1.1" + chainsaw "~0.1.0" + +bindings@^1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/bindings/-/bindings-1.5.0.tgz#10353c9e945334bc0511a6d90b38fbc7c9c504df" + integrity sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ== + dependencies: + file-uri-to-path "1.0.0" + +blob@0.0.5: + version "0.0.5" + resolved "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz" + integrity sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig== + +block-stream@*: + version "0.0.9" + resolved "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz" + integrity sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo= + dependencies: + inherits "~2.0.0" + +boolbase@^1.0.0, boolbase@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" + integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^2.3.1, braces@^2.3.2: + version "2.3.2" + resolved "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +braces@^3.0.1, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +browser-sync-client@^2.26.14: + version "2.26.14" + resolved "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.14.tgz" + integrity sha512-be0m1MchmKv/26r/yyyolxXcBi052aYrmaQep5nm8YNMjFcEyzv0ZoOKn/c3WEXNlEB/KeXWaw70fAOJ+/F1zQ== + dependencies: + etag "1.8.1" + fresh "0.5.2" + mitt "^1.1.3" + rxjs "^5.5.6" + +browser-sync-ui@^2.26.14: + version "2.26.14" + resolved "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.26.14.tgz" + integrity sha512-6oT1sboM4KVNnWCCJDMGbRIeTBw97toMFQ+srImvwQ6J5t9KMgizaIX8HcKLiemsUMSJkgGM9RVKIpq2UblgOA== + dependencies: + async-each-series "0.1.1" + connect-history-api-fallback "^1" + immutable "^3" + server-destroy "1.0.1" + socket.io-client "^2.4.0" + stream-throttle "^0.1.3" + +browser-sync@^2.26.14: + version "2.26.14" + resolved "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.14.tgz" + integrity sha512-3TtpsheGolJT6UFtM2CZWEcGJmI4ZEvoCKiKE2bvcDnPxRkhQT4nIGVtfiyPcoHKXGM0LwMOZmYJNWfiNfVXWA== + dependencies: + browser-sync-client "^2.26.14" + browser-sync-ui "^2.26.14" + bs-recipes "1.3.4" + bs-snippet-injector "^2.0.1" + chokidar "^3.5.1" + connect "3.6.6" + connect-history-api-fallback "^1" + dev-ip "^1.0.1" + easy-extender "^2.3.4" + eazy-logger "3.1.0" + etag "^1.8.1" + fresh "^0.5.2" + fs-extra "3.0.1" + http-proxy "^1.18.1" + immutable "^3" + localtunnel "^2.0.1" + micromatch "^4.0.2" + opn "5.3.0" + portscanner "2.1.1" + qs "6.2.3" + raw-body "^2.3.2" + resp-modifier "6.0.2" + rx "4.1.0" + send "0.16.2" + serve-index "1.9.1" + serve-static "1.13.2" + server-destroy "1.0.1" + socket.io "2.4.0" + ua-parser-js "^0.7.18" + yargs "^15.4.1" + +browserslist@^4.12.0: + version "4.16.3" + resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz" + integrity sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw== + dependencies: + caniuse-lite "^1.0.30001181" + colorette "^1.2.1" + electron-to-chromium "^1.3.649" + escalade "^3.1.1" + node-releases "^1.1.70" + +bs-recipes@1.3.4: + version "1.3.4" + resolved "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz" + integrity sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU= + +bs-snippet-injector@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/bs-snippet-injector/-/bs-snippet-injector-2.0.1.tgz" + integrity sha1-YbU5PxH1JVntEgaTEANDtu2wTdU= + +buffer-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz" + integrity sha1-WWFrSYME1Var1GaWayLu2j7KX74= + +buffer-from@^1.0.0: + version "1.1.1" + resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz" + integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== + +buffers@~0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/buffers/-/buffers-0.1.1.tgz" + integrity sha1-skV5w77U1tOWru5tmorn9Ugqt7s= + +bytes@3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz" + integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +cachebust@2.4.1: + version "2.4.1" + resolved "https://registry.npmjs.org/cachebust/-/cachebust-2.4.1.tgz" + integrity sha512-Y2O58hqbFeeD09qyC3o9nPp9qHPC4KvRnZkiXI+Eaxs15IIA/3mqGrTrE8AWcThgADrwtQ+97yKbc2c/CypaAQ== + dependencies: + cheerio "^0.22.0" + md5 "^2.0.0" + +call-bind@^1.0.0, call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camel-case@3.0.x: + version "3.0.0" + resolved "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz" + integrity sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M= + dependencies: + no-case "^2.2.0" + upper-case "^1.1.1" + +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz" + integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase-keys@^6.2.2: + version "6.2.2" + resolved "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz" + integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== + dependencies: + camelcase "^5.3.1" + map-obj "^4.0.0" + quick-lru "^4.0.1" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz" + integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= + +camelcase@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz" + integrity sha1-MvxLn82vhF/N9+c7uXysImHwqwo= + +camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +caniuse-lite@^1.0.30001109, caniuse-lite@^1.0.30001181: + version "1.0.30001187" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001187.tgz" + integrity sha512-w7/EP1JRZ9552CyrThUnay2RkZ1DXxKe/Q2swTC4+LElLh9RRYrL1Z+27LlakB8kzY0fSmHw9mc7XYDUKAKWMA== + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + +chainsaw@~0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/chainsaw/-/chainsaw-0.1.0.tgz" + integrity sha1-XqtQsor+WAdNDVgpE4iCi15fvJg= + dependencies: + traverse ">=0.3.0 <0.4" + +chalk@^1.1.1, chalk@^1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" + integrity sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg= + 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@^2.0.0, chalk@^2.1.0, chalk@^2.3.0, chalk@^2.3.2, chalk@^2.4.1, chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^4.0.0, chalk@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +character-entities-legacy@^1.0.0: + version "1.1.4" + resolved "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz" + integrity sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA== + +character-entities@^1.0.0: + version "1.2.4" + resolved "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz" + integrity sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw== + +character-reference-invalid@^1.0.0: + version "1.1.4" + resolved "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz" + integrity sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg== + +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== + +charenc@0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/charenc/-/charenc-0.0.2.tgz" + integrity sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc= + +cheerio@*, cheerio@^0.22.0: + version "0.22.0" + resolved "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz" + integrity sha1-qbqoYKP5tZWmuBsahocxIe06Jp4= + dependencies: + css-select "~1.2.0" + dom-serializer "~0.1.0" + entities "~1.1.1" + htmlparser2 "^3.9.1" + lodash.assignin "^4.0.9" + lodash.bind "^4.1.4" + lodash.defaults "^4.0.1" + lodash.filter "^4.4.0" + lodash.flatten "^4.2.0" + lodash.foreach "^4.3.0" + lodash.map "^4.4.0" + lodash.merge "^4.4.0" + lodash.pick "^4.2.1" + lodash.reduce "^4.4.0" + lodash.reject "^4.4.0" + lodash.some "^4.4.0" + +chokidar@^2.0.0: + version "2.1.8" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz" + integrity sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg== + dependencies: + anymatch "^2.0.0" + async-each "^1.0.1" + braces "^2.3.2" + glob-parent "^3.1.0" + inherits "^2.0.3" + is-binary-path "^1.0.0" + is-glob "^4.0.0" + normalize-path "^3.0.0" + path-is-absolute "^1.0.0" + readdirp "^2.2.1" + upath "^1.1.1" + optionalDependencies: + fsevents "^1.2.7" + +chokidar@^3.5.1: + version "3.5.1" + resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz" + 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" + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +clean-css@4.2.x: + version "4.2.3" + resolved "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz" + integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== + dependencies: + source-map "~0.6.0" + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== + dependencies: + restore-cursor "^3.1.0" + +cli-width@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz" + integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== + +cliui@^3.2.0: + version "3.2.0" + resolved "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz" + integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +clone-buffer@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz" + integrity sha1-4+JbIHrE5wGvch4staFnksrD3Fg= + +clone-regexp@^2.1.0: + version "2.2.0" + resolved "https://registry.npmjs.org/clone-regexp/-/clone-regexp-2.2.0.tgz" + integrity sha512-beMpP7BOtTipFuW8hrJvREQ2DrRu3BE7by0ZpibtfBA+qfHYvMGTc2Yb1JMYPKg/JUw0CHYvpg796aNTSW9z7Q== + dependencies: + is-regexp "^2.0.0" + +clone-stats@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz" + integrity sha1-s3gt/4u1R04Yuba/D9/ngvh3doA= + +clone@^2.1.1: + version "2.1.2" + resolved "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz" + integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + +cloneable-readable@^1.0.0: + version "1.1.3" + resolved "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz" + integrity sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ== + dependencies: + inherits "^2.0.1" + process-nextick-args "^2.0.0" + readable-stream "^2.3.5" + +coa@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz" + integrity sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA== + dependencies: + "@types/q" "^1.5.1" + chalk "^2.4.1" + q "^1.1.2" + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + +collection-map@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz" + integrity sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw= + dependencies: + arr-map "^2.0.2" + for-own "^1.0.0" + make-iterator "^1.0.0" + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz" + integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +color-support@^1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz" + integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== + +colorette@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz" + integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw== + +combined-stream@^1.0.6, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +commander@2.17.x: + version "2.17.1" + resolved "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz" + integrity sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg== + +commander@^2.19.0, commander@^2.2.0: + version "2.20.3" + resolved "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commander@~2.19.0: + version "2.19.0" + resolved "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz" + integrity sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg== + +component-bind@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz" + integrity sha1-AMYIq33Nk4l8AAllGx06jh5zu9E= + +component-emitter@1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz" + integrity sha1-E3kY1teCg/ffemt8WmPhQOaUJeY= + +component-emitter@^1.2.1, component-emitter@^1.3.0, component-emitter@~1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + +component-inherit@0.0.3: + version "0.0.3" + resolved "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz" + integrity sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM= + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +concat-stream@^1.6.0: + version "1.6.2" + resolved "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + +connect-history-api-fallback@^1: + version "1.6.0" + resolved "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz" + integrity sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg== + +connect@3.6.6: + version "3.6.6" + resolved "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz" + integrity sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ= + dependencies: + debug "2.6.9" + finalhandler "1.1.0" + parseurl "~1.3.2" + utils-merge "1.0.1" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + +convert-source-map@^1.0.0, convert-source-map@^1.5.0, convert-source-map@^1.7.0: + version "1.7.0" + resolved "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz" + integrity sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA== + dependencies: + safe-buffer "~5.1.1" + +cookie@~0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz" + integrity sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA== + +cookiejar@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz" + integrity sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA== + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz" + integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + +copy-props@^2.0.1: + version "2.0.4" + resolved "https://registry.npmjs.org/copy-props/-/copy-props-2.0.4.tgz" + integrity sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A== + dependencies: + each-props "^1.3.0" + is-plain-object "^2.0.1" + +core-util-is@1.0.2, core-util-is@~1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +cosmiconfig@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz" + integrity sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + +cross-spawn@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz" + integrity sha1-ElYDfsufDF9549bvE14wdwGEuYI= + dependencies: + lru-cache "^4.0.1" + which "^1.2.9" + +cross-spawn@^6.0.5: + version "6.0.5" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.2: + version "7.0.3" + resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypt@0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/crypt/-/crypt-0.0.2.tgz" + integrity sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs= + +css-select-base-adapter@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz" + integrity sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w== + +css-select@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz" + integrity sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ== + dependencies: + boolbase "^1.0.0" + css-what "^3.2.1" + domutils "^1.7.0" + nth-check "^1.0.2" + +css-select@~1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz" + integrity sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg= + dependencies: + boolbase "~1.0.0" + css-what "2.1" + domutils "1.5.1" + nth-check "~1.0.1" + +css-tree@1.0.0-alpha.28: + version "1.0.0-alpha.28" + resolved "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.28.tgz" + integrity sha512-joNNW1gCp3qFFzj4St6zk+Wh/NBv0vM5YbEreZk0SD4S23S+1xBKb6cLDg2uj4P4k/GUMlIm6cKIDqIG+vdt0w== + dependencies: + mdn-data "~1.1.0" + source-map "^0.5.3" + +css-tree@1.0.0-alpha.29: + version "1.0.0-alpha.29" + resolved "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.29.tgz" + integrity sha512-sRNb1XydwkW9IOci6iB2xmy8IGCj6r/fr+JWitvJ2JxQRPzN3T4AGGVWCMlVmVwM1gtgALJRmGIlWv5ppnGGkg== + dependencies: + mdn-data "~1.1.0" + source-map "^0.5.3" + +css-url-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/css-url-regex/-/css-url-regex-1.1.0.tgz" + integrity sha1-g4NCMMyfdMRX3lnuvRVD/uuDt+w= + +css-what@2.1: + version "2.1.3" + resolved "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz" + integrity sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg== + +css-what@^3.2.1: + version "3.4.2" + resolved "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz" + integrity sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ== + +css@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/css/-/css-3.0.0.tgz" + integrity sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ== + dependencies: + inherits "^2.0.4" + source-map "^0.6.1" + source-map-resolve "^0.6.0" + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +csso@^3.5.1, csso@~3.5.1: + version "3.5.1" + resolved "https://registry.npmjs.org/csso/-/csso-3.5.1.tgz" + integrity sha512-vrqULLffYU1Q2tLdJvaCYbONStnfkfimRxXNaGjxMldI0C7JPBC4rB1RyjhfdZ4m1frm8pM9uRPKH3d2knZ8gg== + dependencies: + css-tree "1.0.0-alpha.29" + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz" + integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= + dependencies: + array-find-index "^1.0.1" + +d3-collection@1: + version "1.0.7" + resolved "https://registry.npmjs.org/d3-collection/-/d3-collection-1.0.7.tgz" + integrity sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A== + +d3-color@1: + version "1.4.1" + resolved "https://registry.npmjs.org/d3-color/-/d3-color-1.4.1.tgz" + integrity sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q== + +d3-dispatch@1: + version "1.0.6" + resolved "https://registry.npmjs.org/d3-dispatch/-/d3-dispatch-1.0.6.tgz" + integrity sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA== + +d3-drag@1, d3-drag@^1.2.5: + version "1.2.5" + resolved "https://registry.npmjs.org/d3-drag/-/d3-drag-1.2.5.tgz" + integrity sha512-rD1ohlkKQwMZYkQlYVCrSFxsWPzI97+W+PaEIBNTMxRuxz9RF0Hi5nJWHGVJ3Om9d2fRTe1yOBINJyy/ahV95w== + dependencies: + d3-dispatch "1" + d3-selection "1" + +d3-ease@1: + version "1.0.7" + resolved "https://registry.npmjs.org/d3-ease/-/d3-ease-1.0.7.tgz" + integrity sha512-lx14ZPYkhNx0s/2HX5sLFUI3mbasHjSSpwO/KaaNACweVwxUruKyWVcb293wMv1RqTPZyZ8kSZ2NogUZNcLOFQ== + +d3-force@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/d3-force/-/d3-force-1.2.1.tgz" + integrity sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg== + dependencies: + d3-collection "1" + d3-dispatch "1" + d3-quadtree "1" + d3-timer "1" + +d3-interpolate@1: + version "1.4.0" + resolved "https://registry.npmjs.org/d3-interpolate/-/d3-interpolate-1.4.0.tgz" + integrity sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA== + dependencies: + d3-color "1" + +d3-quadtree@1: + version "1.0.7" + resolved "https://registry.npmjs.org/d3-quadtree/-/d3-quadtree-1.0.7.tgz" + integrity sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA== + +d3-selection@1, d3-selection@^1.1.0, d3-selection@^1.4.2: + version "1.4.2" + resolved "https://registry.npmjs.org/d3-selection/-/d3-selection-1.4.2.tgz" + integrity sha512-SJ0BqYihzOjDnnlfyeHT0e30k0K1+5sR3d5fNueCNeuhZTnGw4M4o8mqJchSwgKMXCNFo+e2VTChiSJ0vYtXkg== + +d3-timer@1: + version "1.0.10" + resolved "https://registry.npmjs.org/d3-timer/-/d3-timer-1.0.10.tgz" + integrity sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw== + +d3-transition@1: + version "1.3.2" + resolved "https://registry.npmjs.org/d3-transition/-/d3-transition-1.3.2.tgz" + integrity sha512-sc0gRU4PFqZ47lPVHloMn9tlPcv8jxgOQg+0zjhfZXMQuvppjG6YuwdMBE0TuqCZjeJkLecku/l9R0JPcRhaDA== + dependencies: + d3-color "1" + d3-dispatch "1" + d3-ease "1" + d3-interpolate "1" + d3-selection "^1.1.0" + d3-timer "1" + +d3-zoom@^1.8.3: + version "1.8.3" + resolved "https://registry.npmjs.org/d3-zoom/-/d3-zoom-1.8.3.tgz" + integrity sha512-VoLXTK4wvy1a0JpH2Il+F2CiOhVu7VRXWF5M/LroMIh3/zBAC3WAt7QoIvPibOavVo20hN6/37vwAsdBejLyKQ== + dependencies: + d3-dispatch "1" + d3-drag "1" + d3-interpolate "1" + d3-selection "1" + d3-transition "1" + +d@1, d@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/d/-/d-1.0.1.tgz" + integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== + dependencies: + es5-ext "^0.10.50" + type "^1.0.1" + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + dependencies: + assert-plus "^1.0.0" + +debug-fabulous@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-1.1.0.tgz" + integrity sha512-GZqvGIgKNlUnHUPQhepnUZFIMoi3dgZKQBzKDeL2g7oJF9SNAji/AAu36dusFUas0O+pae74lNeoIPHqXWDkLg== + dependencies: + debug "3.X" + memoizee "0.4.X" + object-assign "4.X" + +debug@2.6.9, debug@^2.2.0, debug@^2.3.3: + version "2.6.9" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@3.X: + version "3.2.7" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@4.3.1, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: + version "4.3.1" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + +debug@=3.1.0, debug@~3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + +debug@~4.1.0: + version "4.1.1" + resolved "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz" + integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== + dependencies: + ms "^2.1.1" + +decamelize-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.0.tgz" + integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + dependencies: + decamelize "^1.1.0" + map-obj "^1.0.0" + +decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz" + integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= + +deep-is@^0.1.3, deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" + integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ= + +default-compare@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz" + integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== + dependencies: + kind-of "^5.0.2" + +default-resolution@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz" + integrity sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ= + +define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz" + integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz" + integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +del@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/del/-/del-6.0.0.tgz" + integrity sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ== + dependencies: + globby "^11.0.1" + graceful-fs "^4.2.4" + is-glob "^4.0.1" + is-path-cwd "^2.2.0" + is-path-inside "^3.0.2" + p-map "^4.0.0" + rimraf "^3.0.2" + slash "^3.0.0" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + +depd@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz" + integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= + +detect-file@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz" + integrity sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc= + +detect-newline@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz" + integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= + +dev-ip@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz" + integrity sha1-p2o+0YVb56ASu4rBbLgPPADcKPA= + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +dlv@^1.1.3: + version "1.1.3" + resolved "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz" + integrity sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA== + +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +dom-serializer@0: + version "0.2.2" + resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz" + integrity sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g== + dependencies: + domelementtype "^2.0.1" + entities "^2.0.0" + +dom-serializer@~0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz" + integrity sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA== + dependencies: + domelementtype "^1.3.0" + entities "^1.1.1" + +domelementtype@1, domelementtype@^1.3.0, domelementtype@^1.3.1: + version "1.3.1" + resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz" + integrity sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w== + +domelementtype@^2.0.1: + version "2.1.0" + resolved "https://registry.npmjs.org/domelementtype/-/domelementtype-2.1.0.tgz" + integrity sha512-LsTgx/L5VpD+Q8lmsXSHW2WpA+eBlZ9HPf3erD1IoPF00/3JKHZ3BknUVA2QGDNu69ZNmyFmCWBSO45XjYKC5w== + +domhandler@^2.3.0: + version "2.4.2" + resolved "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz" + integrity sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA== + dependencies: + domelementtype "1" + +domutils@1.5.1: + version "1.5.1" + resolved "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz" + integrity sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8= + dependencies: + dom-serializer "0" + domelementtype "1" + +domutils@^1.5.1, domutils@^1.7.0: + version "1.7.0" + resolved "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz" + integrity sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg== + dependencies: + dom-serializer "0" + domelementtype "1" + +duplexify@^3.5.0, duplexify@^3.6.0: + version "3.7.1" + resolved "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz" + integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + +each-props@^1.3.0: + version "1.3.2" + resolved "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz" + integrity sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA== + dependencies: + is-plain-object "^2.0.1" + object.defaults "^1.1.0" + +easy-extender@^2.3.4: + version "2.3.4" + resolved "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz" + integrity sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q== + dependencies: + lodash "^4.17.10" + +eazy-logger@3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/eazy-logger/-/eazy-logger-3.1.0.tgz" + integrity sha512-/snsn2JqBtUSSstEl4R0RKjkisGHAhvYj89i7r3ytNUKW12y178KDZwXLXIgwDqLW6E/VRMT9qfld7wvFae8bQ== + dependencies: + tfunk "^4.0.0" + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" + integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + +electron-to-chromium@^1.3.649: + version "1.3.664" + resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.664.tgz" + integrity sha512-yb8LrTQXQnh9yhnaIHLk6CYugF/An50T20+X0h++hjjhVfgSp1DGoMSYycF8/aD5eiqS4QwaNhiduFvK8rifRg== + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +encodeurl@~1.0.1, encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" + integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + +end-of-stream@^1.0.0, end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +engine.io-client@~3.5.0: + version "3.5.0" + resolved "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.5.0.tgz" + integrity sha512-12wPRfMrugVw/DNyJk34GQ5vIVArEcVMXWugQGGuw2XxUSztFNmJggZmv8IZlLyEdnpO1QB9LkcjeWewO2vxtA== + dependencies: + component-emitter "~1.3.0" + component-inherit "0.0.3" + debug "~3.1.0" + engine.io-parser "~2.2.0" + has-cors "1.1.0" + indexof "0.0.1" + parseqs "0.0.6" + parseuri "0.0.6" + ws "~7.4.2" + xmlhttprequest-ssl "~1.5.4" + yeast "0.1.2" + +engine.io-parser@~2.2.0: + version "2.2.1" + resolved "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.2.1.tgz" + integrity sha512-x+dN/fBH8Ro8TFwJ+rkB2AmuVw9Yu2mockR/p3W8f8YtExwFgDvBDi0GWyb4ZLkpahtDGZgtr3zLovanJghPqg== + dependencies: + after "0.8.2" + arraybuffer.slice "~0.0.7" + base64-arraybuffer "0.1.4" + blob "0.0.5" + has-binary2 "~1.0.2" + +engine.io@~3.5.0: + version "3.5.0" + resolved "https://registry.npmjs.org/engine.io/-/engine.io-3.5.0.tgz" + integrity sha512-21HlvPUKaitDGE4GXNtQ7PLP0Sz4aWLddMPw2VTyFz1FVZqu/kZsJUO8WNpKuE/OCL7nkfRaOui2ZCJloGznGA== + dependencies: + accepts "~1.3.4" + base64id "2.0.0" + cookie "~0.4.1" + debug "~4.1.0" + engine.io-parser "~2.2.0" + ws "~7.4.2" + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +entities@^1.1.1, entities@~1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz" + integrity sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w== + +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + +error-ex@^1.2.0, error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.17.2: + version "1.17.7" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz" + integrity sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g== + dependencies: + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.2.2" + is-regex "^1.1.1" + object-inspect "^1.8.0" + object-keys "^1.1.1" + object.assign "^4.1.1" + string.prototype.trimend "^1.0.1" + string.prototype.trimstart "^1.0.1" + +es-abstract@^1.18.0-next.1: + version "1.18.0-next.2" + resolved "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz" + integrity sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + has "^1.0.3" + has-symbols "^1.0.1" + is-callable "^1.2.2" + is-negative-zero "^2.0.1" + is-regex "^1.1.1" + object-inspect "^1.9.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.3" + string.prototype.trimstart "^1.0.3" + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.53, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: + version "0.10.53" + resolved "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz" + integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== + dependencies: + es6-iterator "~2.0.3" + es6-symbol "~3.1.3" + next-tick "~1.0.0" + +es6-iterator@^2.0.1, es6-iterator@^2.0.3, es6-iterator@~2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz" + integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= + dependencies: + d "1" + es5-ext "^0.10.35" + es6-symbol "^3.1.1" + +es6-symbol@^3.1.1, es6-symbol@~3.1.3: + version "3.1.3" + resolved "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz" + integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== + dependencies: + d "^1.0.1" + ext "^1.1.2" + +es6-weak-map@^2.0.1, es6-weak-map@^2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz" + integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== + dependencies: + d "1" + es5-ext "^0.10.46" + es6-iterator "^2.0.3" + es6-symbol "^3.1.1" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" + integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + +escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + +eslint-config-airbnb-es5@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/eslint-config-airbnb-es5/-/eslint-config-airbnb-es5-1.2.0.tgz" + integrity sha512-MaOKwNpqNZIRy+3augFj5vGHJ4F1sskPjJ/Od7K3N8Vv+8pD6t73XCL18KrHrF1m58qFxPBDl1US6bswE65IbQ== + dependencies: + strip-json-comments "1.0.2" + +eslint-config-defaults@^9.0.0: + version "9.0.0" + resolved "https://registry.npmjs.org/eslint-config-defaults/-/eslint-config-defaults-9.0.0.tgz" + integrity sha1-oJCtwTspNeP0OzzQSKknAWVOWtU= + +eslint-plugin-react@^7.22.0: + version "7.22.0" + resolved "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.22.0.tgz" + integrity sha512-p30tuX3VS+NWv9nQot9xIGAHBXR0+xJVaZriEsHoJrASGCJZDJ8JLNM0YqKqI0AKm6Uxaa1VUHoNEibxRCMQHA== + dependencies: + array-includes "^3.1.1" + array.prototype.flatmap "^1.2.3" + doctrine "^2.1.0" + has "^1.0.3" + jsx-ast-utils "^2.4.1 || ^3.0.0" + object.entries "^1.1.2" + object.fromentries "^2.0.2" + object.values "^1.1.1" + prop-types "^15.7.2" + resolve "^1.18.1" + string.prototype.matchall "^4.0.2" + +eslint-scope@^5.0.0, eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^1.4.3: + version "1.4.3" + resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz" + integrity sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-visitor-keys@^1.0.0, eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz" + integrity sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ== + +eslint@^6.0.0: + version "6.8.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz" + integrity sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig== + dependencies: + "@babel/code-frame" "^7.0.0" + ajv "^6.10.0" + chalk "^2.1.0" + cross-spawn "^6.0.5" + debug "^4.0.1" + doctrine "^3.0.0" + eslint-scope "^5.0.0" + eslint-utils "^1.4.3" + eslint-visitor-keys "^1.1.0" + espree "^6.1.2" + esquery "^1.0.1" + esutils "^2.0.2" + file-entry-cache "^5.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.0.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + inquirer "^7.0.0" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.3.0" + lodash "^4.17.14" + minimatch "^3.0.4" + mkdirp "^0.5.1" + natural-compare "^1.4.0" + optionator "^0.8.3" + progress "^2.0.0" + regexpp "^2.0.1" + semver "^6.1.2" + strip-ansi "^5.2.0" + strip-json-comments "^3.0.1" + table "^5.2.3" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +eslint@^7.20.0: + version "7.20.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-7.20.0.tgz" + integrity sha512-qGi0CTcOGP2OtCQBgWZlQjcTuP0XkIpYFj25XtRTQSHC+umNnp7UMshr2G8SLsRFYDdAPFeHOsiteadmMH02Yw== + dependencies: + "@babel/code-frame" "7.12.11" + "@eslint/eslintrc" "^0.3.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + file-entry-cache "^6.0.0" + functional-red-black-tree "^1.0.1" + glob-parent "^5.0.0" + globals "^12.1.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash "^4.17.20" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.4" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^6.1.2: + version "6.2.1" + resolved "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz" + integrity sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw== + dependencies: + acorn "^7.1.1" + acorn-jsx "^5.2.0" + eslint-visitor-keys "^1.1.0" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0: + version "4.0.1" + resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.0.1, esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1: + version "4.3.0" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz" + integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@1.8.1, etag@^1.8.1, etag@~1.8.1: + version "1.8.1" + resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" + integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + +event-emitter@^0.3.5: + version "0.3.5" + resolved "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz" + integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= + dependencies: + d "1" + es5-ext "~0.10.14" + +eventemitter3@^4.0.0: + version "4.0.7" + resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + +execall@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/execall/-/execall-2.0.0.tgz" + integrity sha512-0FU2hZ5Hh6iQnarpRtQurM/aAvp3RIbfvgLHrcqJYzhXyV2KFruhuChf9NC6waAhiUR7FFtlugkI4p7f2Fqlow== + dependencies: + clone-regexp "^2.1.0" + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz" + integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expand-tilde@^2.0.0, expand-tilde@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz" + integrity sha1-l+gBqgUt8CRU3kawK/YhZCzchQI= + dependencies: + homedir-polyfill "^1.0.1" + +ext@^1.1.2: + version "1.4.0" + resolved "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz" + integrity sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A== + dependencies: + type "^2.0.0" + +extend-shallow@^1.1.2: + version "1.1.4" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz" + integrity sha1-Gda/lN/AnXa6cR85uHLSH/TdkHE= + dependencies: + kind-of "^1.1.0" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz" + integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz" + integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extend@^3.0.0, extend@~3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +external-editor@^3.0.3: + version "3.1.0" + resolved "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== + dependencies: + chardet "^0.7.0" + iconv-lite "^0.4.24" + tmp "^0.0.33" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz" + integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8= + +fancy-log@^1.2.0, fancy-log@^1.3.2, fancy-log@^1.3.3: + version "1.3.3" + resolved "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz" + integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== + dependencies: + ansi-gray "^0.1.1" + color-support "^1.1.3" + parse-node-version "^1.0.0" + time-stamp "^1.0.0" + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-glob@^3.1.1, fast-glob@^3.2.5: + version "3.2.5" + resolved "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz" + integrity sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.0" + merge2 "^1.3.0" + micromatch "^4.0.2" + picomatch "^2.2.1" + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^1.0.0: + version "1.1.4" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz" + integrity sha1-5qdUzI8V5YmHqpy9J69m/W9OWvk= + +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +fast-safe-stringify@^2.0.6: + version "2.0.7" + resolved "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.0.7.tgz" + integrity sha512-Utm6CdzT+6xsDk2m8S6uL8VHxNwI6Jub+e9NYTcAms28T84pTa25GJQV9j0CY0N1rM8hK4x6grpF2BQf+2qwVA== + +fastest-levenshtein@^1.0.12: + version "1.0.12" + resolved "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz" + integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow== + +fastq@^1.6.0: + version "1.10.1" + resolved "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz" + integrity sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA== + dependencies: + reusify "^1.0.4" + +figures@^3.0.0: + version "3.2.0" + resolved "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz" + integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== + dependencies: + escape-string-regexp "^1.0.5" + +file-entry-cache@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz" + integrity sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g== + dependencies: + flat-cache "^2.0.1" + +file-entry-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.0.tgz" + integrity sha512-fqoO76jZ3ZnYrXLDRxBR1YvOvc0k844kcOg40bgsPrE25LAb/PDqTY+ho64Xh2c8ZXgIKldchCFHczG2UVRcWA== + dependencies: + flat-cache "^3.0.4" + +file-uri-to-path@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz#553a7b8446ff6f684359c445f1e37a05dacc33dd" + integrity sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw== + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz" + integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +finalhandler@1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz" + integrity sha1-zgtoVbRYU+eRsvzGgARtiCU91/U= + dependencies: + debug "2.6.9" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.2" + statuses "~1.3.1" + unpipe "~1.0.0" + +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz" + integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + +find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +findup-sync@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz" + integrity sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw= + dependencies: + detect-file "^1.0.0" + is-glob "^3.1.0" + micromatch "^3.0.4" + resolve-dir "^1.0.1" + +findup-sync@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz" + integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== + dependencies: + detect-file "^1.0.0" + is-glob "^4.0.0" + micromatch "^3.0.4" + resolve-dir "^1.0.1" + +findup-sync@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/findup-sync/-/findup-sync-4.0.0.tgz" + integrity sha512-6jvvn/12IC4quLBL1KNokxC7wWTvYncaVUYSoxWw7YykPLuRrnv4qdHcSOywOI5RpkOVGeQRtWM8/q+G6W6qfQ== + dependencies: + detect-file "^1.0.0" + is-glob "^4.0.0" + micromatch "^4.0.2" + resolve-dir "^1.0.1" + +fined@^1.0.1: + version "1.2.0" + resolved "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz" + integrity sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng== + dependencies: + expand-tilde "^2.0.2" + is-plain-object "^2.0.3" + object.defaults "^1.1.0" + object.pick "^1.2.0" + parse-filepath "^1.0.1" + +flagged-respawn@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz" + integrity sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q== + +flat-cache@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz" + integrity sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA== + dependencies: + flatted "^2.0.0" + rimraf "2.6.3" + write "1.0.3" + +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flatted@^2.0.0: + version "2.0.2" + resolved "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz" + integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA== + +flatted@^3.1.0: + version "3.1.1" + resolved "https://registry.npmjs.org/flatted/-/flatted-3.1.1.tgz" + integrity sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA== + +flush-write-stream@^1.0.2: + version "1.1.1" + resolved "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz" + integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== + dependencies: + inherits "^2.0.3" + readable-stream "^2.3.6" + +follow-redirects@1.5.10: + version "1.5.10" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz" + integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== + dependencies: + debug "=3.1.0" + +follow-redirects@^1.0.0, follow-redirects@^1.10.0: + version "1.13.2" + resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz" + integrity sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA== + +for-each@^0.3.2: + version "0.3.3" + resolved "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== + dependencies: + is-callable "^1.1.3" + +for-in@^1.0.1, for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz" + integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + +for-own@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz" + integrity sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs= + dependencies: + for-in "^1.0.1" + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + +fork-stream@^0.0.4: + version "0.0.4" + resolved "https://registry.npmjs.org/fork-stream/-/fork-stream-0.0.4.tgz" + integrity sha1-24Sfznf2cIpfjzhq5TOgkHtUrnA= + +form-data@^2.3.3: + version "2.5.1" + resolved "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz" + integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +formidable@^1.2.1: + version "1.2.2" + resolved "https://registry.npmjs.org/formidable/-/formidable-1.2.2.tgz" + integrity sha512-V8gLm+41I/8kguQ4/o1D3RIHRmhYFG4pnNyonvua+40rqcEmT4+V71yaZ3B457xbbgCsCfjSPi65u/W6vK1U5Q== + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz" + integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + dependencies: + map-cache "^0.2.2" + +fresh@0.5.2, fresh@^0.5.2: + version "0.5.2" + resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz" + integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + +fs-extra@3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz" + integrity sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE= + dependencies: + graceful-fs "^4.1.2" + jsonfile "^3.0.0" + universalify "^0.1.0" + +fs-mkdirp-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz" + integrity sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes= + dependencies: + graceful-fs "^4.1.11" + through2 "^2.0.3" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +fsevents@^1.2.7: + version "1.2.13" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.2.13.tgz#f325cb0455592428bcf11b383370ef70e3bfcc38" + integrity sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw== + dependencies: + bindings "^1.5.0" + nan "^2.12.1" + +fsevents@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + +fstream@^1.0.0, fstream@^1.0.12, fstream@^1.0.2, fstream@~1.0.12: + version "1.0.12" + resolved "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz" + integrity sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg== + dependencies: + graceful-fs "^4.1.2" + inherits "~2.0.0" + mkdirp ">=0.5 0" + rimraf "2" + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz" + integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= + dependencies: + aproba "^1.0.3" + console-control-strings "^1.0.0" + has-unicode "^2.0.0" + object-assign "^4.1.0" + signal-exit "^3.0.0" + string-width "^1.0.1" + strip-ansi "^3.0.1" + wide-align "^1.1.0" + +gaze@^1.0.0: + version "1.1.3" + resolved "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz" + integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g== + dependencies: + globule "^1.0.0" + +gensync@^1.0.0-beta.1: + version "1.0.0-beta.2" + resolved "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-caller-file@^1.0.1: + version "1.0.3" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz" + integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.0.1, get-intrinsic@^1.0.2, get-intrinsic@^1.1.0: + version "1.1.1" + resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" + integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= + +get-stdin@^8.0.0: + version "8.0.0" + resolved "https://registry.npmjs.org/get-stdin/-/get-stdin-8.0.0.tgz" + integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz" + integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + +get-value@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/get-value/-/get-value-3.0.1.tgz" + integrity sha512-mKZj9JLQrwMBtj5wxi6MH8Z5eSKaERpAwjg43dPtlGI1ZVEgH/qC7T8/6R2OBSUA+zzHBZgICsVJaEIV2tKTDA== + dependencies: + isobject "^3.0.1" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + dependencies: + assert-plus "^1.0.0" + +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz" + integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob-parent@^5.0.0, glob-parent@^5.1.0, glob-parent@~5.1.0: + version "5.1.1" + resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz" + integrity sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ== + dependencies: + is-glob "^4.0.1" + +glob-stream@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz" + integrity sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ= + dependencies: + extend "^3.0.0" + glob "^7.1.1" + glob-parent "^3.1.0" + is-negated-glob "^1.0.0" + ordered-read-streams "^1.0.0" + pumpify "^1.3.5" + readable-stream "^2.1.5" + remove-trailing-separator "^1.0.1" + to-absolute-glob "^2.0.0" + unique-stream "^2.0.2" + +glob-watcher@^5.0.3: + version "5.0.5" + resolved "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz" + integrity sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw== + dependencies: + anymatch "^2.0.0" + async-done "^1.2.0" + chokidar "^2.0.0" + is-negated-glob "^1.0.0" + just-debounce "^1.0.0" + normalize-path "^3.0.0" + object.defaults "^1.1.0" + +glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@~7.1.1: + version "7.1.6" + resolved "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz" + 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" + +global-modules@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz" + integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== + dependencies: + global-prefix "^1.0.1" + is-windows "^1.0.1" + resolve-dir "^1.0.0" + +global-modules@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz" + integrity sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A== + dependencies: + global-prefix "^3.0.0" + +global-prefix@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz" + integrity sha1-2/dDxsFJklk8ZVVoy2btMsASLr4= + dependencies: + expand-tilde "^2.0.2" + homedir-polyfill "^1.0.1" + ini "^1.3.4" + is-windows "^1.0.1" + which "^1.2.14" + +global-prefix@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz" + integrity sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg== + dependencies: + ini "^1.3.5" + kind-of "^6.0.2" + which "^1.3.1" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + +globals@^12.1.0: + version "12.4.0" + resolved "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz" + integrity sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg== + dependencies: + type-fest "^0.8.1" + +globby@^11.0.1, globby@^11.0.2: + version "11.0.2" + resolved "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz" + integrity sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og== + dependencies: + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.1.1" + ignore "^5.1.4" + merge2 "^1.3.0" + slash "^3.0.0" + +globjoin@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/globjoin/-/globjoin-0.1.4.tgz" + integrity sha1-L0SUrIkZ43Z8XLtpHp9GMyQoXUM= + +globule@^1.0.0: + version "1.3.2" + resolved "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz" + integrity sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA== + dependencies: + glob "~7.1.1" + lodash "~4.17.10" + minimatch "~3.0.2" + +glogg@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz" + integrity sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA== + dependencies: + sparkles "^1.0.0" + +gonzales-pe@^4.3.0: + version "4.3.0" + resolved "https://registry.npmjs.org/gonzales-pe/-/gonzales-pe-4.3.0.tgz" + integrity sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ== + dependencies: + minimist "^1.2.5" + +graceful-fs@^4.0.0, graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.4: + version "4.2.6" + resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz" + integrity sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ== + +group-array@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/group-array/-/group-array-1.0.0.tgz" + integrity sha512-PJresALe5TUzSIcdWKLdAKcdUDxv8du2EGueShgAL2xknbcTo5Bk1xbNaNhxpWxxAx/SV7N+5S0UyK7XV0+QhA== + dependencies: + arr-flatten "^1.1.0" + for-own "^1.0.0" + get-value "^3.0.1" + kind-of "^6.0.2" + split-string "^6.1.0" + union-value "^2.0.1" + +gulp-autoprefixer@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/gulp-autoprefixer/-/gulp-autoprefixer-7.0.1.tgz" + integrity sha512-QJGEmHw+bEt7FSqvmbAUTxbCuNLJYx4sz3ox9WouYqT/7j5FH5CQ8ZnpL1M7H5npX1bUJa7lUVY1w20jXxhOxg== + dependencies: + autoprefixer "^9.6.1" + fancy-log "^1.3.2" + plugin-error "^1.0.1" + postcss "^7.0.17" + through2 "^3.0.1" + vinyl-sourcemaps-apply "^0.2.1" + +gulp-cache-bust@^1.4.0: + version "1.4.1" + resolved "https://registry.npmjs.org/gulp-cache-bust/-/gulp-cache-bust-1.4.1.tgz" + integrity sha512-ksYCu06p2hpUDilgtv/jMB9lxBLg/v9F0xEAYbndgS/xWqamHpIpGRPAKj76VRXJpDTHgEqVPcd2rCofj4TERg== + dependencies: + ansi-colors "^1.0.1" + cachebust "2.4.1" + fancy-log "^1.3.2" + graceful-fs "^4.1.9" + map-stream "^0.1.0" + plugin-error "^0.1.2" + temp-write "^2.1.0" + through2 "2.0.1" + vinyl "^2.1.0" + +gulp-cli@^2.2.0, gulp-cli@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz" + integrity sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A== + dependencies: + ansi-colors "^1.0.1" + archy "^1.0.0" + array-sort "^1.0.0" + color-support "^1.1.3" + concat-stream "^1.6.0" + copy-props "^2.0.1" + fancy-log "^1.3.2" + gulplog "^1.0.0" + interpret "^1.4.0" + isobject "^3.0.1" + liftoff "^3.1.0" + matchdep "^2.0.0" + mute-stdout "^1.0.0" + pretty-hrtime "^1.0.0" + replace-homedir "^1.0.0" + semver-greatest-satisfied-range "^1.1.0" + v8flags "^3.2.0" + yargs "^7.1.0" + +gulp-environments@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/gulp-environments/-/gulp-environments-1.0.1.tgz" + integrity sha512-ooM/H+1ZFImalQPHCaMGvKap/8UQxHMcyo65f/Y6ZakCpa4FgJ9NH/9ux7hj7Z8J22mFlJu9RQgxuZT82UtlKg== + dependencies: + gulp-if "^2.0.1" + yargs "^15.0.1" + +gulp-eslint@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/gulp-eslint/-/gulp-eslint-6.0.0.tgz" + integrity sha512-dCVPSh1sA+UVhn7JSQt7KEb4An2sQNbOdB3PA8UCfxsoPlAKjJHxYHGXdXC7eb+V1FAnilSFFqslPrq037l1ig== + dependencies: + eslint "^6.0.0" + fancy-log "^1.3.2" + plugin-error "^1.0.1" + +gulp-htmlmin@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/gulp-htmlmin/-/gulp-htmlmin-5.0.1.tgz" + integrity sha512-ASlyDPZOSKjHYUifYV0rf9JPDflN9IRIb8lw2vRqtYMC4ljU3zAmnnaVXwFQ3H+CfXxZSUesZ2x7jrnPJu93jA== + dependencies: + html-minifier "^3.5.20" + plugin-error "^1.0.1" + through2 "^2.0.3" + +gulp-if@^2.0.1: + version "2.0.2" + resolved "https://registry.npmjs.org/gulp-if/-/gulp-if-2.0.2.tgz" + integrity sha1-pJe351cwBQQcqivIt92jyARE1ik= + dependencies: + gulp-match "^1.0.3" + ternary-stream "^2.0.1" + through2 "^2.0.1" + +gulp-inject@^5.0.2: + version "5.0.5" + resolved "https://registry.npmjs.org/gulp-inject/-/gulp-inject-5.0.5.tgz" + integrity sha512-5bGMjqleXUHPu4CI1pnVzHtwyMy+Zt8EMo1RFwNsOpidPxwjFwyLgmsRZWGMMI8UenJMJRjURqwznfFmqb5wgw== + dependencies: + ansi-colors "^4.1.1" + arrify "^2.0.1" + escape-string-regexp "^2.0.0" + fancy-log "^1.3.3" + group-array "^1.0.0" + plugin-error "^1.0.1" + stream-to-array "^2.3.0" + through2 "^3.0.1" + +gulp-inline-source@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/gulp-inline-source/-/gulp-inline-source-4.0.0.tgz" + integrity sha512-LrqCom18aYkceV2YPqJyCrDpHNyLGrHHNYCmWQXFvJUMyYIpf+xxBzmvR45cokyoq2KW9H8oxijvnDjHn9s3Pw== + dependencies: + inline-source "~6.1.8" + plugin-error "~1.0.1" + through2 "~2.0.0" + +gulp-jsonminify@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/gulp-jsonminify/-/gulp-jsonminify-1.1.0.tgz" + integrity sha512-nkqH5aRajfCGD8HB2yN+QSEQG0SMEpS7UyOp3HS966Og4DqUX0y8sPF5SU8uSsGLLLXbnHwyHbDkxauYO/pSpQ== + dependencies: + jsonminify "~0.2.3" + plugin-error "^0.1.2" + through2 "~0.6.5" + +gulp-load-plugins@^2.0.6: + version "2.0.6" + resolved "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-2.0.6.tgz" + integrity sha512-HP5jUhPzvib37kWYLFvhDQJpBar2pXG7diFOFI4/PgCrQWobV5/MfnU0dMx0d5NfyJGcRrpUI1E0MROlLvNO4A== + dependencies: + array-unique "^0.3.2" + fancy-log "^1.2.0" + findup-sync "^4.0.0" + gulplog "^1.0.0" + has-gulplog "^0.1.0" + micromatch "^4.0.2" + resolve "^1.17.0" + +gulp-match@^1.0.3: + version "1.1.0" + resolved "https://registry.npmjs.org/gulp-match/-/gulp-match-1.1.0.tgz" + integrity sha512-DlyVxa1Gj24DitY2OjEsS+X6tDpretuxD6wTfhXE/Rw2hweqc1f6D/XtsJmoiCwLWfXgR87W9ozEityPCVzGtQ== + dependencies: + minimatch "^3.0.3" + +gulp-real-favicon@^0.3.2: + version "0.3.2" + resolved "https://registry.npmjs.org/gulp-real-favicon/-/gulp-real-favicon-0.3.2.tgz" + integrity sha512-DNCv4BWcdcY12KBlZDUHZ7MSUzM6PEOdhiyLe3ClDjuzToAQf+T30X0A2zny8Jfg4pxBIrALKzbVw5nizRrEbQ== + dependencies: + ansi-colors "^1.1.0" + fancy-log "^1.3.2" + plugin-error "^1.0.1" + rfg-api "^0.5.0" + through2 "^2.0.0" + +gulp-requirejs-optimize@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/gulp-requirejs-optimize/-/gulp-requirejs-optimize-1.3.0.tgz" + integrity sha512-6Jc8xg2tneeNVOv1cwiUtnDxJByTA2JCuJ1MbzKCvKcASdH8Y4kjJCE8Xpw1LNnkZwN18B5+vCRf9ZmEJQB6OQ== + dependencies: + chalk "^2.3.2" + fancy-log "^1.3.2" + lodash.defaults "^4.0.1" + plugin-error "^1.0.1" + requirejs "^2.2.0" + through2 "^2.0.1" + vinyl "^2.1.0" + vinyl-sourcemaps-apply "^0.2.1" + +gulp-sass@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/gulp-sass/-/gulp-sass-4.1.0.tgz" + integrity sha512-xIiwp9nkBLcJDpmYHbEHdoWZv+j+WtYaKD6Zil/67F3nrAaZtWYN5mDwerdo7EvcdBenSAj7Xb2hx2DqURLGdA== + dependencies: + chalk "^2.3.0" + lodash "^4.17.11" + node-sass "^4.8.3" + plugin-error "^1.0.1" + replace-ext "^1.0.0" + strip-ansi "^4.0.0" + through2 "^2.0.0" + vinyl-sourcemaps-apply "^0.2.0" + +gulp-sourcemaps@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-3.0.0.tgz" + integrity sha512-RqvUckJkuYqy4VaIH60RMal4ZtG0IbQ6PXMNkNsshEGJ9cldUPRb/YCgboYae+CLAs1HQNb4ADTKCx65HInquQ== + dependencies: + "@gulp-sourcemaps/identity-map" "^2.0.1" + "@gulp-sourcemaps/map-sources" "^1.0.0" + acorn "^6.4.1" + convert-source-map "^1.0.0" + css "^3.0.0" + debug-fabulous "^1.0.0" + detect-newline "^2.0.0" + graceful-fs "^4.0.0" + source-map "^0.6.0" + strip-bom-string "^1.0.0" + through2 "^2.0.0" + +gulp-stylelint@^13.0.0: + version "13.0.0" + resolved "https://registry.npmjs.org/gulp-stylelint/-/gulp-stylelint-13.0.0.tgz" + integrity sha512-qFWBXnYDsGy6ttzqptctMZjJhhGc0FdFE+UNPlj/5fTyuUo5mfxcc7pzN4hIJnvB79BO1WikLtdtXuC/G2AhGA== + dependencies: + chalk "^3.0.0" + fancy-log "^1.3.3" + plugin-error "^1.0.1" + source-map "^0.7.3" + strip-ansi "^6.0.0" + through2 "^3.0.1" + +gulp-uglify@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/gulp-uglify/-/gulp-uglify-3.0.2.tgz" + integrity sha512-gk1dhB74AkV2kzqPMQBLA3jPoIAPd/nlNzP2XMDSG8XZrqnlCiDGAqC+rZOumzFvB5zOphlFh6yr3lgcAb/OOg== + dependencies: + array-each "^1.0.1" + extend-shallow "^3.0.2" + gulplog "^1.0.0" + has-gulplog "^0.1.0" + isobject "^3.0.1" + make-error-cause "^1.1.1" + safe-buffer "^5.1.2" + through2 "^2.0.0" + uglify-js "^3.0.5" + vinyl-sourcemaps-apply "^0.2.0" + +gulp@^4.0.2: + version "4.0.2" + resolved "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz" + integrity sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA== + dependencies: + glob-watcher "^5.0.3" + gulp-cli "^2.2.0" + undertaker "^1.2.1" + vinyl-fs "^3.0.0" + +gulplog@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz" + integrity sha1-4oxNRdBey77YGDY86PnFkmIp/+U= + dependencies: + glogg "^1.0.0" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + +har-validator@~5.1.3: + version "5.1.5" + resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + dependencies: + ajv "^6.12.3" + har-schema "^2.0.0" + +hard-rejection@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz" + integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== + +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz" + integrity sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE= + dependencies: + ansi-regex "^2.0.0" + +has-binary2@~1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.3.tgz" + integrity sha512-G1LWKhDSvhGeAQ8mPVQlqNcOB2sJdwATtZKl2pDKKHfpf/rYj24lkinxf69blJbnsvtqqNU+L3SL50vzZhXOnw== + dependencies: + isarray "2.0.1" + +has-cors@1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz" + integrity sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk= + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-gulplog@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz" + integrity sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4= + dependencies: + sparkles "^1.0.0" + +has-symbols@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz" + integrity sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg== + +has-unicode@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz" + integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz" + integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz" + integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz" + integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +has@^1.0.1, has@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/has/-/has-1.0.3.tgz" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +he@1.2.x: + version "1.2.0" + resolved "https://registry.npmjs.org/he/-/he-1.2.0.tgz" + integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== + +homedir-polyfill@^1.0.1: + version "1.0.3" + resolved "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz" + integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== + dependencies: + parse-passwd "^1.0.0" + +hosted-git-info@^2.1.4: + version "2.8.8" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz" + integrity sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg== + +hosted-git-info@^3.0.6: + version "3.0.8" + resolved "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz" + integrity sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw== + dependencies: + lru-cache "^6.0.0" + +html-minifier@^3.5.20: + version "3.5.21" + resolved "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz" + integrity sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA== + dependencies: + camel-case "3.0.x" + clean-css "4.2.x" + commander "2.17.x" + he "1.2.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.4.x" + +html-tags@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz" + integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== + +htmlparser2@^3.10.0, htmlparser2@^3.10.1, htmlparser2@^3.9.1: + version "3.10.1" + resolved "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz" + integrity sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ== + dependencies: + domelementtype "^1.3.1" + domhandler "^2.3.0" + domutils "^1.5.1" + entities "^1.1.1" + inherits "^2.0.1" + readable-stream "^3.1.1" + +http-errors@1.7.3: + version "1.7.3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.7.3.tgz" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.6.2: + version "1.6.3" + resolved "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz" + integrity sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0= + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.0" + statuses ">= 1.4.0 < 2" + +http-proxy@^1.18.1: + version "1.18.1" + resolved "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz" + integrity sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ== + dependencies: + eventemitter3 "^4.0.0" + follow-redirects "^1.0.0" + requires-port "^1.0.0" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +iconv-lite@0.4.24, iconv-lite@^0.4.24: + version "0.4.24" + resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.4, ignore@^5.1.8: + version "5.1.8" + resolved "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz" + integrity sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw== + +immutable@^3: + version "3.8.2" + resolved "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz" + integrity sha1-wkOZUUVbs5kT2vKBN28VMOEErfM= + +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +import-lazy@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz" + integrity sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw== + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +in-publish@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz" + integrity sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ== + +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz" + integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= + dependencies: + repeating "^2.0.0" + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz" + integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= + +indexof@0.0.1: + version "0.0.1" + resolved "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz" + integrity sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10= + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + 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.0, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + +ini@^1.3.4, ini@^1.3.5: + version "1.3.8" + resolved "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== + +inline-source@~6.1.8: + version "6.1.10" + resolved "https://registry.npmjs.org/inline-source/-/inline-source-6.1.10.tgz" + integrity sha512-v/1yBPb3YfomHuEbxsYJEw3jlhycn8IWjq671jsihwgwLN1pUsx45MTEwuMMinGNeH2pT9tWxpLEq98Etp+kUA== + dependencies: + csso "~3.5.1" + htmlparser2 "^3.10.1" + superagent "~5.0.5" + svgo "~1.2.2" + terser "~3.17.0" + +inquirer@^7.0.0: + version "7.3.3" + resolved "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz" + integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== + dependencies: + ansi-escapes "^4.2.1" + chalk "^4.1.0" + cli-cursor "^3.1.0" + cli-width "^3.0.0" + external-editor "^3.0.3" + figures "^3.0.0" + lodash "^4.17.19" + mute-stream "0.0.8" + run-async "^2.4.0" + rxjs "^6.6.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + through "^2.3.6" + +internal-slot@^1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz" + integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== + dependencies: + get-intrinsic "^1.1.0" + has "^1.0.3" + side-channel "^1.0.4" + +interpret@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz" + integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== + +invert-kv@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz" + integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= + +is-absolute@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz" + integrity sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA== + dependencies: + is-relative "^1.0.0" + is-windows "^1.0.1" + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz" + integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + +is-alphabetical@^1.0.0: + version "1.0.4" + resolved "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz" + integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== + +is-alphanumerical@^1.0.0: + version "1.0.4" + resolved "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz" + integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== + dependencies: + is-alphabetical "^1.0.0" + is-decimal "^1.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-binary-path@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz" + integrity sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg= + dependencies: + binary-extensions "^1.0.0" + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-buffer@^1.1.5, is-buffer@~1.1.6: + version "1.1.6" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-buffer@^2.0.0, is-buffer@^2.0.2: + version "2.0.5" + resolved "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz" + integrity sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ== + +is-callable@^1.1.3, is-callable@^1.1.4, is-callable@^1.2.2: + version "1.2.3" + resolved "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz" + integrity sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ== + +is-core-module@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz" + integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== + dependencies: + has "^1.0.3" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz" + integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + +is-date-object@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz" + integrity sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g== + +is-decimal@^1.0.0: + version "1.0.4" + resolved "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz" + integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" + integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.0, is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-finite@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz" + integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz" + integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + dependencies: + is-extglob "^2.1.0" + +is-glob@^4.0.0, is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz" + integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== + dependencies: + is-extglob "^2.1.1" + +is-hexadecimal@^1.0.0: + version "1.0.4" + resolved "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz" + integrity sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw== + +is-negated-glob@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz" + integrity sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI= + +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + +is-number-like@^1.0.3: + version "1.0.8" + resolved "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz" + integrity sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA== + dependencies: + lodash.isfinite "^3.3.2" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz" + integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + dependencies: + kind-of "^3.0.2" + +is-number@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz" + integrity sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ== + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-path-cwd@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz" + integrity sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ== + +is-path-inside@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.2.tgz" + integrity sha512-/2UGPSgmtqwo1ktx8NDHjuPwZWmHhO+gj0f93EkhLB5RgW9RZevWYYlIkS6zePc6U2WpOdQYIwHe9YC4DWEBVg== + +is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + +is-plain-obj@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +is-plain-object@^2.0.1, is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +is-promise@^2.2.2: + version "2.2.2" + resolved "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz" + integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== + +is-regex@^1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz" + integrity sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg== + dependencies: + call-bind "^1.0.2" + has-symbols "^1.0.1" + +is-regexp@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/is-regexp/-/is-regexp-2.1.0.tgz" + integrity sha512-OZ4IlER3zmRIoB9AqNhEggVxqIH4ofDns5nRrPS6yQxXE1TPCUpFznBfRQmQa8uC+pXqjMnukiJBxCisIxiLGA== + +is-relative@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz" + integrity sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA== + dependencies: + is-unc-path "^1.0.0" + +is-string@^1.0.5: + version "1.0.5" + resolved "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz" + integrity sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ== + +is-symbol@^1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz" + integrity sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ== + dependencies: + has-symbols "^1.0.1" + +is-typedarray@^1.0.0, is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + +is-unc-path@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz" + integrity sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ== + dependencies: + unc-path-regex "^0.1.2" + +is-utf8@^0.2.0, is-utf8@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" + integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + +is-valid-glob@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz" + integrity sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao= + +is-windows@^1.0.1, is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + +is-wsl@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz" + integrity sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0= + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz" + integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + +isarray@1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + +isarray@2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz" + integrity sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4= + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz" + integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz" + integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + +js-base64@^2.1.8: + version "2.6.4" + resolved "https://registry.npmjs.org/js-base64/-/js-base64-2.6.4.tgz" + integrity sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ== + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + +json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + +json5@^2.1.2: + version "2.2.0" + resolved "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz" + integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== + dependencies: + minimist "^1.2.5" + +jsonfile@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz" + integrity sha1-pezG9l9T9mLEQVx2daAzHQmS7GY= + optionalDependencies: + graceful-fs "^4.1.6" + +jsonminify@~0.2.3: + version "0.2.3" + resolved "https://registry.npmjs.org/jsonminify/-/jsonminify-0.2.3.tgz" + integrity sha1-S4Qsij/l1qpIsvj5Whz5qAwBnY4= + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +"jsx-ast-utils@^2.4.1 || ^3.0.0": + version "3.2.0" + resolved "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz" + integrity sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q== + dependencies: + array-includes "^3.1.2" + object.assign "^4.1.2" + +just-debounce@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/just-debounce/-/just-debounce-1.0.0.tgz" + integrity sha1-h/zPrv/AtozRnVX2cilD+SnqNeo= + +kind-of@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz" + integrity sha1-FAo9LUGjbS78+pN3tiwk+ElaXEQ= + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz" + integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz" + integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0, kind-of@^5.0.2: + version "5.1.0" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: + version "6.0.3" + resolved "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +known-css-properties@^0.21.0: + version "0.21.0" + resolved "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.21.0.tgz" + integrity sha512-sZLUnTqimCkvkgRS+kbPlYW5o8q5w1cu+uIisKpEWkj31I8mx8kNG162DwRav8Zirkva6N5uoFsm9kzK4mUXjw== + +last-run@^1.1.0: + version "1.1.1" + resolved "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz" + integrity sha1-RblpQsF7HHnHchmCWbqUO+v4yls= + dependencies: + default-resolution "^2.0.0" + es6-weak-map "^2.0.1" + +lazystream@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz" + integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ= + dependencies: + readable-stream "^2.0.5" + +lcid@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz" + integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= + dependencies: + invert-kv "^1.0.0" + +lead@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz" + integrity sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI= + dependencies: + flush-write-stream "^1.0.2" + +leaflet@^1.7.1: + version "1.7.1" + resolved "https://registry.npmjs.org/leaflet/-/leaflet-1.7.1.tgz" + integrity sha512-/xwPEBidtg69Q3HlqPdU3DnrXQOvQU/CCHA1tcDQVzOwm91YMYaILjNp7L4Eaw5Z4sOYdbBz6koWyibppd8Zqw== + +levn@^0.3.0, levn@~0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +liftoff@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz" + integrity sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog== + dependencies: + extend "^3.0.0" + findup-sync "^3.0.0" + fined "^1.0.1" + flagged-respawn "^1.0.0" + is-plain-object "^2.0.4" + object.map "^1.0.0" + rechoir "^0.6.2" + resolve "^1.1.7" + +limiter@^1.0.5: + version "1.1.5" + resolved "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz" + integrity sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA== + +lines-and-columns@^1.1.6: + version "1.1.6" + resolved "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz" + integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + +localtunnel@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/localtunnel/-/localtunnel-2.0.1.tgz" + integrity sha512-LiaI5wZdz0xFkIQpXbNI62ZnNn8IMsVhwxHmhA+h4vj8R9JG/07bQHWwQlyy7b95/5fVOCHJfIHv+a5XnkvaJA== + dependencies: + axios "0.21.1" + debug "4.3.1" + openurl "1.1.1" + yargs "16.2.0" + +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +lodash.assignin@^4.0.9: + version "4.2.0" + resolved "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz" + integrity sha1-uo31+4QesKPoBEIysOJjqNxqKKI= + +lodash.bind@^4.1.4: + version "4.2.1" + resolved "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz" + integrity sha1-euMBfpOWIqwxt9fX3LGzTbFpDTU= + +lodash.defaults@^4.0.1: + version "4.2.0" + resolved "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz" + integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw= + +lodash.filter@^4.4.0: + version "4.6.0" + resolved "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz" + integrity sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4= + +lodash.flatten@^4.2.0: + version "4.4.0" + resolved "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz" + integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8= + +lodash.foreach@^4.3.0: + version "4.5.0" + resolved "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz" + integrity sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM= + +lodash.isfinite@^3.3.2: + version "3.3.2" + resolved "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz" + integrity sha1-+4m2WpqAKBgz8LdHizpRBPiY67M= + +lodash.map@^4.4.0: + version "4.6.0" + resolved "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz" + integrity sha1-dx7Hg540c9nEzeKLGTlMNWL09tM= + +lodash.merge@^4.4.0: + version "4.6.2" + resolved "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.pick@^4.2.1: + version "4.4.0" + resolved "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz" + integrity sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM= + +lodash.reduce@^4.4.0: + version "4.6.0" + resolved "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz" + integrity sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs= + +lodash.reject@^4.4.0: + version "4.6.0" + resolved "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz" + integrity sha1-gNZJLcFHCGS79YNTO2UfQqn1JBU= + +lodash.some@^4.4.0: + version "4.6.0" + resolved "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz" + integrity sha1-G7nzFO9ri63tE7VJFpsqlF62jk0= + +lodash@^4.0.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@~4.17.10: + version "4.17.20" + resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz" + integrity sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA== + +log-symbols@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/log-symbols/-/log-symbols-4.0.0.tgz" + integrity sha512-FN8JBzLx6CzeMrB0tg6pqlGU1wCrXW+ZXGH481kfsBqer0hToTIiHdjH4Mq8xJUbvATujKCvaREGWpGUionraA== + dependencies: + chalk "^4.0.0" + +longest-streak@^2.0.0: + version "2.0.4" + resolved "https://registry.npmjs.org/longest-streak/-/longest-streak-2.0.4.tgz" + integrity sha512-vM6rUVCVUJJt33bnmHiZEvr7wPT78ztX7rojL+LW51bHtLh6HTjx84LA5W4+oa6aKEJA7jJu5LR6vQRBpA5DVg== + +loose-envify@^1.0.0, loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz" + integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lower-case@^1.1.1: + version "1.1.4" + resolved "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz" + integrity sha1-miyr0bno4K6ZOkv31YdcOcQujqw= + +lru-cache@^4.0.1: + version "4.1.5" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +lru-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz" + integrity sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM= + dependencies: + es5-ext "~0.10.2" + +make-error-cause@^1.1.1: + version "1.2.2" + resolved "https://registry.npmjs.org/make-error-cause/-/make-error-cause-1.2.2.tgz" + integrity sha1-3wOI/NCzeBbf8KX7gQiTl3fcvJ0= + dependencies: + make-error "^1.2.0" + +make-error@^1.2.0: + version "1.3.6" + resolved "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +make-iterator@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz" + integrity sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw== + dependencies: + kind-of "^6.0.2" + +map-cache@^0.2.0, map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz" + integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= + +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz" + integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + +map-obj@^4.0.0: + version "4.1.0" + resolved "https://registry.npmjs.org/map-obj/-/map-obj-4.1.0.tgz" + integrity sha512-glc9y00wgtwcDmp7GaE/0b0OnxpNJsVf3ael/An6Fe2Q51LLwN1er6sdomLRzz5h0+yMpiYLhWYF5R7HeqVd4g== + +map-stream@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz" + integrity sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ= + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz" + integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + dependencies: + object-visit "^1.0.0" + +match-stream@~0.0.2: + version "0.0.2" + resolved "https://registry.npmjs.org/match-stream/-/match-stream-0.0.2.tgz" + integrity sha1-mesFAJOzTf+t5CG5rAtBCpz6F88= + dependencies: + buffers "~0.1.1" + readable-stream "~1.0.0" + +matchdep@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz" + integrity sha1-xvNINKDY28OzfCfui7yyfHd1WC4= + dependencies: + findup-sync "^2.0.0" + micromatch "^3.0.4" + resolve "^1.4.0" + stack-trace "0.0.10" + +mathml-tag-names@^2.1.3: + version "2.1.3" + resolved "https://registry.npmjs.org/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz" + integrity sha512-APMBEanjybaPzUrfqU0IMU5I0AswKMH7k8OTLs0vvV4KZpExkTkY87nR/zpbuTPj+gARop7aGUbl11pnDfW6xg== + +md5@^2.0.0: + version "2.3.0" + resolved "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz" + integrity sha512-T1GITYmFaKuO91vxyoQMFETst+O71VUPEU3ze5GNzDm0OWdP8v1ziTaAEPUr/3kLsY3Sftgz242A1SetQiDL7g== + dependencies: + charenc "0.0.2" + crypt "0.0.2" + is-buffer "~1.1.6" + +mdast-util-from-markdown@^0.8.0: + version "0.8.5" + resolved "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz" + integrity sha512-2hkTXtYYnr+NubD/g6KGBS/0mFmBcifAsI0yIWRiRo0PjVs6SSOSOdtzbp6kSGnShDN6G5aWZpKQ2lWRy27mWQ== + dependencies: + "@types/mdast" "^3.0.0" + mdast-util-to-string "^2.0.0" + micromark "~2.11.0" + parse-entities "^2.0.0" + unist-util-stringify-position "^2.0.0" + +mdast-util-to-markdown@^0.6.0: + version "0.6.5" + resolved "https://registry.npmjs.org/mdast-util-to-markdown/-/mdast-util-to-markdown-0.6.5.tgz" + integrity sha512-XeV9sDE7ZlOQvs45C9UKMtfTcctcaj/pGwH8YLbMHoMOXNNCn2LsqVQOqrF1+/NU8lKDAqozme9SCXWyo9oAcQ== + dependencies: + "@types/unist" "^2.0.0" + longest-streak "^2.0.0" + mdast-util-to-string "^2.0.0" + parse-entities "^2.0.0" + repeat-string "^1.0.0" + zwitch "^1.0.0" + +mdast-util-to-string@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz" + integrity sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w== + +mdn-data@~1.1.0: + version "1.1.4" + resolved "https://registry.npmjs.org/mdn-data/-/mdn-data-1.1.4.tgz" + integrity sha512-FSYbp3lyKjyj3E7fMl6rYvUdX0FBXaluGqlFoYESWQlyUTq8R+wp0rkFxoYFqZlHCvsUXGjyJmLQSnXToYhOSA== + +memoizee@0.4.X: + version "0.4.15" + resolved "https://registry.npmjs.org/memoizee/-/memoizee-0.4.15.tgz" + integrity sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ== + dependencies: + d "^1.0.1" + es5-ext "^0.10.53" + es6-weak-map "^2.0.3" + event-emitter "^0.3.5" + is-promise "^2.2.2" + lru-queue "^0.1.0" + next-tick "^1.1.0" + timers-ext "^0.1.7" + +meow@^3.7.0: + version "3.7.0" + resolved "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz" + integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + +meow@^9.0.0: + version "9.0.0" + resolved "https://registry.npmjs.org/meow/-/meow-9.0.0.tgz" + integrity sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ== + dependencies: + "@types/minimist" "^1.2.0" + camelcase-keys "^6.2.2" + decamelize "^1.2.0" + decamelize-keys "^1.1.0" + hard-rejection "^2.1.0" + minimist-options "4.1.0" + normalize-package-data "^3.0.0" + read-pkg-up "^7.0.1" + redent "^3.0.0" + trim-newlines "^3.0.0" + type-fest "^0.18.0" + yargs-parser "^20.2.3" + +merge-stream@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz" + integrity sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE= + dependencies: + readable-stream "^2.0.1" + +merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +metaparser@^1.0.7: + version "1.0.7" + resolved "https://registry.npmjs.org/metaparser/-/metaparser-1.0.7.tgz" + integrity sha1-wGmaZoageovOGsBrYulGLC5mqso= + dependencies: + async "*" + cheerio "*" + mkdirp "*" + underscore "*" + +methods@^1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + +micromark@~2.11.0: + version "2.11.4" + resolved "https://registry.npmjs.org/micromark/-/micromark-2.11.4.tgz" + integrity sha512-+WoovN/ppKolQOFIAajxi7Lu9kInbPxFuTBVEavFcL8eAfVstoc5MocPmqBeAdBOJV00uaVjegzH4+MA0DN/uA== + dependencies: + debug "^4.0.0" + parse-entities "^2.0.0" + +micromatch@^3.0.4, micromatch@^3.1.10, micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + +micromatch@^4.0.2: + version "4.0.2" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz" + integrity sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q== + dependencies: + braces "^3.0.1" + picomatch "^2.0.5" + +mime-db@1.45.0: + version "1.45.0" + resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz" + integrity sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w== + +mime-types@^2.1.12, mime-types@~2.1.17, mime-types@~2.1.19, mime-types@~2.1.24: + version "2.1.28" + resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz" + integrity sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ== + dependencies: + mime-db "1.45.0" + +mime@1.4.1: + version "1.4.1" + resolved "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz" + integrity sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ== + +mime@^2.4.4: + version "2.5.0" + resolved "https://registry.npmjs.org/mime/-/mime-2.5.0.tgz" + integrity sha512-ft3WayFSFUVBuJj7BMLKAQcSlItKtfjsKDDsii3rqFDAZ7t11zRe8ASw/GlmivGwVUYtwkQrxiGGpL6gFvB0ag== + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +min-indent@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== + +minimatch@^3.0.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@~3.0.2: + version "3.0.4" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist-options@4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz" + integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + kind-of "^6.0.3" + +minimist@^1.1.3, minimist@^1.2.5: + version "1.2.5" + resolved "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +mitt@^1.1.3: + version "1.2.0" + resolved "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz" + integrity sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw== + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mkdirp@*: + version "1.0.4" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +"mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: + version "0.5.5" + resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + +moment@^2.28.0: + version "2.29.1" + resolved "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz" + integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@^2.1.1: + version "2.1.3" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +mute-stdout@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz" + integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== + +mute-stream@0.0.8: + version "0.0.8" + resolved "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== + +nan@^2.12.1, nan@^2.13.2: + version "2.14.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.14.2.tgz#f5376400695168f4cc694ac9393d0c9585eeea19" + integrity sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ== + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + +navigo@^7.1.2: + version "7.1.3" + resolved "https://registry.npmjs.org/navigo/-/navigo-7.1.3.tgz" + integrity sha512-dFsj+a0ml09P4rtX8xzsPl/SXb15YOTes7vjDSTsifRAMJ400+M4Hb5oiI9L5fhmaILBrzp0Y0o0+DZ+f3NLfw== + +negotiator@0.6.2: + version "0.6.2" + resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + +next-tick@1, next-tick@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz" + integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== + +next-tick@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz" + integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +no-case@^2.2.0: + version "2.3.2" + resolved "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz" + integrity sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ== + dependencies: + lower-case "^1.1.1" + +node-gyp@^3.8.0: + version "3.8.0" + resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz" + integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA== + dependencies: + fstream "^1.0.0" + glob "^7.0.3" + graceful-fs "^4.1.2" + mkdirp "^0.5.0" + nopt "2 || 3" + npmlog "0 || 1 || 2 || 3 || 4" + osenv "0" + request "^2.87.0" + rimraf "2" + semver "~5.3.0" + tar "^2.0.0" + which "1" + +node-polyglot@2.2.2: + version "2.2.2" + resolved "https://registry.npmjs.org/node-polyglot/-/node-polyglot-2.2.2.tgz" + integrity sha1-Gj921zkvg26ggjg27egX5upuwmw= + dependencies: + for-each "^0.3.2" + has "^1.0.1" + string.prototype.trim "^1.1.2" + warning "^3.0.0" + +node-releases@^1.1.70: + version "1.1.70" + resolved "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz" + integrity sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw== + +node-sass@^4.8.3: + version "4.14.1" + resolved "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz" + integrity sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g== + dependencies: + async-foreach "^0.1.3" + chalk "^1.1.1" + cross-spawn "^3.0.0" + gaze "^1.0.0" + get-stdin "^4.0.1" + glob "^7.0.3" + in-publish "^2.0.0" + lodash "^4.17.15" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.13.2" + node-gyp "^3.8.0" + npmlog "^4.0.0" + request "^2.88.0" + sass-graph "2.2.5" + stdout-stream "^1.4.0" + "true-case-path" "^1.0.2" + +node-unzip-2@^0.2.7: + version "0.2.8" + resolved "https://registry.npmjs.org/node-unzip-2/-/node-unzip-2-0.2.8.tgz" + integrity sha512-fmJi73zTRW7RSo/1wyrKc2srKMwb3L6Ppke/7elzQ0QRt6sUjfiIcVsWdrqO5uEHAdvRKXjoySuo4HYe5BB0rw== + dependencies: + binary "~0.3.0" + fstream "~1.0.12" + match-stream "~0.0.2" + pullstream "~0.4.0" + readable-stream "~1.0.0" + setimmediate "~1.0.1" + +"nopt@2 || 3": + version "3.0.6" + resolved "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz" + integrity sha1-xkZdvwirzU2zWTF/eaxopkayj/k= + dependencies: + abbrev "1" + +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-package-data@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.0.tgz" + integrity sha512-6lUjEI0d3v6kFrtgA/lOx4zHCWULXsFNIjHolnZCKCTLA6m/G625cdn3O7eNmT0iD3jfo6HZ9cdImGZwf21prw== + dependencies: + hosted-git-info "^3.0.6" + resolve "^1.17.0" + semver "^7.3.2" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.0.1, normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" + integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz" + integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= + +normalize-selector@^0.2.0: + version "0.2.0" + resolved "https://registry.npmjs.org/normalize-selector/-/normalize-selector-0.2.0.tgz" + integrity sha1-0LFF62kRicY6eNIB3E/bEpPvDAM= + +now-and-later@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz" + integrity sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ== + dependencies: + once "^1.3.2" + +"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0: + version "4.1.2" + resolved "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz" + integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +nth-check@^1.0.2, nth-check@~1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz" + integrity sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg== + dependencies: + boolbase "~1.0.0" + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz" + integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= + +number-is-nan@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@4.X, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz" + integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-inspect@^1.8.0, object-inspect@^1.9.0: + version "1.9.0" + resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz" + integrity sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw== + +object-keys@^1.0.12, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz" + integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + dependencies: + isobject "^3.0.0" + +object.assign@^4.0.4, object.assign@^4.1.0, object.assign@^4.1.1, object.assign@^4.1.2: + version "4.1.2" + resolved "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" + integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + has-symbols "^1.0.1" + object-keys "^1.1.1" + +object.defaults@^1.0.0, object.defaults@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz" + integrity sha1-On+GgzS0B96gbaFtiNXNKeQ1/s8= + dependencies: + array-each "^1.0.1" + array-slice "^1.0.0" + for-own "^1.0.0" + isobject "^3.0.0" + +object.entries@^1.1.2: + version "1.1.3" + resolved "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz" + integrity sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + has "^1.0.3" + +object.fromentries@^2.0.2: + version "2.0.3" + resolved "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz" + integrity sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + has "^1.0.3" + +object.getownpropertydescriptors@^2.1.0: + version "2.1.1" + resolved "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.1.tgz" + integrity sha512-6DtXgZ/lIZ9hqx4GtZETobXLR/ZLaa0aqV0kzbn80Rf8Z2e/XFnhA0I7p07N2wH8bBBltr2xQPi6sbKWAY2Eng== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + +object.map@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz" + integrity sha1-z4Plncj8wK1fQlDh94s7gb2AHTc= + dependencies: + for-own "^1.0.0" + make-iterator "^1.0.0" + +object.pick@^1.2.0, object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz" + integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + dependencies: + isobject "^3.0.1" + +object.reduce@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz" + integrity sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60= + dependencies: + for-own "^1.0.0" + make-iterator "^1.0.0" + +object.values@^1.1.0, object.values@^1.1.1: + version "1.1.2" + resolved "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz" + integrity sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + has "^1.0.3" + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz" + integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + dependencies: + ee-first "1.1.1" + +once@^1.3.0, once@^1.3.1, once@^1.3.2, once@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +onetime@^5.1.0: + version "5.1.2" + resolved "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +openurl@1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz" + integrity sha1-OHW0sO96UsFW8NtB1GCduw+Us4c= + +opn@5.3.0: + version "5.3.0" + resolved "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz" + integrity sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g== + dependencies: + is-wsl "^1.1.0" + +optionator@^0.8.3: + version "0.8.3" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +ordered-read-streams@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz" + integrity sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4= + dependencies: + readable-stream "^2.0.1" + +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + +os-locale@^1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz" + integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= + dependencies: + lcid "^1.0.0" + +os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + +osenv@0: + version "0.1.5" + resolved "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz" + integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +"over@>= 0.0.5 < 1": + version "0.0.5" + resolved "https://registry.npmjs.org/over/-/over-0.0.5.tgz" + integrity sha1-8phS5w/X4l82DgE6jsRMgq7bVwg= + +p-limit@^2.0.0, p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +param-case@2.1.x: + version "2.1.1" + resolved "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz" + integrity sha1-35T9jPZTHs915r75oIWPvHK+Ikc= + dependencies: + no-case "^2.2.0" + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-entities@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz" + integrity sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ== + dependencies: + character-entities "^1.0.0" + character-entities-legacy "^1.0.0" + character-reference-invalid "^1.0.0" + is-alphanumerical "^1.0.0" + is-decimal "^1.0.0" + is-hexadecimal "^1.0.0" + +parse-filepath@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz" + integrity sha1-pjISf1Oq89FYdvWHLz/6x2PWyJE= + dependencies: + is-absolute "^1.0.0" + map-cache "^0.2.0" + path-root "^0.1.1" + +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz" + integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= + dependencies: + error-ex "^1.2.0" + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + +parse-node-version@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz" + integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== + +parse-passwd@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz" + integrity sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY= + +parseqs@0.0.6: + version "0.0.6" + resolved "https://registry.npmjs.org/parseqs/-/parseqs-0.0.6.tgz" + integrity sha512-jeAGzMDbfSHHA091hr0r31eYfTig+29g3GKKE/PPbEQ65X0lmMwlEoqmhzu0iztID5uJpZsFlUPDP8ThPL7M8w== + +parseuri@0.0.6: + version "0.0.6" + resolved "https://registry.npmjs.org/parseuri/-/parseuri-0.0.6.tgz" + integrity sha512-AUjen8sAkGgao7UyCX6Ahv0gIK2fABKmYjvP4xmy5JaKvcbTRueIqIPHLAfq30xJddqSE033IOMUSOMCcK3Sow== + +parseurl@~1.3.2: + version "1.3.3" + resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz" + integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz" + integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz" + integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= + dependencies: + pinkie-promise "^2.0.0" + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.6" + resolved "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz" + integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== + +path-root-regex@^0.1.0: + version "0.1.2" + resolved "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz" + integrity sha1-v8zcjfWxLcUsi0PsONGNcsBLqW0= + +path-root@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz" + integrity sha1-mkpoFMrBwM1zNgqV8yCDyOpHRbc= + dependencies: + path-root-regex "^0.1.0" + +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz" + integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + +picomatch@^2.0.4, picomatch@^2.0.5, picomatch@^2.2.1: + version "2.2.2" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz" + integrity sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg== + +pify@^2.0.0, pify@^2.2.0: + version "2.3.0" + resolved "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" + integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" + integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" + integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= + +plugin-error@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz" + integrity sha1-O5uzM1zPAPQl4HQ34ZJ2ln2kes4= + dependencies: + ansi-cyan "^0.1.1" + ansi-red "^0.1.1" + arr-diff "^1.0.1" + arr-union "^2.0.1" + extend-shallow "^1.1.2" + +plugin-error@^1.0.1, plugin-error@~1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz" + integrity sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA== + dependencies: + ansi-colors "^1.0.1" + arr-diff "^4.0.0" + arr-union "^3.1.0" + extend-shallow "^3.0.2" + +portscanner@2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/portscanner/-/portscanner-2.1.1.tgz" + integrity sha1-6rtAnk3iSVD1oqUW01rnaTQ/u5Y= + dependencies: + async "1.5.2" + is-number-like "^1.0.3" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz" + integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + +postcss-html@^0.36.0: + version "0.36.0" + resolved "https://registry.npmjs.org/postcss-html/-/postcss-html-0.36.0.tgz" + integrity sha512-HeiOxGcuwID0AFsNAL0ox3mW6MHH5cstWN1Z3Y+n6H+g12ih7LHdYxWwEA/QmrebctLjo79xz9ouK3MroHwOJw== + dependencies: + htmlparser2 "^3.10.0" + +postcss-less@^3.1.4: + version "3.1.4" + resolved "https://registry.npmjs.org/postcss-less/-/postcss-less-3.1.4.tgz" + integrity sha512-7TvleQWNM2QLcHqvudt3VYjULVB49uiW6XzEUFmvwHzvsOEF5MwBrIXZDJQvJNFGjJQTzSzZnDoCJ8h/ljyGXA== + dependencies: + postcss "^7.0.14" + +postcss-media-query-parser@^0.2.3: + version "0.2.3" + resolved "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz" + integrity sha1-J7Ocb02U+Bsac7j3Y1HGCeXO8kQ= + +postcss-resolve-nested-selector@^0.1.1: + version "0.1.1" + resolved "https://registry.npmjs.org/postcss-resolve-nested-selector/-/postcss-resolve-nested-selector-0.1.1.tgz" + integrity sha1-Kcy8fDfe36wwTp//C/FZaz9qDk4= + +postcss-safe-parser@^4.0.2: + version "4.0.2" + resolved "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.2.tgz" + integrity sha512-Uw6ekxSWNLCPesSv/cmqf2bY/77z11O7jZGPax3ycZMFU/oi2DMH9i89AdHc1tRwFg/arFoEwX0IS3LCUxJh1g== + dependencies: + postcss "^7.0.26" + +postcss-sass@^0.4.4: + version "0.4.4" + resolved "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.4.4.tgz" + integrity sha512-BYxnVYx4mQooOhr+zer0qWbSPYnarAy8ZT7hAQtbxtgVf8gy+LSLT/hHGe35h14/pZDTw1DsxdbrwxBN++H+fg== + dependencies: + gonzales-pe "^4.3.0" + postcss "^7.0.21" + +postcss-scss@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.1.1.tgz" + integrity sha512-jQmGnj0hSGLd9RscFw9LyuSVAa5Bl1/KBPqG1NQw9w8ND55nY4ZEsdlVuYJvLPpV+y0nwTV5v/4rHPzZRihQbA== + dependencies: + postcss "^7.0.6" + +postcss-selector-parser@^6.0.4: + version "6.0.4" + resolved "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz" + integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== + dependencies: + cssesc "^3.0.0" + indexes-of "^1.0.1" + uniq "^1.0.1" + util-deprecate "^1.0.2" + +postcss-syntax@^0.36.2: + version "0.36.2" + resolved "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.36.2.tgz" + integrity sha512-nBRg/i7E3SOHWxF3PpF5WnJM/jQ1YpY9000OaVXlAQj6Zp/kIqJxEDWIZ67tAd7NLuk7zqN4yqe9nc0oNAOs1w== + +postcss-value-parser@^4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz" + integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== + +postcss@^7.0.14, postcss@^7.0.16, postcss@^7.0.17, postcss@^7.0.2, postcss@^7.0.21, postcss@^7.0.26, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0.6: + version "7.0.35" + resolved "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz" + integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg== + dependencies: + chalk "^2.4.2" + source-map "^0.6.1" + supports-color "^6.1.0" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + +pretty-hrtime@^1.0.0: + version "1.0.3" + resolved "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz" + integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= + +process-nextick-args@^2.0.0, process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +process-nextick-args@~1.0.6: + version "1.0.7" + resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz" + integrity sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M= + +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +prop-types@^15.7.2: + version "15.7.2" + resolved "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz" + integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.8.1" + +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + +psl@^1.1.28: + version "1.8.0" + resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz" + integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + +pullstream@~0.4.0: + version "0.4.1" + resolved "https://registry.npmjs.org/pullstream/-/pullstream-0.4.1.tgz" + integrity sha1-1vs79a7Wl+gxFQ6xACwlo/iuExQ= + dependencies: + over ">= 0.0.5 < 1" + readable-stream "~1.0.31" + setimmediate ">= 1.0.2 < 2" + slice-stream ">= 1.0.0 < 2" + +pump@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +pumpify@^1.3.5: + version "1.5.1" + resolved "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz" + integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== + dependencies: + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" + +punycode@^2.1.0, punycode@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +q@^1.1.2: + version "1.5.1" + resolved "https://registry.npmjs.org/q/-/q-1.5.1.tgz" + integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= + +qs@6.2.3: + version "6.2.3" + resolved "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz" + integrity sha1-HPyyXBCpsrSDBT/zn138kjOQjP4= + +qs@^6.7.0: + version "6.9.6" + resolved "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz" + integrity sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ== + +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + +queue-microtask@^1.2.2: + version "1.2.2" + resolved "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.2.tgz" + integrity sha512-dB15eXv3p2jDlbOiNLyMabYg1/sXvppd8DP2J3EOCQ0AkuSXCW2tP7mnVouVLJKgUMY6yP0kcQDVpLCN13h4Xg== + +quick-lru@^4.0.1: + version "4.0.1" + resolved "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz" + integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== + +quickselect@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz" + integrity sha512-RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw== + +range-parser@~1.2.0: + version "1.2.1" + resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@^2.3.2: + version "2.4.1" + resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.4.1.tgz" + integrity sha512-9WmIKF6mkvA0SLmA2Knm9+qj89e+j1zqgyn8aXGd7+nAduPoqgI9lO57SAZNn/Byzo5P7JhXTyg9PzaJbH73bA== + dependencies: + bytes "3.1.0" + http-errors "1.7.3" + iconv-lite "0.4.24" + unpipe "1.0.0" + +rbush@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/rbush/-/rbush-3.0.1.tgz" + integrity sha512-XRaVO0YecOpEuIvbhbpTrZgoiI6xBlz6hnlr6EHhd+0x9ase6EmeN+hdwwUaJvLcsFFQ8iWVF1GAK1yB0BWi0w== + dependencies: + quickselect "^2.0.0" + +react-is@^16.8.1: + version "16.13.1" + resolved "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz" + integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz" + integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +"readable-stream@2 || 3", readable-stream@^3.1.1, readable-stream@^3.4.0: + version "3.6.0" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz" + integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +"readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.0, readable-stream@~1.0.31: + version "1.0.34" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz" + integrity sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw= + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@^2.0.0, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.3, readable-stream@^2.3.5, readable-stream@^2.3.6, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz" + integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== + 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" + +readable-stream@~2.0.0: + version "2.0.6" + resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz" + integrity sha1-j5A0HmilPMySh4jaz80Rs265t44= + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "~1.0.0" + process-nextick-args "~1.0.6" + string_decoder "~0.10.x" + util-deprecate "~1.0.1" + +readdirp@^2.2.1: + version "2.2.1" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz" + integrity sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ== + dependencies: + graceful-fs "^4.1.11" + micromatch "^3.1.10" + readable-stream "^2.0.2" + +readdirp@~3.5.0: + version "3.5.0" + resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +rechoir@^0.6.2: + version "0.6.2" + resolved "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz" + integrity sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q= + dependencies: + resolve "^1.1.6" + +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz" + integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +redent@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz" + integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== + dependencies: + indent-string "^4.0.0" + strip-indent "^3.0.0" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regexp.prototype.flags@^1.3.0: + version "1.3.1" + resolved "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz" + integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +regexpp@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz" + integrity sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw== + +regexpp@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz" + integrity sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q== + +relateurl@0.2.x: + version "0.2.7" + resolved "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz" + integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= + +remark-parse@^9.0.0: + version "9.0.0" + resolved "https://registry.npmjs.org/remark-parse/-/remark-parse-9.0.0.tgz" + integrity sha512-geKatMwSzEXKHuzBNU1z676sGcDcFoChMK38TgdHJNAYfFtsfHDQG7MoJAjs6sgYMqyLduCYWDIWZIxiPeafEw== + dependencies: + mdast-util-from-markdown "^0.8.0" + +remark-stringify@^9.0.0: + version "9.0.1" + resolved "https://registry.npmjs.org/remark-stringify/-/remark-stringify-9.0.1.tgz" + integrity sha512-mWmNg3ZtESvZS8fv5PTvaPckdL4iNlCHTt8/e/8oN08nArHRHjNZMKzA/YW3+p7/lYqIw4nx1XsjCBo/AxNChg== + dependencies: + mdast-util-to-markdown "^0.6.0" + +remark@^13.0.0: + version "13.0.0" + resolved "https://registry.npmjs.org/remark/-/remark-13.0.0.tgz" + integrity sha512-HDz1+IKGtOyWN+QgBiAT0kn+2s6ovOxHyPAFGKVE81VSzJ+mq7RwHFledEvB5F1p4iJvOah/LOKdFuzvRnNLCA== + dependencies: + remark-parse "^9.0.0" + remark-stringify "^9.0.0" + unified "^9.1.0" + +remove-bom-buffer@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz" + integrity sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ== + dependencies: + is-buffer "^1.1.5" + is-utf8 "^0.2.1" + +remove-bom-stream@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz" + integrity sha1-BfGlk/FuQuH7kOv1nejlaVJflSM= + dependencies: + remove-bom-buffer "^3.0.0" + safe-buffer "^5.1.0" + through2 "^2.0.3" + +remove-trailing-separator@^1.0.1, remove-trailing-separator@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" + integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + +repeat-element@^1.1.2: + version "1.1.3" + resolved "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz" + integrity sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g== + +repeat-string@^1.0.0, repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" + integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" + integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + dependencies: + is-finite "^1.0.0" + +replace-ext@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz" + integrity sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw== + +replace-homedir@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz" + integrity sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw= + dependencies: + homedir-polyfill "^1.0.1" + is-absolute "^1.0.0" + remove-trailing-separator "^1.1.0" + +request@^2.87.0, request@^2.88.0: + version "2.88.2" + resolved "https://registry.npmjs.org/request/-/request-2.88.2.tgz" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.3" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.5.0" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz" + integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +requirejs@^2.2.0, requirejs@^2.3.6: + version "2.3.6" + resolved "https://registry.npmjs.org/requirejs/-/requirejs-2.3.6.tgz" + integrity sha512-ipEzlWQe6RK3jkzikgCupiTbTvm4S0/CAU5GlgptkN5SO6F3u0UD0K18wy6ErDqiCyP4J4YYe1HuAShvsxePLg== + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz" + integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + +resolve-dir@^1.0.0, resolve-dir@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz" + integrity sha1-eaQGRMNivoLybv/nOcm7U4IEb0M= + dependencies: + expand-tilde "^2.0.0" + global-modules "^1.0.0" + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve-options@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz" + integrity sha1-MrueOcBtZzONyTeMDW1gdFZq0TE= + dependencies: + value-or-function "^3.0.0" + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz" + integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + +resolve@^1.1.6, resolve@^1.1.7, resolve@^1.10.0, resolve@^1.12.0, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.4.0: + version "1.20.0" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +resp-modifier@6.0.2: + version "6.0.2" + resolved "https://registry.npmjs.org/resp-modifier/-/resp-modifier-6.0.2.tgz" + integrity sha1-sSTeXE+6/LpUH0j/pzlw9KpFa08= + dependencies: + debug "^2.2.0" + minimatch "^3.0.2" + +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== + dependencies: + onetime "^5.1.0" + signal-exit "^3.0.2" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rfg-api@^0.5.0: + version "0.5.1" + resolved "https://registry.npmjs.org/rfg-api/-/rfg-api-0.5.1.tgz" + integrity sha512-F4JJDx7gTFcGNybw+0trDFSYjuy2hbdqDqdaNBkMdSVlasglkfwyTWHTFqSUOLszbpZLwatLy0dxAJonNZi6hw== + dependencies: + axios "^0.18.0" + fstream "^1.0.2" + metaparser "^1.0.7" + mkdirp "^0.5.0" + node-unzip-2 "^0.2.7" + +rimraf@2: + version "2.7.1" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + +rimraf@2.6.3: + version "2.6.3" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz" + integrity sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA== + dependencies: + glob "^7.1.3" + +rimraf@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +run-async@^2.4.0: + version "2.4.1" + resolved "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +rx@4.1.0: + version "4.1.0" + resolved "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz" + integrity sha1-pfE/957zt0D+MKqAP7CfmIBdR4I= + +rxjs@^5.5.6: + version "5.5.12" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz" + integrity sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw== + dependencies: + symbol-observable "1.0.1" + +rxjs@^6.6.0: + version "6.6.3" + resolved "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz" + integrity sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ== + dependencies: + tslib "^1.9.0" + +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz" + integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sass-graph@2.2.5: + version "2.2.5" + resolved "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz" + integrity sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag== + dependencies: + glob "^7.0.0" + lodash "^4.0.0" + scss-tokenizer "^0.2.3" + yargs "^13.3.2" + +sax@~1.2.4: + version "1.2.4" + resolved "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + +scss-tokenizer@^0.2.3: + version "0.2.3" + resolved "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz" + integrity sha1-jrBtualyMzOCTT9VMGQRSYR85dE= + dependencies: + js-base64 "^2.1.8" + source-map "^0.4.2" + +semver-greatest-satisfied-range@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz" + integrity sha1-E+jCZYq5aRywzXEJMkAoDTb3els= + dependencies: + sver-compat "^1.5.0" + +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0: + version "5.7.1" + resolved "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@^6.1.1, semver@^6.1.2: + version "6.3.0" + resolved "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +semver@^7.2.1, semver@^7.3.2: + version "7.3.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz" + integrity sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw== + dependencies: + lru-cache "^6.0.0" + +semver@~5.3.0: + version "5.3.0" + resolved "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz" + integrity sha1-myzl094C0XxgEq0yaqa00M9U+U8= + +send@0.16.2: + version "0.16.2" + resolved "https://registry.npmjs.org/send/-/send-0.16.2.tgz" + integrity sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw== + dependencies: + debug "2.6.9" + depd "~1.1.2" + destroy "~1.0.4" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.6.2" + mime "1.4.1" + ms "2.0.0" + on-finished "~2.3.0" + range-parser "~1.2.0" + statuses "~1.4.0" + +serve-index@1.9.1: + version "1.9.1" + resolved "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz" + integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk= + dependencies: + accepts "~1.3.4" + batch "0.6.1" + debug "2.6.9" + escape-html "~1.0.3" + http-errors "~1.6.2" + mime-types "~2.1.17" + parseurl "~1.3.2" + +serve-static@1.13.2: + version "1.13.2" + resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz" + integrity sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw== + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.2" + send "0.16.2" + +server-destroy@1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz" + integrity sha1-8Tv5KOQrnD55OD5hzDmYtdFObN0= + +set-blocking@^2.0.0, set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +set-value@^3.0.0: + version "3.0.2" + resolved "https://registry.npmjs.org/set-value/-/set-value-3.0.2.tgz" + integrity sha512-npjkVoz+ank0zjlV9F47Fdbjfj/PfXyVhZvGALWsyIYU/qrMzpi6avjKW3/7KeSU2Df3I46BrN1xOI1+6vW0hA== + dependencies: + is-plain-object "^2.0.4" + +"setimmediate@>= 1.0.2 < 2", setimmediate@~1.0.1: + version "1.0.5" + resolved "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz" + integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU= + +setprototypeof@1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz" + integrity sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ== + +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz" + integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +side-channel@^1.0.3, side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.3" + resolved "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz" + integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz" + integrity sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ== + dependencies: + ansi-styles "^3.2.0" + astral-regex "^1.0.0" + is-fullwidth-code-point "^2.0.0" + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +"slice-stream@>= 1.0.0 < 2": + version "1.0.0" + resolved "https://registry.npmjs.org/slice-stream/-/slice-stream-1.0.0.tgz" + integrity sha1-WzO9ZvATsaf4ZGCwPUY97DmtPqA= + dependencies: + readable-stream "~1.0.31" + +snabbdom@^0.7.4: + version "0.7.4" + resolved "https://registry.npmjs.org/snabbdom/-/snabbdom-0.7.4.tgz" + integrity sha512-nnN+7uZ2NTIiu7EPMNwSDhmrYXqwlfCP/j72RdzvDPujXyvQxOW7Jl9yuLayzxMHDNWQR7FM6Pcn4wnDpKRe6Q== + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +socket.io-adapter@~1.1.0: + version "1.1.2" + resolved "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.2.tgz" + integrity sha512-WzZRUj1kUjrTIrUKpZLEzFZ1OLj5FwLlAFQs9kuZJzJi5DKdU7FsWc36SNmA8iDOtwBQyT8FkrriRM8vXLYz8g== + +socket.io-client@2.4.0, socket.io-client@^2.4.0: + version "2.4.0" + resolved "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.4.0.tgz" + integrity sha512-M6xhnKQHuuZd4Ba9vltCLT9oa+YvTsP8j9NcEiLElfIg8KeYPyhWOes6x4t+LTAC8enQbE/995AdTem2uNyKKQ== + dependencies: + backo2 "1.0.2" + component-bind "1.0.0" + component-emitter "~1.3.0" + debug "~3.1.0" + engine.io-client "~3.5.0" + has-binary2 "~1.0.2" + indexof "0.0.1" + parseqs "0.0.6" + parseuri "0.0.6" + socket.io-parser "~3.3.0" + to-array "0.1.4" + +socket.io-parser@~3.3.0: + version "3.3.2" + resolved "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.3.2.tgz" + integrity sha512-FJvDBuOALxdCI9qwRrO/Rfp9yfndRtc1jSgVgV8FDraihmSP/MLGD5PEuJrNfjALvcQ+vMDM/33AWOYP/JSjDg== + dependencies: + component-emitter "~1.3.0" + debug "~3.1.0" + isarray "2.0.1" + +socket.io-parser@~3.4.0: + version "3.4.1" + resolved "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.4.1.tgz" + integrity sha512-11hMgzL+WCLWf1uFtHSNvliI++tcRUWdoeYuwIl+Axvwy9z2gQM+7nJyN3STj1tLj5JyIUH8/gpDGxzAlDdi0A== + dependencies: + component-emitter "1.2.1" + debug "~4.1.0" + isarray "2.0.1" + +socket.io@2.4.0: + version "2.4.0" + resolved "https://registry.npmjs.org/socket.io/-/socket.io-2.4.0.tgz" + integrity sha512-9UPJ1UTvKayuQfVv2IQ3k7tCQC/fboDyIK62i99dAQIyHKaBsNdTpwHLgKJ6guRWxRtC9H+138UwpaGuQO9uWQ== + dependencies: + debug "~4.1.0" + engine.io "~3.5.0" + has-binary2 "~1.0.2" + socket.io-adapter "~1.1.0" + socket.io-client "2.4.0" + socket.io-parser "~3.4.0" + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-resolve@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz" + integrity sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + +source-map-support@~0.5.10: + version "0.5.19" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz" + integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@^0.4.2: + version "0.4.4" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz" + integrity sha1-66T12pwNyZneaAMti092FzZSA2s= + dependencies: + amdefine ">=0.0.4" + +source-map@^0.5.0, source-map@^0.5.1, source-map@^0.5.3, source-map@^0.5.6: + version "0.5.7" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@^0.7.3: + version "0.7.3" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + +sparkles@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz" + integrity sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw== + +spdx-correct@^3.0.0: + version "3.1.1" + resolved "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.7" + resolved "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz" + integrity sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ== + +specificity@^0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz" + integrity sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg== + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + +split-string@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/split-string/-/split-string-6.1.0.tgz" + integrity sha512-9UBdnmnvx2NLLd4bMs7CEKK+wSzbujVv3ONyorkP1o8M3pVJQtXDO1cN19xD1JJs6ltOrtPrkUND0HzLSinUcA== + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +sshpk@^1.7.0: + version "1.16.1" + resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +stable@^0.1.8: + version "0.1.8" + resolved "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz" + integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== + +stack-trace@0.0.10: + version "0.0.10" + resolved "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz" + integrity sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA= + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz" + integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +"statuses@>= 1.4.0 < 2", "statuses@>= 1.5.0 < 2": + version "1.5.0" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" + integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + +statuses@~1.3.1: + version "1.3.1" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz" + integrity sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4= + +statuses@~1.4.0: + version "1.4.0" + resolved "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz" + integrity sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew== + +stdout-stream@^1.4.0: + version "1.4.1" + resolved "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz" + integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA== + dependencies: + readable-stream "^2.0.1" + +stream-exhaust@^1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz" + integrity sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw== + +stream-shift@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz" + integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== + +stream-throttle@^0.1.3: + version "0.1.3" + resolved "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz" + integrity sha1-rdV8jXzHOoFjDTHNVdOWHPr7qcM= + dependencies: + commander "^2.2.0" + limiter "^1.0.5" + +stream-to-array@^2.3.0: + version "2.3.0" + resolved "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz" + integrity sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M= + dependencies: + any-promise "^1.1.0" + +string-width@^1.0.1, string-width@^1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2": + version "2.1.1" + resolved "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0, string-width@^3.1.0: + version "3.1.0" + resolved "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.0" + resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz" + integrity sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.0" + +string.prototype.matchall@^4.0.2: + version "4.0.3" + resolved "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.3.tgz" + integrity sha512-OBxYDA2ifZQ2e13cP82dWFMaCV9CGF8GzmN4fljBVw5O5wep0lu4gacm1OL6MjROoUnB8VbkWRThqkV2YFLNxw== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + has-symbols "^1.0.1" + internal-slot "^1.0.2" + regexp.prototype.flags "^1.3.0" + side-channel "^1.0.3" + +string.prototype.trim@^1.1.2: + version "1.2.3" + resolved "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.3.tgz" + integrity sha512-16IL9pIBA5asNOSukPfxX2W68BaBvxyiRK16H3RA/lWW9BDosh+w7f+LhomPHpXJ82QEe7w7/rY/S1CV97raLg== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.18.0-next.1" + +string.prototype.trimend@^1.0.1, string.prototype.trimend@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz" + integrity sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + +string.prototype.trimstart@^1.0.1, string.prototype.trimstart@^1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz" + integrity sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + 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.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + +strip-ansi@^6.0.0: + version "6.0.0" + resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz" + integrity sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w== + dependencies: + ansi-regex "^5.0.0" + +strip-bom-string@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz" + integrity sha1-5SEekiQ2n7uB1jOi8ABE3IztrZI= + +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" + integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + dependencies: + is-utf8 "^0.2.0" + +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz" + integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= + dependencies: + get-stdin "^4.0.1" + +strip-indent@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz" + integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== + dependencies: + min-indent "^1.0.0" + +strip-json-comments@1.0.2: + version "1.0.2" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-1.0.2.tgz" + integrity sha1-WkirlgI9usG3uND/q/b2PxZ3vp8= + +strip-json-comments@^3.0.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +style-search@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz" + integrity sha1-eVjHk+R+MuB9K1yv5cC/jhLneQI= + +stylelint-config-recommended@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-3.0.0.tgz" + integrity sha512-F6yTRuc06xr1h5Qw/ykb2LuFynJ2IxkKfCMf+1xqPffkxh0S09Zc902XCffcsw/XMFq/OzQ1w54fLIDtmRNHnQ== + +stylelint-config-standard@^20.0.0: + version "20.0.0" + resolved "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-20.0.0.tgz" + integrity sha512-IB2iFdzOTA/zS4jSVav6z+wGtin08qfj+YyExHB3LF9lnouQht//YyB0KZq9gGz5HNPkddHOzcY8HsUey6ZUlA== + dependencies: + stylelint-config-recommended "^3.0.0" + +stylelint@^13.10.0: + version "13.10.0" + resolved "https://registry.npmjs.org/stylelint/-/stylelint-13.10.0.tgz" + integrity sha512-eDuLrL0wzPKbl5/TbNGZcbw0lTIGbDEr5W6lCODvb1gAg0ncbgCRt7oU0C2VFDvbrcY0A3MFZOwltwTRmc0XCw== + dependencies: + "@stylelint/postcss-css-in-js" "^0.37.2" + "@stylelint/postcss-markdown" "^0.36.2" + autoprefixer "^9.8.6" + balanced-match "^1.0.0" + chalk "^4.1.0" + cosmiconfig "^7.0.0" + debug "^4.3.1" + execall "^2.0.0" + fast-glob "^3.2.5" + fastest-levenshtein "^1.0.12" + file-entry-cache "^6.0.0" + get-stdin "^8.0.0" + global-modules "^2.0.0" + globby "^11.0.2" + globjoin "^0.1.4" + html-tags "^3.1.0" + ignore "^5.1.8" + import-lazy "^4.0.0" + imurmurhash "^0.1.4" + known-css-properties "^0.21.0" + lodash "^4.17.20" + log-symbols "^4.0.0" + mathml-tag-names "^2.1.3" + meow "^9.0.0" + micromatch "^4.0.2" + normalize-selector "^0.2.0" + postcss "^7.0.35" + postcss-html "^0.36.0" + postcss-less "^3.1.4" + postcss-media-query-parser "^0.2.3" + postcss-resolve-nested-selector "^0.1.1" + postcss-safe-parser "^4.0.2" + postcss-sass "^0.4.4" + postcss-scss "^2.1.1" + postcss-selector-parser "^6.0.4" + postcss-syntax "^0.36.2" + postcss-value-parser "^4.1.0" + resolve-from "^5.0.0" + slash "^3.0.0" + specificity "^0.4.1" + string-width "^4.2.0" + strip-ansi "^6.0.0" + style-search "^0.1.0" + sugarss "^2.0.0" + svg-tags "^1.0.0" + table "^6.0.7" + v8-compile-cache "^2.2.0" + write-file-atomic "^3.0.3" + +sugarss@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz" + integrity sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ== + dependencies: + postcss "^7.0.2" + +superagent@~5.0.5: + version "5.0.9" + resolved "https://registry.npmjs.org/superagent/-/superagent-5.0.9.tgz" + integrity sha512-aOBxh0xN3nCcaG0oot9apJe77FzzCOsg469l06Nw0gW7p9q0mfyAOhSiCLzHCFxKKCNtTx8cxymqoY2cGUfV8g== + dependencies: + component-emitter "^1.3.0" + cookiejar "^2.1.2" + debug "^4.1.1" + fast-safe-stringify "^2.0.6" + form-data "^2.3.3" + formidable "^1.2.1" + methods "^1.1.2" + mime "^2.4.4" + qs "^6.7.0" + readable-stream "^3.4.0" + semver "^6.1.1" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" + integrity sha1-U10EXOa2Nj+kARcIRimZXp3zJMc= + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^6.1.0: + version "6.1.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz" + integrity sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +sver-compat@^1.5.0: + version "1.5.0" + resolved "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz" + integrity sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg= + dependencies: + es6-iterator "^2.0.1" + es6-symbol "^3.1.1" + +svg-tags@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz" + integrity sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q= + +svgo@~1.2.2: + version "1.2.2" + resolved "https://registry.npmjs.org/svgo/-/svgo-1.2.2.tgz" + integrity sha512-rAfulcwp2D9jjdGu+0CuqlrAUin6bBWrpoqXWwKDZZZJfXcUXQSxLJOFJCQCSA0x0pP2U0TxSlJu2ROq5Bq6qA== + dependencies: + chalk "^2.4.1" + coa "^2.0.2" + css-select "^2.0.0" + css-select-base-adapter "^0.1.1" + css-tree "1.0.0-alpha.28" + css-url-regex "^1.1.0" + csso "^3.5.1" + js-yaml "^3.13.1" + mkdirp "~0.5.1" + object.values "^1.1.0" + sax "~1.2.4" + stable "^0.1.8" + unquote "~1.1.1" + util.promisify "~1.0.0" + +symbol-observable@1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz" + integrity sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ= + +table@^5.2.3: + version "5.4.6" + resolved "https://registry.npmjs.org/table/-/table-5.4.6.tgz" + integrity sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug== + dependencies: + ajv "^6.10.2" + lodash "^4.17.14" + slice-ansi "^2.1.0" + string-width "^3.0.0" + +table@^6.0.4, table@^6.0.7: + version "6.0.7" + resolved "https://registry.npmjs.org/table/-/table-6.0.7.tgz" + integrity sha512-rxZevLGTUzWna/qBLObOe16kB2RTnnbhciwgPbMMlazz1yZGVEgnZK762xyVdVznhqxrfCeBMmMkgOOaPwjH7g== + dependencies: + ajv "^7.0.2" + lodash "^4.17.20" + slice-ansi "^4.0.0" + string-width "^4.2.0" + +tar@^2.0.0: + version "2.2.2" + resolved "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz" + integrity sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA== + dependencies: + block-stream "*" + fstream "^1.0.12" + inherits "2" + +temp-write@^2.1.0: + version "2.1.0" + resolved "https://registry.npmjs.org/temp-write/-/temp-write-2.1.0.tgz" + integrity sha1-WYkJGODvCdVIqqNC9L00CdhATpY= + dependencies: + graceful-fs "^4.1.2" + mkdirp "^0.5.0" + os-tmpdir "^1.0.0" + pify "^2.2.0" + pinkie-promise "^2.0.0" + uuid "^2.0.1" + +ternary-stream@^2.0.1: + version "2.1.1" + resolved "https://registry.npmjs.org/ternary-stream/-/ternary-stream-2.1.1.tgz" + integrity sha512-j6ei9hxSoyGlqTmoMjOm+QNvUKDOIY6bNl4Uh1lhBvl6yjPW2iLqxDUYyfDPZknQ4KdRziFl+ec99iT4l7g0cw== + dependencies: + duplexify "^3.5.0" + fork-stream "^0.0.4" + merge-stream "^1.0.0" + through2 "^2.0.1" + +terser@~3.17.0: + version "3.17.0" + resolved "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz" + integrity sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ== + dependencies: + commander "^2.19.0" + source-map "~0.6.1" + source-map-support "~0.5.10" + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + +tfunk@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/tfunk/-/tfunk-4.0.0.tgz" + integrity sha512-eJQ0dGfDIzWNiFNYFVjJ+Ezl/GmwHaFTBTjrtqNPW0S7cuVDBrZrmzUz6VkMeCR4DZFqhd4YtLwsw3i2wYHswQ== + dependencies: + chalk "^1.1.3" + dlv "^1.1.3" + +through2-filter@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz" + integrity sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA== + dependencies: + through2 "~2.0.0" + xtend "~4.0.0" + +through2@2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/through2/-/through2-2.0.1.tgz" + integrity sha1-OE51MU1J8y3hLuu4E2uOtrXVnak= + dependencies: + readable-stream "~2.0.0" + xtend "~4.0.0" + +through2@^2.0.0, through2@^2.0.1, through2@^2.0.3, through2@~2.0.0: + version "2.0.5" + resolved "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +through2@^3.0.1: + version "3.0.2" + resolved "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz" + integrity sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ== + dependencies: + inherits "^2.0.4" + readable-stream "2 || 3" + +through2@~0.6.5: + version "0.6.5" + resolved "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz" + integrity sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg= + dependencies: + readable-stream ">=1.0.33-1 <1.1.0-0" + xtend ">=4.0.0 <4.1.0-0" + +through@^2.3.6: + version "2.3.8" + resolved "https://registry.npmjs.org/through/-/through-2.3.8.tgz" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + +time-stamp@^1.0.0: + version "1.1.0" + resolved "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz" + integrity sha1-dkpaEa9QVhkhsTPztE5hhofg9cM= + +timers-ext@^0.1.7: + version "0.1.7" + resolved "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.7.tgz" + integrity sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ== + dependencies: + es5-ext "~0.10.46" + next-tick "1" + +tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== + dependencies: + os-tmpdir "~1.0.2" + +to-absolute-glob@^2.0.0: + version "2.0.2" + resolved "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz" + integrity sha1-GGX0PZ50sIItufFFt4z/fQ98hJs= + dependencies: + is-absolute "^1.0.0" + is-negated-glob "^1.0.0" + +to-array@0.1.4: + version "0.1.4" + resolved "https://registry.npmjs.org/to-array/-/to-array-0.1.4.tgz" + integrity sha1-F+bBH3PdTz10zaek/zI46a2b+JA= + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz" + integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz" + integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +to-through@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz" + integrity sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY= + dependencies: + through2 "^2.0.3" + +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz" + integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== + +tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== + dependencies: + psl "^1.1.28" + punycode "^2.1.1" + +"traverse@>=0.3.0 <0.4": + version "0.3.9" + resolved "https://registry.npmjs.org/traverse/-/traverse-0.3.9.tgz" + integrity sha1-cXuPIgzAu3tE5AUUwisui7xw2Lk= + +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz" + integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= + +trim-newlines@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.0.tgz" + integrity sha512-C4+gOpvmxaSMKuEf9Qc134F1ZuOHVXKRbtEflf4NTtuuJDEIJ9p5PXsalL8SkeRw+qit1Mo+yuvMPAKwWg/1hA== + +trough@^1.0.0: + version "1.0.5" + resolved "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz" + integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA== + +"true-case-path@^1.0.2": + version "1.0.3" + resolved "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz" + integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew== + dependencies: + glob "^7.1.2" + +tslib@^1.9.0: + version "1.14.1" + resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + dependencies: + prelude-ls "~1.1.2" + +type-fest@^0.11.0: + version "0.11.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz" + integrity sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ== + +type-fest@^0.18.0: + version "0.18.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz" + integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +type@^1.0.1: + version "1.2.0" + resolved "https://registry.npmjs.org/type/-/type-1.2.0.tgz" + integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== + +type@^2.0.0: + version "2.2.0" + resolved "https://registry.npmjs.org/type/-/type-2.2.0.tgz" + integrity sha512-M/u37b4oSGlusaU8ZB96BfFPWQ8MbsZYXB+kXGMiDj6IKinkcNaQvmirBuWj8mAXqP6LYn1rQvbTYum3yPhaOA== + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + +ua-parser-js@^0.7.18: + version "0.7.24" + resolved "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.24.tgz" + integrity sha512-yo+miGzQx5gakzVK3QFfN0/L9uVhosXBBO7qmnk7c2iw1IhL212wfA3zbnI54B0obGwC/5NWub/iT9sReMx+Fw== + +uglify-js@3.4.x: + version "3.4.10" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz" + integrity sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw== + dependencies: + commander "~2.19.0" + source-map "~0.6.1" + +uglify-js@^3.0.5: + version "3.12.8" + resolved "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.8.tgz" + integrity sha512-fvBeuXOsvqjecUtF/l1dwsrrf5y2BCUk9AOJGzGcm6tE7vegku5u/YvqjyDaAGr422PLoLnrxg3EnRvTqsdC1w== + +unc-path-regex@^0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz" + integrity sha1-5z3T17DXxe2G+6xrCufYxqadUPo= + +underscore@*: + version "1.12.0" + resolved "https://registry.npmjs.org/underscore/-/underscore-1.12.0.tgz" + integrity sha512-21rQzss/XPMjolTiIezSu3JAjgagXKROtNrYFEOWK109qY1Uv2tVjPTZ1ci2HgvQDA16gHYSthQIJfB+XId/rQ== + +undertaker-registry@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz" + integrity sha1-XkvaMI5KiirlhPm5pDWaSZglzFA= + +undertaker@^1.2.1: + version "1.3.0" + resolved "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz" + integrity sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg== + dependencies: + arr-flatten "^1.0.1" + arr-map "^2.0.0" + bach "^1.0.0" + collection-map "^1.0.0" + es6-weak-map "^2.0.1" + fast-levenshtein "^1.0.0" + last-run "^1.1.0" + object.defaults "^1.0.0" + object.reduce "^1.0.0" + undertaker-registry "^1.0.0" + +unified@^9.1.0: + version "9.2.0" + resolved "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz" + integrity sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg== + dependencies: + bail "^1.0.0" + extend "^3.0.0" + is-buffer "^2.0.0" + is-plain-obj "^2.0.0" + trough "^1.0.0" + vfile "^4.0.0" + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +union-value@^2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/union-value/-/union-value-2.0.1.tgz" + integrity sha512-NmcRHHhUy1qWmp6yYWsaURV2qwfS24TmTtO9S9x0L41wCNNVBQFD3toOzO0cd8SsNrFhbw/O0iYO5uffXGYocw== + dependencies: + get-value "^3.0.1" + set-value "^3.0.0" + +uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz" + integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= + +unique-stream@^2.0.2: + version "2.3.1" + resolved "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz" + integrity sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A== + dependencies: + json-stable-stringify-without-jsonify "^1.0.1" + through2-filter "^3.0.0" + +unist-util-find-all-after@^3.0.2: + version "3.0.2" + resolved "https://registry.npmjs.org/unist-util-find-all-after/-/unist-util-find-all-after-3.0.2.tgz" + integrity sha512-xaTC/AGZ0rIM2gM28YVRAFPIZpzbpDtU3dRmp7EXlNVA8ziQc4hY3H7BHXM1J49nEmiqc3svnqMReW+PGqbZKQ== + dependencies: + unist-util-is "^4.0.0" + +unist-util-is@^4.0.0: + version "4.0.4" + resolved "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.0.4.tgz" + integrity sha512-3dF39j/u423v4BBQrk1AQ2Ve1FxY5W3JKwXxVFzBODQ6WEvccguhgp802qQLKSnxPODE6WuRZtV+ohlUg4meBA== + +unist-util-stringify-position@^2.0.0: + version "2.0.3" + resolved "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz" + integrity sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g== + dependencies: + "@types/unist" "^2.0.2" + +universalify@^0.1.0: + version "0.1.2" + resolved "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" + integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + +unquote@~1.1.1: + version "1.1.1" + resolved "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz" + integrity sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ= + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz" + integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +upath@^1.1.1: + version "1.2.0" + resolved "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz" + integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== + +upper-case@^1.1.1: + version "1.1.3" + resolved "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz" + integrity sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg= + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" + integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.npmjs.org/use/-/use-3.1.1.tgz" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +util.promisify@~1.0.0: + version "1.0.1" + resolved "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz" + integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.17.2" + has-symbols "^1.0.1" + object.getownpropertydescriptors "^2.1.0" + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" + integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + +uuid@^2.0.1: + version "2.0.3" + resolved "https://registry.npmjs.org/uuid/-/uuid-2.0.3.tgz" + integrity sha1-Z+LoY3lyFVMN/zGOW/nc6/1Hsho= + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + +v8-compile-cache@^2.0.3, v8-compile-cache@^2.2.0: + version "2.2.0" + resolved "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz" + integrity sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q== + +v8flags@^3.2.0: + version "3.2.0" + resolved "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz" + integrity sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg== + dependencies: + homedir-polyfill "^1.0.1" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +value-or-function@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz" + integrity sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM= + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +vfile-message@^2.0.0: + version "2.0.4" + resolved "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz" + integrity sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ== + dependencies: + "@types/unist" "^2.0.0" + unist-util-stringify-position "^2.0.0" + +vfile@^4.0.0: + version "4.2.1" + resolved "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz" + integrity sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA== + dependencies: + "@types/unist" "^2.0.0" + is-buffer "^2.0.0" + unist-util-stringify-position "^2.0.0" + vfile-message "^2.0.0" + +vinyl-fs@^3.0.0: + version "3.0.3" + resolved "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz" + integrity sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng== + dependencies: + fs-mkdirp-stream "^1.0.0" + glob-stream "^6.1.0" + graceful-fs "^4.0.0" + is-valid-glob "^1.0.0" + lazystream "^1.0.0" + lead "^1.0.0" + object.assign "^4.0.4" + pumpify "^1.3.5" + readable-stream "^2.3.3" + remove-bom-buffer "^3.0.0" + remove-bom-stream "^1.2.0" + resolve-options "^1.1.0" + through2 "^2.0.0" + to-through "^2.0.0" + value-or-function "^3.0.0" + vinyl "^2.0.0" + vinyl-sourcemap "^1.1.0" + +vinyl-sourcemap@^1.1.0: + version "1.1.0" + resolved "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz" + integrity sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY= + dependencies: + append-buffer "^1.0.2" + convert-source-map "^1.5.0" + graceful-fs "^4.1.6" + normalize-path "^2.1.1" + now-and-later "^2.0.0" + remove-bom-buffer "^3.0.0" + vinyl "^2.0.0" + +vinyl-sourcemaps-apply@^0.2.0, vinyl-sourcemaps-apply@^0.2.1: + version "0.2.1" + resolved "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz" + integrity sha1-q2VJ1h0XLCsbh75cUI0jnI74dwU= + dependencies: + source-map "^0.5.1" + +vinyl@^2.0.0, vinyl@^2.1.0: + version "2.2.1" + resolved "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz" + integrity sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw== + dependencies: + clone "^2.1.1" + clone-buffer "^1.0.0" + clone-stats "^1.0.0" + cloneable-readable "^1.0.0" + remove-trailing-separator "^1.0.1" + replace-ext "^1.0.0" + +warning@^3.0.0: + version "3.0.0" + resolved "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz" + integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w= + dependencies: + loose-envify "^1.0.0" + +which-module@^1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz" + integrity sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8= + +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz" + integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= + +which@1, which@^1.2.14, which@^1.2.9, which@^1.3.1: + version "1.3.1" + resolved "https://registry.npmjs.org/which/-/which-1.3.1.tgz" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.npmjs.org/which/-/which-2.0.2.tgz" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.3" + resolved "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz" + integrity sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA== + dependencies: + string-width "^1.0.2 || 2" + +word-wrap@^1.2.3, word-wrap@~1.2.3: + version "1.2.3" + resolved "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz" + integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" + 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.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +write-file-atomic@^3.0.3: + version "3.0.3" + resolved "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +write@1.0.3: + version "1.0.3" + resolved "https://registry.npmjs.org/write/-/write-1.0.3.tgz" + integrity sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig== + dependencies: + mkdirp "^0.5.1" + +ws@~7.4.2: + version "7.4.3" + resolved "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz" + integrity sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA== + +xmlhttprequest-ssl@~1.5.4: + version "1.5.5" + resolved "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-1.5.5.tgz" + integrity sha1-wodrBhaKrcQOV9l+gRkayPQ5iz4= + +"xtend@>=4.0.0 <4.1.0-0", xtend@~4.0.0, xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^3.2.1: + version "3.2.2" + resolved "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz" + integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== + +y18n@^4.0.0: + version "4.0.1" + resolved "https://registry.npmjs.org/y18n/-/y18n-4.0.1.tgz" + integrity sha512-wNcy4NvjMYL8gogWWYAO7ZFWFfHcbdbE57tZO8e4cbpj8tfUcwrwqSl3ad8HxpYWCdXcJUCeKKZS62Av1affwQ== + +y18n@^5.0.5: + version "5.0.5" + resolved "https://registry.npmjs.org/y18n/-/y18n-5.0.5.tgz" + integrity sha512-hsRUr4FFrvhhRH12wOdfs38Gy7k2FFzB9qgN9v3aLykRq0dRcdcpz5C9FxdS2NuhOrI/628b/KSTJ3rwHysYSg== + +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@^1.10.0: + version "1.10.0" + resolved "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz" + integrity sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg== + +yargs-parser@5.0.0-security.0: + version "5.0.0-security.0" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz" + integrity sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ== + dependencies: + camelcase "^3.0.0" + object.assign "^4.1.0" + +yargs-parser@^13.1.2: + version "13.1.2" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz" + integrity sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^20.2.2, yargs-parser@^20.2.3: + version "20.2.5" + resolved "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.5.tgz" + integrity sha512-jYRGS3zWy20NtDtK2kBgo/TlAoy5YUuhD9/LZ7z7W4j1Fdw2cqD0xEEclf8fxc8xjD6X5Qr+qQQwCEsP8iRiYg== + +yargs@16.2.0: + version "16.2.0" + resolved "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz" + 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@^13.3.2: + version "13.3.2" + resolved "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz" + integrity sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw== + dependencies: + cliui "^5.0.0" + find-up "^3.0.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^3.0.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^13.1.2" + +yargs@^15.0.1, yargs@^15.4.1: + version "15.4.1" + resolved "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yargs@^7.1.0: + version "7.1.1" + resolved "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz" + integrity sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g== + dependencies: + camelcase "^3.0.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^1.4.0" + read-pkg-up "^1.0.1" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^1.0.2" + which-module "^1.0.0" + y18n "^3.2.1" + yargs-parser "5.0.0-security.0" + +yeast@0.1.2: + version "0.1.2" + resolved "https://registry.npmjs.org/yeast/-/yeast-0.1.2.tgz" + integrity sha1-AI4G2AlDIMNy28L47XagymyKxBk= + +zwitch@^1.0.0: + version "1.0.5" + resolved "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz" + integrity sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==