├── .gitignore ├── LICENSE ├── README.md ├── closure-compiler ├── COPYING ├── README.md └── closure-compiler-v20190301.jar ├── dev ├── index.html └── index.js ├── package-lock.json ├── package.json ├── packages.dhall ├── pnpm-lock.yaml ├── spago.dhall ├── src └── Main.purs └── test └── Main.purs /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | npm-debug.log 3 | node_modules/ 4 | bower_components/ 5 | tmp/ 6 | output/ 7 | prod/ 8 | html/index.js 9 | /.psc-package 10 | /.cache 11 | /dist 12 | /.spago 13 | /.parcel-cache 14 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2019 Anupam Jain 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a 4 | copy of this software and associated documentation files (the 5 | "Software"), in the Software without restriction, including without 6 | limitation the rights to use, copy, modify, merge, publish, distribute, 7 | sublicense, and/or sell copies of the Software, and to permit persons to 8 | whom the Software is furnished to do so, subject to the following 9 | conditions: 10 | 11 | The above copyright notice and this permission notice shall be included 12 | in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 15 | OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 17 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 18 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 19 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 20 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Purescript Concur Starter 2 | 3 | A Starter kit for Purescript-Concur. Uses Npm, Spago, Google Closure Compiler, and Parcel. Builds tiny 180KB uncompressed bundles! 4 | 5 | ## Usage 6 | 7 | ### Grab the code 8 | 9 | > git clone https://github.com/purescript-concur/purescript-concur-starter.git 10 | 11 | Don't forget to tweak the project name and other details in package.json and bower.json 12 | 13 | ### Build code 14 | 15 | > npm install 16 | 17 | > npm run build 18 | 19 | ### Run Dev Server 20 | 21 | > npm start 22 | 23 | ## Hot code reload with purescript code 24 | 25 | At the end of the previous command, you will have a development server 26 | which will watch for changes, and automatically reload the web page. 27 | This mechanism only works with JS changes. 28 | 29 | However, in practice, your IDE should automatically recompile Purescript to 30 | Javascript on every change, which will be picked up by the development server. 31 | So you get immediate recompilation even with Purescript. 32 | 33 | ### Build production artifacts 34 | 35 | > npm run prod 36 | 37 | The artifacts are put into the `dist/` folder. 38 | 39 | ## Sample Application 40 | 41 | The starter kit contains a simple yet non-trivial concur application that lets you convert between feet and inches. It also acts as a mini tutorial for Concur. Read through the code at [Main.purs](src/Main.purs)! 42 | 43 | The running application looks something like this - 44 | 45 | image 46 | -------------------------------------------------------------------------------- /closure-compiler/COPYING: -------------------------------------------------------------------------------- 1 | 2 | Apache License 3 | Version 2.0, January 2004 4 | http://www.apache.org/licenses/ 5 | 6 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 7 | 8 | 1. Definitions. 9 | 10 | "License" shall mean the terms and conditions for use, reproduction, 11 | and distribution as defined by Sections 1 through 9 of this document. 12 | 13 | "Licensor" shall mean the copyright owner or entity authorized by 14 | the copyright owner that is granting the License. 15 | 16 | "Legal Entity" shall mean the union of the acting entity and all 17 | other entities that control, are controlled by, or are under common 18 | control with that entity. For the purposes of this definition, 19 | "control" means (i) the power, direct or indirect, to cause the 20 | direction or management of such entity, whether by contract or 21 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 22 | outstanding shares, or (iii) beneficial ownership of such entity. 23 | 24 | "You" (or "Your") shall mean an individual or Legal Entity 25 | exercising permissions granted by this License. 26 | 27 | "Source" form shall mean the preferred form for making modifications, 28 | including but not limited to software source code, documentation 29 | source, and configuration files. 30 | 31 | "Object" form shall mean any form resulting from mechanical 32 | transformation or translation of a Source form, including but 33 | not limited to compiled object code, generated documentation, 34 | and conversions to other media types. 35 | 36 | "Work" shall mean the work of authorship, whether in Source or 37 | Object form, made available under the License, as indicated by a 38 | copyright notice that is included in or attached to the work 39 | (an example is provided in the Appendix below). 40 | 41 | "Derivative Works" shall mean any work, whether in Source or Object 42 | form, that is based on (or derived from) the Work and for which the 43 | editorial revisions, annotations, elaborations, or other modifications 44 | represent, as a whole, an original work of authorship. For the purposes 45 | of this License, Derivative Works shall not include works that remain 46 | separable from, or merely link (or bind by name) to the interfaces of, 47 | the Work and Derivative Works thereof. 48 | 49 | "Contribution" shall mean any work of authorship, including 50 | the original version of the Work and any modifications or additions 51 | to that Work or Derivative Works thereof, that is intentionally 52 | submitted to Licensor for inclusion in the Work by the copyright owner 53 | or by an individual or Legal Entity authorized to submit on behalf of 54 | the copyright owner. For the purposes of this definition, "submitted" 55 | means any form of electronic, verbal, or written communication sent 56 | to the Licensor or its representatives, including but not limited to 57 | communication on electronic mailing lists, source code control systems, 58 | and issue tracking systems that are managed by, or on behalf of, the 59 | Licensor for the purpose of discussing and improving the Work, but 60 | excluding communication that is conspicuously marked or otherwise 61 | designated in writing by the copyright owner as "Not a Contribution." 62 | 63 | "Contributor" shall mean Licensor and any individual or Legal Entity 64 | on behalf of whom a Contribution has been received by Licensor and 65 | subsequently incorporated within the Work. 66 | 67 | 2. Grant of Copyright License. Subject to the terms and conditions of 68 | this License, each Contributor hereby grants to You a perpetual, 69 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 70 | copyright license to reproduce, prepare Derivative Works of, 71 | publicly display, publicly perform, sublicense, and distribute the 72 | Work and such Derivative Works in Source or Object form. 73 | 74 | 3. Grant of Patent License. Subject to the terms and conditions of 75 | this License, each Contributor hereby grants to You a perpetual, 76 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 77 | (except as stated in this section) patent license to make, have made, 78 | use, offer to sell, sell, import, and otherwise transfer the Work, 79 | where such license applies only to those patent claims licensable 80 | by such Contributor that are necessarily infringed by their 81 | Contribution(s) alone or by combination of their Contribution(s) 82 | with the Work to which such Contribution(s) was submitted. If You 83 | institute patent litigation against any entity (including a 84 | cross-claim or counterclaim in a lawsuit) alleging that the Work 85 | or a Contribution incorporated within the Work constitutes direct 86 | or contributory patent infringement, then any patent licenses 87 | granted to You under this License for that Work shall terminate 88 | as of the date such litigation is filed. 89 | 90 | 4. Redistribution. You may reproduce and distribute copies of the 91 | Work or Derivative Works thereof in any medium, with or without 92 | modifications, and in Source or Object form, provided that You 93 | meet the following conditions: 94 | 95 | (a) You must give any other recipients of the Work or 96 | Derivative Works a copy of this License; and 97 | 98 | (b) You must cause any modified files to carry prominent notices 99 | stating that You changed the files; and 100 | 101 | (c) You must retain, in the Source form of any Derivative Works 102 | that You distribute, all copyright, patent, trademark, and 103 | attribution notices from the Source form of the Work, 104 | excluding those notices that do not pertain to any part of 105 | the Derivative Works; and 106 | 107 | (d) If the Work includes a "NOTICE" text file as part of its 108 | distribution, then any Derivative Works that You distribute must 109 | include a readable copy of the attribution notices contained 110 | within such NOTICE file, excluding those notices that do not 111 | pertain to any part of the Derivative Works, in at least one 112 | of the following places: within a NOTICE text file distributed 113 | as part of the Derivative Works; within the Source form or 114 | documentation, if provided along with the Derivative Works; or, 115 | within a display generated by the Derivative Works, if and 116 | wherever such third-party notices normally appear. The contents 117 | of the NOTICE file are for informational purposes only and 118 | do not modify the License. You may add Your own attribution 119 | notices within Derivative Works that You distribute, alongside 120 | or as an addendum to the NOTICE text from the Work, provided 121 | that such additional attribution notices cannot be construed 122 | as modifying the License. 123 | 124 | You may add Your own copyright statement to Your modifications and 125 | may provide additional or different license terms and conditions 126 | for use, reproduction, or distribution of Your modifications, or 127 | for any such Derivative Works as a whole, provided Your use, 128 | reproduction, and distribution of the Work otherwise complies with 129 | the conditions stated in this License. 130 | 131 | 5. Submission of Contributions. Unless You explicitly state otherwise, 132 | any Contribution intentionally submitted for inclusion in the Work 133 | by You to the Licensor shall be under the terms and conditions of 134 | this License, without any additional terms or conditions. 135 | Notwithstanding the above, nothing herein shall supersede or modify 136 | the terms of any separate license agreement you may have executed 137 | with Licensor regarding such Contributions. 138 | 139 | 6. Trademarks. This License does not grant permission to use the trade 140 | names, trademarks, service marks, or product names of the Licensor, 141 | except as required for reasonable and customary use in describing the 142 | origin of the Work and reproducing the content of the NOTICE file. 143 | 144 | 7. Disclaimer of Warranty. Unless required by applicable law or 145 | agreed to in writing, Licensor provides the Work (and each 146 | Contributor provides its Contributions) on an "AS IS" BASIS, 147 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 148 | implied, including, without limitation, any warranties or conditions 149 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 150 | PARTICULAR PURPOSE. You are solely responsible for determining the 151 | appropriateness of using or redistributing the Work and assume any 152 | risks associated with Your exercise of permissions under this License. 153 | 154 | 8. Limitation of Liability. In no event and under no legal theory, 155 | whether in tort (including negligence), contract, or otherwise, 156 | unless required by applicable law (such as deliberate and grossly 157 | negligent acts) or agreed to in writing, shall any Contributor be 158 | liable to You for damages, including any direct, indirect, special, 159 | incidental, or consequential damages of any character arising as a 160 | result of this License or out of the use or inability to use the 161 | Work (including but not limited to damages for loss of goodwill, 162 | work stoppage, computer failure or malfunction, or any and all 163 | other commercial damages or losses), even if such Contributor 164 | has been advised of the possibility of such damages. 165 | 166 | 9. Accepting Warranty or Additional Liability. While redistributing 167 | the Work or Derivative Works thereof, You may choose to offer, 168 | and charge a fee for, acceptance of support, warranty, indemnity, 169 | or other liability obligations and/or rights consistent with this 170 | License. However, in accepting such obligations, You may act only 171 | on Your own behalf and on Your sole responsibility, not on behalf 172 | of any other Contributor, and only if You agree to indemnify, 173 | defend, and hold each Contributor harmless for any liability 174 | incurred by, or claims asserted against, such Contributor by reason 175 | of your accepting any such warranty or additional liability. 176 | 177 | END OF TERMS AND CONDITIONS 178 | 179 | APPENDIX: How to apply the Apache License to your work. 180 | 181 | To apply the Apache License to your work, attach the following 182 | boilerplate notice, with the fields enclosed by brackets "[]" 183 | replaced with your own identifying information. (Don't include 184 | the brackets!) The text should be enclosed in the appropriate 185 | comment syntax for the file format. We also recommend that a 186 | file or class name and description of purpose be included on the 187 | same "printed page" as the copyright notice for easier 188 | identification within third-party archives. 189 | 190 | Copyright [yyyy] [name of copyright owner] 191 | 192 | Licensed under the Apache License, Version 2.0 (the "License"); 193 | you may not use this file except in compliance with the License. 194 | You may obtain a copy of the License at 195 | 196 | http://www.apache.org/licenses/LICENSE-2.0 197 | 198 | Unless required by applicable law or agreed to in writing, software 199 | distributed under the License is distributed on an "AS IS" BASIS, 200 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 201 | See the License for the specific language governing permissions and 202 | limitations under the License. 203 | -------------------------------------------------------------------------------- /closure-compiler/README.md: -------------------------------------------------------------------------------- 1 | # [Google Closure Compiler](https://developers.google.com/closure/compiler/) 2 | 3 | [![Build Status](https://travis-ci.org/google/closure-compiler.svg?branch=master)](https://travis-ci.org/google/closure-compiler) 4 | [![Open Source Helpers](https://www.codetriage.com/google/closure-compiler/badges/users.svg)](https://www.codetriage.com/google/closure-compiler) 5 | 6 | The [Closure Compiler](https://developers.google.com/closure/compiler/) is a tool for making JavaScript download and run faster. It is a true compiler for JavaScript. Instead of compiling from a source language to machine code, it compiles from JavaScript to better JavaScript. It parses your JavaScript, analyzes it, removes dead code and rewrites and minimizes what's left. It also checks syntax, variable references, and types, and warns about common JavaScript pitfalls. 7 | 8 | ## Getting Started 9 | * [Download the latest version](https://dl.google.com/closure-compiler/compiler-latest.zip) ([Release details here](https://github.com/google/closure-compiler/wiki/Releases)) 10 | * [Download a specific version](https://github.com/google/closure-compiler/wiki/Binary-Downloads). Also available via: 11 | - [Maven](https://github.com/google/closure-compiler/wiki/Maven) 12 | - [NPM](https://www.npmjs.com/package/google-closure-compiler) - includes java, native and javascript versions. 13 | * See the [Google Developers Site](https://developers.google.com/closure/compiler/docs/gettingstarted_app) for documentation including instructions for running the compiler from the command line. 14 | 15 | ## Options for Getting Help 16 | 1. Post in the [Closure Compiler Discuss Group](https://groups.google.com/forum/#!forum/closure-compiler-discuss). 17 | 2. Ask a question on [Stack Overflow](https://stackoverflow.com/questions/tagged/google-closure-compiler). 18 | 3. Consult the [FAQ](https://github.com/google/closure-compiler/wiki/FAQ). 19 | 20 | ## Building it Yourself 21 | 22 | Note: The Closure Compiler requires [Java 8 or higher](https://www.java.com/). 23 | 24 | ### Using [Maven](https://maven.apache.org/) 25 | 26 | 1. Download [Maven](https://maven.apache.org/download.cgi). 27 | 28 | 2. Add sonatype snapshots repository to `~/.m2/settings.xml`: 29 | ```xml 30 | 31 | allow-snapshots 32 | true 33 | 34 | 35 | snapshots-repo 36 | https://oss.sonatype.org/content/repositories/snapshots 37 | false 38 | true 39 | 40 | 41 | 42 | ``` 43 | 44 | 3. On the command line, at the root of this project, run `mvn -DskipTests` (omit the `-DskipTests` if you want to run all the 45 | unit tests too). 46 | 47 | This will produce a jar file called `target/closure-compiler-1.0-SNAPSHOT.jar`. You can run this jar 48 | as per the [Running section](#running) of this Readme. If you want to depend on the compiler via 49 | Maven in another Java project, use the `com.google.javascript/closure-compiler-unshaded` artifact. 50 | 51 | Running `mvn -DskipTests -pl externs/pom.xml,pom-main.xml,pom-main-shaded.xml` 52 | will skip building the GWT version of the compiler. This can speed up the build process significantly. 53 | 54 | ### Using [Eclipse](https://www.eclipse.org/) 55 | 56 | 1. Download and open [Eclipse IDE](https://www.eclipse.org/). Disable `Project > Build automatically` during this process. 57 | 2. On the command line, at the root of this project, run `mvn eclipse:eclipse -DdownloadSources=true` to download JARs and build Eclipse project configuration. 58 | 3. Run `mvn clean` and `mvn -DskipTests` to ensure AutoValues are generated and updated. 59 | 4. In Eclipse, navigate to `File > Import > Maven > Existing Maven Projects` and browse to closure-compiler. 60 | 5. Import both closure-compiler and the nested externs project. 61 | 6. Disregard the warnings about maven-antrun-plugin and build errors. 62 | 7. Configure the project to use the [Google Eclipse style guide](https://github.com/google/styleguide/blob/gh-pages/eclipse-java-google-style.xml) 63 | 8. Edit `.classpath` in closure-compiler-parent. Delete the `` line, then add: 64 | ```xml 65 | 66 | 67 | ``` 68 | 9. Ensure the Eclipse project settings specify 1.8 compliance level in "Java Compiler". 69 | 10. Build project in Eclipse (right click on the project `closure-compiler-parent` and select `Build Project`). 70 | 11. See *Using Maven* above to build the JAR. 71 | 72 | ## Running 73 | 74 | On the command line, at the root of this project, type 75 | 76 | ``` 77 | java -jar target/closure-compiler-1.0-SNAPSHOT.jar 78 | ``` 79 | 80 | This starts the compiler in interactive mode. Type 81 | 82 | ```javascript 83 | var x = 17 + 25; 84 | ``` 85 | 86 | then hit "Enter", then hit "Ctrl-Z" (on Windows) or "Ctrl-D" (on Mac or Linux) 87 | and "Enter" again. The Compiler will respond: 88 | 89 | ```javascript 90 | var x=42; 91 | ``` 92 | 93 | The Closure Compiler has many options for reading input from a file, writing 94 | output to a file, checking your code, and running optimizations. To learn more, 95 | type 96 | 97 | ``` 98 | java -jar compiler.jar --help 99 | ``` 100 | 101 | More detailed information about running the Closure Compiler is available in the 102 | [documentation](https://developers.google.com/closure/compiler/docs/gettingstarted_app). 103 | 104 | 105 | ### Run using Eclipse 106 | 107 | 1. Open the class `src/com/google/javascript/jscomp/CommandLineRunner.java` or create your own extended version of the class. 108 | 2. Run the class in Eclipse. 109 | 3. See the instructions above on how to use the interactive mode - but beware of the [bug](https://stackoverflow.com/questions/4711098/passing-end-of-transmission-ctrl-d-character-in-eclipse-cdt-console) regarding passing "End of Transmission" in the Eclipse console. 110 | 111 | 112 | ## Compiling Multiple Scripts 113 | 114 | If you have multiple scripts, you should compile them all together with one 115 | compile command. 116 | 117 | ```bash 118 | java -jar compiler.jar --js_output_file=out.js in1.js in2.js in3.js ... 119 | ``` 120 | 121 | You can also use minimatch-style globs. 122 | 123 | ```bash 124 | # Recursively include all js files in subdirs 125 | java -jar compiler.jar --js_output_file=out.js 'src/**.js' 126 | 127 | # Recursively include all js files in subdirs, excluding test files. 128 | # Use single-quotes, so that bash doesn't try to expand the '!' 129 | java -jar compiler.jar --js_output_file=out.js 'src/**.js' '!**_test.js' 130 | ``` 131 | 132 | The Closure Compiler will concatenate the files in the order they're passed at 133 | the command line. 134 | 135 | If you're using globs or many files, you may start to run into 136 | problems with managing dependencies between scripts. In this case, you should 137 | use the [Closure Library](https://developers.google.com/closure/library/). It 138 | contains functions for enforcing dependencies between scripts, and Closure Compiler 139 | will re-order the inputs automatically. 140 | 141 | ## How to Contribute 142 | ### Reporting a bug 143 | 1. First make sure that it is really a bug and not simply the way that Closure Compiler works (especially true for ADVANCED_OPTIMIZATIONS). 144 | * Check the [official documentation](https://developers.google.com/closure/compiler/) 145 | * Consult the [FAQ](https://github.com/google/closure-compiler/wiki/FAQ) 146 | * Search on [Stack Overflow](https://stackoverflow.com/questions/tagged/google-closure-compiler) and in the [Closure Compiler Discuss Group](https://groups.google.com/forum/#!forum/closure-compiler-discuss) 147 | 2. If you still think you have found a bug, make sure someone hasn't already reported it. See the list of [known issues](https://github.com/google/closure-compiler/issues). 148 | 3. If it hasn't been reported yet, post a new issue. Make sure to add enough detail so that the bug can be recreated. The smaller the reproduction code, the better. 149 | 150 | ### Suggesting a Feature 151 | 1. Consult the [FAQ](https://github.com/google/closure-compiler/wiki/FAQ) to make sure that the behaviour you would like isn't specifically excluded (such as string inlining). 152 | 2. Make sure someone hasn't requested the same thing. See the list of [known issues](https://github.com/google/closure-compiler/issues). 153 | 3. Read up on [what type of feature requests are accepted](https://github.com/google/closure-compiler/wiki/FAQ#how-do-i-submit-a-feature-request-for-a-new-type-of-optimization). 154 | 4. Submit your request as an issue. 155 | 156 | ### Submitting patches 157 | 1. All contributors must sign a contributor license agreement (CLA). 158 | A CLA basically says that you own the rights to any code you contribute, 159 | and that you give us permission to use that code in Closure Compiler. 160 | You maintain the copyright on that code. 161 | If you own all the rights to your code, you can fill out an 162 | [individual CLA](https://code.google.com/legal/individual-cla-v1.0.html). 163 | If your employer has any rights to your code, then they also need to fill out 164 | a [corporate CLA](https://code.google.com/legal/corporate-cla-v1.0.html). 165 | If you don't know if your employer has any rights to your code, you should 166 | ask before signing anything. 167 | By default, anyone with an @google.com email address already has a CLA 168 | signed for them. 169 | 2. To make sure your changes are of the type that will be accepted, ask about your patch on the [Closure Compiler Discuss Group](https://groups.google.com/forum/#!forum/closure-compiler-discuss) 170 | 3. Fork the repository. 171 | 4. Make your changes. Check out our 172 | [coding conventions](https://github.com/google/closure-compiler/wiki/Contributors#coding-conventions) 173 | for details on making sure your code is in correct style. 174 | 5. Submit a pull request for your changes. A project developer will review your work and then merge your request into the project. 175 | 176 | ## Closure Compiler License 177 | 178 | Copyright 2009 The Closure Compiler Authors. 179 | 180 | Licensed under the Apache License, Version 2.0 (the "License"); 181 | you may not use this file except in compliance with the License. 182 | You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0. 183 | 184 | Unless required by applicable law or agreed to in writing, software 185 | distributed under the License is distributed on an "AS IS" BASIS, 186 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 187 | See the License for the specific language governing permissions and 188 | limitations under the License. 189 | 190 | ## Dependency Licenses 191 | 192 | ### Rhino 193 | 194 | 195 | 196 | 197 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 223 | 224 | 225 | 226 | 227 | 230 | 231 |
Code Path 198 | src/com/google/javascript/rhino, test/com/google/javascript/rhino 199 |
URLhttps://developer.mozilla.org/en-US/docs/Mozilla/Projects/Rhino
Version1.5R3, with heavy modifications
LicenseNetscape Public License and MPL / GPL dual license
DescriptionA partial copy of Mozilla Rhino. Mozilla Rhino is an 220 | implementation of JavaScript for the JVM. The JavaScript 221 | parse tree data structures were extracted and modified 222 | significantly for use by Google's JavaScript compiler.
Local ModificationsThe packages have been renamespaced. All code not 228 | relevant to the parse tree has been removed. A JsDoc parser and static typing 229 | system have been added.
232 | 233 | ### Args4j 234 | 235 | 236 | 237 | 238 | 239 | 240 | 241 | 242 | 243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 255 | 256 | 257 | 258 | 259 | 260 | 261 |
URLhttp://args4j.kohsuke.org/
Version2.33
LicenseMIT
Descriptionargs4j is a small Java class library that makes it easy to parse command line 254 | options/arguments in your CUI application.
Local ModificationsNone
262 | 263 | ### Guava Libraries 264 | 265 | 266 | 267 | 268 | 269 | 270 | 271 | 272 | 273 | 274 | 275 | 276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 287 | 288 | 289 | 290 |
URLhttps://github.com/google/guava
Version20.0
LicenseApache License 2.0
DescriptionGoogle's core Java libraries.
Local ModificationsNone
291 | 292 | ### JSR 305 293 | 294 | 295 | 296 | 297 | 298 | 299 | 300 | 301 | 302 | 303 | 304 | 305 | 306 | 307 | 308 | 309 | 310 | 311 | 312 | 313 | 314 | 315 | 316 | 317 | 318 | 319 |
URLhttps://github.com/findbugsproject/findbugs
Version3.0.1
LicenseBSD License
DescriptionAnnotations for software defect detection.
Local ModificationsNone
320 | 321 | ### JUnit 322 | 323 | 324 | 325 | 326 | 327 | 328 | 329 | 330 | 331 | 332 | 333 | 334 | 335 | 336 | 337 | 338 | 339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | 347 | 348 |
URLhttp://junit.org/junit4/
Version4.12
LicenseCommon Public License 1.0
DescriptionA framework for writing and running automated tests in Java.
Local ModificationsNone
349 | 350 | ### Protocol Buffers 351 | 352 | 353 | 354 | 355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | 370 | 372 | 373 | 374 | 375 | 376 | 377 | 378 |
URLhttps://github.com/google/protobuf
Version3.0.2
LicenseNew BSD License
DescriptionSupporting libraries for protocol buffers, 371 | an encoding of structured data.
Local ModificationsNone
379 | 380 | ### Truth 381 | 382 | 383 | 384 | 385 | 386 | 387 | 388 | 389 | 390 | 391 | 392 | 393 | 394 | 395 | 396 | 397 | 398 | 399 | 400 | 401 | 402 | 403 | 404 | 405 | 406 | 407 |
URLhttps://github.com/google/truth
Version0.32
LicenseApache License 2.0
DescriptionAssertion/Proposition framework for Java unit tests
Local ModificationsNone
408 | 409 | ### Ant 410 | 411 | 412 | 413 | 414 | 415 | 416 | 417 | 418 | 419 | 420 | 421 | 422 | 423 | 424 | 425 | 426 | 427 | 428 | 429 | 431 | 432 | 433 | 434 | 435 | 436 | 437 |
URLhttps://ant.apache.org/bindownload.cgi
Version1.9.7
LicenseApache License 2.0
DescriptionAnt is a Java based build tool. In theory it is kind of like "make" 430 | without make's wrinkles and with the full portability of pure java code.
Local ModificationsNone
438 | 439 | ### GSON 440 | 441 | 442 | 443 | 444 | 445 | 446 | 447 | 448 | 449 | 450 | 451 | 452 | 453 | 454 | 455 | 456 | 457 | 458 | 459 | 460 | 461 | 462 | 463 | 464 | 465 | 466 |
URLhttps://github.com/google/gson
Version2.7
LicenseApache license 2.0
DescriptionA Java library to convert JSON to Java objects and vice-versa
Local ModificationsNone
467 | 468 | ### Node.js Closure Compiler Externs 469 | 470 | 471 | 472 | 473 | 474 | 475 | 476 | 477 | 478 | 479 | 480 | 481 | 482 | 483 | 484 | 485 | 486 | 487 | 488 | 489 | 490 | 491 | 492 | 493 | 494 | 495 | 496 | 497 | 498 | 499 | 500 |
Code Pathcontrib/nodejs
URLhttps://github.com/dcodeIO/node.js-closure-compiler-externs
Versione891b4fbcf5f466cc4307b0fa842a7d8163a073a
LicenseApache 2.0 license
DescriptionType contracts for NodeJS APIs
Local ModificationsSubstantial changes to make them compatible with NpmCommandLineRunner.
501 | 502 | 503 | 504 | 505 | 506 | 507 | 508 | 509 | 510 | 511 | 512 | 513 | 514 | 515 | 516 | 517 | 518 | 519 | 520 | 521 | 522 | 523 | 524 | 525 | 526 | 527 | 528 | 529 | 530 | 531 | 532 | 533 |
Code Pathcontrib/externs/nodejs
URLhttps://www.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node/v8
Version(best guess) 27e260259ec83211b0cc59043988f124e9a42b20
LicenseMIT
DescriptionType contracts for NodeJS APIs
Local Modificationsexterns.js file is generated from index.ts using https://github.com/angular/tsickle
534 | -------------------------------------------------------------------------------- /closure-compiler/closure-compiler-v20190301.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/purescript-concur/purescript-concur-starter/21c5ec810727bc35d79577fe5e1da5716d0befa2/closure-compiler/closure-compiler-v20190301.jar -------------------------------------------------------------------------------- /dev/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Hello Concur! 6 | 7 | 8 |
9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /dev/index.js: -------------------------------------------------------------------------------- 1 | import * as Main from '../output/Main/index'; 2 | 3 | function main () { 4 | /* 5 | Here we could add variables such as 6 | 7 | var baseUrl = process.env.BASE_URL; 8 | 9 | Parcel will replace `process.env.BASE_URL` 10 | with the string contents of the BASE_URL environment 11 | variable at bundle/build time. 12 | A .env file can also be used to override shell variables 13 | for more information, see https://en.parceljs.org/env.html 14 | 15 | These variables can be supplied to the Main.main function. 16 | However, you will need to change the type to accept variables, by default it is an Effect. 17 | You will probably want to make it a function from String -> Effect () 18 | */ 19 | 20 | Main.main(); 21 | } 22 | 23 | // HMR setup. For more info see: https://parceljs.org/hmr.html 24 | if (module.hot) { 25 | module.hot.accept(function () { 26 | console.log('Reloaded, running main again'); 27 | main(); 28 | }); 29 | } 30 | 31 | console.log('Starting app'); 32 | 33 | main(); 34 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "purescript-concur-starter", 3 | "version": "0.1.0", 4 | "description": "A Starter kit for Purescript-Concur. Uses Spago and Parcel.", 5 | "main": "index.js", 6 | "scripts": { 7 | "build": "spago build", 8 | "test": "spago test", 9 | "start": "parcel dev/index.html --open", 10 | "watch": "parcel watch dev/index.html", 11 | "clean": "rimraf .cache .spago .psci_modules output .pulp-cache prod dist", 12 | "dev": "rimraf dist && spago build && cross-env NODE_ENV=development parcel build --public-url ./ dev/index.html", 13 | "prod": "rimraf temp && rimraf dist && mkdir temp && cp dev/index.html temp/ && spago bundle-app --to temp/index.js && java -jar ../closure-compiler/closure-compiler-v20190301.jar --js temp/index.js --js_output_file temp/minified.js && mv temp/minified.js temp/index.js && parcel build --public-url ./ temp/index.html && rimraf temp", 14 | "docs": "cd examples && npm run examples-prod && cp docs/logo.png dist && cp docs/Purescript-Concur-Performance.png dist && rimraf docs && mv dist docs" 15 | }, 16 | "license": "MIT", 17 | "dependencies": { 18 | "react": "^17.0.2", 19 | "react-dom": "^17.0.2" 20 | }, 21 | "devDependencies": { 22 | "esbuild": "^0.17.5", 23 | "parcel": "^2.8.3", 24 | "process": "^0.11.10", 25 | "purescript": "^0.15.7", 26 | "rimraf": "^3.0.2", 27 | "spago": "^0.20.9" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /packages.dhall: -------------------------------------------------------------------------------- 1 | {- 2 | Welcome to your new Dhall package-set! 3 | 4 | Below are instructions for how to edit this file for most use 5 | cases, so that you don't need to know Dhall to use it. 6 | 7 | ## Use Cases 8 | 9 | Most will want to do one or both of these options: 10 | 1. Override/Patch a package's dependency 11 | 2. Add a package not already in the default package set 12 | 13 | This file will continue to work whether you use one or both options. 14 | Instructions for each option are explained below. 15 | 16 | ### Overriding/Patching a package 17 | 18 | Purpose: 19 | - Change a package's dependency to a newer/older release than the 20 | default package set's release 21 | - Use your own modified version of some dependency that may 22 | include new API, changed API, removed API by 23 | using your custom git repo of the library rather than 24 | the package set's repo 25 | 26 | Syntax: 27 | where `entityName` is one of the following: 28 | - dependencies 29 | - repo 30 | - version 31 | ------------------------------- 32 | let upstream = -- 33 | in upstream 34 | with packageName.entityName = "new value" 35 | ------------------------------- 36 | 37 | Example: 38 | ------------------------------- 39 | let upstream = -- 40 | in upstream 41 | with halogen.version = "master" 42 | with halogen.repo = "https://example.com/path/to/git/repo.git" 43 | 44 | with halogen-vdom.version = "v4.0.0" 45 | with halogen-vdom.dependencies = [ "extra-dependency" ] # halogen-vdom.dependencies 46 | ------------------------------- 47 | 48 | ### Additions 49 | 50 | Purpose: 51 | - Add packages that aren't already included in the default package set 52 | 53 | Syntax: 54 | where `` is: 55 | - a tag (i.e. "v4.0.0") 56 | - a branch (i.e. "master") 57 | - commit hash (i.e. "701f3e44aafb1a6459281714858fadf2c4c2a977") 58 | ------------------------------- 59 | let upstream = -- 60 | in upstream 61 | with new-package-name = 62 | { dependencies = 63 | [ "dependency1" 64 | , "dependency2" 65 | ] 66 | , repo = 67 | "https://example.com/path/to/git/repo.git" 68 | , version = 69 | "" 70 | } 71 | ------------------------------- 72 | 73 | Example: 74 | ------------------------------- 75 | let upstream = -- 76 | in upstream 77 | with benchotron = 78 | { dependencies = 79 | [ "arrays" 80 | , "exists" 81 | , "profunctor" 82 | , "strings" 83 | , "quickcheck" 84 | , "lcg" 85 | , "transformers" 86 | , "foldable-traversable" 87 | , "exceptions" 88 | , "node-fs" 89 | , "node-buffer" 90 | , "node-readline" 91 | , "datetime" 92 | , "now" 93 | ] 94 | , repo = 95 | "https://github.com/hdgarrood/purescript-benchotron.git" 96 | , version = 97 | "v7.0.0" 98 | } 99 | ------------------------------- 100 | -} 101 | let upstream = 102 | https://github.com/purescript/package-sets/releases/download/psc-0.15.4-20221114/packages.dhall 103 | sha256:408417e1565850b0d5eae0d3ad9e11757202a1b44bb86c1ec2d595e4fef58141 104 | 105 | in upstream 106 | with concur-core = 107 | { dependencies = 108 | [ "aff" 109 | , "aff-bus" 110 | , "arrays" 111 | , "avar" 112 | , "console" 113 | , "control" 114 | , "datetime" 115 | , "effect" 116 | , "either" 117 | , "exceptions" 118 | , "foldable-traversable" 119 | , "free" 120 | , "identity" 121 | , "lazy" 122 | , "maybe" 123 | , "newtype" 124 | , "parallel" 125 | , "prelude" 126 | , "profunctor-lenses" 127 | , "tailrec" 128 | , "transformers" 129 | , "tuples" 130 | ] 131 | , repo = "https://github.com/purescript-concur/purescript-concur-core" 132 | , version = "main" 133 | } 134 | with concur-react = 135 | { dependencies = 136 | [ "aff" 137 | , "arrays" 138 | , "concur-core" 139 | , "console" 140 | , "effect" 141 | , "either" 142 | , "exceptions" 143 | , "maybe" 144 | , "prelude" 145 | , "react" 146 | , "react-dom" 147 | , "transformers" 148 | , "tuples" 149 | , "unsafe-coerce" 150 | , "web-dom" 151 | , "web-events" 152 | , "web-html" 153 | ] 154 | , repo = "https://github.com/purescript-concur/purescript-concur-react" 155 | , version = "main" 156 | } 157 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.4 2 | 3 | specifiers: 4 | esbuild: ^0.17.5 5 | parcel: ^2.8.3 6 | process: ^0.11.10 7 | purescript: ^0.15.7 8 | react: ^17.0.2 9 | react-dom: ^17.0.2 10 | rimraf: ^3.0.2 11 | spago: ^0.20.9 12 | 13 | dependencies: 14 | react: 17.0.2 15 | react-dom: 17.0.2_react@17.0.2 16 | 17 | devDependencies: 18 | esbuild: 0.17.5 19 | parcel: 2.8.3 20 | process: 0.11.10 21 | purescript: 0.15.7 22 | rimraf: 3.0.2 23 | spago: 0.20.9 24 | 25 | packages: 26 | 27 | /@babel/code-frame/7.18.6: 28 | resolution: {integrity: sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==} 29 | engines: {node: '>=6.9.0'} 30 | dependencies: 31 | '@babel/highlight': 7.18.6 32 | dev: true 33 | 34 | /@babel/helper-validator-identifier/7.19.1: 35 | resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==} 36 | engines: {node: '>=6.9.0'} 37 | dev: true 38 | 39 | /@babel/highlight/7.18.6: 40 | resolution: {integrity: sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==} 41 | engines: {node: '>=6.9.0'} 42 | dependencies: 43 | '@babel/helper-validator-identifier': 7.19.1 44 | chalk: 2.4.2 45 | js-tokens: 4.0.0 46 | dev: true 47 | 48 | /@esbuild/android-arm/0.17.5: 49 | resolution: {integrity: sha512-crmPUzgCmF+qZXfl1YkiFoUta2XAfixR1tEnr/gXIixE+WL8Z0BGqfydP5oox0EUOgQMMRgtATtakyAcClQVqQ==} 50 | engines: {node: '>=12'} 51 | cpu: [arm] 52 | os: [android] 53 | requiresBuild: true 54 | dev: true 55 | optional: true 56 | 57 | /@esbuild/android-arm64/0.17.5: 58 | resolution: {integrity: sha512-KHWkDqYAMmKZjY4RAN1PR96q6UOtfkWlTS8uEwWxdLtkRt/0F/csUhXIrVfaSIFxnscIBMPynGfhsMwQDRIBQw==} 59 | engines: {node: '>=12'} 60 | cpu: [arm64] 61 | os: [android] 62 | requiresBuild: true 63 | dev: true 64 | optional: true 65 | 66 | /@esbuild/android-x64/0.17.5: 67 | resolution: {integrity: sha512-8fI/AnIdmWz/+1iza2WrCw8kwXK9wZp/yZY/iS8ioC+U37yJCeppi9EHY05ewJKN64ASoBIseufZROtcFnX5GA==} 68 | engines: {node: '>=12'} 69 | cpu: [x64] 70 | os: [android] 71 | requiresBuild: true 72 | dev: true 73 | optional: true 74 | 75 | /@esbuild/darwin-arm64/0.17.5: 76 | resolution: {integrity: sha512-EAvaoyIySV6Iif3NQCglUNpnMfHSUgC5ugt2efl3+QDntucJe5spn0udNZjTgNi6tKVqSceOw9tQ32liNZc1Xw==} 77 | engines: {node: '>=12'} 78 | cpu: [arm64] 79 | os: [darwin] 80 | requiresBuild: true 81 | dev: true 82 | optional: true 83 | 84 | /@esbuild/darwin-x64/0.17.5: 85 | resolution: {integrity: sha512-ha7QCJh1fuSwwCgoegfdaljowwWozwTDjBgjD3++WAy/qwee5uUi1gvOg2WENJC6EUyHBOkcd3YmLDYSZ2TPPA==} 86 | engines: {node: '>=12'} 87 | cpu: [x64] 88 | os: [darwin] 89 | requiresBuild: true 90 | dev: true 91 | optional: true 92 | 93 | /@esbuild/freebsd-arm64/0.17.5: 94 | resolution: {integrity: sha512-VbdXJkn2aI2pQ/wxNEjEcnEDwPpxt3CWWMFYmO7CcdFBoOsABRy2W8F3kjbF9F/pecEUDcI3b5i2w+By4VQFPg==} 95 | engines: {node: '>=12'} 96 | cpu: [arm64] 97 | os: [freebsd] 98 | requiresBuild: true 99 | dev: true 100 | optional: true 101 | 102 | /@esbuild/freebsd-x64/0.17.5: 103 | resolution: {integrity: sha512-olgGYND1/XnnWxwhjtY3/ryjOG/M4WfcA6XH8dBTH1cxMeBemMODXSFhkw71Kf4TeZFFTN25YOomaNh0vq2iXg==} 104 | engines: {node: '>=12'} 105 | cpu: [x64] 106 | os: [freebsd] 107 | requiresBuild: true 108 | dev: true 109 | optional: true 110 | 111 | /@esbuild/linux-arm/0.17.5: 112 | resolution: {integrity: sha512-YBdCyQwA3OQupi6W2/WO4FnI+NWFWe79cZEtlbqSESOHEg7a73htBIRiE6uHPQe7Yp5E4aALv+JxkRLGEUL7tw==} 113 | engines: {node: '>=12'} 114 | cpu: [arm] 115 | os: [linux] 116 | requiresBuild: true 117 | dev: true 118 | optional: true 119 | 120 | /@esbuild/linux-arm64/0.17.5: 121 | resolution: {integrity: sha512-8a0bqSwu3OlLCfu2FBbDNgQyBYdPJh1B9PvNX7jMaKGC9/KopgHs37t+pQqeMLzcyRqG6z55IGNQAMSlCpBuqg==} 122 | engines: {node: '>=12'} 123 | cpu: [arm64] 124 | os: [linux] 125 | requiresBuild: true 126 | dev: true 127 | optional: true 128 | 129 | /@esbuild/linux-ia32/0.17.5: 130 | resolution: {integrity: sha512-uCwm1r/+NdP7vndctgq3PoZrnmhmnecWAr114GWMRwg2QMFFX+kIWnp7IO220/JLgnXK/jP7VKAFBGmeOYBQYQ==} 131 | engines: {node: '>=12'} 132 | cpu: [ia32] 133 | os: [linux] 134 | requiresBuild: true 135 | dev: true 136 | optional: true 137 | 138 | /@esbuild/linux-loong64/0.17.5: 139 | resolution: {integrity: sha512-3YxhSBl5Sb6TtBjJu+HP93poBruFzgXmf3PVfIe4xOXMj1XpxboYZyw3W8BhoX/uwxzZz4K1I99jTE/5cgDT1g==} 140 | engines: {node: '>=12'} 141 | cpu: [loong64] 142 | os: [linux] 143 | requiresBuild: true 144 | dev: true 145 | optional: true 146 | 147 | /@esbuild/linux-mips64el/0.17.5: 148 | resolution: {integrity: sha512-Hy5Z0YVWyYHdtQ5mfmfp8LdhVwGbwVuq8mHzLqrG16BaMgEmit2xKO+iDakHs+OetEx0EN/2mUzDdfdktI+Nmg==} 149 | engines: {node: '>=12'} 150 | cpu: [mips64el] 151 | os: [linux] 152 | requiresBuild: true 153 | dev: true 154 | optional: true 155 | 156 | /@esbuild/linux-ppc64/0.17.5: 157 | resolution: {integrity: sha512-5dbQvBLbU/Y3Q4ABc9gi23hww1mQcM7KZ9KBqabB7qhJswYMf8WrDDOSw3gdf3p+ffmijMd28mfVMvFucuECyg==} 158 | engines: {node: '>=12'} 159 | cpu: [ppc64] 160 | os: [linux] 161 | requiresBuild: true 162 | dev: true 163 | optional: true 164 | 165 | /@esbuild/linux-riscv64/0.17.5: 166 | resolution: {integrity: sha512-fp/KUB/ZPzEWGTEUgz9wIAKCqu7CjH1GqXUO2WJdik1UNBQ7Xzw7myIajpxztE4Csb9504ERiFMxZg5KZ6HlZQ==} 167 | engines: {node: '>=12'} 168 | cpu: [riscv64] 169 | os: [linux] 170 | requiresBuild: true 171 | dev: true 172 | optional: true 173 | 174 | /@esbuild/linux-s390x/0.17.5: 175 | resolution: {integrity: sha512-kRV3yw19YDqHTp8SfHXfObUFXlaiiw4o2lvT1XjsPZ++22GqZwSsYWJLjMi1Sl7j9qDlDUduWDze/nQx0d6Lzw==} 176 | engines: {node: '>=12'} 177 | cpu: [s390x] 178 | os: [linux] 179 | requiresBuild: true 180 | dev: true 181 | optional: true 182 | 183 | /@esbuild/linux-x64/0.17.5: 184 | resolution: {integrity: sha512-vnxuhh9e4pbtABNLbT2ANW4uwQ/zvcHRCm1JxaYkzSehugoFd5iXyC4ci1nhXU13mxEwCnrnTIiiSGwa/uAF1g==} 185 | engines: {node: '>=12'} 186 | cpu: [x64] 187 | os: [linux] 188 | requiresBuild: true 189 | dev: true 190 | optional: true 191 | 192 | /@esbuild/netbsd-x64/0.17.5: 193 | resolution: {integrity: sha512-cigBpdiSx/vPy7doUyImsQQBnBjV5f1M99ZUlaJckDAJjgXWl6y9W17FIfJTy8TxosEF6MXq+fpLsitMGts2nA==} 194 | engines: {node: '>=12'} 195 | cpu: [x64] 196 | os: [netbsd] 197 | requiresBuild: true 198 | dev: true 199 | optional: true 200 | 201 | /@esbuild/openbsd-x64/0.17.5: 202 | resolution: {integrity: sha512-VdqRqPVIjjZfkf40LrqOaVuhw9EQiAZ/GNCSM2UplDkaIzYVsSnycxcFfAnHdWI8Gyt6dO15KHikbpxwx+xHbw==} 203 | engines: {node: '>=12'} 204 | cpu: [x64] 205 | os: [openbsd] 206 | requiresBuild: true 207 | dev: true 208 | optional: true 209 | 210 | /@esbuild/sunos-x64/0.17.5: 211 | resolution: {integrity: sha512-ItxPaJ3MBLtI4nK+mALLEoUs6amxsx+J1ibnfcYMkqaCqHST1AkF4aENpBehty3czqw64r/XqL+W9WqU6kc2Qw==} 212 | engines: {node: '>=12'} 213 | cpu: [x64] 214 | os: [sunos] 215 | requiresBuild: true 216 | dev: true 217 | optional: true 218 | 219 | /@esbuild/win32-arm64/0.17.5: 220 | resolution: {integrity: sha512-4u2Q6qsJTYNFdS9zHoAi80spzf78C16m2wla4eJPh4kSbRv+BpXIfl6TmBSWupD8e47B1NrTfrOlEuco7mYQtg==} 221 | engines: {node: '>=12'} 222 | cpu: [arm64] 223 | os: [win32] 224 | requiresBuild: true 225 | dev: true 226 | optional: true 227 | 228 | /@esbuild/win32-ia32/0.17.5: 229 | resolution: {integrity: sha512-KYlm+Xu9TXsfTWAcocLuISRtqxKp/Y9ZBVg6CEEj0O5J9mn7YvBKzAszo2j1ndyzUPk+op+Tie2PJeN+BnXGqQ==} 230 | engines: {node: '>=12'} 231 | cpu: [ia32] 232 | os: [win32] 233 | requiresBuild: true 234 | dev: true 235 | optional: true 236 | 237 | /@esbuild/win32-x64/0.17.5: 238 | resolution: {integrity: sha512-XgA9qWRqby7xdYXuF6KALsn37QGBMHsdhmnpjfZtYxKxbTOwfnDM6MYi2WuUku5poNaX2n9XGVr20zgT/2QwCw==} 239 | engines: {node: '>=12'} 240 | cpu: [x64] 241 | os: [win32] 242 | requiresBuild: true 243 | dev: true 244 | optional: true 245 | 246 | /@gar/promisify/1.1.3: 247 | resolution: {integrity: sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==} 248 | dev: true 249 | 250 | /@jridgewell/gen-mapping/0.3.2: 251 | resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==} 252 | engines: {node: '>=6.0.0'} 253 | dependencies: 254 | '@jridgewell/set-array': 1.1.2 255 | '@jridgewell/sourcemap-codec': 1.4.14 256 | '@jridgewell/trace-mapping': 0.3.17 257 | dev: true 258 | 259 | /@jridgewell/resolve-uri/3.1.0: 260 | resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} 261 | engines: {node: '>=6.0.0'} 262 | dev: true 263 | 264 | /@jridgewell/set-array/1.1.2: 265 | resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} 266 | engines: {node: '>=6.0.0'} 267 | dev: true 268 | 269 | /@jridgewell/source-map/0.3.2: 270 | resolution: {integrity: sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==} 271 | dependencies: 272 | '@jridgewell/gen-mapping': 0.3.2 273 | '@jridgewell/trace-mapping': 0.3.17 274 | dev: true 275 | 276 | /@jridgewell/sourcemap-codec/1.4.14: 277 | resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} 278 | dev: true 279 | 280 | /@jridgewell/trace-mapping/0.3.17: 281 | resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==} 282 | dependencies: 283 | '@jridgewell/resolve-uri': 3.1.0 284 | '@jridgewell/sourcemap-codec': 1.4.14 285 | dev: true 286 | 287 | /@lezer/common/0.15.12: 288 | resolution: {integrity: sha512-edfwCxNLnzq5pBA/yaIhwJ3U3Kz8VAUOTRg0hhxaizaI1N+qxV7EXDv/kLCkLeq2RzSFvxexlaj5Mzfn2kY0Ig==} 289 | dev: true 290 | 291 | /@lezer/lr/0.15.8: 292 | resolution: {integrity: sha512-bM6oE6VQZ6hIFxDNKk8bKPa14hqFrV07J/vHGOeiAbJReIaQXmkVb6xQu4MR+JBTLa5arGRyAAjJe1qaQt3Uvg==} 293 | dependencies: 294 | '@lezer/common': 0.15.12 295 | dev: true 296 | 297 | /@lmdb/lmdb-darwin-arm64/2.5.2: 298 | resolution: {integrity: sha512-+F8ioQIUN68B4UFiIBYu0QQvgb9FmlKw2ctQMSBfW2QBrZIxz9vD9jCGqTCPqZBRbPHAS/vG1zSXnKqnS2ch/A==} 299 | cpu: [arm64] 300 | os: [darwin] 301 | requiresBuild: true 302 | dev: true 303 | optional: true 304 | 305 | /@lmdb/lmdb-darwin-x64/2.5.2: 306 | resolution: {integrity: sha512-KvPH56KRLLx4KSfKBx0m1r7GGGUMXm0jrKmNE7plbHlesZMuPJICtn07HYgQhj1LNsK7Yqwuvnqh1QxhJnF1EA==} 307 | cpu: [x64] 308 | os: [darwin] 309 | requiresBuild: true 310 | dev: true 311 | optional: true 312 | 313 | /@lmdb/lmdb-linux-arm/2.5.2: 314 | resolution: {integrity: sha512-5kQAP21hAkfW5Bl+e0P57dV4dGYnkNIpR7f/GAh6QHlgXx+vp/teVj4PGRZaKAvt0GX6++N6hF8NnGElLDuIDw==} 315 | cpu: [arm] 316 | os: [linux] 317 | requiresBuild: true 318 | dev: true 319 | optional: true 320 | 321 | /@lmdb/lmdb-linux-arm64/2.5.2: 322 | resolution: {integrity: sha512-aLl89VHL/wjhievEOlPocoefUyWdvzVrcQ/MHQYZm2JfV1jUsrbr/ZfkPPUFvZBf+VSE+Q0clWs9l29PCX1hTQ==} 323 | cpu: [arm64] 324 | os: [linux] 325 | requiresBuild: true 326 | dev: true 327 | optional: true 328 | 329 | /@lmdb/lmdb-linux-x64/2.5.2: 330 | resolution: {integrity: sha512-xUdUfwDJLGjOUPH3BuPBt0NlIrR7f/QHKgu3GZIXswMMIihAekj2i97oI0iWG5Bok/b+OBjHPfa8IU9velnP/Q==} 331 | cpu: [x64] 332 | os: [linux] 333 | requiresBuild: true 334 | dev: true 335 | optional: true 336 | 337 | /@lmdb/lmdb-win32-x64/2.5.2: 338 | resolution: {integrity: sha512-zrBczSbXKxEyK2ijtbRdICDygRqWSRPpZMN5dD1T8VMEW5RIhIbwFWw2phDRXuBQdVDpSjalCIUMWMV2h3JaZA==} 339 | cpu: [x64] 340 | os: [win32] 341 | requiresBuild: true 342 | dev: true 343 | optional: true 344 | 345 | /@mischnic/json-sourcemap/0.1.0: 346 | resolution: {integrity: sha512-dQb3QnfNqmQNYA4nFSN/uLaByIic58gOXq4Y4XqLOWmOrw73KmJPt/HLyG0wvn1bnR6mBKs/Uwvkh+Hns1T0XA==} 347 | engines: {node: '>=12.0.0'} 348 | dependencies: 349 | '@lezer/common': 0.15.12 350 | '@lezer/lr': 0.15.8 351 | json5: 2.2.3 352 | dev: true 353 | 354 | /@msgpackr-extract/msgpackr-extract-darwin-arm64/3.0.0: 355 | resolution: {integrity: sha512-5qpnNHUyyEj9H3sm/4Um/bnx1lrQGhe8iqry/1d+cQYCRd/gzYA0YLeq0ezlk4hKx4vO+dsEsNyeowqRqslwQA==} 356 | cpu: [arm64] 357 | os: [darwin] 358 | requiresBuild: true 359 | dev: true 360 | optional: true 361 | 362 | /@msgpackr-extract/msgpackr-extract-darwin-x64/3.0.0: 363 | resolution: {integrity: sha512-ZphTFFd6SFweNAMKD+QJCrWpgkjf4qBuHltiMkKkD6FFrB3NOTRVmetAGTkJ57pa+s6J0yCH06LujWB9rZe94g==} 364 | cpu: [x64] 365 | os: [darwin] 366 | requiresBuild: true 367 | dev: true 368 | optional: true 369 | 370 | /@msgpackr-extract/msgpackr-extract-linux-arm/3.0.0: 371 | resolution: {integrity: sha512-ztKVV1dO/sSZyGse0PBCq3Pk1PkYjsA/dsEWE7lfrGoAK3i9HpS2o7XjGQ7V4va6nX+xPPOiuYpQwa4Bi6vlww==} 372 | cpu: [arm] 373 | os: [linux] 374 | requiresBuild: true 375 | dev: true 376 | optional: true 377 | 378 | /@msgpackr-extract/msgpackr-extract-linux-arm64/3.0.0: 379 | resolution: {integrity: sha512-NEX6hdSvP4BmVyegaIbrGxvHzHvTzzsPaxXCsUt0mbLbPpEftsvNwaEVKOowXnLoeuGeD4MaqSwL3BUK2elsUA==} 380 | cpu: [arm64] 381 | os: [linux] 382 | requiresBuild: true 383 | dev: true 384 | optional: true 385 | 386 | /@msgpackr-extract/msgpackr-extract-linux-x64/3.0.0: 387 | resolution: {integrity: sha512-9uvdAkZMOPCY7SPRxZLW8XGqBOVNVEhqlgffenN8shA1XR9FWVsSM13nr/oHtNgXg6iVyML7RwWPyqUeThlwxg==} 388 | cpu: [x64] 389 | os: [linux] 390 | requiresBuild: true 391 | dev: true 392 | optional: true 393 | 394 | /@msgpackr-extract/msgpackr-extract-win32-x64/3.0.0: 395 | resolution: {integrity: sha512-Wg0+9615kHKlr9iLVcG5I+/CHnf6w3x5UADRv8Ad16yA0Bu5l9eVOROjV7aHPG6uC8ZPFIVVaoSjDChD+Y0pzg==} 396 | cpu: [x64] 397 | os: [win32] 398 | requiresBuild: true 399 | dev: true 400 | optional: true 401 | 402 | /@npmcli/fs/1.1.1: 403 | resolution: {integrity: sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==} 404 | dependencies: 405 | '@gar/promisify': 1.1.3 406 | semver: 7.3.8 407 | dev: true 408 | 409 | /@npmcli/fs/2.1.2: 410 | resolution: {integrity: sha512-yOJKRvohFOaLqipNtwYB9WugyZKhC/DZC4VYPmpaCzDBrA8YpK3qHZ8/HGscMnE4GqbkLNuVcCnxkeQEdGt6LQ==} 411 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 412 | dependencies: 413 | '@gar/promisify': 1.1.3 414 | semver: 7.3.8 415 | dev: true 416 | 417 | /@npmcli/move-file/1.1.2: 418 | resolution: {integrity: sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==} 419 | engines: {node: '>=10'} 420 | deprecated: This functionality has been moved to @npmcli/fs 421 | dependencies: 422 | mkdirp: 1.0.4 423 | rimraf: 3.0.2 424 | dev: true 425 | 426 | /@npmcli/move-file/2.0.1: 427 | resolution: {integrity: sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==} 428 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 429 | deprecated: This functionality has been moved to @npmcli/fs 430 | dependencies: 431 | mkdirp: 1.0.4 432 | rimraf: 3.0.2 433 | dev: true 434 | 435 | /@parcel/bundler-default/2.8.3_@parcel+core@2.8.3: 436 | resolution: {integrity: sha512-yJvRsNWWu5fVydsWk3O2L4yIy3UZiKWO2cPDukGOIWMgp/Vbpp+2Ct5IygVRtE22bnseW/E/oe0PV3d2IkEJGg==} 437 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 438 | dependencies: 439 | '@parcel/diagnostic': 2.8.3 440 | '@parcel/graph': 2.8.3 441 | '@parcel/hash': 2.8.3 442 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 443 | '@parcel/utils': 2.8.3 444 | nullthrows: 1.1.1 445 | transitivePeerDependencies: 446 | - '@parcel/core' 447 | dev: true 448 | 449 | /@parcel/cache/2.8.3_@parcel+core@2.8.3: 450 | resolution: {integrity: sha512-k7xv5vSQrJLdXuglo+Hv3yF4BCSs1tQ/8Vbd6CHTkOhf7LcGg6CPtLw053R/KdMpd/4GPn0QrAsOLdATm1ELtQ==} 451 | engines: {node: '>= 12.0.0'} 452 | peerDependencies: 453 | '@parcel/core': ^2.8.3 454 | dependencies: 455 | '@parcel/core': 2.8.3 456 | '@parcel/fs': 2.8.3_@parcel+core@2.8.3 457 | '@parcel/logger': 2.8.3 458 | '@parcel/utils': 2.8.3 459 | lmdb: 2.5.2 460 | dev: true 461 | 462 | /@parcel/codeframe/2.8.3: 463 | resolution: {integrity: sha512-FE7sY53D6n/+2Pgg6M9iuEC6F5fvmyBkRE4d9VdnOoxhTXtkEqpqYgX7RJ12FAQwNlxKq4suBJQMgQHMF2Kjeg==} 464 | engines: {node: '>= 12.0.0'} 465 | dependencies: 466 | chalk: 4.1.2 467 | dev: true 468 | 469 | /@parcel/compressor-raw/2.8.3_@parcel+core@2.8.3: 470 | resolution: {integrity: sha512-bVDsqleBUxRdKMakWSlWC9ZjOcqDKE60BE+Gh3JSN6WJrycJ02P5wxjTVF4CStNP/G7X17U+nkENxSlMG77ySg==} 471 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 472 | dependencies: 473 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 474 | transitivePeerDependencies: 475 | - '@parcel/core' 476 | dev: true 477 | 478 | /@parcel/config-default/2.8.3_@parcel+core@2.8.3: 479 | resolution: {integrity: sha512-o/A/mbrO6X/BfGS65Sib8d6SSG45NYrNooNBkH/o7zbOBSRQxwyTlysleK1/3Wa35YpvFyLOwgfakqCtbGy4fw==} 480 | peerDependencies: 481 | '@parcel/core': ^2.8.3 482 | dependencies: 483 | '@parcel/bundler-default': 2.8.3_@parcel+core@2.8.3 484 | '@parcel/compressor-raw': 2.8.3_@parcel+core@2.8.3 485 | '@parcel/core': 2.8.3 486 | '@parcel/namer-default': 2.8.3_@parcel+core@2.8.3 487 | '@parcel/optimizer-css': 2.8.3_@parcel+core@2.8.3 488 | '@parcel/optimizer-htmlnano': 2.8.3_@parcel+core@2.8.3 489 | '@parcel/optimizer-image': 2.8.3_@parcel+core@2.8.3 490 | '@parcel/optimizer-svgo': 2.8.3_@parcel+core@2.8.3 491 | '@parcel/optimizer-terser': 2.8.3_@parcel+core@2.8.3 492 | '@parcel/packager-css': 2.8.3_@parcel+core@2.8.3 493 | '@parcel/packager-html': 2.8.3_@parcel+core@2.8.3 494 | '@parcel/packager-js': 2.8.3_@parcel+core@2.8.3 495 | '@parcel/packager-raw': 2.8.3_@parcel+core@2.8.3 496 | '@parcel/packager-svg': 2.8.3_@parcel+core@2.8.3 497 | '@parcel/reporter-dev-server': 2.8.3_@parcel+core@2.8.3 498 | '@parcel/resolver-default': 2.8.3_@parcel+core@2.8.3 499 | '@parcel/runtime-browser-hmr': 2.8.3_@parcel+core@2.8.3 500 | '@parcel/runtime-js': 2.8.3_@parcel+core@2.8.3 501 | '@parcel/runtime-react-refresh': 2.8.3_@parcel+core@2.8.3 502 | '@parcel/runtime-service-worker': 2.8.3_@parcel+core@2.8.3 503 | '@parcel/transformer-babel': 2.8.3_@parcel+core@2.8.3 504 | '@parcel/transformer-css': 2.8.3_@parcel+core@2.8.3 505 | '@parcel/transformer-html': 2.8.3_@parcel+core@2.8.3 506 | '@parcel/transformer-image': 2.8.3_@parcel+core@2.8.3 507 | '@parcel/transformer-js': 2.8.3_@parcel+core@2.8.3 508 | '@parcel/transformer-json': 2.8.3_@parcel+core@2.8.3 509 | '@parcel/transformer-postcss': 2.8.3_@parcel+core@2.8.3 510 | '@parcel/transformer-posthtml': 2.8.3_@parcel+core@2.8.3 511 | '@parcel/transformer-raw': 2.8.3_@parcel+core@2.8.3 512 | '@parcel/transformer-react-refresh-wrap': 2.8.3_@parcel+core@2.8.3 513 | '@parcel/transformer-svg': 2.8.3_@parcel+core@2.8.3 514 | transitivePeerDependencies: 515 | - cssnano 516 | - postcss 517 | - purgecss 518 | - relateurl 519 | - srcset 520 | - terser 521 | - uncss 522 | dev: true 523 | 524 | /@parcel/core/2.8.3: 525 | resolution: {integrity: sha512-Euf/un4ZAiClnlUXqPB9phQlKbveU+2CotZv7m7i+qkgvFn5nAGnrV4h1OzQU42j9dpgOxWi7AttUDMrvkbhCQ==} 526 | engines: {node: '>= 12.0.0'} 527 | dependencies: 528 | '@mischnic/json-sourcemap': 0.1.0 529 | '@parcel/cache': 2.8.3_@parcel+core@2.8.3 530 | '@parcel/diagnostic': 2.8.3 531 | '@parcel/events': 2.8.3 532 | '@parcel/fs': 2.8.3_@parcel+core@2.8.3 533 | '@parcel/graph': 2.8.3 534 | '@parcel/hash': 2.8.3 535 | '@parcel/logger': 2.8.3 536 | '@parcel/package-manager': 2.8.3_@parcel+core@2.8.3 537 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 538 | '@parcel/source-map': 2.1.1 539 | '@parcel/types': 2.8.3_@parcel+core@2.8.3 540 | '@parcel/utils': 2.8.3 541 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 542 | abortcontroller-polyfill: 1.7.5 543 | base-x: 3.0.9 544 | browserslist: 4.21.5 545 | clone: 2.1.2 546 | dotenv: 7.0.0 547 | dotenv-expand: 5.1.0 548 | json5: 2.2.3 549 | msgpackr: 1.8.3 550 | nullthrows: 1.1.1 551 | semver: 5.7.1 552 | dev: true 553 | 554 | /@parcel/diagnostic/2.8.3: 555 | resolution: {integrity: sha512-u7wSzuMhLGWZjVNYJZq/SOViS3uFG0xwIcqXw12w54Uozd6BH8JlhVtVyAsq9kqnn7YFkw6pXHqAo5Tzh4FqsQ==} 556 | engines: {node: '>= 12.0.0'} 557 | dependencies: 558 | '@mischnic/json-sourcemap': 0.1.0 559 | nullthrows: 1.1.1 560 | dev: true 561 | 562 | /@parcel/events/2.8.3: 563 | resolution: {integrity: sha512-hoIS4tAxWp8FJk3628bsgKxEvR7bq2scCVYHSqZ4fTi/s0+VymEATrRCUqf+12e5H47uw1/ZjoqrGtBI02pz4w==} 564 | engines: {node: '>= 12.0.0'} 565 | dev: true 566 | 567 | /@parcel/fs-search/2.8.3: 568 | resolution: {integrity: sha512-DJBT2N8knfN7Na6PP2mett3spQLTqxFrvl0gv+TJRp61T8Ljc4VuUTb0hqBj+belaASIp3Q+e8+SgaFQu7wLiQ==} 569 | engines: {node: '>= 12.0.0'} 570 | dependencies: 571 | detect-libc: 1.0.3 572 | dev: true 573 | 574 | /@parcel/fs/2.8.3_@parcel+core@2.8.3: 575 | resolution: {integrity: sha512-y+i+oXbT7lP0e0pJZi/YSm1vg0LDsbycFuHZIL80pNwdEppUAtibfJZCp606B7HOjMAlNZOBo48e3hPG3d8jgQ==} 576 | engines: {node: '>= 12.0.0'} 577 | peerDependencies: 578 | '@parcel/core': ^2.8.3 579 | dependencies: 580 | '@parcel/core': 2.8.3 581 | '@parcel/fs-search': 2.8.3 582 | '@parcel/types': 2.8.3_@parcel+core@2.8.3 583 | '@parcel/utils': 2.8.3 584 | '@parcel/watcher': 2.1.0 585 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 586 | dev: true 587 | 588 | /@parcel/graph/2.8.3: 589 | resolution: {integrity: sha512-26GL8fYZPdsRhSXCZ0ZWliloK6DHlMJPWh6Z+3VVZ5mnDSbYg/rRKWmrkhnr99ZWmL9rJsv4G74ZwvDEXTMPBg==} 590 | engines: {node: '>= 12.0.0'} 591 | dependencies: 592 | nullthrows: 1.1.1 593 | dev: true 594 | 595 | /@parcel/hash/2.8.3: 596 | resolution: {integrity: sha512-FVItqzjWmnyP4ZsVgX+G00+6U2IzOvqDtdwQIWisCcVoXJFCqZJDy6oa2qDDFz96xCCCynjRjPdQx2jYBCpfYw==} 597 | engines: {node: '>= 12.0.0'} 598 | dependencies: 599 | detect-libc: 1.0.3 600 | xxhash-wasm: 0.4.2 601 | dev: true 602 | 603 | /@parcel/logger/2.8.3: 604 | resolution: {integrity: sha512-Kpxd3O/Vs7nYJIzkdmB6Bvp3l/85ydIxaZaPfGSGTYOfaffSOTkhcW9l6WemsxUrlts4za6CaEWcc4DOvaMOPA==} 605 | engines: {node: '>= 12.0.0'} 606 | dependencies: 607 | '@parcel/diagnostic': 2.8.3 608 | '@parcel/events': 2.8.3 609 | dev: true 610 | 611 | /@parcel/markdown-ansi/2.8.3: 612 | resolution: {integrity: sha512-4v+pjyoh9f5zuU/gJlNvNFGEAb6J90sOBwpKJYJhdWXLZMNFCVzSigxrYO+vCsi8G4rl6/B2c0LcwIMjGPHmFQ==} 613 | engines: {node: '>= 12.0.0'} 614 | dependencies: 615 | chalk: 4.1.2 616 | dev: true 617 | 618 | /@parcel/namer-default/2.8.3_@parcel+core@2.8.3: 619 | resolution: {integrity: sha512-tJ7JehZviS5QwnxbARd8Uh63rkikZdZs1QOyivUhEvhN+DddSAVEdQLHGPzkl3YRk0tjFhbqo+Jci7TpezuAMw==} 620 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 621 | dependencies: 622 | '@parcel/diagnostic': 2.8.3 623 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 624 | nullthrows: 1.1.1 625 | transitivePeerDependencies: 626 | - '@parcel/core' 627 | dev: true 628 | 629 | /@parcel/node-resolver-core/2.8.3: 630 | resolution: {integrity: sha512-12YryWcA5Iw2WNoEVr/t2HDjYR1iEzbjEcxfh1vaVDdZ020PiGw67g5hyIE/tsnG7SRJ0xdRx1fQ2hDgED+0Ww==} 631 | engines: {node: '>= 12.0.0'} 632 | dependencies: 633 | '@parcel/diagnostic': 2.8.3 634 | '@parcel/utils': 2.8.3 635 | nullthrows: 1.1.1 636 | semver: 5.7.1 637 | dev: true 638 | 639 | /@parcel/optimizer-css/2.8.3_@parcel+core@2.8.3: 640 | resolution: {integrity: sha512-JotGAWo8JhuXsQDK0UkzeQB0UR5hDAKvAviXrjqB4KM9wZNLhLleeEAW4Hk8R9smCeQFP6Xg/N/NkLDpqMwT3g==} 641 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 642 | dependencies: 643 | '@parcel/diagnostic': 2.8.3 644 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 645 | '@parcel/source-map': 2.1.1 646 | '@parcel/utils': 2.8.3 647 | browserslist: 4.21.5 648 | lightningcss: 1.18.0 649 | nullthrows: 1.1.1 650 | transitivePeerDependencies: 651 | - '@parcel/core' 652 | dev: true 653 | 654 | /@parcel/optimizer-htmlnano/2.8.3_@parcel+core@2.8.3: 655 | resolution: {integrity: sha512-L8/fHbEy8Id2a2E0fwR5eKGlv9VYDjrH9PwdJE9Za9v1O/vEsfl/0T/79/x129l5O0yB6EFQkFa20MiK3b+vOg==} 656 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 657 | dependencies: 658 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 659 | htmlnano: 2.0.3_svgo@2.8.0 660 | nullthrows: 1.1.1 661 | posthtml: 0.16.6 662 | svgo: 2.8.0 663 | transitivePeerDependencies: 664 | - '@parcel/core' 665 | - cssnano 666 | - postcss 667 | - purgecss 668 | - relateurl 669 | - srcset 670 | - terser 671 | - uncss 672 | dev: true 673 | 674 | /@parcel/optimizer-image/2.8.3_@parcel+core@2.8.3: 675 | resolution: {integrity: sha512-SD71sSH27SkCDNUNx9A3jizqB/WIJr3dsfp+JZGZC42tpD/Siim6Rqy9M4To/BpMMQIIiEXa5ofwS+DgTEiEHQ==} 676 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 677 | dependencies: 678 | '@parcel/diagnostic': 2.8.3 679 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 680 | '@parcel/utils': 2.8.3 681 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 682 | detect-libc: 1.0.3 683 | transitivePeerDependencies: 684 | - '@parcel/core' 685 | dev: true 686 | 687 | /@parcel/optimizer-svgo/2.8.3_@parcel+core@2.8.3: 688 | resolution: {integrity: sha512-9KQed99NZnQw3/W4qBYVQ7212rzA9EqrQG019TIWJzkA9tjGBMIm2c/nXpK1tc3hQ3e7KkXkFCQ3C+ibVUnHNA==} 689 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 690 | dependencies: 691 | '@parcel/diagnostic': 2.8.3 692 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 693 | '@parcel/utils': 2.8.3 694 | svgo: 2.8.0 695 | transitivePeerDependencies: 696 | - '@parcel/core' 697 | dev: true 698 | 699 | /@parcel/optimizer-terser/2.8.3_@parcel+core@2.8.3: 700 | resolution: {integrity: sha512-9EeQlN6zIeUWwzrzu6Q2pQSaYsYGah8MtiQ/hog9KEPlYTP60hBv/+utDyYEHSQhL7y5ym08tPX5GzBvwAD/dA==} 701 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 702 | dependencies: 703 | '@parcel/diagnostic': 2.8.3 704 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 705 | '@parcel/source-map': 2.1.1 706 | '@parcel/utils': 2.8.3 707 | nullthrows: 1.1.1 708 | terser: 5.16.2 709 | transitivePeerDependencies: 710 | - '@parcel/core' 711 | dev: true 712 | 713 | /@parcel/package-manager/2.8.3_@parcel+core@2.8.3: 714 | resolution: {integrity: sha512-tIpY5pD2lH53p9hpi++GsODy6V3khSTX4pLEGuMpeSYbHthnOViobqIlFLsjni+QA1pfc8NNNIQwSNdGjYflVA==} 715 | engines: {node: '>= 12.0.0'} 716 | peerDependencies: 717 | '@parcel/core': ^2.8.3 718 | dependencies: 719 | '@parcel/core': 2.8.3 720 | '@parcel/diagnostic': 2.8.3 721 | '@parcel/fs': 2.8.3_@parcel+core@2.8.3 722 | '@parcel/logger': 2.8.3 723 | '@parcel/types': 2.8.3_@parcel+core@2.8.3 724 | '@parcel/utils': 2.8.3 725 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 726 | semver: 5.7.1 727 | dev: true 728 | 729 | /@parcel/packager-css/2.8.3_@parcel+core@2.8.3: 730 | resolution: {integrity: sha512-WyvkMmsurlHG8d8oUVm7S+D+cC/T3qGeqogb7sTI52gB6uiywU7lRCizLNqGFyFGIxcVTVHWnSHqItBcLN76lA==} 731 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 732 | dependencies: 733 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 734 | '@parcel/source-map': 2.1.1 735 | '@parcel/utils': 2.8.3 736 | nullthrows: 1.1.1 737 | transitivePeerDependencies: 738 | - '@parcel/core' 739 | dev: true 740 | 741 | /@parcel/packager-html/2.8.3_@parcel+core@2.8.3: 742 | resolution: {integrity: sha512-OhPu1Hx1RRKJodpiu86ZqL8el2Aa4uhBHF6RAL1Pcrh2EhRRlPf70Sk0tC22zUpYL7es+iNKZ/n0Rl+OWSHWEw==} 743 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 744 | dependencies: 745 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 746 | '@parcel/types': 2.8.3_@parcel+core@2.8.3 747 | '@parcel/utils': 2.8.3 748 | nullthrows: 1.1.1 749 | posthtml: 0.16.6 750 | transitivePeerDependencies: 751 | - '@parcel/core' 752 | dev: true 753 | 754 | /@parcel/packager-js/2.8.3_@parcel+core@2.8.3: 755 | resolution: {integrity: sha512-0pGKC3Ax5vFuxuZCRB+nBucRfFRz4ioie19BbDxYnvBxrd4M3FIu45njf6zbBYsI9eXqaDnL1b3DcZJfYqtIzw==} 756 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 757 | dependencies: 758 | '@parcel/diagnostic': 2.8.3 759 | '@parcel/hash': 2.8.3 760 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 761 | '@parcel/source-map': 2.1.1 762 | '@parcel/utils': 2.8.3 763 | globals: 13.20.0 764 | nullthrows: 1.1.1 765 | transitivePeerDependencies: 766 | - '@parcel/core' 767 | dev: true 768 | 769 | /@parcel/packager-raw/2.8.3_@parcel+core@2.8.3: 770 | resolution: {integrity: sha512-BA6enNQo1RCnco9MhkxGrjOk59O71IZ9DPKu3lCtqqYEVd823tXff2clDKHK25i6cChmeHu6oB1Rb73hlPqhUA==} 771 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 772 | dependencies: 773 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 774 | transitivePeerDependencies: 775 | - '@parcel/core' 776 | dev: true 777 | 778 | /@parcel/packager-svg/2.8.3_@parcel+core@2.8.3: 779 | resolution: {integrity: sha512-mvIoHpmv5yzl36OjrklTDFShLUfPFTwrmp1eIwiszGdEBuQaX7JVI3Oo2jbVQgcN4W7J6SENzGQ3Q5hPTW3pMw==} 780 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 781 | dependencies: 782 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 783 | '@parcel/types': 2.8.3_@parcel+core@2.8.3 784 | '@parcel/utils': 2.8.3 785 | posthtml: 0.16.6 786 | transitivePeerDependencies: 787 | - '@parcel/core' 788 | dev: true 789 | 790 | /@parcel/plugin/2.8.3_@parcel+core@2.8.3: 791 | resolution: {integrity: sha512-jZ6mnsS4D9X9GaNnvrixDQwlUQJCohDX2hGyM0U0bY2NWU8Km97SjtoCpWjq+XBCx/gpC4g58+fk9VQeZq2vlw==} 792 | engines: {node: '>= 12.0.0'} 793 | dependencies: 794 | '@parcel/types': 2.8.3_@parcel+core@2.8.3 795 | transitivePeerDependencies: 796 | - '@parcel/core' 797 | dev: true 798 | 799 | /@parcel/reporter-cli/2.8.3_@parcel+core@2.8.3: 800 | resolution: {integrity: sha512-3sJkS6tFFzgIOz3u3IpD/RsmRxvOKKiQHOTkiiqRt1l44mMDGKS7zANRnJYsQzdCsgwc9SOP30XFgJwtoVlMbw==} 801 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 802 | dependencies: 803 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 804 | '@parcel/types': 2.8.3_@parcel+core@2.8.3 805 | '@parcel/utils': 2.8.3 806 | chalk: 4.1.2 807 | term-size: 2.2.1 808 | transitivePeerDependencies: 809 | - '@parcel/core' 810 | dev: true 811 | 812 | /@parcel/reporter-dev-server/2.8.3_@parcel+core@2.8.3: 813 | resolution: {integrity: sha512-Y8C8hzgzTd13IoWTj+COYXEyCkXfmVJs3//GDBsH22pbtSFMuzAZd+8J9qsCo0EWpiDow7V9f1LischvEh3FbQ==} 814 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 815 | dependencies: 816 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 817 | '@parcel/utils': 2.8.3 818 | transitivePeerDependencies: 819 | - '@parcel/core' 820 | dev: true 821 | 822 | /@parcel/resolver-default/2.8.3_@parcel+core@2.8.3: 823 | resolution: {integrity: sha512-k0B5M/PJ+3rFbNj4xZSBr6d6HVIe6DH/P3dClLcgBYSXAvElNDfXgtIimbjCyItFkW9/BfcgOVKEEIZOeySH/A==} 824 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 825 | dependencies: 826 | '@parcel/node-resolver-core': 2.8.3 827 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 828 | transitivePeerDependencies: 829 | - '@parcel/core' 830 | dev: true 831 | 832 | /@parcel/runtime-browser-hmr/2.8.3_@parcel+core@2.8.3: 833 | resolution: {integrity: sha512-2O1PYi2j/Q0lTyGNV3JdBYwg4rKo6TEVFlYGdd5wCYU9ZIN9RRuoCnWWH2qCPj3pjIVtBeppYxzfVjPEHINWVg==} 834 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 835 | dependencies: 836 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 837 | '@parcel/utils': 2.8.3 838 | transitivePeerDependencies: 839 | - '@parcel/core' 840 | dev: true 841 | 842 | /@parcel/runtime-js/2.8.3_@parcel+core@2.8.3: 843 | resolution: {integrity: sha512-IRja0vNKwvMtPgIqkBQh0QtRn0XcxNC8HU1jrgWGRckzu10qJWO+5ULgtOeR4pv9krffmMPqywGXw6l/gvJKYQ==} 844 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 845 | dependencies: 846 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 847 | '@parcel/utils': 2.8.3 848 | nullthrows: 1.1.1 849 | transitivePeerDependencies: 850 | - '@parcel/core' 851 | dev: true 852 | 853 | /@parcel/runtime-react-refresh/2.8.3_@parcel+core@2.8.3: 854 | resolution: {integrity: sha512-2v/qFKp00MfG0234OdOgQNAo6TLENpFYZMbVbAsPMY9ITiqG73MrEsrGXVoGbYiGTMB/Toer/lSWlJxtacOCuA==} 855 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 856 | dependencies: 857 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 858 | '@parcel/utils': 2.8.3 859 | react-error-overlay: 6.0.9 860 | react-refresh: 0.9.0 861 | transitivePeerDependencies: 862 | - '@parcel/core' 863 | dev: true 864 | 865 | /@parcel/runtime-service-worker/2.8.3_@parcel+core@2.8.3: 866 | resolution: {integrity: sha512-/Skkw+EeRiwzOJso5fQtK8c9b452uWLNhQH1ISTodbmlcyB4YalAiSsyHCtMYD0c3/t5Sx4ZS7vxBAtQd0RvOw==} 867 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 868 | dependencies: 869 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 870 | '@parcel/utils': 2.8.3 871 | nullthrows: 1.1.1 872 | transitivePeerDependencies: 873 | - '@parcel/core' 874 | dev: true 875 | 876 | /@parcel/source-map/2.1.1: 877 | resolution: {integrity: sha512-Ejx1P/mj+kMjQb8/y5XxDUn4reGdr+WyKYloBljpppUy8gs42T+BNoEOuRYqDVdgPc6NxduzIDoJS9pOFfV5Ew==} 878 | engines: {node: ^12.18.3 || >=14} 879 | dependencies: 880 | detect-libc: 1.0.3 881 | dev: true 882 | 883 | /@parcel/transformer-babel/2.8.3_@parcel+core@2.8.3: 884 | resolution: {integrity: sha512-L6lExfpvvC7T/g3pxf3CIJRouQl+sgrSzuWQ0fD4PemUDHvHchSP4SNUVnd6gOytF3Y1KpnEZIunQGi5xVqQCQ==} 885 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 886 | dependencies: 887 | '@parcel/diagnostic': 2.8.3 888 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 889 | '@parcel/source-map': 2.1.1 890 | '@parcel/utils': 2.8.3 891 | browserslist: 4.21.5 892 | json5: 2.2.3 893 | nullthrows: 1.1.1 894 | semver: 5.7.1 895 | transitivePeerDependencies: 896 | - '@parcel/core' 897 | dev: true 898 | 899 | /@parcel/transformer-css/2.8.3_@parcel+core@2.8.3: 900 | resolution: {integrity: sha512-xTqFwlSXtnaYen9ivAgz+xPW7yRl/u4QxtnDyDpz5dr8gSeOpQYRcjkd4RsYzKsWzZcGtB5EofEk8ayUbWKEUg==} 901 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 902 | dependencies: 903 | '@parcel/diagnostic': 2.8.3 904 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 905 | '@parcel/source-map': 2.1.1 906 | '@parcel/utils': 2.8.3 907 | browserslist: 4.21.5 908 | lightningcss: 1.18.0 909 | nullthrows: 1.1.1 910 | transitivePeerDependencies: 911 | - '@parcel/core' 912 | dev: true 913 | 914 | /@parcel/transformer-html/2.8.3_@parcel+core@2.8.3: 915 | resolution: {integrity: sha512-kIZO3qsMYTbSnSpl9cnZog+SwL517ffWH54JeB410OSAYF1ouf4n5v9qBnALZbuCCmPwJRGs4jUtE452hxwN4g==} 916 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 917 | dependencies: 918 | '@parcel/diagnostic': 2.8.3 919 | '@parcel/hash': 2.8.3 920 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 921 | nullthrows: 1.1.1 922 | posthtml: 0.16.6 923 | posthtml-parser: 0.10.2 924 | posthtml-render: 3.0.0 925 | semver: 5.7.1 926 | srcset: 4.0.0 927 | transitivePeerDependencies: 928 | - '@parcel/core' 929 | dev: true 930 | 931 | /@parcel/transformer-image/2.8.3_@parcel+core@2.8.3: 932 | resolution: {integrity: sha512-cO4uptcCGTi5H6bvTrAWEFUsTNhA4kCo8BSvRSCHA2sf/4C5tGQPHt3JhdO0GQLPwZRCh/R41EkJs5HZ8A8DAg==} 933 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 934 | peerDependencies: 935 | '@parcel/core': ^2.8.3 936 | dependencies: 937 | '@parcel/core': 2.8.3 938 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 939 | '@parcel/utils': 2.8.3 940 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 941 | nullthrows: 1.1.1 942 | dev: true 943 | 944 | /@parcel/transformer-js/2.8.3_@parcel+core@2.8.3: 945 | resolution: {integrity: sha512-9Qd6bib+sWRcpovvzvxwy/PdFrLUXGfmSW9XcVVG8pvgXsZPFaNjnNT8stzGQj1pQiougCoxMY4aTM5p1lGHEQ==} 946 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 947 | peerDependencies: 948 | '@parcel/core': ^2.8.3 949 | dependencies: 950 | '@parcel/core': 2.8.3 951 | '@parcel/diagnostic': 2.8.3 952 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 953 | '@parcel/source-map': 2.1.1 954 | '@parcel/utils': 2.8.3 955 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 956 | '@swc/helpers': 0.4.14 957 | browserslist: 4.21.5 958 | detect-libc: 1.0.3 959 | nullthrows: 1.1.1 960 | regenerator-runtime: 0.13.11 961 | semver: 5.7.1 962 | dev: true 963 | 964 | /@parcel/transformer-json/2.8.3_@parcel+core@2.8.3: 965 | resolution: {integrity: sha512-B7LmVq5Q7bZO4ERb6NHtRuUKWGysEeaj9H4zelnyBv+wLgpo4f5FCxSE1/rTNmP9u1qHvQ3scGdK6EdSSokGPg==} 966 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 967 | dependencies: 968 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 969 | json5: 2.2.3 970 | transitivePeerDependencies: 971 | - '@parcel/core' 972 | dev: true 973 | 974 | /@parcel/transformer-postcss/2.8.3_@parcel+core@2.8.3: 975 | resolution: {integrity: sha512-e8luB/poIlz6jBsD1Izms+6ElbyzuoFVa4lFVLZnTAChI3UxPdt9p/uTsIO46HyBps/Bk8ocvt3J4YF84jzmvg==} 976 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 977 | dependencies: 978 | '@parcel/diagnostic': 2.8.3 979 | '@parcel/hash': 2.8.3 980 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 981 | '@parcel/utils': 2.8.3 982 | clone: 2.1.2 983 | nullthrows: 1.1.1 984 | postcss-value-parser: 4.2.0 985 | semver: 5.7.1 986 | transitivePeerDependencies: 987 | - '@parcel/core' 988 | dev: true 989 | 990 | /@parcel/transformer-posthtml/2.8.3_@parcel+core@2.8.3: 991 | resolution: {integrity: sha512-pkzf9Smyeaw4uaRLsT41RGrPLT5Aip8ZPcntawAfIo+KivBQUV0erY1IvHYjyfFzq1ld/Fo2Ith9He6mxpPifA==} 992 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 993 | dependencies: 994 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 995 | '@parcel/utils': 2.8.3 996 | nullthrows: 1.1.1 997 | posthtml: 0.16.6 998 | posthtml-parser: 0.10.2 999 | posthtml-render: 3.0.0 1000 | semver: 5.7.1 1001 | transitivePeerDependencies: 1002 | - '@parcel/core' 1003 | dev: true 1004 | 1005 | /@parcel/transformer-raw/2.8.3_@parcel+core@2.8.3: 1006 | resolution: {integrity: sha512-G+5cXnd2/1O3nV/pgRxVKZY/HcGSseuhAe71gQdSQftb8uJEURyUHoQ9Eh0JUD3MgWh9V+nIKoyFEZdf9T0sUQ==} 1007 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 1008 | dependencies: 1009 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 1010 | transitivePeerDependencies: 1011 | - '@parcel/core' 1012 | dev: true 1013 | 1014 | /@parcel/transformer-react-refresh-wrap/2.8.3_@parcel+core@2.8.3: 1015 | resolution: {integrity: sha512-q8AAoEvBnCf/nPvgOwFwKZfEl/thwq7c2duxXkhl+tTLDRN2vGmyz4355IxCkavSX+pLWSQ5MexklSEeMkgthg==} 1016 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 1017 | dependencies: 1018 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 1019 | '@parcel/utils': 2.8.3 1020 | react-refresh: 0.9.0 1021 | transitivePeerDependencies: 1022 | - '@parcel/core' 1023 | dev: true 1024 | 1025 | /@parcel/transformer-svg/2.8.3_@parcel+core@2.8.3: 1026 | resolution: {integrity: sha512-3Zr/gBzxi1ZH1fftH/+KsZU7w5GqkmxlB0ZM8ovS5E/Pl1lq1t0xvGJue9m2VuQqP8Mxfpl5qLFmsKlhaZdMIQ==} 1027 | engines: {node: '>= 12.0.0', parcel: ^2.8.3} 1028 | dependencies: 1029 | '@parcel/diagnostic': 2.8.3 1030 | '@parcel/hash': 2.8.3 1031 | '@parcel/plugin': 2.8.3_@parcel+core@2.8.3 1032 | nullthrows: 1.1.1 1033 | posthtml: 0.16.6 1034 | posthtml-parser: 0.10.2 1035 | posthtml-render: 3.0.0 1036 | semver: 5.7.1 1037 | transitivePeerDependencies: 1038 | - '@parcel/core' 1039 | dev: true 1040 | 1041 | /@parcel/types/2.8.3: 1042 | resolution: {integrity: sha512-FECA1FB7+0UpITKU0D6TgGBpGxYpVSMNEENZbSJxFSajNy3wrko+zwBKQmFOLOiPcEtnGikxNs+jkFWbPlUAtw==} 1043 | dependencies: 1044 | '@parcel/cache': 2.8.3_@parcel+core@2.8.3 1045 | '@parcel/diagnostic': 2.8.3 1046 | '@parcel/fs': 2.8.3_@parcel+core@2.8.3 1047 | '@parcel/package-manager': 2.8.3_@parcel+core@2.8.3 1048 | '@parcel/source-map': 2.1.1 1049 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 1050 | utility-types: 3.10.0 1051 | dev: true 1052 | 1053 | /@parcel/types/2.8.3_@parcel+core@2.8.3: 1054 | resolution: {integrity: sha512-FECA1FB7+0UpITKU0D6TgGBpGxYpVSMNEENZbSJxFSajNy3wrko+zwBKQmFOLOiPcEtnGikxNs+jkFWbPlUAtw==} 1055 | dependencies: 1056 | '@parcel/cache': 2.8.3_@parcel+core@2.8.3 1057 | '@parcel/diagnostic': 2.8.3 1058 | '@parcel/fs': 2.8.3_@parcel+core@2.8.3 1059 | '@parcel/package-manager': 2.8.3_@parcel+core@2.8.3 1060 | '@parcel/source-map': 2.1.1 1061 | '@parcel/workers': 2.8.3_@parcel+core@2.8.3 1062 | utility-types: 3.10.0 1063 | transitivePeerDependencies: 1064 | - '@parcel/core' 1065 | dev: true 1066 | 1067 | /@parcel/utils/2.8.3: 1068 | resolution: {integrity: sha512-IhVrmNiJ+LOKHcCivG5dnuLGjhPYxQ/IzbnF2DKNQXWBTsYlHkJZpmz7THoeLtLliGmSOZ3ZCsbR8/tJJKmxjA==} 1069 | engines: {node: '>= 12.0.0'} 1070 | dependencies: 1071 | '@parcel/codeframe': 2.8.3 1072 | '@parcel/diagnostic': 2.8.3 1073 | '@parcel/hash': 2.8.3 1074 | '@parcel/logger': 2.8.3 1075 | '@parcel/markdown-ansi': 2.8.3 1076 | '@parcel/source-map': 2.1.1 1077 | chalk: 4.1.2 1078 | dev: true 1079 | 1080 | /@parcel/watcher/2.1.0: 1081 | resolution: {integrity: sha512-8s8yYjd19pDSsBpbkOHnT6Z2+UJSuLQx61pCFM0s5wSRvKCEMDjd/cHY3/GI1szHIWbpXpsJdg3V6ISGGx9xDw==} 1082 | engines: {node: '>= 10.0.0'} 1083 | requiresBuild: true 1084 | dependencies: 1085 | is-glob: 4.0.3 1086 | micromatch: 4.0.5 1087 | node-addon-api: 3.2.1 1088 | node-gyp-build: 4.6.0 1089 | dev: true 1090 | 1091 | /@parcel/workers/2.8.3_@parcel+core@2.8.3: 1092 | resolution: {integrity: sha512-+AxBnKgjqVpUHBcHLWIHcjYgKIvHIpZjN33mG5LG9XXvrZiqdWvouEzqEXlVLq5VzzVbKIQQcmsvRy138YErkg==} 1093 | engines: {node: '>= 12.0.0'} 1094 | peerDependencies: 1095 | '@parcel/core': ^2.8.3 1096 | dependencies: 1097 | '@parcel/core': 2.8.3 1098 | '@parcel/diagnostic': 2.8.3 1099 | '@parcel/logger': 2.8.3 1100 | '@parcel/types': 2.8.3 1101 | '@parcel/utils': 2.8.3 1102 | chrome-trace-event: 1.0.3 1103 | nullthrows: 1.1.1 1104 | dev: true 1105 | 1106 | /@swc/helpers/0.4.14: 1107 | resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==} 1108 | dependencies: 1109 | tslib: 2.5.0 1110 | dev: true 1111 | 1112 | /@tootallnate/once/1.1.2: 1113 | resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==} 1114 | engines: {node: '>= 6'} 1115 | dev: true 1116 | 1117 | /@tootallnate/once/2.0.0: 1118 | resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==} 1119 | engines: {node: '>= 10'} 1120 | dev: true 1121 | 1122 | /@trysound/sax/0.2.0: 1123 | resolution: {integrity: sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==} 1124 | engines: {node: '>=10.13.0'} 1125 | dev: true 1126 | 1127 | /@types/parse-json/4.0.0: 1128 | resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} 1129 | dev: true 1130 | 1131 | /abortcontroller-polyfill/1.7.5: 1132 | resolution: {integrity: sha512-JMJ5soJWP18htbbxJjG7bG6yuI6pRhgJ0scHHTfkUjf6wjP912xZWvM+A4sJK3gqd9E8fcPbDnOefbA9Th/FIQ==} 1133 | dev: true 1134 | 1135 | /acorn/8.8.2: 1136 | resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} 1137 | engines: {node: '>=0.4.0'} 1138 | hasBin: true 1139 | dev: true 1140 | 1141 | /agent-base/6.0.2: 1142 | resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} 1143 | engines: {node: '>= 6.0.0'} 1144 | dependencies: 1145 | debug: 4.3.4 1146 | transitivePeerDependencies: 1147 | - supports-color 1148 | dev: true 1149 | 1150 | /agentkeepalive/4.2.1: 1151 | resolution: {integrity: sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==} 1152 | engines: {node: '>= 8.0.0'} 1153 | dependencies: 1154 | debug: 4.3.4 1155 | depd: 1.1.2 1156 | humanize-ms: 1.2.1 1157 | transitivePeerDependencies: 1158 | - supports-color 1159 | dev: true 1160 | 1161 | /aggregate-error/3.1.0: 1162 | resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} 1163 | engines: {node: '>=8'} 1164 | dependencies: 1165 | clean-stack: 2.2.0 1166 | indent-string: 4.0.0 1167 | dev: true 1168 | 1169 | /ansi-escapes/4.3.2: 1170 | resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} 1171 | engines: {node: '>=8'} 1172 | dependencies: 1173 | type-fest: 0.21.3 1174 | dev: true 1175 | 1176 | /ansi-regex/5.0.1: 1177 | resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} 1178 | engines: {node: '>=8'} 1179 | dev: true 1180 | 1181 | /ansi-styles/3.2.1: 1182 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 1183 | engines: {node: '>=4'} 1184 | dependencies: 1185 | color-convert: 1.9.3 1186 | dev: true 1187 | 1188 | /ansi-styles/4.3.0: 1189 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 1190 | engines: {node: '>=8'} 1191 | dependencies: 1192 | color-convert: 2.0.1 1193 | dev: true 1194 | 1195 | /aproba/1.2.0: 1196 | resolution: {integrity: sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==} 1197 | dev: true 1198 | 1199 | /arch/2.2.0: 1200 | resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} 1201 | dev: true 1202 | 1203 | /astral-regex/2.0.0: 1204 | resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} 1205 | engines: {node: '>=8'} 1206 | dev: true 1207 | 1208 | /balanced-match/1.0.2: 1209 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 1210 | dev: true 1211 | 1212 | /base-x/3.0.9: 1213 | resolution: {integrity: sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==} 1214 | dependencies: 1215 | safe-buffer: 5.2.1 1216 | dev: true 1217 | 1218 | /bluebird/3.7.2: 1219 | resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==} 1220 | dev: true 1221 | 1222 | /boolbase/1.0.0: 1223 | resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} 1224 | dev: true 1225 | 1226 | /brace-expansion/1.1.11: 1227 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 1228 | dependencies: 1229 | balanced-match: 1.0.2 1230 | concat-map: 0.0.1 1231 | dev: true 1232 | 1233 | /brace-expansion/2.0.1: 1234 | resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} 1235 | dependencies: 1236 | balanced-match: 1.0.2 1237 | dev: true 1238 | 1239 | /braces/3.0.2: 1240 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 1241 | engines: {node: '>=8'} 1242 | dependencies: 1243 | fill-range: 7.0.1 1244 | dev: true 1245 | 1246 | /browserslist/4.21.5: 1247 | resolution: {integrity: sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==} 1248 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 1249 | hasBin: true 1250 | dependencies: 1251 | caniuse-lite: 1.0.30001450 1252 | electron-to-chromium: 1.4.284 1253 | node-releases: 2.0.9 1254 | update-browserslist-db: 1.0.10_browserslist@4.21.5 1255 | dev: true 1256 | 1257 | /buffer-from/1.1.2: 1258 | resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} 1259 | dev: true 1260 | 1261 | /byline/5.0.0: 1262 | resolution: {integrity: sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q==} 1263 | engines: {node: '>=0.10.0'} 1264 | dev: true 1265 | 1266 | /cacache/11.3.3: 1267 | resolution: {integrity: sha512-p8WcneCytvzPxhDvYp31PD039vi77I12W+/KfR9S8AZbaiARFBCpsPJS+9uhWfeBfeAtW7o/4vt3MUqLkbY6nA==} 1268 | dependencies: 1269 | bluebird: 3.7.2 1270 | chownr: 1.1.4 1271 | figgy-pudding: 3.5.2 1272 | glob: 7.2.3 1273 | graceful-fs: 4.2.10 1274 | lru-cache: 5.1.1 1275 | mississippi: 3.0.0 1276 | mkdirp: 0.5.6 1277 | move-concurrently: 1.0.1 1278 | promise-inflight: 1.0.1 1279 | rimraf: 2.7.1 1280 | ssri: 6.0.2 1281 | unique-filename: 1.1.1 1282 | y18n: 4.0.3 1283 | dev: true 1284 | 1285 | /cacache/15.3.0: 1286 | resolution: {integrity: sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==} 1287 | engines: {node: '>= 10'} 1288 | dependencies: 1289 | '@npmcli/fs': 1.1.1 1290 | '@npmcli/move-file': 1.1.2 1291 | chownr: 2.0.0 1292 | fs-minipass: 2.1.0 1293 | glob: 7.2.3 1294 | infer-owner: 1.0.4 1295 | lru-cache: 6.0.0 1296 | minipass: 3.3.6 1297 | minipass-collect: 1.0.2 1298 | minipass-flush: 1.0.5 1299 | minipass-pipeline: 1.2.4 1300 | mkdirp: 1.0.4 1301 | p-map: 4.0.0 1302 | promise-inflight: 1.0.1 1303 | rimraf: 3.0.2 1304 | ssri: 8.0.1 1305 | tar: 6.1.13 1306 | unique-filename: 1.1.1 1307 | transitivePeerDependencies: 1308 | - bluebird 1309 | dev: true 1310 | 1311 | /cacache/16.1.3: 1312 | resolution: {integrity: sha512-/+Emcj9DAXxX4cwlLmRI9c166RuL3w30zp4R7Joiv2cQTtTtA+jeuCAjH3ZlGnYS3tKENSrKhAzVVP9GVyzeYQ==} 1313 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 1314 | dependencies: 1315 | '@npmcli/fs': 2.1.2 1316 | '@npmcli/move-file': 2.0.1 1317 | chownr: 2.0.0 1318 | fs-minipass: 2.1.0 1319 | glob: 8.1.0 1320 | infer-owner: 1.0.4 1321 | lru-cache: 7.14.1 1322 | minipass: 3.3.6 1323 | minipass-collect: 1.0.2 1324 | minipass-flush: 1.0.5 1325 | minipass-pipeline: 1.2.4 1326 | mkdirp: 1.0.4 1327 | p-map: 4.0.0 1328 | promise-inflight: 1.0.1 1329 | rimraf: 3.0.2 1330 | ssri: 9.0.1 1331 | tar: 6.1.13 1332 | unique-filename: 2.0.1 1333 | transitivePeerDependencies: 1334 | - bluebird 1335 | dev: true 1336 | 1337 | /callsites/3.1.0: 1338 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 1339 | engines: {node: '>=6'} 1340 | dev: true 1341 | 1342 | /caniuse-lite/1.0.30001450: 1343 | resolution: {integrity: sha512-qMBmvmQmFXaSxexkjjfMvD5rnDL0+m+dUMZKoDYsGG8iZN29RuYh9eRoMvKsT6uMAWlyUUGDEQGJJYjzCIO9ew==} 1344 | dev: true 1345 | 1346 | /chalk/2.4.2: 1347 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 1348 | engines: {node: '>=4'} 1349 | dependencies: 1350 | ansi-styles: 3.2.1 1351 | escape-string-regexp: 1.0.5 1352 | supports-color: 5.5.0 1353 | dev: true 1354 | 1355 | /chalk/4.1.2: 1356 | resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} 1357 | engines: {node: '>=10'} 1358 | dependencies: 1359 | ansi-styles: 4.3.0 1360 | supports-color: 7.2.0 1361 | dev: true 1362 | 1363 | /chownr/1.1.4: 1364 | resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} 1365 | dev: true 1366 | 1367 | /chownr/2.0.0: 1368 | resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} 1369 | engines: {node: '>=10'} 1370 | dev: true 1371 | 1372 | /chrome-trace-event/1.0.3: 1373 | resolution: {integrity: sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==} 1374 | engines: {node: '>=6.0'} 1375 | dev: true 1376 | 1377 | /clean-stack/2.2.0: 1378 | resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} 1379 | engines: {node: '>=6'} 1380 | dev: true 1381 | 1382 | /cli-cursor/3.1.0: 1383 | resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} 1384 | engines: {node: '>=8'} 1385 | dependencies: 1386 | restore-cursor: 3.1.0 1387 | dev: true 1388 | 1389 | /clone/2.1.2: 1390 | resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==} 1391 | engines: {node: '>=0.8'} 1392 | dev: true 1393 | 1394 | /color-convert/1.9.3: 1395 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 1396 | dependencies: 1397 | color-name: 1.1.3 1398 | dev: true 1399 | 1400 | /color-convert/2.0.1: 1401 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 1402 | engines: {node: '>=7.0.0'} 1403 | dependencies: 1404 | color-name: 1.1.4 1405 | dev: true 1406 | 1407 | /color-name/1.1.3: 1408 | resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} 1409 | dev: true 1410 | 1411 | /color-name/1.1.4: 1412 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 1413 | dev: true 1414 | 1415 | /commander/2.20.3: 1416 | resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} 1417 | dev: true 1418 | 1419 | /commander/7.2.0: 1420 | resolution: {integrity: sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==} 1421 | engines: {node: '>= 10'} 1422 | dev: true 1423 | 1424 | /concat-map/0.0.1: 1425 | resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} 1426 | dev: true 1427 | 1428 | /concat-stream/1.6.2: 1429 | resolution: {integrity: sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==} 1430 | engines: {'0': node >= 0.8} 1431 | dependencies: 1432 | buffer-from: 1.1.2 1433 | inherits: 2.0.4 1434 | readable-stream: 2.3.7 1435 | typedarray: 0.0.6 1436 | dev: true 1437 | 1438 | /copy-concurrently/1.0.5: 1439 | resolution: {integrity: sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==} 1440 | dependencies: 1441 | aproba: 1.2.0 1442 | fs-write-stream-atomic: 1.0.10 1443 | iferr: 0.1.5 1444 | mkdirp: 0.5.6 1445 | rimraf: 2.7.1 1446 | run-queue: 1.0.3 1447 | dev: true 1448 | 1449 | /core-util-is/1.0.3: 1450 | resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} 1451 | dev: true 1452 | 1453 | /cosmiconfig/7.1.0: 1454 | resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} 1455 | engines: {node: '>=10'} 1456 | dependencies: 1457 | '@types/parse-json': 4.0.0 1458 | import-fresh: 3.3.0 1459 | parse-json: 5.2.0 1460 | path-type: 4.0.0 1461 | yaml: 1.10.2 1462 | dev: true 1463 | 1464 | /cross-spawn/7.0.3: 1465 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 1466 | engines: {node: '>= 8'} 1467 | dependencies: 1468 | path-key: 3.1.1 1469 | shebang-command: 2.0.0 1470 | which: 2.0.2 1471 | dev: true 1472 | 1473 | /css-select/4.3.0: 1474 | resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==} 1475 | dependencies: 1476 | boolbase: 1.0.0 1477 | css-what: 6.1.0 1478 | domhandler: 4.3.1 1479 | domutils: 2.8.0 1480 | nth-check: 2.1.1 1481 | dev: true 1482 | 1483 | /css-tree/1.1.3: 1484 | resolution: {integrity: sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==} 1485 | engines: {node: '>=8.0.0'} 1486 | dependencies: 1487 | mdn-data: 2.0.14 1488 | source-map: 0.6.1 1489 | dev: true 1490 | 1491 | /css-what/6.1.0: 1492 | resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} 1493 | engines: {node: '>= 6'} 1494 | dev: true 1495 | 1496 | /csso/4.2.0: 1497 | resolution: {integrity: sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==} 1498 | engines: {node: '>=8.0.0'} 1499 | dependencies: 1500 | css-tree: 1.1.3 1501 | dev: true 1502 | 1503 | /cyclist/1.0.1: 1504 | resolution: {integrity: sha512-NJGVKPS81XejHcLhaLJS7plab0fK3slPh11mESeeDq2W4ZI5kUKK/LRRdVDvjJseojbPB7ZwjnyOybg3Igea/A==} 1505 | dev: true 1506 | 1507 | /debug/4.3.4: 1508 | resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} 1509 | engines: {node: '>=6.0'} 1510 | peerDependencies: 1511 | supports-color: '*' 1512 | peerDependenciesMeta: 1513 | supports-color: 1514 | optional: true 1515 | dependencies: 1516 | ms: 2.1.2 1517 | dev: true 1518 | 1519 | /depd/1.1.2: 1520 | resolution: {integrity: sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==} 1521 | engines: {node: '>= 0.6'} 1522 | dev: true 1523 | 1524 | /detect-libc/1.0.3: 1525 | resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} 1526 | engines: {node: '>=0.10'} 1527 | hasBin: true 1528 | dev: true 1529 | 1530 | /dom-serializer/1.4.1: 1531 | resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==} 1532 | dependencies: 1533 | domelementtype: 2.3.0 1534 | domhandler: 4.3.1 1535 | entities: 2.2.0 1536 | dev: true 1537 | 1538 | /domelementtype/2.3.0: 1539 | resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==} 1540 | dev: true 1541 | 1542 | /domhandler/4.3.1: 1543 | resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==} 1544 | engines: {node: '>= 4'} 1545 | dependencies: 1546 | domelementtype: 2.3.0 1547 | dev: true 1548 | 1549 | /domutils/2.8.0: 1550 | resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==} 1551 | dependencies: 1552 | dom-serializer: 1.4.1 1553 | domelementtype: 2.3.0 1554 | domhandler: 4.3.1 1555 | dev: true 1556 | 1557 | /dotenv-expand/5.1.0: 1558 | resolution: {integrity: sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==} 1559 | dev: true 1560 | 1561 | /dotenv/7.0.0: 1562 | resolution: {integrity: sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g==} 1563 | engines: {node: '>=6'} 1564 | dev: true 1565 | 1566 | /duplexify/3.7.1: 1567 | resolution: {integrity: sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==} 1568 | dependencies: 1569 | end-of-stream: 1.4.4 1570 | inherits: 2.0.4 1571 | readable-stream: 2.3.7 1572 | stream-shift: 1.0.1 1573 | dev: true 1574 | 1575 | /electron-to-chromium/1.4.284: 1576 | resolution: {integrity: sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==} 1577 | dev: true 1578 | 1579 | /emoji-regex/8.0.0: 1580 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 1581 | dev: true 1582 | 1583 | /encoding/0.1.13: 1584 | resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} 1585 | requiresBuild: true 1586 | dependencies: 1587 | iconv-lite: 0.6.3 1588 | dev: true 1589 | optional: true 1590 | 1591 | /end-of-stream/1.4.4: 1592 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 1593 | dependencies: 1594 | once: 1.4.0 1595 | dev: true 1596 | 1597 | /entities/2.2.0: 1598 | resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==} 1599 | dev: true 1600 | 1601 | /entities/3.0.1: 1602 | resolution: {integrity: sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q==} 1603 | engines: {node: '>=0.12'} 1604 | dev: true 1605 | 1606 | /env-paths/2.2.1: 1607 | resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} 1608 | engines: {node: '>=6'} 1609 | dev: true 1610 | 1611 | /err-code/2.0.3: 1612 | resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} 1613 | dev: true 1614 | 1615 | /error-ex/1.3.2: 1616 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 1617 | dependencies: 1618 | is-arrayish: 0.2.1 1619 | dev: true 1620 | 1621 | /esbuild/0.17.5: 1622 | resolution: {integrity: sha512-Bu6WLCc9NMsNoMJUjGl3yBzTjVLXdysMltxQWiLAypP+/vQrf+3L1Xe8fCXzxaECus2cEJ9M7pk4yKatEwQMqQ==} 1623 | engines: {node: '>=12'} 1624 | hasBin: true 1625 | requiresBuild: true 1626 | optionalDependencies: 1627 | '@esbuild/android-arm': 0.17.5 1628 | '@esbuild/android-arm64': 0.17.5 1629 | '@esbuild/android-x64': 0.17.5 1630 | '@esbuild/darwin-arm64': 0.17.5 1631 | '@esbuild/darwin-x64': 0.17.5 1632 | '@esbuild/freebsd-arm64': 0.17.5 1633 | '@esbuild/freebsd-x64': 0.17.5 1634 | '@esbuild/linux-arm': 0.17.5 1635 | '@esbuild/linux-arm64': 0.17.5 1636 | '@esbuild/linux-ia32': 0.17.5 1637 | '@esbuild/linux-loong64': 0.17.5 1638 | '@esbuild/linux-mips64el': 0.17.5 1639 | '@esbuild/linux-ppc64': 0.17.5 1640 | '@esbuild/linux-riscv64': 0.17.5 1641 | '@esbuild/linux-s390x': 0.17.5 1642 | '@esbuild/linux-x64': 0.17.5 1643 | '@esbuild/netbsd-x64': 0.17.5 1644 | '@esbuild/openbsd-x64': 0.17.5 1645 | '@esbuild/sunos-x64': 0.17.5 1646 | '@esbuild/win32-arm64': 0.17.5 1647 | '@esbuild/win32-ia32': 0.17.5 1648 | '@esbuild/win32-x64': 0.17.5 1649 | dev: true 1650 | 1651 | /escalade/3.1.1: 1652 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 1653 | engines: {node: '>=6'} 1654 | dev: true 1655 | 1656 | /escape-string-regexp/1.0.5: 1657 | resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} 1658 | engines: {node: '>=0.8.0'} 1659 | dev: true 1660 | 1661 | /execa/2.1.0: 1662 | resolution: {integrity: sha512-Y/URAVapfbYy2Xp/gb6A0E7iR8xeqOCXsuuaoMn7A5PzrXUK84E1gyiEfq0wQd/GHA6GsoHWwhNq8anb0mleIw==} 1663 | engines: {node: ^8.12.0 || >=9.7.0} 1664 | dependencies: 1665 | cross-spawn: 7.0.3 1666 | get-stream: 5.2.0 1667 | is-stream: 2.0.1 1668 | merge-stream: 2.0.0 1669 | npm-run-path: 3.1.0 1670 | onetime: 5.1.2 1671 | p-finally: 2.0.1 1672 | signal-exit: 3.0.7 1673 | strip-final-newline: 2.0.0 1674 | dev: true 1675 | 1676 | /figgy-pudding/3.5.2: 1677 | resolution: {integrity: sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==} 1678 | dev: true 1679 | 1680 | /filesize/4.2.1: 1681 | resolution: {integrity: sha512-bP82Hi8VRZX/TUBKfE24iiUGsB/sfm2WUrwTQyAzQrhO3V9IhcBBNBXMyzLY5orACxRyYJ3d2HeRVX+eFv4lmA==} 1682 | engines: {node: '>= 0.4.0'} 1683 | dev: true 1684 | 1685 | /fill-range/7.0.1: 1686 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1687 | engines: {node: '>=8'} 1688 | dependencies: 1689 | to-regex-range: 5.0.1 1690 | dev: true 1691 | 1692 | /flush-write-stream/1.1.1: 1693 | resolution: {integrity: sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==} 1694 | dependencies: 1695 | inherits: 2.0.4 1696 | readable-stream: 2.3.7 1697 | dev: true 1698 | 1699 | /from2/2.3.0: 1700 | resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} 1701 | dependencies: 1702 | inherits: 2.0.4 1703 | readable-stream: 2.3.7 1704 | dev: true 1705 | 1706 | /fs-minipass/2.1.0: 1707 | resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} 1708 | engines: {node: '>= 8'} 1709 | dependencies: 1710 | minipass: 3.3.6 1711 | dev: true 1712 | 1713 | /fs-write-stream-atomic/1.0.10: 1714 | resolution: {integrity: sha512-gehEzmPn2nAwr39eay+x3X34Ra+M2QlVUTLhkXPjWdeO8RF9kszk116avgBJM3ZyNHgHXBNx+VmPaFC36k0PzA==} 1715 | dependencies: 1716 | graceful-fs: 4.2.10 1717 | iferr: 0.1.5 1718 | imurmurhash: 0.1.4 1719 | readable-stream: 2.3.7 1720 | dev: true 1721 | 1722 | /fs.realpath/1.0.0: 1723 | resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} 1724 | dev: true 1725 | 1726 | /get-port/4.2.0: 1727 | resolution: {integrity: sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw==} 1728 | engines: {node: '>=6'} 1729 | dev: true 1730 | 1731 | /get-stream/5.2.0: 1732 | resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} 1733 | engines: {node: '>=8'} 1734 | dependencies: 1735 | pump: 3.0.0 1736 | dev: true 1737 | 1738 | /glob/7.2.3: 1739 | resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} 1740 | dependencies: 1741 | fs.realpath: 1.0.0 1742 | inflight: 1.0.6 1743 | inherits: 2.0.4 1744 | minimatch: 3.1.2 1745 | once: 1.4.0 1746 | path-is-absolute: 1.0.1 1747 | dev: true 1748 | 1749 | /glob/8.1.0: 1750 | resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} 1751 | engines: {node: '>=12'} 1752 | dependencies: 1753 | fs.realpath: 1.0.0 1754 | inflight: 1.0.6 1755 | inherits: 2.0.4 1756 | minimatch: 5.1.6 1757 | once: 1.4.0 1758 | dev: true 1759 | 1760 | /globals/13.20.0: 1761 | resolution: {integrity: sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==} 1762 | engines: {node: '>=8'} 1763 | dependencies: 1764 | type-fest: 0.20.2 1765 | dev: true 1766 | 1767 | /graceful-fs/4.2.10: 1768 | resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} 1769 | dev: true 1770 | 1771 | /has-flag/3.0.0: 1772 | resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} 1773 | engines: {node: '>=4'} 1774 | dev: true 1775 | 1776 | /has-flag/4.0.0: 1777 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1778 | engines: {node: '>=8'} 1779 | dev: true 1780 | 1781 | /htmlnano/2.0.3_svgo@2.8.0: 1782 | resolution: {integrity: sha512-S4PGGj9RbdgW8LhbILNK7W9JhmYP8zmDY7KDV/8eCiJBQJlbmltp5I0gv8c5ntLljfdxxfmJ+UJVSqyH4mb41A==} 1783 | peerDependencies: 1784 | cssnano: ^5.0.11 1785 | postcss: ^8.3.11 1786 | purgecss: ^5.0.0 1787 | relateurl: ^0.2.7 1788 | srcset: 4.0.0 1789 | svgo: ^2.8.0 1790 | terser: ^5.10.0 1791 | uncss: ^0.17.3 1792 | peerDependenciesMeta: 1793 | cssnano: 1794 | optional: true 1795 | postcss: 1796 | optional: true 1797 | purgecss: 1798 | optional: true 1799 | relateurl: 1800 | optional: true 1801 | srcset: 1802 | optional: true 1803 | svgo: 1804 | optional: true 1805 | terser: 1806 | optional: true 1807 | uncss: 1808 | optional: true 1809 | dependencies: 1810 | cosmiconfig: 7.1.0 1811 | posthtml: 0.16.6 1812 | svgo: 2.8.0 1813 | timsort: 0.3.0 1814 | dev: true 1815 | 1816 | /htmlparser2/7.2.0: 1817 | resolution: {integrity: sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog==} 1818 | dependencies: 1819 | domelementtype: 2.3.0 1820 | domhandler: 4.3.1 1821 | domutils: 2.8.0 1822 | entities: 3.0.1 1823 | dev: true 1824 | 1825 | /http-cache-semantics/4.1.1: 1826 | resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} 1827 | dev: true 1828 | 1829 | /http-proxy-agent/4.0.1: 1830 | resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==} 1831 | engines: {node: '>= 6'} 1832 | dependencies: 1833 | '@tootallnate/once': 1.1.2 1834 | agent-base: 6.0.2 1835 | debug: 4.3.4 1836 | transitivePeerDependencies: 1837 | - supports-color 1838 | dev: true 1839 | 1840 | /http-proxy-agent/5.0.0: 1841 | resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==} 1842 | engines: {node: '>= 6'} 1843 | dependencies: 1844 | '@tootallnate/once': 2.0.0 1845 | agent-base: 6.0.2 1846 | debug: 4.3.4 1847 | transitivePeerDependencies: 1848 | - supports-color 1849 | dev: true 1850 | 1851 | /https-proxy-agent/5.0.1: 1852 | resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} 1853 | engines: {node: '>= 6'} 1854 | dependencies: 1855 | agent-base: 6.0.2 1856 | debug: 4.3.4 1857 | transitivePeerDependencies: 1858 | - supports-color 1859 | dev: true 1860 | 1861 | /humanize-ms/1.2.1: 1862 | resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} 1863 | dependencies: 1864 | ms: 2.1.3 1865 | dev: true 1866 | 1867 | /iconv-lite/0.6.3: 1868 | resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} 1869 | engines: {node: '>=0.10.0'} 1870 | dependencies: 1871 | safer-buffer: 2.1.2 1872 | dev: true 1873 | optional: true 1874 | 1875 | /iferr/0.1.5: 1876 | resolution: {integrity: sha512-DUNFN5j7Tln0D+TxzloUjKB+CtVu6myn0JEFak6dG18mNt9YkQ6lzGCdafwofISZ1lLF3xRHJ98VKy9ynkcFaA==} 1877 | dev: true 1878 | 1879 | /import-fresh/3.3.0: 1880 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1881 | engines: {node: '>=6'} 1882 | dependencies: 1883 | parent-module: 1.0.1 1884 | resolve-from: 4.0.0 1885 | dev: true 1886 | 1887 | /imurmurhash/0.1.4: 1888 | resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} 1889 | engines: {node: '>=0.8.19'} 1890 | dev: true 1891 | 1892 | /indent-string/4.0.0: 1893 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} 1894 | engines: {node: '>=8'} 1895 | dev: true 1896 | 1897 | /infer-owner/1.0.4: 1898 | resolution: {integrity: sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==} 1899 | dev: true 1900 | 1901 | /inflight/1.0.6: 1902 | resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} 1903 | dependencies: 1904 | once: 1.4.0 1905 | wrappy: 1.0.2 1906 | dev: true 1907 | 1908 | /inherits/2.0.4: 1909 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1910 | dev: true 1911 | 1912 | /ip/2.0.0: 1913 | resolution: {integrity: sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==} 1914 | dev: true 1915 | 1916 | /is-arrayish/0.2.1: 1917 | resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} 1918 | dev: true 1919 | 1920 | /is-extglob/2.1.1: 1921 | resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} 1922 | engines: {node: '>=0.10.0'} 1923 | dev: true 1924 | 1925 | /is-fullwidth-code-point/3.0.0: 1926 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1927 | engines: {node: '>=8'} 1928 | dev: true 1929 | 1930 | /is-glob/4.0.3: 1931 | resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} 1932 | engines: {node: '>=0.10.0'} 1933 | dependencies: 1934 | is-extglob: 2.1.1 1935 | dev: true 1936 | 1937 | /is-json/2.0.1: 1938 | resolution: {integrity: sha512-6BEnpVn1rcf3ngfmViLM6vjUjGErbdrL4rwlv+u1NO1XO8kqT4YGL8+19Q+Z/bas8tY90BTWMk2+fW1g6hQjbA==} 1939 | dev: true 1940 | 1941 | /is-lambda/1.0.1: 1942 | resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} 1943 | dev: true 1944 | 1945 | /is-number/7.0.0: 1946 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1947 | engines: {node: '>=0.12.0'} 1948 | dev: true 1949 | 1950 | /is-plain-obj/2.1.0: 1951 | resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==} 1952 | engines: {node: '>=8'} 1953 | dev: true 1954 | 1955 | /is-stream/2.0.1: 1956 | resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} 1957 | engines: {node: '>=8'} 1958 | dev: true 1959 | 1960 | /isarray/1.0.0: 1961 | resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} 1962 | dev: true 1963 | 1964 | /isexe/2.0.0: 1965 | resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} 1966 | dev: true 1967 | 1968 | /js-tokens/4.0.0: 1969 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1970 | 1971 | /json-parse-even-better-errors/2.3.1: 1972 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} 1973 | dev: true 1974 | 1975 | /json5/2.2.3: 1976 | resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} 1977 | engines: {node: '>=6'} 1978 | hasBin: true 1979 | dev: true 1980 | 1981 | /lightningcss-darwin-arm64/1.18.0: 1982 | resolution: {integrity: sha512-OqjydwtiNPgdH1ByIjA1YzqvDG/OMR6L3LPN6wRl1729LB0y4Mik7L06kmZaTb+pvUHr+NmDd2KCwnlrQ4zO3w==} 1983 | engines: {node: '>= 12.0.0'} 1984 | cpu: [arm64] 1985 | os: [darwin] 1986 | requiresBuild: true 1987 | dev: true 1988 | optional: true 1989 | 1990 | /lightningcss-darwin-x64/1.18.0: 1991 | resolution: {integrity: sha512-mNiuPHj89/JHZmJMp+5H8EZSt6EL5DZRWJ31O6k3DrLLnRIQjXuXdDdN8kP7LoIkeWI5xvyD60CsReJm+YWYAw==} 1992 | engines: {node: '>= 12.0.0'} 1993 | cpu: [x64] 1994 | os: [darwin] 1995 | requiresBuild: true 1996 | dev: true 1997 | optional: true 1998 | 1999 | /lightningcss-linux-arm-gnueabihf/1.18.0: 2000 | resolution: {integrity: sha512-S+25JjI6601HiAVoTDXW6SqH+E94a+FHA7WQqseyNHunOgVWKcAkNEc2LJvVxgwTq6z41sDIb9/M3Z9wa9lk4A==} 2001 | engines: {node: '>= 12.0.0'} 2002 | cpu: [arm] 2003 | os: [linux] 2004 | requiresBuild: true 2005 | dev: true 2006 | optional: true 2007 | 2008 | /lightningcss-linux-arm64-gnu/1.18.0: 2009 | resolution: {integrity: sha512-JSqh4+21dCgBecIQUet35dtE4PhhSEMyqe3y0ZNQrAJQ5kyUPSQHiw81WXnPJcOSTTpG0TyMLiC8K//+BsFGQA==} 2010 | engines: {node: '>= 12.0.0'} 2011 | cpu: [arm64] 2012 | os: [linux] 2013 | requiresBuild: true 2014 | dev: true 2015 | optional: true 2016 | 2017 | /lightningcss-linux-arm64-musl/1.18.0: 2018 | resolution: {integrity: sha512-2FWHa8iUhShnZnqhn2wfIcK5adJat9hAAaX7etNsoXJymlliDIOFuBQEsba2KBAZSM4QqfQtvRdR7m8i0I7ybQ==} 2019 | engines: {node: '>= 12.0.0'} 2020 | cpu: [arm64] 2021 | os: [linux] 2022 | requiresBuild: true 2023 | dev: true 2024 | optional: true 2025 | 2026 | /lightningcss-linux-x64-gnu/1.18.0: 2027 | resolution: {integrity: sha512-plCPGQJtDZHcLVKVRLnQVF2XRsIC32WvuJhQ7fJ7F6BV98b/VZX0OlX05qUaOESD9dCDHjYSfxsgcvOKgCWh7A==} 2028 | engines: {node: '>= 12.0.0'} 2029 | cpu: [x64] 2030 | os: [linux] 2031 | requiresBuild: true 2032 | dev: true 2033 | optional: true 2034 | 2035 | /lightningcss-linux-x64-musl/1.18.0: 2036 | resolution: {integrity: sha512-na+BGtVU6fpZvOHKhnlA0XHeibkT3/46nj6vLluG3kzdJYoBKU6dIl7DSOk++8jv4ybZyFJ0aOFMMSc8g2h58A==} 2037 | engines: {node: '>= 12.0.0'} 2038 | cpu: [x64] 2039 | os: [linux] 2040 | requiresBuild: true 2041 | dev: true 2042 | optional: true 2043 | 2044 | /lightningcss-win32-x64-msvc/1.18.0: 2045 | resolution: {integrity: sha512-5qeAH4RMNy2yMNEl7e5TI6upt/7xD2ZpHWH4RkT8iJ7/6POS5mjHbXWUO9Q1hhDhqkdzGa76uAdMzEouIeCyNw==} 2046 | engines: {node: '>= 12.0.0'} 2047 | cpu: [x64] 2048 | os: [win32] 2049 | requiresBuild: true 2050 | dev: true 2051 | optional: true 2052 | 2053 | /lightningcss/1.18.0: 2054 | resolution: {integrity: sha512-uk10tNxi5fhZqU93vtYiQgx/8a9f0Kvtj5AXIm+VlOXY+t/DWDmCZWJEkZJmmALgvbS6aAW8or+Kq85eJ6TDTw==} 2055 | engines: {node: '>= 12.0.0'} 2056 | dependencies: 2057 | detect-libc: 1.0.3 2058 | optionalDependencies: 2059 | lightningcss-darwin-arm64: 1.18.0 2060 | lightningcss-darwin-x64: 1.18.0 2061 | lightningcss-linux-arm-gnueabihf: 1.18.0 2062 | lightningcss-linux-arm64-gnu: 1.18.0 2063 | lightningcss-linux-arm64-musl: 1.18.0 2064 | lightningcss-linux-x64-gnu: 1.18.0 2065 | lightningcss-linux-x64-musl: 1.18.0 2066 | lightningcss-win32-x64-msvc: 1.18.0 2067 | dev: true 2068 | 2069 | /lines-and-columns/1.2.4: 2070 | resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} 2071 | dev: true 2072 | 2073 | /lmdb/2.5.2: 2074 | resolution: {integrity: sha512-V5V5Xa2Hp9i2XsbDALkBTeHXnBXh/lEmk9p22zdr7jtuOIY9TGhjK6vAvTpOOx9IKU4hJkRWZxn/HsvR1ELLtA==} 2075 | requiresBuild: true 2076 | dependencies: 2077 | msgpackr: 1.8.3 2078 | node-addon-api: 4.3.0 2079 | node-gyp-build-optional-packages: 5.0.3 2080 | ordered-binary: 1.4.0 2081 | weak-lru-cache: 1.2.2 2082 | optionalDependencies: 2083 | '@lmdb/lmdb-darwin-arm64': 2.5.2 2084 | '@lmdb/lmdb-darwin-x64': 2.5.2 2085 | '@lmdb/lmdb-linux-arm': 2.5.2 2086 | '@lmdb/lmdb-linux-arm64': 2.5.2 2087 | '@lmdb/lmdb-linux-x64': 2.5.2 2088 | '@lmdb/lmdb-win32-x64': 2.5.2 2089 | dev: true 2090 | 2091 | /log-symbols/3.0.0: 2092 | resolution: {integrity: sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==} 2093 | engines: {node: '>=8'} 2094 | dependencies: 2095 | chalk: 2.4.2 2096 | dev: true 2097 | 2098 | /log-update/4.0.0: 2099 | resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} 2100 | engines: {node: '>=10'} 2101 | dependencies: 2102 | ansi-escapes: 4.3.2 2103 | cli-cursor: 3.1.0 2104 | slice-ansi: 4.0.0 2105 | wrap-ansi: 6.2.0 2106 | dev: true 2107 | 2108 | /loose-envify/1.4.0: 2109 | resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} 2110 | hasBin: true 2111 | dependencies: 2112 | js-tokens: 4.0.0 2113 | dev: false 2114 | 2115 | /lru-cache/5.1.1: 2116 | resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} 2117 | dependencies: 2118 | yallist: 3.1.1 2119 | dev: true 2120 | 2121 | /lru-cache/6.0.0: 2122 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 2123 | engines: {node: '>=10'} 2124 | dependencies: 2125 | yallist: 4.0.0 2126 | dev: true 2127 | 2128 | /lru-cache/7.14.1: 2129 | resolution: {integrity: sha512-ysxwsnTKdAx96aTRdhDOCQfDgbHnt8SK0KY8SEjO0wHinhWOFTESbjVCMPbU1uGXg/ch4lifqx0wfjOawU2+WA==} 2130 | engines: {node: '>=12'} 2131 | dev: true 2132 | 2133 | /make-fetch-happen/10.2.1: 2134 | resolution: {integrity: sha512-NgOPbRiaQM10DYXvN3/hhGVI2M5MtITFryzBGxHM5p4wnFxsVCbxkrBrDsk+EZ5OB4jEOT7AjDxtdF+KVEFT7w==} 2135 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 2136 | dependencies: 2137 | agentkeepalive: 4.2.1 2138 | cacache: 16.1.3 2139 | http-cache-semantics: 4.1.1 2140 | http-proxy-agent: 5.0.0 2141 | https-proxy-agent: 5.0.1 2142 | is-lambda: 1.0.1 2143 | lru-cache: 7.14.1 2144 | minipass: 3.3.6 2145 | minipass-collect: 1.0.2 2146 | minipass-fetch: 2.1.2 2147 | minipass-flush: 1.0.5 2148 | minipass-pipeline: 1.2.4 2149 | negotiator: 0.6.3 2150 | promise-retry: 2.0.1 2151 | socks-proxy-agent: 7.0.0 2152 | ssri: 9.0.1 2153 | transitivePeerDependencies: 2154 | - bluebird 2155 | - supports-color 2156 | dev: true 2157 | 2158 | /make-fetch-happen/9.1.0: 2159 | resolution: {integrity: sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==} 2160 | engines: {node: '>= 10'} 2161 | dependencies: 2162 | agentkeepalive: 4.2.1 2163 | cacache: 15.3.0 2164 | http-cache-semantics: 4.1.1 2165 | http-proxy-agent: 4.0.1 2166 | https-proxy-agent: 5.0.1 2167 | is-lambda: 1.0.1 2168 | lru-cache: 6.0.0 2169 | minipass: 3.3.6 2170 | minipass-collect: 1.0.2 2171 | minipass-fetch: 1.4.1 2172 | minipass-flush: 1.0.5 2173 | minipass-pipeline: 1.2.4 2174 | negotiator: 0.6.3 2175 | promise-retry: 2.0.1 2176 | socks-proxy-agent: 6.2.1 2177 | ssri: 8.0.1 2178 | transitivePeerDependencies: 2179 | - bluebird 2180 | - supports-color 2181 | dev: true 2182 | 2183 | /mdn-data/2.0.14: 2184 | resolution: {integrity: sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==} 2185 | dev: true 2186 | 2187 | /merge-stream/2.0.0: 2188 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 2189 | dev: true 2190 | 2191 | /micromatch/4.0.5: 2192 | resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} 2193 | engines: {node: '>=8.6'} 2194 | dependencies: 2195 | braces: 3.0.2 2196 | picomatch: 2.3.1 2197 | dev: true 2198 | 2199 | /mimic-fn/2.1.0: 2200 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 2201 | engines: {node: '>=6'} 2202 | dev: true 2203 | 2204 | /minimatch/3.1.2: 2205 | resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} 2206 | dependencies: 2207 | brace-expansion: 1.1.11 2208 | dev: true 2209 | 2210 | /minimatch/5.1.6: 2211 | resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} 2212 | engines: {node: '>=10'} 2213 | dependencies: 2214 | brace-expansion: 2.0.1 2215 | dev: true 2216 | 2217 | /minimist/1.2.7: 2218 | resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==} 2219 | dev: true 2220 | 2221 | /minipass-collect/1.0.2: 2222 | resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} 2223 | engines: {node: '>= 8'} 2224 | dependencies: 2225 | minipass: 3.3.6 2226 | dev: true 2227 | 2228 | /minipass-fetch/1.4.1: 2229 | resolution: {integrity: sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==} 2230 | engines: {node: '>=8'} 2231 | dependencies: 2232 | minipass: 3.3.6 2233 | minipass-sized: 1.0.3 2234 | minizlib: 2.1.2 2235 | optionalDependencies: 2236 | encoding: 0.1.13 2237 | dev: true 2238 | 2239 | /minipass-fetch/2.1.2: 2240 | resolution: {integrity: sha512-LT49Zi2/WMROHYoqGgdlQIZh8mLPZmOrN2NdJjMXxYe4nkN6FUyuPuOAOedNJDrx0IRGg9+4guZewtp8hE6TxA==} 2241 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 2242 | dependencies: 2243 | minipass: 3.3.6 2244 | minipass-sized: 1.0.3 2245 | minizlib: 2.1.2 2246 | optionalDependencies: 2247 | encoding: 0.1.13 2248 | dev: true 2249 | 2250 | /minipass-flush/1.0.5: 2251 | resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==} 2252 | engines: {node: '>= 8'} 2253 | dependencies: 2254 | minipass: 3.3.6 2255 | dev: true 2256 | 2257 | /minipass-pipeline/1.2.4: 2258 | resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==} 2259 | engines: {node: '>=8'} 2260 | dependencies: 2261 | minipass: 3.3.6 2262 | dev: true 2263 | 2264 | /minipass-sized/1.0.3: 2265 | resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==} 2266 | engines: {node: '>=8'} 2267 | dependencies: 2268 | minipass: 3.3.6 2269 | dev: true 2270 | 2271 | /minipass/3.3.6: 2272 | resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} 2273 | engines: {node: '>=8'} 2274 | dependencies: 2275 | yallist: 4.0.0 2276 | dev: true 2277 | 2278 | /minipass/4.0.1: 2279 | resolution: {integrity: sha512-V9esFpNbK0arbN3fm2sxDKqMYgIp7XtVdE4Esj+PE4Qaaxdg1wIw48ITQIOn1sc8xXSmUviVL3cyjMqPlrVkiA==} 2280 | engines: {node: '>=8'} 2281 | dev: true 2282 | 2283 | /minizlib/2.1.2: 2284 | resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} 2285 | engines: {node: '>= 8'} 2286 | dependencies: 2287 | minipass: 3.3.6 2288 | yallist: 4.0.0 2289 | dev: true 2290 | 2291 | /mississippi/3.0.0: 2292 | resolution: {integrity: sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==} 2293 | engines: {node: '>=4.0.0'} 2294 | dependencies: 2295 | concat-stream: 1.6.2 2296 | duplexify: 3.7.1 2297 | end-of-stream: 1.4.4 2298 | flush-write-stream: 1.1.1 2299 | from2: 2.3.0 2300 | parallel-transform: 1.2.0 2301 | pump: 3.0.0 2302 | pumpify: 1.5.1 2303 | stream-each: 1.2.3 2304 | through2: 2.0.5 2305 | dev: true 2306 | 2307 | /mkdirp/0.5.6: 2308 | resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==} 2309 | hasBin: true 2310 | dependencies: 2311 | minimist: 1.2.7 2312 | dev: true 2313 | 2314 | /mkdirp/1.0.4: 2315 | resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} 2316 | engines: {node: '>=10'} 2317 | hasBin: true 2318 | dev: true 2319 | 2320 | /move-concurrently/1.0.1: 2321 | resolution: {integrity: sha512-hdrFxZOycD/g6A6SoI2bB5NA/5NEqD0569+S47WZhPvm46sD50ZHdYaFmnua5lndde9rCHGjmfK7Z8BuCt/PcQ==} 2322 | dependencies: 2323 | aproba: 1.2.0 2324 | copy-concurrently: 1.0.5 2325 | fs-write-stream-atomic: 1.0.10 2326 | mkdirp: 0.5.6 2327 | rimraf: 2.7.1 2328 | run-queue: 1.0.3 2329 | dev: true 2330 | 2331 | /ms/2.1.2: 2332 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 2333 | dev: true 2334 | 2335 | /ms/2.1.3: 2336 | resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} 2337 | dev: true 2338 | 2339 | /msgpackr-extract/3.0.0: 2340 | resolution: {integrity: sha512-oy6KCk1+X4Bn5m6Ycq5N1EWl9npqG/cLrE8ga8NX7ZqfqYUUBS08beCQaGq80fjbKBySur0E6x//yZjzNJDt3A==} 2341 | hasBin: true 2342 | requiresBuild: true 2343 | dependencies: 2344 | node-gyp-build-optional-packages: 5.0.7 2345 | optionalDependencies: 2346 | '@msgpackr-extract/msgpackr-extract-darwin-arm64': 3.0.0 2347 | '@msgpackr-extract/msgpackr-extract-darwin-x64': 3.0.0 2348 | '@msgpackr-extract/msgpackr-extract-linux-arm': 3.0.0 2349 | '@msgpackr-extract/msgpackr-extract-linux-arm64': 3.0.0 2350 | '@msgpackr-extract/msgpackr-extract-linux-x64': 3.0.0 2351 | '@msgpackr-extract/msgpackr-extract-win32-x64': 3.0.0 2352 | dev: true 2353 | optional: true 2354 | 2355 | /msgpackr/1.8.3: 2356 | resolution: {integrity: sha512-m2JefwcKNzoHYXkH/5jzHRxAw7XLWsAdvu0FOJ+OLwwozwOV/J6UA62iLkfIMbg7G8+dIuRwgg6oz+QoQ4YkoA==} 2357 | optionalDependencies: 2358 | msgpackr-extract: 3.0.0 2359 | dev: true 2360 | 2361 | /negotiator/0.6.3: 2362 | resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} 2363 | engines: {node: '>= 0.6'} 2364 | dev: true 2365 | 2366 | /node-addon-api/3.2.1: 2367 | resolution: {integrity: sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A==} 2368 | dev: true 2369 | 2370 | /node-addon-api/4.3.0: 2371 | resolution: {integrity: sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==} 2372 | dev: true 2373 | 2374 | /node-gyp-build-optional-packages/5.0.3: 2375 | resolution: {integrity: sha512-k75jcVzk5wnnc/FMxsf4udAoTEUv2jY3ycfdSd3yWu6Cnd1oee6/CfZJApyscA4FJOmdoixWwiwOyf16RzD5JA==} 2376 | hasBin: true 2377 | dev: true 2378 | 2379 | /node-gyp-build-optional-packages/5.0.7: 2380 | resolution: {integrity: sha512-YlCCc6Wffkx0kHkmam79GKvDQ6x+QZkMjFGrIMxgFNILFvGSbCp2fCBC55pGTT9gVaz8Na5CLmxt/urtzRv36w==} 2381 | hasBin: true 2382 | dev: true 2383 | optional: true 2384 | 2385 | /node-gyp-build/4.6.0: 2386 | resolution: {integrity: sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==} 2387 | hasBin: true 2388 | dev: true 2389 | 2390 | /node-releases/2.0.9: 2391 | resolution: {integrity: sha512-2xfmOrRkGogbTK9R6Leda0DGiXeY3p2NJpy4+gNCffdUvV6mdEJnaDEic1i3Ec2djAo8jWYoJMR5PB0MSMpxUA==} 2392 | dev: true 2393 | 2394 | /npm-run-path/3.1.0: 2395 | resolution: {integrity: sha512-Dbl4A/VfiVGLgQv29URL9xshU8XDY1GeLy+fsaZ1AA8JDSfjvr5P5+pzRbWqRSBxk6/DW7MIh8lTM/PaGnP2kg==} 2396 | engines: {node: '>=8'} 2397 | dependencies: 2398 | path-key: 3.1.1 2399 | dev: true 2400 | 2401 | /nth-check/2.1.1: 2402 | resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} 2403 | dependencies: 2404 | boolbase: 1.0.0 2405 | dev: true 2406 | 2407 | /nullthrows/1.1.1: 2408 | resolution: {integrity: sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==} 2409 | dev: true 2410 | 2411 | /object-assign/4.1.1: 2412 | resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} 2413 | engines: {node: '>=0.10.0'} 2414 | dev: false 2415 | 2416 | /once/1.4.0: 2417 | resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} 2418 | dependencies: 2419 | wrappy: 1.0.2 2420 | dev: true 2421 | 2422 | /onetime/5.1.2: 2423 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 2424 | engines: {node: '>=6'} 2425 | dependencies: 2426 | mimic-fn: 2.1.0 2427 | dev: true 2428 | 2429 | /ordered-binary/1.4.0: 2430 | resolution: {integrity: sha512-EHQ/jk4/a9hLupIKxTfUsQRej1Yd/0QLQs3vGvIqg5ZtCYSzNhkzHoZc7Zf4e4kUlDaC3Uw8Q/1opOLNN2OKRQ==} 2431 | dev: true 2432 | 2433 | /p-finally/2.0.1: 2434 | resolution: {integrity: sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==} 2435 | engines: {node: '>=8'} 2436 | dev: true 2437 | 2438 | /p-map/4.0.0: 2439 | resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} 2440 | engines: {node: '>=10'} 2441 | dependencies: 2442 | aggregate-error: 3.1.0 2443 | dev: true 2444 | 2445 | /parallel-transform/1.2.0: 2446 | resolution: {integrity: sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==} 2447 | dependencies: 2448 | cyclist: 1.0.1 2449 | inherits: 2.0.4 2450 | readable-stream: 2.3.7 2451 | dev: true 2452 | 2453 | /parcel/2.8.3: 2454 | resolution: {integrity: sha512-5rMBpbNE72g6jZvkdR5gS2nyhwIXaJy8i65osOqs/+5b7zgf3eMKgjSsDrv6bhz3gzifsba6MBJiZdBckl+vnA==} 2455 | engines: {node: '>= 12.0.0'} 2456 | hasBin: true 2457 | peerDependenciesMeta: 2458 | '@parcel/core': 2459 | optional: true 2460 | dependencies: 2461 | '@parcel/config-default': 2.8.3_@parcel+core@2.8.3 2462 | '@parcel/core': 2.8.3 2463 | '@parcel/diagnostic': 2.8.3 2464 | '@parcel/events': 2.8.3 2465 | '@parcel/fs': 2.8.3_@parcel+core@2.8.3 2466 | '@parcel/logger': 2.8.3 2467 | '@parcel/package-manager': 2.8.3_@parcel+core@2.8.3 2468 | '@parcel/reporter-cli': 2.8.3_@parcel+core@2.8.3 2469 | '@parcel/reporter-dev-server': 2.8.3_@parcel+core@2.8.3 2470 | '@parcel/utils': 2.8.3 2471 | chalk: 4.1.2 2472 | commander: 7.2.0 2473 | get-port: 4.2.0 2474 | v8-compile-cache: 2.3.0 2475 | transitivePeerDependencies: 2476 | - cssnano 2477 | - postcss 2478 | - purgecss 2479 | - relateurl 2480 | - srcset 2481 | - terser 2482 | - uncss 2483 | dev: true 2484 | 2485 | /parent-module/1.0.1: 2486 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 2487 | engines: {node: '>=6'} 2488 | dependencies: 2489 | callsites: 3.1.0 2490 | dev: true 2491 | 2492 | /parse-json/5.2.0: 2493 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} 2494 | engines: {node: '>=8'} 2495 | dependencies: 2496 | '@babel/code-frame': 7.18.6 2497 | error-ex: 1.3.2 2498 | json-parse-even-better-errors: 2.3.1 2499 | lines-and-columns: 1.2.4 2500 | dev: true 2501 | 2502 | /path-is-absolute/1.0.1: 2503 | resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} 2504 | engines: {node: '>=0.10.0'} 2505 | dev: true 2506 | 2507 | /path-key/3.1.1: 2508 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2509 | engines: {node: '>=8'} 2510 | dev: true 2511 | 2512 | /path-type/4.0.0: 2513 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 2514 | engines: {node: '>=8'} 2515 | dev: true 2516 | 2517 | /picocolors/1.0.0: 2518 | resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} 2519 | dev: true 2520 | 2521 | /picomatch/2.3.1: 2522 | resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} 2523 | engines: {node: '>=8.6'} 2524 | dev: true 2525 | 2526 | /postcss-value-parser/4.2.0: 2527 | resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} 2528 | dev: true 2529 | 2530 | /posthtml-parser/0.10.2: 2531 | resolution: {integrity: sha512-PId6zZ/2lyJi9LiKfe+i2xv57oEjJgWbsHGGANwos5AvdQp98i6AtamAl8gzSVFGfQ43Glb5D614cvZf012VKg==} 2532 | engines: {node: '>=12'} 2533 | dependencies: 2534 | htmlparser2: 7.2.0 2535 | dev: true 2536 | 2537 | /posthtml-parser/0.11.0: 2538 | resolution: {integrity: sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw==} 2539 | engines: {node: '>=12'} 2540 | dependencies: 2541 | htmlparser2: 7.2.0 2542 | dev: true 2543 | 2544 | /posthtml-render/3.0.0: 2545 | resolution: {integrity: sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA==} 2546 | engines: {node: '>=12'} 2547 | dependencies: 2548 | is-json: 2.0.1 2549 | dev: true 2550 | 2551 | /posthtml/0.16.6: 2552 | resolution: {integrity: sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ==} 2553 | engines: {node: '>=12.0.0'} 2554 | dependencies: 2555 | posthtml-parser: 0.11.0 2556 | posthtml-render: 3.0.0 2557 | dev: true 2558 | 2559 | /process-nextick-args/2.0.1: 2560 | resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} 2561 | dev: true 2562 | 2563 | /process/0.11.10: 2564 | resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==} 2565 | engines: {node: '>= 0.6.0'} 2566 | dev: true 2567 | 2568 | /promise-inflight/1.0.1: 2569 | resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} 2570 | peerDependencies: 2571 | bluebird: '*' 2572 | peerDependenciesMeta: 2573 | bluebird: 2574 | optional: true 2575 | dev: true 2576 | 2577 | /promise-retry/2.0.1: 2578 | resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} 2579 | engines: {node: '>=10'} 2580 | dependencies: 2581 | err-code: 2.0.3 2582 | retry: 0.12.0 2583 | dev: true 2584 | 2585 | /pump/2.0.1: 2586 | resolution: {integrity: sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==} 2587 | dependencies: 2588 | end-of-stream: 1.4.4 2589 | once: 1.4.0 2590 | dev: true 2591 | 2592 | /pump/3.0.0: 2593 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} 2594 | dependencies: 2595 | end-of-stream: 1.4.4 2596 | once: 1.4.0 2597 | dev: true 2598 | 2599 | /pumpify/1.5.1: 2600 | resolution: {integrity: sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==} 2601 | dependencies: 2602 | duplexify: 3.7.1 2603 | inherits: 2.0.4 2604 | pump: 2.0.1 2605 | dev: true 2606 | 2607 | /purescript-installer/0.3.3: 2608 | resolution: {integrity: sha512-DjHbB4qlWxp1+m1pI9S5ugsjxNfgNyt6sacPD0ZdtuyVBtXwOHfrmUrZq8hXj8mYz5YaxhP+oKhZjxhuTuUEhw==} 2609 | engines: {node: '>=12'} 2610 | hasBin: true 2611 | dependencies: 2612 | arch: 2.2.0 2613 | byline: 5.0.0 2614 | cacache: 11.3.3 2615 | chalk: 2.4.2 2616 | env-paths: 2.2.1 2617 | execa: 2.1.0 2618 | filesize: 4.2.1 2619 | is-plain-obj: 2.1.0 2620 | log-symbols: 3.0.0 2621 | log-update: 4.0.0 2622 | make-fetch-happen: 10.2.1 2623 | minimist: 1.2.7 2624 | ms: 2.1.3 2625 | once: 1.4.0 2626 | rimraf: 2.7.1 2627 | semver: 7.3.8 2628 | tar: 6.1.13 2629 | which: 1.3.1 2630 | zen-observable: 0.8.15 2631 | transitivePeerDependencies: 2632 | - bluebird 2633 | - supports-color 2634 | dev: true 2635 | 2636 | /purescript/0.15.7: 2637 | resolution: {integrity: sha512-FRAiAlL19IwuNSGrsvXLdcZ7vrv6QqJtQKgOeTavyJluCGb2bVaw7KSDflzwKIFyUWhY1GOEBIXJ/ehUQ5rK6A==} 2638 | hasBin: true 2639 | requiresBuild: true 2640 | dependencies: 2641 | purescript-installer: 0.3.3 2642 | transitivePeerDependencies: 2643 | - bluebird 2644 | - supports-color 2645 | dev: true 2646 | 2647 | /react-dom/17.0.2_react@17.0.2: 2648 | resolution: {integrity: sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==} 2649 | peerDependencies: 2650 | react: 17.0.2 2651 | dependencies: 2652 | loose-envify: 1.4.0 2653 | object-assign: 4.1.1 2654 | react: 17.0.2 2655 | scheduler: 0.20.2 2656 | dev: false 2657 | 2658 | /react-error-overlay/6.0.9: 2659 | resolution: {integrity: sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==} 2660 | dev: true 2661 | 2662 | /react-refresh/0.9.0: 2663 | resolution: {integrity: sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ==} 2664 | engines: {node: '>=0.10.0'} 2665 | dev: true 2666 | 2667 | /react/17.0.2: 2668 | resolution: {integrity: sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==} 2669 | engines: {node: '>=0.10.0'} 2670 | dependencies: 2671 | loose-envify: 1.4.0 2672 | object-assign: 4.1.1 2673 | dev: false 2674 | 2675 | /readable-stream/2.3.7: 2676 | resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==} 2677 | dependencies: 2678 | core-util-is: 1.0.3 2679 | inherits: 2.0.4 2680 | isarray: 1.0.0 2681 | process-nextick-args: 2.0.1 2682 | safe-buffer: 5.1.2 2683 | string_decoder: 1.1.1 2684 | util-deprecate: 1.0.2 2685 | dev: true 2686 | 2687 | /regenerator-runtime/0.13.11: 2688 | resolution: {integrity: sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==} 2689 | dev: true 2690 | 2691 | /resolve-from/4.0.0: 2692 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 2693 | engines: {node: '>=4'} 2694 | dev: true 2695 | 2696 | /restore-cursor/3.1.0: 2697 | resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} 2698 | engines: {node: '>=8'} 2699 | dependencies: 2700 | onetime: 5.1.2 2701 | signal-exit: 3.0.7 2702 | dev: true 2703 | 2704 | /retry/0.12.0: 2705 | resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} 2706 | engines: {node: '>= 4'} 2707 | dev: true 2708 | 2709 | /rimraf/2.7.1: 2710 | resolution: {integrity: sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==} 2711 | hasBin: true 2712 | dependencies: 2713 | glob: 7.2.3 2714 | dev: true 2715 | 2716 | /rimraf/3.0.2: 2717 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 2718 | hasBin: true 2719 | dependencies: 2720 | glob: 7.2.3 2721 | dev: true 2722 | 2723 | /run-queue/1.0.3: 2724 | resolution: {integrity: sha512-ntymy489o0/QQplUDnpYAYUsO50K9SBrIVaKCWDOJzYJts0f9WH9RFJkyagebkw5+y1oi00R7ynNW/d12GBumg==} 2725 | dependencies: 2726 | aproba: 1.2.0 2727 | dev: true 2728 | 2729 | /safe-buffer/5.1.2: 2730 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} 2731 | dev: true 2732 | 2733 | /safe-buffer/5.2.1: 2734 | resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} 2735 | dev: true 2736 | 2737 | /safer-buffer/2.1.2: 2738 | resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} 2739 | dev: true 2740 | optional: true 2741 | 2742 | /scheduler/0.20.2: 2743 | resolution: {integrity: sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==} 2744 | dependencies: 2745 | loose-envify: 1.4.0 2746 | object-assign: 4.1.1 2747 | dev: false 2748 | 2749 | /semver/5.7.1: 2750 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} 2751 | hasBin: true 2752 | dev: true 2753 | 2754 | /semver/7.3.8: 2755 | resolution: {integrity: sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==} 2756 | engines: {node: '>=10'} 2757 | hasBin: true 2758 | dependencies: 2759 | lru-cache: 6.0.0 2760 | dev: true 2761 | 2762 | /shebang-command/2.0.0: 2763 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 2764 | engines: {node: '>=8'} 2765 | dependencies: 2766 | shebang-regex: 3.0.0 2767 | dev: true 2768 | 2769 | /shebang-regex/3.0.0: 2770 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 2771 | engines: {node: '>=8'} 2772 | dev: true 2773 | 2774 | /signal-exit/3.0.7: 2775 | resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} 2776 | dev: true 2777 | 2778 | /slice-ansi/4.0.0: 2779 | resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} 2780 | engines: {node: '>=10'} 2781 | dependencies: 2782 | ansi-styles: 4.3.0 2783 | astral-regex: 2.0.0 2784 | is-fullwidth-code-point: 3.0.0 2785 | dev: true 2786 | 2787 | /smart-buffer/4.2.0: 2788 | resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} 2789 | engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} 2790 | dev: true 2791 | 2792 | /socks-proxy-agent/6.2.1: 2793 | resolution: {integrity: sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==} 2794 | engines: {node: '>= 10'} 2795 | dependencies: 2796 | agent-base: 6.0.2 2797 | debug: 4.3.4 2798 | socks: 2.7.1 2799 | transitivePeerDependencies: 2800 | - supports-color 2801 | dev: true 2802 | 2803 | /socks-proxy-agent/7.0.0: 2804 | resolution: {integrity: sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==} 2805 | engines: {node: '>= 10'} 2806 | dependencies: 2807 | agent-base: 6.0.2 2808 | debug: 4.3.4 2809 | socks: 2.7.1 2810 | transitivePeerDependencies: 2811 | - supports-color 2812 | dev: true 2813 | 2814 | /socks/2.7.1: 2815 | resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} 2816 | engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} 2817 | dependencies: 2818 | ip: 2.0.0 2819 | smart-buffer: 4.2.0 2820 | dev: true 2821 | 2822 | /source-map-support/0.5.21: 2823 | resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==} 2824 | dependencies: 2825 | buffer-from: 1.1.2 2826 | source-map: 0.6.1 2827 | dev: true 2828 | 2829 | /source-map/0.6.1: 2830 | resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} 2831 | engines: {node: '>=0.10.0'} 2832 | dev: true 2833 | 2834 | /spago/0.20.9: 2835 | resolution: {integrity: sha512-r5TUxnYn9HawlQyMswlhIk24BGFSN2KGbqgZFZrn47GjTpMscU14xkt9CqTWgoSQYsoZieG+3dUtOxUQ7GYD7w==} 2836 | hasBin: true 2837 | requiresBuild: true 2838 | dependencies: 2839 | make-fetch-happen: 9.1.0 2840 | tar: 6.1.13 2841 | transitivePeerDependencies: 2842 | - bluebird 2843 | - supports-color 2844 | dev: true 2845 | 2846 | /srcset/4.0.0: 2847 | resolution: {integrity: sha512-wvLeHgcVHKO8Sc/H/5lkGreJQVeYMm9rlmt8PuR1xE31rIuXhuzznUUqAt8MqLhB3MqJdFzlNAfpcWnxiFUcPw==} 2848 | engines: {node: '>=12'} 2849 | dev: true 2850 | 2851 | /ssri/6.0.2: 2852 | resolution: {integrity: sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==} 2853 | dependencies: 2854 | figgy-pudding: 3.5.2 2855 | dev: true 2856 | 2857 | /ssri/8.0.1: 2858 | resolution: {integrity: sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==} 2859 | engines: {node: '>= 8'} 2860 | dependencies: 2861 | minipass: 3.3.6 2862 | dev: true 2863 | 2864 | /ssri/9.0.1: 2865 | resolution: {integrity: sha512-o57Wcn66jMQvfHG1FlYbWeZWW/dHZhJXjpIcTfXldXEk5nz5lStPo3mK0OJQfGR3RbZUlbISexbljkJzuEj/8Q==} 2866 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 2867 | dependencies: 2868 | minipass: 3.3.6 2869 | dev: true 2870 | 2871 | /stable/0.1.8: 2872 | resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==} 2873 | deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility' 2874 | dev: true 2875 | 2876 | /stream-each/1.2.3: 2877 | resolution: {integrity: sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==} 2878 | dependencies: 2879 | end-of-stream: 1.4.4 2880 | stream-shift: 1.0.1 2881 | dev: true 2882 | 2883 | /stream-shift/1.0.1: 2884 | resolution: {integrity: sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==} 2885 | dev: true 2886 | 2887 | /string-width/4.2.3: 2888 | resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} 2889 | engines: {node: '>=8'} 2890 | dependencies: 2891 | emoji-regex: 8.0.0 2892 | is-fullwidth-code-point: 3.0.0 2893 | strip-ansi: 6.0.1 2894 | dev: true 2895 | 2896 | /string_decoder/1.1.1: 2897 | resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} 2898 | dependencies: 2899 | safe-buffer: 5.1.2 2900 | dev: true 2901 | 2902 | /strip-ansi/6.0.1: 2903 | resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} 2904 | engines: {node: '>=8'} 2905 | dependencies: 2906 | ansi-regex: 5.0.1 2907 | dev: true 2908 | 2909 | /strip-final-newline/2.0.0: 2910 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 2911 | engines: {node: '>=6'} 2912 | dev: true 2913 | 2914 | /supports-color/5.5.0: 2915 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 2916 | engines: {node: '>=4'} 2917 | dependencies: 2918 | has-flag: 3.0.0 2919 | dev: true 2920 | 2921 | /supports-color/7.2.0: 2922 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 2923 | engines: {node: '>=8'} 2924 | dependencies: 2925 | has-flag: 4.0.0 2926 | dev: true 2927 | 2928 | /svgo/2.8.0: 2929 | resolution: {integrity: sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==} 2930 | engines: {node: '>=10.13.0'} 2931 | hasBin: true 2932 | dependencies: 2933 | '@trysound/sax': 0.2.0 2934 | commander: 7.2.0 2935 | css-select: 4.3.0 2936 | css-tree: 1.1.3 2937 | csso: 4.2.0 2938 | picocolors: 1.0.0 2939 | stable: 0.1.8 2940 | dev: true 2941 | 2942 | /tar/6.1.13: 2943 | resolution: {integrity: sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==} 2944 | engines: {node: '>=10'} 2945 | dependencies: 2946 | chownr: 2.0.0 2947 | fs-minipass: 2.1.0 2948 | minipass: 4.0.1 2949 | minizlib: 2.1.2 2950 | mkdirp: 1.0.4 2951 | yallist: 4.0.0 2952 | dev: true 2953 | 2954 | /term-size/2.2.1: 2955 | resolution: {integrity: sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==} 2956 | engines: {node: '>=8'} 2957 | dev: true 2958 | 2959 | /terser/5.16.2: 2960 | resolution: {integrity: sha512-JKuM+KvvWVqT7muHVyrwv7FVRPnmHDwF6XwoIxdbF5Witi0vu99RYpxDexpJndXt3jbZZmmWr2/mQa6HvSNdSg==} 2961 | engines: {node: '>=10'} 2962 | hasBin: true 2963 | dependencies: 2964 | '@jridgewell/source-map': 0.3.2 2965 | acorn: 8.8.2 2966 | commander: 2.20.3 2967 | source-map-support: 0.5.21 2968 | dev: true 2969 | 2970 | /through2/2.0.5: 2971 | resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} 2972 | dependencies: 2973 | readable-stream: 2.3.7 2974 | xtend: 4.0.2 2975 | dev: true 2976 | 2977 | /timsort/0.3.0: 2978 | resolution: {integrity: sha512-qsdtZH+vMoCARQtyod4imc2nIJwg9Cc7lPRrw9CzF8ZKR0khdr8+2nX80PBhET3tcyTtJDxAffGh2rXH4tyU8A==} 2979 | dev: true 2980 | 2981 | /to-regex-range/5.0.1: 2982 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2983 | engines: {node: '>=8.0'} 2984 | dependencies: 2985 | is-number: 7.0.0 2986 | dev: true 2987 | 2988 | /tslib/2.5.0: 2989 | resolution: {integrity: sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==} 2990 | dev: true 2991 | 2992 | /type-fest/0.20.2: 2993 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 2994 | engines: {node: '>=10'} 2995 | dev: true 2996 | 2997 | /type-fest/0.21.3: 2998 | resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} 2999 | engines: {node: '>=10'} 3000 | dev: true 3001 | 3002 | /typedarray/0.0.6: 3003 | resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==} 3004 | dev: true 3005 | 3006 | /unique-filename/1.1.1: 3007 | resolution: {integrity: sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==} 3008 | dependencies: 3009 | unique-slug: 2.0.2 3010 | dev: true 3011 | 3012 | /unique-filename/2.0.1: 3013 | resolution: {integrity: sha512-ODWHtkkdx3IAR+veKxFV+VBkUMcN+FaqzUUd7IZzt+0zhDZFPFxhlqwPF3YQvMHx1TD0tdgYl+kuPnJ8E6ql7A==} 3014 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 3015 | dependencies: 3016 | unique-slug: 3.0.0 3017 | dev: true 3018 | 3019 | /unique-slug/2.0.2: 3020 | resolution: {integrity: sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==} 3021 | dependencies: 3022 | imurmurhash: 0.1.4 3023 | dev: true 3024 | 3025 | /unique-slug/3.0.0: 3026 | resolution: {integrity: sha512-8EyMynh679x/0gqE9fT9oilG+qEt+ibFyqjuVTsZn1+CMxH+XLlpvr2UZx4nVcCwTpx81nICr2JQFkM+HPLq4w==} 3027 | engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} 3028 | dependencies: 3029 | imurmurhash: 0.1.4 3030 | dev: true 3031 | 3032 | /update-browserslist-db/1.0.10_browserslist@4.21.5: 3033 | resolution: {integrity: sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==} 3034 | hasBin: true 3035 | peerDependencies: 3036 | browserslist: '>= 4.21.0' 3037 | dependencies: 3038 | browserslist: 4.21.5 3039 | escalade: 3.1.1 3040 | picocolors: 1.0.0 3041 | dev: true 3042 | 3043 | /util-deprecate/1.0.2: 3044 | resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} 3045 | dev: true 3046 | 3047 | /utility-types/3.10.0: 3048 | resolution: {integrity: sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==} 3049 | engines: {node: '>= 4'} 3050 | dev: true 3051 | 3052 | /v8-compile-cache/2.3.0: 3053 | resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} 3054 | dev: true 3055 | 3056 | /weak-lru-cache/1.2.2: 3057 | resolution: {integrity: sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==} 3058 | dev: true 3059 | 3060 | /which/1.3.1: 3061 | resolution: {integrity: sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==} 3062 | hasBin: true 3063 | dependencies: 3064 | isexe: 2.0.0 3065 | dev: true 3066 | 3067 | /which/2.0.2: 3068 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 3069 | engines: {node: '>= 8'} 3070 | hasBin: true 3071 | dependencies: 3072 | isexe: 2.0.0 3073 | dev: true 3074 | 3075 | /wrap-ansi/6.2.0: 3076 | resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} 3077 | engines: {node: '>=8'} 3078 | dependencies: 3079 | ansi-styles: 4.3.0 3080 | string-width: 4.2.3 3081 | strip-ansi: 6.0.1 3082 | dev: true 3083 | 3084 | /wrappy/1.0.2: 3085 | resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} 3086 | dev: true 3087 | 3088 | /xtend/4.0.2: 3089 | resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} 3090 | engines: {node: '>=0.4'} 3091 | dev: true 3092 | 3093 | /xxhash-wasm/0.4.2: 3094 | resolution: {integrity: sha512-/eyHVRJQCirEkSZ1agRSCwriMhwlyUcFkXD5TPVSLP+IPzjsqMVzZwdoczLp1SoQU0R3dxz1RpIK+4YNQbCVOA==} 3095 | dev: true 3096 | 3097 | /y18n/4.0.3: 3098 | resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==} 3099 | dev: true 3100 | 3101 | /yallist/3.1.1: 3102 | resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} 3103 | dev: true 3104 | 3105 | /yallist/4.0.0: 3106 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 3107 | dev: true 3108 | 3109 | /yaml/1.10.2: 3110 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 3111 | engines: {node: '>= 6'} 3112 | dev: true 3113 | 3114 | /zen-observable/0.8.15: 3115 | resolution: {integrity: sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ==} 3116 | dev: true 3117 | -------------------------------------------------------------------------------- /spago.dhall: -------------------------------------------------------------------------------- 1 | {- 2 | Welcome to a Spago project! 3 | You can edit this file as you like. 4 | 5 | Need help? See the following resources: 6 | - Spago documentation: https://github.com/purescript/spago 7 | - Dhall language tour: https://docs.dhall-lang.org/tutorials/Language-Tour.html 8 | 9 | When creating a new Spago project, you can use 10 | `spago init --no-comments` or `spago init -C` 11 | to generate this file without the comments in this block. 12 | -} 13 | { name = "purescript-concur-starter" 14 | , dependencies = 15 | [ "concur-core", "concur-react", "console", "effect", "prelude" ] 16 | , packages = ./packages.dhall 17 | , sources = [ "src/**/*.purs", "test/**/*.purs" ] 18 | } 19 | -------------------------------------------------------------------------------- /src/Main.purs: -------------------------------------------------------------------------------- 1 | module Main where 2 | 3 | import Concur.Core (Widget) 4 | import Concur.React (HTML) 5 | import Concur.React.DOM as D 6 | import Concur.React.Props as P 7 | import Concur.React.Run (runWidgetInDom) 8 | import Control.Bind ((>>=)) 9 | import Control.Monad (class Monad) 10 | import Data.CommutativeRing ((*), (+)) 11 | import Data.EuclideanRing ((-), (/)) 12 | import Data.Function (($)) 13 | import Data.Functor (($>), (<$>)) 14 | import Data.Semigroup ((<>)) 15 | import Data.Show (show) 16 | import Data.Unit (Unit) 17 | import Effect (Effect) 18 | 19 | 20 | -- Let's build a simple program that lets us convert from feet to inches and vice versa. 21 | 22 | -- We can build this program top-down or bottom-up. 23 | -- Let's build it bottom up for a change of pace. 24 | 25 | -- Step 1: Let's write the logic. The pure functions that convert between feet and inches. 26 | 27 | type Feet = Int 28 | type Inches = Int 29 | 30 | feetToInches :: Feet -> Inches 31 | feetToInches feet = feet * 12 32 | 33 | inchesToFeet :: Inches -> Feet 34 | inchesToFeet inches = inches / 12 35 | 36 | -- Step 2: We'll need some way to get an integer (representing either feet or inches) 37 | -- as an input from the user. 38 | -- The normal method would be to use an input box, but that would be a very simple 39 | -- widget, and not demonstrate composing widgets with many buttons etc. 40 | -- Also, we would also need to deal with things like input validation. 41 | -- So let's build a "counter" widget which has "increment" and "decrement" buttons. 42 | 43 | -- This counter widget will have a state i.e. the current count. Stateful widgets in Concur 44 | -- take the current state as input and return the modified state on user input. 45 | -- i.e. the type is `State -> Widget HTML State` 46 | -- We will also take a String label which would be shown at the top of the widget. 47 | 48 | counter :: String -> Int -> Widget HTML Int 49 | counter label count = D.pre' 50 | [ D.text $ label <> " : " <> show count <> " " 51 | , D.button [P.onClick] [D.text "-"] $> count-1 52 | , D.button [P.onClick] [D.text "+"] $> count+1 53 | ] 54 | 55 | -- That was easy! 56 | 57 | -- Step 3: Now we can put together two of these counters to get our UI - 58 | -- A bidirectional form which can convert between feet and inches (and vice versa). 59 | -- This is also a stateful widget, where the state will be either feet or inches. 60 | -- We'll choose inches since we want to change by lengths smaller than a foot.. 61 | -- Since we picked inches as our source of truth, we'll need to convert inches to feet 62 | -- and vice versa when displaying the feet counter. 63 | -- 64 | -- We also add some CSS 65 | converter :: Int -> Widget HTML Int 66 | converter inches = D.div [P.style {"font-family": "Roboto, Helvetica, Arial, sans-serif"}] 67 | [ D.h1' [D.text "Concur PureScript Starter"] 68 | , D.div [P.style { width: "fit-content", padding: "0 10px", background: "lightblue", border: "4px solid darkgray" }] 69 | [ D.h3' [D.text "Converter between feet and inches"] 70 | , feetToInches <$> counter "Feet " (inchesToFeet inches) 71 | , counter "Inches" inches 72 | ] 73 | ] 74 | 75 | -- Step 4: Now, we have a widget (converter) that converts between inches and feet. 76 | -- However, it takes the current state as input and returns the updated state. 77 | -- We now need some plumbing which will pipe the updated state back into the input. 78 | -- This plumbing function is called `loopState'` in the concur-core library. 79 | -- However, let's build this plumbing abstraction ourselves and use it! 80 | 81 | -- Note that this abstraction is entirely built on monads! We don't even depend on widgets! 82 | -- A loop takes a stateful monadic expression (s -> m s), and an initial state (s), 83 | -- and loops them forever. Since the loop will never return, the return value is (forall a. a) 84 | -- | Loop widget with localised state forever. 85 | loop :: forall a m s. Monad m => (s -> m s) -> s -> m a 86 | loop f s = f s >>= loop f 87 | 88 | -- That's it! Note that this is a design pattern. 89 | -- Building your own design patterns is super simple in monadic Concur! 90 | 91 | -- Step 5. Loop our stateful converter UI. 92 | -- We pass 0 (inches) as the initial state, 93 | ui :: forall a. Widget HTML a 94 | ui = loop converter 0 95 | 96 | -- There you have it! A complete non-trivial Concur program. Built in an entirely composable way! 97 | 98 | -- Let's run it 99 | main :: Effect Unit 100 | main = runWidgetInDom "root" ui 101 | -------------------------------------------------------------------------------- /test/Main.purs: -------------------------------------------------------------------------------- 1 | module Test.Main where 2 | 3 | import Prelude 4 | 5 | import Effect (Effect) 6 | import Effect.Class.Console (log) 7 | 8 | main :: Effect Unit 9 | main = do 10 | log "🍝" 11 | log "You should add some tests." 12 | --------------------------------------------------------------------------------