From 3934f1a0d77dd9e73b25a4b3f59f0d01b23d72b0 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Wed, 5 Jul 2023 11:25:26 +0100 Subject: [PATCH 01/18] add readme skeleton and image --- .gitignore | 4 ++ .idea/codeStyles/Project.xml | 24 ++++++++ .idea/codeStyles/codeStyleConfig.xml | 5 ++ .idea/runConfigurations.xml | 10 ++++ README.md | 69 ++++++++++++++++++---- website/img/eLLMental logo with frame.png | Bin 0 -> 60693 bytes 6 files changed, 101 insertions(+), 11 deletions(-) create mode 100644 .idea/codeStyles/Project.xml create mode 100644 .idea/codeStyles/codeStyleConfig.xml create mode 100644 .idea/runConfigurations.xml create mode 100644 website/img/eLLMental logo with frame.png diff --git a/.gitignore b/.gitignore index 53b56a7f..45f595cc 100644 --- a/.gitignore +++ b/.gitignore @@ -9,6 +9,10 @@ sarif/ .idea/modules.xml .idea/jarRepositories.xml .idea/compiler.xml +.idea/gradle.xml +.idea/kotlinc.xml +.idea/misc.xml +.idea/saveactions_settings.xml .idea/libraries/ *.iws *.iml diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml new file mode 100644 index 00000000..c2cc9617 --- /dev/null +++ b/.idea/codeStyles/Project.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/codeStyles/codeStyleConfig.xml b/.idea/codeStyles/codeStyleConfig.xml new file mode 100644 index 00000000..79ee123c --- /dev/null +++ b/.idea/codeStyles/codeStyleConfig.xml @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/.idea/runConfigurations.xml b/.idea/runConfigurations.xml new file mode 100644 index 00000000..797acea5 --- /dev/null +++ b/.idea/runConfigurations.xml @@ -0,0 +1,10 @@ + + + + + + \ No newline at end of file diff --git a/README.md b/README.md index 6a32bd59..c5591b37 100644 --- a/README.md +++ b/README.md @@ -1,21 +1,68 @@ -# LLMental(2) +# ![eLLMental]() -![haha LLM go brrrrr](https://explosion.ai/static/1863c4dfa57ad28dbbd68e432bde34e9/66a58/llm-maximalism_meme.jpg) +--- + +## Introduction + +> What is eLLMental? +> For what can I use it? + +The eLLMental project raises from the experience of developers +from [The Agile Monkeys](https://www.theagilemonkeys.com/) + +Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner. + +## Getting started + +> How can I use it? + +The LLMental project aims to solve the major pain points LLMs have, while preserving all the good features they offer. + +## eLLMental packages + +Below you have a list of the currnent packages eLLMental offers: + +1. [eLLMental-core](###eLLMental-core) + +### eLLMental-core + +This project aims to be a reference for ## Contributing -We use IntelliJ IDEA for development. You can import the project as a Gradle project. +> How can I contribute? + +### Technical specifications and recommendations + +In the following table you can see the technical specs of this project + +| | | +|----------------------|--------| +| Package Manager | Gradle | +| Programming Language | Kotlin | +| JVM Version | 17 | -Install the `Save Actions Tool` plugin by `Alexandre DuBreuil` to automatically format the code on save. +### Adding a new package -Make sure you've configured it like this in your IDE (although it should be already configured because we -checked in the settings file): +If you feel that you need to create a different package (like `llmental-core`), you can duplicate the `.kotlin-template` +folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` +file, in the `includes` list. + +#### Auto-save (Intellij) + +Install the [save actions tool](https://plugins.jetbrains.com/plugin/7642-save-actions) plugin by `Alexandre DuBreuil` +to automatically format the code on save. + +Make sure you've configured it like this in your IDE (although it should be already configured because we checked in the +settings file): ![Save Actions Tool settings](./.docassets/format-on-save.png) -### Adding a new package into the monorepo +## Reporting bugs + +> How can I submit an issue/bug? + +## License -1. Duplicate the `.kotlin-template` folder and rename it to your package name. -2. Add the package name to the `settings.gradle.kts` file, in the `includes` list. -3. ??? -4. Profit! \ No newline at end of file +This eLLMental project is licensed under the Business source license. You can take a look at the details +in [this article](https://timreview.ca/article/691). diff --git a/website/img/eLLMental logo with frame.png b/website/img/eLLMental logo with frame.png new file mode 100644 index 0000000000000000000000000000000000000000..21102773393f7afc498c98b01f534a1a9a6f95d8 GIT binary patch literal 60693 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

}UBB0}Ji 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 literal 0 HcmV?d00001 From ed5193daa877b89b3ad7db03fb29b0a8f2024b7c Mon Sep 17 00:00:00 2001 From: juanjoman Date: Wed, 5 Jul 2023 13:56:39 +0100 Subject: [PATCH 02/18] WIP documentation --- README.md | 99 ++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 69 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index c5591b37..6f9e06ac 100644 --- a/README.md +++ b/README.md @@ -1,40 +1,57 @@ -# ![eLLMental]() +# ![eLLMental](website/img/eLLMental logo with frame.png) --- ## Introduction -> What is eLLMental? -> For what can I use it? - -The eLLMental project raises from the experience of developers -from [The Agile Monkeys](https://www.theagilemonkeys.com/) +The eLLMental project raises from the necessity of developer's to have a single framework that joins flexibility, +efficiency and productivity while building the different block an AI applications needs. During this time, we've seen +different challenges that motivated us to start building this project: + +1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective debugging and + visualization tools custom-made for LLMs, making it more difficult for developers to identify and understand model + behaviour or misbehaviours. +2. **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in + heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right + stack. Also, evaluating an LLM's performance is not straightforward. +3. **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall + configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be + both technically challenging and resource-intensive. +4. **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be + adequately addressed by existing MLOps platforms. +5. **Flexibility:** Application's needs grow constantly, and so does AI applications. That's why we are adopting a + flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI + applications. Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner. ## Getting started -> How can I use it? +The eLLMental project offers a CLI tool that will help you set up the different components eLLMental offers. As a first +starting point, eLLMental currently implements three different components: -The LLMental project aims to solve the major pain points LLMs have, while preserving all the good features they offer. +1. **A vector store:** You can choose different ones like Pinecone or Supabase. +2. **Embedding generator:** +3. **Semantic search model:** -## eLLMental packages +### The YOLO tool -Below you have a list of the currnent packages eLLMental offers: +The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI +components. hh -1. [eLLMental-core](###eLLMental-core) +## Contributing -### eLLMental-core +### Technical specifications and recommendations -This project aims to be a reference for +Below you have a list of the current packages eLLMental offers: -## Contributing +1. [eLLMental-core](###eLLMental-core) -> How can I contribute? +If you feel that you need to create a different package (like `llmental-core`), you can duplicate the `.kotlin-template` +folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` +file, in the `includes` list. -### Technical specifications and recommendations - -In the following table you can see the technical specs of this project +#### eLLMental-core | | | |----------------------|--------| @@ -42,27 +59,49 @@ In the following table you can see the technical specs of this project | Programming Language | Kotlin | | JVM Version | 17 | -### Adding a new package +This project aims to be a reference for.... -If you feel that you need to create a different package (like `llmental-core`), you can duplicate the `.kotlin-template` -folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` -file, in the `includes` list. +In the following table you can see the technical specs of this project -#### Auto-save (Intellij) +### Reporting bugs -Install the [save actions tool](https://plugins.jetbrains.com/plugin/7642-save-actions) plugin by `Alexandre DuBreuil` -to automatically format the code on save. +Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you +don't find any, go ahead and create an issue including as many details as possible. -Make sure you've configured it like this in your IDE (although it should be already configured because we checked in the -settings file): +> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the body of your new one by writing its number like this => #42 (Github will autolink it for you). -![Save Actions Tool settings](./.docassets/format-on-save.png) +Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the +problem: -## Reporting bugs +- Use a clear and descriptive title for the issue to identify the problem. +- Describe the exact steps which reproduce the problem in as many details as possible. +- Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable + snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. +- Describe the behavior you observed after following the steps and point out what exactly is the problem with that + behavior. +- Explain which behavior you expected to see instead and why. +- If the problem is related to performance or memory, include a CPU profile capture with your report. -> How can I submit an issue/bug? +> Remember to label the issue wit a "bug" tag + +### Suggesting Enhancements + +Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: + +- Use a clear and descriptive title for the issue to identify the suggestion. +- Provide a step-by-step description of the suggested enhancement in as many details as possible. +- Provide specific examples to demonstrate the steps. Include copy/pasteable snippets which you use in those examples, + as Markdown code blocks. +- Describe the current behavior and explain which behavior you expected to see instead and why. +- Explain why this enhancement would be useful to most Booster users and isn't something that can or should be + implemented as a community package. +- List some other libraries or frameworks where this enhancement exists. + +> Remember to label the issue wit an "enhancement" tag ## License This eLLMental project is licensed under the Business source license. You can take a look at the details in [this article](https://timreview.ca/article/691). + +eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). From 21157ec8d90a70873d4af0ac4a3f9c0a8476b2c4 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Thu, 6 Jul 2023 14:25:37 +0100 Subject: [PATCH 03/18] wip readme --- README.md | 80 ++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 52 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 6f9e06ac..9392b145 100644 --- a/README.md +++ b/README.md @@ -2,18 +2,17 @@ --- -## Introduction +# Introduction The eLLMental project raises from the necessity of developer's to have a single framework that joins flexibility, -efficiency and productivity while building the different block an AI applications needs. During this time, we've seen -different challenges that motivated us to start building this project: +efficiency and productivity while building the different block an AI application. During this time, we've seen different +challenges that motivated us to start building this project: -1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective debugging and - visualization tools custom-made for LLMs, making it more difficult for developers to identify and understand model - behaviour or misbehaviours. +1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools + custom-made for LLMs, making it more difficult for developers to understand how LLMs work nowadays. 2. **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right - stack. Also, evaluating an LLM's performance is not straightforward. + stack. Also, evaluating LLMs performance is not straightforward. 3. **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be both technically challenging and resource-intensive. @@ -23,35 +22,58 @@ different challenges that motivated us to start building this project: flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI applications. -Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner. +Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner by +removing all common headaches while integrating AI in your development environment. -## Getting started +# Getting started -The eLLMental project offers a CLI tool that will help you set up the different components eLLMental offers. As a first -starting point, eLLMental currently implements three different components: +eLLMental currently implements three different components: -1. **A vector store:** You can choose different ones like Pinecone or Supabase. -2. **Embedding generator:** -3. **Semantic search model:** +1. **A vector store:** Database or repository used to house and handle vector representations of words or phrases, known + as embeddings. eLLMental implements different databases that support vector columns, like Pinecone or Supabase. +2. **Embedding generator:** The service that is responsible for converting raw text data into representative numerical + vectors, also known as embeddings. +3. **Semantic search model:** To search similarities in the vector store. + Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle + between two vectors. The vectors close to each other (having a smaller angle between them) + indicate more similar content. -### The YOLO tool +These components work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help +you set up these different components. + +## The YOLO tool The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI -components. hh +components. To start using it you just need to run the following command: -## Contributing +`yolo init` -### Technical specifications and recommendations +This command will create a `yolo.json` file, in which you will configure your different scripts. Here's an example: -Below you have a list of the current packages eLLMental offers: +```json +{ + "name": "AppName", + "description": "Description of the app", + "commands": [ + { + "name": "deploy", + "description": "command description", + "script": "npm run deploy", + "args": [{ ... }] + } + ] +} +``` -1. [eLLMental-core](###eLLMental-core) +This `yolo.json` file, will allow you to run `yolo run deploy` -If you feel that you need to create a different package (like `llmental-core`), you can duplicate the `.kotlin-template` -folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` -file, in the `includes` list. -#### eLLMental-core +# Contributing + +## Technical specifications and recommendations + +The main package eLLMental offers is called `ellmental-core`. In this package, we offer the main abstractions that the components +will implement. | | | |----------------------|--------| @@ -61,9 +83,11 @@ file, in the `includes` list. This project aims to be a reference for.... -In the following table you can see the technical specs of this project +> If you feel that you need to create a different package (like `llmental-core`), you can duplicate the `.kotlin-template` +folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` +file, in the `includes` list. -### Reporting bugs +## Reporting bugs Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you don't find any, go ahead and create an issue including as many details as possible. @@ -84,7 +108,7 @@ problem: > Remember to label the issue wit a "bug" tag -### Suggesting Enhancements +## Suggesting Enhancements Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: @@ -99,7 +123,7 @@ Enhancement suggestions are tracked as GitHub issues. Make sure you provide the > Remember to label the issue wit an "enhancement" tag -## License +# License This eLLMental project is licensed under the Business source license. You can take a look at the details in [this article](https://timreview.ca/article/691). From d1bd9034706ed42c1640e7118e1d1cbc9b96f984 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Thu, 6 Jul 2023 15:19:29 +0100 Subject: [PATCH 04/18] put ellmental-core with the components --- README.md | 69 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 44 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 9392b145..c15fa5af 100644 --- a/README.md +++ b/README.md @@ -22,29 +22,47 @@ challenges that motivated us to start building this project: flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI applications. -Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner by +Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner by removing all common headaches while integrating AI in your development environment. + # Getting started -eLLMental currently implements three different components: +The main package eLLMental offers is called `ellmental-core`. In this package, we provide an API implementation for your +AI applications. This API currently support two kind of operations: write (HTTP POST), and read (HTTP GET). You can provide +your own implementation for these two operations, as you can see in the `SemanticSearch.kt` file. + +Technical-wise, `ellmental-core` is built under the following stack: + +| | | +|----------------------|--------| +| Package Manager | Gradle | +| Programming Language | Kotlin | +| JVM Version | 17 | + + +## Modules + +The eLLMental project also implements three different AI modules: 1. **A vector store:** Database or repository used to house and handle vector representations of words or phrases, known as embeddings. eLLMental implements different databases that support vector columns, like Pinecone or Supabase. 2. **Embedding generator:** The service that is responsible for converting raw text data into representative numerical vectors, also known as embeddings. -3. **Semantic search model:** To search similarities in the vector store. +3. **Semantic search module:** To search similarities in the vector store. Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle between two vectors. The vectors close to each other (having a smaller angle between them) indicate more similar content. -These components work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help -you set up these different components. +> An example of how these modules are use can be found in the `semantic-search-service-demo` project. + +These modules work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help +you set up these different modules. ## The YOLO tool The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI -components. To start using it you just need to run the following command: +modules. To start using it you just need to run the following command: `yolo init` @@ -52,7 +70,7 @@ This command will create a `yolo.json` file, in which you will configure your di ```json { - "name": "AppName", + "name": "SemanticSearch", "description": "Description of the app", "commands": [ { @@ -61,38 +79,39 @@ This command will create a `yolo.json` file, in which you will configure your di "script": "npm run deploy", "args": [{ ... }] } - ] + ], + "modules": { + "vector-store": "Pinecone", + "embedding-generator": { + "llm": "openAI", + "api-url": "url", + "api-token": "token" + } + } } ``` -This `yolo.json` file, will allow you to run `yolo run deploy` +This `yolo.json` file, will allow you to run `yolo run deploy`, that will execute the code inside the `script` key. The final +objective for this CLI tool is that it will help us composing different modules too, so we can abstract the boiler-plate code +as much as possible. # Contributing -## Technical specifications and recommendations - -The main package eLLMental offers is called `ellmental-core`. In this package, we offer the main abstractions that the components -will implement. - -| | | -|----------------------|--------| -| Package Manager | Gradle | -| Programming Language | Kotlin | -| JVM Version | 17 | - -This project aims to be a reference for.... +We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report +bugs or suggest enhancements. -> If you feel that you need to create a different package (like `llmental-core`), you can duplicate the `.kotlin-template` +If your plan is to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` -file, in the `includes` list. +file, in the `includes` list. This way we will keep the same structure for all of them. ## Reporting bugs Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you don't find any, go ahead and create an issue including as many details as possible. -> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the body of your new one by writing its number like this => #42 (Github will autolink it for you). +> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the +> body of your new one by writing its number like this => #42 (Github will autolink it for you). Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the problem: @@ -106,7 +125,7 @@ problem: - Explain which behavior you expected to see instead and why. - If the problem is related to performance or memory, include a CPU profile capture with your report. -> Remember to label the issue wit a "bug" tag +> Remember to label the issue with a "bug" tag ## Suggesting Enhancements From dce946b8acce7cc7f0b088334834e26134a4cba2 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Fri, 7 Jul 2023 10:41:02 +0100 Subject: [PATCH 05/18] remove yolo specifics --- README.md | 38 ++-------------------- website/img/eLLMental logo with frame.png | Bin 60693 -> 0 bytes 2 files changed, 2 insertions(+), 36 deletions(-) delete mode 100644 website/img/eLLMental logo with frame.png diff --git a/README.md b/README.md index c15fa5af..b793d792 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# ![eLLMental](website/img/eLLMental logo with frame.png) +# ![eLLMental](website/static/img/eLLMental logo with frame.png) --- @@ -59,42 +59,8 @@ The eLLMental project also implements three different AI modules: These modules work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help you set up these different modules. -## The YOLO tool - The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI -modules. To start using it you just need to run the following command: - -`yolo init` - -This command will create a `yolo.json` file, in which you will configure your different scripts. Here's an example: - -```json -{ - "name": "SemanticSearch", - "description": "Description of the app", - "commands": [ - { - "name": "deploy", - "description": "command description", - "script": "npm run deploy", - "args": [{ ... }] - } - ], - "modules": { - "vector-store": "Pinecone", - "embedding-generator": { - "llm": "openAI", - "api-url": "url", - "api-token": "token" - } - } -} -``` - -This `yolo.json` file, will allow you to run `yolo run deploy`, that will execute the code inside the `script` key. The final -objective for this CLI tool is that it will help us composing different modules too, so we can abstract the boiler-plate code -as much as possible. - +modules and components. # Contributing diff --git a/website/img/eLLMental logo with frame.png b/website/img/eLLMental logo with frame.png deleted file mode 100644 index 21102773393f7afc498c98b01f534a1a9a6f95d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60693 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

}UBB0}Ji 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 From e899dd852ef1d106a5bff182d5fe48799f880ff6 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Fri, 7 Jul 2023 11:42:10 +0100 Subject: [PATCH 06/18] add docusaurus --- .github/workflows/wf_publish-docs.yml | 39 + website/.gitignore | 20 + website/README.md | 29 + website/babel.config.js | 3 + website/docs/01_introduction.md | 150 + website/docs/02_getting_started.md | 35 + website/docs/03_deployments.md | 3 + website/docs/04_contributing.md | 52 + website/docusaurus.config.js | 82 + website/package-lock.json | 12611 ++++++++++++++++ website/package.json | 46 + website/sidebars.js | 33 + .../HomepageFeatures/styles.module.css | 11 + website/src/css/custom.css | 30 + website/src/pages/indexe.module.css | 23 + website/static/.nojekyll | 0 .../static/img/eLLMental logo with frame.png | Bin 0 -> 60693 bytes website/tsconfig.json | 7 + 18 files changed, 13174 insertions(+) create mode 100644 .github/workflows/wf_publish-docs.yml create mode 100644 website/.gitignore create mode 100644 website/README.md create mode 100644 website/babel.config.js create mode 100644 website/docs/01_introduction.md create mode 100644 website/docs/02_getting_started.md create mode 100644 website/docs/03_deployments.md create mode 100644 website/docs/04_contributing.md create mode 100644 website/docusaurus.config.js create mode 100644 website/package-lock.json create mode 100644 website/package.json create mode 100644 website/sidebars.js create mode 100644 website/src/components/HomepageFeatures/styles.module.css create mode 100644 website/src/css/custom.css create mode 100644 website/src/pages/indexe.module.css create mode 100644 website/static/.nojekyll create mode 100644 website/static/img/eLLMental logo with frame.png create mode 100644 website/tsconfig.json diff --git a/.github/workflows/wf_publish-docs.yml b/.github/workflows/wf_publish-docs.yml new file mode 100644 index 00000000..1d3fdb86 --- /dev/null +++ b/.github/workflows/wf_publish-docs.yml @@ -0,0 +1,39 @@ +name: Publish documentation + +on: + push: + branches: + - main + paths: + - 'website/**' + +jobs: + deploy-docs: + name: Publish documentation + runs-on: ubuntu-latest + defaults: + run: + working-directory: website + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-node@v3 + with: + node-version: 18 + cache: npm + cache-dependency-path: website/package-lock.json + + - name: Install dependencies + run: npm ci + - name: Build website + run: npm run build + + # Popular action to deploy to GitHub Pages: + # Docs: https://github.com/peaceiris/actions-gh-pages#%EF%B8%8F-docusaurus + - name: Deploy to GitHub Pages + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + # Build output to publish to the `gh-pages` branch: + publish_dir: ./website/build + user_name: github-actions[bot] + user_email: 41898282+github-actions[bot]@users.noreply.github.com \ No newline at end of file diff --git a/website/.gitignore b/website/.gitignore new file mode 100644 index 00000000..b2d6de30 --- /dev/null +++ b/website/.gitignore @@ -0,0 +1,20 @@ +# Dependencies +/node_modules + +# Production +/build + +# Generated files +.docusaurus +.cache-loader + +# Misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* diff --git a/website/README.md b/website/README.md new file mode 100644 index 00000000..0f7704c6 --- /dev/null +++ b/website/README.md @@ -0,0 +1,29 @@ +# Website + +This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator. + +## Installation + +``` +$ npm i +``` + +## Local Development + +``` +$ npm run start +``` + +This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server. + +## Build + +``` +$ npm run build +``` + +This command generates static content into the `build` directory and can be served using any static contents hosting service. + +## Deployment + +The deployment is automatically done through GH actions, see `.github/workflows/wf_publish-docs` for more details. diff --git a/website/babel.config.js b/website/babel.config.js new file mode 100644 index 00000000..e00595da --- /dev/null +++ b/website/babel.config.js @@ -0,0 +1,3 @@ +module.exports = { + presets: [require.resolve('@docusaurus/core/lib/babel/preset')], +}; diff --git a/website/docs/01_introduction.md b/website/docs/01_introduction.md new file mode 100644 index 00000000..0c6b373f --- /dev/null +++ b/website/docs/01_introduction.md @@ -0,0 +1,150 @@ +--- +slug: / +--- + +# Introduction + +The eLLMental project raises from the necessity of developer's to have a single framework that joins flexibility, +efficiency and productivity while building the different block an AI application. During this time, we've seen different +challenges that motivated us to start building this project: + +1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools + custom-made for LLMs, making it more difficult for developers to understand how LLMs work nowadays. +2. **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in + heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right + stack. Also, evaluating LLMs performance is not straightforward. +3. **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall + configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be + both technically challenging and resource-intensive. +4. **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be + adequately addressed by existing MLOps platforms. +5. **Flexibility:** Application's needs grow constantly, and so does AI applications. That's why we are adopting a + flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI + applications. + +Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner by +removing all common headaches while integrating AI in your development environment. + + +# Getting started + +The main package eLLMental offers is called `ellmental-core`. In this package, we provide an API implementation for your +AI applications. This API currently support two kind of operations: write (HTTP POST), and read (HTTP GET). You can provide +your own implementation for these two operations, as you can see in the `SemanticSearch.kt` file. + +Technical-wise, `ellmental-core` is built under the following stack: + +| | | +|----------------------|--------| +| Package Manager | Gradle | +| Programming Language | Kotlin | +| JVM Version | 17 | + + +## Modules + +The eLLMental project also implements three different AI modules: + +1. **A vector store:** Database or repository used to house and handle vector representations of words or phrases, known + as embeddings. eLLMental implements different databases that support vector columns, like Pinecone or Supabase. +2. **Embedding generator:** The service that is responsible for converting raw text data into representative numerical + vectors, also known as embeddings. +3. **Semantic search module:** To search similarities in the vector store. + Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle + between two vectors. The vectors close to each other (having a smaller angle between them) + indicate more similar content. + +> An example of how these modules are use can be found in the `semantic-search-service-demo` project. + +These modules work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help +you set up these different modules. + +## The YOLO tool + +The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI +modules. To start using it you just need to run the following command: + +`yolo init` + +This command will create a `yolo.json` file, in which you will configure your different scripts. Here's an example: + +```json +{ + "name": "SemanticSearch", + "description": "Description of the app", + "commands": [ + { + "name": "deploy", + "description": "command description", + "script": "npm run deploy", + "args": [{ ... }] + } + ], + "modules": { + "vector-store": "Pinecone", + "embedding-generator": { + "llm": "openAI", + "api-url": "url", + "api-token": "token" + } + } +} +``` + +This `yolo.json` file, will allow you to run `yolo run deploy`, that will execute the code inside the `script` key. The final +objective for this CLI tool is that it will help us composing different modules too, so we can abstract the boiler-plate code +as much as possible. + + +# Contributing + +We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report +bugs or suggest enhancements. + +If your plan is to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` +folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` +file, in the `includes` list. This way we will keep the same structure for all of them. + +## Reporting bugs + +Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you +don't find any, go ahead and create an issue including as many details as possible. + +> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the +> body of your new one by writing its number like this => #42 (Github will autolink it for you). + +Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the +problem: + +- Use a clear and descriptive title for the issue to identify the problem. +- Describe the exact steps which reproduce the problem in as many details as possible. +- Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable + snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. +- Describe the behavior you observed after following the steps and point out what exactly is the problem with that + behavior. +- Explain which behavior you expected to see instead and why. +- If the problem is related to performance or memory, include a CPU profile capture with your report. + +> Remember to label the issue with a "bug" tag + +## Suggesting Enhancements + +Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: + +- Use a clear and descriptive title for the issue to identify the suggestion. +- Provide a step-by-step description of the suggested enhancement in as many details as possible. +- Provide specific examples to demonstrate the steps. Include copy/pasteable snippets which you use in those examples, + as Markdown code blocks. +- Describe the current behavior and explain which behavior you expected to see instead and why. +- Explain why this enhancement would be useful to most Booster users and isn't something that can or should be + implemented as a community package. +- List some other libraries or frameworks where this enhancement exists. + +> Remember to label the issue wit an "enhancement" tag + +# License + +This eLLMental project is licensed under the Business source license. You can take a look at the details +in [this article](https://timreview.ca/article/691). + +eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). diff --git a/website/docs/02_getting_started.md b/website/docs/02_getting_started.md new file mode 100644 index 00000000..877010b5 --- /dev/null +++ b/website/docs/02_getting_started.md @@ -0,0 +1,35 @@ +# Getting started + +The main package eLLMental offers is called `ellmental-core`. In this package, we provide an API implementation for your +AI applications. This API currently support two kind of operations: write (HTTP POST), and read (HTTP GET). You can provide +your own implementation for these two operations, as you can see in the `SemanticSearch.kt` file. + +Technical-wise, `ellmental-core` is built under the following stack: + +| | | +|----------------------|--------| +| Package Manager | Gradle | +| Programming Language | Kotlin | +| JVM Version | 17 | + + +## Modules + +The eLLMental project also implements three different AI modules: + +1. **A vector store:** Database or repository used to house and handle vector representations of words or phrases, known + as embeddings. eLLMental implements different databases that support vector columns, like Pinecone or Supabase. +2. **Embedding generator:** The service that is responsible for converting raw text data into representative numerical + vectors, also known as embeddings. +3. **Semantic search module:** To search similarities in the vector store. + Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle + between two vectors. The vectors close to each other (having a smaller angle between them) + indicate more similar content. + +> An example of how these modules are use can be found in the `semantic-search-service-demo` project. + +These modules work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help +you set up these different modules. + +The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI +modules and components. \ No newline at end of file diff --git a/website/docs/03_deployments.md b/website/docs/03_deployments.md new file mode 100644 index 00000000..ade0be29 --- /dev/null +++ b/website/docs/03_deployments.md @@ -0,0 +1,3 @@ +# Deployments + + diff --git a/website/docs/04_contributing.md b/website/docs/04_contributing.md new file mode 100644 index 00000000..88bcc8f4 --- /dev/null +++ b/website/docs/04_contributing.md @@ -0,0 +1,52 @@ +# Contributing + +We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report +bugs or suggest enhancements. + +If your plan is to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` +folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` +file, in the `includes` list. This way we will keep the same structure for all of them. + +## Reporting bugs + +Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you +don't find any, go ahead and create an issue including as many details as possible. + +> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the +> body of your new one by writing its number like this => #42 (Github will autolink it for you). + +Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the +problem: + +- Use a clear and descriptive title for the issue to identify the problem. +- Describe the exact steps which reproduce the problem in as many details as possible. +- Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable + snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. +- Describe the behavior you observed after following the steps and point out what exactly is the problem with that + behavior. +- Explain which behavior you expected to see instead and why. +- If the problem is related to performance or memory, include a CPU profile capture with your report. + +> Remember to label the issue with a "bug" tag + +## Suggesting Enhancements + +Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: + +- Use a clear and descriptive title for the issue to identify the suggestion. +- Provide a step-by-step description of the suggested enhancement in as many details as possible. +- Provide specific examples to demonstrate the steps. Include copy/pasteable snippets which you use in those examples, + as Markdown code blocks. +- Describe the current behavior and explain which behavior you expected to see instead and why. +- Explain why this enhancement would be useful to most Booster users and isn't something that can or should be + implemented as a community package. +- List some other libraries or frameworks where this enhancement exists. + +> Remember to label the issue wit an "enhancement" tag + +# License + +This eLLMental project is licensed under the Business source license. You can take a look at the details +in [this article](https://timreview.ca/article/691). + +eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). \ No newline at end of file diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js new file mode 100644 index 00000000..b965eb62 --- /dev/null +++ b/website/docusaurus.config.js @@ -0,0 +1,82 @@ +// @ts-check +// Note: type annotations allow type checking and IDEs autocompletion + +const lightCodeTheme = require('prism-react-renderer/themes/github'); +const darkCodeTheme = require('prism-react-renderer/themes/dracula'); + +/** @type {import('@docusaurus/types').Config} */ +const config = { + title: 'eLLMental', + favicon: 'img/eLLMental logo with frame.png', + + // Set the production url of your site here + url: 'https://docs.ellmental.com', + // Set the // pathname under which your site is served + // For GitHub pages deployment, it is often '//' + baseUrl: '/', + + // GitHub pages deployment config. + // If you aren't using GitHub pages, you don't need these. + organizationName: 'The Agile Monkeys S.L.', // Usually your GitHub org/user name. + projectName: 'ellmental', // Usually your repo name. + + onBrokenLinks: 'throw', + onBrokenMarkdownLinks: 'warn', + + // Even if you don't use internalization, you can use this field to set useful + // metadata like html lang. For example, if your site is Chinese, you may want + // to replace "en" with "zh-Hans". + i18n: { + defaultLocale: 'en', + locales: ['en'], + }, + + presets: [ + [ + 'classic', + /** @type {import('@docusaurus/preset-classic').Options} */ + ({ + docs: { + routeBasePath: '/', + sidebarPath: require.resolve('./sidebars.js'), + showLastUpdateTime: true, + showLastUpdateAuthor: true, + // Please change this to your repo. + // Remove this to remove the "edit this page" links. + editUrl: + 'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/', + }, + blog: false, + theme: { + customCss: require.resolve('./src/css/custom.css'), + }, + }), + ], + ], + + themeConfig: + /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ + ({ + // Replace with your project's social card + image: 'img/eLLMental logo with frame.png', + navbar: { + logo: { + alt: 'eLLMental Logo', + src: '/img/eLLMental logo with frame.png', + }, + items: [ + { + href: 'https://github.com/theam/eLLMental', + label: 'GitHub', + position: 'right', + }, + ], + }, + prism: { + theme: lightCodeTheme, + darkTheme: darkCodeTheme, + }, + }), +}; + +module.exports = config; diff --git a/website/package-lock.json b/website/package-lock.json new file mode 100644 index 00000000..a0ce90e2 --- /dev/null +++ b/website/package-lock.json @@ -0,0 +1,12611 @@ +{ + "name": "ellmental", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "ellmental", + "version": "0.0.0", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/preset-classic": "2.4.1", + "@mdx-js/react": "^1.6.22", + "clsx": "^1.2.1", + "prism-react-renderer": "^1.3.5", + "react": "^17.0.2", + "react-dom": "^17.0.2" + }, + "devDependencies": { + "@docusaurus/module-type-aliases": "2.4.1", + "@tsconfig/docusaurus": "^1.0.5", + "typescript": "^4.7.4" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@algolia/autocomplete-core": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz", + "integrity": "sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==", + "dependencies": { + "@algolia/autocomplete-plugin-algolia-insights": "1.9.3", + "@algolia/autocomplete-shared": "1.9.3" + } + }, + "node_modules/@algolia/autocomplete-plugin-algolia-insights": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz", + "integrity": "sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==", + "dependencies": { + "@algolia/autocomplete-shared": "1.9.3" + }, + "peerDependencies": { + "search-insights": ">= 1 < 3" + } + }, + "node_modules/@algolia/autocomplete-preset-algolia": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz", + "integrity": "sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==", + "dependencies": { + "@algolia/autocomplete-shared": "1.9.3" + }, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/autocomplete-shared": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz", + "integrity": "sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==", + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/cache-browser-local-storage": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.18.0.tgz", + "integrity": "sha512-rUAs49NLlO8LVLgGzM4cLkw8NJLKguQLgvFmBEe3DyzlinoqxzQMHfKZs6TSq4LZfw/z8qHvRo8NcTAAUJQLcw==", + "dependencies": { + "@algolia/cache-common": "4.18.0" + } + }, + "node_modules/@algolia/cache-common": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.18.0.tgz", + "integrity": "sha512-BmxsicMR4doGbeEXQu8yqiGmiyvpNvejYJtQ7rvzttEAMxOPoWEHrWyzBQw4x7LrBY9pMrgv4ZlUaF8PGzewHg==" + }, + "node_modules/@algolia/cache-in-memory": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.18.0.tgz", + "integrity": "sha512-evD4dA1nd5HbFdufBxLqlJoob7E2ozlqJZuV3YlirNx5Na4q1LckIuzjNYZs2ddLzuTc/Xd5O3Ibf7OwPskHxw==", + "dependencies": { + "@algolia/cache-common": "4.18.0" + } + }, + "node_modules/@algolia/client-account": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.18.0.tgz", + "integrity": "sha512-XsDnlROr3+Z1yjxBJjUMfMazi1V155kVdte6496atvBgOEtwCzTs3A+qdhfsAnGUvaYfBrBkL0ThnhMIBCGcew==", + "dependencies": { + "@algolia/client-common": "4.18.0", + "@algolia/client-search": "4.18.0", + "@algolia/transporter": "4.18.0" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.18.0.tgz", + "integrity": "sha512-chEUSN4ReqU7uRQ1C8kDm0EiPE+eJeAXiWcBwLhEynfNuTfawN9P93rSZktj7gmExz0C8XmkbBU19IQ05wCNrQ==", + "dependencies": { + "@algolia/client-common": "4.18.0", + "@algolia/client-search": "4.18.0", + "@algolia/requester-common": "4.18.0", + "@algolia/transporter": "4.18.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.18.0.tgz", + "integrity": "sha512-7N+soJFP4wn8tjTr3MSUT/U+4xVXbz4jmeRfWfVAzdAbxLAQbHa0o/POSdTvQ8/02DjCLelloZ1bb4ZFVKg7Wg==", + "dependencies": { + "@algolia/requester-common": "4.18.0", + "@algolia/transporter": "4.18.0" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.18.0.tgz", + "integrity": "sha512-+PeCjODbxtamHcPl+couXMeHEefpUpr7IHftj4Y4Nia1hj8gGq4VlIcqhToAw8YjLeCTfOR7r7xtj3pJcYdP8A==", + "dependencies": { + "@algolia/client-common": "4.18.0", + "@algolia/requester-common": "4.18.0", + "@algolia/transporter": "4.18.0" + } + }, + "node_modules/@algolia/client-search": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.18.0.tgz", + "integrity": "sha512-F9xzQXTjm6UuZtnsLIew6KSraXQ0AzS/Ee+OD+mQbtcA/K1sg89tqb8TkwjtiYZ0oij13u3EapB3gPZwm+1Y6g==", + "dependencies": { + "@algolia/client-common": "4.18.0", + "@algolia/requester-common": "4.18.0", + "@algolia/transporter": "4.18.0" + } + }, + "node_modules/@algolia/events": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@algolia/events/-/events-4.0.1.tgz", + "integrity": "sha512-FQzvOCgoFXAbf5Y6mYozw2aj5KCJoA3m4heImceldzPSMbdyS4atVjJzXKMsfX3wnZTFYwkkt8/z8UesLHlSBQ==" + }, + "node_modules/@algolia/logger-common": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.18.0.tgz", + "integrity": "sha512-46etYgSlkoKepkMSyaoriSn2JDgcrpc/nkOgou/lm0y17GuMl9oYZxwKKTSviLKI5Irk9nSKGwnBTQYwXOYdRg==" + }, + "node_modules/@algolia/logger-console": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.18.0.tgz", + "integrity": "sha512-3P3VUYMl9CyJbi/UU1uUNlf6Z8N2ltW3Oqhq/nR7vH0CjWv32YROq3iGWGxB2xt3aXobdUPXs6P0tHSKRmNA6g==", + "dependencies": { + "@algolia/logger-common": "4.18.0" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.18.0.tgz", + "integrity": "sha512-/AcWHOBub2U4TE/bPi4Gz1XfuLK6/7dj4HJG+Z2SfQoS1RjNLshZclU3OoKIkFp8D2NC7+BNsPvr9cPLyW8nyQ==", + "dependencies": { + "@algolia/requester-common": "4.18.0" + } + }, + "node_modules/@algolia/requester-common": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.18.0.tgz", + "integrity": "sha512-xlT8R1qYNRBCi1IYLsx7uhftzdfsLPDGudeQs+xvYB4sQ3ya7+ppolB/8m/a4F2gCkEO6oxpp5AGemM7kD27jA==" + }, + "node_modules/@algolia/requester-node-http": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.18.0.tgz", + "integrity": "sha512-TGfwj9aeTVgOUhn5XrqBhwUhUUDnGIKlI0kCBMdR58XfXcfdwomka+CPIgThRbfYw04oQr31A6/95ZH2QVJ9UQ==", + "dependencies": { + "@algolia/requester-common": "4.18.0" + } + }, + "node_modules/@algolia/transporter": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.18.0.tgz", + "integrity": "sha512-xbw3YRUGtXQNG1geYFEDDuFLZt4Z8YNKbamHPkzr3rWc6qp4/BqEeXcI2u/P/oMq2yxtXgMxrCxOPA8lyIe5jw==", + "dependencies": { + "@algolia/cache-common": "4.18.0", + "@algolia/logger-common": "4.18.0", + "@algolia/requester-common": "4.18.0" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.5.tgz", + "integrity": "sha512-Xmwn266vad+6DAqEB2A6V/CcZVp62BbwVmcOJc2RPuwih1kw02TjQvWVWlcKGbBPd+8/0V5DEkOcizRGYsspYQ==", + "dependencies": { + "@babel/highlight": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.6.tgz", + "integrity": "sha512-29tfsWTq2Ftu7MXmimyC0C5FDZv5DYxOZkh3XD3+QW4V/BYuv/LyEsjj3c0hqedEaDt6DBfDvexMKU8YevdqFg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.22.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.8.tgz", + "integrity": "sha512-75+KxFB4CZqYRXjx4NlR4J7yGvKumBuZTmV4NV6v09dVXXkuYVYLT68N6HCzLvfJ+fWCxQsntNzKwwIXL4bHnw==", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.7", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helpers": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.8", + "@babel/types": "^7.22.5", + "@nicolo-ribaudo/semver-v6": "^6.3.3", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.7.tgz", + "integrity": "sha512-p+jPjMG+SI8yvIaxGgeW24u7q9+5+TGpZh8/CuB7RhBKd7RCy8FayNEFNNKrNK/eUcY/4ExQqLmyrvBXKsIcwQ==", + "dependencies": { + "@babel/types": "^7.22.5", + "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", + "jsesc": "^2.5.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.22.5.tgz", + "integrity": "sha512-LvBTxu8bQSQkcyKOU+a1btnNFQ1dMAd0R6PyW3arXes06F6QLWLIrd681bxRPIXlrMGR3XYnW9JyML7dP3qgxg==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.5.tgz", + "integrity": "sha512-m1EP3lVOPptR+2DwD125gziZNcmoNSHGmJROKoy87loWUQyJaVXDgpmruWqDARZSmtYQ+Dl25okU8+qhVzuykw==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.6.tgz", + "integrity": "sha512-534sYEqWD9VfUm3IPn2SLcH4Q3P86XL+QvqdC7ZsFrzyyPF3T4XGiVghF6PTYNdWg6pXuoqXxNQAhbYeEInTzA==", + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-validator-option": "^7.22.5", + "@nicolo-ribaudo/semver-v6": "^6.3.3", + "browserslist": "^4.21.9", + "lru-cache": "^5.1.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.6.tgz", + "integrity": "sha512-iwdzgtSiBxF6ni6mzVnZCF3xt5qE6cEA0J7nFt8QOAWZ0zjCFceEgpn3vtb2V7WFR6QzP2jmIFOHMTRo7eNJjQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@nicolo-ribaudo/semver-v6": "^6.3.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.6.tgz", + "integrity": "sha512-nBookhLKxAWo/TUCmhnaEJyLz2dekjQvv5SRpE9epWQBcpedWLKt8aZdsuT9XV5ovzR3fENLjRXVT0GsSlGGhA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@nicolo-ribaudo/semver-v6": "^6.3.3", + "regexpu-core": "^5.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.1.tgz", + "integrity": "sha512-kX4oXixDxG197yhX+J3Wp+NpL2wuCFjWQAr6yX2jtCnflK9ulMI51ULFGIrWiX1jGfvAxdHp+XQCcP2bZGPs9A==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.4.0-0" + } + }, + "node_modules/@babel/helper-environment-visitor": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.5.tgz", + "integrity": "sha512-XGmhECfVA/5sAt+H+xpSg0mfrHq6FzNr9Oxh7PSEBBRUb/mL7Kz3NICXb194rCqAEdxkhPT1a88teizAFyvk8Q==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.22.5.tgz", + "integrity": "sha512-wtHSq6jMRE3uF2otvfuD3DIvVhOsSNshQl0Qrd7qC9oQJzHvOL4qQXlQn2916+CXGywIjpGuIkoyZRRxHPiNQQ==", + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-hoist-variables": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", + "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", + "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.22.5.tgz", + "integrity": "sha512-8Dl6+HD/cKifutF5qGd/8ZJi84QeAKh+CEe1sBzz8UayBBGg1dAIJrdHOcOM5b2MpzWL2yuotJTtGjETq0qjXg==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.22.5.tgz", + "integrity": "sha512-+hGKDt/Ze8GFExiVHno/2dvG5IdstpzCq0y4Qc9OJ25D4q3pKfiIP/4Vp3/JvhDkLKsDK2api3q3fpIgiIF5bw==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.22.5.tgz", + "integrity": "sha512-HBwaojN0xFRx4yIvpwGqxiV2tUfl7401jlok564NgB9EHS1y6QT17FmKWm4ztqjeVdXLuC4fSvHc5ePpQjoTbw==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", + "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.5.tgz", + "integrity": "sha512-cU0Sq1Rf4Z55fgz7haOakIyM7+x/uCFwXpLPaeRzfoUtAEAuUZjZvFPjL/rk5rW693dIgn2hng1W7xbT7lWT4g==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-wrap-function": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-replace-supers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.5.tgz", + "integrity": "sha512-aLdNM5I3kdI/V9xGNyKSF3X/gTyMUBohTZ+/3QdQKAA9vxIiy12E+8E2HoOP1/DjeqU+g6as35QHJNMDDYpuCg==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", + "integrity": "sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.22.5.tgz", + "integrity": "sha512-tK14r66JZKiC43p8Ki33yLBVJKlQDFoA8GYN67lWCDCqoL6EMMSuM9b+Iff2jHaM/RRFYl7K+iiru7hbRqNx8Q==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", + "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", + "dependencies": { + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", + "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.5.tgz", + "integrity": "sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.5.tgz", + "integrity": "sha512-R3oB6xlIVKUnxNUxbmgq7pKjxpru24zlimpE8WK47fACIlM0II/Hm1RS8IaOI7NgCr6LNS+jl5l75m20npAziw==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.5.tgz", + "integrity": "sha512-bYqLIBSEshYcYQyfks8ewYA8S30yaGSeRslcvKMvoUk6HHPySbxHq9YRi6ghhzEU+yhQv9bP/jXnygkStOcqZw==", + "dependencies": { + "@babel/helper-function-name": "^7.22.5", + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.22.6.tgz", + "integrity": "sha512-YjDs6y/fVOYFV8hAf1rxd1QvR9wJe1pDBZ2AREKq/SDayfPzgk0PBnVuTCE5X1acEpMMNOVUqoe+OwiZGJ+OaA==", + "dependencies": { + "@babel/template": "^7.22.5", + "@babel/traverse": "^7.22.6", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.5.tgz", + "integrity": "sha512-BSKlD1hgnedS5XRnGOljZawtag7H1yPfQp0tdNJCHoH6AZ+Pcm9VvkrK59/Yy593Ypg0zMxH2BxD1VPYUQ7UIw==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.22.5", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.22.7.tgz", + "integrity": "sha512-7NF8pOkHP5o2vpmGgNGcfAeCvOYhGLyA3Z4eBQkT1RJlWu47n63bCs93QfJ2hIAFCil7L5P2IWhs1oToVgrL0Q==", + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", + "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", + "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.1.tgz", + "integrity": "sha512-s6SowJIjzlhx8o7lsFx5zmY4At6CTtDvgNQDdPzkBQucle58A6b/TTeEBYtyDgmcXjUTM+vE8YOGHZzzbc/ioA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", + "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.22.5.tgz", + "integrity": "sha512-rdV97N7KqsRzeNGoWUOK6yUsWarLjE5Su/Snk9IYPU9CwkWHs4t+rTGOvffTR8XGkJMTAdLfO0xVnXm8wugIJg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.22.5.tgz", + "integrity": "sha512-KwvoWDeNKPETmozyFE0P2rOLqh39EoQHNjqizrI5B8Vt0ZNS7M56s7dAiAqbYfiAYOuIzIh96z3iR2ktgu3tEg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", + "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", + "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.22.5.tgz", + "integrity": "sha512-26lTNXoVRdAnsaDXPpvCNUq+OVWEVC6bx7Vvz9rC53F2bagUWW4u4ii2+h8Fejfh7RYqPxn+libeFBBck9muEw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.7.tgz", + "integrity": "sha512-7HmE7pk/Fmke45TODvxvkxRMV9RazV+ZZzhOL9AG8G29TLrr3jkjwF7uJfxZ30EoXpO+LJkq4oA8NjO2DTnEDg==", + "dependencies": { + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5", + "@babel/plugin-syntax-async-generators": "^7.8.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.22.5.tgz", + "integrity": "sha512-b1A8D8ZzE/VhNDoV1MSJTnpKkCG5bJo+19R4o4oy03zM7ws8yEMK755j61Dc3EyvdysbqH5BOOTquJ7ZX9C6vQ==", + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-remap-async-to-generator": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.22.5.tgz", + "integrity": "sha512-tdXZ2UdknEKQWKJP1KMNmuF5Lx3MymtMN/pvA+p/VEkhK8jVcQ1fzSy8KM9qRYhAf2/lV33hoMPKI/xaI9sADA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.5.tgz", + "integrity": "sha512-EcACl1i5fSQ6bt+YGuU/XGCeZKStLmyVGytWkpyhCLeQVA0eu6Wtiw92V+I1T/hnezUv7j74dA/Ro69gWcU+hg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.22.5.tgz", + "integrity": "sha512-nDkQ0NfkOhPTq8YCLiWNxp1+f9fCobEjCb0n8WdbNUBc4IB5V7P1QnX9IjpSoquKrXF5SKojHleVNs2vGeHCHQ==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", + "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-class-static-block": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", + "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-optimise-call-expression": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.22.5.tgz", + "integrity": "sha512-4GHWBgRf0krxPX+AaPtgBAlTgTeZmqDynokHOX7aqqAB4tHs3U2Y02zH6ETFdLZGcg9UQSD1WCmkVrE9ErHeOg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/template": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.5.tgz", + "integrity": "sha512-GfqcFuGW8vnEqTUBM7UtPd5A4q797LTvvwKxXTgRsFjoqaJiEg9deBG6kWeQYkVEL569NpnmpC0Pkr/8BLKGnQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.22.5.tgz", + "integrity": "sha512-5/Yk9QxCQCl+sOIB1WelKnVRxTJDSAIxtJLL2/pqL14ZVlbH0fUQUZa/T5/UnQtBNgghR7mfB8ERBKyKPCi7Vw==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.22.5.tgz", + "integrity": "sha512-dEnYD+9BBgld5VBXHnF/DbYGp3fqGMsyxKbtD1mDyIA7AkTSpKXFhCVuj/oQVOoALfBs77DudA0BE4d5mcpmqw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", + "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.22.5.tgz", + "integrity": "sha512-vIpJFNM/FjZ4rh1myqIya9jXwrwwgFRHPjT3DkUA9ZLHuzox8jiXkOLvwm1H+PQIP3CqfC++WPKeuDi0Sjdj1g==", + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", + "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", + "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.22.5.tgz", + "integrity": "sha512-UIzQNMS0p0HHiQm3oelztj+ECwFnj+ZRV4KnguvlsD2of1whUeM6o7wGNj6oLwcDoAXQ8gEqfgC24D+VdIcevg==", + "dependencies": { + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-json-strings": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", + "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-json-strings": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.22.5.tgz", + "integrity": "sha512-fTLj4D79M+mepcw3dgFBTIDYpbcB9Sm0bpm4ppXPaO+U+PKFFyV9MGRvS0gvGw62sd10kT5lRMKXAADb9pWy8g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", + "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.22.5.tgz", + "integrity": "sha512-RZEdkNtzzYCFl9SE9ATaUMTj2hqMb4StarOJLrZRbqqU4HSBE7UlBw9WBWQiDzrJZJdUWiMTVDI6Gv/8DPvfew==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", + "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", + "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-simple-access": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", + "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "dependencies": { + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.22.5.tgz", + "integrity": "sha512-+S6kzefN/E1vkSsKx8kmQuqeQsvCKCd1fraCM7zXm4SFoggI099Tr4G8U81+5gtMdUeMQ4ipdQffbKLX0/7dBQ==", + "dependencies": { + "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.22.5.tgz", + "integrity": "sha512-YgLLKmS3aUBhHaxp5hi1WJTgOUb/NCuDHzGT9z9WTt3YG+CPRhJs6nprbStx6DnWM4dh6gt7SU3sZodbZ08adQ==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.22.5.tgz", + "integrity": "sha512-AsF7K0Fx/cNKVyk3a+DW0JLo+Ua598/NxMRvxDnkpCIGFh43+h/v2xyhRUYf6oD8gE4QtL83C7zZVghMjHd+iw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", + "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-numeric-separator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", + "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", + "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "dependencies": { + "@babel/compat-data": "^7.22.5", + "@babel/helper-compilation-targets": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.22.5.tgz", + "integrity": "sha512-klXqyaT9trSjIUrcsYIfETAzmOEZL3cBYqOYLJxBHfMFFggmXOv+NYSX/Jbs9mzMVESw/WycLFPRx8ba/b2Ipw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-catch-binding": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", + "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-optional-chaining": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.6.tgz", + "integrity": "sha512-Vd5HiWml0mDVtcLHIoEU5sw6HOUW/Zk0acLs/SAeuLzkGNOPc9DB4nkUajemhCmTIz3eiaKREZn2hQQqF79YTg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", + "@babel/plugin-syntax-optional-chaining": "^7.8.3" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", + "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-methods": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.22.5.tgz", + "integrity": "sha512-PPjh4gyrQnGe97JTalgRGMuU4icsZFnWkzicB/fUtzlKUqvsWBKEpPPfr5a2JiyirZkHxnAqkQMO5Z5B2kK3fA==", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-private-property-in-object": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", + "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.22.5.tgz", + "integrity": "sha512-TiOArgddK3mK/x1Qwf5hay2pxI6wCZnvQqrFSqbtg1GLl2JcNMitVH/YnqjP+M31pLUeTfzY1HAXFDnUBV30rQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-constant-elements": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.22.5.tgz", + "integrity": "sha512-BF5SXoO+nX3h5OhlN78XbbDrBOffv+AxPP2ENaJOVqjWCgBDeOY3WcaUcddutGSfoap+5NEQ/q/4I3WZIvgkXA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-display-name": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.22.5.tgz", + "integrity": "sha512-PVk3WPYudRF5z4GKMEYUrLjPl38fJSKNaEOkFuoprioowGuWN6w2RKznuFNSlJx7pzzXXStPUnNSOEO0jL5EVw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.22.5.tgz", + "integrity": "sha512-rog5gZaVbUip5iWDMTYbVM15XQq+RkUKhET/IHR6oizR+JEoN6CAfTTuHcK4vwUyzca30qqHqEpzBOnaRMWYMA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-jsx-development": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.22.5.tgz", + "integrity": "sha512-bDhuzwWMuInwCYeDeMzyi7TaBgRQei6DqxhbyniL7/VG4RSS7HtSL2QbY4eESy1KJqlWt8g3xeEBGPuo+XqC8A==", + "dependencies": { + "@babel/plugin-transform-react-jsx": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-react-pure-annotations": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-pure-annotations/-/plugin-transform-react-pure-annotations-7.22.5.tgz", + "integrity": "sha512-gP4k85wx09q+brArVinTXhWiyzLl9UpmGva0+mWyKxk6JZequ05x3eUcIUE+FyttPKJFRRVtAvQaJ6YF9h1ZpA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.22.5.tgz", + "integrity": "sha512-rR7KePOE7gfEtNTh9Qw+iO3Q/e4DEsoQ+hdvM6QUDH7JRJ5qxq5AA52ZzBWbI5i9lfNuvySgOGP8ZN7LAmaiPw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "regenerator-transform": "^0.15.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.22.5.tgz", + "integrity": "sha512-DTtGKFRQUDm8svigJzZHzb/2xatPc6TzNvAIJ5GqOKDsGFYgAskjRulbR/vGsPKq3OPqtexnz327qYpP57RFyA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-runtime": { + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.7.tgz", + "integrity": "sha512-o02xM7iY7mSPI+TvaYDH0aYl+lg3+KT7qrD705JlsB/GrZSNaYO/4i+aDFKPiJ7ubq3hgv8NNLCdyB5MFxT8mg==", + "dependencies": { + "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@nicolo-ribaudo/semver-v6": "^6.3.3", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.22.5.tgz", + "integrity": "sha512-vM4fq9IXHscXVKzDv5itkO1X52SmdFBFcMIBZ2FRn2nqVYqw6dBexUgMvAjHW+KXpPPViD/Yo3GrDEBaRC0QYA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-spread": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.22.5.tgz", + "integrity": "sha512-5ZzDQIGyvN4w8+dMmpohL6MBo+l2G7tfC/O2Dg7/hjpgeWvUx8FzfeOKxGog9IimPa4YekaQ9PlDqTLOljkcxg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.22.5.tgz", + "integrity": "sha512-zf7LuNpHG0iEeiyCNwX4j3gDg1jgt1k3ZdXBKbZSoA3BbGQGvMiSvfbZRR3Dr3aeJe3ooWFZxOOG3IRStYp2Bw==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.22.5.tgz", + "integrity": "sha512-5ciOehRNf+EyUeewo8NkbQiUs4d6ZxiHo6BcBcnFlgiJfu16q0bQUw9Jvo0b0gBKFG1SMhDSjeKXSYuJLeFSMA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.22.5.tgz", + "integrity": "sha512-bYkI5lMzL4kPii4HHEEChkD0rkc+nvnlR6+o/qdqR6zrm0Sv/nodmyLhlq2DO0YKLUNd2VePmPRjJXSBh9OIdA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.22.5.tgz", + "integrity": "sha512-SMubA9S7Cb5sGSFFUlqxyClTA9zWJ8qGQrppNUm05LtFuN1ELRFNndkix4zUJrC9F+YivWwa1dHMSyo0e0N9dA==", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/plugin-syntax-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.22.5.tgz", + "integrity": "sha512-biEmVg1IYB/raUO5wT1tgfacCef15Fbzhkx493D3urBI++6hpJ+RFG4SrWMn0NEZLfvilqKf3QDrRVZHo08FYg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-property-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.22.5.tgz", + "integrity": "sha512-HCCIb+CbJIAE6sXn5CjFQXMwkCClcOfPCzTlilJ8cUatfzwHlWQkbtV0zD338u9dZskwvuOYTuuaMaA8J5EI5A==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.22.5.tgz", + "integrity": "sha512-028laaOKptN5vHJf9/Arr/HiJekMd41hOEZYvNsrsXqJ7YPYuX2bQxh31fkZzGmq3YqHRJzYFFAVYvKfMPKqyg==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-unicode-sets-regex": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.22.5.tgz", + "integrity": "sha512-lhMfi4FC15j13eKrh3DnYHjpGj6UKQHtNKTbtc1igvAhRy4+kLhV07OpLcsN0VgDEw/MjAvJO4BdMJsHwMhzCg==", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.22.5", + "@babel/helper-plugin-utils": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/preset-env": { + "version": "7.22.7", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.7.tgz", + "integrity": "sha512-1whfDtW+CzhETuzYXfcgZAh8/GFMeEbz0V5dVgya8YeJyCU6Y/P2Gnx4Qb3MylK68Zu9UiwUvbPMPTpFAOJ+sQ==", + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-import-assertions": "^7.22.5", + "@babel/plugin-syntax-import-attributes": "^7.22.5", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5", + "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", + "@babel/plugin-transform-arrow-functions": "^7.22.5", + "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-to-generator": "^7.22.5", + "@babel/plugin-transform-block-scoped-functions": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-class-properties": "^7.22.5", + "@babel/plugin-transform-class-static-block": "^7.22.5", + "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-computed-properties": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-dotall-regex": "^7.22.5", + "@babel/plugin-transform-duplicate-keys": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-exponentiation-operator": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.5", + "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-function-name": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-literals": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-member-expression-literals": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-umd": "^7.22.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", + "@babel/plugin-transform-new-target": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", + "@babel/plugin-transform-numeric-separator": "^7.22.5", + "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-object-super": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.5", + "@babel/plugin-transform-optional-chaining": "^7.22.6", + "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-private-methods": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-property-literals": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-reserved-words": "^7.22.5", + "@babel/plugin-transform-shorthand-properties": "^7.22.5", + "@babel/plugin-transform-spread": "^7.22.5", + "@babel/plugin-transform-sticky-regex": "^7.22.5", + "@babel/plugin-transform-template-literals": "^7.22.5", + "@babel/plugin-transform-typeof-symbol": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-property-regex": "^7.22.5", + "@babel/plugin-transform-unicode-regex": "^7.22.5", + "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", + "@babel/preset-modules": "^0.1.5", + "@babel/types": "^7.22.5", + "@nicolo-ribaudo/semver-v6": "^6.3.3", + "babel-plugin-polyfill-corejs2": "^0.4.4", + "babel-plugin-polyfill-corejs3": "^0.8.2", + "babel-plugin-polyfill-regenerator": "^0.5.1", + "core-js-compat": "^3.31.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-modules": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz", + "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-react": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.22.5.tgz", + "integrity": "sha512-M+Is3WikOpEJHgR385HbuCITPTaPRaNkibTEa9oiofmJvIsrceb4yp9RL9Kb+TE8LznmeyZqpP+Lopwcx59xPQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-transform-react-display-name": "^7.22.5", + "@babel/plugin-transform-react-jsx": "^7.22.5", + "@babel/plugin-transform-react-jsx-development": "^7.22.5", + "@babel/plugin-transform-react-pure-annotations": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/preset-typescript": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.22.5.tgz", + "integrity": "sha512-YbPaal9LxztSGhmndR46FmAbkJ/1fAsw293tSU+I5E5h+cnJ3d4GTwyUgGYmOXJYdGA+uNePle4qbaRzj2NISQ==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.22.5", + "@babel/helper-validator-option": "^7.22.5", + "@babel/plugin-syntax-jsx": "^7.22.5", + "@babel/plugin-transform-modules-commonjs": "^7.22.5", + "@babel/plugin-transform-typescript": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/regjsgen": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz", + "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==" + }, + "node_modules/@babel/runtime": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", + "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "dependencies": { + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/runtime-corejs3": { + "version": "7.22.6", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.22.6.tgz", + "integrity": "sha512-M+37LLIRBTEVjktoJjbw4KVhupF0U/3PYUCbBwgAd9k17hoKhRu1n935QiG7Tuxv0LJOMrb2vuKEeYUlv0iyiw==", + "dependencies": { + "core-js-pure": "^3.30.2", + "regenerator-runtime": "^0.13.11" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/template": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", + "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/parser": "^7.22.5", + "@babel/types": "^7.22.5" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.22.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.22.8.tgz", + "integrity": "sha512-y6LPR+wpM2I3qJrsheCTwhIinzkETbplIgPBbwvqPKc+uljeA5gP+3nP8irdYt1mjQaDnlIcG+dw8OjAco4GXw==", + "dependencies": { + "@babel/code-frame": "^7.22.5", + "@babel/generator": "^7.22.7", + "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-function-name": "^7.22.5", + "@babel/helper-hoist-variables": "^7.22.5", + "@babel/helper-split-export-declaration": "^7.22.6", + "@babel/parser": "^7.22.7", + "@babel/types": "^7.22.5", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.22.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.22.5.tgz", + "integrity": "sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==", + "dependencies": { + "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-validator-identifier": "^7.22.5", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@colors/colors": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz", + "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==", + "optional": true, + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz", + "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@docsearch/css": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.5.1.tgz", + "integrity": "sha512-2Pu9HDg/uP/IT10rbQ+4OrTQuxIWdKVUEdcw9/w7kZJv9NeHS6skJx1xuRiFyoGKwAzcHXnLp7csE99sj+O1YA==" + }, + "node_modules/@docsearch/react": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.5.1.tgz", + "integrity": "sha512-t5mEODdLzZq4PTFAm/dvqcvZFdPDMdfPE5rJS5SC8OUq9mPzxEy6b+9THIqNM9P0ocCb4UC5jqBrxKclnuIbzQ==", + "dependencies": { + "@algolia/autocomplete-core": "1.9.3", + "@algolia/autocomplete-preset-algolia": "1.9.3", + "@docsearch/css": "3.5.1", + "algoliasearch": "^4.0.0" + }, + "peerDependencies": { + "@types/react": ">= 16.8.0 < 19.0.0", + "react": ">= 16.8.0 < 19.0.0", + "react-dom": ">= 16.8.0 < 19.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + } + } + }, + "node_modules/@docusaurus/core": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-2.4.1.tgz", + "integrity": "sha512-SNsY7PshK3Ri7vtsLXVeAJGS50nJN3RgF836zkyUfAD01Fq+sAk5EwWgLw+nnm5KVNGDu7PRR2kRGDsWvqpo0g==", + "dependencies": { + "@babel/core": "^7.18.6", + "@babel/generator": "^7.18.7", + "@babel/plugin-syntax-dynamic-import": "^7.8.3", + "@babel/plugin-transform-runtime": "^7.18.6", + "@babel/preset-env": "^7.18.6", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@babel/runtime": "^7.18.6", + "@babel/runtime-corejs3": "^7.18.6", + "@babel/traverse": "^7.18.8", + "@docusaurus/cssnano-preset": "2.4.1", + "@docusaurus/logger": "2.4.1", + "@docusaurus/mdx-loader": "2.4.1", + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-common": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "@slorber/static-site-generator-webpack-plugin": "^4.0.7", + "@svgr/webpack": "^6.2.1", + "autoprefixer": "^10.4.7", + "babel-loader": "^8.2.5", + "babel-plugin-dynamic-import-node": "^2.3.3", + "boxen": "^6.2.1", + "chalk": "^4.1.2", + "chokidar": "^3.5.3", + "clean-css": "^5.3.0", + "cli-table3": "^0.6.2", + "combine-promises": "^1.1.0", + "commander": "^5.1.0", + "copy-webpack-plugin": "^11.0.0", + "core-js": "^3.23.3", + "css-loader": "^6.7.1", + "css-minimizer-webpack-plugin": "^4.0.0", + "cssnano": "^5.1.12", + "del": "^6.1.1", + "detect-port": "^1.3.0", + "escape-html": "^1.0.3", + "eta": "^2.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "html-minifier-terser": "^6.1.0", + "html-tags": "^3.2.0", + "html-webpack-plugin": "^5.5.0", + "import-fresh": "^3.3.0", + "leven": "^3.1.0", + "lodash": "^4.17.21", + "mini-css-extract-plugin": "^2.6.1", + "postcss": "^8.4.14", + "postcss-loader": "^7.0.0", + "prompts": "^2.4.2", + "react-dev-utils": "^12.0.1", + "react-helmet-async": "^1.3.0", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2", + "react-loadable-ssr-addon-v5-slorber": "^1.0.1", + "react-router": "^5.3.3", + "react-router-config": "^5.1.1", + "react-router-dom": "^5.3.3", + "rtl-detect": "^1.0.4", + "semver": "^7.3.7", + "serve-handler": "^6.1.3", + "shelljs": "^0.8.5", + "terser-webpack-plugin": "^5.3.3", + "tslib": "^2.4.0", + "update-notifier": "^5.1.0", + "url-loader": "^4.1.1", + "wait-on": "^6.0.1", + "webpack": "^5.73.0", + "webpack-bundle-analyzer": "^4.5.0", + "webpack-dev-server": "^4.9.3", + "webpack-merge": "^5.8.0", + "webpackbar": "^5.0.2" + }, + "bin": { + "docusaurus": "bin/docusaurus.mjs" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/cssnano-preset": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-2.4.1.tgz", + "integrity": "sha512-ka+vqXwtcW1NbXxWsh6yA1Ckii1klY9E53cJ4O9J09nkMBgrNX3iEFED1fWdv8wf4mJjvGi5RLZ2p9hJNjsLyQ==", + "dependencies": { + "cssnano-preset-advanced": "^5.3.8", + "postcss": "^8.4.14", + "postcss-sort-media-queries": "^4.2.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/logger": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-2.4.1.tgz", + "integrity": "sha512-5h5ysIIWYIDHyTVd8BjheZmQZmEgWDR54aQ1BX9pjFfpyzFo5puKXKYrYJXbjEHGyVhEzmB9UXwbxGfaZhOjcg==", + "dependencies": { + "chalk": "^4.1.2", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/mdx-loader": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-2.4.1.tgz", + "integrity": "sha512-4KhUhEavteIAmbBj7LVFnrVYDiU51H5YWW1zY6SmBSte/YLhDutztLTBE0PQl1Grux1jzUJeaSvAzHpTn6JJDQ==", + "dependencies": { + "@babel/parser": "^7.18.8", + "@babel/traverse": "^7.18.8", + "@docusaurus/logger": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@mdx-js/mdx": "^1.6.22", + "escape-html": "^1.0.3", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "image-size": "^1.0.1", + "mdast-util-to-string": "^2.0.0", + "remark-emoji": "^2.2.0", + "stringify-object": "^3.3.0", + "tslib": "^2.4.0", + "unified": "^9.2.2", + "unist-util-visit": "^2.0.3", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/module-type-aliases": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-2.4.1.tgz", + "integrity": "sha512-gLBuIFM8Dp2XOCWffUDSjtxY7jQgKvYujt7Mx5s4FCTfoL5dN1EVbnrn+O2Wvh8b0a77D57qoIDY7ghgmatR1A==", + "dependencies": { + "@docusaurus/react-loadable": "5.5.2", + "@docusaurus/types": "2.4.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "@types/react-router-dom": "*", + "react-helmet-async": "*", + "react-loadable": "npm:@docusaurus/react-loadable@5.5.2" + }, + "peerDependencies": { + "react": "*", + "react-dom": "*" + } + }, + "node_modules/@docusaurus/plugin-content-blog": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-blog/-/plugin-content-blog-2.4.1.tgz", + "integrity": "sha512-E2i7Knz5YIbE1XELI6RlTnZnGgS52cUO4BlCiCUCvQHbR+s1xeIWz4C6BtaVnlug0Ccz7nFSksfwDpVlkujg5Q==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/logger": "2.4.1", + "@docusaurus/mdx-loader": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-common": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "cheerio": "^1.0.0-rc.12", + "feed": "^4.2.2", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "reading-time": "^1.5.0", + "tslib": "^2.4.0", + "unist-util-visit": "^2.0.3", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-docs": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-2.4.1.tgz", + "integrity": "sha512-Lo7lSIcpswa2Kv4HEeUcGYqaasMUQNpjTXpV0N8G6jXgZaQurqp7E8NGYeGbDXnb48czmHWbzDL4S3+BbK0VzA==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/logger": "2.4.1", + "@docusaurus/mdx-loader": "2.4.1", + "@docusaurus/module-type-aliases": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "@types/react-router-config": "^5.0.6", + "combine-promises": "^1.1.0", + "fs-extra": "^10.1.0", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-content-pages": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-pages/-/plugin-content-pages-2.4.1.tgz", + "integrity": "sha512-/UjuH/76KLaUlL+o1OvyORynv6FURzjurSjvn2lbWTFc4tpYY2qLYTlKpTCBVPhlLUQsfyFnshEJDLmPneq2oA==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/mdx-loader": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "fs-extra": "^10.1.0", + "tslib": "^2.4.0", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-debug": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-debug/-/plugin-debug-2.4.1.tgz", + "integrity": "sha512-7Yu9UPzRShlrH/G8btOpR0e6INFZr0EegWplMjOqelIwAcx3PKyR8mgPTxGTxcqiYj6hxSCRN0D8R7YrzImwNA==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils": "2.4.1", + "fs-extra": "^10.1.0", + "react-json-view": "^1.21.3", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-analytics": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-analytics/-/plugin-google-analytics-2.4.1.tgz", + "integrity": "sha512-dyZJdJiCoL+rcfnm0RPkLt/o732HvLiEwmtoNzOoz9MSZz117UH2J6U2vUDtzUzwtFLIf32KkeyzisbwUCgcaQ==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-gtag": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-gtag/-/plugin-google-gtag-2.4.1.tgz", + "integrity": "sha512-mKIefK+2kGTQBYvloNEKtDmnRD7bxHLsBcxgnbt4oZwzi2nxCGjPX6+9SQO2KCN5HZbNrYmGo5GJfMgoRvy6uA==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-google-tag-manager": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-google-tag-manager/-/plugin-google-tag-manager-2.4.1.tgz", + "integrity": "sha512-Zg4Ii9CMOLfpeV2nG74lVTWNtisFaH9QNtEw48R5QE1KIwDBdTVaiSA18G1EujZjrzJJzXN79VhINSbOJO/r3g==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/plugin-sitemap": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/plugin-sitemap/-/plugin-sitemap-2.4.1.tgz", + "integrity": "sha512-lZx+ijt/+atQ3FVE8FOHV/+X3kuok688OydDXrqKRJyXBJZKgGjA2Qa8RjQ4f27V2woaXhtnyrdPop/+OjVMRg==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/logger": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-common": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "fs-extra": "^10.1.0", + "sitemap": "^7.1.1", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/preset-classic": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/preset-classic/-/preset-classic-2.4.1.tgz", + "integrity": "sha512-P4//+I4zDqQJ+UDgoFrjIFaQ1MeS9UD1cvxVQaI6O7iBmiHQm0MGROP1TbE7HlxlDPXFJjZUK3x3cAoK63smGQ==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/plugin-content-blog": "2.4.1", + "@docusaurus/plugin-content-docs": "2.4.1", + "@docusaurus/plugin-content-pages": "2.4.1", + "@docusaurus/plugin-debug": "2.4.1", + "@docusaurus/plugin-google-analytics": "2.4.1", + "@docusaurus/plugin-google-gtag": "2.4.1", + "@docusaurus/plugin-google-tag-manager": "2.4.1", + "@docusaurus/plugin-sitemap": "2.4.1", + "@docusaurus/theme-classic": "2.4.1", + "@docusaurus/theme-common": "2.4.1", + "@docusaurus/theme-search-algolia": "2.4.1", + "@docusaurus/types": "2.4.1" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/react-loadable": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "dependencies": { + "@types/react": "*", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": "*" + } + }, + "node_modules/@docusaurus/theme-classic": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-2.4.1.tgz", + "integrity": "sha512-Rz0wKUa+LTW1PLXmwnf8mn85EBzaGSt6qamqtmnh9Hflkc+EqiYMhtUJeLdV+wsgYq4aG0ANc+bpUDpsUhdnwg==", + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/mdx-loader": "2.4.1", + "@docusaurus/module-type-aliases": "2.4.1", + "@docusaurus/plugin-content-blog": "2.4.1", + "@docusaurus/plugin-content-docs": "2.4.1", + "@docusaurus/plugin-content-pages": "2.4.1", + "@docusaurus/theme-common": "2.4.1", + "@docusaurus/theme-translations": "2.4.1", + "@docusaurus/types": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-common": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "@mdx-js/react": "^1.6.22", + "clsx": "^1.2.1", + "copy-text-to-clipboard": "^3.0.1", + "infima": "0.2.0-alpha.43", + "lodash": "^4.17.21", + "nprogress": "^0.2.0", + "postcss": "^8.4.14", + "prism-react-renderer": "^1.3.5", + "prismjs": "^1.28.0", + "react-router-dom": "^5.3.3", + "rtlcss": "^3.5.0", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-common": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-common/-/theme-common-2.4.1.tgz", + "integrity": "sha512-G7Zau1W5rQTaFFB3x3soQoZpkgMbl/SYNG8PfMFIjKa3M3q8n0m/GRf5/H/e5BqOvt8c+ZWIXGCiz+kUCSHovA==", + "dependencies": { + "@docusaurus/mdx-loader": "2.4.1", + "@docusaurus/module-type-aliases": "2.4.1", + "@docusaurus/plugin-content-blog": "2.4.1", + "@docusaurus/plugin-content-docs": "2.4.1", + "@docusaurus/plugin-content-pages": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-common": "2.4.1", + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router-config": "*", + "clsx": "^1.2.1", + "parse-numeric-range": "^1.3.0", + "prism-react-renderer": "^1.3.5", + "tslib": "^2.4.0", + "use-sync-external-store": "^1.2.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-search-algolia": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-search-algolia/-/theme-search-algolia-2.4.1.tgz", + "integrity": "sha512-6BcqW2lnLhZCXuMAvPRezFs1DpmEKzXFKlYjruuas+Xy3AQeFzDJKTJFIm49N77WFCTyxff8d3E4Q9pi/+5McQ==", + "dependencies": { + "@docsearch/react": "^3.1.1", + "@docusaurus/core": "2.4.1", + "@docusaurus/logger": "2.4.1", + "@docusaurus/plugin-content-docs": "2.4.1", + "@docusaurus/theme-common": "2.4.1", + "@docusaurus/theme-translations": "2.4.1", + "@docusaurus/utils": "2.4.1", + "@docusaurus/utils-validation": "2.4.1", + "algoliasearch": "^4.13.1", + "algoliasearch-helper": "^3.10.0", + "clsx": "^1.2.1", + "eta": "^2.0.0", + "fs-extra": "^10.1.0", + "lodash": "^4.17.21", + "tslib": "^2.4.0", + "utility-types": "^3.10.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/theme-translations": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-2.4.1.tgz", + "integrity": "sha512-T1RAGP+f86CA1kfE8ejZ3T3pUU3XcyvrGMfC/zxCtc2BsnoexuNI9Vk2CmuKCb+Tacvhxjv5unhxXce0+NKyvA==", + "dependencies": { + "fs-extra": "^10.1.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@docusaurus/types": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-2.4.1.tgz", + "integrity": "sha512-0R+cbhpMkhbRXX138UOc/2XZFF8hiZa6ooZAEEJFp5scytzCw4tC1gChMFXrpa3d2tYE6AX8IrOEpSonLmfQuQ==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "commander": "^5.1.0", + "joi": "^17.6.0", + "react-helmet-async": "^1.3.0", + "utility-types": "^3.10.0", + "webpack": "^5.73.0", + "webpack-merge": "^5.8.0" + }, + "peerDependencies": { + "react": "^16.8.4 || ^17.0.0", + "react-dom": "^16.8.4 || ^17.0.0" + } + }, + "node_modules/@docusaurus/utils": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-2.4.1.tgz", + "integrity": "sha512-1lvEZdAQhKNht9aPXPoh69eeKnV0/62ROhQeFKKxmzd0zkcuE/Oc5Gpnt00y/f5bIsmOsYMY7Pqfm/5rteT5GA==", + "dependencies": { + "@docusaurus/logger": "2.4.1", + "@svgr/webpack": "^6.2.1", + "escape-string-regexp": "^4.0.0", + "file-loader": "^6.2.0", + "fs-extra": "^10.1.0", + "github-slugger": "^1.4.0", + "globby": "^11.1.0", + "gray-matter": "^4.0.3", + "js-yaml": "^4.1.0", + "lodash": "^4.17.21", + "micromatch": "^4.0.5", + "resolve-pathname": "^3.0.0", + "shelljs": "^0.8.5", + "tslib": "^2.4.0", + "url-loader": "^4.1.1", + "webpack": "^5.73.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "@docusaurus/types": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/types": { + "optional": true + } + } + }, + "node_modules/@docusaurus/utils-common": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-2.4.1.tgz", + "integrity": "sha512-bCVGdZU+z/qVcIiEQdyx0K13OC5mYwxhSuDUR95oFbKVuXYRrTVrwZIqQljuo1fyJvFTKHiL9L9skQOPokuFNQ==", + "dependencies": { + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + }, + "peerDependencies": { + "@docusaurus/types": "*" + }, + "peerDependenciesMeta": { + "@docusaurus/types": { + "optional": true + } + } + }, + "node_modules/@docusaurus/utils-validation": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-2.4.1.tgz", + "integrity": "sha512-unII3hlJlDwZ3w8U+pMO3Lx3RhI4YEbY3YNsQj4yzrkZzlpqZOLuAiZK2JyULnD+TKbceKU0WyWkQXtYbLNDFA==", + "dependencies": { + "@docusaurus/logger": "2.4.1", + "@docusaurus/utils": "2.4.1", + "joi": "^17.6.0", + "js-yaml": "^4.1.0", + "tslib": "^2.4.0" + }, + "engines": { + "node": ">=16.14" + } + }, + "node_modules/@hapi/hoek": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", + "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" + }, + "node_modules/@hapi/topo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", + "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.0", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.0.tgz", + "integrity": "sha512-rxLjXyJBTL4LQeJW3aKo0M/+GkCOXsO+8i9Iu7eDb6KwtP65ayoDsitrdPBtujxQ88k4wI2FNYfa6TOGwSn6cQ==", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.1", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.1.tgz", + "integrity": "sha512-tPKQNMPuXgvdOn2/Lg9HNfUvjYVGolt04Hp03f5hAk878uwOLikN+JzeLY0HcVgKgFl9Hs3EIqpu3WX27XNhnw==", + "dependencies": { + "@jest/schemas": "^29.6.0", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz", + "integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "dependencies": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } + }, + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + }, + "node_modules/@leichtgewicht/ip-codec": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz", + "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==" + }, + "node_modules/@mdx-js/mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/mdx/-/mdx-1.6.22.tgz", + "integrity": "sha512-AMxuLxPz2j5/6TpF/XSdKpQP1NlG0z11dFOlq+2IP/lSgl11GY8ji6S/rgsViN/L0BDvHvUMruRb7ub+24LUYA==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/plugin-syntax-jsx": "7.12.1", + "@babel/plugin-syntax-object-rest-spread": "7.8.3", + "@mdx-js/util": "1.6.22", + "babel-plugin-apply-mdx-type-prop": "1.6.22", + "babel-plugin-extract-import-names": "1.6.22", + "camelcase-css": "2.0.1", + "detab": "2.0.4", + "hast-util-raw": "6.0.1", + "lodash.uniq": "4.5.0", + "mdast-util-to-hast": "10.0.1", + "remark-footnotes": "2.0.0", + "remark-mdx": "1.6.22", + "remark-parse": "8.0.3", + "remark-squeeze-paragraphs": "4.0.0", + "style-to-object": "0.3.0", + "unified": "9.2.0", + "unist-builder": "2.0.3", + "unist-util-visit": "2.0.3" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/mdx/node_modules/@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@mdx-js/mdx/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@mdx-js/mdx/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/@mdx-js/mdx/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/@mdx-js/mdx/node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@mdx-js/react": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-1.6.22.tgz", + "integrity": "sha512-TDoPum4SHdfPiGSAaRBw7ECyI8VaHpK8GJugbJIJuqyh6kzw9ZLJZW3HGL3NNrJGxcAixUvqROm+YuQOo5eXtg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "react": "^16.13.1 || ^17.0.0" + } + }, + "node_modules/@mdx-js/util": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/@mdx-js/util/-/util-1.6.22.tgz", + "integrity": "sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/@nicolo-ribaudo/semver-v6": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/semver-v6/-/semver-v6-6.3.3.tgz", + "integrity": "sha512-3Yc1fUTs69MG/uZbJlLSI3JISMn2UV2rg+1D/vROUqZyh3l6iYHCs7GMp+M40ZD7yOdDbYjJcU1oTJhrc+dGKg==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.21", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.21.tgz", + "integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==" + }, + "node_modules/@sideway/address": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.4.tgz", + "integrity": "sha512-7vwq+rOHVWjyXxVlR76Agnvhy8I9rpzjosTESvmhNeXOXdZZB15Fl+TI9x1SiHZH5Jv2wTGduSxFDIaq0m3DUw==", + "dependencies": { + "@hapi/hoek": "^9.0.0" + } + }, + "node_modules/@sideway/formula": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz", + "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==" + }, + "node_modules/@sideway/pinpoint": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", + "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==" + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@slorber/static-site-generator-webpack-plugin": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz", + "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==", + "dependencies": { + "eval": "^0.1.8", + "p-map": "^4.0.0", + "webpack-sources": "^3.2.2" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/@svgr/babel-plugin-add-jsx-attribute": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz", + "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-attribute": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-8.0.0.tgz", + "integrity": "sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-8.0.0.tgz", + "integrity": "sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==", + "engines": { + "node": ">=14" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz", + "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-dynamic-title": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz", + "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-svg-em-dimensions": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz", + "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-react-native-svg": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz", + "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==", + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-plugin-transform-svg-component": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz", + "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/babel-preset": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz", + "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==", + "dependencies": { + "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1", + "@svgr/babel-plugin-remove-jsx-attribute": "*", + "@svgr/babel-plugin-remove-jsx-empty-expression": "*", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1", + "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1", + "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1", + "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1", + "@svgr/babel-plugin-transform-svg-component": "^6.5.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@svgr/core": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz", + "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==", + "dependencies": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "camelcase": "^6.2.0", + "cosmiconfig": "^7.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/hast-util-to-babel-ast": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz", + "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==", + "dependencies": { + "@babel/types": "^7.20.0", + "entities": "^4.4.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@svgr/plugin-jsx": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz", + "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==", + "dependencies": { + "@babel/core": "^7.19.6", + "@svgr/babel-preset": "^6.5.1", + "@svgr/hast-util-to-babel-ast": "^6.5.1", + "svg-parser": "^2.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "^6.0.0" + } + }, + "node_modules/@svgr/plugin-svgo": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz", + "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==", + "dependencies": { + "cosmiconfig": "^7.0.1", + "deepmerge": "^4.2.2", + "svgo": "^2.8.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + }, + "peerDependencies": { + "@svgr/core": "*" + } + }, + "node_modules/@svgr/webpack": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz", + "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==", + "dependencies": { + "@babel/core": "^7.19.6", + "@babel/plugin-transform-react-constant-elements": "^7.18.12", + "@babel/preset-env": "^7.19.4", + "@babel/preset-react": "^7.18.6", + "@babel/preset-typescript": "^7.18.6", + "@svgr/core": "^6.5.1", + "@svgr/plugin-jsx": "^6.5.1", + "@svgr/plugin-svgo": "^6.5.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/gregberge" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@tsconfig/docusaurus": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@tsconfig/docusaurus/-/docusaurus-1.0.7.tgz", + "integrity": "sha512-ffTXxGIP/IRMCjuzHd6M4/HdIrw1bMfC7Bv8hMkTadnePkpe0lG0oDSdbRpSDZb2rQMAgpbWiR10BvxvNYwYrg==", + "dev": true + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/bonjour": { + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.10.tgz", + "integrity": "sha512-p7ienRMiS41Nu2/igbJxxLDWrSZ0WxM8UQgCeO9KhoVF7cOVFkrKsiDr1EsJIla8vV3oEEjGcz11jc5yimhzZw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/connect-history-api-fallback": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", + "integrity": "sha512-4x5FkPpLipqwthjPsF7ZRbOv3uoLUFkTA9G9v583qi4pACvq0uTELrB8OLUzPWUI4IJIyvM85vzkV1nyiI2Lig==", + "dependencies": { + "@types/express-serve-static-core": "*", + "@types/node": "*" + } + }, + "node_modules/@types/eslint": { + "version": "8.40.2", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.40.2.tgz", + "integrity": "sha512-PRVjQ4Eh9z9pmmtaq8nTjZjQwKFk7YIHIud3lRoKRBgUQjgjRmoGxxGEPXQkF+lH7QkHJRNr5F4aBgYCW0lqpQ==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.1.tgz", + "integrity": "sha512-LG4opVs2ANWZ1TJoKc937iMmNstM/d0ae1vNbnBvBhqCSezgVUOzcLCqbI5elV8Vy6WKwKjaqR+zO9VKirBBCA==" + }, + "node_modules/@types/express": { + "version": "4.17.17", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.17.tgz", + "integrity": "sha512-Q4FmmuLGBG58btUnfS1c1r/NQdlp3DMfGDGig8WhfpA2YRUtEkxAjkZb0yvplJGYdF1fsQ81iMDcH24sSCNC/Q==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.33", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.35", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.35.tgz", + "integrity": "sha512-wALWQwrgiB2AWTT91CB62b6Yt0sNHpznUXeZEcnPU3DRdlDIz74x8Qg1UUYKSVFi+va5vKOLYRBI1bRKiLLKIg==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*", + "@types/send": "*" + } + }, + "node_modules/@types/hast": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.4.tgz", + "integrity": "sha512-wLEm0QvaoawEDoTRwzTXp4b4jpwiJDvR5KMnFnVodm3scufTlBOWRD6N1OBf9TZMhjlNsSfcO5V+7AF4+Vy+9g==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/history": { + "version": "4.7.11", + "resolved": "https://registry.npmjs.org/@types/history/-/history-4.7.11.tgz", + "integrity": "sha512-qjDJRrmvBMiTx+jyLxvLfJU7UznFuokDv4f3WRuriHKERccVpFU+8XMQUAbDzoiJCsmexxRExQeMwwCdamSKDA==" + }, + "node_modules/@types/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-oh/6byDPnL1zeNXFrDXFLyZjkr1MsBG667IM792caf1L2UPOOMf65NFzjUH/ltyfwjAGfs1rsX1eftK0jC/KIg==" + }, + "node_modules/@types/http-errors": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-/K3ds8TRAfBvi5vfjuz8y6+GiAYBZ0x4tXv1Av6CWBWn0IlADc+ZX9pMq7oU0fNQPnBwIZl3rmeLp6SBApbxSQ==" + }, + "node_modules/@types/http-proxy": { + "version": "1.17.11", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.11.tgz", + "integrity": "sha512-HC8G7c1WmaF2ekqpnFq626xd3Zz0uvaqFmBJNRZCGEZCXkvSdJoNFn/8Ygbd9fKNQj8UzLdCETaI0UWPAjK7IA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", + "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", + "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", + "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.12", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.12.tgz", + "integrity": "sha512-Hr5Jfhc9eYOQNPYO5WLDq/n4jqijdHNlDXjuAQkkt+mWdQR+XJToOHrsD4cPaMXpn6KO7y2+wM8AZEs8VpBLVA==" + }, + "node_modules/@types/mdast": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-3.0.11.tgz", + "integrity": "sha512-Y/uImid8aAwrEA24/1tcRZwpxX3pIFTSilcNDKSPn+Y2iDywSEachzRuvgAYYLR3wpGXAsMbv5lvKLDZLeYPAw==", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/mime": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz", + "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==" + }, + "node_modules/@types/node": { + "version": "20.4.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.4.0.tgz", + "integrity": "sha512-jfT7iTf/4kOQ9S7CHV9BIyRaQqHu67mOjsIQBC3BKZvzvUB6zLxEwJ6sBE3ozcvP8kF6Uk5PXN0Q+c0dfhGX0g==" + }, + "node_modules/@types/parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + }, + "node_modules/@types/parse5": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz", + "integrity": "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" + }, + "node_modules/@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/react": { + "version": "18.2.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.2.14.tgz", + "integrity": "sha512-A0zjq+QN/O0Kpe30hA1GidzyFjatVvrpIvWLxD+xv67Vt91TWWgco9IvrJBkeyHm1trGaFS/FSGqPlhyeZRm0g==", + "dependencies": { + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" + } + }, + "node_modules/@types/react-router": { + "version": "5.1.20", + "resolved": "https://registry.npmjs.org/@types/react-router/-/react-router-5.1.20.tgz", + "integrity": "sha512-jGjmu/ZqS7FjSH6owMcD5qpq19+1RS9DeVRqfl1FeBMxTDQAGwlMWOcs52NDoXaNKyG3d1cYQFMs9rCrb88o9Q==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*" + } + }, + "node_modules/@types/react-router-config": { + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/@types/react-router-config/-/react-router-config-5.0.7.tgz", + "integrity": "sha512-pFFVXUIydHlcJP6wJm7sDii5mD/bCmmAY0wQzq+M+uX7bqS95AQqHZWP1iNMKrWVQSuHIzj5qi9BvrtLX2/T4w==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "^5.1.0" + } + }, + "node_modules/@types/react-router-dom": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/@types/react-router-dom/-/react-router-dom-5.3.3.tgz", + "integrity": "sha512-kpqnYK4wcdm5UaWI3fLcELopqLrHgLqNsdpHauzlQktfkHL3npOSwtj1Uz9oKBAzs7lFtVkV8j83voAz2D8fhw==", + "dependencies": { + "@types/history": "^4.7.11", + "@types/react": "*", + "@types/react-router": "*" + } + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + }, + "node_modules/@types/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/scheduler": { + "version": "0.16.3", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.3.tgz", + "integrity": "sha512-5cJ8CB4yAx7BH1oMvdU0Jh9lrEXyPkar6F9G/ERswkCuvP4KQZfZkSjcMbAICCpQTN4OuZn8tz0HiKv9TGZgrQ==" + }, + "node_modules/@types/send": { + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.1.tgz", + "integrity": "sha512-Cwo8LE/0rnvX7kIIa3QHCkcuF21c05Ayb0ZfxPiv0W8VRiZiNW/WuRupHKpqqGVGf7SUA44QSOUKaEd9lIrd/Q==", + "dependencies": { + "@types/mime": "^1", + "@types/node": "*" + } + }, + "node_modules/@types/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-d/Hs3nWDxNL2xAczmOVZNj92YZCS6RGxfBPjKzuu/XirCgXdpKEb88dYNbrYGint6IVWLNP+yonwVAuRC0T2Dg==", + "dependencies": { + "@types/express": "*" + } + }, + "node_modules/@types/serve-static": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.2.tgz", + "integrity": "sha512-J2LqtvFYCzaj8pVYKw8klQXrLLk7TBZmQ4ShlcdkELFKGwGMfevMLneMMRkMgZxotOD9wg497LpC7O8PcvAmfw==", + "dependencies": { + "@types/http-errors": "*", + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/@types/sockjs": { + "version": "0.3.33", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.33.tgz", + "integrity": "sha512-f0KEEe05NvUnat+boPTZ0dgaLZ4SfSouXUgv5noUiefG2ajgKjmETo9ZJyuqsl7dfl2aHlLJUiki6B4ZYldiiw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/unist": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", + "integrity": "sha512-PBjIUxZHOuj0R15/xuwJYjFi+KZdNFrehocChv4g5hu6aFroHue8m0lBP0POdK2nKzbw0cgV1mws8+V/JAcEkQ==" + }, + "node_modules/@types/ws": { + "version": "8.5.5", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.5.tgz", + "integrity": "sha512-lwhs8hktwxSjf9UaZ9tG5M03PGogvFaH8gUgLNbN9HKIg0dvv6q+gkSuJ8HN4/VbyxkuLzCjlN7GquQ0gUJfIg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/yargs": { + "version": "17.0.24", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", + "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.0", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.0.tgz", + "integrity": "sha512-iO9ZQHkZxHn4mSakYV0vFHAVDyEOIJQrV2uZ06HxEPcx+mt8swXoZHIbaaJ2crJYFfErySgktuTZ3BeLz+XmFA==" + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", + "integrity": "sha512-IN1xI7PwOvLPgjcf180gC1bqn3q/QaOCwYUahIOhbYUu8KA/3tw2RT/T0Gidi1l7Hhj5D/INhJxiICObqpMu4Q==", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==" + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==" + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.6.tgz", + "integrity": "sha512-z3nFzdcp1mb8nEOFFk8DrYLpHvhKC3grJD2ardfKOzmbmJvEf/tPIqCY+sNcwZIY8ZD7IkB2l7/pqhUhqm7hLA==" + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==" + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.6.tgz", + "integrity": "sha512-LPpZbSOwTpEC2cgn4hTydySy1Ke+XEu+ETXuoyvuyezHO3Kjdu90KK95Sh9xTbmjrCsUwvWwCOQQNta37VrS9g==", + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==" + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.6.tgz", + "integrity": "sha512-Ybn2I6fnfIGuCR+Faaz7YcvtBKxvoLV3Lebn1tM4o/IAJzmi9AWYIPWpyBfU8cC+JxAO57bk4+zdsTjJR+VTOw==", + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-opt": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6", + "@webassemblyjs/wast-printer": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.6.tgz", + "integrity": "sha512-3XOqkZP/y6B4F0PBAXvI1/bky7GryoogUtfwExeP/v7Nzwo1QLcq5oQmpKlftZLbT+ERUOAZVQjuNVak6UXjPA==", + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.6.tgz", + "integrity": "sha512-cOrKuLRE7PCe6AsOVl7WasYf3wbSo4CeOk6PkrjS7g57MFfVUF9u6ysQBBODX0LdgSvQqRiGz3CXvIDKcPNy4g==", + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-buffer": "1.11.6", + "@webassemblyjs/wasm-gen": "1.11.6", + "@webassemblyjs/wasm-parser": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.6.tgz", + "integrity": "sha512-6ZwPeGzMJM3Dqp3hCsLgESxBGtT/OeCvCZ4TA1JUPYgmhAx38tTPR9JaKy0S5H3evQpO/h2uWs2j6Yc/fjkpTQ==", + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.6.tgz", + "integrity": "sha512-JM7AhRcE+yW2GWYaKeHL5vt4xqee5N2WcezptmgyhNS+ScggqcT1OtXykhAb13Sn5Yas0j2uv9tHgrjwvzAP4A==", + "dependencies": { + "@webassemblyjs/ast": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/accepts/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "8.10.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz", + "integrity": "sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-import-assertions": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", + "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==", + "peerDependencies": { + "acorn": "^8" + } + }, + "node_modules/acorn-walk": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz", + "integrity": "sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/address": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.2.2.tgz", + "integrity": "sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ajv-formats/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/algoliasearch": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.18.0.tgz", + "integrity": "sha512-pCuVxC1SVcpc08ENH32T4sLKSyzoU7TkRIDBMwSLfIiW+fq4znOmWDkAygHZ6pRcO9I1UJdqlfgnV7TRj+MXrA==", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.18.0", + "@algolia/cache-common": "4.18.0", + "@algolia/cache-in-memory": "4.18.0", + "@algolia/client-account": "4.18.0", + "@algolia/client-analytics": "4.18.0", + "@algolia/client-common": "4.18.0", + "@algolia/client-personalization": "4.18.0", + "@algolia/client-search": "4.18.0", + "@algolia/logger-common": "4.18.0", + "@algolia/logger-console": "4.18.0", + "@algolia/requester-browser-xhr": "4.18.0", + "@algolia/requester-common": "4.18.0", + "@algolia/requester-node-http": "4.18.0", + "@algolia/transporter": "4.18.0" + } + }, + "node_modules/algoliasearch-helper": { + "version": "3.13.3", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.13.3.tgz", + "integrity": "sha512-jhbbuYZ+fheXpaJlqdJdFa1jOsrTWKmRRTYDM3oVTto5VodZzM7tT+BHzslAotaJf/81CKrm6yLRQn8WIr/K4A==", + "dependencies": { + "@algolia/events": "^4.0.1" + }, + "peerDependencies": { + "algoliasearch": ">= 3.1 < 6" + } + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-align/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-html-community": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz", + "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==", + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/arg": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", + "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" + }, + "node_modules/array-union": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" + }, + "node_modules/at-least-node": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/autoprefixer": { + "version": "10.4.14", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", + "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/autoprefixer" + } + ], + "dependencies": { + "browserslist": "^4.21.5", + "caniuse-lite": "^1.0.30001464", + "fraction.js": "^4.2.0", + "normalize-range": "^0.1.2", + "picocolors": "^1.0.0", + "postcss-value-parser": "^4.2.0" + }, + "bin": { + "autoprefixer": "bin/autoprefixer" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/axios": { + "version": "0.25.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.25.0.tgz", + "integrity": "sha512-cD8FOb0tRH3uuEe6+evtAbgJtfxr7ly3fQjYcMcuPlgkwVS9xboaVIpcDV+cYQe+yGykgwZCs1pzjntcGa6l5g==", + "dependencies": { + "follow-redirects": "^1.14.7" + } + }, + "node_modules/babel-loader": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz", + "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==", + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^2.0.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-apply-mdx-type-prop/-/babel-plugin-apply-mdx-type-prop-1.6.22.tgz", + "integrity": "sha512-VefL+8o+F/DfK24lPZMtJctrCVOfgbqLAGZSkxwhazQv4VxPg3Za/i40fu22KR2m8eEda+IfSOlPLUSIiLcnCQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4", + "@mdx-js/util": "1.6.22" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + }, + "peerDependencies": { + "@babel/core": "^7.11.6" + } + }, + "node_modules/babel-plugin-apply-mdx-type-prop/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/babel-plugin-extract-import-names": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/babel-plugin-extract-import-names/-/babel-plugin-extract-import-names-1.6.22.tgz", + "integrity": "sha512-yJ9BsJaISua7d8zNT7oRG1ZLBJCIdZ4PZqmH8qa9N5AK01ifk3fnkc98AXhtzE7UkfCsEumvoQWgoYLhOnJ7jQ==", + "dependencies": { + "@babel/helper-plugin-utils": "7.10.4" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/babel-plugin-extract-import-names/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/babel-plugin-polyfill-corejs2": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.4.tgz", + "integrity": "sha512-9WeK9snM1BfxB38goUEv2FLnA6ja07UMfazFHzCXUb3NyDZAwfXvQiURQ6guTTMeHcOsdknULm1PDhs4uWtKyA==", + "dependencies": { + "@babel/compat-data": "^7.22.6", + "@babel/helper-define-polyfill-provider": "^0.4.1", + "@nicolo-ribaudo/semver-v6": "^6.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-corejs3": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.2.tgz", + "integrity": "sha512-Cid+Jv1BrY9ReW9lIfNlNpsI53N+FN7gE+f73zLAUbr9C52W4gKLWSByx47pfDJsEysojKArqOtOKZSVIIUTuQ==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.1", + "core-js-compat": "^3.31.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/babel-plugin-polyfill-regenerator": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.1.tgz", + "integrity": "sha512-L8OyySuI6OSQ5hFy9O+7zFjyr4WhAfRjLIOkhQGYl+emwJkd/S4XXT1JpfrgR1jrQ1NcGiOh+yAdGlF8pnC3Jw==", + "dependencies": { + "@babel/helper-define-polyfill-provider": "^0.4.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/bail": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/bail/-/bail-1.0.5.tgz", + "integrity": "sha512-xFbRxM1tahm08yHBP16MMjVUAvDaBMD38zsM9EMAUN61omwLmKlOpB/Zku5QkjZ8TZ4vn53pj+t518cH0S03RQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base16": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/base16/-/base16-1.0.0.tgz", + "integrity": "sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ==" + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==" + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/body-parser/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/bonjour-service": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz", + "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==", + "dependencies": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/boxen": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz", + "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==", + "dependencies": { + "ansi-align": "^3.0.1", + "camelcase": "^6.2.0", + "chalk": "^4.1.2", + "cli-boxes": "^3.0.0", + "string-width": "^5.0.1", + "type-fest": "^2.5.0", + "widest-line": "^4.0.1", + "wrap-ansi": "^8.0.1" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.21.9", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", + "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "caniuse-lite": "^1.0.30001503", + "electron-to-chromium": "^1.4.431", + "node-releases": "^2.0.12", + "update-browserslist-db": "^1.0.11" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/camel-case": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", + "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", + "dependencies": { + "pascal-case": "^3.1.2", + "tslib": "^2.0.3" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/camelcase-css": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", + "integrity": "sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "dependencies": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001512", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001512.tgz", + "integrity": "sha512-2S9nK0G/mE+jasCUsMPlARhRCts1ebcp2Ji8Y8PWi4NDE1iRdLCnEPHkEfeBrGC45L4isBx5ur3IQ6yTE2mRZw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ] + }, + "node_modules/ccount": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz", + "integrity": "sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/character-entities": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", + "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-entities-legacy": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", + "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/character-reference-invalid": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", + "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/ci-info": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.8.0.tgz", + "integrity": "sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/clean-css": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.2.tgz", + "integrity": "sha512-JVJbM+f3d3Q704rF4bqQ5UUyTtuJ0JRKNbTKVEeujCCBoMdkEi+V+e8oktO9qGQNSvHrFTM6JZRXrUvGR1czww==", + "dependencies": { + "source-map": "~0.6.0" + }, + "engines": { + "node": ">= 10.0" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/cli-boxes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-3.0.0.tgz", + "integrity": "sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-table3": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz", + "integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==", + "dependencies": { + "string-width": "^4.2.0" + }, + "engines": { + "node": "10.* || >= 12.*" + }, + "optionalDependencies": { + "@colors/colors": "1.5.0" + } + }, + "node_modules/cli-table3/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/cli-table3/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/clone-response": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz", + "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clsx": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.2.1.tgz", + "integrity": "sha512-EcR6r5a8bj6pu3ycsa/E/cKVGuTgZJZdsyUYHOksG/UHIiKfjxzRxYJpyVBwYaQeOvghal9fcc4PidlgzugAQg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/collapse-white-space": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/collapse-white-space/-/collapse-white-space-1.0.6.tgz", + "integrity": "sha512-jEovNnrhMuqyCcjfEJA56v0Xq8SkIoPKDyaHahwo3POf4qcSXqMYuwNcOTzp74vTsR9Tn08z4MxWqAhcekogkQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/colord": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz", + "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==" + }, + "node_modules/colorette": { + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" + }, + "node_modules/combine-promises": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/combine-promises/-/combine-promises-1.1.0.tgz", + "integrity": "sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg==", + "engines": { + "node": ">=10" + } + }, + "node_modules/comma-separated-tokens": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", + "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/commander": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", + "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==" + }, + "node_modules/compressible": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", + "dependencies": { + "mime-db": ">= 1.43.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compressible/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/compression": { + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", + "dependencies": { + "accepts": "~1.3.5", + "bytes": "3.0.0", + "compressible": "~2.0.16", + "debug": "2.6.9", + "on-headers": "~1.0.2", + "safe-buffer": "5.1.2", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/compression/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/compression/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/compression/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/consola": { + "version": "2.15.3", + "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz", + "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==" + }, + "node_modules/content-disposition": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", + "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/convert-source-map": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==" + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/copy-text-to-clipboard": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/copy-text-to-clipboard/-/copy-text-to-clipboard-3.2.0.tgz", + "integrity": "sha512-RnJFp1XR/LOBDckxTib5Qjr/PMfkatD0MUCQgdpqS8MdKiNUzBjAQBEN6oUy+jW7LI93BBG3DtMB2KOOKpGs2Q==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-11.0.0.tgz", + "integrity": "sha512-fX2MWpamkW0hZxMEg0+mYnA40LTosOSa5TqZ9GYIBzyJa9C3QUaMPSE2xAi/buNr8u89SfD9wHSQVBzrRa/SOQ==", + "dependencies": { + "fast-glob": "^3.2.11", + "glob-parent": "^6.0.1", + "globby": "^13.1.1", + "normalize-path": "^3.0.0", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/copy-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/copy-webpack-plugin/node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/copy-webpack-plugin/node_modules/globby": { + "version": "13.2.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz", + "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==", + "dependencies": { + "dir-glob": "^3.0.1", + "fast-glob": "^3.3.0", + "ignore": "^5.2.4", + "merge2": "^1.4.1", + "slash": "^4.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/copy-webpack-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/copy-webpack-plugin/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/copy-webpack-plugin/node_modules/slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/core-js": { + "version": "3.31.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.31.1.tgz", + "integrity": "sha512-2sKLtfq1eFST7l7v62zaqXacPc7uG8ZAya8ogijLhTtaKNcpzpB4TMoTw2Si+8GYKRwFPMMtUT0263QFWFfqyQ==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.31.1", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.31.1.tgz", + "integrity": "sha512-wIDWd2s5/5aJSdpOJHfSibxNODxoGoWOBHt8JSPB41NOE94M7kuTPZCYLOlTtuoXTsBPKobpJ6T+y0SSy5L9SA==", + "dependencies": { + "browserslist": "^4.21.9" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-pure": { + "version": "3.31.1", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.31.1.tgz", + "integrity": "sha512-w+C62kvWti0EPs4KPMCMVv9DriHSXfQOCQ94bGGBiEW5rrbtt/Rz8n5Krhfw9cpFyzXBjf3DB3QnPdEzGDY4Fw==", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cosmiconfig": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.2.1", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cross-fetch": { + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-3.1.8.tgz", + "integrity": "sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==", + "dependencies": { + "node-fetch": "^2.6.12" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/css-declaration-sorter": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-6.4.0.tgz", + "integrity": "sha512-jDfsatwWMWN0MODAFuHszfjphEXfNw9JUAhmY4pLu3TyTU+ohUpsbVtbU+1MZn4a47D9kqh03i4eyOm+74+zew==", + "engines": { + "node": "^10 || ^12 || >=14" + }, + "peerDependencies": { + "postcss": "^8.0.9" + } + }, + "node_modules/css-loader": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-6.8.1.tgz", + "integrity": "sha512-xDAXtEVGlD0gJ07iclwWVkLoZOpEvAWaSyf6W18S2pOC//K8+qUDIx8IIT3D+HjnmkJPQeesOPv5aiUaJsCM2g==", + "dependencies": { + "icss-utils": "^5.1.0", + "postcss": "^8.4.21", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.3", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.2.0", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/css-minimizer-webpack-plugin": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz", + "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==", + "dependencies": { + "cssnano": "^5.1.8", + "jest-worker": "^29.1.2", + "postcss": "^8.4.17", + "schema-utils": "^4.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + }, + "peerDependenciesMeta": { + "@parcel/css": { + "optional": true + }, + "@swc/css": { + "optional": true + }, + "clean-css": { + "optional": true + }, + "csso": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "lightningcss": { + "optional": true + } + } + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cssnano": { + "version": "5.1.15", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-5.1.15.tgz", + "integrity": "sha512-j+BKgDcLDQA+eDifLx0EO4XSA56b7uut3BQFH+wbSaSTuGLuiyTa/wbRYthUXX8LC9mLg+WWKe8h+qJuwTAbHw==", + "dependencies": { + "cssnano-preset-default": "^5.2.14", + "lilconfig": "^2.0.3", + "yaml": "^1.10.2" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/cssnano" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-preset-advanced": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz", + "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==", + "dependencies": { + "autoprefixer": "^10.4.12", + "cssnano-preset-default": "^5.2.14", + "postcss-discard-unused": "^5.1.0", + "postcss-merge-idents": "^5.1.1", + "postcss-reduce-idents": "^5.2.0", + "postcss-zindex": "^5.1.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-preset-default": { + "version": "5.2.14", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz", + "integrity": "sha512-t0SFesj/ZV2OTylqQVOrFgEh5uanxbO6ZAdeCrNsUQ6fVuXwYTxJPNAGvGTxHbD68ldIJNec7PyYZDBrfDQ+6A==", + "dependencies": { + "css-declaration-sorter": "^6.3.1", + "cssnano-utils": "^3.1.0", + "postcss-calc": "^8.2.3", + "postcss-colormin": "^5.3.1", + "postcss-convert-values": "^5.1.3", + "postcss-discard-comments": "^5.1.2", + "postcss-discard-duplicates": "^5.1.0", + "postcss-discard-empty": "^5.1.1", + "postcss-discard-overridden": "^5.1.0", + "postcss-merge-longhand": "^5.1.7", + "postcss-merge-rules": "^5.1.4", + "postcss-minify-font-values": "^5.1.0", + "postcss-minify-gradients": "^5.1.1", + "postcss-minify-params": "^5.1.4", + "postcss-minify-selectors": "^5.2.1", + "postcss-normalize-charset": "^5.1.0", + "postcss-normalize-display-values": "^5.1.0", + "postcss-normalize-positions": "^5.1.1", + "postcss-normalize-repeat-style": "^5.1.1", + "postcss-normalize-string": "^5.1.0", + "postcss-normalize-timing-functions": "^5.1.0", + "postcss-normalize-unicode": "^5.1.1", + "postcss-normalize-url": "^5.1.0", + "postcss-normalize-whitespace": "^5.1.1", + "postcss-ordered-values": "^5.1.3", + "postcss-reduce-initial": "^5.1.2", + "postcss-reduce-transforms": "^5.1.0", + "postcss-svgo": "^5.1.0", + "postcss-unique-selectors": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/cssnano-utils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-3.1.0.tgz", + "integrity": "sha512-JQNR19/YZhz4psLX/rQ9M83e3z2Wf/HdJbryzte4a3NSuafyp9w/I4U+hx5C2S9g41qlstH7DEWnZaaj83OuEA==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/csstype": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz", + "integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ==" + }, + "node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "engines": { + "node": ">=8" + } + }, + "node_modules/define-properties": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/del": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz", + "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==", + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detab": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detab/-/detab-2.0.4.tgz", + "integrity": "sha512-8zdsQA5bIkoRECvCrNKPla84lyoR7DSAyf7p0YgXzBO9PDJx8KntPUay7NS6yp+KdxdVtiE5SpHKtbp2ZQyA9g==", + "dependencies": { + "repeat-string": "^1.5.4" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" + }, + "node_modules/detect-port": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz", + "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==", + "dependencies": { + "address": "^1.0.1", + "debug": "4" + }, + "bin": { + "detect": "bin/detect-port.js", + "detect-port": "bin/detect-port.js" + } + }, + "node_modules/detect-port-alt": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", + "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", + "dependencies": { + "address": "^1.0.1", + "debug": "^2.6.0" + }, + "bin": { + "detect": "bin/detect-port", + "detect-port": "bin/detect-port" + }, + "engines": { + "node": ">= 4.2.1" + } + }, + "node_modules/detect-port-alt/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/detect-port-alt/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dns-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", + "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg==" + }, + "node_modules/dns-packet": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.6.0.tgz", + "integrity": "sha512-rza3UH1LwdHh9qyPXp8lkwpjSNk/AMD3dPytUoRoqnypDUhY0xvbdmVhWOfxO68frEfV9BU8V12Ez7ZsHGZpCQ==", + "dependencies": { + "@leichtgewicht/ip-codec": "^2.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", + "dependencies": { + "utila": "~0.4" + } + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dot-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", + "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dot-prop/node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/duplexer": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==" + }, + "node_modules/duplexer3": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.5.tgz", + "integrity": "sha512-1A8za6ws41LQgv9HrE/66jyC5yuSjQ3L/KOpFtoBilsAK2iA2wuS5rTt1OCzIvtS2V7nVmedsUU+DGRcjBmOYA==" + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/electron-to-chromium": { + "version": "1.4.451", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.451.tgz", + "integrity": "sha512-YYbXHIBxAHe3KWvGOJOuWa6f3tgow44rBW+QAuwVp2DvGqNZeE//K2MowNdWS7XE8li5cgQDrX1LdBr41LufkA==" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/emoticon": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/emoticon/-/emoticon-3.2.0.tgz", + "integrity": "sha512-SNujglcLTTg+lDAcApPNgEdudaqQFiAbJCqzjNxJkvN9vAwCGi0uu8IUVvx+f16h+V44KCY6Y2yboroc9pilHg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-module-lexer": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.3.0.tgz", + "integrity": "sha512-vZK7T0N2CBmBOixhmjdqx2gWVbFZ4DXZ/NyRMZVlJXPa7CyFS+/a4QQsDGDQy9ZfEzxFuNEsMLeQJnKP2p5/JA==" + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eta": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/eta/-/eta-2.2.0.tgz", + "integrity": "sha512-UVQ72Rqjy/ZKQalzV5dCCJP80GrmPrMxh6NlNf+erV6ObL0ZFkhCstWRawS85z3smdr3d2wXPsZEY7rDPfGd2g==", + "engines": { + "node": ">=6.0.0" + }, + "funding": { + "url": "https://github.com/eta-dev/eta?sponsor=1" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/eval": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eval/-/eval-0.1.8.tgz", + "integrity": "sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==", + "dependencies": { + "@types/node": "*", + "require-like": ">= 0.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/eventemitter3": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", + "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==" + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/execa/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/express/node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/express/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/express/node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/express/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-glob": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.0.tgz", + "integrity": "sha512-ChDuvbOypPuNjO8yIDf36x7BlZX1smcUMTTcyoIjycexOxd6DFsKsg21qVBzEmr3G7fUKIRy2/psii+CIUt7FA==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", + "dependencies": { + "punycode": "^1.3.2" + } + }, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/faye-websocket": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", + "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/fbemitter": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/fbemitter/-/fbemitter-3.0.0.tgz", + "integrity": "sha512-KWKaceCwKQU0+HPoop6gn4eOHk50bBv/VxjJtGMfwmJt3D29JpN4H4eisCtIPA+a8GVBam+ldMMpMjJUvpDyHw==", + "dependencies": { + "fbjs": "^3.0.0" + } + }, + "node_modules/fbjs": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-3.0.5.tgz", + "integrity": "sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==", + "dependencies": { + "cross-fetch": "^3.1.5", + "fbjs-css-vars": "^1.0.0", + "loose-envify": "^1.0.0", + "object-assign": "^4.1.0", + "promise": "^7.1.1", + "setimmediate": "^1.0.5", + "ua-parser-js": "^1.0.35" + } + }, + "node_modules/fbjs-css-vars": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", + "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" + }, + "node_modules/feed": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/feed/-/feed-4.2.2.tgz", + "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", + "dependencies": { + "xml-js": "^1.6.11" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/file-loader": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz", + "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/file-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/filesize": { + "version": "8.0.7", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-8.0.7.tgz", + "integrity": "sha512-pjmC+bkIF8XI7fWaH8KxHcZL3DPybs1roSKP4rKDvy20tAWwIObE4+JIseG2byfGKhud5ZnM4YSGKBz7Sh0ndQ==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/find-cache-dir": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz", + "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==", + "dependencies": { + "commondir": "^1.0.1", + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flux": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/flux/-/flux-4.0.4.tgz", + "integrity": "sha512-NCj3XlayA2UsapRpM7va6wU1+9rE5FIL7qoMcmxWHRzbp0yujihMBm9BBHZ1MDIk5h5o2Bl6eGiCe8rYELAmYw==", + "dependencies": { + "fbemitter": "^3.0.0", + "fbjs": "^3.0.1" + }, + "peerDependencies": { + "react": "^15.0.2 || ^16.0.0 || ^17.0.0" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", + "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-6.5.3.tgz", + "integrity": "sha512-SbH/l9ikmMWycd5puHJKTkZJKddF4iRLyW3DeZ08HTI7NGyLS38MXd/KGgeWumQO7YNQbW2u/NtPT2YowbPaGQ==", + "dependencies": { + "@babel/code-frame": "^7.8.3", + "@types/json-schema": "^7.0.5", + "chalk": "^4.1.0", + "chokidar": "^3.4.2", + "cosmiconfig": "^6.0.0", + "deepmerge": "^4.2.2", + "fs-extra": "^9.0.0", + "glob": "^7.1.6", + "memfs": "^3.1.2", + "minimatch": "^3.0.4", + "schema-utils": "2.7.0", + "semver": "^7.3.2", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=10", + "yarn": ">=1.0.0" + }, + "peerDependencies": { + "eslint": ">= 6", + "typescript": ">= 2.7", + "vue-template-compiler": "*", + "webpack": ">= 4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + }, + "vue-template-compiler": { + "optional": true + } + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/cosmiconfig": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", + "dependencies": { + "@types/parse-json": "^4.0.0", + "import-fresh": "^3.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0", + "yaml": "^1.7.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.0.tgz", + "integrity": "sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==", + "dependencies": { + "@types/json-schema": "^7.0.4", + "ajv": "^6.12.2", + "ajv-keywords": "^3.4.1" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/fork-ts-checker-webpack-plugin/node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fraction.js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", + "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "engines": { + "node": "*" + }, + "funding": { + "type": "patreon", + "url": "https://www.patreon.com/infusion" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/fs-monkey": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.4.tgz", + "integrity": "sha512-INM/fWAxMICjttnD0DX1rBvinKskj5G1w+oy/pnm9u/tSlnBrzFonJMcalKJ30P8RRsPzKcCG7Q8l0jx5Fh9YQ==" + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", + "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/github-slugger": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-1.5.0.tgz", + "integrity": "sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw==" + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/global-dirs": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz", + "integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-dirs/node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", + "dependencies": { + "global-prefix": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "dependencies": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/global-prefix/node_modules/which": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", + "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/gray-matter": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", + "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", + "dependencies": { + "js-yaml": "^3.13.1", + "kind-of": "^6.0.2", + "section-matter": "^1.0.0", + "strip-bom-string": "^1.0.0" + }, + "engines": { + "node": ">=6.0" + } + }, + "node_modules/gray-matter/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/gray-matter/node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/handle-thing": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/hast-to-hyperscript": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz", + "integrity": "sha512-zQgLKqF+O2F72S1aa4y2ivxzSlko3MAvxkwG8ehGmNiqd98BIN3JM1rAJPmplEyLmGLO2QZYJtIneOSZ2YbJuA==", + "dependencies": { + "@types/unist": "^2.0.3", + "comma-separated-tokens": "^1.0.0", + "property-information": "^5.3.0", + "space-separated-tokens": "^1.0.0", + "style-to-object": "^0.3.0", + "unist-util-is": "^4.0.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-from-parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz", + "integrity": "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==", + "dependencies": { + "@types/parse5": "^5.0.0", + "hastscript": "^6.0.0", + "property-information": "^5.0.0", + "vfile": "^4.0.0", + "vfile-location": "^3.2.0", + "web-namespaces": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-parse-selector": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", + "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/hast-util-raw/-/hast-util-raw-6.0.1.tgz", + "integrity": "sha512-ZMuiYA+UF7BXBtsTBNcLBF5HzXzkyE6MLzJnL605LKE8GJylNjGc4jjxazAHUtcwT5/CEt6afRKViYB4X66dig==", + "dependencies": { + "@types/hast": "^2.0.0", + "hast-util-from-parse5": "^6.0.0", + "hast-util-to-parse5": "^6.0.0", + "html-void-elements": "^1.0.0", + "parse5": "^6.0.0", + "unist-util-position": "^3.0.0", + "vfile": "^4.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hast-util-raw/node_modules/parse5": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", + "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" + }, + "node_modules/hast-util-to-parse5": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hast-util-to-parse5/-/hast-util-to-parse5-6.0.0.tgz", + "integrity": "sha512-Lu5m6Lgm/fWuz8eWnrKezHtVY83JeRGaNQ2kn9aJgqaxvVkFCZQBEhgodZUDUvoodgyROHDb3r5IxAEdl6suJQ==", + "dependencies": { + "hast-to-hyperscript": "^9.0.0", + "property-information": "^5.0.0", + "web-namespaces": "^1.0.0", + "xtend": "^4.0.0", + "zwitch": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/hastscript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", + "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", + "dependencies": { + "@types/hast": "^2.0.0", + "comma-separated-tokens": "^1.0.0", + "hast-util-parse-selector": "^2.0.0", + "property-information": "^5.0.0", + "space-separated-tokens": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/history": { + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", + "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", + "dependencies": { + "@babel/runtime": "^7.1.2", + "loose-envify": "^1.2.0", + "resolve-pathname": "^3.0.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0", + "value-equal": "^1.0.1" + } + }, + "node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "dependencies": { + "react-is": "^16.7.0" + } + }, + "node_modules/hpack.js": { + "version": "2.1.6", + "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", + "integrity": "sha512-zJxVehUdMGIKsRaNt7apO2Gqp0BdqW5yaiGHXXmbpvxgBYVZnAql+BJb4RO5ad2MgpbZKn5G6nMnegrH1FcNYQ==", + "dependencies": { + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" + } + }, + "node_modules/hpack.js/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/hpack.js/node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/hpack.js/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/hpack.js/node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/html-entities": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz", + "integrity": "sha512-igBTJcNNNhvZFRtm8uA6xMY6xYleeDwn3PeBCkDz7tHttv4F2hsDI2aPgNERWzvRcNYHNT3ymRaQzllmXj4YsQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/mdevils" + }, + { + "type": "patreon", + "url": "https://patreon.com/mdevils" + } + ] + }, + "node_modules/html-minifier-terser": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-6.1.0.tgz", + "integrity": "sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==", + "dependencies": { + "camel-case": "^4.1.2", + "clean-css": "^5.2.2", + "commander": "^8.3.0", + "he": "^1.2.0", + "param-case": "^3.0.4", + "relateurl": "^0.2.7", + "terser": "^5.10.0" + }, + "bin": { + "html-minifier-terser": "cli.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/html-minifier-terser/node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "engines": { + "node": ">= 12" + } + }, + "node_modules/html-tags": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.3.1.tgz", + "integrity": "sha512-ztqyC3kLto0e9WbNp0aeP+M3kTt+nbaIveGmUxAtZa+8iFgKLUOD4YKM5j+f3QD89bra7UeumolZHKuOXnTmeQ==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/html-void-elements": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.5.tgz", + "integrity": "sha512-uE/TxKuyNIcx44cIWnjr/rfIATDH7ZaOMmstu0CwhFG1Dunhlp4OC6/NMbhiwoq5BpW0ubi303qnEk/PZj614w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/html-webpack-plugin": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-5.5.3.tgz", + "integrity": "sha512-6YrDKTuqaP/TquFH7h4srYWsZx+x6k6+FbsTm0ziCwGHDP78Unr1r9F/H4+sGmMbX08GQcJ+K64x55b+7VM/jg==", + "dependencies": { + "@types/html-minifier-terser": "^6.0.0", + "html-minifier-terser": "^6.0.2", + "lodash": "^4.17.21", + "pretty-error": "^4.0.0", + "tapable": "^2.0.0" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/html-webpack-plugin" + }, + "peerDependencies": { + "webpack": "^5.20.0" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, + "node_modules/http-deceiver": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", + "integrity": "sha512-LmpOGxTfbpgtGVxJrj5k7asXHCgNZp5nLfp+hWc8QQRqtb7fUy6kRY3BO1h9ddF6yIPYUARgxGOwB42DnxIaNw==" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-parser-js": { + "version": "0.5.8", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", + "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==" + }, + "node_modules/http-proxy": { + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", + "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", + "dependencies": { + "eventemitter3": "^4.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/http-proxy-middleware": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-2.0.6.tgz", + "integrity": "sha512-ya/UeJ6HVBYxrgYotAZo1KvPWlgB48kUJLDePFeneHsVujFaW5WNj2NgWCAE//B1Dl02BIfYlpNgBy8Kf8Rjmw==", + "dependencies": { + "@types/http-proxy": "^1.17.8", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "is-plain-obj": "^3.0.0", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "@types/express": "^4.17.13" + }, + "peerDependenciesMeta": { + "@types/express": { + "optional": true + } + } + }, + "node_modules/http-proxy-middleware/node_modules/is-plain-obj": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", + "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/ignore": { + "version": "5.2.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.2.4.tgz", + "integrity": "sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/image-size": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-1.0.2.tgz", + "integrity": "sha512-xfOoWjceHntRb3qFCrh5ZFORYH8XCdYpASltMhZ/Q0KZiOwjdE/Yl2QCiWdwD+lygV5bMCvauzgu5PxBX/Yerg==", + "dependencies": { + "queue": "6.0.2" + }, + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/immer": { + "version": "9.0.21", + "resolved": "https://registry.npmjs.org/immer/-/immer-9.0.21.tgz", + "integrity": "sha512-bc4NBHqOqSfRW7POMkHd51LvClaeMXpm8dx0e8oE2GORbq5aRK7Bxl4FyzVLdGtLmvLKL7BTDBG5ACQm4HWjTA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/immer" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha512-m7ZEHgtw69qOGw+jwxXkHlrlIPdTGkyh66zXZ1ajZbxkDBNjSY/LGbmjc7h0s2ELsUDTAhFr55TrPSSqJGPG0A==", + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/infima": { + "version": "0.2.0-alpha.43", + "resolved": "https://registry.npmjs.org/infima/-/infima-0.2.0-alpha.43.tgz", + "integrity": "sha512-2uw57LvUqW0rK/SWYnd/2rRfxNA5DDNOh33jxF7fy46VWoNhGxiUQyVZHbBMjQ33mQem0cjdDVwgWVAmlRfgyQ==", + "engines": { + "node": ">=12" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/inline-style-parser": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.1.1.tgz", + "integrity": "sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==" + }, + "node_modules/interpret": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/invariant": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", + "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "dependencies": { + "loose-envify": "^1.0.0" + } + }, + "node_modules/ipaddr.js": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz", + "integrity": "sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/is-alphabetical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", + "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-alphanumerical": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", + "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", + "dependencies": { + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-buffer": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", + "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "engines": { + "node": ">=4" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-ci/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/is-core-module": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", + "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-decimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-hexadecimal": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", + "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha512-l4RyHgRqGN4Y3+9JHVrNqO+tN0rV5My76uW5/nuO4K1b6vw5G8d/cmFjP9tRfEsdhZNt0IFdZuK/c2Vr4Nb+Qg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-obj": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", + "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA==" + }, + "node_modules/is-whitespace-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-whitespace-character/-/is-whitespace-character-1.0.4.tgz", + "integrity": "sha512-SDweEzfIZM0SJV0EUga669UTKlmL0Pq8Lno0QDQsPnvECB3IM2aP0gdx5TrU0A01MAPfViaZiI2V1QMZLaKK5w==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-word-character": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-word-character/-/is-word-character-1.0.4.tgz", + "integrity": "sha512-5SMO8RVennx3nZrqtKwCGyyetPE9VDba5ugvKLaD4KopPG5kR4mQ7tNt/r7feL5yt5h3lpuBbIUmCOG2eSzXHA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-util": { + "version": "29.6.1", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.1.tgz", + "integrity": "sha512-NRFCcjc+/uO3ijUVyNOQJluf8PtGCe/W6cix36+M3cTFgiYqFOOW5MgN4JOOcvbUhcKTYVd1CvHz/LWi8d16Mg==", + "dependencies": { + "@jest/types": "^29.6.1", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.6.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.1.tgz", + "integrity": "sha512-U+Wrbca7S8ZAxAe9L6nb6g8kPdia5hj32Puu5iOqBCMTMWFHXuK6dOV2IFrpedbTV8fjMFLdWNttQTBL6u2MRA==", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.6.1", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/jiti": { + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.19.1.tgz", + "integrity": "sha512-oVhqoRDaBXf7sjkll95LHVS6Myyyb1zaunVwk4Z0+WPSW4gjS0pl01zYKHScTuyEhQsFxV5L4DR5r+YqSyqyyg==", + "bin": { + "jiti": "bin/jiti.js" + } + }, + "node_modules/joi": { + "version": "17.9.2", + "resolved": "https://registry.npmjs.org/joi/-/joi-17.9.2.tgz", + "integrity": "sha512-Itk/r+V4Dx0V3c7RLFdRh12IOjySm2/WGPMubBT92cQvRfYZhPM2W0hZlctjj72iES8jsRCwp7S/cRmWBnJ4nw==", + "dependencies": { + "@hapi/hoek": "^9.0.0", + "@hapi/topo": "^5.0.0", + "@sideway/address": "^4.1.3", + "@sideway/formula": "^3.0.1", + "@sideway/pinpoint": "^2.0.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha512-CuUqjv0FUZIdXkHPI8MezCnFCdaTAacej1TZYulLoAg1h/PhwkdXFN4V/gzY4g+fMBCOV2xF+rp7t2XD2ns/NQ==" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "engines": { + "node": ">=6" + } + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/launch-editor": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.6.0.tgz", + "integrity": "sha512-JpDCcQnyAAzZZaZ7vEiSqL690w7dAEyLao+KC96zBplnYbJS7TYNjvM3M7y3dGz+v7aIsJk3hllWuc0kWAjyRQ==", + "dependencies": { + "picocolors": "^1.0.0", + "shell-quote": "^1.7.3" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz", + "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.curry": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.curry/-/lodash.curry-4.1.1.tgz", + "integrity": "sha512-/u14pXGviLaweY5JI0IUzgzF2J6Ne8INyzAZjImcryjgkZ+ebruBxy2/JaOOkTqScddcYtakjhSaeemV8lR0tA==" + }, + "node_modules/lodash.debounce": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", + "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==" + }, + "node_modules/lodash.flow": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/lodash.flow/-/lodash.flow-3.5.0.tgz", + "integrity": "sha512-ff3BX/tSioo+XojX4MOsOMhJw0nZoUEF011LX8g8d3gvjVbxd89cCio4BCXronjxcTUIJUoqKEUA+n4CqvvRPw==" + }, + "node_modules/lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==" + }, + "node_modules/loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "dependencies": { + "js-tokens": "^3.0.0 || ^4.0.0" + }, + "bin": { + "loose-envify": "cli.js" + } + }, + "node_modules/lower-case": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", + "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", + "dependencies": { + "tslib": "^2.0.3" + } + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/markdown-escapes": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/markdown-escapes/-/markdown-escapes-1.0.4.tgz", + "integrity": "sha512-8z4efJYk43E0upd0NbVXwgSTQs6cT3T06etieCMEg7dRbzCbxUCK/GHlX8mhHRDcp+OLlHkPKsvqQTCvsRl2cg==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/mdast-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-squeeze-paragraphs/-/mdast-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-zxdPn69hkQ1rm4J+2Cs2j6wDEv7O17TfXTJ33tl/+JPIoEmtV9t2ZzBM5LPHE8QlHsmVD8t3vPKCyY3oH+H8MQ==", + "dependencies": { + "unist-util-remove": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-definitions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-definitions/-/mdast-util-definitions-4.0.0.tgz", + "integrity": "sha512-k8AJ6aNnUkB7IE+5azR9h81O5EQ/cTDXtWdMq9Kk5KcEW/8ritU5CeLg/9HhOC++nALHBlaogJ5jz0Ybk3kPMQ==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-hast": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-10.0.1.tgz", + "integrity": "sha512-BW3LM9SEMnjf4HXXVApZMt8gLQWVNXc3jryK0nJu/rOXPOnlkUjmdkDlmxMirpbU9ILncGFIwLH/ubnWBbcdgA==", + "dependencies": { + "@types/mdast": "^3.0.0", + "@types/unist": "^2.0.0", + "mdast-util-definitions": "^4.0.0", + "mdurl": "^1.0.0", + "unist-builder": "^2.0.0", + "unist-util-generated": "^1.0.0", + "unist-util-position": "^3.0.0", + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdast-util-to-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-string/-/mdast-util-to-string-2.0.0.tgz", + "integrity": "sha512-AW4DRS3QbBayY/jJmD8437V1Gombjf8RSOUCMFBuo5iHi58AGEgVCKQ+ezHkZZDpAQS75hcBMpLqjpJTjtUL7w==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==" + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==" + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memfs": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz", + "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==", + "dependencies": { + "fs-monkey": "^1.0.4" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/micromatch": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "dependencies": { + "braces": "^3.0.2", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.33.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz", + "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz", + "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==", + "dependencies": { + "mime-db": "~1.33.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/mini-css-extract-plugin": { + "version": "2.7.6", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-2.7.6.tgz", + "integrity": "sha512-Qk7HcgaPkGG6eD77mLvZS1nmxlao3j+9PkrT9Uc7HAE1id3F41+DdBRYRYkbyfNRGzm8/YWtzhw7nVPmwhqTQw==", + "dependencies": { + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.0.0" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/mini-css-extract-plugin/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/mini-css-extract-plugin/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==", + "engines": { + "node": ">=10" + } + }, + "node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/multicast-dns": { + "version": "7.2.5", + "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-7.2.5.tgz", + "integrity": "sha512-2eznPJP8z2BFLX50tf0LuODrpINqP1RVIm/CObbTcBRITQgmC/TjcREF1NeTBzIcR5XO/ukWo+YHOjBbFwIupg==", + "dependencies": { + "dns-packet": "^5.2.2", + "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" + } + }, + "node_modules/nanoid": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.6.tgz", + "integrity": "sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/no-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", + "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", + "dependencies": { + "lower-case": "^2.0.2", + "tslib": "^2.0.3" + } + }, + "node_modules/node-emoji": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/node-emoji/-/node-emoji-1.11.0.tgz", + "integrity": "sha512-wo2DpQkQp7Sjm2A0cq+sN7EHKO6Sl0ctXeBdFZrL9T9+UywORbufTcTZxom8YqpLQt/FqNMUkOpkZrJVYSKD3A==", + "dependencies": { + "lodash": "^4.17.21" + } + }, + "node_modules/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-C/fGU2E8ToujUivIO0H+tpQ6HWo4eEmchoPIoXtxCrVghxdKq+QOHqEZW7tuP3KlV3bC8FRMO5nMCC7Zm1VP6g==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", + "engines": { + "node": ">= 6.13.0" + } + }, + "node_modules/node-releases": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", + "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha512-I19aIingLgR1fmhftnbWWO3dXc0hSxqHQHQb3H8m+K3TnEn/iSeTZZOyvKXWqQESMwuUVnatlCnZdLBZZt2VSA==" + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/obuf": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/on-headers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", + "bin": { + "opener": "bin/opener-bin.js" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "dependencies": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/param-case": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", + "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", + "dependencies": { + "dot-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", + "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", + "dependencies": { + "character-entities": "^1.0.0", + "character-entities-legacy": "^1.0.0", + "character-reference-invalid": "^1.0.0", + "is-alphanumerical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-hexadecimal": "^1.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse-numeric-range": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-1.3.0.tgz", + "integrity": "sha512-twN+njEipszzlMJd4ONUYgSfZPDxgHhT9Ahed5uTigpQn90FggW4SA/AIPq/6a149fTbE9qBEcSwE3FAEp6wQQ==" + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "dependencies": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/pascal-case": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", + "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", + "dependencies": { + "no-case": "^3.0.4", + "tslib": "^2.0.3" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==" + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", + "dependencies": { + "isarray": "0.0.1" + } + }, + "node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dependencies": { + "find-up": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pkg-up/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/pkg-up/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss": { + "version": "8.4.25", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.25.tgz", + "integrity": "sha512-7taJ/8t2av0Z+sQEvNzCkpDynl0tX3uJMCODi6nT3PfASC7dYCWV9aQ+uiCf+KBD4SEFcu+GvJdGdwzQ6OSjCw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-calc": { + "version": "8.2.4", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-8.2.4.tgz", + "integrity": "sha512-SmWMSJmB8MRnnULldx0lQIyhSNvuDl9HfrZkaqqE/WHAhToYsAvDq+yAsA/kIyINDszOp3Rh0GFoNuH5Ypsm3Q==", + "dependencies": { + "postcss-selector-parser": "^6.0.9", + "postcss-value-parser": "^4.2.0" + }, + "peerDependencies": { + "postcss": "^8.2.2" + } + }, + "node_modules/postcss-colormin": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-5.3.1.tgz", + "integrity": "sha512-UsWQG0AqTFQmpBegeLLc1+c3jIqBNB0zlDGRWR+dQ3pRKJL1oeMzyqmH3o2PIfn9MBdNrVPWhDbT769LxCTLJQ==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "colord": "^2.9.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-convert-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-5.1.3.tgz", + "integrity": "sha512-82pC1xkJZtcJEfiLw6UXnXVXScgtBrjlO5CBmuDQc+dlb88ZYheFsjTn40+zBVi3DkfF7iezO0nJUPLcJK3pvA==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-comments": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.1.2.tgz", + "integrity": "sha512-+L8208OVbHVF2UQf1iDmRcbdjJkuBF6IS29yBDSiWUIzpYaAhtNl6JYnYm12FnkeCwQqF5LeklOu6rAqgfBZqQ==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-duplicates": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.1.0.tgz", + "integrity": "sha512-zmX3IoSI2aoenxHV6C7plngHWWhUOV3sP1T8y2ifzxzbtnuhk1EdPwm0S1bIUNaJ2eNbWeGLEwzw8huPD67aQw==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-empty": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.1.1.tgz", + "integrity": "sha512-zPz4WljiSuLWsI0ir4Mcnr4qQQ5e1Ukc3i7UfE2XcrwKK2LIPIqE5jxMRxO6GbI3cv//ztXDsXwEWT3BHOGh3A==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-overridden": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz", + "integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-discard-unused": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz", + "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-loader": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-7.3.3.tgz", + "integrity": "sha512-YgO/yhtevGO/vJePCQmTxiaEwER94LABZN0ZMT4A0vsak9TpO+RvKRs7EmJ8peIlB9xfXCsS7M8LjqncsUZ5HA==", + "dependencies": { + "cosmiconfig": "^8.2.0", + "jiti": "^1.18.2", + "semver": "^7.3.8" + }, + "engines": { + "node": ">= 14.15.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "postcss": "^7.0.0 || ^8.0.1", + "webpack": "^5.0.0" + } + }, + "node_modules/postcss-loader/node_modules/cosmiconfig": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", + "integrity": "sha512-3rTMnFJA1tCOPwRxtgF4wd7Ab2qvDbL8jX+3smjIbS4HlZBagTlpERbdN7iAbWlrfxE3M8c27kTwTawQ7st+OQ==", + "dependencies": { + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "parse-json": "^5.0.0", + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/d-fischer" + } + }, + "node_modules/postcss-merge-idents": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz", + "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==", + "dependencies": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-merge-longhand": { + "version": "5.1.7", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz", + "integrity": "sha512-YCI9gZB+PLNskrK0BB3/2OzPnGhPkBEwmwhfYk1ilBHYVAZB7/tkTHFBAnCrvBBOmeYyMYw3DMjT55SyxMBzjQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "stylehacks": "^5.1.1" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-merge-rules": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-5.1.4.tgz", + "integrity": "sha512-0R2IuYpgU93y9lhVbO/OylTtKMVcHb67zjWIfCiKR9rWL3GUk1677LAqD/BcHizukdZEjT8Ru3oHRoAYoJy44g==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0", + "cssnano-utils": "^3.1.0", + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-font-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-5.1.0.tgz", + "integrity": "sha512-el3mYTgx13ZAPPirSVsHqFzl+BBBDrXvbySvPGFnQcTI4iNslrPaFq4muTkLZmKlGk4gyFAYUBMH30+HurREyA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-gradients": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-5.1.1.tgz", + "integrity": "sha512-VGvXMTpCEo4qHTNSa9A0a3D+dxGFZCYwR6Jokk+/3oB6flu2/PnPXAh2x7x52EkY5xlIHLm+Le8tJxe/7TNhzw==", + "dependencies": { + "colord": "^2.9.1", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-params": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-5.1.4.tgz", + "integrity": "sha512-+mePA3MgdmVmv6g+30rn57USjOGSAyuxUmkfiWpzalZ8aiBkdPYjXWtHuwJGm1v5Ojy0Z0LaSYhHaLJQB0P8Jw==", + "dependencies": { + "browserslist": "^4.21.4", + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-minify-selectors": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-5.2.1.tgz", + "integrity": "sha512-nPJu7OjZJTsVUmPdm2TcaiohIwxP+v8ha9NehQ2ye9szv4orirRU3SDdtUmKH+10nzn0bAyOXZ0UEr7OpvLehg==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.3.tgz", + "integrity": "sha512-2/u2zraspoACtrbFRnTijMiQtb4GW4BvatjaG/bCjYQo8kLTdevCUlwuBHx2sCnSyrI3x3qj4ZK1j5LQBgzmwA==", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-normalize-charset": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.1.0.tgz", + "integrity": "sha512-mSgUJ+pd/ldRGVx26p2wz9dNZ7ji6Pn8VWBajMXFf8jk7vUoSrZ2lt/wZR7DtlZYKesmZI680qjr2CeFF2fbUg==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-display-values": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-5.1.0.tgz", + "integrity": "sha512-WP4KIM4o2dazQXWmFaqMmcvsKmhdINFblgSeRgn8BJ6vxaMyaJkwAzpPpuvSIoG/rmX3M+IrRZEz2H0glrQNEA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-positions": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-5.1.1.tgz", + "integrity": "sha512-6UpCb0G4eofTCQLFVuI3EVNZzBNPiIKcA1AKVka+31fTVySphr3VUgAIULBhxZkKgwLImhzMR2Bw1ORK+37INg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-repeat-style": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-5.1.1.tgz", + "integrity": "sha512-mFpLspGWkQtBcWIRFLmewo8aC3ImN2i/J3v8YCFUwDnPu3Xz4rLohDO26lGjwNsQxB3YF0KKRwspGzE2JEuS0g==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-string": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-5.1.0.tgz", + "integrity": "sha512-oYiIJOf4T9T1N4i+abeIc7Vgm/xPCGih4bZz5Nm0/ARVJ7K6xrDlLwvwqOydvyL3RHNf8qZk6vo3aatiw/go3w==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-timing-functions": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-5.1.0.tgz", + "integrity": "sha512-DOEkzJ4SAXv5xkHl0Wa9cZLF3WCBhF3o1SKVxKQAa+0pYKlueTpCgvkFAHfk+Y64ezX9+nITGrDZeVGgITJXjg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-unicode": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-5.1.1.tgz", + "integrity": "sha512-qnCL5jzkNUmKVhZoENp1mJiGNPcsJCs1aaRmURmeJGES23Z/ajaln+EPTD+rBeNkSryI+2WTdW+lwcVdOikrpA==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-5.1.0.tgz", + "integrity": "sha512-5upGeDO+PVthOxSmds43ZeMeZfKH+/DKgGRD7TElkkyS46JXAUhMzIKiCa7BabPeIy3AQcTkXwVVN7DbqsiCew==", + "dependencies": { + "normalize-url": "^6.0.1", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-normalize-whitespace": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-5.1.1.tgz", + "integrity": "sha512-83ZJ4t3NUDETIHTa3uEg6asWjSBYL5EdkVB0sDncx9ERzOKBVJIUeDO9RyA9Zwtig8El1d79HBp0JEi8wvGQnA==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-ordered-values": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-5.1.3.tgz", + "integrity": "sha512-9UO79VUhPwEkzbb3RNpqqghc6lcYej1aveQteWY+4POIwlqkYE21HKWaLDF6lWNuqCobEAyTovVhtI32Rbv2RQ==", + "dependencies": { + "cssnano-utils": "^3.1.0", + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-idents": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz", + "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-initial": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz", + "integrity": "sha512-dE/y2XRaqAi6OvjzD22pjTUQ8eOfc6m/natGHgKFBK9DxFmIm69YmaRVQrGgFlEfc1HePIurY0TmDeROK05rIg==", + "dependencies": { + "browserslist": "^4.21.4", + "caniuse-api": "^3.0.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-reduce-transforms": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-5.1.0.tgz", + "integrity": "sha512-2fbdbmgir5AvpW9RLtdONx1QoYG2/EtqpNQbFASDlixBbAYuTcJ0dECwlqNqH7VbaUnEnh8SrxOe2sRIn24XyQ==", + "dependencies": { + "postcss-value-parser": "^4.2.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.13", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.13.tgz", + "integrity": "sha512-EaV1Gl4mUEV4ddhDnv/xtj7sxwrwxdetHdWUGnT4VJQf+4d05v6lHYZr8N573k5Z0BViss7BDhfWtKS3+sfAqQ==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-sort-media-queries": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.4.1.tgz", + "integrity": "sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==", + "dependencies": { + "sort-css-media-queries": "2.1.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "postcss": "^8.4.16" + } + }, + "node_modules/postcss-svgo": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz", + "integrity": "sha512-D75KsH1zm5ZrHyxPakAxJWtkyXew5qwS70v56exwvw542d9CRtTo78K0WeFxZB4G7JXKKMbEZtZayTGdIky/eA==", + "dependencies": { + "postcss-value-parser": "^4.2.0", + "svgo": "^2.7.0" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-unique-selectors": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-5.1.1.tgz", + "integrity": "sha512-5JiODlELrz8L2HwxfPnhOWZYWDxVHWL83ufOv84NrcgipI7TaeRsatAhK4Tr2/ZiYldpK/wBvw5BD3qfaK96GA==", + "dependencies": { + "postcss-selector-parser": "^6.0.5" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "node_modules/postcss-zindex": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz", + "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==", + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha512-ravE6m9Atw9Z/jjttRUZ+clIXogdghyZAuWJ3qEzjT+jI/dL1ifAqhZeC5VHzQp1MSt1+jxKkFNemj/iO7tVUA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/pretty-error": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-4.0.0.tgz", + "integrity": "sha512-AoJ5YMAcXKYxKhuJGdcvse+Voc6v1RgnsR3nWcYU7q4t6z0Q6T86sv5Zq8VIRbOWWFpvdGE83LtdSMNd+6Y0xw==", + "dependencies": { + "lodash": "^4.17.20", + "renderkid": "^3.0.0" + } + }, + "node_modules/pretty-time": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz", + "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/prism-react-renderer": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/prism-react-renderer/-/prism-react-renderer-1.3.5.tgz", + "integrity": "sha512-IJ+MSwBWKG+SM3b2SUfdrhC+gu01QkV2KmRQgREThBfSQRoufqRfxfHUxpG1WcaFjP+kojcFyO9Qqtpgt3qLCg==", + "peerDependencies": { + "react": ">=0.14.9" + } + }, + "node_modules/prismjs": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", + "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "~2.0.3" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "dependencies": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } + }, + "node_modules/property-information": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", + "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", + "dependencies": { + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-addr/node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==" + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pure-color": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/pure-color/-/pure-color-1.3.0.tgz", + "integrity": "sha512-QFADYnsVoBMw1srW7OVKEYjG+MbIa49s54w1MA1EDY6r2r/sTcKKYqRX1f4GYvnXP7eN/Pe9HFcX+hwzmrXRHA==" + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "dependencies": { + "inherits": "~2.0.3" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", + "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/react-base16-styling": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/react-base16-styling/-/react-base16-styling-0.6.0.tgz", + "integrity": "sha512-yvh/7CArceR/jNATXOKDlvTnPKPmGZz7zsenQ3jUwLzHkNUR0CvY3yGYJbWJ/nnxsL8Sgmt5cO3/SILVuPO6TQ==", + "dependencies": { + "base16": "^1.0.0", + "lodash.curry": "^4.0.1", + "lodash.flow": "^3.3.0", + "pure-color": "^1.2.0" + } + }, + "node_modules/react-dev-utils": { + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-12.0.1.tgz", + "integrity": "sha512-84Ivxmr17KjUupyqzFode6xKhjwuEJDROWKJy/BthkL7Wn6NJ8h4WE6k/exAv6ImS+0oZLRRW5j/aINMHyeGeQ==", + "dependencies": { + "@babel/code-frame": "^7.16.0", + "address": "^1.1.2", + "browserslist": "^4.18.1", + "chalk": "^4.1.2", + "cross-spawn": "^7.0.3", + "detect-port-alt": "^1.1.6", + "escape-string-regexp": "^4.0.0", + "filesize": "^8.0.6", + "find-up": "^5.0.0", + "fork-ts-checker-webpack-plugin": "^6.5.0", + "global-modules": "^2.0.0", + "globby": "^11.0.4", + "gzip-size": "^6.0.0", + "immer": "^9.0.7", + "is-root": "^2.1.0", + "loader-utils": "^3.2.0", + "open": "^8.4.0", + "pkg-up": "^3.1.0", + "prompts": "^2.4.2", + "react-error-overlay": "^6.0.11", + "recursive-readdir": "^2.2.2", + "shell-quote": "^1.7.3", + "strip-ansi": "^6.0.1", + "text-table": "^0.2.0" + }, + "engines": { + "node": ">=14" + } + }, + "node_modules/react-dev-utils/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/loader-utils": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.2.1.tgz", + "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", + "engines": { + "node": ">= 12.13.0" + } + }, + "node_modules/react-dev-utils/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dev-utils/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/react-dom": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + }, + "peerDependencies": { + "react": "17.0.2" + } + }, + "node_modules/react-error-overlay": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.11.tgz", + "integrity": "sha512-/6UZ2qgEyH2aqzYZgQPxEnz33NJ2gNsnHA2o5+o4wW9bLM/JYQitNP9xPhsXwC08hMMovfGe/8retsdDsczPRg==" + }, + "node_modules/react-fast-compare": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.2.tgz", + "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ==" + }, + "node_modules/react-helmet-async": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.3.0.tgz", + "integrity": "sha512-9jZ57/dAn9t3q6hneQS0wukqC2ENOBgMNVEhb/ZG9ZSxUetzVIw4iAmEU38IaVg3QGYauQPhSeUTuIUtFglWpg==", + "dependencies": { + "@babel/runtime": "^7.12.5", + "invariant": "^2.2.4", + "prop-types": "^15.7.2", + "react-fast-compare": "^3.2.0", + "shallowequal": "^1.1.0" + }, + "peerDependencies": { + "react": "^16.6.0 || ^17.0.0 || ^18.0.0", + "react-dom": "^16.6.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, + "node_modules/react-json-view": { + "version": "1.21.3", + "resolved": "https://registry.npmjs.org/react-json-view/-/react-json-view-1.21.3.tgz", + "integrity": "sha512-13p8IREj9/x/Ye4WI/JpjhoIwuzEgUAtgJZNBJckfzJt1qyh24BdTm6UQNGnyTq9dapQdrqvquZTo3dz1X6Cjw==", + "dependencies": { + "flux": "^4.0.1", + "react-base16-styling": "^0.6.0", + "react-lifecycles-compat": "^3.0.4", + "react-textarea-autosize": "^8.3.2" + }, + "peerDependencies": { + "react": "^17.0.0 || ^16.3.0 || ^15.5.4", + "react-dom": "^17.0.0 || ^16.3.0 || ^15.5.4" + } + }, + "node_modules/react-lifecycles-compat": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" + }, + "node_modules/react-loadable": { + "name": "@docusaurus/react-loadable", + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz", + "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==", + "dependencies": { + "@types/react": "*", + "prop-types": "^15.6.2" + }, + "peerDependencies": { + "react": "*" + } + }, + "node_modules/react-loadable-ssr-addon-v5-slorber": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/react-loadable-ssr-addon-v5-slorber/-/react-loadable-ssr-addon-v5-slorber-1.0.1.tgz", + "integrity": "sha512-lq3Lyw1lGku8zUEJPDxsNm1AfYHBrO9Y1+olAYwpUJ2IGFBskM0DMKok97A6LWUpHm+o7IvQBOWu9MLenp9Z+A==", + "dependencies": { + "@babel/runtime": "^7.10.3" + }, + "engines": { + "node": ">=10.13.0" + }, + "peerDependencies": { + "react-loadable": "*", + "webpack": ">=4.41.1 || 5.x" + } + }, + "node_modules/react-router": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", + "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "hoist-non-react-statics": "^3.1.0", + "loose-envify": "^1.3.1", + "path-to-regexp": "^1.7.0", + "prop-types": "^15.6.2", + "react-is": "^16.6.0", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/react-router-config": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/react-router-config/-/react-router-config-5.1.1.tgz", + "integrity": "sha512-DuanZjaD8mQp1ppHjgnnUnyOlqYXZVjnov/JzFhjLEwd3Z4dYjMSnqrEzzGThH47vpCOqPPwJM2FtthLeJ8Pbg==", + "dependencies": { + "@babel/runtime": "^7.1.2" + }, + "peerDependencies": { + "react": ">=15", + "react-router": ">=5" + } + }, + "node_modules/react-router-dom": { + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz", + "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==", + "dependencies": { + "@babel/runtime": "^7.12.13", + "history": "^4.9.0", + "loose-envify": "^1.3.1", + "prop-types": "^15.6.2", + "react-router": "5.3.4", + "tiny-invariant": "^1.0.2", + "tiny-warning": "^1.0.0" + }, + "peerDependencies": { + "react": ">=15" + } + }, + "node_modules/react-textarea-autosize": { + "version": "8.5.2", + "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.5.2.tgz", + "integrity": "sha512-uOkyjkEl0ByEK21eCJMHDGBAAd/BoFQBawYK5XItjAmCTeSbjxghd8qnt7nzsLYzidjnoObu6M26xts0YGKsGg==", + "dependencies": { + "@babel/runtime": "^7.20.13", + "use-composed-ref": "^1.3.0", + "use-latest": "^1.2.1" + }, + "engines": { + "node": ">=10" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/reading-time": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/reading-time/-/reading-time-1.5.0.tgz", + "integrity": "sha512-onYyVhBNr4CmAxFsKS7bz+uTLRakypIe4R+5A824vBSkQy/hB3fZepoVEf8OVAxzLvK+H/jm9TzpI3ETSm64Kg==" + }, + "node_modules/rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==", + "dependencies": { + "resolve": "^1.1.6" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/recursive-readdir": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.3.tgz", + "integrity": "sha512-8HrF5ZsXk5FAH9dgsx3BlUer73nIhuj+9OrQwEbLTPOBzGkL1lsFCR01am+v+0m2Cmbs1nP12hLDl5FA7EszKA==", + "dependencies": { + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==" + }, + "node_modules/regenerate-unicode-properties": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", + "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "dependencies": { + "regenerate": "^1.4.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + }, + "node_modules/regenerator-transform": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.1.tgz", + "integrity": "sha512-knzmNAcuyxV+gQCufkYcvOqX/qIIfHLv0u5x79kRxuGojfYVky1f15TzZEu2Avte8QGepvUNTnLskf8E6X6Vyg==", + "dependencies": { + "@babel/runtime": "^7.8.4" + } + }, + "node_modules/regexpu-core": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz", + "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==", + "dependencies": { + "@babel/regjsgen": "^0.8.0", + "regenerate": "^1.4.2", + "regenerate-unicode-properties": "^10.1.0", + "regjsparser": "^0.9.1", + "unicode-match-property-ecmascript": "^2.0.0", + "unicode-match-property-value-ecmascript": "^2.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.2.tgz", + "integrity": "sha512-PC5ZysNb42zpFME6D/XlIgtNGdTl8bBOCw90xQLVMpzuuubJKYDWFAEuUNc+Cn8Z8724tg2SDhDRrkVEsqfDMg==", + "dependencies": { + "rc": "1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/regjsparser": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz", + "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==", + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" + } + }, + "node_modules/regjsparser/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==", + "bin": { + "jsesc": "bin/jsesc" + } + }, + "node_modules/relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/remark-emoji": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/remark-emoji/-/remark-emoji-2.2.0.tgz", + "integrity": "sha512-P3cj9s5ggsUvWw5fS2uzCHJMGuXYRb0NnZqYlNecewXt8QBU9n5vW3DUUKOhepS8F9CwdMx9B8a3i7pqFWAI5w==", + "dependencies": { + "emoticon": "^3.2.0", + "node-emoji": "^1.10.0", + "unist-util-visit": "^2.0.3" + } + }, + "node_modules/remark-footnotes": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/remark-footnotes/-/remark-footnotes-2.0.0.tgz", + "integrity": "sha512-3Clt8ZMH75Ayjp9q4CorNeyjwIxHFcTkaektplKGl2A1jNGEUey8cKL0ZC5vJwfcD5GFGsNLImLG/NGzWIzoMQ==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx": { + "version": "1.6.22", + "resolved": "https://registry.npmjs.org/remark-mdx/-/remark-mdx-1.6.22.tgz", + "integrity": "sha512-phMHBJgeV76uyFkH4rvzCftLfKCr2RZuF+/gmVcaKrpsihyzmhXjA0BEMDaPTXG5y8qZOKPVo83NAOX01LPnOQ==", + "dependencies": { + "@babel/core": "7.12.9", + "@babel/helper-plugin-utils": "7.10.4", + "@babel/plugin-proposal-object-rest-spread": "7.12.1", + "@babel/plugin-syntax-jsx": "7.12.1", + "@mdx-js/util": "1.6.22", + "is-alphabetical": "1.0.4", + "remark-parse": "8.0.3", + "unified": "9.2.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-mdx/node_modules/@babel/core": { + "version": "7.12.9", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.9.tgz", + "integrity": "sha512-gTXYh3M5wb7FRXQy+FErKFAv90BnlOuNn1QkCK2lREoPAjrQCO49+HVSrFoe5uakFAF5eenS75KbO2vQiLrTMQ==", + "dependencies": { + "@babel/code-frame": "^7.10.4", + "@babel/generator": "^7.12.5", + "@babel/helper-module-transforms": "^7.12.1", + "@babel/helpers": "^7.12.5", + "@babel/parser": "^7.12.7", + "@babel/template": "^7.12.7", + "@babel/traverse": "^7.12.9", + "@babel/types": "^7.12.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/remark-mdx/node_modules/@babel/helper-plugin-utils": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.10.4.tgz", + "integrity": "sha512-O4KCvQA6lLiMU9l2eawBPMf1xPP8xPfB3iEQw150hOVTqj/rfXz0ThTb4HEzqQfs2Bmo5Ay8BzxfzVtBrr9dVg==" + }, + "node_modules/remark-mdx/node_modules/@babel/plugin-syntax-jsx": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.12.1.tgz", + "integrity": "sha512-1yRi7yAtB0ETgxdY9ti/p2TivUxJkTdhu/ZbF9MshVGqOx1TdB3b7xCXs49Fupgg50N45KcAsRP/ZqWjs9SRjg==", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/remark-mdx/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/remark-mdx/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/remark-mdx/node_modules/unified": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.0.tgz", + "integrity": "sha512-vx2Z0vY+a3YoTj8+pttM3tiJHCwY5UFbYdiWrwBEbHmK8pvsPj2rtAX2BFfgXen8T39CJWblWRDT4L5WGXtDdg==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-parse": { + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-8.0.3.tgz", + "integrity": "sha512-E1K9+QLGgggHxCQtLt++uXltxEprmWzNfg+MxpfHsZlrddKzZ/hZyWHDbK3/Ap8HJQqYJRXP+jHczdL6q6i85Q==", + "dependencies": { + "ccount": "^1.0.0", + "collapse-white-space": "^1.0.2", + "is-alphabetical": "^1.0.0", + "is-decimal": "^1.0.0", + "is-whitespace-character": "^1.0.0", + "is-word-character": "^1.0.0", + "markdown-escapes": "^1.0.0", + "parse-entities": "^2.0.0", + "repeat-string": "^1.5.4", + "state-toggle": "^1.0.0", + "trim": "0.0.1", + "trim-trailing-lines": "^1.0.0", + "unherit": "^1.0.4", + "unist-util-remove-position": "^2.0.0", + "vfile-location": "^3.0.0", + "xtend": "^4.0.1" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/remark-squeeze-paragraphs": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/remark-squeeze-paragraphs/-/remark-squeeze-paragraphs-4.0.0.tgz", + "integrity": "sha512-8qRqmL9F4nuLPIgl92XUuxI3pFxize+F1H0e/W3llTk0UsjJaj01+RrirkMw7P21RKe4X6goQhYRSvNWX+70Rw==", + "dependencies": { + "mdast-squeeze-paragraphs": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/renderkid": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-3.0.0.tgz", + "integrity": "sha512-q/7VIQA8lmM1hF+jn+sFSPWGlMkSAeNYcPLmDQx2zzuiDfaLrOmumR8iaUKlenFgh0XRPIUeSPlH3A+AW3Z5pg==", + "dependencies": { + "css-select": "^4.1.3", + "dom-converter": "^0.2.0", + "htmlparser2": "^6.1.0", + "lodash": "^4.17.21", + "strip-ansi": "^6.0.1" + } + }, + "node_modules/renderkid/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/renderkid/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/renderkid/node_modules/htmlparser2": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", + "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.0.0", + "domutils": "^2.5.2", + "entities": "^2.0.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/require-like": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/require-like/-/require-like-0.1.2.tgz", + "integrity": "sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==", + "engines": { + "node": "*" + } + }, + "node_modules/requires-port": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", + "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==" + }, + "node_modules/resolve": { + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "dependencies": { + "is-core-module": "^2.11.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/resolve-pathname": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", + "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha512-/Fpe5guzJk1gPqdJLJR5u7eG/gNY4nImjbRDaVWVMRhne55TCmj2i9Q+54PBRfatRC8v/rIiv9BN0pMd9OV5EQ==", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/rtl-detect": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz", + "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ==" + }, + "node_modules/rtlcss": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-3.5.0.tgz", + "integrity": "sha512-wzgMaMFHQTnyi9YOwsx9LjOxYXJPzS8sYnFaKm6R5ysvTkwzHiB0vxnbHwchHQT65PTdBjDG21/kQBWI7q9O7A==", + "dependencies": { + "find-up": "^5.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.3.11", + "strip-json-comments": "^3.1.1" + }, + "bin": { + "rtlcss": "bin/rtlcss.js" + } + }, + "node_modules/rtlcss/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/rtlcss/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/scheduler": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "dependencies": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/search-insights": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.6.0.tgz", + "integrity": "sha512-vU2/fJ+h/Mkm/DJOe+EaM5cafJv/1rRTZpGJTuFPf/Q5LjzgMDsqPdSaZsAe+GAWHHsfsu+rQSAn6c8IGtBEVw==", + "peer": true, + "engines": { + "node": ">=8.16.0" + } + }, + "node_modules/section-matter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", + "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "dependencies": { + "extend-shallow": "^2.0.1", + "kind-of": "^6.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/select-hose": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", + "integrity": "sha512-mEugaLK+YfkijB4fx0e6kImuJdCIt2LxCRcbEYPqRGCs4F2ogyfZU5IAZRdjCP8JPq2AtdNoC/Dux63d9Kiryg==" + }, + "node_modules/selfsigned": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", + "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "dependencies": { + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz", + "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/send/node_modules/debug/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/send/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/serve-handler": { + "version": "6.1.5", + "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz", + "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==", + "dependencies": { + "bytes": "3.0.0", + "content-disposition": "0.5.2", + "fast-url-parser": "1.1.3", + "mime-types": "2.1.18", + "minimatch": "3.1.2", + "path-is-inside": "1.0.2", + "path-to-regexp": "2.2.1", + "range-parser": "1.2.0" + } + }, + "node_modules/serve-handler/node_modules/path-to-regexp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz", + "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==" + }, + "node_modules/serve-index": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", + "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==", + "dependencies": { + "accepts": "~1.3.4", + "batch": "0.6.1", + "debug": "2.6.9", + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/serve-index/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-index/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==" + }, + "node_modules/serve-index/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + }, + "node_modules/serve-index/node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/shell-quote": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz", + "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/shelljs": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz", + "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==", + "dependencies": { + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" + }, + "bin": { + "shjs": "bin/shjs" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/sirv": { + "version": "1.0.19", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.19.tgz", + "integrity": "sha512-JuLThK3TnZG1TAKDwNIqNq6QA2afLOCcm+iE8D1Kj3GA40pSPsxQjjJl0J8X3tsR7T+CP1GavpzLwYkgVLWrZQ==", + "dependencies": { + "@polka/url": "^1.0.0-next.20", + "mrmime": "^1.0.0", + "totalist": "^1.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" + }, + "node_modules/sitemap": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz", + "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==", + "dependencies": { + "@types/node": "^17.0.5", + "@types/sax": "^1.2.1", + "arg": "^5.0.0", + "sax": "^1.2.4" + }, + "bin": { + "sitemap": "dist/cli.js" + }, + "engines": { + "node": ">=12.0.0", + "npm": ">=5.6.0" + } + }, + "node_modules/sitemap/node_modules/@types/node": { + "version": "17.0.45", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", + "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/sockjs": { + "version": "0.3.24", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", + "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==", + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^8.3.2", + "websocket-driver": "^0.7.4" + } + }, + "node_modules/sort-css-media-queries": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz", + "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==", + "engines": { + "node": ">= 6.3.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/space-separated-tokens": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", + "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/spdy": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", + "dependencies": { + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/spdy-transport": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", + "dependencies": { + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==" + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "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" + }, + "node_modules/state-toggle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/state-toggle/-/state-toggle-1.0.3.tgz", + "integrity": "sha512-d/5Z4/2iiCnHw6Xzghyhb+GcmF89bxwgXG60wjIiZaxnymbyOmI8Hk4VqHXiVVp6u2ysaskFfXg3ekCj4WNftQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/std-env": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.3.3.tgz", + "integrity": "sha512-Rz6yejtVyWnVjC1RFvNmYL10kgjC49EOghxWn0RFqlCHGFpQx+Xe7yW3I4ceK1SGrWIGMjD5Kbue8W/udkbMJg==" + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", + "dependencies": { + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom-string": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", + "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-to-object": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/style-to-object/-/style-to-object-0.3.0.tgz", + "integrity": "sha512-CzFnRRXhzWIdItT3OmF8SQfWyahHhjq3HwcMNCNLn+N7klOOqPjMeG/4JSu77D7ypZdGvSzvkrbyeTMizz2VrA==", + "dependencies": { + "inline-style-parser": "0.1.1" + } + }, + "node_modules/stylehacks": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-5.1.1.tgz", + "integrity": "sha512-sBpcd5Hx7G6seo7b1LkpttvTz7ikD0LlH5RmdcBNb6fFR0Fl7LQwHDFr300q4cwUqi+IYrFGmsIHieMBfnN/Bw==", + "dependencies": { + "browserslist": "^4.21.4", + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >=14.0" + }, + "peerDependencies": { + "postcss": "^8.2.15" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/svgo/node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/svgo/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/svgo/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/svgo/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/svgo/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.18.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.18.2.tgz", + "integrity": "sha512-Ah19JS86ypbJzTzvUCX7KOsEIhDaRONungA4aYBjEP3JZRf4ocuDzTg4QWZnPn9DEMiMYGJPiSOy7aykoCc70w==", + "dependencies": { + "@jridgewell/source-map": "^0.3.3", + "acorn": "^8.8.2", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.9", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.9.tgz", + "integrity": "sha512-ZuXsqE07EcggTWQjXUj+Aot/OMcD0bMKGgF63f7UxYcu5/AJF53aIpK1YoP5xR9l6s/Hy2b+t1AM0bLNPRuhwA==", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.17", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.16.8" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/terser/node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "node_modules/tiny-invariant": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.1.tgz", + "integrity": "sha512-AD5ih2NlSssTCwsMznbvwMZpJ1cbhkGd2uueNxzv2jDlEeZdU04JQfRnggJQ8DrcVBGjAsCKwFBbDlVNtEMlzw==" + }, + "node_modules/tiny-warning": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/trim": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz", + "integrity": "sha512-YzQV+TZg4AxpKxaTHK3c3D+kRDCGVEE7LemdlQZoQXn0iennk10RsIoY6ikzAqJTc9Xjl9C1/waHom/J86ziAQ==", + "deprecated": "Use String.prototype.trim() instead" + }, + "node_modules/trim-trailing-lines": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/trim-trailing-lines/-/trim-trailing-lines-1.1.4.tgz", + "integrity": "sha512-rjUWSqnfTNrjbB9NQWfPMH/xRK1deHeGsHoVfpxJ++XeYXE0d6B1En37AHfw3jtfTU7dzMzZL2jjpe8Qb5gLIQ==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/trough": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz", + "integrity": "sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/tslib": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.0.tgz", + "integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==" + }, + "node_modules/type-fest": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz", + "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==", + "engines": { + "node": ">=12.20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/type-is/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/type-is/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/ua-parser-js": { + "version": "1.0.35", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.35.tgz", + "integrity": "sha512-fKnGuqmTBnIE+/KXSzCn4db8RTigUzw1AN0DmdU6hJovUTbYJKyqj+8Mt1c4VfRDnOVJnENmfYkIPZ946UrSAA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/unherit": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/unherit/-/unherit-1.1.3.tgz", + "integrity": "sha512-Ft16BJcnapDKp0+J/rqFC3Rrk6Y/Ng4nzsC028k2jdDII/rdZ7Wd3pPT/6+vIIxRagwRc9K0IUX0Ra4fKvw+WQ==", + "dependencies": { + "inherits": "^2.0.0", + "xtend": "^4.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/unicode-canonical-property-names-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", + "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-ecmascript": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz", + "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==", + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^2.0.0", + "unicode-property-aliases-ecmascript": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.1.0.tgz", + "integrity": "sha512-qxkjQt6qjg/mYscYMC0XKRn3Rh0wFPlfxB0xkt9CfyTvpX1Ra0+rAmdX2QyAobptSEvuy4RtpPRui6XkV+8wjA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz", + "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/unified": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/unified/-/unified-9.2.2.tgz", + "integrity": "sha512-Sg7j110mtefBD+qunSLO1lqOEKdrwBFBrR6Qd8f4uwkhWNlbkaqwHse6e7QvD3AP/MNoJdEDLaf8OxYyoWgorQ==", + "dependencies": { + "bail": "^1.0.0", + "extend": "^3.0.0", + "is-buffer": "^2.0.0", + "is-plain-obj": "^2.0.0", + "trough": "^1.0.0", + "vfile": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/unist-builder": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-builder/-/unist-builder-2.0.3.tgz", + "integrity": "sha512-f98yt5pnlMWlzP539tPc4grGMsFaQQlP/vM396b00jngsiINumNmsY8rkXjfoi1c6QaM8nQ3vaGDuoKWbe/1Uw==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-generated": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/unist-util-generated/-/unist-util-generated-1.1.6.tgz", + "integrity": "sha512-cln2Mm1/CZzN5ttGK7vkoGw+RZ8VcUH6BtGbq98DDtRGquAAOXig1mrBQYelOwMXYS8rK+vZDyyojSjp7JX+Lg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-is": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz", + "integrity": "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-position": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-3.1.0.tgz", + "integrity": "sha512-w+PkwCbYSFw8vpgWD0v7zRCl1FpY3fjDSQ3/N/wNd9Ffa4gPi8+4keqt99N3XW6F99t/mUzp2xAhNmfKWp95QA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/unist-util-remove/-/unist-util-remove-2.1.0.tgz", + "integrity": "sha512-J8NYPyBm4baYLdCbjmf1bhPu45Cr1MWTm77qd9istEkzWpnN6O9tMsEbB2JhNnBCqGENRqEWomQ+He6au0B27Q==", + "dependencies": { + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-remove-position": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-2.0.1.tgz", + "integrity": "sha512-fDZsLYIe2uT+oGFnuZmy73K6ZxOPG/Qcm+w7jbEjaFcJgbQ6cqjs/eSPzXhsmGpAsWPkqZM9pYjww5QTn3LHMA==", + "dependencies": { + "unist-util-visit": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-stringify-position": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz", + "integrity": "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==", + "dependencies": { + "@types/unist": "^2.0.2" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-2.0.3.tgz", + "integrity": "sha512-iJ4/RczbJMkD0712mGktuGpm/U4By4FfDonL7N/9tATGIF4imikjOuagyMY53tnZq3NP6BcmlrHhEKAfGWjh7Q==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0", + "unist-util-visit-parents": "^3.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/unist-util-visit-parents": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-3.1.1.tgz", + "integrity": "sha512-1KROIZWo6bcMrZEwiH2UrXDyalAa0uqzWCxCJj6lPOvTve2WkfgCytoDTPaMnodXh1WrXOq0haVYHj99ynJlsg==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-is": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-browserslist-db": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "escalade": "^3.1.1", + "picocolors": "^1.0.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/update-notifier/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/uri-js/node_modules/punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "engines": { + "node": ">=6" + } + }, + "node_modules/url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", + "dependencies": { + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true + } + } + }, + "node_modules/url-loader/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/url-loader/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/url-loader/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha512-NjFKA0DidqPa5ciFcSrXnAltTtzz84ogy+NebPvfEgAck0+TNg4UJ4IN+fB7zRZfbgUf0syOo9MDxFkDSMuFaQ==", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/use-composed-ref": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.3.0.tgz", + "integrity": "sha512-GLMG0Jc/jiKov/3Ulid1wbv3r54K9HlMW29IWcDFPEqFkSO2nS0MuefWgMJpeHQ9YJeXDL3ZUF+P3jdXlZX/cQ==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/use-isomorphic-layout-effect": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.2.tgz", + "integrity": "sha512-49L8yCO3iGT/ZF9QttjwLF/ZD9Iwto5LnH5LmEdk/6cFmXddqi2ulF0edxTwjj+7mqvpVVGQWvbXZdn32wRSHA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-latest": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.1.tgz", + "integrity": "sha512-xA+AVm/Wlg3e2P/JiItTziwS7FK92LWrDB0p+hgXloIMuVCeJJ8v6f0eeHyPZaJrM+usM1FkFfbNCrJGs8A/zw==", + "dependencies": { + "use-isomorphic-layout-effect": "^1.1.1" + }, + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + } + } + }, + "node_modules/use-sync-external-store": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", + "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "peerDependencies": { + "react": "^16.8.0 || ^17.0.0 || ^18.0.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "node_modules/utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha512-Z0DbgELS9/L/75wZbro8xAnT50pBVFQZ+hUEueGDU5FN51YSCYM+jdxsfCiHjwNP/4LCDD0i/graKpeBnOXKRA==" + }, + "node_modules/utility-types": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", + "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/value-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", + "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vfile": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz", + "integrity": "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==", + "dependencies": { + "@types/unist": "^2.0.0", + "is-buffer": "^2.0.0", + "unist-util-stringify-position": "^2.0.0", + "vfile-message": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-location": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz", + "integrity": "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/vfile-message": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz", + "integrity": "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==", + "dependencies": { + "@types/unist": "^2.0.0", + "unist-util-stringify-position": "^2.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" + } + }, + "node_modules/wait-on": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/wait-on/-/wait-on-6.0.1.tgz", + "integrity": "sha512-zht+KASY3usTY5u2LgaNqn/Cd8MukxLGjdcZxT2ns5QzDmTFc4XoWBgC+C/na+sMRZTuVygQoMYwdcVjHnYIVw==", + "dependencies": { + "axios": "^0.25.0", + "joi": "^17.6.0", + "lodash": "^4.17.21", + "minimist": "^1.2.5", + "rxjs": "^7.5.4" + }, + "bin": { + "wait-on": "bin/wait-on" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/web-namespaces": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz", + "integrity": "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/webpack": { + "version": "5.88.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.1.tgz", + "integrity": "sha512-FROX3TxQnC/ox4N+3xQoWZzvGXSuscxR32rbzjpXgEzWudJFEJBpdlkkob2ylrv5yzzufD1zph1OoFsLtm6stQ==", + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.0", + "@webassemblyjs/ast": "^1.11.5", + "@webassemblyjs/wasm-edit": "^1.11.5", + "@webassemblyjs/wasm-parser": "^1.11.5", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.9.0", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.15.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.7", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-bundle-analyzer": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.9.0.tgz", + "integrity": "sha512-+bXGmO1LyiNx0i9enBu3H8mv42sj/BJWhZNFwjz92tVnBa9J3JMGo2an2IXlEleoDOPn/Hofl5hr/xCpObUDtw==", + "dependencies": { + "@discoveryjs/json-ext": "0.5.7", + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^7.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/webpack-bundle-analyzer/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", + "integrity": "sha512-hj5CYrY0bZLB+eTO+x/j67Pkrquiy7kWepMHmUMoPsmcUaeEnQJqFzHJOyxgWlq746/wUuA64p9ta34Kyb01pA==", + "dependencies": { + "colorette": "^2.0.10", + "memfs": "^3.4.3", + "mime-types": "^2.1.31", + "range-parser": "^1.2.1", + "schema-utils": "^4.0.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-middleware/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-middleware/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/webpack-dev-middleware/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-middleware/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-middleware/node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack-dev-middleware/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server": { + "version": "4.15.1", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.15.1.tgz", + "integrity": "sha512-5hbAst3h3C3L8w6W4P96L5vaV0PxSmJhxZvWKYIdgxOQm8pNZ5dEOmmSLBVpP85ReeyRt6AS1QJNyo/oFFPeVA==", + "dependencies": { + "@types/bonjour": "^3.5.9", + "@types/connect-history-api-fallback": "^1.3.5", + "@types/express": "^4.17.13", + "@types/serve-index": "^1.9.1", + "@types/serve-static": "^1.13.10", + "@types/sockjs": "^0.3.33", + "@types/ws": "^8.5.5", + "ansi-html-community": "^0.0.8", + "bonjour-service": "^1.0.11", + "chokidar": "^3.5.3", + "colorette": "^2.0.10", + "compression": "^1.7.4", + "connect-history-api-fallback": "^2.0.0", + "default-gateway": "^6.0.3", + "express": "^4.17.3", + "graceful-fs": "^4.2.6", + "html-entities": "^2.3.2", + "http-proxy-middleware": "^2.0.3", + "ipaddr.js": "^2.0.1", + "launch-editor": "^2.6.0", + "open": "^8.0.9", + "p-retry": "^4.5.0", + "rimraf": "^3.0.2", + "schema-utils": "^4.0.0", + "selfsigned": "^2.1.1", + "serve-index": "^1.9.1", + "sockjs": "^0.3.24", + "spdy": "^4.0.2", + "webpack-dev-middleware": "^5.3.1", + "ws": "^8.13.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.37.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack": { + "optional": true + }, + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-dev-server/node_modules/ajv": { + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/webpack-dev-server/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, + "node_modules/webpack-dev-server/node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/webpack-dev-server/node_modules/schema-utils": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz", + "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==", + "dependencies": { + "@types/json-schema": "^7.0.9", + "ajv": "^8.9.0", + "ajv-formats": "^2.1.1", + "ajv-keywords": "^5.1.0" + }, + "engines": { + "node": ">= 12.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpack-dev-server/node_modules/ws": { + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/webpack-merge": { + "version": "5.9.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", + "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack/node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack/node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/webpackbar": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz", + "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==", + "dependencies": { + "chalk": "^4.1.0", + "consola": "^2.15.3", + "pretty-time": "^1.1.0", + "std-env": "^3.0.1" + }, + "engines": { + "node": ">=12" + }, + "peerDependencies": { + "webpack": "3 || 4 || 5" + } + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", + "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/websocket-extensions": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", + "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/widest-line": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-4.0.1.tgz", + "integrity": "sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==", + "dependencies": { + "string-width": "^5.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/wildcard": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.1.tgz", + "integrity": "sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ==" + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/ws": { + "version": "7.5.9", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", + "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/xml-js": { + "version": "1.6.11", + "resolved": "https://registry.npmjs.org/xml-js/-/xml-js-1.6.11.tgz", + "integrity": "sha512-7rVi2KMfwfWFl+GpPg6m80IVMWXLRjO+PxTq7V2CDhoGak0wzYzFgUY2m4XJ47OGdXd8eLE8EmwfAmdjw7lC1g==", + "dependencies": { + "sax": "^1.2.4" + }, + "bin": { + "xml-js": "bin/cli.js" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/zwitch": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-1.0.5.tgz", + "integrity": "sha512-V50KMwwzqJV0NpZIZFwfOD5/lyny3WlSzRiXgA0G7VUnRlqttta1L6UQIHzd6EuBY/cHGfwTIck7w1yH6Q5zUw==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + } + } +} diff --git a/website/package.json b/website/package.json new file mode 100644 index 00000000..d4689237 --- /dev/null +++ b/website/package.json @@ -0,0 +1,46 @@ +{ + "name": "ellmental", + "version": "0.0.1", + "private": true, + "scripts": { + "docusaurus": "docusaurus", + "start": "docusaurus start", + "build": "docusaurus build", + "swizzle": "docusaurus swizzle", + "deploy": "docusaurus deploy", + "clear": "docusaurus clear", + "serve": "docusaurus serve", + "write-translations": "docusaurus write-translations", + "write-heading-ids": "docusaurus write-heading-ids", + "typecheck": "tsc" + }, + "dependencies": { + "@docusaurus/core": "2.4.1", + "@docusaurus/preset-classic": "2.4.1", + "@mdx-js/react": "^1.6.22", + "clsx": "^1.2.1", + "prism-react-renderer": "^1.3.5", + "react": "^17.0.2", + "react-dom": "^17.0.2" + }, + "devDependencies": { + "@docusaurus/module-type-aliases": "2.4.1", + "@tsconfig/docusaurus": "^1.0.5", + "typescript": "^4.7.4" + }, + "browserslist": { + "production": [ + ">0.5%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + }, + "engines": { + "node": ">=16.14" + } +} diff --git a/website/sidebars.js b/website/sidebars.js new file mode 100644 index 00000000..487077eb --- /dev/null +++ b/website/sidebars.js @@ -0,0 +1,33 @@ +/** + * Creating a sidebar enables you to: + - create an ordered group of docs + - render a sidebar for each doc of that group + - provide next/previous navigation + + The sidebars can be generated from the filesystem, or explicitly defined here. + + Create as many sidebars as you want. + */ + +// @ts-check + +/** @type {import('@docusaurus/plugin-content-docs').SidebarsConfig} */ +const sidebars = { + // By default, Docusaurus generates a sidebar from the docs folder structure + docs: ['introduction', 'getting_started', 'deployments', 'contributing'], + + // But you can create a sidebar manually + /* + tutorialSidebar: [ + 'intro', + 'hello', + { + type: 'category', + label: 'Tutorial', + items: ['tutorial-basics/create-a-document'], + }, + ], + */ +}; + +module.exports = sidebars; diff --git a/website/src/components/HomepageFeatures/styles.module.css b/website/src/components/HomepageFeatures/styles.module.css new file mode 100644 index 00000000..b248eb2e --- /dev/null +++ b/website/src/components/HomepageFeatures/styles.module.css @@ -0,0 +1,11 @@ +.features { + display: flex; + align-items: center; + padding: 2rem 0; + width: 100%; +} + +.featureSvg { + height: 200px; + width: 200px; +} diff --git a/website/src/css/custom.css b/website/src/css/custom.css new file mode 100644 index 00000000..2bc6a4cf --- /dev/null +++ b/website/src/css/custom.css @@ -0,0 +1,30 @@ +/** + * Any CSS included here will be global. The classic template + * bundles Infima by default. Infima is a CSS framework designed to + * work well for content-centric websites. + */ + +/* You can override the default Infima variables here. */ +:root { + --ifm-color-primary: #2e8555; + --ifm-color-primary-dark: #29784c; + --ifm-color-primary-darker: #277148; + --ifm-color-primary-darkest: #205d3b; + --ifm-color-primary-light: #33925d; + --ifm-color-primary-lighter: #359962; + --ifm-color-primary-lightest: #3cad6e; + --ifm-code-font-size: 95%; + --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); +} + +/* For readability concerns, you should choose a lighter palette in dark mode. */ +[data-theme='dark'] { + --ifm-color-primary: #25c2a0; + --ifm-color-primary-dark: #21af90; + --ifm-color-primary-darker: #1fa588; + --ifm-color-primary-darkest: #1a8870; + --ifm-color-primary-light: #29d5b0; + --ifm-color-primary-lighter: #32d8b4; + --ifm-color-primary-lightest: #4fddbf; + --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); +} diff --git a/website/src/pages/indexe.module.css b/website/src/pages/indexe.module.css new file mode 100644 index 00000000..9f71a5da --- /dev/null +++ b/website/src/pages/indexe.module.css @@ -0,0 +1,23 @@ +/** + * CSS files with the .module.css suffix will be treated as CSS modules + * and scoped locally. + */ + +.heroBanner { + padding: 4rem 0; + text-align: center; + position: relative; + overflow: hidden; +} + +@media screen and (max-width: 996px) { + .heroBanner { + padding: 2rem; + } +} + +.buttons { + display: flex; + align-items: center; + justify-content: center; +} diff --git a/website/static/.nojekyll b/website/static/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/website/static/img/eLLMental logo with frame.png b/website/static/img/eLLMental logo with frame.png new file mode 100644 index 0000000000000000000000000000000000000000..21102773393f7afc498c98b01f534a1a9a6f95d8 GIT binary patch literal 60693 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

}UBB0}Ji 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 literal 0 HcmV?d00001 diff --git a/website/tsconfig.json b/website/tsconfig.json new file mode 100644 index 00000000..6f475698 --- /dev/null +++ b/website/tsconfig.json @@ -0,0 +1,7 @@ +{ + // This file is not used in compilation. It is here just for a nice editor experience. + "extends": "@tsconfig/docusaurus/tsconfig.json", + "compilerOptions": { + "baseUrl": "." + } +} From d5433168faabd60ce70ebf7c67d9e120b466dd76 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Juan=20Jos=C3=A9=20Rodr=C3=ADguez=20L=C3=B3pez?= Date: Fri, 7 Jul 2023 13:29:05 +0100 Subject: [PATCH 07/18] Create CNAME --- CNAME | 1 + 1 file changed, 1 insertion(+) create mode 100644 CNAME diff --git a/CNAME b/CNAME new file mode 100644 index 00000000..5f3a307c --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +docs.ellmental.com \ No newline at end of file From f212e65bfaf4867df6d493aaa61dab3df7040636 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Fri, 7 Jul 2023 16:16:07 +0100 Subject: [PATCH 08/18] test gh action --- .github/workflows/wf_publish-docs.yml | 4 +++- CNAME | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) delete mode 100644 CNAME diff --git a/.github/workflows/wf_publish-docs.yml b/.github/workflows/wf_publish-docs.yml index 1d3fdb86..36539790 100644 --- a/.github/workflows/wf_publish-docs.yml +++ b/.github/workflows/wf_publish-docs.yml @@ -1,7 +1,9 @@ name: Publish documentation on: - push: +# TODO: Change this before merge -> + #push: + pull_request: branches: - main paths: diff --git a/CNAME b/CNAME deleted file mode 100644 index 5f3a307c..00000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -docs.ellmental.com \ No newline at end of file From 2381a486a99e50834941720c00e8d6cdc59375c4 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Fri, 7 Jul 2023 16:24:31 +0100 Subject: [PATCH 09/18] clean introduction --- website/docs/01_introduction.md | 124 -------------------------------- 1 file changed, 124 deletions(-) diff --git a/website/docs/01_introduction.md b/website/docs/01_introduction.md index 0c6b373f..35072011 100644 --- a/website/docs/01_introduction.md +++ b/website/docs/01_introduction.md @@ -24,127 +24,3 @@ challenges that motivated us to start building this project: Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner by removing all common headaches while integrating AI in your development environment. - - -# Getting started - -The main package eLLMental offers is called `ellmental-core`. In this package, we provide an API implementation for your -AI applications. This API currently support two kind of operations: write (HTTP POST), and read (HTTP GET). You can provide -your own implementation for these two operations, as you can see in the `SemanticSearch.kt` file. - -Technical-wise, `ellmental-core` is built under the following stack: - -| | | -|----------------------|--------| -| Package Manager | Gradle | -| Programming Language | Kotlin | -| JVM Version | 17 | - - -## Modules - -The eLLMental project also implements three different AI modules: - -1. **A vector store:** Database or repository used to house and handle vector representations of words or phrases, known - as embeddings. eLLMental implements different databases that support vector columns, like Pinecone or Supabase. -2. **Embedding generator:** The service that is responsible for converting raw text data into representative numerical - vectors, also known as embeddings. -3. **Semantic search module:** To search similarities in the vector store. - Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle - between two vectors. The vectors close to each other (having a smaller angle between them) - indicate more similar content. - -> An example of how these modules are use can be found in the `semantic-search-service-demo` project. - -These modules work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help -you set up these different modules. - -## The YOLO tool - -The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI -modules. To start using it you just need to run the following command: - -`yolo init` - -This command will create a `yolo.json` file, in which you will configure your different scripts. Here's an example: - -```json -{ - "name": "SemanticSearch", - "description": "Description of the app", - "commands": [ - { - "name": "deploy", - "description": "command description", - "script": "npm run deploy", - "args": [{ ... }] - } - ], - "modules": { - "vector-store": "Pinecone", - "embedding-generator": { - "llm": "openAI", - "api-url": "url", - "api-token": "token" - } - } -} -``` - -This `yolo.json` file, will allow you to run `yolo run deploy`, that will execute the code inside the `script` key. The final -objective for this CLI tool is that it will help us composing different modules too, so we can abstract the boiler-plate code -as much as possible. - - -# Contributing - -We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report -bugs or suggest enhancements. - -If your plan is to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` -folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` -file, in the `includes` list. This way we will keep the same structure for all of them. - -## Reporting bugs - -Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you -don't find any, go ahead and create an issue including as many details as possible. - -> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the -> body of your new one by writing its number like this => #42 (Github will autolink it for you). - -Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the -problem: - -- Use a clear and descriptive title for the issue to identify the problem. -- Describe the exact steps which reproduce the problem in as many details as possible. -- Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable - snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. -- Describe the behavior you observed after following the steps and point out what exactly is the problem with that - behavior. -- Explain which behavior you expected to see instead and why. -- If the problem is related to performance or memory, include a CPU profile capture with your report. - -> Remember to label the issue with a "bug" tag - -## Suggesting Enhancements - -Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: - -- Use a clear and descriptive title for the issue to identify the suggestion. -- Provide a step-by-step description of the suggested enhancement in as many details as possible. -- Provide specific examples to demonstrate the steps. Include copy/pasteable snippets which you use in those examples, - as Markdown code blocks. -- Describe the current behavior and explain which behavior you expected to see instead and why. -- Explain why this enhancement would be useful to most Booster users and isn't something that can or should be - implemented as a community package. -- List some other libraries or frameworks where this enhancement exists. - -> Remember to label the issue wit an "enhancement" tag - -# License - -This eLLMental project is licensed under the Business source license. You can take a look at the details -in [this article](https://timreview.ca/article/691). - -eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). From 33f40403a06425e8933a3f711d8b95d1014b0bf4 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Mon, 10 Jul 2023 13:46:09 +0100 Subject: [PATCH 10/18] add implementation instructions plus correct mispelling --- README.md | 79 ++++++++++++++++++++---------- website/docs/01_introduction.md | 13 +++-- website/docs/02_getting_started.md | 60 +++++++++++++++++------ website/docs/04_contributing.md | 9 ++-- 4 files changed, 107 insertions(+), 54 deletions(-) diff --git a/README.md b/README.md index b793d792..25e3626e 100644 --- a/README.md +++ b/README.md @@ -4,41 +4,36 @@ # Introduction -The eLLMental project raises from the necessity of developer's to have a single framework that joins flexibility, -efficiency and productivity while building the different block an AI application. During this time, we've seen different +The eLLMental project raises from the necessity of developers to have a single framework that joins flexibility, +efficiency, and productivity while building the different blocks of an AI application. During this time, we've seen different challenges that motivated us to start building this project: 1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools custom-made for LLMs, making it more difficult for developers to understand how LLMs work nowadays. 2. **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right - stack. Also, evaluating LLMs performance is not straightforward. + stack. Also, evaluating LLMs' performance is not straightforward. 3. **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be both technically challenging and resource-intensive. 4. **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be adequately addressed by existing MLOps platforms. -5. **Flexibility:** Application's needs grow constantly, and so does AI applications. That's why we are adopting a +5. **Flexibility:** Regular applications need to grow constantly, and so do AI applications. That's why we are adopting a flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI applications. -Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner by -removing all common headaches while integrating AI in your development environment. +Overall, eLLMental is designed to help software engineers efficiently build AI-driven applications by +removing all common headaches while integrating AI into your development environment. # Getting started The main package eLLMental offers is called `ellmental-core`. In this package, we provide an API implementation for your -AI applications. This API currently support two kind of operations: write (HTTP POST), and read (HTTP GET). You can provide -your own implementation for these two operations, as you can see in the `SemanticSearch.kt` file. +AI applications. This API currently supports two kinds of operations: write, and read. These two kinds of operations +can be easily mapped to any kind of API protocol. By default, we offer a REST-style HTTP mapping, but you can easily +map it to GraphQL or gRPC. -Technical-wise, `ellmental-core` is built under the following stack: - -| | | -|----------------------|--------| -| Package Manager | Gradle | -| Programming Language | Kotlin | -| JVM Version | 17 | +> `ellmental-core` is built using Kotlin with JVM 17 and using gradle as our package manager. ## Modules @@ -51,25 +46,57 @@ The eLLMental project also implements three different AI modules: vectors, also known as embeddings. 3. **Semantic search module:** To search similarities in the vector store. Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle - between two vectors. The vectors close to each other (having a smaller angle between them) + between two vectors. The vectors that are close to each other (having a smaller angle between them) indicate more similar content. -> An example of how these modules are use can be found in the `semantic-search-service-demo` project. +> An example of how these modules are used can be found in the `semantic-search-service-demo` project. + +## Creating a semantic index + +In the case that you want to create your own semantic index, we recommend you to follow the guidelines below. Anyways +you can always see an example app in the [semantic search demo](https://github.com/theam/eLLMental/tree/main/semantic-search-service-demo) from +the repo. + +First, you'll need to implement the `API.kt` module from `ellmental-core`. This includes two main operations: `read` and `write`. + +Second, you'll have to select the embedding's model you want to use. If you want to use the implementations we provide, you +can use the ones in the `embeddings-model` module. + +Third, you'll need your implementation to call the Vector store you'd want to use. Existing vector stores implementation are present in +the `vector-store` module. + +Finally, you'll need to put everything together in the Semantic Search module. Here's an example with also the `Main.kt` file: + +```kotlin +// Semantic search module +fun default(): SemanticSearch = + with(OpenAIEmbeddingsModel("API KEY")) { + with(PineconeVectorStore()) { + with(SemanticSearch()) { + this + } + } + } -These modules work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help -you set up these different modules. +``` -The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI -modules and components. +```Main.kt +SemanticSearch.default().api.runHttp(port = 8080) +``` + +After that, you can run `./gradlew ::run` to serve your API. + +## Creating your own module + +If you plan to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` +folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` +file, in the `includes` list. This way we will keep the same structure for all of them. # Contributing We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report bugs or suggest enhancements. -If your plan is to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` -folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` -file, in the `includes` list. This way we will keep the same structure for all of them. ## Reporting bugs @@ -77,7 +104,7 @@ Before creating a bug report, please search for similar issues to make sure that don't find any, go ahead and create an issue including as many details as possible. > If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the -> body of your new one by writing its number like this => #42 (Github will autolink it for you). +> body of your new one by writing its number like this => #42 (Github will auto-link it for you). Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the problem: @@ -106,7 +133,7 @@ Enhancement suggestions are tracked as GitHub issues. Make sure you provide the implemented as a community package. - List some other libraries or frameworks where this enhancement exists. -> Remember to label the issue wit an "enhancement" tag +> Remember to label the issue with an "enhancement" tag # License diff --git a/website/docs/01_introduction.md b/website/docs/01_introduction.md index 35072011..4a40ad9e 100644 --- a/website/docs/01_introduction.md +++ b/website/docs/01_introduction.md @@ -1,26 +1,25 @@ --- slug: / --- - # Introduction -The eLLMental project raises from the necessity of developer's to have a single framework that joins flexibility, -efficiency and productivity while building the different block an AI application. During this time, we've seen different +The eLLMental project raises from the necessity of developers to have a single framework that joins flexibility, +efficiency, and productivity while building the different blocks of an AI application. During this time, we've seen different challenges that motivated us to start building this project: 1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools custom-made for LLMs, making it more difficult for developers to understand how LLMs work nowadays. 2. **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right - stack. Also, evaluating LLMs performance is not straightforward. + stack. Also, evaluating LLMs' performance is not straightforward. 3. **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be both technically challenging and resource-intensive. 4. **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be adequately addressed by existing MLOps platforms. -5. **Flexibility:** Application's needs grow constantly, and so does AI applications. That's why we are adopting a +5. **Flexibility:** Regular applications need to grow constantly, and so do AI applications. That's why we are adopting a flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI applications. -Overall, eLLMental is designed to help software engineers build AI-driven applications in an efficient manner by -removing all common headaches while integrating AI in your development environment. +Overall, eLLMental is designed to help software engineers efficiently build AI-driven applications by +removing all common headaches while integrating AI into your development environment. diff --git a/website/docs/02_getting_started.md b/website/docs/02_getting_started.md index 877010b5..1caf826e 100644 --- a/website/docs/02_getting_started.md +++ b/website/docs/02_getting_started.md @@ -1,16 +1,11 @@ # Getting started The main package eLLMental offers is called `ellmental-core`. In this package, we provide an API implementation for your -AI applications. This API currently support two kind of operations: write (HTTP POST), and read (HTTP GET). You can provide -your own implementation for these two operations, as you can see in the `SemanticSearch.kt` file. +AI applications. This API currently supports two kinds of operations: write, and read. These two kinds of operations +can be easily mapped to any kind of API protocol. By default, we offer a REST-style HTTP mapping, but you can easily +map it to GraphQL or gRPC. -Technical-wise, `ellmental-core` is built under the following stack: - -| | | -|----------------------|--------| -| Package Manager | Gradle | -| Programming Language | Kotlin | -| JVM Version | 17 | +> `ellmental-core` is built using Kotlin with JVM 17 and using gradle as our package manager. ## Modules @@ -23,13 +18,48 @@ The eLLMental project also implements three different AI modules: vectors, also known as embeddings. 3. **Semantic search module:** To search similarities in the vector store. Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle - between two vectors. The vectors close to each other (having a smaller angle between them) + between two vectors. The vectors that are close to each other (having a smaller angle between them) indicate more similar content. -> An example of how these modules are use can be found in the `semantic-search-service-demo` project. +> An example of how these modules are used can be found in the `semantic-search-service-demo` project. + +## Creating a semantic index + +In the case that you want to create your own semantic index, we recommend you to follow the guidelines below. Anyways +you can always see an example app in the [semantic search demo](https://github.com/theam/eLLMental/tree/main/semantic-search-service-demo) from +the repo. + +First, you'll need to implement the `API.kt` module from `ellmental-core`. This includes two main operations: `read` and `write`. + +Second, you'll have to select the embedding's model you want to use. If you want to use the implementations we provide, you +can use the ones in the `embeddings-model` module. + +Third, you'll need your implementation to call the Vector store you'd want to use. Existing vector stores implementation are present in +the `vector-store` module. + +Finally, you'll need to put everything together in the Semantic Search module. Here's an example with also the `Main.kt` file: + +```kotlin +// Semantic search module +fun default(): SemanticSearch = + with(OpenAIEmbeddingsModel("API KEY")) { + with(PineconeVectorStore()) { + with(SemanticSearch()) { + this + } + } + } + +``` + +```Main.kt +SemanticSearch.default().api.runHttp(port = 8080) +``` + +After that, you can run `./gradlew ::run` to serve your API. -These modules work on their own, but we can manage them in an easier way, by using the `YOLO` CLI tool, which will help -you set up these different modules. +## Creating your own module -The [YOLO](https://github.com/theam/yolo) tool is the way we configure our applications to import different AI -modules and components. \ No newline at end of file +If you plan to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` +folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` +file, in the `includes` list. This way we will keep the same structure for all of them. diff --git a/website/docs/04_contributing.md b/website/docs/04_contributing.md index 88bcc8f4..be991aa2 100644 --- a/website/docs/04_contributing.md +++ b/website/docs/04_contributing.md @@ -3,9 +3,6 @@ We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report bugs or suggest enhancements. -If your plan is to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` -folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` -file, in the `includes` list. This way we will keep the same structure for all of them. ## Reporting bugs @@ -13,7 +10,7 @@ Before creating a bug report, please search for similar issues to make sure that don't find any, go ahead and create an issue including as many details as possible. > If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the -> body of your new one by writing its number like this => #42 (Github will autolink it for you). +> body of your new one by writing its number like this => #42 (Github will auto-link it for you). Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the problem: @@ -42,11 +39,11 @@ Enhancement suggestions are tracked as GitHub issues. Make sure you provide the implemented as a community package. - List some other libraries or frameworks where this enhancement exists. -> Remember to label the issue wit an "enhancement" tag +> Remember to label the issue with an "enhancement" tag # License This eLLMental project is licensed under the Business source license. You can take a look at the details in [this article](https://timreview.ca/article/691). -eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). \ No newline at end of file +eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). From 3b3471a6c39fb13648fdb5165f574100f81ed75c Mon Sep 17 00:00:00 2001 From: juanjoman Date: Mon, 10 Jul 2023 15:02:20 +0100 Subject: [PATCH 11/18] LLM-215 - enhance design --- website/docs/01_introduction.md | 18 +++++------ website/docs/02_getting_started.md | 2 +- website/docs/04_contributing.md | 38 ++++++++++++------------ website/docusaurus.config.js | 6 +++- website/src/css/custom.css | 18 +++++++++-- website/static/img/ellemental white.png | Bin 0 -> 30915 bytes website/static/img/isotype.png | Bin 0 -> 16443 bytes 7 files changed, 50 insertions(+), 32 deletions(-) create mode 100644 website/static/img/ellemental white.png create mode 100644 website/static/img/isotype.png diff --git a/website/docs/01_introduction.md b/website/docs/01_introduction.md index 4a40ad9e..760f104c 100644 --- a/website/docs/01_introduction.md +++ b/website/docs/01_introduction.md @@ -3,23 +3,23 @@ slug: / --- # Introduction -The eLLMental project raises from the necessity of developers to have a single framework that joins flexibility, -efficiency, and productivity while building the different blocks of an AI application. During this time, we've seen different +The ***eLLMental*** project raises from the necessity of developers to have a **single framework that joins flexibility, +efficiency, and productivity** while building the different blocks of an **AI application**. During this time, we've seen different challenges that motivated us to start building this project: -1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools +1. :hammer_and_wrench: **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools custom-made for LLMs, making it more difficult for developers to understand how LLMs work nowadays. -2. **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in +2. :brain: **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right stack. Also, evaluating LLMs' performance is not straightforward. -3. **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall +3. :lock: **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be both technically challenging and resource-intensive. -4. **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be +4. :key: **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be adequately addressed by existing MLOps platforms. -5. **Flexibility:** Regular applications need to grow constantly, and so do AI applications. That's why we are adopting a +5. :jigsaw: **Flexibility:** Regular applications need to grow constantly, and so do AI applications. That's why we are adopting a flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI applications. -Overall, eLLMental is designed to help software engineers efficiently build AI-driven applications by -removing all common headaches while integrating AI into your development environment. +Overall, ***eLLMental*** is designed to help software engineers efficiently build AI-driven applications by +**removing all common headaches while integrating AI into your development environment.** diff --git a/website/docs/02_getting_started.md b/website/docs/02_getting_started.md index 1caf826e..47362f8c 100644 --- a/website/docs/02_getting_started.md +++ b/website/docs/02_getting_started.md @@ -8,7 +8,7 @@ map it to GraphQL or gRPC. > `ellmental-core` is built using Kotlin with JVM 17 and using gradle as our package manager. -## Modules +## :jigsaw: Modules The eLLMental project also implements three different AI modules: diff --git a/website/docs/04_contributing.md b/website/docs/04_contributing.md index be991aa2..3c880019 100644 --- a/website/docs/04_contributing.md +++ b/website/docs/04_contributing.md @@ -1,13 +1,13 @@ # Contributing We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report -bugs or suggest enhancements. +bugs or suggest enhancements :rocket:. -## Reporting bugs +## :bug: Reporting bugs -Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you -don't find any, go ahead and create an issue including as many details as possible. +Before creating a bug report, please **search for similar issues to make sure that they're not already reported. If you +don't find any, go ahead and create an issue including as many details as possible.** > If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the > body of your new one by writing its number like this => #42 (Github will auto-link it for you). @@ -15,31 +15,31 @@ don't find any, go ahead and create an issue including as many details as possib Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the problem: -- Use a clear and descriptive title for the issue to identify the problem. -- Describe the exact steps which reproduce the problem in as many details as possible. -- Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable +- **Use a clear and descriptive title** for the issue to identify the problem. +- **Describe the exact steps** which reproduce the problem in as many details as possible. +- **Provide specific examples** to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. -- Describe the behavior you observed after following the steps and point out what exactly is the problem with that +- **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that behavior. -- Explain which behavior you expected to see instead and why. -- If the problem is related to performance or memory, include a CPU profile capture with your report. +- **Explain which behavior you expected to see** instead and why. +- If the problem is related to performance or memory, **include a CPU profile capture with your report.** -> Remember to label the issue with a "bug" tag +> Remember to label the issue with a "**bug**" tag -## Suggesting Enhancements +## :bulb: Suggesting Enhancements Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: -- Use a clear and descriptive title for the issue to identify the suggestion. -- Provide a step-by-step description of the suggested enhancement in as many details as possible. -- Provide specific examples to demonstrate the steps. Include copy/pasteable snippets which you use in those examples, +- **Use a clear and descriptive title** for the issue to identify the suggestion. +- **Provide a step-by-step description** of the suggested enhancement in as many details as possible. +- **Provide specific examples to demonstrate the steps**. Include copy/pasteable snippets which you use in those examples, as Markdown code blocks. -- Describe the current behavior and explain which behavior you expected to see instead and why. -- Explain why this enhancement would be useful to most Booster users and isn't something that can or should be +- **Describe the current behavior** and explain which behavior you expected to see instead and why. +- **Explain why this enhancement would be useful** to most eLLMental users and isn't something that can or should be implemented as a community package. -- List some other libraries or frameworks where this enhancement exists. +- **List some other libraries or frameworks where this enhancement exists.** -> Remember to label the issue with an "enhancement" tag +> Remember to label the issue with an "**enhancement**" tag # License diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index b965eb62..1304a388 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -7,7 +7,7 @@ const darkCodeTheme = require('prism-react-renderer/themes/dracula'); /** @type {import('@docusaurus/types').Config} */ const config = { title: 'eLLMental', - favicon: 'img/eLLMental logo with frame.png', + favicon: 'img/isotype.png', // Set the production url of your site here url: 'https://docs.ellmental.com', @@ -59,10 +59,14 @@ const config = { ({ // Replace with your project's social card image: 'img/eLLMental logo with frame.png', + stylesheets: [ + "https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap", + ], navbar: { logo: { alt: 'eLLMental Logo', src: '/img/eLLMental logo with frame.png', + srcDark: '/img/ellemental white.png' }, items: [ { diff --git a/website/src/css/custom.css b/website/src/css/custom.css index 2bc6a4cf..f23ad610 100644 --- a/website/src/css/custom.css +++ b/website/src/css/custom.css @@ -6,7 +6,7 @@ /* You can override the default Infima variables here. */ :root { - --ifm-color-primary: #2e8555; + --ifm-color-primary: #5C00E2; --ifm-color-primary-dark: #29784c; --ifm-color-primary-darker: #277148; --ifm-color-primary-darkest: #205d3b; @@ -15,11 +15,14 @@ --ifm-color-primary-lightest: #3cad6e; --ifm-code-font-size: 95%; --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.1); + --ifm-navbar-height: 5rem; + --ifm-font-family-base: 'Poppins', sans-serif; + --ifm-font-family-monospace: 'Poppins', sans-serif; } /* For readability concerns, you should choose a lighter palette in dark mode. */ [data-theme='dark'] { - --ifm-color-primary: #25c2a0; + --ifm-color-primary: #BD94FA; --ifm-color-primary-dark: #21af90; --ifm-color-primary-darker: #1fa588; --ifm-color-primary-darkest: #1a8870; @@ -27,4 +30,15 @@ --ifm-color-primary-lighter: #32d8b4; --ifm-color-primary-lightest: #4fddbf; --docusaurus-highlighted-code-line-bg: rgba(0, 0, 0, 0.3); + --ifm-navbar-height: 5rem; + --ifm-font-family-base: 'Poppins', sans-serif; + --ifm-font-family-monospace: 'Poppins', sans-serif; +} + +html[data-theme='light'] .navbar__logo { + height: 4.5rem; +} + +html[data-theme='dark'] .navbar__logo { + height: 1rem; } diff --git a/website/static/img/ellemental white.png b/website/static/img/ellemental white.png new file mode 100644 index 0000000000000000000000000000000000000000..a3a5c52667b4fe1fe3b25d03032ca5e5025ac306 GIT binary patch literal 30915 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 literal 0 HcmV?d00001 diff --git a/website/static/img/isotype.png b/website/static/img/isotype.png new file mode 100644 index 0000000000000000000000000000000000000000..f8645946a7a1c7ec29a18066ec2edfb1b7157c12 GIT binary patch literal 16443 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 W*}63eIWa&VPPOIkt@&Hr Date: Mon, 10 Jul 2023 15:54:19 +0100 Subject: [PATCH 12/18] light image without frame plus increase logo size --- website/docusaurus.config.js | 4 ++-- website/src/css/custom.css | 8 ++------ .../static/img/eLLMental logo with frame.png | Bin 60693 -> 0 bytes website/static/img/logoellmental.png | Bin 0 -> 38279 bytes 4 files changed, 4 insertions(+), 8 deletions(-) delete mode 100644 website/static/img/eLLMental logo with frame.png create mode 100644 website/static/img/logoellmental.png diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js index 1304a388..8d40ea66 100644 --- a/website/docusaurus.config.js +++ b/website/docusaurus.config.js @@ -58,14 +58,14 @@ const config = { /** @type {import('@docusaurus/preset-classic').ThemeConfig} */ ({ // Replace with your project's social card - image: 'img/eLLMental logo with frame.png', + image: 'img/logoellmental.png', stylesheets: [ "https://fonts.googleapis.com/css2?family=Poppins:wght@400;700&display=swap", ], navbar: { logo: { alt: 'eLLMental Logo', - src: '/img/eLLMental logo with frame.png', + src: '/img/logoellmental.png', srcDark: '/img/ellemental white.png' }, items: [ diff --git a/website/src/css/custom.css b/website/src/css/custom.css index f23ad610..0310fce9 100644 --- a/website/src/css/custom.css +++ b/website/src/css/custom.css @@ -35,10 +35,6 @@ --ifm-font-family-monospace: 'Poppins', sans-serif; } -html[data-theme='light'] .navbar__logo { - height: 4.5rem; -} - -html[data-theme='dark'] .navbar__logo { - height: 1rem; +.navbar__logo { + height: 1.5rem; } diff --git a/website/static/img/eLLMental logo with frame.png b/website/static/img/eLLMental logo with frame.png deleted file mode 100644 index 21102773393f7afc498c98b01f534a1a9a6f95d8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60693 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

}UBB0}Ji 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 diff --git a/website/static/img/logoellmental.png b/website/static/img/logoellmental.png new file mode 100644 index 0000000000000000000000000000000000000000..323c6019e312fa45f366032d7c6f7db97d0ec64a GIT binary patch literal 38279 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 Date: Wed, 12 Jul 2023 10:58:26 +0100 Subject: [PATCH 13/18] requested changes --- README.md | 149 +++++-------------------------- website/docs/01_introduction.md | 28 +++--- website/docs/04_contributing.md | 49 ---------- website/docs/04_contributing.mdx | 5 ++ 4 files changed, 37 insertions(+), 194 deletions(-) delete mode 100644 website/docs/04_contributing.md create mode 100644 website/docs/04_contributing.mdx diff --git a/README.md b/README.md index 25e3626e..bd9708f4 100644 --- a/README.md +++ b/README.md @@ -1,143 +1,34 @@ -# ![eLLMental](website/static/img/eLLMental logo with frame.png) +# ![eLLMental](website/static/img/logoellmental.png) --- # Introduction -The eLLMental project raises from the necessity of developers to have a single framework that joins flexibility, -efficiency, and productivity while building the different blocks of an AI application. During this time, we've seen different -challenges that motivated us to start building this project: - -1. **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools - custom-made for LLMs, making it more difficult for developers to understand how LLMs work nowadays. -2. **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in - heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right - stack. Also, evaluating LLMs' performance is not straightforward. -3. **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall - configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be - both technically challenging and resource-intensive. -4. **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be - adequately addressed by existing MLOps platforms. -5. **Flexibility:** Regular applications need to grow constantly, and so do AI applications. That's why we are adopting a - flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI - applications. +The eLLMental project was born out of the necessity for developers to have a single toolset that combines flexibility, +efficiency, and productivity while building AI-driven applications. As a team specializing in AI product development, +we've started to find recurrent challenges that motivated us to start building this project: + +1. **Lack of Robust Tools and Libraries:** As the field is relatively new, there's a shortage of high-quality production-ready +tools that help developers to iterate quickly at a certain scale. +2. **MLOps management:** There's no "single click" MLOps solutions that let developers start working on their applications +in a short period of time without investing a significant amount of time. +3. **Security**: Ensuring minimal security standards of the underlying infrastructure, including network security, +firewall configurations, and container security, is a major challenge. +4. **Privacy:** Sometimes it's unclear how privacy is handled when using models that are behind an API provided by a +startup. +5. **Dependency to the Python stack:** Most existing tools were designed by and for data scientists that use Python +as their default go-to programming language, but most production apps, especially in enterprise, use JVM or .Net based stacks. This not only have an implication on the language used, but also on tooling and configuration management. Overall, eLLMental is designed to help software engineers efficiently build AI-driven applications by removing all common headaches while integrating AI into your development environment. +If you want to quickly get started with the project, you can always check our guide in +the [official documentation](https://docs.ellmental.com/getting_started/). -# Getting started - -The main package eLLMental offers is called `ellmental-core`. In this package, we provide an API implementation for your -AI applications. This API currently supports two kinds of operations: write, and read. These two kinds of operations -can be easily mapped to any kind of API protocol. By default, we offer a REST-style HTTP mapping, but you can easily -map it to GraphQL or gRPC. - -> `ellmental-core` is built using Kotlin with JVM 17 and using gradle as our package manager. - - -## Modules - -The eLLMental project also implements three different AI modules: - -1. **A vector store:** Database or repository used to house and handle vector representations of words or phrases, known - as embeddings. eLLMental implements different databases that support vector columns, like Pinecone or Supabase. -2. **Embedding generator:** The service that is responsible for converting raw text data into representative numerical - vectors, also known as embeddings. -3. **Semantic search module:** To search similarities in the vector store. - Using [cosine similarity](https://en.wikipedia.org/wiki/Cosine_similarity), which measures the cosine of the angle - between two vectors. The vectors that are close to each other (having a smaller angle between them) - indicate more similar content. - -> An example of how these modules are used can be found in the `semantic-search-service-demo` project. - -## Creating a semantic index - -In the case that you want to create your own semantic index, we recommend you to follow the guidelines below. Anyways -you can always see an example app in the [semantic search demo](https://github.com/theam/eLLMental/tree/main/semantic-search-service-demo) from -the repo. - -First, you'll need to implement the `API.kt` module from `ellmental-core`. This includes two main operations: `read` and `write`. - -Second, you'll have to select the embedding's model you want to use. If you want to use the implementations we provide, you -can use the ones in the `embeddings-model` module. - -Third, you'll need your implementation to call the Vector store you'd want to use. Existing vector stores implementation are present in -the `vector-store` module. - -Finally, you'll need to put everything together in the Semantic Search module. Here's an example with also the `Main.kt` file: - -```kotlin -// Semantic search module -fun default(): SemanticSearch = - with(OpenAIEmbeddingsModel("API KEY")) { - with(PineconeVectorStore()) { - with(SemanticSearch()) { - this - } - } - } - -``` - -```Main.kt -SemanticSearch.default().api.runHttp(port = 8080) -``` - -After that, you can run `./gradlew ::run` to serve your API. - -## Creating your own module - -If you plan to create a different package or module using Kotlin (like `llmental-core`), you can duplicate the `.kotlin-template` -folder and rename it to your package name. After that, you'll have to add the package name to the `settings.gradle.kts` -file, in the `includes` list. This way we will keep the same structure for all of them. - -# Contributing - -We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report -bugs or suggest enhancements. - - -## Reporting bugs - -Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you -don't find any, go ahead and create an issue including as many details as possible. - -> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the -> body of your new one by writing its number like this => #42 (Github will auto-link it for you). - -Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the -problem: - -- Use a clear and descriptive title for the issue to identify the problem. -- Describe the exact steps which reproduce the problem in as many details as possible. -- Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable - snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. -- Describe the behavior you observed after following the steps and point out what exactly is the problem with that - behavior. -- Explain which behavior you expected to see instead and why. -- If the problem is related to performance or memory, include a CPU profile capture with your report. - -> Remember to label the issue with a "bug" tag - -## Suggesting Enhancements - -Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: - -- Use a clear and descriptive title for the issue to identify the suggestion. -- Provide a step-by-step description of the suggested enhancement in as many details as possible. -- Provide specific examples to demonstrate the steps. Include copy/pasteable snippets which you use in those examples, - as Markdown code blocks. -- Describe the current behavior and explain which behavior you expected to see instead and why. -- Explain why this enhancement would be useful to most Booster users and isn't something that can or should be - implemented as a community package. -- List some other libraries or frameworks where this enhancement exists. - -> Remember to label the issue with an "enhancement" tag # License -This eLLMental project is licensed under the Business source license. You can take a look at the details -in [this article](https://timreview.ca/article/691). +The eLLMental project is licensed under the terms of the Apache License, Version 2.0. See the +[LICENSE](https://www.apache.org/licenses/LICENSE-2.0) file for details. -eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). +eLLMental is an open-source initiative by [The Agile Monkeys](https://www.theagilemonkeys.com/). diff --git a/website/docs/01_introduction.md b/website/docs/01_introduction.md index 760f104c..e9b40178 100644 --- a/website/docs/01_introduction.md +++ b/website/docs/01_introduction.md @@ -3,23 +3,19 @@ slug: / --- # Introduction -The ***eLLMental*** project raises from the necessity of developers to have a **single framework that joins flexibility, -efficiency, and productivity** while building the different blocks of an **AI application**. During this time, we've seen different -challenges that motivated us to start building this project: +The ***eLLMental*** project was born out of the necessity for developers to have **a single toolset that combines flexibility, +efficiency, and productivity** while building AI-driven applications. As a team specializing in AI product development, +we've started to find recurrent challenges that motivated us to start building this project: -1. :hammer_and_wrench: **Lack of Robust Tools and Libraries:** The field being fairly new means there's a lack of effective tools - custom-made for LLMs, making it more difficult for developers to understand how LLMs work nowadays. -2. :brain: **MLOps management:** There's no one-size-fits-all solution in MLOps and particularly with LLMs, resulting in - heterogeneity in the tools, platforms, and workflow processes. This means more time is needed to find the right - stack. Also, evaluating LLMs' performance is not straightforward. -3. :lock: **Security**: Ensuring the security of the underlying infrastructure, including network security, firewall - configurations, and container security, is a major challenge. Setting up appropriate monitoring and alerts can be - both technically challenging and resource-intensive. -4. :key: **Privacy:** LLMs often require large amounts of data, raising potential data privacy issues, which may not be - adequately addressed by existing MLOps platforms. -5. :jigsaw: **Flexibility:** Regular applications need to grow constantly, and so do AI applications. That's why we are adopting a - flexible philosophy, by building separate software blocks that con compose themselves into bigger customizable AI - applications. +1. :hammer_and_wrench: **Lack of Robust Tools and Libraries:** As the field is relatively new, there's a shortage of high-quality production-ready +tools that help developers to iterate quickly at a certain scale. +2. :brain: **MLOps management:** There's no "single click" MLOps solutions that let developers start working on their applications +in a short period of time without investing a significant amount of time. +3. :lock: **Security**: Ensuring minimal security standards of the underlying infrastructure, including network security, +firewall configurations, and container security, is a major challenge. +4. :key: **Privacy:** Sometimes it's unclear how privacy is handled when using models that are behind an API provided by a startup. +5. :jigsaw: **Dependency to the Python stack:** Most existing tools were designed by and for data scientists that use Python as +their default go-to programming language, but most production apps, especially in enterprise, use JVM or .Net based stacks. This not only have an implication on the language used, but also on tooling and configuration management. Overall, ***eLLMental*** is designed to help software engineers efficiently build AI-driven applications by **removing all common headaches while integrating AI into your development environment.** diff --git a/website/docs/04_contributing.md b/website/docs/04_contributing.md deleted file mode 100644 index 3c880019..00000000 --- a/website/docs/04_contributing.md +++ /dev/null @@ -1,49 +0,0 @@ -# Contributing - -We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report -bugs or suggest enhancements :rocket:. - - -## :bug: Reporting bugs - -Before creating a bug report, please **search for similar issues to make sure that they're not already reported. If you -don't find any, go ahead and create an issue including as many details as possible.** - -> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the -> body of your new one by writing its number like this => #42 (Github will auto-link it for you). - -Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the -problem: - -- **Use a clear and descriptive title** for the issue to identify the problem. -- **Describe the exact steps** which reproduce the problem in as many details as possible. -- **Provide specific examples** to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable - snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. -- **Describe the behavior you observed after following the steps** and point out what exactly is the problem with that - behavior. -- **Explain which behavior you expected to see** instead and why. -- If the problem is related to performance or memory, **include a CPU profile capture with your report.** - -> Remember to label the issue with a "**bug**" tag - -## :bulb: Suggesting Enhancements - -Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: - -- **Use a clear and descriptive title** for the issue to identify the suggestion. -- **Provide a step-by-step description** of the suggested enhancement in as many details as possible. -- **Provide specific examples to demonstrate the steps**. Include copy/pasteable snippets which you use in those examples, - as Markdown code blocks. -- **Describe the current behavior** and explain which behavior you expected to see instead and why. -- **Explain why this enhancement would be useful** to most eLLMental users and isn't something that can or should be - implemented as a community package. -- **List some other libraries or frameworks where this enhancement exists.** - -> Remember to label the issue with an "**enhancement**" tag - -# License - -This eLLMental project is licensed under the Business source license. You can take a look at the details -in [this article](https://timreview.ca/article/691). - -eLLMental is a project by [The Agile Monkeys](https://www.theagilemonkeys.com/). diff --git a/website/docs/04_contributing.mdx b/website/docs/04_contributing.mdx new file mode 100644 index 00000000..8cc74db5 --- /dev/null +++ b/website/docs/04_contributing.mdx @@ -0,0 +1,5 @@ +import ContributingGuide from '../../CONTRIBUTING.md'; + +# Contributing + + From ae516e348929086f05db9489cf8b52a00c2fef28 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Wed, 12 Jul 2023 11:07:43 +0100 Subject: [PATCH 14/18] download contributing file from website working dir --- .github/workflows/wf_publish-docs.yml | 4 + CONTRIBUTING.md | 145 ++++++++++++++++++++++++++ website/docs/04_contributing.mdx | 2 +- 3 files changed, 150 insertions(+), 1 deletion(-) create mode 100644 CONTRIBUTING.md diff --git a/.github/workflows/wf_publish-docs.yml b/.github/workflows/wf_publish-docs.yml index 36539790..ba474cac 100644 --- a/.github/workflows/wf_publish-docs.yml +++ b/.github/workflows/wf_publish-docs.yml @@ -24,6 +24,10 @@ jobs: cache: npm cache-dependency-path: website/package-lock.json + - name: Download CONTRIBUTING.md + run: | + curl -o CONTRIBUTING.md https://raw.githubusercontent.com/theam/eLLMental/main/CONTRIBUTING.md + - name: Install dependencies run: npm ci - name: Build website diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000..f6df79ee --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,145 @@ + +We're happy to see that you're interested in contributing, that's great! In the sections below, you can see how to report +bugs or suggest enhancements. + + +## :bug: Reporting bugs + +Before creating a bug report, please search for similar issues to make sure that they're not already reported. If you +don't find any, go ahead and create an issue including as many details as possible. + +> If you find a Closed issue that seems related to the issues that you're experiencing, make sure to reference it in the +> body of your new one by writing its number like this => #42 (Github will auto-link it for you). + +Bugs are tracked as GitHub issues. Explain the problem and include additional details to help maintainers reproduce the +problem: + +- Use a clear and descriptive title for the issue to identify the problem. +- Describe the exact steps which reproduce the problem in as many details as possible. +- Provide specific examples to demonstrate the steps. Include links to files or GitHub projects, or copy/pasteable + snippets, which you use in those examples. If you're providing snippets in the issue, use Markdown code blocks. +- Describe the behavior you observed after following the steps and point out what exactly is the problem with that + behavior. +- Explain which behavior you expected to see instead and why. +- If the problem is related to performance or memory, include a CPU profile capture with your report. + +> Remember to label the issue with a "bug" tag + +## :bulb: Suggesting Enhancements + +Enhancement suggestions are tracked as GitHub issues. Make sure you provide the following information: + +- Use a clear and descriptive title for the issue to identify the suggestion. +- Provide a step-by-step description of the suggested enhancement in as many details as possible. +- Provide specific examples to demonstrate the steps. Include copy/pasteable snippets which you use in those examples, + as Markdown code blocks. +- Describe the current behavior and explain which behavior you expected to see instead and why. +- Explain why this enhancement would be useful to most eLLMental users and isn't something that can or should be + implemented as a community package. +- List some other libraries or frameworks where this enhancement exists. + +> Remember to label the issue with an "enhancement" tag + +## :book: Improving documentation + +[eLLMental documentation](https://docs.ellmental.com) is treated as a live document that continues improving on a daily basis. If you find something that is missing or can be improved, please contribute, it will be of great help for other developers. +To contribute you can use the button "Edit on github" at the top of each chapter. + +### Documentation principles and practices + +The ultimate goal of a technical document is to translate the knowledge from the technology creators into the reader's mind so that they learn. The challenging +part here is the one in which they learn. It is challenging because, under the same amount of information, a person can suffer an information overload because +we (humans) don't have the same information-processing capacity. That idea is going to work as our compass, it should drive our efforts so people with less +capacity is still able to follow and understand our documentation. + +To achieve our goal we propose writing documentation following these principles: + +1. Clean and Clear +2. Simple +3. Coherent +4. Explicit +5. Attractive +6. Inclusive +7. Cohesive + +#### Principles + +**1. Clean and Clear** + +Less is more. Apple is, among many others, a good example of creating clean and clear content, where visual elements are carefully chosen to look beautiful +(e.g. [Apple's swift UI](https://developer.apple.com/tutorials/swiftui)) and making the reader getting the point as soon as possible. + +The intention of every section, paragraph, and sentence must be clear, we should avoid writing details of two different things even when they are related. +It is better to link pages and keep the focus and the intention clear, Wikipedia is the best example on this. + +**2. Simple** + +Technical writings deal with different backgrounds and expertise from the readers. We should not assume the reader knows everything we are talking about +but we should not explain everything in the same paragraph or section. Every section has a goal to stick to the goal and link to internal or external resources +to go deeper. + +Diagrams are great tools, you know a picture is worth more than a thousand words unless that picture contains too much information. +Keep it simple intentionally omitting details. + +**3. Coherent** + +The documentation tells a story. Every section should integrate naturally without making the reader switch between different contexts. Text, diagrams, +and code examples should support each other without introducing abrupt changes breaking the reader’s flow. Also, the font, colors, diagrams, code samples, +animations, and all the visual elements we include, should support the story we are telling. + +**4. Explicit** + +Go straight to the point without assuming the readers should know about something. Again, link internal or external resources to clarify. + +The index of the whole content must be visible all the time so the reader knows exactly where they are and what is left. + +**5. Attractive** + +Our text must be nice to read, our diagrams delectable to see, and our site… a feast for the eyes!! + +**6. Inclusive** + +Everybody should understand our writings, especially the topics at the top. We have arranged the documentation structure in a way that anybody can dig +deeper by just going down so, sections 1 to 4 must be suitable for all ages. + +Use gender-neutral language to avoid the use of he, him, his to refer to undetermined gender. It is better to use their or they as a gender-neutral +approach than s/he or similars. + +**7. Cohesive** + +Writing short and concise sentences is good, but remember to use proper connectors (“Therefore”, “Besides”, “However”, “thus”, etc) that provide a +sense of continuation to the whole paragraph. If not, when people read the paragraphs, their internal voice sounds like a robot with unnatural stops. + +#### Practices + +There are many writing styles depending on the type of document. It is common within technical and scientific writing to use Inductive and/or Deductive styles +for paragraphs. They have different outcomes and one style may suit better in one case or another, that is why it is important to know them, and decide which +one to use in every moment. Let’s see the difference with 2 recursive examples. + +**Deductive paragraphs ease the reading for advanced users but still allows you to elaborate on ideas and concepts for newcomers**. In deductive paragraphs, +the conclusions or definitions appear at the beginning, and then, details, facts, or supporting phrases complete the paragraph’s idea. By placing the +conclusion in the first sentence, the reader immediately identifies the main point so they can decide to skip the whole paragraph or keep reading. +If you take a look at the structure of this paragraph, it is deductive. + +On the other hand, if you want to drive the readers' attention and play with it as if they were in a roller coaster, you can do so by using a different approach. +In that approach, you first introduce the facts and ideas and then you wrap them with a conclusion. This style is more narrative and forces the reader to +continue because the main idea is diluted in the whole paragraph. Once all the ideas are placed together, you can finally conclude the paragraph. **This style is +called Inductive.** + +The first paragraph is deductive and the last one is inductive. In general, it is better to use the deductive style, but if we stick to one, our writing will start looking weird and maybe boring. +So decide one or another being conscious about your intention. + +## Create your very first GitHub issue + +[Click here](https://github.com/theam/eLLMental/issues/new) to start making contributions to eLLMental. + +## Your First Code Contribution + +Unsure where to begin contributing to eLLMental? You can start by looking through issued tagged as `good-first-issue` and `help-wanted`: + +- Beginner issues - issues which should only require a few lines of code, and a test or two. +- Help wanted issues - issues which should be a bit more involved than beginner issues. + +Both issue lists are sorted by the total number of comments. While not perfect, number of comments is a reasonable proxy for impact a given change will have. + +Make sure that you assign the chosen issue to yourself to communicate your intention to work on it and reduce the possibilities of other people taking the same assignment. diff --git a/website/docs/04_contributing.mdx b/website/docs/04_contributing.mdx index 8cc74db5..7fe671bf 100644 --- a/website/docs/04_contributing.mdx +++ b/website/docs/04_contributing.mdx @@ -1,4 +1,4 @@ -import ContributingGuide from '../../CONTRIBUTING.md'; +import ContributingGuide from './CONTRIBUTING.md'; # Contributing From d024871bb848da2d3f2dc31274275b1b561f1112 Mon Sep 17 00:00:00 2001 From: juanjoman Date: Wed, 12 Jul 2023 11:11:02 +0100 Subject: [PATCH 15/18] test with already merged readme --- .github/workflows/wf_publish-docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/wf_publish-docs.yml b/.github/workflows/wf_publish-docs.yml index ba474cac..2e5ba9dd 100644 --- a/.github/workflows/wf_publish-docs.yml +++ b/.github/workflows/wf_publish-docs.yml @@ -26,7 +26,7 @@ jobs: - name: Download CONTRIBUTING.md run: | - curl -o CONTRIBUTING.md https://raw.githubusercontent.com/theam/eLLMental/main/CONTRIBUTING.md + curl -o CONTRIBUTING.md https://raw.githubusercontent.com/theam/eLLMental/main/README.md - name: Install dependencies run: npm ci From c44712105ed526b55d7ab4027f94bb266a2fe7fe Mon Sep 17 00:00:00 2001 From: juanjoman Date: Wed, 12 Jul 2023 11:14:55 +0100 Subject: [PATCH 16/18] fix path --- website/docs/04_contributing.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/docs/04_contributing.mdx b/website/docs/04_contributing.mdx index 7fe671bf..0b70e2fe 100644 --- a/website/docs/04_contributing.mdx +++ b/website/docs/04_contributing.mdx @@ -1,4 +1,4 @@ -import ContributingGuide from './CONTRIBUTING.md'; +import ContributingGuide from '../CONTRIBUTING.md'; # Contributing From 05b75b9cfabdd105a9ecf91370d83ab23e5ee9fe Mon Sep 17 00:00:00 2001 From: juanjoman Date: Wed, 12 Jul 2023 11:21:10 +0100 Subject: [PATCH 17/18] replace url with the correct one from contributing file --- .github/workflows/wf_publish-docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/wf_publish-docs.yml b/.github/workflows/wf_publish-docs.yml index 2e5ba9dd..ba474cac 100644 --- a/.github/workflows/wf_publish-docs.yml +++ b/.github/workflows/wf_publish-docs.yml @@ -26,7 +26,7 @@ jobs: - name: Download CONTRIBUTING.md run: | - curl -o CONTRIBUTING.md https://raw.githubusercontent.com/theam/eLLMental/main/README.md + curl -o CONTRIBUTING.md https://raw.githubusercontent.com/theam/eLLMental/main/CONTRIBUTING.md - name: Install dependencies run: npm ci From 9e8df532e7d3c100d8c50dfb36c262f063c8530f Mon Sep 17 00:00:00 2001 From: juanjoman Date: Wed, 12 Jul 2023 17:35:24 +0100 Subject: [PATCH 18/18] update gh actions --- .github/workflows/wf_publish-docs.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/wf_publish-docs.yml b/.github/workflows/wf_publish-docs.yml index ba474cac..8237be9a 100644 --- a/.github/workflows/wf_publish-docs.yml +++ b/.github/workflows/wf_publish-docs.yml @@ -1,9 +1,7 @@ name: Publish documentation on: -# TODO: Change this before merge -> - #push: - pull_request: + push: branches: - main paths: