diff --git a/CHANGELOG.md b/CHANGELOG.md
index e638f56c9..e7e78a97d 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,38 @@
+## 2.2.0
+
+([Full Changelog](https://github.com/jupyterlab/jupyter-ai/compare/@jupyter-ai/core@2.1.0...56c1f518afd09d0d09a43221f0767aa961e9430f))
+
+### Enhancements made
+
+- Loads vector store index lazily [#374](https://github.com/jupyterlab/jupyter-ai/pull/374) ([@3coins](https://github.com/3coins))
+- Added alias for bedrock titan model [#368](https://github.com/jupyterlab/jupyter-ai/pull/368) ([@3coins](https://github.com/3coins))
+- Update README, docs [#347](https://github.com/jupyterlab/jupyter-ai/pull/347) ([@JasonWeill](https://github.com/JasonWeill))
+
+### Bugs fixed
+
+- fix newline typo in improve_code [#364](https://github.com/jupyterlab/jupyter-ai/pull/364) ([@michaelchia](https://github.com/michaelchia))
+
+### Maintenance and upkeep improvements
+
+- Upgrades LangChain to 0.0.277 [#375](https://github.com/jupyterlab/jupyter-ai/pull/375) ([@3coins](https://github.com/3coins))
+- relax pinning on importlib_metadata, typing_extensions [#363](https://github.com/jupyterlab/jupyter-ai/pull/363) ([@minrk](https://github.com/minrk))
+
+### Documentation improvements
+
+- Remove front end unit tests from code and README.md [#371](https://github.com/jupyterlab/jupyter-ai/pull/371) ([@andrii-i](https://github.com/andrii-i))
+- Update README, docs [#347](https://github.com/jupyterlab/jupyter-ai/pull/347) ([@JasonWeill](https://github.com/JasonWeill))
+
+### Contributors to this release
+
+([GitHub contributors page for this release](https://github.com/jupyterlab/jupyter-ai/graphs/contributors?from=2023-08-15&to=2023-09-05&type=c))
+
+[@3coins](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3A3coins+updated%3A2023-08-15..2023-09-05&type=Issues) | [@andrii-i](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Aandrii-i+updated%3A2023-08-15..2023-09-05&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3AJasonWeill+updated%3A2023-08-15..2023-09-05&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Akrassowski+updated%3A2023-08-15..2023-09-05&type=Issues) | [@michaelchia](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Amichaelchia+updated%3A2023-08-15..2023-09-05&type=Issues) | [@minrk](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Aminrk+updated%3A2023-08-15..2023-09-05&type=Issues) | [@welcome](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Awelcome+updated%3A2023-08-15..2023-09-05&type=Issues)
+
+
+
## 2.1.0
([Full Changelog](https://github.com/jupyterlab/jupyter-ai/compare/@jupyter-ai/core@2.0.1...c689c6c0cce5212238943ec2ff1559f6ad2f63d5))
@@ -24,8 +56,6 @@
[@3coins](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3A3coins+updated%3A2023-08-08..2023-08-15&type=Issues) | [@anammari](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Aanammari+updated%3A2023-08-08..2023-08-15&type=Issues) | [@bjornjorgensen](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Abjornjorgensen+updated%3A2023-08-08..2023-08-15&type=Issues) | [@dlqqq](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Adlqqq+updated%3A2023-08-08..2023-08-15&type=Issues) | [@JasonWeill](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3AJasonWeill+updated%3A2023-08-08..2023-08-15&type=Issues) | [@krassowski](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Akrassowski+updated%3A2023-08-08..2023-08-15&type=Issues) | [@welcome](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyter-ai+involves%3Awelcome+updated%3A2023-08-08..2023-08-15&type=Issues)
-
-
## 2.0.1
([Full Changelog](https://github.com/jupyterlab/jupyter-ai/compare/@jupyter-ai/core@2.0.0...f38d7f4a5b38ae1583c97bc8a0bb58ab09cdabdd))
diff --git a/packages/jupyter-ai/conftest.py b/conftest.py
similarity index 100%
rename from packages/jupyter-ai/conftest.py
rename to conftest.py
diff --git a/docs/source/users/index.md b/docs/source/users/index.md
index 4a9b02cdb..ad7b717b5 100644
--- a/docs/source/users/index.md
+++ b/docs/source/users/index.md
@@ -42,6 +42,8 @@ conda install jupyterlab~=4.0
The `jupyter_ai_magics` package, which provides exclusively the IPython magics,
does not depend on JupyterLab or `jupyter_ai`. You can install
`jupyter_ai_magics` without installing `jupyterlab` or `jupyter_ai`.
+If you have both `jupyter_ai_magics` and `jupyter_ai` installed, you should
+have the same version of each, to avoid errors.
## Installation
diff --git a/examples/commands.ipynb b/examples/commands.ipynb
index efc574e55..f2fa722b4 100644
--- a/examples/commands.ipynb
+++ b/examples/commands.ipynb
@@ -136,13 +136,16 @@
"| Provider | Environment variable | Set? | Models |\n",
"|----------|----------------------|------|--------|\n",
"| `ai21` | `AI21_API_KEY` | ✅ | `ai21:j1-large`, `ai21:j1-grande`, `ai21:j1-jumbo`, `ai21:j1-grande-instruct`, `ai21:j2-large`, `ai21:j2-grande`, `ai21:j2-jumbo`, `ai21:j2-grande-instruct`, `ai21:j2-jumbo-instruct` |\n",
- "| `anthropic` | `ANTHROPIC_API_KEY` | ✅ | `anthropic:claude-v1`, `anthropic:claude-v1.0`, `anthropic:claude-v1.2`, `anthropic:claude-instant-v1`, `anthropic:claude-instant-v1.0` |\n",
+ "| `bedrock` | Not applicable. | N/A | `bedrock:amazon.titan-tg1-large`, `bedrock:anthropic.claude-v1`, `bedrock:anthropic.claude-instant-v1`, `bedrock:anthropic.claude-v2`, `bedrock:ai21.j2-jumbo-instruct`, `bedrock:ai21.j2-grande-instruct` |\n",
+ "| `anthropic` | `ANTHROPIC_API_KEY` | ✅ | `anthropic:claude-v1`, `anthropic:claude-v1.0`, `anthropic:claude-v1.2`, `anthropic:claude-2`, `anthropic:claude-instant-v1`, `anthropic:claude-instant-v1.0` |\n",
+ "| `azure-chat-openai` | `OPENAI_API_KEY` | ✅ | This provider does not define a list of models. |\n",
"| `cohere` | `COHERE_API_KEY` | ✅ | `cohere:medium`, `cohere:xlarge` |\n",
- "| `huggingface_hub` | `HUGGINGFACEHUB_API_TOKEN` | ✅ | See https://huggingface.co/models for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`. |\n",
+ "| `gpt4all` | Not applicable. | N/A | `gpt4all:ggml-gpt4all-j-v1.2-jazzy`, `gpt4all:ggml-gpt4all-j-v1.3-groovy`, `gpt4all:ggml-gpt4all-l13b-snoozy` |\n",
+ "| `huggingface_hub` | `HUGGINGFACEHUB_API_TOKEN` | ✅ | See [https://huggingface.co/models](https://huggingface.co/models) for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`. |\n",
"| `openai` | `OPENAI_API_KEY` | ✅ | `openai:text-davinci-003`, `openai:text-davinci-002`, `openai:text-curie-001`, `openai:text-babbage-001`, `openai:text-ada-001`, `openai:davinci`, `openai:curie`, `openai:babbage`, `openai:ada` |\n",
- "| `openai-chat` | `OPENAI_API_KEY` | ✅ | `openai-chat:gpt-4`, `openai-chat:gpt-4-0314`, `openai-chat:gpt-4-32k`, `openai-chat:gpt-4-32k-0314`, `openai-chat:gpt-3.5-turbo`, `openai-chat:gpt-3.5-turbo-0301` |\n",
- "| `openai-chat-new` | `OPENAI_API_KEY` | ✅ | `openai-chat-new:gpt-4`, `openai-chat-new:gpt-4-0314`, `openai-chat-new:gpt-4-32k`, `openai-chat-new:gpt-4-32k-0314`, `openai-chat-new:gpt-3.5-turbo`, `openai-chat-new:gpt-3.5-turbo-0301` |\n",
- "| `sagemaker-endpoint` | Not applicable. | N/A | Specify an endpoint name as the model ID. In addition, you must include the `--region_name`, `--request_schema`, and the `--response_path` arguments. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints). |\n",
+ "| `openai-chat` | `OPENAI_API_KEY` | ✅ | `openai-chat:gpt-3.5-turbo`, `openai-chat:gpt-3.5-turbo-16k`, `openai-chat:gpt-3.5-turbo-0301`, `openai-chat:gpt-3.5-turbo-0613`, `openai-chat:gpt-3.5-turbo-16k-0613`, `openai-chat:gpt-4`, `openai-chat:gpt-4-0314`, `openai-chat:gpt-4-0613`, `openai-chat:gpt-4-32k`, `openai-chat:gpt-4-32k-0314`, `openai-chat:gpt-4-32k-0613` |\n",
+ "| `openai-chat-new` | `OPENAI_API_KEY` | ✅ | `openai-chat-new:gpt-3.5-turbo`, `openai-chat-new:gpt-3.5-turbo-16k`, `openai-chat-new:gpt-3.5-turbo-0301`, `openai-chat-new:gpt-3.5-turbo-0613`, `openai-chat-new:gpt-3.5-turbo-16k-0613`, `openai-chat-new:gpt-4`, `openai-chat-new:gpt-4-0314`, `openai-chat-new:gpt-4-0613`, `openai-chat-new:gpt-4-32k`, `openai-chat-new:gpt-4-32k-0314`, `openai-chat-new:gpt-4-32k-0613` |\n",
+ "| `sagemaker-endpoint` | Not applicable. | N/A | Specify an endpoint name as the model ID. In addition, you must specify a region name, request schema, and response path. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints). |\n",
"\n",
"Aliases and custom commands:\n",
"\n",
@@ -166,22 +169,40 @@
"* ai21:j2-grande-instruct\n",
"* ai21:j2-jumbo-instruct\n",
"\n",
+ "bedrock\n",
+ "* bedrock:amazon.titan-tg1-large\n",
+ "* bedrock:anthropic.claude-v1\n",
+ "* bedrock:anthropic.claude-instant-v1\n",
+ "* bedrock:anthropic.claude-v2\n",
+ "* bedrock:ai21.j2-jumbo-instruct\n",
+ "* bedrock:ai21.j2-grande-instruct\n",
+ "\n",
"anthropic\n",
"Requires environment variable ANTHROPIC_API_KEY (set)\n",
"* anthropic:claude-v1\n",
"* anthropic:claude-v1.0\n",
"* anthropic:claude-v1.2\n",
+ "* anthropic:claude-2\n",
"* anthropic:claude-instant-v1\n",
"* anthropic:claude-instant-v1.0\n",
"\n",
+ "azure-chat-openai\n",
+ "Requires environment variable OPENAI_API_KEY (set)\n",
+ "* This provider does not define a list of models.\n",
+ "\n",
"cohere\n",
"Requires environment variable COHERE_API_KEY (set)\n",
"* cohere:medium\n",
"* cohere:xlarge\n",
"\n",
+ "gpt4all\n",
+ "* gpt4all:ggml-gpt4all-j-v1.2-jazzy\n",
+ "* gpt4all:ggml-gpt4all-j-v1.3-groovy\n",
+ "* gpt4all:ggml-gpt4all-l13b-snoozy\n",
+ "\n",
"huggingface_hub\n",
"Requires environment variable HUGGINGFACEHUB_API_TOKEN (set)\n",
- "* See https://huggingface.co/models for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`.\n",
+ "* See [https://huggingface.co/models](https://huggingface.co/models) for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`.\n",
"\n",
"openai\n",
"Requires environment variable OPENAI_API_KEY (set)\n",
@@ -197,24 +218,34 @@
"\n",
"openai-chat\n",
"Requires environment variable OPENAI_API_KEY (set)\n",
+ "* openai-chat:gpt-3.5-turbo\n",
+ "* openai-chat:gpt-3.5-turbo-16k\n",
+ "* openai-chat:gpt-3.5-turbo-0301\n",
+ "* openai-chat:gpt-3.5-turbo-0613\n",
+ "* openai-chat:gpt-3.5-turbo-16k-0613\n",
"* openai-chat:gpt-4\n",
"* openai-chat:gpt-4-0314\n",
+ "* openai-chat:gpt-4-0613\n",
"* openai-chat:gpt-4-32k\n",
"* openai-chat:gpt-4-32k-0314\n",
- "* openai-chat:gpt-3.5-turbo\n",
- "* openai-chat:gpt-3.5-turbo-0301\n",
+ "* openai-chat:gpt-4-32k-0613\n",
"\n",
"openai-chat-new\n",
"Requires environment variable OPENAI_API_KEY (set)\n",
+ "* openai-chat-new:gpt-3.5-turbo\n",
+ "* openai-chat-new:gpt-3.5-turbo-16k\n",
+ "* openai-chat-new:gpt-3.5-turbo-0301\n",
+ "* openai-chat-new:gpt-3.5-turbo-0613\n",
+ "* openai-chat-new:gpt-3.5-turbo-16k-0613\n",
"* openai-chat-new:gpt-4\n",
"* openai-chat-new:gpt-4-0314\n",
+ "* openai-chat-new:gpt-4-0613\n",
"* openai-chat-new:gpt-4-32k\n",
"* openai-chat-new:gpt-4-32k-0314\n",
- "* openai-chat-new:gpt-3.5-turbo\n",
- "* openai-chat-new:gpt-3.5-turbo-0301\n",
+ "* openai-chat-new:gpt-4-32k-0613\n",
"\n",
"sagemaker-endpoint\n",
- "* Specify an endpoint name as the model ID. In addition, you must include the `--region_name`, `--request_schema`, and the `--response_path` arguments. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints).\n",
+ "* Specify an endpoint name as the model ID. In addition, you must specify a region name, request schema, and response path. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints).\n",
"\n",
"\n",
"Aliases and custom commands:\n",
@@ -318,13 +349,16 @@
"| Provider | Environment variable | Set? | Models |\n",
"|----------|----------------------|------|--------|\n",
"| `ai21` | `AI21_API_KEY` | ✅ | `ai21:j1-large`, `ai21:j1-grande`, `ai21:j1-jumbo`, `ai21:j1-grande-instruct`, `ai21:j2-large`, `ai21:j2-grande`, `ai21:j2-jumbo`, `ai21:j2-grande-instruct`, `ai21:j2-jumbo-instruct` |\n",
- "| `anthropic` | `ANTHROPIC_API_KEY` | ✅ | `anthropic:claude-v1`, `anthropic:claude-v1.0`, `anthropic:claude-v1.2`, `anthropic:claude-instant-v1`, `anthropic:claude-instant-v1.0` |\n",
+ "| `bedrock` | Not applicable. | N/A | `bedrock:amazon.titan-tg1-large`, `bedrock:anthropic.claude-v1`, `bedrock:anthropic.claude-instant-v1`, `bedrock:anthropic.claude-v2`, `bedrock:ai21.j2-jumbo-instruct`, `bedrock:ai21.j2-grande-instruct` |\n",
+ "| `anthropic` | `ANTHROPIC_API_KEY` | ✅ | `anthropic:claude-v1`, `anthropic:claude-v1.0`, `anthropic:claude-v1.2`, `anthropic:claude-2`, `anthropic:claude-instant-v1`, `anthropic:claude-instant-v1.0` |\n",
+ "| `azure-chat-openai` | `OPENAI_API_KEY` | ✅ | This provider does not define a list of models. |\n",
"| `cohere` | `COHERE_API_KEY` | ✅ | `cohere:medium`, `cohere:xlarge` |\n",
- "| `huggingface_hub` | `HUGGINGFACEHUB_API_TOKEN` | ✅ | See https://huggingface.co/models for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`. |\n",
+ "| `gpt4all` | Not applicable. | N/A | `gpt4all:ggml-gpt4all-j-v1.2-jazzy`, `gpt4all:ggml-gpt4all-j-v1.3-groovy`, `gpt4all:ggml-gpt4all-l13b-snoozy` |\n",
+ "| `huggingface_hub` | `HUGGINGFACEHUB_API_TOKEN` | ✅ | See [https://huggingface.co/models](https://huggingface.co/models) for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`. |\n",
"| `openai` | `OPENAI_API_KEY` | ✅ | `openai:text-davinci-003`, `openai:text-davinci-002`, `openai:text-curie-001`, `openai:text-babbage-001`, `openai:text-ada-001`, `openai:davinci`, `openai:curie`, `openai:babbage`, `openai:ada` |\n",
- "| `openai-chat` | `OPENAI_API_KEY` | ✅ | `openai-chat:gpt-4`, `openai-chat:gpt-4-0314`, `openai-chat:gpt-4-32k`, `openai-chat:gpt-4-32k-0314`, `openai-chat:gpt-3.5-turbo`, `openai-chat:gpt-3.5-turbo-0301` |\n",
- "| `openai-chat-new` | `OPENAI_API_KEY` | ✅ | `openai-chat-new:gpt-4`, `openai-chat-new:gpt-4-0314`, `openai-chat-new:gpt-4-32k`, `openai-chat-new:gpt-4-32k-0314`, `openai-chat-new:gpt-3.5-turbo`, `openai-chat-new:gpt-3.5-turbo-0301` |\n",
- "| `sagemaker-endpoint` | Not applicable. | N/A | Specify an endpoint name as the model ID. In addition, you must include the `--region_name`, `--request_schema`, and the `--response_path` arguments. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints). |\n",
+ "| `openai-chat` | `OPENAI_API_KEY` | ✅ | `openai-chat:gpt-3.5-turbo`, `openai-chat:gpt-3.5-turbo-16k`, `openai-chat:gpt-3.5-turbo-0301`, `openai-chat:gpt-3.5-turbo-0613`, `openai-chat:gpt-3.5-turbo-16k-0613`, `openai-chat:gpt-4`, `openai-chat:gpt-4-0314`, `openai-chat:gpt-4-0613`, `openai-chat:gpt-4-32k`, `openai-chat:gpt-4-32k-0314`, `openai-chat:gpt-4-32k-0613` |\n",
+ "| `openai-chat-new` | `OPENAI_API_KEY` | ✅ | `openai-chat-new:gpt-3.5-turbo`, `openai-chat-new:gpt-3.5-turbo-16k`, `openai-chat-new:gpt-3.5-turbo-0301`, `openai-chat-new:gpt-3.5-turbo-0613`, `openai-chat-new:gpt-3.5-turbo-16k-0613`, `openai-chat-new:gpt-4`, `openai-chat-new:gpt-4-0314`, `openai-chat-new:gpt-4-0613`, `openai-chat-new:gpt-4-32k`, `openai-chat-new:gpt-4-32k-0314`, `openai-chat-new:gpt-4-32k-0613` |\n",
+ "| `sagemaker-endpoint` | Not applicable. | N/A | Specify an endpoint name as the model ID. In addition, you must specify a region name, request schema, and response path. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints). |\n",
"\n",
"Aliases and custom commands:\n",
"\n",
@@ -349,22 +383,40 @@
"* ai21:j2-grande-instruct\n",
"* ai21:j2-jumbo-instruct\n",
"\n",
+ "bedrock\n",
+ "* bedrock:amazon.titan-tg1-large\n",
+ "* bedrock:anthropic.claude-v1\n",
+ "* bedrock:anthropic.claude-instant-v1\n",
+ "* bedrock:anthropic.claude-v2\n",
+ "* bedrock:ai21.j2-jumbo-instruct\n",
+ "* bedrock:ai21.j2-grande-instruct\n",
+ "\n",
"anthropic\n",
"Requires environment variable ANTHROPIC_API_KEY (set)\n",
"* anthropic:claude-v1\n",
"* anthropic:claude-v1.0\n",
"* anthropic:claude-v1.2\n",
+ "* anthropic:claude-2\n",
"* anthropic:claude-instant-v1\n",
"* anthropic:claude-instant-v1.0\n",
"\n",
+ "azure-chat-openai\n",
+ "Requires environment variable OPENAI_API_KEY (set)\n",
+ "* This provider does not define a list of models.\n",
+ "\n",
"cohere\n",
"Requires environment variable COHERE_API_KEY (set)\n",
"* cohere:medium\n",
"* cohere:xlarge\n",
"\n",
+ "gpt4all\n",
+ "* gpt4all:ggml-gpt4all-j-v1.2-jazzy\n",
+ "* gpt4all:ggml-gpt4all-j-v1.3-groovy\n",
+ "* gpt4all:ggml-gpt4all-l13b-snoozy\n",
+ "\n",
"huggingface_hub\n",
"Requires environment variable HUGGINGFACEHUB_API_TOKEN (set)\n",
- "* See https://huggingface.co/models for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`.\n",
+ "* See [https://huggingface.co/models](https://huggingface.co/models) for a list of models. Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`.\n",
"\n",
"openai\n",
"Requires environment variable OPENAI_API_KEY (set)\n",
@@ -380,24 +432,34 @@
"\n",
"openai-chat\n",
"Requires environment variable OPENAI_API_KEY (set)\n",
+ "* openai-chat:gpt-3.5-turbo\n",
+ "* openai-chat:gpt-3.5-turbo-16k\n",
+ "* openai-chat:gpt-3.5-turbo-0301\n",
+ "* openai-chat:gpt-3.5-turbo-0613\n",
+ "* openai-chat:gpt-3.5-turbo-16k-0613\n",
"* openai-chat:gpt-4\n",
"* openai-chat:gpt-4-0314\n",
+ "* openai-chat:gpt-4-0613\n",
"* openai-chat:gpt-4-32k\n",
"* openai-chat:gpt-4-32k-0314\n",
- "* openai-chat:gpt-3.5-turbo\n",
- "* openai-chat:gpt-3.5-turbo-0301\n",
+ "* openai-chat:gpt-4-32k-0613\n",
"\n",
"openai-chat-new\n",
"Requires environment variable OPENAI_API_KEY (set)\n",
+ "* openai-chat-new:gpt-3.5-turbo\n",
+ "* openai-chat-new:gpt-3.5-turbo-16k\n",
+ "* openai-chat-new:gpt-3.5-turbo-0301\n",
+ "* openai-chat-new:gpt-3.5-turbo-0613\n",
+ "* openai-chat-new:gpt-3.5-turbo-16k-0613\n",
"* openai-chat-new:gpt-4\n",
"* openai-chat-new:gpt-4-0314\n",
+ "* openai-chat-new:gpt-4-0613\n",
"* openai-chat-new:gpt-4-32k\n",
"* openai-chat-new:gpt-4-32k-0314\n",
- "* openai-chat-new:gpt-3.5-turbo\n",
- "* openai-chat-new:gpt-3.5-turbo-0301\n",
+ "* openai-chat-new:gpt-4-32k-0613\n",
"\n",
"sagemaker-endpoint\n",
- "* Specify an endpoint name as the model ID. In addition, you must include the `--region_name`, `--request_schema`, and the `--response_path` arguments. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints).\n",
+ "* Specify an endpoint name as the model ID. In addition, you must specify a region name, request schema, and response path. For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints).\n",
"\n",
"\n",
"Aliases and custom commands:\n",
@@ -1055,7 +1117,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
- "version": "3.10.8"
+ "version": "3.11.4"
}
},
"nbformat": 4,
diff --git a/lerna.json b/lerna.json
index e19e10b60..b3c956cad 100644
--- a/lerna.json
+++ b/lerna.json
@@ -1,7 +1,7 @@
{
"$schema": "node_modules/lerna/schemas/lerna-schema.json",
"useWorkspaces": true,
- "version": "2.1.0",
+ "version": "2.2.0",
"npmClient": "yarn",
"useNx": true
}
diff --git a/package.json b/package.json
index edbaccdd6..09b89e11e 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "@jupyter-ai/monorepo",
- "version": "2.1.0",
+ "version": "2.2.0",
"description": "A generative AI extension for JupyterLab",
"private": true,
"keywords": [
@@ -33,7 +33,8 @@
"dev-uninstall": "lerna run dev-uninstall --stream",
"lint": "jlpm && lerna run prettier && lerna run eslint",
"lint:check": "lerna run prettier:check && lerna run eslint:check",
- "watch": "lerna run watch --parallel --stream"
+ "watch": "lerna run watch --parallel --stream",
+ "test": "lerna run test"
},
"devDependencies": {
"@jupyterlab/builder": "^4",
diff --git a/packages/jupyter-ai-magics/jupyter_ai_magics/providers.py b/packages/jupyter-ai-magics/jupyter_ai_magics/providers.py
index 93616a655..149cf9fd8 100644
--- a/packages/jupyter-ai-magics/jupyter_ai_magics/providers.py
+++ b/packages/jupyter-ai-magics/jupyter_ai_magics/providers.py
@@ -300,7 +300,7 @@ class HfHubProvider(BaseProvider, HuggingFaceHub):
models = ["*"]
model_id_key = "repo_id"
help = (
- "See https://huggingface.co/models for a list of models. "
+ "See [https://huggingface.co/models](https://huggingface.co/models) for a list of models. "
"Pass a model's repository ID as the model ID; for example, `huggingface_hub:ExampleOwner/example-model`."
)
# ipywidgets needed to suppress tqdm warning
@@ -542,7 +542,7 @@ class SmEndpointProvider(BaseProvider, SagemakerEndpoint):
# This all needs to be on one line of markdown, for use in a table
help = (
"Specify an endpoint name as the model ID. "
- "In addition, you must include the `--region_name`, `--request_schema`, and the `--response_path` arguments. "
+ "In addition, you must specify a region name, request schema, and response path. "
"For more information, see the documentation about [SageMaker endpoints deployment](https://docs.aws.amazon.com/sagemaker/latest/dg/realtime-endpoints-deployment.html) "
"and about [using magic commands with SageMaker endpoints](https://jupyter-ai.readthedocs.io/en/latest/users/index.html#using-magic-commands-with-sagemaker-endpoints)."
)
diff --git a/packages/jupyter-ai-magics/package.json b/packages/jupyter-ai-magics/package.json
index 3623e2113..fea5f845a 100644
--- a/packages/jupyter-ai-magics/package.json
+++ b/packages/jupyter-ai-magics/package.json
@@ -1,6 +1,6 @@
{
"name": "@jupyter-ai/magics",
- "version": "2.1.0",
+ "version": "2.2.0",
"description": "Jupyter AI magics Python package. Not published on NPM.",
"private": true,
"homepage": "https://github.com/jupyterlab/jupyter-ai",
diff --git a/packages/jupyter-ai/.gitignore b/packages/jupyter-ai/.gitignore
index 7c34e452b..7198a2ce0 100644
--- a/packages/jupyter-ai/.gitignore
+++ b/packages/jupyter-ai/.gitignore
@@ -124,3 +124,4 @@ dmypy.json
# Coverage reports
coverage/*
+junit.xml
diff --git a/packages/jupyter-ai/jest.config.js b/packages/jupyter-ai/jest.config.js
index 4f1bf3dab..c289e813e 100644
--- a/packages/jupyter-ai/jest.config.js
+++ b/packages/jupyter-ai/jest.config.js
@@ -1,46 +1,29 @@
const jestJupyterLab = require('@jupyterlab/testutils/lib/jest-config');
const esModules = [
+ '@codemirror',
+ '@jupyter/ydoc',
'@jupyterlab/',
'lib0',
- 'y\\-protocols',
- 'y\\-websocket',
+ 'nanoid',
+ 'vscode-ws-jsonrpc',
+ 'y-protocols',
+ 'y-websocket',
'yjs'
].join('|');
-const jlabConfig = jestJupyterLab(__dirname);
-
-const {
- moduleFileExtensions,
- moduleNameMapper,
- preset,
- setupFilesAfterEnv,
- setupFiles,
- testPathIgnorePatterns,
- transform
-} = jlabConfig;
+const baseConfig = jestJupyterLab(__dirname);
module.exports = {
- moduleFileExtensions,
- moduleNameMapper,
- preset,
- setupFilesAfterEnv,
- setupFiles,
- testPathIgnorePatterns,
- transform,
+ ...baseConfig,
automock: false,
collectCoverageFrom: [
- 'src/**/*.{ts,tsx}',
- '!src/**/*.d.ts',
- '!src/**/.ipynb_checkpoints/*'
+ // TODO: re-enable coverage reports when we have more comprehensive testing
+ // 'src/**/*.{ts,tsx}',
+ // '!src/**/*.d.ts',
+ // '!src/**/.ipynb_checkpoints/*'
],
- coverageDirectory: 'coverage',
coverageReporters: ['lcov', 'text'],
- globals: {
- 'ts-jest': {
- tsconfig: 'tsconfig.json'
- }
- },
testRegex: 'src/.*/.*.spec.ts[x]?$',
transformIgnorePatterns: [`/node_modules/(?!${esModules}).+`]
};
diff --git a/packages/jupyter-ai/jupyter_ai/chat_handlers/base.py b/packages/jupyter-ai/jupyter_ai/chat_handlers/base.py
index ebb2fc72d..87da6d214 100644
--- a/packages/jupyter-ai/jupyter_ai/chat_handlers/base.py
+++ b/packages/jupyter-ai/jupyter_ai/chat_handlers/base.py
@@ -61,8 +61,8 @@ def reply(self, response, human_msg: Optional[HumanChatMessage] = None):
break
def get_llm_chain(self):
- lm_provider = self.config_manager.get_lm_provider()
- lm_provider_params = self.config_manager.get_lm_provider_params()
+ lm_provider = self.config_manager.lm_provider
+ lm_provider_params = self.config_manager.lm_provider_params
curr_lm_id = (
f'{self.llm.id}:{lm_provider_params["model_id"]}' if self.llm else None
diff --git a/packages/jupyter-ai/jupyter_ai/chat_handlers/learn.py b/packages/jupyter-ai/jupyter_ai/chat_handlers/learn.py
index 7d88beac2..712444f3c 100644
--- a/packages/jupyter-ai/jupyter_ai/chat_handlers/learn.py
+++ b/packages/jupyter-ai/jupyter_ai/chat_handlers/learn.py
@@ -278,10 +278,7 @@ async def aget_relevant_documents(
return docs
def get_embedding_provider(self):
- em_provider_cls = self.config_manager.get_em_provider()
- em_provider_args = self.config_manager.get_em_provider_params()
-
- return em_provider_cls, em_provider_args
+ return self.config_manager.em_provider, self.config_manager.em_provider_params
def get_embedding_model(self):
em_provider_cls, em_provider_args = self.get_embedding_provider()
diff --git a/packages/jupyter-ai/jupyter_ai/config/config_schema.json b/packages/jupyter-ai/jupyter_ai/config/config_schema.json
new file mode 100644
index 000000000..ff7c717c4
--- /dev/null
+++ b/packages/jupyter-ai/jupyter_ai/config/config_schema.json
@@ -0,0 +1,42 @@
+{
+ "title": "Jupyter AI configuration",
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
+ "$comment": "Default values are sourced from `config_manager.py`.",
+ "type": "object",
+ "properties": {
+ "model_provider_id": {
+ "$comment": "Language model global ID.",
+ "type": ["string", "null"],
+ "default": null,
+ "readOnly": false
+ },
+ "embeddings_provider_id": {
+ "$comment": "Embedding model global ID.",
+ "type": ["string", "null"],
+ "default": null,
+ "readOnly": false
+ },
+ "api_keys": {
+ "$comment": "Dictionary of API keys, mapping key names to key values.",
+ "type": "object",
+ "default": {}
+ },
+ "send_with_shift_enter": {
+ "$comment": "Whether to send a message via Shift-Enter instead of Enter.",
+ "type": "boolean",
+ "default": false,
+ "readOnly": false
+ },
+ "fields": {
+ "$comment": "Dictionary of model-specific fields, mapping LM GIDs to sub-dictionaries of field key-value pairs.",
+ "type": "object",
+ "default": {},
+ "patternProperties": {
+ "^.*$": {
+ "anyOf": [{ "type": "object" }]
+ }
+ },
+ "additionalProperties": false
+ }
+ }
+}
diff --git a/packages/jupyter-ai/jupyter_ai/config_manager.py b/packages/jupyter-ai/jupyter_ai/config_manager.py
index 5fa8b8a72..f61e07bde 100644
--- a/packages/jupyter-ai/jupyter_ai/config_manager.py
+++ b/packages/jupyter-ai/jupyter_ai/config_manager.py
@@ -1,9 +1,13 @@
import json
import logging
import os
-from typing import Any, Dict, Union
+import shutil
+import time
+from typing import Optional, Union
-from jupyter_ai.models import GlobalConfig
+from deepmerge import always_merger as Merger
+from jsonschema import Draft202012Validator as Validator
+from jupyter_ai.models import DescribeConfigResponse, GlobalConfig, UpdateConfigRequest
from jupyter_ai_magics.utils import (
AnyProvider,
EmProvidersDict,
@@ -12,120 +16,317 @@
get_lm_provider,
)
from jupyter_core.paths import jupyter_data_dir
+from traitlets import Integer, Unicode
+from traitlets.config import Configurable
Logger = Union[logging.Logger, logging.LoggerAdapter]
+# default path to config
+DEFAULT_CONFIG_PATH = os.path.join(jupyter_data_dir(), "jupyter_ai", "config.json")
-class ConfigManager:
+# default path to config JSON Schema
+DEFAULT_SCHEMA_PATH = os.path.join(
+ jupyter_data_dir(), "jupyter_ai", "config_schema.json"
+)
+
+# default no. of spaces to use when formatting config
+DEFAULT_INDENTATION_DEPTH = 4
+
+# path to the default schema defined in this project
+# if a file does not exist at SCHEMA_PATH, this file is used as a default.
+OUR_SCHEMA_PATH = os.path.join(
+ os.path.dirname(__file__), "config", "config_schema.json"
+)
+
+
+class AuthError(Exception):
+ pass
+
+
+class WriteConflictError(Exception):
+ pass
+
+
+class KeyInUseError(Exception):
+ pass
+
+
+class KeyEmptyError(Exception):
+ pass
+
+
+def _validate_provider_authn(config: GlobalConfig, provider: AnyProvider):
+ # TODO: handle non-env auth strategies
+ if not provider.auth_strategy or provider.auth_strategy.type != "env":
+ return
+
+ if provider.auth_strategy.name not in config.api_keys:
+ raise AuthError(
+ f"Missing API key for '{provider.auth_strategy.name}' in the config."
+ )
+
+
+class ConfigManager(Configurable):
"""Provides model and embedding provider id along
with the credentials to authenticate providers.
"""
+ config_path = Unicode(
+ default_value=DEFAULT_CONFIG_PATH,
+ help="Path to the configuration file.",
+ allow_none=False,
+ config=True,
+ )
+
+ schema_path = Unicode(
+ default_value=DEFAULT_SCHEMA_PATH,
+ help="Path to the configuration's corresponding JSON Schema file.",
+ allow_none=False,
+ config=True,
+ )
+
+ indentation_depth = Integer(
+ default_value=DEFAULT_INDENTATION_DEPTH,
+ help="Indentation depth, in number of spaces per level.",
+ allow_none=False,
+ config=True,
+ )
+
def __init__(
- self, log: Logger, lm_providers: LmProvidersDict, em_providers: EmProvidersDict
+ self,
+ log: Logger,
+ lm_providers: LmProvidersDict,
+ em_providers: EmProvidersDict,
+ *args,
+ **kwargs,
):
+ super().__init__(*args, **kwargs)
self.log = log
- self.save_dir = os.path.join(jupyter_data_dir(), "jupyter_ai")
- self.save_path = os.path.join(self.save_dir, "config.json")
- self.config = None
- self.lm_providers = lm_providers
- self.em_providers = em_providers
- self.lm_provider = None
- self.lm_provider_params = {}
- self.em_provider = None
- self.em_provider_params = {}
- self._load()
-
- def update(self, config: GlobalConfig, save_to_disk: bool = True):
- self._update_lm_provider(config)
- self._update_em_provider(config)
- if save_to_disk:
- self._save(config)
- self.config = config
+ """List of LM providers."""
+ self._lm_providers = lm_providers
+ """List of EM providers."""
+ self._em_providers = em_providers
- def get_config(self):
- return self.config
+ """When the server last read the config file. If the file was not
+ modified after this time, then we can return the cached
+ `self._config`."""
+ self._last_read: Optional[int] = None
- def get_lm_provider(self):
- return self.lm_provider
+ """In-memory cache of the `GlobalConfig` object parsed from the config
+ file."""
+ self._config: Optional[GlobalConfig] = None
- def get_lm_provider_params(self):
- return self.lm_provider_params
+ self._init_config_schema()
+ self._init_validator()
+ self._init_config()
- def get_em_provider(self):
- return self.em_provider
+ def _init_config_schema(self):
+ if not os.path.exists(self.schema_path):
+ os.makedirs(os.path.dirname(self.schema_path), exist_ok=True)
+ shutil.copy(OUR_SCHEMA_PATH, self.schema_path)
- def get_em_provider_params(self):
- return self.em_provider_params
+ def _init_validator(self) -> Validator:
+ with open(OUR_SCHEMA_PATH, encoding="utf-8") as f:
+ schema = json.loads(f.read())
+ Validator.check_schema(schema)
+ self.validator = Validator(schema)
- def _authenticate_provider(
- self,
- provider: AnyProvider,
- provider_params: Dict[str, Any],
- config: GlobalConfig,
- ):
- auth_strategy = provider.auth_strategy
- if auth_strategy and auth_strategy.type == "env":
- api_keys = config.api_keys
- name = auth_strategy.name
- if name not in api_keys:
+ def _init_config(self):
+ if os.path.exists(self.config_path):
+ with open(self.config_path, encoding="utf-8") as f:
+ config = GlobalConfig(**json.loads(f.read()))
+ # re-write to the file to validate the config and apply any
+ # updates to the config file immediately
+ self._write_config(config)
+ return
+
+ properties = self.validator.schema.get("properties", {})
+ field_list = GlobalConfig.__fields__.keys()
+ field_dict = {
+ field: properties.get(field).get("default") for field in field_list
+ }
+ default_config = GlobalConfig(**field_dict)
+ self._write_config(default_config)
+
+ def _read_config(self) -> GlobalConfig:
+ """Returns the user's current configuration as a GlobalConfig object.
+ This should never be sent to the client as it includes API keys. Prefer
+ self.get_config() for sending the config to the client."""
+ if self._config and self._last_read:
+ last_write = os.stat(self.config_path).st_mtime_ns
+ if last_write <= self._last_read:
+ return self._config
+
+ with open(self.config_path, encoding="utf-8") as f:
+ self._last_read = time.time_ns()
+ raw_config = json.loads(f.read())
+ config = GlobalConfig(**raw_config)
+ self._validate_config(config)
+ return config
+
+ def _validate_config(self, config: GlobalConfig):
+ """Method used to validate the configuration. This is called after every
+ read and before every write to the config file. Guarantees that the
+ config file conforms to the JSON Schema, and that the language and
+ embedding models have authn credentials if specified."""
+ self.validator.validate(config.dict())
+
+ # validate language model config
+ if config.model_provider_id:
+ _, lm_provider = get_lm_provider(
+ config.model_provider_id, self._lm_providers
+ )
+ if not lm_provider:
raise ValueError(
- f"Missing value for '{auth_strategy.name}' in the config."
+ f"No language model is associated with '{config.model_provider_id}'."
)
- provider_params[name.lower()] = api_keys[name]
+ _validate_provider_authn(config, lm_provider)
- def _update_lm_provider(self, config: GlobalConfig):
- model_id = config.model_provider_id
+ # validate embedding model config
+ if config.embeddings_provider_id:
+ _, em_provider = get_em_provider(
+ config.embeddings_provider_id, self._em_providers
+ )
+ if not em_provider:
+ raise ValueError(
+ f"No embedding model is associated with '{config.embeddings_provider_id}'."
+ )
+ _validate_provider_authn(config, em_provider)
- if not model_id:
- self.lm_provider = None
- self.lm_provider_params = None
- return
+ def _write_config(self, new_config: GlobalConfig):
+ """Updates configuration and persists it to disk. This accepts a
+ complete `GlobalConfig` object, and should not be called publicly."""
+ # remove any empty field dictionaries
+ new_config.fields = {k: v for k, v in new_config.fields.items() if v}
- local_model_id, provider = get_lm_provider(model_id, self.lm_providers)
+ self._validate_config(new_config)
+ with open(self.config_path, "w") as f:
+ json.dump(new_config.dict(), f, indent=self.indentation_depth)
- if not provider:
- raise ValueError(f"No provider and model found with '{model_id}'")
+ def delete_api_key(self, key_name: str):
+ config_dict = self._read_config().dict()
+ lm_provider = self.lm_provider
+ em_provider = self.em_provider
+ required_keys = []
+ if (
+ lm_provider
+ and lm_provider.auth_strategy
+ and lm_provider.auth_strategy.type == "env"
+ ):
+ required_keys.append(lm_provider.auth_strategy.name)
+ if (
+ em_provider
+ and em_provider.auth_strategy
+ and em_provider.auth_strategy.type == "env"
+ ):
+ required_keys.append(self.em_provider.auth_strategy.name)
- fields = config.fields.get(model_id, {})
- provider_params = {"model_id": local_model_id, **fields}
+ if key_name in required_keys:
+ raise KeyInUseError(
+ "This API key is currently in use by the language or embedding model. Please change the model before deleting the corresponding API key."
+ )
- self._authenticate_provider(provider, provider_params, config)
- self.lm_provider = provider
- self.lm_provider_params = provider_params
+ config_dict["api_keys"].pop(key_name, None)
+ self._write_config(GlobalConfig(**config_dict))
- def _update_em_provider(self, config: GlobalConfig):
- model_id = config.embeddings_provider_id
+ def update_config(self, config_update: UpdateConfigRequest):
+ last_write = os.stat(self.config_path).st_mtime_ns
+ if config_update.last_read and config_update.last_read < last_write:
+ raise WriteConflictError(
+ "Configuration was modified after it was read from disk."
+ )
- if not model_id:
- self.em_provider = None
- self.em_provider_params
- return
+ if config_update.api_keys:
+ for api_key_value in config_update.api_keys.values():
+ if not api_key_value:
+ raise KeyEmptyError("API key value cannot be empty.")
- local_model_id, provider = get_em_provider(model_id, self.em_providers)
+ config_dict = self._read_config().dict()
+ Merger.merge(config_dict, config_update.dict(exclude_unset=True))
+ self._write_config(GlobalConfig(**config_dict))
- if not provider:
- raise ValueError(f"No provider and model found with '{model_id}'")
+ # this cannot be a property, as the parent Configurable already defines the
+ # self.config attr.
+ def get_config(self):
+ config = self._read_config()
+ config_dict = config.dict(exclude_unset=True)
+ api_key_names = list(config_dict.pop("api_keys").keys())
+ return DescribeConfigResponse(
+ **config_dict, api_keys=api_key_names, last_read=self._last_read
+ )
- provider_params = {"model_id": local_model_id}
+ @property
+ def lm_gid(self):
+ config = self._read_config()
+ return config.model_provider_id
- self._authenticate_provider(provider, provider_params, config)
- self.em_provider = provider
- self.em_provider_params = provider_params
+ @property
+ def em_gid(self):
+ config = self._read_config()
+ return config.embeddings_provider_id
- def _save(self, config: GlobalConfig):
- if not os.path.exists(self.save_dir):
- os.makedirs(self.save_dir)
+ @property
+ def lm_provider(self):
+ config = self._read_config()
+ lm_gid = config.model_provider_id
+ if lm_gid is None:
+ return None
- with open(self.save_path, "w") as f:
- f.write(config.json())
+ _, Provider = get_lm_provider(config.model_provider_id, self._lm_providers)
+ return Provider
- def _load(self):
- if os.path.exists(self.save_path):
- with open(self.save_path, encoding="utf-8") as f:
- config = GlobalConfig(**json.loads(f.read()))
- self.update(config, False)
- return
+ @property
+ def em_provider(self):
+ config = self._read_config()
+ em_gid = config.embeddings_provider_id
+ if em_gid is None:
+ return None
+
+ _, Provider = get_em_provider(em_gid, self._em_providers)
+ return Provider
+
+ @property
+ def lm_provider_params(self):
+ # get generic fields
+ config = self._read_config()
+ lm_gid = config.model_provider_id
+ if not lm_gid:
+ return None
+
+ lm_lid = lm_gid.split(":", 1)[1]
+ fields = config.fields.get(lm_gid, {})
+
+ # get authn fields
+ _, Provider = get_lm_provider(lm_gid, self._lm_providers)
+ authn_fields = {}
+ if Provider.auth_strategy and Provider.auth_strategy.type == "env":
+ key_name = Provider.auth_strategy.name
+ authn_fields[key_name.lower()] = config.api_keys[key_name]
+
+ return {
+ "model_id": lm_lid,
+ **fields,
+ **authn_fields,
+ }
+
+ @property
+ def em_provider_params(self):
+ # get generic fields
+ config = self._read_config()
+ em_gid = config.embeddings_provider_id
+ if not em_gid:
+ return None
+
+ em_lid = em_gid.split(":", 1)[1]
+
+ # get authn fields
+ _, Provider = get_em_provider(em_gid, self._em_providers)
+ authn_fields = {}
+ if Provider.auth_strategy and Provider.auth_strategy.type == "env":
+ key_name = Provider.auth_strategy.name
+ authn_fields[key_name.lower()] = config.api_keys[key_name]
- # otherwise, create a new empty config file
- self.update(GlobalConfig(), True)
+ return {
+ "model_id": em_lid,
+ **authn_fields,
+ }
diff --git a/packages/jupyter-ai/jupyter_ai/extension.py b/packages/jupyter-ai/jupyter_ai/extension.py
index a6564679b..7b6d07b31 100644
--- a/packages/jupyter-ai/jupyter_ai/extension.py
+++ b/packages/jupyter-ai/jupyter_ai/extension.py
@@ -16,6 +16,7 @@
from .chat_handlers.help import HelpMessage
from .config_manager import ConfigManager
from .handlers import (
+ ApiKeysHandler,
ChatHistoryHandler,
EmbeddingsModelProviderHandler,
GlobalConfigHandler,
@@ -27,7 +28,8 @@
class AiExtension(ExtensionApp):
name = "jupyter_ai"
handlers = [
- ("api/ai/config", GlobalConfigHandler),
+ (r"api/ai/api_keys/(?P\w+)", ApiKeysHandler),
+ (r"api/ai/config/?", GlobalConfigHandler),
(r"api/ai/chats/?", RootChatHandler),
(r"api/ai/chats/history?", ChatHistoryHandler),
(r"api/ai/providers?", ModelProviderHandler),
@@ -41,6 +43,8 @@ def initialize_settings(self):
self.settings["em_providers"] = get_em_providers(log=self.log)
self.settings["jai_config_manager"] = ConfigManager(
+ # traitlets configuration, not JAI configuration.
+ config=self.config,
log=self.log,
lm_providers=self.settings["lm_providers"],
em_providers=self.settings["em_providers"],
diff --git a/packages/jupyter-ai/jupyter_ai/handlers.py b/packages/jupyter-ai/jupyter_ai/handlers.py
index 95db5198a..ddc4c6255 100644
--- a/packages/jupyter-ai/jupyter_ai/handlers.py
+++ b/packages/jupyter-ai/jupyter_ai/handlers.py
@@ -8,6 +8,7 @@
import tornado
from jupyter_ai.chat_handlers import BaseChatHandler
+from jupyter_ai.config_manager import ConfigManager, KeyEmptyError, WriteConflictError
from jupyter_server.base.handlers import APIHandler as BaseAPIHandler
from jupyter_server.base.handlers import JupyterHandler
from pydantic import ValidationError
@@ -22,11 +23,11 @@
ChatRequest,
ChatUser,
ConnectionMessage,
- GlobalConfig,
HumanChatMessage,
ListProvidersEntry,
ListProvidersResponse,
Message,
+ UpdateConfigRequest,
)
if TYPE_CHECKING:
@@ -261,6 +262,7 @@ def get(self):
id=provider.id,
name=provider.name,
models=provider.models,
+ help=provider.help,
auth_strategy=provider.auth_strategy,
registry=provider.registry,
fields=provider.fields,
@@ -320,11 +322,11 @@ def get(self):
@web.authenticated
def post(self):
try:
- config = GlobalConfig(**self.get_json_body())
- self.config_manager.update(config)
+ config = UpdateConfigRequest(**self.get_json_body())
+ self.config_manager.update_config(config)
self.set_status(204)
self.finish()
- except ValidationError as e:
+ except (ValidationError, WriteConflictError, KeyEmptyError) as e:
self.log.exception(e)
raise HTTPError(500, str(e)) from e
except ValueError as e:
@@ -335,3 +337,16 @@ def post(self):
raise HTTPError(
500, "Unexpected error occurred while updating the config."
) from e
+
+
+class ApiKeysHandler(BaseAPIHandler):
+ @property
+ def config_manager(self) -> ConfigManager:
+ return self.settings["jai_config_manager"]
+
+ @web.authenticated
+ def delete(self, api_key_name: str):
+ try:
+ self.config_manager.delete_api_key(api_key_name)
+ except Exception as e:
+ raise HTTPError(500, str(e))
diff --git a/packages/jupyter-ai/jupyter_ai/models.py b/packages/jupyter-ai/jupyter_ai/models.py
index ca2030881..efe501923 100644
--- a/packages/jupyter-ai/jupyter_ai/models.py
+++ b/packages/jupyter-ai/jupyter_ai/models.py
@@ -1,7 +1,7 @@
from typing import Any, Dict, List, Literal, Optional, Union
from jupyter_ai_magics.providers import AuthStrategy, Field
-from pydantic import BaseModel
+from pydantic import BaseModel, validator
DEFAULT_CHUNK_SIZE = 2000
DEFAULT_CHUNK_OVERLAP = 100
@@ -79,6 +79,7 @@ class ListProvidersEntry(BaseModel):
name: str
model_id_label: Optional[str]
models: List[str]
+ help: Optional[str]
auth_strategy: AuthStrategy
registry: bool
fields: List[Field]
@@ -98,9 +99,47 @@ class IndexMetadata(BaseModel):
dirs: List[IndexedDir]
+class DescribeConfigResponse(BaseModel):
+ model_provider_id: Optional[str]
+ embeddings_provider_id: Optional[str]
+ send_with_shift_enter: bool
+ fields: Dict[str, Dict[str, Any]]
+ # when sending config over REST API, do not include values of the API keys,
+ # just the names.
+ api_keys: List[str]
+ # timestamp indicating when the configuration file was last read. should be
+ # passed to the subsequent UpdateConfig request.
+ last_read: int
+
+
+def forbid_none(cls, v):
+ assert v is not None, "size may not be None"
+ return v
+
+
+class UpdateConfigRequest(BaseModel):
+ model_provider_id: Optional[str]
+ embeddings_provider_id: Optional[str]
+ send_with_shift_enter: Optional[bool]
+ api_keys: Optional[Dict[str, str]]
+ fields: Optional[Dict[str, Dict[str, Any]]]
+ # if passed, this will raise an Error if the config was written to after the
+ # time specified by `last_read` to prevent write-write conflicts.
+ last_read: Optional[int]
+
+ _validate_send_wse = validator("send_with_shift_enter", allow_reuse=True)(
+ forbid_none
+ )
+ _validate_api_keys = validator("api_keys", allow_reuse=True)(forbid_none)
+ _validate_fields = validator("fields", allow_reuse=True)(forbid_none)
+
+
class GlobalConfig(BaseModel):
- model_provider_id: Optional[str] = None
- embeddings_provider_id: Optional[str] = None
- api_keys: Dict[str, str] = {}
- send_with_shift_enter: Optional[bool] = None
- fields: Dict[str, Dict[str, Any]] = {}
+ """Model used to represent the config by ConfigManager. This is exclusive to
+ the backend and should never be sent to the client."""
+
+ model_provider_id: Optional[str]
+ embeddings_provider_id: Optional[str]
+ send_with_shift_enter: bool
+ fields: Dict[str, Dict[str, Any]]
+ api_keys: Dict[str, str]
diff --git a/packages/jupyter-ai/jupyter_ai/tests/__snapshots__/test_config_manager.ambr b/packages/jupyter-ai/jupyter_ai/tests/__snapshots__/test_config_manager.ambr
new file mode 100644
index 000000000..cd254bedc
--- /dev/null
+++ b/packages/jupyter-ai/jupyter_ai/tests/__snapshots__/test_config_manager.ambr
@@ -0,0 +1,12 @@
+# serializer version: 1
+# name: test_snapshot_default_config
+ dict({
+ 'api_keys': list([
+ ]),
+ 'embeddings_provider_id': None,
+ 'fields': dict({
+ }),
+ 'model_provider_id': None,
+ 'send_with_shift_enter': False,
+ })
+# ---
diff --git a/packages/jupyter-ai/jupyter_ai/tests/test_config_manager.py b/packages/jupyter-ai/jupyter_ai/tests/test_config_manager.py
new file mode 100644
index 000000000..f7afbd29a
--- /dev/null
+++ b/packages/jupyter-ai/jupyter_ai/tests/test_config_manager.py
@@ -0,0 +1,247 @@
+import json
+import logging
+import os
+
+import pytest
+from jupyter_ai.config_manager import (
+ AuthError,
+ ConfigManager,
+ KeyInUseError,
+ WriteConflictError,
+)
+from jupyter_ai.models import DescribeConfigResponse, UpdateConfigRequest
+from jupyter_ai_magics.utils import get_em_providers, get_lm_providers
+from pydantic import ValidationError
+
+
+@pytest.fixture
+def config_path(jp_data_dir):
+ return str(jp_data_dir / "config.json")
+
+
+@pytest.fixture
+def schema_path(jp_data_dir):
+ return str(jp_data_dir / "config_schema.json")
+
+
+@pytest.fixture
+def common_cm_kwargs(config_path, schema_path):
+ """Kwargs that are commonly used when initializing the CM."""
+ log = logging.getLogger()
+ lm_providers = get_lm_providers()
+ em_providers = get_em_providers()
+ return {
+ "log": log,
+ "lm_providers": lm_providers,
+ "em_providers": em_providers,
+ "config_path": config_path,
+ "schema_path": schema_path,
+ }
+
+
+@pytest.fixture
+def cm(common_cm_kwargs):
+ """The default ConfigManager instance, with an empty config and config schema."""
+ return ConfigManager(**common_cm_kwargs)
+
+
+@pytest.fixture(autouse=True)
+def reset(config_path, schema_path):
+ """Fixture that deletes the config and config schema after each test."""
+ yield
+ try:
+ os.remove(config_path)
+ except OSError:
+ pass
+ try:
+ os.remove(schema_path)
+ except OSError:
+ pass
+
+
+def configure_to_cohere(cm: ConfigManager):
+ """Configures the ConfigManager to use Cohere language and embedding models
+ with the API key set. Returns a 3-tuple of the keyword arguments used."""
+ LM_GID = "cohere:xlarge"
+ EM_GID = "cohere:large"
+ API_KEYS = {"COHERE_API_KEY": "foobar"}
+ # the params use lowercase key names
+ LM_LID = "xlarge"
+ EM_LID = "large"
+ API_PARAMS = {"cohere_api_key": "foobar"}
+ req = UpdateConfigRequest(
+ model_provider_id=LM_GID, embeddings_provider_id=EM_GID, api_keys=API_KEYS
+ )
+ cm.update_config(req)
+ return LM_GID, EM_GID, LM_LID, EM_LID, API_PARAMS
+
+
+def configure_to_openai(cm: ConfigManager):
+ """Configures the ConfigManager to use OpenAI language and embedding models
+ with the API key set. Returns a 3-tuple of the keyword arguments used."""
+ LM_GID = "openai-chat-new:gpt-3.5-turbo"
+ EM_GID = "openai:text-embedding-ada-002"
+ API_KEYS = {"OPENAI_API_KEY": "foobar"}
+ LM_LID = "gpt-3.5-turbo"
+ EM_LID = "text-embedding-ada-002"
+ API_PARAMS = {"openai_api_key": "foobar"}
+ req = UpdateConfigRequest(
+ model_provider_id=LM_GID, embeddings_provider_id=EM_GID, api_keys=API_KEYS
+ )
+ cm.update_config(req)
+ return LM_GID, EM_GID, LM_LID, EM_LID, API_PARAMS
+
+
+def test_snapshot_default_config(cm: ConfigManager, snapshot):
+ config_from_cm: DescribeConfigResponse = cm.get_config()
+ assert config_from_cm == snapshot(exclude=lambda prop, path: prop == "last_read")
+
+
+def test_init_with_existing_config(
+ cm: ConfigManager, config_path: str, schema_path: str
+):
+ configure_to_cohere(cm)
+ del cm
+
+ log = logging.getLogger()
+ lm_providers = get_lm_providers()
+ em_providers = get_em_providers()
+ ConfigManager(
+ log=log,
+ lm_providers=lm_providers,
+ em_providers=em_providers,
+ config_path=config_path,
+ schema_path=schema_path,
+ )
+
+
+def test_property_access_on_default_config(cm: ConfigManager):
+ """Asserts that the CM behaves well with an empty, default
+ configuration."""
+ assert cm.lm_gid == None
+ assert cm.em_gid == None
+ assert cm.lm_provider == None
+ assert cm.lm_provider_params == None
+ assert cm.em_provider == None
+ assert cm.em_provider_params == None
+
+
+def test_indentation_depth(common_cm_kwargs, config_path):
+ """Asserts that the CM indents the configuration and respects the
+ `indentation_depth` trait when specified."""
+ INDENT_DEPTH = 7
+ ConfigManager(**common_cm_kwargs, indentation_depth=INDENT_DEPTH)
+ with open(config_path) as f:
+ config_file = f.read()
+ config_lines = config_file.split("\n")
+ lm_gid_line = next(
+ line for line in config_lines if '"model_provider_id":' in line
+ )
+ assert lm_gid_line.startswith(" " * INDENT_DEPTH)
+ assert not lm_gid_line.startswith(" " * (INDENT_DEPTH + 1))
+
+
+def test_describe(cm: ConfigManager):
+ LM_GID, EM_GID, LM_LID, EM_LID, API_PARAMS = configure_to_cohere(cm)
+
+ config_desc = cm.get_config()
+ assert config_desc.model_provider_id == LM_GID
+ assert config_desc.embeddings_provider_id == EM_GID
+ assert config_desc.api_keys == ["COHERE_API_KEY"]
+ assert cm.lm_provider_params == {**API_PARAMS, "model_id": LM_LID}
+ assert cm.em_provider_params == {**API_PARAMS, "model_id": EM_LID}
+
+
+def test_update(cm: ConfigManager):
+ LM_GID, EM_GID, LM_LID, EM_LID, API_PARAMS = configure_to_cohere(cm)
+
+ new_config = cm.get_config()
+ assert new_config.model_provider_id == LM_GID
+ assert new_config.embeddings_provider_id == EM_GID
+ assert new_config.api_keys == ["COHERE_API_KEY"]
+ assert cm.lm_provider_params == {**API_PARAMS, "model_id": LM_LID}
+ assert cm.em_provider_params == {**API_PARAMS, "model_id": EM_LID}
+
+
+def test_update_no_empty_field_dicts(cm: ConfigManager, config_path):
+ LM_GID, _, _, _, _ = configure_to_cohere(cm)
+ cm.update_config(UpdateConfigRequest(fields={LM_GID: {}}))
+
+ with open(config_path) as f:
+ raw_config = json.loads(f.read())
+ assert raw_config["fields"] == {}
+
+
+def test_update_fails_with_invalid_req():
+ with pytest.raises(ValidationError):
+ UpdateConfigRequest(send_with_shift_enter=None)
+ with pytest.raises(ValidationError):
+ UpdateConfigRequest(fields=None)
+ with pytest.raises(ValidationError):
+ UpdateConfigRequest(api_keys=None)
+
+
+def test_update_fails_without_auth(cm: ConfigManager):
+ LM_GID = "cohere:xlarge"
+ EM_GID = "cohere:large"
+ req = UpdateConfigRequest(model_provider_id=LM_GID, embeddings_provider_id=EM_GID)
+ with pytest.raises(AuthError):
+ cm.update_config(req)
+
+
+def test_update_after_describe(cm: ConfigManager):
+ configure_to_cohere(cm)
+ last_read = cm.get_config().last_read
+ cm.update_config(
+ UpdateConfigRequest(model_provider_id="cohere:medium", last_read=last_read)
+ )
+
+ new_config = cm.get_config()
+ assert new_config.model_provider_id == "cohere:medium"
+
+
+def test_forbid_write_write_conflict(cm: ConfigManager):
+ configure_to_openai(cm)
+ # call DescribeConfig
+ last_read = cm.get_config().last_read
+
+ # call UpdateConfig separately after DescribeConfig with `last_read` unset
+ # to force a write
+ cm.update_config(UpdateConfigRequest(model_provider_id="openai-chat-new:gpt-4"))
+
+ # this update should fail, as this generates a write-write conflict (where
+ # the second update clobbers the first update).
+ with pytest.raises(WriteConflictError):
+ cm.update_config(
+ UpdateConfigRequest(
+ model_provider_id="openai-chat-new:gpt-4-32k", last_read=last_read
+ )
+ )
+
+
+def test_update_api_key(cm: ConfigManager):
+ """Asserts that updates via direct edits to the config file are immediately
+ reflected by the ConfigManager."""
+ LM_GID, EM_GID, LM_LID, EM_LID, _ = configure_to_cohere(cm)
+ cm.update_config(UpdateConfigRequest(api_keys={"COHERE_API_KEY": "barfoo"}))
+
+ config_desc = cm.get_config()
+ assert config_desc.api_keys == ["COHERE_API_KEY"]
+ assert cm.lm_provider_params == {"cohere_api_key": "barfoo", "model_id": LM_LID}
+ assert cm.em_provider_params == {"cohere_api_key": "barfoo", "model_id": EM_LID}
+
+
+def test_delete_api_key(cm: ConfigManager):
+ configure_to_cohere(cm)
+ cm.update_config(UpdateConfigRequest(api_keys={"OPENAI_API_KEY": "asdf"}))
+ assert cm.get_config().api_keys == ["COHERE_API_KEY", "OPENAI_API_KEY"]
+
+ cm.delete_api_key("OPENAI_API_KEY")
+ assert cm.get_config().api_keys == ["COHERE_API_KEY"]
+
+
+def test_forbid_deleting_key_in_use(cm: ConfigManager):
+ configure_to_cohere(cm)
+
+ with pytest.raises(KeyInUseError):
+ cm.delete_api_key("COHERE_API_KEY")
diff --git a/packages/jupyter-ai/package.json b/packages/jupyter-ai/package.json
index 513650c8a..58f074c8d 100644
--- a/packages/jupyter-ai/package.json
+++ b/packages/jupyter-ai/package.json
@@ -1,6 +1,6 @@
{
"name": "@jupyter-ai/core",
- "version": "2.1.0",
+ "version": "2.2.0",
"description": "A generative AI extension for JupyterLab",
"keywords": [
"jupyter",
@@ -54,7 +54,7 @@
"watch": "run-p watch:src watch:labextension",
"watch:src": "tsc -w",
"watch:labextension": "jupyter labextension watch .",
- "dev-install": "pip install -e \".[dev,all]\" && jupyter labextension develop . --overwrite && jupyter server extension enable jupyter_ai",
+ "dev-install": "pip install -e \".[dev,all,test]\" && jupyter labextension develop . --overwrite && jupyter server extension enable jupyter_ai",
"dev-uninstall": "pip uninstall jupyter_ai -y"
},
"dependencies": {
@@ -87,14 +87,14 @@
"@babel/preset-env": "^7.0.0",
"@jupyterlab/builder": "^4",
"@jupyterlab/testutils": "^4",
- "@types/jest": "^26.0.0",
+ "@types/jest": "^29",
"@types/react-syntax-highlighter": "^15.5.6",
"@typescript-eslint/eslint-plugin": "^4.8.1",
"@typescript-eslint/parser": "^4.8.1",
"eslint": "^7.14.0",
"eslint-config-prettier": "^6.15.0",
"eslint-plugin-prettier": "^3.1.4",
- "jest": "^26.0.0",
+ "jest": "^29",
"mkdirp": "^1.0.3",
"npm-run-all": "^4.1.5",
"prettier": "^2.1.1",
@@ -104,7 +104,7 @@
"stylelint-config-recommended": "^6.0.0",
"stylelint-config-standard": "~24.0.0",
"stylelint-prettier": "^2.0.0",
- "ts-jest": "^26.0.0",
+ "ts-jest": "^29",
"typescript": "5.1.6",
"y-protocols": "^1.0.5"
},
diff --git a/packages/jupyter-ai/pyproject.toml b/packages/jupyter-ai/pyproject.toml
index 71ae54ff4..6735f9c2e 100644
--- a/packages/jupyter-ai/pyproject.toml
+++ b/packages/jupyter-ai/pyproject.toml
@@ -34,6 +34,8 @@ dependencies = [
"dask[distributed]",
"faiss-cpu", # Not distributed by official repo
"typing_extensions>=4.5.0",
+ "traitlets>=5.0",
+ "deepmerge>=1.0"
]
dynamic = ["version", "description", "authors", "urls", "keywords"]
@@ -48,7 +50,8 @@ test = [
"pytest",
"pytest-asyncio",
"pytest-cov",
- "pytest-tornasync"
+ "pytest-tornasync",
+ "syrupy~=4.0.8"
]
dev = [
diff --git a/packages/jupyter-ai/src/components/chat-settings.tsx b/packages/jupyter-ai/src/components/chat-settings.tsx
index deb013118..583cfa9f0 100644
--- a/packages/jupyter-ai/src/components/chat-settings.tsx
+++ b/packages/jupyter-ai/src/components/chat-settings.tsx
@@ -1,4 +1,7 @@
import React, { useEffect, useState, useMemo } from 'react';
+
+import ReactMarkdown from 'react-markdown';
+
import { Box } from '@mui/system';
import {
Alert,
@@ -10,240 +13,173 @@ import {
Radio,
RadioGroup,
TextField,
- CircularProgress
+ CircularProgress,
+ Typography
} from '@mui/material';
import { Select } from './select';
import { AiService } from '../handler';
import { ModelFields } from './settings/model-fields';
-
-enum ChatSettingsState {
- // chat settings is making initial fetches
- Loading,
- // chat settings is ready (happy path)
- Ready,
- // chat settings failed to make initial fetches
- FetchError,
- // chat settings failed to submit the save request
- SubmitError,
- // chat settings successfully submitted the save request
- Success
-}
-
-function getProviderId(globalModelId: string | null) {
- if (!globalModelId) {
- return null;
- }
-
- return globalModelId.split(':')[0];
-}
-
-function getLocalModelId(globalModelId: string | null) {
- if (!globalModelId) {
- return null;
- }
-
- const components = globalModelId.split(':');
- return components[components.length - 1];
-}
-
-function getProvider(
- globalModelId: string | null,
- providers: AiService.ListProvidersResponse
-) {
- const providerId = getProviderId(globalModelId);
- const provider = providers.providers.find(p => p.id === providerId);
- return provider;
-}
-
-function fromRegistryProvider(
- globalModelId: string | null,
- providers: AiService.ListProvidersResponse
-) {
- return getProvider(globalModelId, providers)?.registry ?? false;
-}
+import { ServerInfoState, useServerInfo } from './settings/use-server-info';
+import { ExistingApiKeys } from './settings/existing-api-keys';
+import { minifyUpdate } from './settings/minify';
+import { useStackingAlert } from './mui-extras/stacking-alert';
/**
* Component that returns the settings view in the chat panel.
- *
- * Implementation notes:
- * - `config` is the configuration last fetched from the backend. `inputConfig`
- * is the editable copy of that object that stores all user input state.
- *
- * - `inputConfig.model_provider_id` reflects the global model ID only if the
- * provider is not a registry provider. Otherwise, it is set to
- * `:*`.
*/
export function ChatSettings(): JSX.Element {
- const [state, setState] = useState(
- ChatSettingsState.Loading
- );
- // error message from initial fetch
- const [fetchEmsg, setFetchEmsg] = useState();
-
// state fetched on initial render
- const [config, setConfig] = useState();
- const [lmProviders, setLmProviders] =
- useState();
- const [emProviders, setEmProviders] =
- useState();
+ const server = useServerInfo();
- // user inputs
- const [inputConfig, setInputConfig] = useState({
- model_provider_id: null,
- embeddings_provider_id: null,
- api_keys: {},
- send_with_shift_enter: null,
- fields: {}
- });
+ // initialize alert helper
+ const alert = useStackingAlert();
+ const apiKeysAlert = useStackingAlert();
- // whether the form is currently saving
- const [saving, setSaving] = useState(false);
- // error message from submission
- const [saveEmsg, setSaveEmsg] = useState();
-
- // whether to show the language model's local model ID input
+ // user inputs
+ const [lmProvider, setLmProvider] =
+ useState(null);
const [showLmLocalId, setShowLmLocalId] = useState(false);
- const [lmLocalId, setLmLocalId] = useState('*');
-
- // provider of the currently selected language model
- const lmProvider = useMemo(() => {
- if (!inputConfig.model_provider_id || !lmProviders) {
- return;
+ const [helpMarkdown, setHelpMarkdown] = useState(null);
+ const [lmLocalId, setLmLocalId] = useState('');
+ const lmGlobalId = useMemo(() => {
+ if (!lmProvider) {
+ return null;
}
- return getProvider(inputConfig.model_provider_id, lmProviders);
- }, [inputConfig.model_provider_id, lmProviders]);
+ return lmProvider.id + ':' + lmLocalId;
+ }, [lmProvider, lmLocalId]);
- // global model ID of the currently selected language model
- const lmGlobalId = useMemo(() => {
- if (!inputConfig.model_provider_id || !lmProvider) {
+ const [emGlobalId, setEmGlobalId] = useState(null);
+ const emProvider = useMemo(() => {
+ if (emGlobalId === null || server.state !== ServerInfoState.Ready) {
return null;
}
- return lmProvider?.registry
- ? `${lmProvider.id}:${lmLocalId}`
- : inputConfig.model_provider_id;
- }, [inputConfig.model_provider_id, lmProvider, lmProviders, lmLocalId]);
+ return getProvider(emGlobalId, server.emProviders);
+ }, [emGlobalId, server]);
+
+ const [apiKeys, setApiKeys] = useState>({});
+ const [sendWse, setSendWse] = useState(false);
+ const [fields, setFields] = useState>({});
+
+ // whether the form is currently saving
+ const [saving, setSaving] = useState(false);
/**
- * Effect: call APIs on initial render
+ * Effect: initialize inputs after fetching server info.
*/
useEffect(() => {
- async function getConfig() {
- try {
- const [config, lmProviders, emProviders] = await Promise.all([
- AiService.getConfig(),
- AiService.listLmProviders(),
- AiService.listEmProviders()
- ]);
- setConfig(config);
- setLmProviders(lmProviders);
- setEmProviders(emProviders);
-
- // if a model from a registry provider was previously selected, store
- // the local model ID in a separate text field.
- if (fromRegistryProvider(config.model_provider_id, lmProviders)) {
- setShowLmLocalId(true);
- const lmPid = getProviderId(config.model_provider_id);
- setLmLocalId(getLocalModelId(config.model_provider_id) as string);
- setInputConfig({
- ...config,
- model_provider_id: `${lmPid}:*`
- });
- } else {
- setInputConfig(config);
- }
+ if (server.state !== ServerInfoState.Ready) {
+ return;
+ }
- setState(ChatSettingsState.Ready);
- } catch (e) {
- console.error(e);
- if (e instanceof Error) {
- setFetchEmsg(e.message);
- }
- setState(ChatSettingsState.FetchError);
- }
+ setLmLocalId(server.lmLocalId);
+ setEmGlobalId(server.config.embeddings_provider_id);
+ setSendWse(server.config.send_with_shift_enter);
+ setHelpMarkdown(server.lmProvider?.help ?? null);
+ if (server.lmProvider?.registry) {
+ setShowLmLocalId(true);
}
- getConfig();
- }, []);
+ setLmProvider(server.lmProvider);
+ }, [server]);
/**
- * Effect: re-initialize API keys object whenever the selected LM/EM changes.
+ * Effect: re-initialize apiKeys object whenever the selected LM/EM changes.
+ * Properties with a value of '' indicate necessary user input.
*/
useEffect(() => {
- const selectedLmpId = getProviderId(inputConfig.model_provider_id);
- const selectedEmpId = getProviderId(inputConfig.embeddings_provider_id);
- const lmp = lmProviders?.providers.find(
- provider => provider.id === selectedLmpId
- );
- const emp = emProviders?.providers.find(
- provider => provider.id === selectedEmpId
- );
- const newApiKeys: Record = {};
+ if (server.state !== ServerInfoState.Ready) {
+ return;
+ }
- if (lmp?.auth_strategy && lmp.auth_strategy.type === 'env') {
- newApiKeys[lmp.auth_strategy.name] =
- config?.api_keys[lmp.auth_strategy.name] || '';
+ const newApiKeys: Record = {};
+ const lmAuth = lmProvider?.auth_strategy;
+ const emAuth = emProvider?.auth_strategy;
+ if (
+ lmAuth?.type === 'env' &&
+ !server.config.api_keys.includes(lmAuth.name)
+ ) {
+ newApiKeys[lmAuth.name] = '';
}
- if (emp?.auth_strategy && emp.auth_strategy.type === 'env') {
- newApiKeys[emp.auth_strategy.name] =
- config?.api_keys[emp.auth_strategy.name] || '';
+ if (
+ emAuth?.type === 'env' &&
+ !server.config.api_keys.includes(emAuth.name)
+ ) {
+ newApiKeys[emAuth.name] = '';
}
- setInputConfig(inputConfig => ({
- ...inputConfig,
- api_keys: { ...config?.api_keys, ...newApiKeys }
- }));
- }, [inputConfig.model_provider_id, inputConfig.embeddings_provider_id]);
+ setApiKeys(newApiKeys);
+ }, [lmProvider, emProvider, server]);
- const handleSave = async () => {
- const inputConfigCopy: AiService.Config = {
- ...inputConfig,
- model_provider_id: lmGlobalId,
- api_keys: { ...inputConfig.api_keys },
- send_with_shift_enter: inputConfig.send_with_shift_enter ?? true
- };
-
- // delete any empty api keys
- for (const apiKey in inputConfigCopy.api_keys) {
- if (inputConfigCopy.api_keys[apiKey] === '') {
- delete inputConfigCopy.api_keys[apiKey];
- }
+ /**
+ * Effect: re-initialize fields object whenever the selected LM changes.
+ */
+ useEffect(() => {
+ if (server.state !== ServerInfoState.Ready || !lmGlobalId) {
+ return;
}
+ const currFields: Record =
+ server.config.fields?.[lmGlobalId] ?? {};
+ setFields(currFields);
+ }, [server, lmProvider]);
+
+ const handleSave = async () => {
// compress fields with JSON values
- for (const gmid in inputConfigCopy.fields) {
- for (const fieldKey in inputConfigCopy.fields[gmid]) {
- const fieldVal = inputConfigCopy.fields[gmid][fieldKey];
- if (typeof fieldVal !== 'string') {
- continue;
- }
+ if (server.state !== ServerInfoState.Ready) {
+ return;
+ }
- try {
- const parsedFieldVal = JSON.parse(fieldVal);
- const compressedFieldVal = JSON.stringify(parsedFieldVal);
- inputConfigCopy.fields[gmid][fieldKey] = compressedFieldVal;
- } catch (e) {
- continue;
- }
+ for (const fieldKey in fields) {
+ const fieldVal = fields[fieldKey];
+ if (typeof fieldVal !== 'string' || !fieldVal.trim().startsWith('{')) {
+ continue;
+ }
+
+ try {
+ const parsedFieldVal = JSON.parse(fieldVal);
+ const compressedFieldVal = JSON.stringify(parsedFieldVal);
+ fields[fieldKey] = compressedFieldVal;
+ } catch (e) {
+ continue;
}
}
+ let updateRequest: AiService.UpdateConfigRequest = {
+ model_provider_id: lmGlobalId,
+ embeddings_provider_id: emGlobalId,
+ api_keys: apiKeys,
+ ...(lmGlobalId && {
+ fields: {
+ [lmGlobalId]: fields
+ }
+ }),
+ send_with_shift_enter: sendWse
+ };
+ updateRequest = minifyUpdate(server.config, updateRequest);
+ updateRequest.last_read = server.config.last_read;
+
setSaving(true);
try {
- await AiService.updateConfig(inputConfigCopy);
+ await apiKeysAlert.clear();
+ await AiService.updateConfig(updateRequest);
} catch (e) {
console.error(e);
- if (e instanceof Error) {
- setSaveEmsg(e.message);
- }
- setState(ChatSettingsState.SubmitError);
+ const msg =
+ e instanceof Error || typeof e === 'string'
+ ? e.toString()
+ : 'An unknown error occurred. Check the console for more details.';
+ alert.show('error', msg);
+ return;
+ } finally {
+ setSaving(false);
}
- setState(ChatSettingsState.Success);
- setSaving(false);
+ await server.refetchAll();
+ alert.show('success', 'Settings saved successfully.');
};
- if (state === ChatSettingsState.Loading) {
+ if (server.state === ServerInfoState.Loading) {
return (
- {fetchEmsg
- ? `An error occurred. Error details:\n\n${fetchEmsg}`
- : 'An unknown error occurred. Check the console for more details.'}
+ {server.error ||
+ 'An unknown error occurred. Check the console for more details.'}
);
@@ -287,48 +217,45 @@ export function ChatSettings(): JSX.Element {
return (
.MuiAlert-root': { marginBottom: 2 },
+ '& .MuiAlert-root': {
+ marginTop: 2
+ },
overflowY: 'auto'
}}
>
- {state === ChatSettingsState.SubmitError && (
-
- {saveEmsg
- ? `An error occurred. Error details:\n\n${saveEmsg}`
- : 'An unknown error occurred. Check the console for more details.'}
-
- )}
- {state === ChatSettingsState.Success && (
- Settings saved successfully.
- )}
-
{/* Language model section */}
Language model
+ {alert.jsx}
);
}
+
+function getProviderId(globalModelId: string) {
+ if (!globalModelId) {
+ return null;
+ }
+
+ return globalModelId.split(':')[0];
+}
+
+function getModelLocalId(globalModelId: string) {
+ if (!globalModelId) {
+ return null;
+ }
+
+ const components = globalModelId.split(':');
+ return components[components.length - 1];
+}
+
+function getProvider(
+ globalModelId: string,
+ providers: AiService.ListProvidersResponse
+): AiService.ListProvidersEntry | null {
+ const providerId = getProviderId(globalModelId);
+ const provider = providers.providers.find(p => p.id === providerId);
+ return provider ?? null;
+}
diff --git a/packages/jupyter-ai/src/components/mui-extras/async-icon-button.tsx b/packages/jupyter-ai/src/components/mui-extras/async-icon-button.tsx
new file mode 100644
index 000000000..5de6b3913
--- /dev/null
+++ b/packages/jupyter-ai/src/components/mui-extras/async-icon-button.tsx
@@ -0,0 +1,89 @@
+import React, { useMemo, useState } from 'react';
+import { Box, CircularProgress, IconButton } from '@mui/material';
+import { ContrastingTooltip } from './contrasting-tooltip';
+
+type AsyncIconButtonProps = {
+ onClick: () => Promise;
+ onError: (emsg: string) => unknown;
+ onSuccess: () => unknown;
+ children: JSX.Element;
+ onMouseDown?: React.MouseEventHandler;
+ /**
+ * Whether this component should require confirmation from the user before
+ * calling `props.onClick()`. This is only read on initial render.
+ */
+ confirm?: boolean;
+};
+
+/**
+ * A MUI IconButton that indicates whether the click handler is resolving via a
+ * circular spinner around the IconButton. Requests user confirmation when
+ * `confirm` is set to `true`.
+ */
+export function AsyncIconButton(props: AsyncIconButtonProps): JSX.Element {
+ const [loading, setLoading] = useState(false);
+ const [showConfirm, setShowConfirm] = useState(false);
+ const shouldConfirm = useMemo(() => !!props.confirm, []);
+
+ async function handleClick() {
+ if (shouldConfirm && !showConfirm) {
+ setShowConfirm(true);
+ return;
+ }
+
+ setLoading(true);
+ let thrown = false;
+ try {
+ await props.onClick();
+ } catch (e: unknown) {
+ thrown = true;
+ if (e instanceof Error) {
+ props.onError(e.toString());
+ } else {
+ // this should never happen.
+ // if this happens, it means the thrown value was not of type `Error`.
+ props.onError('Unknown error occurred.');
+ }
+ }
+ setLoading(false);
+ if (!thrown) {
+ props.onSuccess();
+ }
+ }
+
+ return (
+
+ setShowConfirm(false)}
+ arrow
+ placement="top"
+ >
+
+ {props.children}
+
+
+ {loading && (
+
+ )}
+
+ );
+}
diff --git a/packages/jupyter-ai/src/components/mui-extras/contrasting-tooltip.tsx b/packages/jupyter-ai/src/components/mui-extras/contrasting-tooltip.tsx
new file mode 100644
index 000000000..21f5a86d6
--- /dev/null
+++ b/packages/jupyter-ai/src/components/mui-extras/contrasting-tooltip.tsx
@@ -0,0 +1,22 @@
+import React from 'react';
+import { styled, Tooltip, TooltipProps, tooltipClasses } from '@mui/material';
+
+/**
+ * A restyled MUI tooltip component that is dark by default to improve contrast
+ * against JupyterLab's default light theme. TODO: support dark themes.
+ */
+export const ContrastingTooltip = styled(
+ ({ className, ...props }: TooltipProps) => (
+
+ )
+)(({ theme }) => ({
+ [`& .${tooltipClasses.tooltip}`]: {
+ backgroundColor: theme.palette.common.black,
+ color: theme.palette.common.white,
+ boxShadow: theme.shadows[1],
+ fontSize: 11
+ },
+ [`& .${tooltipClasses.arrow}`]: {
+ color: theme.palette.common.black
+ }
+}));
diff --git a/packages/jupyter-ai/src/components/mui-extras/stacking-alert.tsx b/packages/jupyter-ai/src/components/mui-extras/stacking-alert.tsx
new file mode 100644
index 000000000..2fe438d12
--- /dev/null
+++ b/packages/jupyter-ai/src/components/mui-extras/stacking-alert.tsx
@@ -0,0 +1,100 @@
+import React, { useState, useMemo, useCallback } from 'react';
+import { Alert, AlertColor, Collapse } from '@mui/material';
+
+export type StackingAlert = {
+ /**
+ * A function that triggers an alert. Successive alerts are indicated in the
+ * JSX element.
+ * @param alertType Type of alert.
+ * @param msg Message contained within the alert.
+ * @returns
+ */
+ show: (alertType: AlertColor, msg: string | Error) => void;
+ /**
+ * The Alert JSX element that should be rendered by the consumer.
+ * This will be `null` if no alerts were triggered.
+ */
+ jsx: JSX.Element | null;
+ /**
+ * An async function that closes the alert, and returns a Promise that
+ * resolves when the onClose animation is completed.
+ */
+ clear: () => void | Promise;
+};
+
+/**
+ * Hook that returns a function to trigger an alert, and a corresponding alert
+ * JSX element for the consumer to render. The number of successive identical
+ * alerts `X` is indicated in the element via the suffix "(X)".
+ */
+export function useStackingAlert(): StackingAlert {
+ const [type, setType] = useState(null);
+ const [msg, setMsg] = useState('');
+ const [repeatCount, setRepeatCount] = useState(0);
+ const [expand, setExpand] = useState(false);
+ const [exitPromise, setExitPromise] = useState>();
+ const [exitPromiseResolver, setExitPromiseResolver] = useState<() => void>();
+
+ const showAlert = useCallback(
+ (nextType: AlertColor, _nextMsg: string | Error) => {
+ // if the alert is identical to the previous alert, increment the
+ // `repeatCount` indicator.
+ const nextMsg = _nextMsg.toString();
+ if (nextType === type && nextMsg === msg) {
+ setRepeatCount(currCount => currCount + 1);
+ return;
+ }
+
+ if (type === null) {
+ // if this alert is being shown for the first time, initialize the
+ // exitPromise so we can await it on `clear()`.
+ setExitPromise(
+ new Promise(res => {
+ setExitPromiseResolver(() => res);
+ })
+ );
+ }
+
+ setType(nextType);
+ setMsg(nextMsg);
+ setRepeatCount(0);
+ setExpand(true);
+ },
+ [msg, type]
+ );
+
+ const alertJsx = useMemo(
+ () => (
+ {
+ exitPromiseResolver?.();
+ // only clear the alert after the Collapse exits, otherwise the alert
+ // disappears without any animation.
+ setType(null);
+ setMsg('');
+ setRepeatCount(0);
+ }}
+ timeout={200}
+ >
+ {type !== null && (
+
+ {msg + (repeatCount ? ` (${repeatCount})` : '')}
+
+ )}
+
+ ),
+ [msg, repeatCount, type, expand, exitPromiseResolver]
+ );
+
+ const clearAlert = useCallback(() => {
+ setExpand(false);
+ return exitPromise;
+ }, [expand, exitPromise]);
+
+ return {
+ show: showAlert,
+ jsx: alertJsx,
+ clear: clearAlert
+ };
+}
diff --git a/packages/jupyter-ai/src/components/settings/__tests__/chat-settings.spec.ts b/packages/jupyter-ai/src/components/settings/__tests__/chat-settings.spec.ts
new file mode 100644
index 000000000..edb2d3332
--- /dev/null
+++ b/packages/jupyter-ai/src/components/settings/__tests__/chat-settings.spec.ts
@@ -0,0 +1,63 @@
+import { minifyPatchObject } from '../minify';
+
+const COMPLEX_OBJECT = {
+ primitive: 0,
+ array: ['a'],
+ object: { nested: { field: 0 } }
+};
+
+describe('minifyPatchObject', () => {
+ test('returns empty object if patch is identical', () => {
+ const obj = COMPLEX_OBJECT;
+ const patch = JSON.parse(JSON.stringify(obj));
+
+ expect(minifyPatchObject(obj, patch)).toEqual({});
+ });
+
+ test('returns empty object if patch is empty', () => {
+ expect(minifyPatchObject(COMPLEX_OBJECT, {})).toEqual({});
+ });
+
+ test('returns patch if object is empty', () => {
+ expect(minifyPatchObject({}, COMPLEX_OBJECT)).toEqual(COMPLEX_OBJECT);
+ });
+
+ test('should remove unchanged props from patch', () => {
+ const obj = {
+ unchanged: 'foo',
+ changed: 'bar',
+ nested: {
+ unchanged: 'foo',
+ changed: 'bar'
+ }
+ };
+ const patch = {
+ unchanged: 'foo',
+ changed: 'baz',
+ nested: {
+ unchanged: 'foo',
+ changed: 'baz'
+ }
+ };
+
+ expect(minifyPatchObject(obj, patch)).toEqual({
+ changed: 'baz',
+ nested: {
+ changed: 'baz'
+ }
+ });
+ });
+
+ test('defers to patch object when property types mismatch', () => {
+ const obj = {
+ api_keys: ['ANTHROPIC_API_KEY']
+ };
+ const patch = {
+ api_keys: {
+ OPENAI_API_KEY: 'foobar'
+ }
+ };
+
+ expect(minifyPatchObject(obj, patch)).toEqual(patch);
+ });
+});
diff --git a/packages/jupyter-ai/src/components/settings/existing-api-keys.tsx b/packages/jupyter-ai/src/components/settings/existing-api-keys.tsx
new file mode 100644
index 000000000..468f26796
--- /dev/null
+++ b/packages/jupyter-ai/src/components/settings/existing-api-keys.tsx
@@ -0,0 +1,234 @@
+import React, { useEffect, useCallback, useRef, useState } from 'react';
+import {
+ Box,
+ IconButton,
+ Typography,
+ TextField,
+ InputAdornment
+} from '@mui/material';
+import {
+ Edit,
+ DeleteOutline,
+ Cancel,
+ Check,
+ Visibility,
+ VisibilityOff
+} from '@mui/icons-material';
+import { AsyncIconButton } from '../mui-extras/async-icon-button';
+
+import { AiService } from '../../handler';
+import { StackingAlert } from '../mui-extras/stacking-alert';
+
+export type ExistingApiKeysProps = {
+ alert: StackingAlert;
+ apiKeys: string[];
+ onSuccess: () => unknown;
+};
+
+/**
+ * Component that renders a list of existing API keys. Each API key is rendered
+ * by a unique `ExistingApiKey` component.
+ */
+export function ExistingApiKeys(props: ExistingApiKeysProps): JSX.Element {
+ // current editable API key name, if any.
+ const [editableApiKey, setEditableApiKey] = useState(null);
+
+ return (
+ .MuiBox-root:not(:first-child)': {
+ marginTop: -2
+ }
+ }}
+ >
+ {props.apiKeys.map(apiKey => (
+
+ ))}
+ {props.alert.jsx}
+
+ );
+}
+
+type ExistingApiKeyProps = {
+ alert: StackingAlert;
+ apiKey: string;
+ editable: boolean;
+ setEditable: React.Dispatch>;
+ onSuccess: () => unknown;
+};
+
+/**
+ * Component that renders a single existing API key specified by `props.apiKey`.
+ * Includes actions for editing and deleting the API key.
+ */
+function ExistingApiKey(props: ExistingApiKeyProps) {
+ const [input, setInput] = useState('');
+ const [inputVisible, setInputVisible] = useState(false);
+ const [error, setError] = useState(false);
+ const inputRef = useRef();
+
+ /**
+ * Effect: Select the input after `editable` is set to `true`. This needs to
+ * be done in an effect because the TextField needs to be rendered with
+ * `disabled=false` first. When `editable` is set to `false`, reset any
+ * input-related state.
+ */
+ useEffect(() => {
+ if (props.editable) {
+ inputRef.current?.focus();
+ } else {
+ setInput('');
+ setInputVisible(false);
+ setError(false);
+ }
+ }, [props.editable]);
+
+ const onEditIntent = useCallback(() => {
+ props.setEditable(props.apiKey);
+ }, []);
+
+ const onDelete = useCallback(() => {
+ return AiService.deleteApiKey(props.apiKey);
+ }, []);
+
+ const toggleInputVisibility = useCallback(() => {
+ setInputVisible(visible => !visible);
+ }, []);
+
+ const onEditCancel = useCallback(() => {
+ props.setEditable(null);
+ }, []);
+
+ const onEditSubmit = useCallback(() => {
+ return AiService.updateConfig({
+ api_keys: { [props.apiKey]: input }
+ });
+ }, [input]);
+
+ const onError = useCallback(
+ emsg => {
+ props.alert.show('error', emsg);
+ },
+ [props.alert]
+ );
+
+ const validateInput = useCallback(() => {
+ if (!props.editable) {
+ return;
+ }
+
+ setError(!input);
+ }, [props.editable, input]);
+
+ const onEditSuccess = useCallback(() => {
+ props.setEditable(null);
+ props.alert.show('success', 'API key updated successfully.');
+ props.onSuccess();
+ }, [props.alert, props.onSuccess]);
+
+ const onDeleteSuccess = useCallback(() => {
+ props.alert.show('success', 'API key deleted successfully.');
+ props.onSuccess();
+ }, [props.alert, props.onSuccess]);
+
+ return (
+
+ setInput(e.target.value)}
+ disabled={!props.editable}
+ inputRef={inputRef}
+ // validation props
+ onBlur={validateInput}
+ error={error}
+ helperText={'API key value must not be empty'}
+ FormHelperTextProps={{
+ sx: {
+ visibility: error ? 'unset' : 'hidden',
+ margin: 0,
+ whiteSpace: 'nowrap'
+ }
+ }}
+ // style props
+ size="small"
+ variant="standard"
+ type={inputVisible ? 'text' : 'password'}
+ label={
+
+ {props.apiKey}
+
+ }
+ InputProps={{
+ endAdornment: props.editable && (
+
+ e.preventDefault()}
+ >
+ {inputVisible ? : }
+
+
+ )
+ }}
+ sx={{
+ flexGrow: 1,
+ margin: 0,
+ '& .MuiInputBase-input': {
+ padding: 0,
+ paddingBottom: 1
+ }
+ }}
+ />
+
+ {props.editable ? (
+ // 16px margin top - 5px padding
+ <>
+ e.preventDefault()}
+ >
+
+
+ e.preventDefault()}
+ confirm={true}
+ >
+
+
+ >
+ ) : (
+ <>
+
+
+
+
+
+
+ >
+ )}
+
+
+ );
+}
diff --git a/packages/jupyter-ai/src/components/settings/minify.ts b/packages/jupyter-ai/src/components/settings/minify.ts
new file mode 100644
index 000000000..3de096ec0
--- /dev/null
+++ b/packages/jupyter-ai/src/components/settings/minify.ts
@@ -0,0 +1,56 @@
+import { AiService } from '../../handler';
+
+/**
+ * Function that minimizes the `UpdateConfigRequest` object prior to submission.
+ * Removes properties with values identical to those specified in the server
+ * configuration.
+ */
+export function minifyUpdate(
+ config: AiService.DescribeConfigResponse,
+ update: AiService.UpdateConfigRequest
+): AiService.UpdateConfigRequest {
+ return minifyPatchObject(config, update) as AiService.UpdateConfigRequest;
+}
+
+/**
+ * Function that removes all properties from `patch` that have identical values
+ * to `obj` recursively.
+ */
+export function minifyPatchObject(
+ obj: Record,
+ patch: Record
+): Record {
+ const diffObj: Record = {};
+ for (const key in patch) {
+ if (!(key in obj) || typeof obj[key] !== typeof patch[key]) {
+ // if key is not present in oldObj, or if the value types do not match,
+ // use the value of `patch`.
+ diffObj[key] = patch[key];
+ continue;
+ }
+
+ const objVal = obj[key];
+ const patchVal = patch[key];
+ if (Array.isArray(objVal) && Array.isArray(patchVal)) {
+ // if objects are both arrays but are not equal, then use the value
+ const areNotEqual =
+ objVal.length !== patchVal.length ||
+ !objVal.every((objVal_i, i) => objVal_i === patchVal[i]);
+ if (areNotEqual) {
+ diffObj[key] = patchVal;
+ }
+ } else if (typeof patchVal === 'object') {
+ // if the value is an object, run `diffObjects` recursively.
+ const childPatch = minifyPatchObject(objVal, patchVal);
+ const isNonEmpty = !!Object.keys(childPatch)?.length;
+ if (isNonEmpty) {
+ diffObj[key] = childPatch;
+ }
+ } else if (objVal !== patchVal) {
+ // otherwise, use the value of `patch` only if it differs.
+ diffObj[key] = patchVal;
+ }
+ }
+
+ return diffObj;
+}
diff --git a/packages/jupyter-ai/src/components/settings/model-fields.tsx b/packages/jupyter-ai/src/components/settings/model-fields.tsx
index bc71c3d96..aa580d1f4 100644
--- a/packages/jupyter-ai/src/components/settings/model-fields.tsx
+++ b/packages/jupyter-ai/src/components/settings/model-fields.tsx
@@ -3,17 +3,14 @@ import { AiService } from '../../handler';
import { TextField } from '@mui/material';
export type ModelFieldProps = {
- /**
- * The global model ID to which these fields belong.
- */
- gmid: string;
field: AiService.Field;
- config: AiService.Config;
- setConfig: (newConfig: AiService.Config) => unknown;
+ values: Record;
+ onChange: (newValues: Record) => unknown;
};
export function ModelField(props: ModelFieldProps): JSX.Element {
const [errorMessage, setErrorMessage] = useState(null);
+ const value = props.values?.[props.field.key];
function handleChange(
e: React.ChangeEvent
@@ -41,15 +38,9 @@ export function ModelField(props: ModelFieldProps): JSX.Element {
break;
}
- props.setConfig({
- ...props.config,
- fields: {
- ...props.config.fields,
- [props.gmid]: {
- ...props.config.fields[props.gmid],
- [props.field.key]: e.target.value
- }
- }
+ props.onChange({
+ ...props.values,
+ [props.field.key]: e.target.value
});
}
@@ -57,7 +48,7 @@ export function ModelField(props: ModelFieldProps): JSX.Element {
return (
& {
fields?: AiService.Field[];
+ values: Record;
+ onChange: (newValues: Record) => unknown;
};
export function ModelFields(props: ModelFieldsProps): JSX.Element | null {
@@ -108,7 +101,13 @@ export function ModelFields(props: ModelFieldsProps): JSX.Element | null {
return (
<>
{props.fields.map((field, idx) => (
-
+
))}
>
);
diff --git a/packages/jupyter-ai/src/components/settings/use-server-info.ts b/packages/jupyter-ai/src/components/settings/use-server-info.ts
new file mode 100644
index 000000000..87c54c474
--- /dev/null
+++ b/packages/jupyter-ai/src/components/settings/use-server-info.ts
@@ -0,0 +1,159 @@
+import { useState, useEffect, useMemo, useCallback } from 'react';
+import { AiService } from '../../handler';
+
+type ServerInfoProperties = {
+ config: AiService.DescribeConfigResponse;
+ lmProviders: AiService.ListProvidersResponse;
+ emProviders: AiService.ListProvidersResponse;
+ lmProvider: AiService.ListProvidersEntry | null;
+ emProvider: AiService.ListProvidersEntry | null;
+ lmLocalId: string;
+};
+
+type ServerInfoMethods = {
+ refetchAll: () => Promise;
+ refetchApiKeys: () => Promise;
+};
+
+export enum ServerInfoState {
+ /**
+ * Server info is being fetched.
+ */
+ Loading,
+ /**
+ * Unable to retrieve server info.
+ */
+ Error,
+ /**
+ * Server info was loaded successfully.
+ */
+ Ready
+}
+
+type ServerInfoLoading = { state: ServerInfoState.Loading };
+type ServerInfoError = {
+ state: ServerInfoState.Error;
+ error: string;
+};
+type ServerInfoReady = { state: ServerInfoState.Ready } & ServerInfoProperties &
+ ServerInfoMethods;
+
+type ServerInfo = ServerInfoLoading | ServerInfoError | ServerInfoReady;
+
+/**
+ * A hook that fetches the current configuration and provider lists from the
+ * server. Returns a `ServerInfo` object that includes methods.
+ */
+export function useServerInfo(): ServerInfo {
+ const [state, setState] = useState(ServerInfoState.Loading);
+ const [serverInfoProps, setServerInfoProps] =
+ useState();
+ const [error, setError] = useState('');
+
+ const fetchServerInfo = useCallback(async () => {
+ try {
+ const [config, lmProviders, emProviders] = await Promise.all([
+ AiService.getConfig(),
+ AiService.listLmProviders(),
+ AiService.listEmProviders()
+ ]);
+ const lmGid = config.model_provider_id;
+ const emGid = config.embeddings_provider_id;
+ const lmProvider =
+ lmGid === null ? null : getProvider(lmGid, lmProviders);
+ const emProvider =
+ emGid === null ? null : getProvider(emGid, emProviders);
+ const lmLocalId = lmGid === null ? '' : getLocalId(lmGid);
+ setServerInfoProps({
+ config,
+ lmProviders,
+ emProviders,
+ lmProvider,
+ emProvider,
+ lmLocalId
+ });
+
+ setState(ServerInfoState.Ready);
+ } catch (e) {
+ console.error(e);
+ if (e instanceof Error) {
+ setError(e.toString());
+ } else {
+ setError('An unknown error occurred.');
+ }
+ setState(ServerInfoState.Error);
+ }
+ }, []);
+
+ const refetchApiKeys = useCallback(async () => {
+ if (!serverInfoProps) {
+ // this should never happen.
+ return;
+ }
+
+ const config = await AiService.getConfig();
+ setServerInfoProps({
+ ...serverInfoProps,
+ config: {
+ ...serverInfoProps.config,
+ api_keys: config.api_keys,
+ last_read: config.last_read
+ }
+ });
+ }, [serverInfoProps]);
+
+ /**
+ * Effect: fetch server info on initial render
+ */
+ useEffect(() => {
+ fetchServerInfo();
+ }, []);
+
+ return useMemo(() => {
+ if (state === ServerInfoState.Loading) {
+ return { state };
+ }
+
+ if (state === ServerInfoState.Error || !serverInfoProps) {
+ return { state: ServerInfoState.Error, error };
+ }
+
+ return {
+ state,
+ ...serverInfoProps,
+ refetchAll: fetchServerInfo,
+ refetchApiKeys
+ };
+ }, [state, serverInfoProps, error, refetchApiKeys]);
+}
+
+function getProvider(
+ gid: string,
+ providers: AiService.ListProvidersResponse
+): AiService.ListProvidersEntry | null {
+ const providerId = getProviderId(gid);
+ const provider = providers.providers.find(p => p.id === providerId);
+ return provider ?? null;
+}
+
+function getProviderId(gid: string) {
+ if (!gid) {
+ return null;
+ }
+
+ const components = gid.split(':');
+ if (components.length < 2) {
+ return null;
+ }
+
+ return components[0];
+}
+
+function getLocalId(gid: string) {
+ const components = gid.split(':');
+ if (components.length < 2) {
+ return '';
+ }
+
+ return components[1];
+}
diff --git a/packages/jupyter-ai/src/components/settings/validator.ts b/packages/jupyter-ai/src/components/settings/validator.ts
new file mode 100644
index 000000000..3d420f5c1
--- /dev/null
+++ b/packages/jupyter-ai/src/components/settings/validator.ts
@@ -0,0 +1,8 @@
+import { AiService } from '../../handler';
+
+export class SettingsValidator {
+ constructor(
+ protected lmProviders: AiService.ListProvidersResponse,
+ protected emProviders: AiService.ListProvidersResponse
+ ) {}
+}
diff --git a/packages/jupyter-ai/src/handler.ts b/packages/jupyter-ai/src/handler.ts
index 9f18b40d1..ec91c1f3f 100644
--- a/packages/jupyter-ai/src/handler.ts
+++ b/packages/jupyter-ai/src/handler.ts
@@ -104,20 +104,26 @@ export namespace AiService {
messages: ChatMessage[];
};
- export type Config = {
+ export type DescribeConfigResponse = {
model_provider_id: string | null;
embeddings_provider_id: string | null;
- api_keys: Record;
- send_with_shift_enter: boolean | null;
+ api_keys: string[];
+ send_with_shift_enter: boolean;
fields: Record>;
+ last_read: number;
};
- export type GetConfigResponse = Config;
-
- export type UpdateConfigRequest = Config;
+ export type UpdateConfigRequest = {
+ model_provider_id?: string | null;
+ embeddings_provider_id?: string | null;
+ api_keys?: Record;
+ send_with_shift_enter?: boolean;
+ fields?: Record>;
+ last_read?: number;
+ };
- export async function getConfig(): Promise {
- return requestAPI('config');
+ export async function getConfig(): Promise {
+ return requestAPI('config');
}
export type EnvAuthStrategy = {
@@ -158,6 +164,7 @@ export namespace AiService {
name: string;
model_id_label?: string;
models: string[];
+ help?: string;
auth_strategy: AuthStrategy;
registry: boolean;
fields: Field[];
@@ -183,4 +190,10 @@ export namespace AiService {
body: JSON.stringify(config)
});
}
+
+ export async function deleteApiKey(keyName: string): Promise {
+ return requestAPI(`api_keys/${keyName}`, {
+ method: 'DELETE'
+ });
+ }
}
diff --git a/packages/jupyter-ai/style/chat-settings.css b/packages/jupyter-ai/style/chat-settings.css
index 9cb96539c..a8accd053 100644
--- a/packages/jupyter-ai/style/chat-settings.css
+++ b/packages/jupyter-ai/style/chat-settings.css
@@ -7,3 +7,14 @@
.jp-ai-ChatSettings-welcome {
color: var(--jp-ui-font-color1);
}
+
+/* Defer to browser defaults for links in model help */
+.jp-ai-ChatSettings-model-help a {
+ text-decoration: revert;
+ color: revert;
+}
+
+.jp-ai-ChatSettings-model-help a:hover {
+ text-decoration: revert;
+ color: revert;
+}
diff --git a/packages/jupyter-ai/tsconfig.test.json b/packages/jupyter-ai/tsconfig.test.json
new file mode 100644
index 000000000..063b5f10c
--- /dev/null
+++ b/packages/jupyter-ai/tsconfig.test.json
@@ -0,0 +1,6 @@
+{
+ "extends": "./tsconfig",
+ "compilerOptions": {
+ "noUnusedLocals": false
+ }
+}
diff --git a/yarn.lock b/yarn.lock
index 1ac0bbf4c..684a9238d 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -31,55 +31,55 @@ __metadata:
languageName: node
linkType: hard
-"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.10, @babel/code-frame@npm:^7.22.5":
- version: 7.22.10
- resolution: "@babel/code-frame@npm:7.22.10"
+"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.13":
+ version: 7.22.13
+ resolution: "@babel/code-frame@npm:7.22.13"
dependencies:
- "@babel/highlight": ^7.22.10
+ "@babel/highlight": ^7.22.13
chalk: ^2.4.2
- checksum: 89a06534ad19759da6203a71bad120b1d7b2ddc016c8e07d4c56b35dea25e7396c6da60a754e8532a86733092b131ae7f661dbe6ba5d165ea777555daa2ed3c9
+ checksum: 22e342c8077c8b77eeb11f554ecca2ba14153f707b85294fcf6070b6f6150aae88a7b7436dd88d8c9289970585f3fe5b9b941c5aa3aa26a6d5a8ef3f292da058
languageName: node
linkType: hard
-"@babel/compat-data@npm:^7.22.5, @babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.22.9":
+"@babel/compat-data@npm:^7.22.6, @babel/compat-data@npm:^7.22.9":
version: 7.22.9
resolution: "@babel/compat-data@npm:7.22.9"
checksum: bed77d9044ce948b4327b30dd0de0779fa9f3a7ed1f2d31638714ed00229fa71fc4d1617ae0eb1fad419338d3658d0e9a5a083297451e09e73e078d0347ff808
languageName: node
linkType: hard
-"@babel/core@npm:^7.0.0, @babel/core@npm:^7.1.0, @babel/core@npm:^7.10.2, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.7.5":
- version: 7.22.10
- resolution: "@babel/core@npm:7.22.10"
+"@babel/core@npm:^7.0.0, @babel/core@npm:^7.10.2, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3":
+ version: 7.22.17
+ resolution: "@babel/core@npm:7.22.17"
dependencies:
"@ampproject/remapping": ^2.2.0
- "@babel/code-frame": ^7.22.10
- "@babel/generator": ^7.22.10
- "@babel/helper-compilation-targets": ^7.22.10
- "@babel/helper-module-transforms": ^7.22.9
- "@babel/helpers": ^7.22.10
- "@babel/parser": ^7.22.10
- "@babel/template": ^7.22.5
- "@babel/traverse": ^7.22.10
- "@babel/types": ^7.22.10
+ "@babel/code-frame": ^7.22.13
+ "@babel/generator": ^7.22.15
+ "@babel/helper-compilation-targets": ^7.22.15
+ "@babel/helper-module-transforms": ^7.22.17
+ "@babel/helpers": ^7.22.15
+ "@babel/parser": ^7.22.16
+ "@babel/template": ^7.22.15
+ "@babel/traverse": ^7.22.17
+ "@babel/types": ^7.22.17
convert-source-map: ^1.7.0
debug: ^4.1.0
gensync: ^1.0.0-beta.2
- json5: ^2.2.2
+ json5: ^2.2.3
semver: ^6.3.1
- checksum: cc4efa09209fe1f733cf512e9e4bb50870b191ab2dee8014e34cd6e731f204e48476cc53b4bbd0825d4d342304d577ae43ff5fd8ab3896080673c343321acb32
+ checksum: 355216a342d1b3952d7c040dd4c99ecef6b3501ba99a713703c1fec1ae73bc92a48a0c1234562bdbb4fd334b2e452f5a6c3bb282f0e613fa89e1518c91d1aea1
languageName: node
linkType: hard
-"@babel/generator@npm:^7.22.10, @babel/generator@npm:^7.7.2":
- version: 7.22.10
- resolution: "@babel/generator@npm:7.22.10"
+"@babel/generator@npm:^7.22.15, @babel/generator@npm:^7.7.2":
+ version: 7.22.15
+ resolution: "@babel/generator@npm:7.22.15"
dependencies:
- "@babel/types": ^7.22.10
+ "@babel/types": ^7.22.15
"@jridgewell/gen-mapping": ^0.3.2
"@jridgewell/trace-mapping": ^0.3.17
jsesc: ^2.5.1
- checksum: 59a79730abdff9070692834bd3af179e7a9413fa2ff7f83dff3eb888765aeaeb2bfc7b0238a49613ed56e1af05956eff303cc139f2407eda8df974813e486074
+ checksum: 5b2a3ccdc3634f6ea86e0a442722bcd430238369432d31f15b428a4ee8013c2f4f917b5b135bf4fc1d0a3e2f87f10fd4ce5d07955ecc2d3b9400a05c2a481374
languageName: node
linkType: hard
@@ -93,35 +93,35 @@ __metadata:
linkType: hard
"@babel/helper-builder-binary-assignment-operator-visitor@npm:^7.22.5":
- version: 7.22.10
- resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.22.10"
+ version: 7.22.15
+ resolution: "@babel/helper-builder-binary-assignment-operator-visitor@npm:7.22.15"
dependencies:
- "@babel/types": ^7.22.10
- checksum: 6de4a1f30e6244f9a1efdfcbe89df39923df3d165be606da5ad11319f8a11c12c72c60d9dc5fb696363281e2d6f741444c1af51f525fc7cf1d2a90fe23370bd9
+ "@babel/types": ^7.22.15
+ checksum: 639c697a1c729f9fafa2dd4c9af2e18568190299b5907bd4c2d0bc818fcbd1e83ffeecc2af24327a7faa7ac4c34edd9d7940510a5e66296c19bad17001cf5c7a
languageName: node
linkType: hard
-"@babel/helper-compilation-targets@npm:^7.22.10, @babel/helper-compilation-targets@npm:^7.22.5, @babel/helper-compilation-targets@npm:^7.22.6":
- version: 7.22.10
- resolution: "@babel/helper-compilation-targets@npm:7.22.10"
+"@babel/helper-compilation-targets@npm:^7.22.15, @babel/helper-compilation-targets@npm:^7.22.5, @babel/helper-compilation-targets@npm:^7.22.6":
+ version: 7.22.15
+ resolution: "@babel/helper-compilation-targets@npm:7.22.15"
dependencies:
"@babel/compat-data": ^7.22.9
- "@babel/helper-validator-option": ^7.22.5
+ "@babel/helper-validator-option": ^7.22.15
browserslist: ^4.21.9
lru-cache: ^5.1.1
semver: ^6.3.1
- checksum: f6f1896816392bcff671bbe6e277307729aee53befb4a66ea126e2a91eda78d819a70d06fa384c74ef46c1595544b94dca50bef6c78438d9ffd31776dafbd435
+ checksum: ce85196769e091ae54dd39e4a80c2a9df1793da8588e335c383d536d54f06baf648d0a08fc873044f226398c4ded15c4ae9120ee18e7dfd7c639a68e3cdc9980
languageName: node
linkType: hard
-"@babel/helper-create-class-features-plugin@npm:^7.22.5":
- version: 7.22.10
- resolution: "@babel/helper-create-class-features-plugin@npm:7.22.10"
+"@babel/helper-create-class-features-plugin@npm:^7.22.11, @babel/helper-create-class-features-plugin@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-create-class-features-plugin@npm:7.22.15"
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-member-expression-to-functions": ^7.22.15
"@babel/helper-optimise-call-expression": ^7.22.5
"@babel/helper-replace-supers": ^7.22.9
"@babel/helper-skip-transparent-expression-wrappers": ^7.22.5
@@ -129,20 +129,20 @@ __metadata:
semver: ^6.3.1
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 9683edbf73889abce183b06eac29524448aaab1dba7bdccdd6c26cf03e5ade3903b581b4d681da88fbff824fa117b840cc945bebf7db3c1f8c745f3c5a8a2595
+ checksum: 52c500d8d164abb3a360b1b7c4b8fff77bc4a5920d3a2b41ae6e1d30617b0dc0b972c1f5db35b1752007e04a748908b4a99bc872b73549ae837e87dcdde005a3
languageName: node
linkType: hard
"@babel/helper-create-regexp-features-plugin@npm:^7.18.6, @babel/helper-create-regexp-features-plugin@npm:^7.22.5":
- version: 7.22.9
- resolution: "@babel/helper-create-regexp-features-plugin@npm:7.22.9"
+ version: 7.22.15
+ resolution: "@babel/helper-create-regexp-features-plugin@npm:7.22.15"
dependencies:
"@babel/helper-annotate-as-pure": ^7.22.5
regexpu-core: ^5.3.1
semver: ^6.3.1
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 87cb48a7ee898ab205374274364c3adc70b87b08c7bd07f51019ae4562c0170d7148e654d591f825dee14b5fe11666a0e7966872dfdbfa0d1b94b861ecf0e4e1
+ checksum: 0243b8d4854f1dc8861b1029a46d3f6393ad72f366a5a08e36a4648aa682044f06da4c6e87a456260e1e1b33c999f898ba591a0760842c1387bcc93fbf2151a6
languageName: node
linkType: hard
@@ -187,36 +187,36 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-member-expression-to-functions@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/helper-member-expression-to-functions@npm:7.22.5"
+"@babel/helper-member-expression-to-functions@npm:^7.22.15, @babel/helper-member-expression-to-functions@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-member-expression-to-functions@npm:7.22.15"
dependencies:
- "@babel/types": ^7.22.5
- checksum: 4bd5791529c280c00743e8bdc669ef0d4cd1620d6e3d35e0d42b862f8262bc2364973e5968007f960780344c539a4b9cf92ab41f5b4f94560a9620f536de2a39
+ "@babel/types": ^7.22.15
+ checksum: c7c5d01c402dd8902c2ec3093f203ed0fc3bc5f669328a084d2e663c4c06dd0415480ee8220c6f96ba9b2dc49545c0078f221fc3900ab1e65de69a12fe7b361f
languageName: node
linkType: hard
-"@babel/helper-module-imports@npm:^7.16.7, @babel/helper-module-imports@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/helper-module-imports@npm:7.22.5"
+"@babel/helper-module-imports@npm:^7.16.7, @babel/helper-module-imports@npm:^7.22.15, @babel/helper-module-imports@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-module-imports@npm:7.22.15"
dependencies:
- "@babel/types": ^7.22.5
- checksum: 9ac2b0404fa38b80bdf2653fbeaf8e8a43ccb41bd505f9741d820ed95d3c4e037c62a1bcdcb6c9527d7798d2e595924c4d025daed73283badc180ada2c9c49ad
+ "@babel/types": ^7.22.15
+ checksum: ecd7e457df0a46f889228f943ef9b4a47d485d82e030676767e6a2fdcbdaa63594d8124d4b55fd160b41c201025aec01fc27580352b1c87a37c9c6f33d116702
languageName: node
linkType: hard
-"@babel/helper-module-transforms@npm:^7.22.5, @babel/helper-module-transforms@npm:^7.22.9":
- version: 7.22.9
- resolution: "@babel/helper-module-transforms@npm:7.22.9"
+"@babel/helper-module-transforms@npm:^7.22.15, @babel/helper-module-transforms@npm:^7.22.17, @babel/helper-module-transforms@npm:^7.22.5, @babel/helper-module-transforms@npm:^7.22.9":
+ version: 7.22.17
+ resolution: "@babel/helper-module-transforms@npm:7.22.17"
dependencies:
"@babel/helper-environment-visitor": ^7.22.5
- "@babel/helper-module-imports": ^7.22.5
+ "@babel/helper-module-imports": ^7.22.15
"@babel/helper-simple-access": ^7.22.5
"@babel/helper-split-export-declaration": ^7.22.6
- "@babel/helper-validator-identifier": ^7.22.5
+ "@babel/helper-validator-identifier": ^7.22.15
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 2751f77660518cf4ff027514d6f4794f04598c6393be7b04b8e46c6e21606e11c19f3f57ab6129a9c21bacdf8b3ffe3af87bb401d972f34af2d0ffde02ac3001
+ checksum: 458021c74093e66179765fcc9d1c1cb694f7bdf98656f23486901d35636495c38aab4661547fac2142e13d887987d1ea30cc9fe42968376a51a99bcd207b4989
languageName: node
linkType: hard
@@ -237,15 +237,15 @@ __metadata:
linkType: hard
"@babel/helper-remap-async-to-generator@npm:^7.22.5, @babel/helper-remap-async-to-generator@npm:^7.22.9":
- version: 7.22.9
- resolution: "@babel/helper-remap-async-to-generator@npm:7.22.9"
+ version: 7.22.17
+ resolution: "@babel/helper-remap-async-to-generator@npm:7.22.17"
dependencies:
"@babel/helper-annotate-as-pure": ^7.22.5
"@babel/helper-environment-visitor": ^7.22.5
- "@babel/helper-wrap-function": ^7.22.9
+ "@babel/helper-wrap-function": ^7.22.17
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 05538079447829b13512157491cc77f9cf1ea7e1680e15cff0682c3ed9ee162de0c4862ece20a6d6b2df28177a1520bcfe45993fbeccf2747a81795a7c3f6290
+ checksum: 59307e623d00b6f5fa7f974e29081b2243e3f7bc3a89df331e8c1f8815d83f97bd092404a28b8bef5299028e3259450b5a943f34e1b32c7c55350436d218ab13
languageName: node
linkType: hard
@@ -296,83 +296,83 @@ __metadata:
languageName: node
linkType: hard
-"@babel/helper-validator-identifier@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/helper-validator-identifier@npm:7.22.5"
- checksum: 7f0f30113474a28298c12161763b49de5018732290ca4de13cdaefd4fd0d635a6fe3f6686c37a02905fb1e64f21a5ee2b55140cf7b070e729f1bd66866506aea
+"@babel/helper-validator-identifier@npm:^7.22.15, @babel/helper-validator-identifier@npm:^7.22.5":
+ version: 7.22.15
+ resolution: "@babel/helper-validator-identifier@npm:7.22.15"
+ checksum: eb0bee4bda664c0959924bc1ad5611eacfce806f46612202dd164fef1df8fef1a11682a1e7615288987100e9fb304982b6e2a4ff07ffe842ab8765b95ed1118c
languageName: node
linkType: hard
-"@babel/helper-validator-option@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/helper-validator-option@npm:7.22.5"
- checksum: bbeca8a85ee86990215c0424997438b388b8d642d69b9f86c375a174d3cdeb270efafd1ff128bc7a1d370923d13b6e45829ba8581c027620e83e3a80c5c414b3
+"@babel/helper-validator-option@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/helper-validator-option@npm:7.22.15"
+ checksum: 68da52b1e10002a543161494c4bc0f4d0398c8fdf361d5f7f4272e95c45d5b32d974896d44f6a0ea7378c9204988879d73613ca683e13bd1304e46d25ff67a8d
languageName: node
linkType: hard
-"@babel/helper-wrap-function@npm:^7.22.9":
- version: 7.22.10
- resolution: "@babel/helper-wrap-function@npm:7.22.10"
+"@babel/helper-wrap-function@npm:^7.22.17":
+ version: 7.22.17
+ resolution: "@babel/helper-wrap-function@npm:7.22.17"
dependencies:
"@babel/helper-function-name": ^7.22.5
- "@babel/template": ^7.22.5
- "@babel/types": ^7.22.10
- checksum: 854bd85fc1de1d4c633f04aa1f5b6b022fbc013b47d012b6a11a7a9125a1f4a2a4f13a3e0d7a7056fe7eda8a9ecd1ea3daf8af685685a2d1b16578768cfdd28f
+ "@babel/template": ^7.22.15
+ "@babel/types": ^7.22.17
+ checksum: 95328b508049b6edd9cadd2ac89b4d4812ebdfa54a2ae77791939d795d88d561b31fd3669eea5d13558372cf2422eda05177d7f742690b5023c712bc3f0aec8e
languageName: node
linkType: hard
-"@babel/helpers@npm:^7.22.10":
- version: 7.22.10
- resolution: "@babel/helpers@npm:7.22.10"
+"@babel/helpers@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/helpers@npm:7.22.15"
dependencies:
- "@babel/template": ^7.22.5
- "@babel/traverse": ^7.22.10
- "@babel/types": ^7.22.10
- checksum: 3b1219e362df390b6c5d94b75a53fc1c2eb42927ced0b8022d6a29b833a839696206b9bdad45b4805d05591df49fc16b6fb7db758c9c2ecfe99e3e94cb13020f
+ "@babel/template": ^7.22.15
+ "@babel/traverse": ^7.22.15
+ "@babel/types": ^7.22.15
+ checksum: 49f61a93cbae4df3328bda67af5db743fead659ae4242571226c3596b7df78546189cdf991fed1eca33b559de8abf396a90a001f474a1bab351418f07b7ae6ef
languageName: node
linkType: hard
-"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.22.10":
- version: 7.22.10
- resolution: "@babel/highlight@npm:7.22.10"
+"@babel/highlight@npm:^7.10.4, @babel/highlight@npm:^7.22.13":
+ version: 7.22.13
+ resolution: "@babel/highlight@npm:7.22.13"
dependencies:
"@babel/helper-validator-identifier": ^7.22.5
chalk: ^2.4.2
js-tokens: ^4.0.0
- checksum: f714a1e1a72dd9d72f6383f4f30fd342e21a8df32d984a4ea8f5eab691bb6ba6db2f8823d4b4cf135d98869e7a98925b81306aa32ee3c429f8cfa52c75889e1b
+ checksum: 7266d2bff8aa8fc78eb65b6e92a8211e12897a731126a282d2f9bb50d8fcaa4c1b02af2284f990ac7e3ab8d892d448a2cab8f5ed0ea8a90bce2c025b11ebe802
languageName: node
linkType: hard
-"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.22.10, @babel/parser@npm:^7.22.5":
- version: 7.22.10
- resolution: "@babel/parser@npm:7.22.10"
+"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.22.15, @babel/parser@npm:^7.22.16":
+ version: 7.22.16
+ resolution: "@babel/parser@npm:7.22.16"
bin:
parser: ./bin/babel-parser.js
- checksum: af51567b7d3cdf523bc608eae057397486c7fa6c2e5753027c01fe5c36f0767b2d01ce3049b222841326cc5b8c7fda1d810ac1a01af0a97bb04679e2ef9f7049
+ checksum: 944c756b5bdeb07b9fec16ecef6b3c61aff9d4c4b924abadcf01afa1840a740b8e2357ae00482b5b37daad6d2bfd848c947f27ad65138d687b6fdc924bc59edd
languageName: node
linkType: hard
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.22.5"
+"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.22.15"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0
- checksum: 1e353a060fb2cd8f1256d28cd768f16fb02513f905b9b6d656fb0242c96c341a196fa188b27c2701506a6e27515359fbcc1a5ca7fa8b9b530cf88fbd137baefc
+ checksum: 8910ca21a7ec7c06f7b247d4b86c97c5aa15ef321518f44f6f490c5912fdf82c605aaa02b90892e375d82ccbedeadfdeadd922c1b836c9dd4c596871bf654753
languageName: node
linkType: hard
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.22.5"
+"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.22.15"
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
+ "@babel/plugin-transform-optional-chaining": ^7.22.15
peerDependencies:
"@babel/core": ^7.13.0
- checksum: 16e7a5f3bf2f2ac0ca032a70bf0ebd7e886d84dbb712b55c0643c04c495f0f221fbcbca14b5f8f8027fa6c87a3dafae0934022ad2b409384af6c5c356495b7bd
+ checksum: fbefedc0da014c37f1a50a8094ce7dbbf2181ae93243f23d6ecba2499b5b20196c2124d6a4dfe3e9e0125798e80593103e456352a4beb4e5c6f7c75efb80fdac
languageName: node
linkType: hard
@@ -628,9 +628,9 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-async-generator-functions@npm:^7.22.10":
- version: 7.22.10
- resolution: "@babel/plugin-transform-async-generator-functions@npm:7.22.10"
+"@babel/plugin-transform-async-generator-functions@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-async-generator-functions@npm:7.22.15"
dependencies:
"@babel/helper-environment-visitor": ^7.22.5
"@babel/helper-plugin-utils": ^7.22.5
@@ -638,7 +638,7 @@ __metadata:
"@babel/plugin-syntax-async-generators": ^7.8.4
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 87d77b66fda05b42450aa285fa031aa3963c52aab00190f95f6c3ddefbed683035c1f314347c888f8406fba5d436b888ff75b5e36b8ab23afd4ca4c3f086f88c
+ checksum: fad98786b446ce63bde0d14a221e2617eef5a7bbca62b49d96f16ab5e1694521234cfba6145b830fbf9af16d60a8a3dbf148e8694830bd91796fe333b0599e73
languageName: node
linkType: hard
@@ -666,14 +666,14 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-block-scoping@npm:^7.22.10":
- version: 7.22.10
- resolution: "@babel/plugin-transform-block-scoping@npm:7.22.10"
+"@babel/plugin-transform-block-scoping@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-block-scoping@npm:7.22.15"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: b1d06f358dedcb748a57e5feea4b9285c60593fb2912b921f22898c57c552c78fe18128678c8f84dd4ea1d4e5aebede8783830b24cd63f22c30261156d78bc77
+ checksum: c7091dc000b854ce0c471588ca0704ef1ce78cff954584a9f21c1668fd0669e7c8d5396fb72fe49a2216d9b96a400d435f424f27e41a097ef6c855f9c57df195
languageName: node
linkType: hard
@@ -689,35 +689,35 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-class-static-block@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-class-static-block@npm:7.22.5"
+"@babel/plugin-transform-class-static-block@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-class-static-block@npm:7.22.11"
dependencies:
- "@babel/helper-create-class-features-plugin": ^7.22.5
+ "@babel/helper-create-class-features-plugin": ^7.22.11
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-class-static-block": ^7.14.5
peerDependencies:
"@babel/core": ^7.12.0
- checksum: bc48b92dbaf625a14f2bf62382384eef01e0515802426841636ae9146e27395d068c7a8a45e9e15699491b0a01d990f38f179cbc9dc89274a393f85648772f12
+ checksum: 69f040506fad66f1c6918d288d0e0edbc5c8a07c8b4462c1184ad2f9f08995d68b057126c213871c0853ae0c72afc60ec87492049dfacb20902e32346a448bcb
languageName: node
linkType: hard
-"@babel/plugin-transform-classes@npm:^7.22.6":
- version: 7.22.6
- resolution: "@babel/plugin-transform-classes@npm:7.22.6"
+"@babel/plugin-transform-classes@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-classes@npm:7.22.15"
dependencies:
"@babel/helper-annotate-as-pure": ^7.22.5
- "@babel/helper-compilation-targets": ^7.22.6
+ "@babel/helper-compilation-targets": ^7.22.15
"@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-replace-supers": ^7.22.9
"@babel/helper-split-export-declaration": ^7.22.6
globals: ^11.1.0
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 8380e855c01033dbc7460d9acfbc1fc37c880350fa798c2de8c594ef818ade0e4c96173ec72f05f2a4549d8d37135e18cb62548352d51557b45a0fb4388d2f3f
+ checksum: d3f4d0c107dd8a3557ea3575cc777fab27efa92958b41e4a9822f7499725c1f554beae58855de16ddec0a7b694e45f59a26cea8fbde4275563f72f09c6e039a0
languageName: node
linkType: hard
@@ -733,14 +733,14 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-destructuring@npm:^7.22.10":
- version: 7.22.10
- resolution: "@babel/plugin-transform-destructuring@npm:7.22.10"
+"@babel/plugin-transform-destructuring@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-destructuring@npm:7.22.15"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 011707801bd0029fd4f0523d24d06fdc0cbe8c9da280d75728f76713d639c4dc976e1b56a1ba7bff25468f86867efb71c9b4cac81140adbdd0abf2324b19a8bb
+ checksum: 4bccb4765e5287f1d36119d930afb9941ea8f4f001bddb8febff716bac0e09dc58576624f3ec59470630513044dd342075fe11af16d8c1b234cb7406cffca9f0
languageName: node
linkType: hard
@@ -767,15 +767,15 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-dynamic-import@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-dynamic-import@npm:7.22.5"
+"@babel/plugin-transform-dynamic-import@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-dynamic-import@npm:7.22.11"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-dynamic-import": ^7.8.3
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 186a6d59f36eb3c5824739fc9c22ed0f4ca68e001662aa3a302634346a8b785cb9579b23b0c158f4570604d697d19598ca09b58c60a7fa2894da1163c4eb1907
+ checksum: 78fc9c532210bf9e8f231747f542318568ac360ee6c27e80853962c984283c73da3f8f8aebe83c2096090a435b356b092ed85de617a156cbe0729d847632be45
languageName: node
linkType: hard
@@ -791,26 +791,26 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-export-namespace-from@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-export-namespace-from@npm:7.22.5"
+"@babel/plugin-transform-export-namespace-from@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-export-namespace-from@npm:7.22.11"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-export-namespace-from": ^7.8.3
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 3d197b788758044983c96b9c49bed4b456055f35a388521a405968db0f6e2ffb6fd59110e3931f4dcc5e126ae9e5e00e154a0afb47a7ea359d8d0dea79f480d7
+ checksum: 73af5883a321ed56a4bfd43c8a7de0164faebe619287706896fc6ee2f7a4e69042adaa1338c0b8b4bdb9f7e5fdceb016fb1d40694cb43ca3b8827429e8aac4bf
languageName: node
linkType: hard
-"@babel/plugin-transform-for-of@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-for-of@npm:7.22.5"
+"@babel/plugin-transform-for-of@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-for-of@npm:7.22.15"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: d7b8d4db010bce7273674caa95c4e6abd909362866ce297e86a2ecaa9ae636e05d525415811db9b3c942155df7f3651d19b91dd6c41f142f7308a97c7cb06023
+ checksum: f395ae7bce31e14961460f56cf751b5d6e37dd27d7df5b1f4e49fec1c11b6f9cf71991c7ffbe6549878591e87df0d66af798cf26edfa4bfa6b4c3dba1fb2f73a
languageName: node
linkType: hard
@@ -827,15 +827,15 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-json-strings@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-json-strings@npm:7.22.5"
+"@babel/plugin-transform-json-strings@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-json-strings@npm:7.22.11"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-json-strings": ^7.8.3
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 4e00b902487a670b6c8948f33f9108133fd745cf9d1478aca515fb460b9b2f12e137988ebc1663630fb82070a870aed8b0c1aa4d007a841c18004619798f255c
+ checksum: 50665e5979e66358c50e90a26db53c55917f78175127ac2fa05c7888d156d418ffb930ec0a109353db0a7c5f57c756ce01bfc9825d24cbfd2b3ec453f2ed8cba
languageName: node
linkType: hard
@@ -850,15 +850,15 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-logical-assignment-operators@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.22.5"
+"@babel/plugin-transform-logical-assignment-operators@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.22.11"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-logical-assignment-operators": ^7.10.4
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 18748e953c08f64885f18c224eac58df10a13eac4d845d16b5d9b6276907da7ca2530dfebe6ed41cdc5f8a75d9db3e36d8eb54ddce7cd0364af1cab09b435302
+ checksum: c664e9798e85afa7f92f07b867682dee7392046181d82f5d21bae6f2ca26dfe9c8375cdc52b7483c3fc09a983c1989f60eff9fbc4f373b0c0a74090553d05739
languageName: node
linkType: hard
@@ -885,30 +885,30 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-commonjs@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-modules-commonjs@npm:7.22.5"
+"@babel/plugin-transform-modules-commonjs@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-modules-commonjs@npm:7.22.15"
dependencies:
- "@babel/helper-module-transforms": ^7.22.5
+ "@babel/helper-module-transforms": ^7.22.15
"@babel/helper-plugin-utils": ^7.22.5
"@babel/helper-simple-access": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 2067aca8f6454d54ffcce69b02c457cfa61428e11372f6a1d99ff4fcfbb55c396ed2ca6ca886bf06c852e38c1a205b8095921b2364fd0243f3e66bc1dda61caa
+ checksum: f8fc85fefa6be8626a378ca38fb84c7359043e7c692c854e9ee250a05121553b7f4a58e127099efe12662ec6bebbfd304ce638a0b4563d7cbd5982f3d877321c
languageName: node
linkType: hard
-"@babel/plugin-transform-modules-systemjs@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-modules-systemjs@npm:7.22.5"
+"@babel/plugin-transform-modules-systemjs@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-modules-systemjs@npm:7.22.11"
dependencies:
"@babel/helper-hoist-variables": ^7.22.5
- "@babel/helper-module-transforms": ^7.22.5
+ "@babel/helper-module-transforms": ^7.22.9
"@babel/helper-plugin-utils": ^7.22.5
"@babel/helper-validator-identifier": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 04f4178589543396b3c24330a67a59c5e69af5e96119c9adda730c0f20122deaff54671ebbc72ad2df6495a5db8a758bd96942de95fba7ad427de9c80b1b38c8
+ checksum: d0991e4bdc3352b6a9f4d12b6662e3645d892cd5c3c005ba5f14e65f1e218c6a8f7f4497e64a51d82a046e507aaa7db3143b800b0270dca1824cbd214ff3363d
languageName: node
linkType: hard
@@ -947,42 +947,42 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.22.5"
+"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.22.11"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: e6a059169d257fc61322d0708edae423072449b7c33de396261e68dee582aec5396789a1c22bce84e5bd88a169623c2e750b513fc222930979e6accd52a44bf2
+ checksum: 167babecc8b8fe70796a7b7d34af667ebbf43da166c21689502e5e8cc93180b7a85979c77c9f64b7cce431b36718bd0a6df9e5e0ffea4ae22afb22cfef886372
languageName: node
linkType: hard
-"@babel/plugin-transform-numeric-separator@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-numeric-separator@npm:7.22.5"
+"@babel/plugin-transform-numeric-separator@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-numeric-separator@npm:7.22.11"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-numeric-separator": ^7.10.4
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 9e7837d4eae04f211ebaa034fe5003d2927b6bf6d5b9dc09f2b1183c01482cdde5a75b8bd5c7ff195c2abc7b923339eb0b2a9d27cb78359d38248a3b2c2367c4
+ checksum: af064d06a4a041767ec396a5f258103f64785df290e038bba9f0ef454e6c914f2ac45d862bbdad8fac2c7ad47fa4e95356f29053c60c100a0160b02a995fe2a3
languageName: node
linkType: hard
-"@babel/plugin-transform-object-rest-spread@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-object-rest-spread@npm:7.22.5"
+"@babel/plugin-transform-object-rest-spread@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-object-rest-spread@npm:7.22.15"
dependencies:
- "@babel/compat-data": ^7.22.5
- "@babel/helper-compilation-targets": ^7.22.5
+ "@babel/compat-data": ^7.22.9
+ "@babel/helper-compilation-targets": ^7.22.15
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-object-rest-spread": ^7.8.3
- "@babel/plugin-transform-parameters": ^7.22.5
+ "@babel/plugin-transform-parameters": ^7.22.15
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 3b5e091f0dc67108f2e41ed5a97e15bbe4381a19d9a7eea80b71c7de1d8169fd28784e1e41a3d2ad12709ab212e58fc481282a5bb65d591fae7b443048de3330
+ checksum: 62197a6f12289c1c1bd57f3bed9f0f765ca32390bfe91e0b5561dd94dd9770f4480c4162dec98da094bc0ba99d2c2ebba68de47c019454041b0b7a68ba2ec66d
languageName: node
linkType: hard
@@ -998,39 +998,39 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-optional-catch-binding@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.22.5"
+"@babel/plugin-transform-optional-catch-binding@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.22.11"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-optional-catch-binding": ^7.8.3
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: b0e8b4233ff06b5c9d285257f49c5bd441f883189b24282e6200f9ebdf5db29aeeebbffae57fbbcd5df9f4387b3e66e5d322aaae5652a78e89685ddbae46bbd1
+ checksum: f17abd90e1de67c84d63afea29c8021c74abb2794d3a6eeafb0bbe7372d3db32aefca386e392116ec63884537a4a2815d090d26264d259bacc08f6e3ed05294c
languageName: node
linkType: hard
-"@babel/plugin-transform-optional-chaining@npm:^7.22.10, @babel/plugin-transform-optional-chaining@npm:^7.22.5":
- version: 7.22.10
- resolution: "@babel/plugin-transform-optional-chaining@npm:7.22.10"
+"@babel/plugin-transform-optional-chaining@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-optional-chaining@npm:7.22.15"
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
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 522d6214bb9f6ede8a2fc56a873e791aabd62f0b3be78fb8e62ca801a9033bcadabfb77aec6739f0e67f0f15f7c739c08bafafd66d3676edf1941fe6429cebcd
+ checksum: 6b97abe0e50ca2dd8684fcef2c8d12607637e707aa9d513b7035f5e812efbde9305736b438d422103a7844e04124cad5efa4ff0e6226a57afa1210a1c7485c8e
languageName: node
linkType: hard
-"@babel/plugin-transform-parameters@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-parameters@npm:7.22.5"
+"@babel/plugin-transform-parameters@npm:^7.22.15":
+ version: 7.22.15
+ resolution: "@babel/plugin-transform-parameters@npm:7.22.15"
dependencies:
"@babel/helper-plugin-utils": ^7.22.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: b44f89cf97daf23903776ba27c2ab13b439d80d8c8a95be5c476ab65023b1e0c0e94c28d3745f3b60a58edc4e590fa0cd4287a0293e51401ca7d29a2ddb13b8e
+ checksum: 541188bb7d1876cad87687b5c7daf90f63d8208ae83df24acb1e2b05020ad1c78786b2723ca4054a83fcb74fb6509f30c4cacc5b538ee684224261ad5fb047c1
languageName: node
linkType: hard
@@ -1046,17 +1046,17 @@ __metadata:
languageName: node
linkType: hard
-"@babel/plugin-transform-private-property-in-object@npm:^7.22.5":
- version: 7.22.5
- resolution: "@babel/plugin-transform-private-property-in-object@npm:7.22.5"
+"@babel/plugin-transform-private-property-in-object@npm:^7.22.11":
+ version: 7.22.11
+ resolution: "@babel/plugin-transform-private-property-in-object@npm:7.22.11"
dependencies:
"@babel/helper-annotate-as-pure": ^7.22.5
- "@babel/helper-create-class-features-plugin": ^7.22.5
+ "@babel/helper-create-class-features-plugin": ^7.22.11
"@babel/helper-plugin-utils": ^7.22.5
"@babel/plugin-syntax-private-property-in-object": ^7.14.5
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 9ac019fb2772f3af6278a7f4b8b14b0663accb3fd123d87142ceb2fbc57fd1afa07c945d1329029b026b9ee122096ef71a3f34f257a9e04cf4245b87298c38b4
+ checksum: 4d029d84901e53c46dead7a46e2990a7bc62470f4e4ca58a0d063394f86652fd58fe4eea1eb941da3669cd536b559b9d058b342b59300026346b7a2a51badac8
languageName: node
linkType: hard
@@ -1198,15 +1198,15 @@ __metadata:
linkType: hard
"@babel/preset-env@npm:^7.0.0, @babel/preset-env@npm:^7.10.2":
- version: 7.22.10
- resolution: "@babel/preset-env@npm:7.22.10"
+ version: 7.22.15
+ resolution: "@babel/preset-env@npm:7.22.15"
dependencies:
"@babel/compat-data": ^7.22.9
- "@babel/helper-compilation-targets": ^7.22.10
+ "@babel/helper-compilation-targets": ^7.22.15
"@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/helper-validator-option": ^7.22.15
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": ^7.22.15
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": ^7.22.15
"@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
@@ -1227,41 +1227,41 @@ __metadata:
"@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.10
+ "@babel/plugin-transform-async-generator-functions": ^7.22.15
"@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.10
+ "@babel/plugin-transform-block-scoping": ^7.22.15
"@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-class-static-block": ^7.22.11
+ "@babel/plugin-transform-classes": ^7.22.15
"@babel/plugin-transform-computed-properties": ^7.22.5
- "@babel/plugin-transform-destructuring": ^7.22.10
+ "@babel/plugin-transform-destructuring": ^7.22.15
"@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-dynamic-import": ^7.22.11
"@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-export-namespace-from": ^7.22.11
+ "@babel/plugin-transform-for-of": ^7.22.15
"@babel/plugin-transform-function-name": ^7.22.5
- "@babel/plugin-transform-json-strings": ^7.22.5
+ "@babel/plugin-transform-json-strings": ^7.22.11
"@babel/plugin-transform-literals": ^7.22.5
- "@babel/plugin-transform-logical-assignment-operators": ^7.22.5
+ "@babel/plugin-transform-logical-assignment-operators": ^7.22.11
"@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-commonjs": ^7.22.15
+ "@babel/plugin-transform-modules-systemjs": ^7.22.11
"@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-nullish-coalescing-operator": ^7.22.11
+ "@babel/plugin-transform-numeric-separator": ^7.22.11
+ "@babel/plugin-transform-object-rest-spread": ^7.22.15
"@babel/plugin-transform-object-super": ^7.22.5
- "@babel/plugin-transform-optional-catch-binding": ^7.22.5
- "@babel/plugin-transform-optional-chaining": ^7.22.10
- "@babel/plugin-transform-parameters": ^7.22.5
+ "@babel/plugin-transform-optional-catch-binding": ^7.22.11
+ "@babel/plugin-transform-optional-chaining": ^7.22.15
+ "@babel/plugin-transform-parameters": ^7.22.15
"@babel/plugin-transform-private-methods": ^7.22.5
- "@babel/plugin-transform-private-property-in-object": ^7.22.5
+ "@babel/plugin-transform-private-property-in-object": ^7.22.11
"@babel/plugin-transform-property-literals": ^7.22.5
"@babel/plugin-transform-regenerator": ^7.22.10
"@babel/plugin-transform-reserved-words": ^7.22.5
@@ -1275,7 +1275,7 @@ __metadata:
"@babel/plugin-transform-unicode-regex": ^7.22.5
"@babel/plugin-transform-unicode-sets-regex": ^7.22.5
"@babel/preset-modules": 0.1.6-no-external-plugins
- "@babel/types": ^7.22.10
+ "@babel/types": ^7.22.15
babel-plugin-polyfill-corejs2: ^0.4.5
babel-plugin-polyfill-corejs3: ^0.8.3
babel-plugin-polyfill-regenerator: ^0.5.2
@@ -1283,7 +1283,7 @@ __metadata:
semver: ^6.3.1
peerDependencies:
"@babel/core": ^7.0.0-0
- checksum: 4145a660a7b05e21e6d8b6cdf348c6931238abb15282a258bdb5e04cd3cca9356dc120ecfe0d1b977819ade4aac50163127c86db2300227ff60392d24daa0b7c
+ checksum: c3cf0223cab006cbf0c563a49a5076caa0b62e3b61b4f10ba857347fcd4f85dbb662a78e6f289e4f29f72c36974696737ae86c23da114617f5b00ab2c1c66126
languageName: node
linkType: hard
@@ -1307,52 +1307,52 @@ __metadata:
languageName: node
linkType: hard
-"@babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.21.0, @babel/runtime@npm:^7.22.6, @babel/runtime@npm:^7.3.1, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7":
- version: 7.22.10
- resolution: "@babel/runtime@npm:7.22.10"
+"@babel/runtime@npm:^7.1.2, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.22.10, @babel/runtime@npm:^7.3.1, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.8.4, @babel/runtime@npm:^7.8.7":
+ version: 7.22.15
+ resolution: "@babel/runtime@npm:7.22.15"
dependencies:
regenerator-runtime: ^0.14.0
- checksum: 524d41517e68953dbc73a4f3616b8475e5813f64e28ba89ff5fca2c044d535c2ea1a3f310df1e5bb06162e1f0b401b5c4af73fe6e2519ca2450d9d8c44cf268d
+ checksum: 793296df1e41599a935a3d77ec01eb6088410d3fd4dbe4e92f06c6b7bb2f8355024e6d78621a3a35f44e0e23b0b59107f23d585384df4f3123256a1e1492040e
languageName: node
linkType: hard
-"@babel/template@npm:^7.22.5, @babel/template@npm:^7.3.3":
- version: 7.22.5
- resolution: "@babel/template@npm:7.22.5"
+"@babel/template@npm:^7.22.15, @babel/template@npm:^7.22.5, @babel/template@npm:^7.3.3":
+ version: 7.22.15
+ resolution: "@babel/template@npm:7.22.15"
dependencies:
- "@babel/code-frame": ^7.22.5
- "@babel/parser": ^7.22.5
- "@babel/types": ^7.22.5
- checksum: c5746410164039aca61829cdb42e9a55410f43cace6f51ca443313f3d0bdfa9a5a330d0b0df73dc17ef885c72104234ae05efede37c1cc8a72dc9f93425977a3
+ "@babel/code-frame": ^7.22.13
+ "@babel/parser": ^7.22.15
+ "@babel/types": ^7.22.15
+ checksum: 1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd
languageName: node
linkType: hard
-"@babel/traverse@npm:^7.1.0, @babel/traverse@npm:^7.22.10":
- version: 7.22.10
- resolution: "@babel/traverse@npm:7.22.10"
+"@babel/traverse@npm:^7.22.15, @babel/traverse@npm:^7.22.17":
+ version: 7.22.17
+ resolution: "@babel/traverse@npm:7.22.17"
dependencies:
- "@babel/code-frame": ^7.22.10
- "@babel/generator": ^7.22.10
+ "@babel/code-frame": ^7.22.13
+ "@babel/generator": ^7.22.15
"@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.10
- "@babel/types": ^7.22.10
+ "@babel/parser": ^7.22.16
+ "@babel/types": ^7.22.17
debug: ^4.1.0
globals: ^11.1.0
- checksum: 9f7b358563bfb0f57ac4ed639f50e5c29a36b821a1ce1eea0c7db084f5b925e3275846d0de63bde01ca407c85d9804e0efbe370d92cd2baaafde3bd13b0f4cdb
+ checksum: 1153ca166a0a9b3fddf67f7f7c8c5b4f88aa2c2c00261ff2fc8424a63bc93250ed3fd08b04bd526ad19e797aeb6f22161120646a570cbfe5ff2a5d2f5d28af01
languageName: node
linkType: hard
-"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.10, @babel/types@npm:^7.22.5, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3":
- version: 7.22.10
- resolution: "@babel/types@npm:7.22.10"
+"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.15, @babel/types@npm:^7.22.17, @babel/types@npm:^7.22.5, @babel/types@npm:^7.3.3, @babel/types@npm:^7.4.4, @babel/types@npm:^7.8.3":
+ version: 7.22.17
+ resolution: "@babel/types@npm:7.22.17"
dependencies:
"@babel/helper-string-parser": ^7.22.5
- "@babel/helper-validator-identifier": ^7.22.5
+ "@babel/helper-validator-identifier": ^7.22.15
to-fast-properties: ^2.0.0
- checksum: 095c4f4b7503fa816e4094113f0ec2351ef96ff32012010b771693066ff628c7c664b21c6bd3fb93aeb46fe7c61f6b3a3c9e4ed0034d6a2481201c417371c8af
+ checksum: 7382220f6eb2548f2c867a98916c3aa8a6063498d5372e5d21d8d184ba354033defb72aeba5858c1b2b42177058b896a34a7dcbae5eccd47fb0104721efa909d
languageName: node
linkType: hard
@@ -1422,18 +1422,6 @@ __metadata:
languageName: node
linkType: hard
-"@cnakazawa/watch@npm:^1.0.3":
- version: 1.0.4
- resolution: "@cnakazawa/watch@npm:1.0.4"
- dependencies:
- exec-sh: ^0.3.2
- minimist: ^1.2.0
- bin:
- watch: cli.js
- checksum: 88f395ca0af2f3c0665b8ce7bb29e83647ec5d141e8735712aeeee4117081555436712966b6957aa1c461f6f826a4d23b0034e379c443a10e919f81c8748bf29
- languageName: node
- linkType: hard
-
"@codemirror/autocomplete@npm:^6.0.0, @codemirror/autocomplete@npm:^6.3.2, @codemirror/autocomplete@npm:^6.5.1, @codemirror/autocomplete@npm:^6.7.1":
version: 6.9.0
resolution: "@codemirror/autocomplete@npm:6.9.0"
@@ -1452,14 +1440,14 @@ __metadata:
linkType: hard
"@codemirror/commands@npm:^6.2.3":
- version: 6.2.4
- resolution: "@codemirror/commands@npm:6.2.4"
+ version: 6.2.5
+ resolution: "@codemirror/commands@npm:6.2.5"
dependencies:
"@codemirror/language": ^6.0.0
"@codemirror/state": ^6.2.0
"@codemirror/view": ^6.0.0
"@lezer/common": ^1.0.0
- checksum: 468895fa19ff0554181b698c81f850820de5c0289cab92c44392fb127286f09ca72b921d6ea4353b70b616a4fd0c3667d86b6f917202a3ad2e196eb7b581f7b6
+ checksum: 6d373bcfd4337160243e1493c8703a8e367e208811742331679a6410a3645de36ae8a5664e11790fec521137b45f34d703e9292932a98c4de10139510f3f29a3
languageName: node
linkType: hard
@@ -1487,19 +1475,19 @@ __metadata:
linkType: hard
"@codemirror/lang-html@npm:^6.0.0, @codemirror/lang-html@npm:^6.4.3":
- version: 6.4.5
- resolution: "@codemirror/lang-html@npm:6.4.5"
+ version: 6.4.6
+ resolution: "@codemirror/lang-html@npm:6.4.6"
dependencies:
"@codemirror/autocomplete": ^6.0.0
"@codemirror/lang-css": ^6.0.0
"@codemirror/lang-javascript": ^6.0.0
"@codemirror/language": ^6.4.0
"@codemirror/state": ^6.0.0
- "@codemirror/view": ^6.2.2
+ "@codemirror/view": ^6.17.0
"@lezer/common": ^1.0.0
"@lezer/css": ^1.1.0
"@lezer/html": ^1.3.0
- checksum: 08c6a55557f5491059f1b20d7788e64dcc37c488d4c97c00fa1c21af599ab48cdd7f839f3ffc6814480b9756c7a96845a36b578427b3c8d5efbfe123bf4553b9
+ checksum: 8f884f4423ffc783181ee933f7212ad4ece204695cf8af9535a593f95e901d36515a8561fc336a0fbcf5782369b9484eeb0d2cec2167622868238177c5e6eb36
languageName: node
linkType: hard
@@ -1514,17 +1502,17 @@ __metadata:
linkType: hard
"@codemirror/lang-javascript@npm:^6.0.0, @codemirror/lang-javascript@npm:^6.1.7":
- version: 6.1.9
- resolution: "@codemirror/lang-javascript@npm:6.1.9"
+ version: 6.2.1
+ resolution: "@codemirror/lang-javascript@npm:6.2.1"
dependencies:
"@codemirror/autocomplete": ^6.0.0
"@codemirror/language": ^6.6.0
"@codemirror/lint": ^6.0.0
"@codemirror/state": ^6.0.0
- "@codemirror/view": ^6.0.0
+ "@codemirror/view": ^6.17.0
"@lezer/common": ^1.0.0
"@lezer/javascript": ^1.0.0
- checksum: 6c79b51c61d37b3f4dde6312df02183045c31f055e5cf8550b497f39798b823b4e380a641a2cfc97f3f26fd4e89194258d8ef741c42acd72b3f2e18257b427a5
+ checksum: 3df38c4cced06195283a9a2a9365aaa7c8c1b157852b331bc3a118403f774bbba57d2a392de52f5e28d2b344a323bc0146bcf7c8ef8be2473f167d815e4a37cd
languageName: node
linkType: hard
@@ -1648,24 +1636,24 @@ __metadata:
linkType: hard
"@codemirror/lint@npm:^6.0.0":
- version: 6.4.0
- resolution: "@codemirror/lint@npm:6.4.0"
+ version: 6.4.1
+ resolution: "@codemirror/lint@npm:6.4.1"
dependencies:
"@codemirror/state": ^6.0.0
"@codemirror/view": ^6.0.0
crelt: ^1.0.5
- checksum: ba15f7dd87afbceafaa0b68f94b0d53727e4aacca7a81a4ed3278706df5787fdf18cd3f0d807a136f902b2fc2296bf3490462fd543d1d4ced17a0d8c171820fd
+ checksum: ac8120ca96b5ef57abd2705b2620c15c7449b5056bca87053480e244c6772863e1537387a863cfb784f9f2af2c8b30be78a31660d96a815672059085beb51fd5
languageName: node
linkType: hard
"@codemirror/search@npm:^6.3.0":
- version: 6.5.1
- resolution: "@codemirror/search@npm:6.5.1"
+ version: 6.5.2
+ resolution: "@codemirror/search@npm:6.5.2"
dependencies:
"@codemirror/state": ^6.0.0
"@codemirror/view": ^6.0.0
crelt: ^1.0.5
- checksum: 672515c20238f69ff5cd8b662128699178ba7e020fc44a8ed2b0dcc25d8d5f5579418865616dd8809317a408fb08b6001a442f0fb706a772250b4284d7437045
+ checksum: bc535151277fda0a370ac496b9b0d5751fd91bd8e3eb29dafbfe6bf3125dc450a7e361ebc302f0ebc4193ac337bdf555ab3d5ec753dbb44452225618a5630dd3
languageName: node
linkType: hard
@@ -1676,14 +1664,14 @@ __metadata:
languageName: node
linkType: hard
-"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.2.2, @codemirror/view@npm:^6.6.0, @codemirror/view@npm:^6.7.0, @codemirror/view@npm:^6.9.6":
- version: 6.16.0
- resolution: "@codemirror/view@npm:6.16.0"
+"@codemirror/view@npm:^6.0.0, @codemirror/view@npm:^6.17.0, @codemirror/view@npm:^6.6.0, @codemirror/view@npm:^6.7.0, @codemirror/view@npm:^6.9.6":
+ version: 6.18.0
+ resolution: "@codemirror/view@npm:6.18.0"
dependencies:
"@codemirror/state": ^6.1.4
- style-mod: ^4.0.0
+ style-mod: ^4.1.0
w3c-keyname: ^2.2.4
- checksum: 54d412b5159716c8a1a9c46fa04ff083e68a663cb887e6e2a4ca86fe9c3930d5255200fe84c65620e0a442f62dc2c13df277bcd1d4eef2e11e3c4e124fcf9d38
+ checksum: 275bf5898e884297f16f73e4dff1b520a196a5f7724fbeda634a927e7f4036f6786e816b124505942de99800fb66c538307e8c08e55234ad57483f1a009e3d35
languageName: node
linkType: hard
@@ -1866,6 +1854,44 @@ __metadata:
languageName: node
linkType: hard
+"@floating-ui/core@npm:^1.4.1":
+ version: 1.4.1
+ resolution: "@floating-ui/core@npm:1.4.1"
+ dependencies:
+ "@floating-ui/utils": ^0.1.1
+ checksum: be4ab864fe17eeba5e205bd554c264b9a4895a57c573661bbf638357fa3108677fed7ba3269ec15b4da90e29274c9b626d5a15414e8d1fe691e210d02a03695c
+ languageName: node
+ linkType: hard
+
+"@floating-ui/dom@npm:^1.5.1":
+ version: 1.5.1
+ resolution: "@floating-ui/dom@npm:1.5.1"
+ dependencies:
+ "@floating-ui/core": ^1.4.1
+ "@floating-ui/utils": ^0.1.1
+ checksum: ddb509030978536ba7b321cf8c764ae9d0142a3b1fefb7e6bc050a5de7e825e12131fa5089009edabf7c125fb274886da211a5220fe17a71d875a7a96eb1386c
+ languageName: node
+ linkType: hard
+
+"@floating-ui/react-dom@npm:^2.0.1":
+ version: 2.0.2
+ resolution: "@floating-ui/react-dom@npm:2.0.2"
+ dependencies:
+ "@floating-ui/dom": ^1.5.1
+ peerDependencies:
+ react: ">=16.8.0"
+ react-dom: ">=16.8.0"
+ checksum: 4797e1f7a19c1e531ed0d578ccdcbe58970743e5a480ba30424857fc953063f36d481f8c5d69248a8f1d521b739e94bf5e1ffb35506400dea3d914f166ed2f7f
+ languageName: node
+ linkType: hard
+
+"@floating-ui/utils@npm:^0.1.1":
+ version: 0.1.1
+ resolution: "@floating-ui/utils@npm:0.1.1"
+ checksum: 548acdda7902f45b0afbe34e2e7f4cbff0696b95bad8c039f80936519de24ef2ec20e79902825b7815294b37f51a7c52ee86288b0688869a57cc229a164d86b4
+ languageName: node
+ linkType: hard
+
"@fortawesome/fontawesome-free@npm:^5.12.0":
version: 5.15.4
resolution: "@fortawesome/fontawesome-free@npm:5.15.4"
@@ -1959,23 +1985,9 @@ __metadata:
languageName: node
linkType: hard
-"@jest/console@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/console@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- "@types/node": "*"
- chalk: ^4.0.0
- jest-message-util: ^26.6.2
- jest-util: ^26.6.2
- slash: ^3.0.0
- checksum: 69a9ca6ba357d7634fd537e3b87c64369865ffb59f57fe6661223088bd62273d0c1d660fefce3625a427f42a37d32590f6b291e1295ea6d6b7cb31ddae36a737
- languageName: node
- linkType: hard
-
-"@jest/console@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/console@npm:29.6.3"
+"@jest/console@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/console@npm:29.6.4"
dependencies:
"@jest/types": ^29.6.3
"@types/node": "*"
@@ -1983,54 +1995,18 @@ __metadata:
jest-message-util: ^29.6.3
jest-util: ^29.6.3
slash: ^3.0.0
- checksum: a30b380166944ac06d36a50a36f05e65022b97064efd3ace7113d1dfc30d96966af578266f69817afa9d6ec679f8ceb6ae905352c07e5ad23d3c307fc0060174
- languageName: node
- linkType: hard
-
-"@jest/core@npm:^26.6.3":
- version: 26.6.3
- resolution: "@jest/core@npm:26.6.3"
- dependencies:
- "@jest/console": ^26.6.2
- "@jest/reporters": ^26.6.2
- "@jest/test-result": ^26.6.2
- "@jest/transform": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/node": "*"
- ansi-escapes: ^4.2.1
- chalk: ^4.0.0
- exit: ^0.1.2
- graceful-fs: ^4.2.4
- jest-changed-files: ^26.6.2
- jest-config: ^26.6.3
- jest-haste-map: ^26.6.2
- jest-message-util: ^26.6.2
- jest-regex-util: ^26.0.0
- jest-resolve: ^26.6.2
- jest-resolve-dependencies: ^26.6.3
- jest-runner: ^26.6.3
- jest-runtime: ^26.6.3
- jest-snapshot: ^26.6.2
- jest-util: ^26.6.2
- jest-validate: ^26.6.2
- jest-watcher: ^26.6.2
- micromatch: ^4.0.2
- p-each-series: ^2.1.0
- rimraf: ^3.0.0
- slash: ^3.0.0
- strip-ansi: ^6.0.0
- checksum: f52b26ffe9b923ed67b3ff30e170b3a434d4263990f78d96cd43acbd0aa8ad36aecad2f1822f376da3a80228714fd6b7f7acd51744133cfcd2780ba0e3da537b
+ checksum: 1caf061a39266b86e96ca13358401839e4d930742cbaa9e87e79d7ce170a83195e52e5b2d22eb5aa9a949219b61a163a81e337ec98b8323d88d79853051df96c
languageName: node
linkType: hard
-"@jest/core@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/core@npm:29.6.3"
+"@jest/core@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/core@npm:29.6.4"
dependencies:
- "@jest/console": ^29.6.3
- "@jest/reporters": ^29.6.3
- "@jest/test-result": ^29.6.3
- "@jest/transform": ^29.6.3
+ "@jest/console": ^29.6.4
+ "@jest/reporters": ^29.6.4
+ "@jest/test-result": ^29.6.4
+ "@jest/transform": ^29.6.4
"@jest/types": ^29.6.3
"@types/node": "*"
ansi-escapes: ^4.2.1
@@ -2039,18 +2015,18 @@ __metadata:
exit: ^0.1.2
graceful-fs: ^4.2.9
jest-changed-files: ^29.6.3
- jest-config: ^29.6.3
- jest-haste-map: ^29.6.3
+ jest-config: ^29.6.4
+ jest-haste-map: ^29.6.4
jest-message-util: ^29.6.3
jest-regex-util: ^29.6.3
- jest-resolve: ^29.6.3
- jest-resolve-dependencies: ^29.6.3
- jest-runner: ^29.6.3
- jest-runtime: ^29.6.3
- jest-snapshot: ^29.6.3
+ jest-resolve: ^29.6.4
+ jest-resolve-dependencies: ^29.6.4
+ jest-runner: ^29.6.4
+ jest-runtime: ^29.6.4
+ jest-snapshot: ^29.6.4
jest-util: ^29.6.3
jest-validate: ^29.6.3
- jest-watcher: ^29.6.3
+ jest-watcher: ^29.6.4
micromatch: ^4.0.4
pretty-format: ^29.6.3
slash: ^3.0.0
@@ -2060,70 +2036,44 @@ __metadata:
peerDependenciesMeta:
node-notifier:
optional: true
- checksum: 8ec37ce75f52dc85dfe703d4f8de31acf2134d1056127d075a700cf3668bad0cccc17f742b39f0053f8c12455075018bd3551093c0b3e082d593980093cb6ce9
- languageName: node
- linkType: hard
-
-"@jest/environment@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/environment@npm:26.6.2"
- dependencies:
- "@jest/fake-timers": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/node": "*"
- jest-mock: ^26.6.2
- checksum: 7748081b2a758161785aff161780b05084dccaff908c8ed82c04f7da5d5e5439e77b5eb667306d5c4e1422653c7a67ed2955f26704f48c65c404195e1e21780a
+ checksum: 0f36532c909775814cb7d4310d61881beaefdec6229ef0b7493c6191dfca20ae5222120846ea5ef8cdeaa8cef265aae9cea8989dcab572d8daea9afd14247c7a
languageName: node
linkType: hard
-"@jest/environment@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/environment@npm:29.6.3"
+"@jest/environment@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/environment@npm:29.6.4"
dependencies:
- "@jest/fake-timers": ^29.6.3
+ "@jest/fake-timers": ^29.6.4
"@jest/types": ^29.6.3
"@types/node": "*"
jest-mock: ^29.6.3
- checksum: 96aaf9baaa58fbacbdfbde9591297f25f9d6f5566cf10cd07d744a4a25b1d82b6cfb89f217a45ccce2cc50ec6c7e3c9a0122908d6b827985a1679afb5e10b7b1
+ checksum: 810d8f1fc26d293acfc44927bcb78adc58ed4ea580a64c8d94aa6c67239dcb149186bf25b94ff28b79de15253e0c877ad8d330feac205f185f3517593168510c
languageName: node
linkType: hard
-"@jest/expect-utils@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/expect-utils@npm:29.6.3"
+"@jest/expect-utils@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/expect-utils@npm:29.6.4"
dependencies:
jest-get-type: ^29.6.3
- checksum: aeb0c2a485df09fdb51f866d58e232010cde888a7e6e1f9b395df236918e09e98407eb8281a3d41d2b115d9ff740d100b75100d521717ba903abeacb26e2a192
- languageName: node
- linkType: hard
-
-"@jest/expect@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/expect@npm:29.6.3"
- dependencies:
- expect: ^29.6.3
- jest-snapshot: ^29.6.3
- checksum: 40c3fc53aa9f86e10129fcaec243405a4b4c398a8d65a3133f97d39331f065c3833c352b133377f003b2e9acc70909d72ac91698c219a883b857b7cda559b199
+ checksum: a17059e02a4c0fca98e2abb7e9e58c70df3cd3d4ebcc6a960cb57c571726f7bd738c6cd008a9bf99770b77e92f7e21c75fe1f9ceec9b7a7710010f9340bb28ad
languageName: node
linkType: hard
-"@jest/fake-timers@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/fake-timers@npm:26.6.2"
+"@jest/expect@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/expect@npm:29.6.4"
dependencies:
- "@jest/types": ^26.6.2
- "@sinonjs/fake-timers": ^6.0.1
- "@types/node": "*"
- jest-message-util: ^26.6.2
- jest-mock: ^26.6.2
- jest-util: ^26.6.2
- checksum: c732658fac4014a424e6629495296c3b2e8697787518df34c74539ec139625e7141ad792b8a4d3c8392b47954ad01be9846b7c57cc8c631490969e7cafa84e6a
+ expect: ^29.6.4
+ jest-snapshot: ^29.6.4
+ checksum: e9d7306a96e2f9f9f7a0d93d41850cbad987ebda951a5d9a63d3f5fb61da4c1e41adb54af7f7222e4a185454ecb17ddc77845e18001ee28ac114f7a7fe9e671d
languageName: node
linkType: hard
-"@jest/fake-timers@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/fake-timers@npm:29.6.3"
+"@jest/fake-timers@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/fake-timers@npm:29.6.4"
dependencies:
"@jest/types": ^29.6.3
"@sinonjs/fake-timers": ^10.0.2
@@ -2131,77 +2081,30 @@ __metadata:
jest-message-util: ^29.6.3
jest-mock: ^29.6.3
jest-util: ^29.6.3
- checksum: 60be71159bb92c8b8da593fac2b2fff50c0760c26c3b17237561a2818382d3c797bd119a1707ec1d3e9b77e8e3d6513fe88f0c668d6ca26fb2c01ab475620888
- languageName: node
- linkType: hard
-
-"@jest/globals@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/globals@npm:26.6.2"
- dependencies:
- "@jest/environment": ^26.6.2
- "@jest/types": ^26.6.2
- expect: ^26.6.2
- checksum: 49b28d0cc7e99898eeaf23e6899e3c9ee25a2a4831caa3eb930ec1722de2e92a0e8a6a6f649438fdd20ff0c0d5e522dd78cb719466a57f011a88d60419b903c5
+ checksum: 3f06d1090cbaaf781920fe59b10509ad86b587c401818a066ee1550101c6203e0718f0f83bbd2afa8bdf7b43eb280f89fb9f8c98886094e53ccabe5e64de9be1
languageName: node
linkType: hard
-"@jest/globals@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/globals@npm:29.6.3"
+"@jest/globals@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/globals@npm:29.6.4"
dependencies:
- "@jest/environment": ^29.6.3
- "@jest/expect": ^29.6.3
+ "@jest/environment": ^29.6.4
+ "@jest/expect": ^29.6.4
"@jest/types": ^29.6.3
jest-mock: ^29.6.3
- checksum: c90ad4e85c4c7fa42e4c61fc6bba854dc7e12c3579b4412fe879e712bf3675e92a771d2ac4ba2a48304a4dab34182e62e9d62f36ca13ddf8dff3cca911ddfbbb
- languageName: node
- linkType: hard
-
-"@jest/reporters@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/reporters@npm:26.6.2"
- dependencies:
- "@bcoe/v8-coverage": ^0.2.3
- "@jest/console": ^26.6.2
- "@jest/test-result": ^26.6.2
- "@jest/transform": ^26.6.2
- "@jest/types": ^26.6.2
- chalk: ^4.0.0
- collect-v8-coverage: ^1.0.0
- exit: ^0.1.2
- glob: ^7.1.2
- graceful-fs: ^4.2.4
- istanbul-lib-coverage: ^3.0.0
- istanbul-lib-instrument: ^4.0.3
- istanbul-lib-report: ^3.0.0
- istanbul-lib-source-maps: ^4.0.0
- istanbul-reports: ^3.0.2
- jest-haste-map: ^26.6.2
- jest-resolve: ^26.6.2
- jest-util: ^26.6.2
- jest-worker: ^26.6.2
- node-notifier: ^8.0.0
- slash: ^3.0.0
- source-map: ^0.6.0
- string-length: ^4.0.1
- terminal-link: ^2.0.0
- v8-to-istanbul: ^7.0.0
- dependenciesMeta:
- node-notifier:
- optional: true
- checksum: 53c7a697c562becb7682a9a6248ea553013bf7048c08ddce5bf9fb53b975fc9f799ca163f7494e0be6c4d3cf181c8bc392976268da52b7de8ce4470b971ed84e
+ checksum: a41b18871a248151264668a38b13cb305f03db112bfd89ec44e858af0e79066e0b03d6b68c8baf1ec6c578be6fdb87519389c83438608b91471d17a5724858e0
languageName: node
linkType: hard
-"@jest/reporters@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/reporters@npm:29.6.3"
+"@jest/reporters@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/reporters@npm:29.6.4"
dependencies:
"@bcoe/v8-coverage": ^0.2.3
- "@jest/console": ^29.6.3
- "@jest/test-result": ^29.6.3
- "@jest/transform": ^29.6.3
+ "@jest/console": ^29.6.4
+ "@jest/test-result": ^29.6.4
+ "@jest/transform": ^29.6.4
"@jest/types": ^29.6.3
"@jridgewell/trace-mapping": ^0.3.18
"@types/node": "*"
@@ -2217,7 +2120,7 @@ __metadata:
istanbul-reports: ^3.1.3
jest-message-util: ^29.6.3
jest-util: ^29.6.3
- jest-worker: ^29.6.3
+ jest-worker: ^29.6.4
slash: ^3.0.0
string-length: ^4.0.1
strip-ansi: ^6.0.0
@@ -2227,7 +2130,7 @@ __metadata:
peerDependenciesMeta:
node-notifier:
optional: true
- checksum: 8899240f018874148a24886ac78ada6dda4b7fc621fed904b276b324b981c2294d2036df92fb87411f2abb914faa351098eeb814d7685dcfa37c7c27b54660a4
+ checksum: 9ee0db497f3a826f535d3af0575ceb67984f9708bc6386450359517c212c67218ae98b8ea93ab05df2f920aed9c4166ef64209d66a09b7e30fc0077c91347ad0
languageName: node
linkType: hard
@@ -2240,17 +2143,6 @@ __metadata:
languageName: node
linkType: hard
-"@jest/source-map@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/source-map@npm:26.6.2"
- dependencies:
- callsites: ^3.0.0
- graceful-fs: ^4.2.4
- source-map: ^0.6.0
- checksum: b171cef442738887dda85527ab78229996db5946c6435ddb56d442c2851889ba493729a9de73100f1a31b9a31a91207b55bc75656ae7df9843d65078b925385e
- languageName: node
- linkType: hard
-
"@jest/source-map@npm:^29.6.3":
version: 29.6.3
resolution: "@jest/source-map@npm:29.6.3"
@@ -2262,81 +2154,33 @@ __metadata:
languageName: node
linkType: hard
-"@jest/test-result@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/test-result@npm:26.6.2"
- dependencies:
- "@jest/console": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/istanbul-lib-coverage": ^2.0.0
- collect-v8-coverage: ^1.0.0
- checksum: dcb6175825231e9377e43546aed4edd6acc22f1788d5f099bbba36bb55b9115a92f760e88426c076bcdeff5a50d8f697327a920db0cd1fb339781fc3713fa8c7
- languageName: node
- linkType: hard
-
-"@jest/test-result@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/test-result@npm:29.6.3"
+"@jest/test-result@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/test-result@npm:29.6.4"
dependencies:
- "@jest/console": ^29.6.3
+ "@jest/console": ^29.6.4
"@jest/types": ^29.6.3
"@types/istanbul-lib-coverage": ^2.0.0
collect-v8-coverage: ^1.0.0
- checksum: 0f8164520587555f4e0c5b3e0843ae8ae43c517301c2986b9ff24ca58215f407164b99f3ccfde778dc3fb299c3bb8922a3dd81cf3ccf0ff646806df61d3d2d78
- languageName: node
- linkType: hard
-
-"@jest/test-sequencer@npm:^26.6.3":
- version: 26.6.3
- resolution: "@jest/test-sequencer@npm:26.6.3"
- dependencies:
- "@jest/test-result": ^26.6.2
- graceful-fs: ^4.2.4
- jest-haste-map: ^26.6.2
- jest-runner: ^26.6.3
- jest-runtime: ^26.6.3
- checksum: a3450b3d7057f74da1828bb7b3658f228a7c049dc4082c5c49b8bafbd8f69d102a8a99007b7ed5d43464712f7823f53fe3564fda17787f178c219cccf329a461
+ checksum: a13c82d29038e80059191a1a443240678c6934ea832fdabaec12b3ece397b6303022a064494a6bbd167a024f04e6b4d9ace1001300927ff70405ec9d854f1193
languageName: node
linkType: hard
-"@jest/test-sequencer@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/test-sequencer@npm:29.6.3"
+"@jest/test-sequencer@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/test-sequencer@npm:29.6.4"
dependencies:
- "@jest/test-result": ^29.6.3
+ "@jest/test-result": ^29.6.4
graceful-fs: ^4.2.9
- jest-haste-map: ^29.6.3
+ jest-haste-map: ^29.6.4
slash: ^3.0.0
- checksum: 71b5fee13e28b2006b4bdea62181dd6b7a537531ac027b1230ad96a5a0c7837a4c008e9cbeebee630b0c7cc22187fede48cb18fec79209ff641492c994db8259
+ checksum: 517fc66b74a87431a8a1429e4505d85bd09c11f2ba835e46c07c79911fbee23b89c01ec444c7c1d12d1b36f9eba60fcbbccc8e1bc1ae54a1a8b03b5f530ff81b
languageName: node
linkType: hard
-"@jest/transform@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/transform@npm:26.6.2"
- dependencies:
- "@babel/core": ^7.1.0
- "@jest/types": ^26.6.2
- babel-plugin-istanbul: ^6.0.0
- chalk: ^4.0.0
- convert-source-map: ^1.4.0
- fast-json-stable-stringify: ^2.0.0
- graceful-fs: ^4.2.4
- jest-haste-map: ^26.6.2
- jest-regex-util: ^26.0.0
- jest-util: ^26.6.2
- micromatch: ^4.0.2
- pirates: ^4.0.1
- slash: ^3.0.0
- source-map: ^0.6.1
- write-file-atomic: ^3.0.0
- checksum: 31667b925a2f3b310d854495da0ab67be8f5da24df76ecfc51162e75f1140aed5d18069ba190cb5e0c7e492b04272c8c79076ddf5bbcff530ee80a16a02c4545
- languageName: node
- linkType: hard
-
-"@jest/transform@npm:^29.6.3":
- version: 29.6.3
- resolution: "@jest/transform@npm:29.6.3"
+"@jest/transform@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "@jest/transform@npm:29.6.4"
dependencies:
"@babel/core": ^7.11.6
"@jest/types": ^29.6.3
@@ -2346,27 +2190,14 @@ __metadata:
convert-source-map: ^2.0.0
fast-json-stable-stringify: ^2.1.0
graceful-fs: ^4.2.9
- jest-haste-map: ^29.6.3
+ jest-haste-map: ^29.6.4
jest-regex-util: ^29.6.3
jest-util: ^29.6.3
micromatch: ^4.0.4
pirates: ^4.0.4
slash: ^3.0.0
write-file-atomic: ^4.0.2
- checksum: edc47e960a71dab5ad8f0480fc4c1b05f2950c12e5aeb62bacfd46929dd5c7101dd2fa521a2e59c62a90849118039949f0230282a485de8dc373aac711f1bff9
- languageName: node
- linkType: hard
-
-"@jest/types@npm:^26.6.2":
- version: 26.6.2
- resolution: "@jest/types@npm:26.6.2"
- dependencies:
- "@types/istanbul-lib-coverage": ^2.0.0
- "@types/istanbul-reports": ^3.0.0
- "@types/node": "*"
- "@types/yargs": ^15.0.0
- chalk: ^4.0.0
- checksum: a0bd3d2f22f26ddb23f41fddf6e6a30bf4fab2ce79ec1cb6ce6fdfaf90a72e00f4c71da91ec61e13db3b10c41de22cf49d07c57ff2b59171d64b29f909c1d8d6
+ checksum: 0341a200a0bb926fc67ab9aede91c7b4009458206495e92057e72a115c55da5fed117457e68c6ea821e24c58b55da75c6a7b0f272ed63c2693db583d689a3383
languageName: node
linkType: hard
@@ -2466,14 +2297,14 @@ __metadata:
"@jupyterlab/ui-components": ^4
"@mui/icons-material": ^5.11.0
"@mui/material": ^5.11.0
- "@types/jest": ^26.0.0
+ "@types/jest": ^29
"@types/react-syntax-highlighter": ^15.5.6
"@typescript-eslint/eslint-plugin": ^4.8.1
"@typescript-eslint/parser": ^4.8.1
eslint: ^7.14.0
eslint-config-prettier: ^6.15.0
eslint-plugin-prettier: ^3.1.4
- jest: ^26.0.0
+ jest: ^29
mkdirp: ^1.0.3
mobx: ^6.10.0
mobx-react: ^9.0.0
@@ -2491,7 +2322,7 @@ __metadata:
stylelint-config-recommended: ^6.0.0
stylelint-config-standard: ~24.0.0
stylelint-prettier: ^2.0.0
- ts-jest: ^26.0.0
+ ts-jest: ^29
typescript: 5.1.6
y-protocols: ^1.0.5
languageName: unknown
@@ -3553,12 +3384,12 @@ __metadata:
linkType: hard
"@lezer/javascript@npm:^1.0.0":
- version: 1.4.6
- resolution: "@lezer/javascript@npm:1.4.6"
+ version: 1.4.7
+ resolution: "@lezer/javascript@npm:1.4.7"
dependencies:
"@lezer/highlight": ^1.1.3
"@lezer/lr": ^1.3.0
- checksum: 0f2a44ebfe4a9177aaa755a42fcb1a00cf08bb8bf6149389754303f5aace2f94edc475c33637a55c66aab7e9367c1e087979ee37e342c84d541ff08eb9e8f695
+ checksum: 37c05793e0e45280fa5d7b845a3132a84596105d48b7d2c195abea0a198477ea6719b07d1c8967679e80fc466388151956901fd6962479c130ffda64a6d09591
languageName: node
linkType: hard
@@ -3919,14 +3750,15 @@ __metadata:
languageName: node
linkType: hard
-"@mui/base@npm:5.0.0-beta.11":
- version: 5.0.0-beta.11
- resolution: "@mui/base@npm:5.0.0-beta.11"
+"@mui/base@npm:5.0.0-beta.14":
+ version: 5.0.0-beta.14
+ resolution: "@mui/base@npm:5.0.0-beta.14"
dependencies:
- "@babel/runtime": ^7.22.6
+ "@babel/runtime": ^7.22.10
"@emotion/is-prop-valid": ^1.2.1
+ "@floating-ui/react-dom": ^2.0.1
"@mui/types": ^7.2.4
- "@mui/utils": ^5.14.5
+ "@mui/utils": ^5.14.8
"@popperjs/core": ^2.11.8
clsx: ^2.0.0
prop-types: ^15.8.1
@@ -3938,22 +3770,22 @@ __metadata:
peerDependenciesMeta:
"@types/react":
optional: true
- checksum: 7a60421c427f3561d3e58abfa223a08ba6fc00e5587ff13c2ebbad52c3ea6bb45bdfa6e8a5cf673be4e90af0aef96b3253ec9098446ba94f5a414eb81e0c3d1a
+ checksum: 3e5c980edb285d4fbf1f9f6c08b237a502e6c444222e0165e98e4e25787de7663d6905536b8e8a7a0888571daaa75fcad01534c8f8ea8ba30451cad82d1b85cc
languageName: node
linkType: hard
-"@mui/core-downloads-tracker@npm:^5.14.5":
- version: 5.14.5
- resolution: "@mui/core-downloads-tracker@npm:5.14.5"
- checksum: 934fe49cf1a14db380727a83fcd559771b82480ebbbe36ea476e219b91cf08224ca3f0b50b3f218aeb10b537cc61e096d3c3048fd93ae7a17238631b144da241
+"@mui/core-downloads-tracker@npm:^5.14.8":
+ version: 5.14.8
+ resolution: "@mui/core-downloads-tracker@npm:5.14.8"
+ checksum: b8322994d7c05426008c3426f7ce4bb0a1dfd633429af704cc9e164655007fc446ba21bf6b00af8fa1b9a9cb4c1757d72c7554e13cceadc575af7d44344da38c
languageName: node
linkType: hard
"@mui/icons-material@npm:^5.11.0":
- version: 5.14.3
- resolution: "@mui/icons-material@npm:5.14.3"
+ version: 5.14.8
+ resolution: "@mui/icons-material@npm:5.14.8"
dependencies:
- "@babel/runtime": ^7.22.6
+ "@babel/runtime": ^7.22.10
peerDependencies:
"@mui/material": ^5.0.0
"@types/react": ^17.0.0 || ^18.0.0
@@ -3961,20 +3793,20 @@ __metadata:
peerDependenciesMeta:
"@types/react":
optional: true
- checksum: 25ff0261dcbcdde9967779f844d12c85c3ffc79227e50d8c03eade1081c2be855e88d2dbe2a587aa57b5c5c2b742af14f70b1767f7ccfd539d89876a6fc580fb
+ checksum: b4e73454b3ac22ccd78cb742d2a610c00494bf0fc5ffcae4133d40a6de92fd320553edbbe853e6595fd7565fa98fed97b9c2c733bc7e0a345a24527f699cc639
languageName: node
linkType: hard
"@mui/material@npm:^5.11.0":
- version: 5.14.5
- resolution: "@mui/material@npm:5.14.5"
+ version: 5.14.8
+ resolution: "@mui/material@npm:5.14.8"
dependencies:
- "@babel/runtime": ^7.22.6
- "@mui/base": 5.0.0-beta.11
- "@mui/core-downloads-tracker": ^5.14.5
- "@mui/system": ^5.14.5
+ "@babel/runtime": ^7.22.10
+ "@mui/base": 5.0.0-beta.14
+ "@mui/core-downloads-tracker": ^5.14.8
+ "@mui/system": ^5.14.8
"@mui/types": ^7.2.4
- "@mui/utils": ^5.14.5
+ "@mui/utils": ^5.14.8
"@types/react-transition-group": ^4.4.6
clsx: ^2.0.0
csstype: ^3.1.2
@@ -3994,16 +3826,16 @@ __metadata:
optional: true
"@types/react":
optional: true
- checksum: a3889143be3a5eff0bb7cfce66f677eb6a441f17a958abb2ace09f20cbfd4edb6ade3d63aa616eca0c774abc7167c63b57a05bb172355f3b6f7ac90ce31f55d2
+ checksum: 2db4eceb6a2b51e2f429082206b5c4194f894bc6831cf5348d301b910e5e2b1a62565cad00a244100434899307c20134832ab2e85dd56bef4dd210d87496e136
languageName: node
linkType: hard
-"@mui/private-theming@npm:^5.14.5":
- version: 5.14.5
- resolution: "@mui/private-theming@npm:5.14.5"
+"@mui/private-theming@npm:^5.14.8":
+ version: 5.14.8
+ resolution: "@mui/private-theming@npm:5.14.8"
dependencies:
- "@babel/runtime": ^7.22.6
- "@mui/utils": ^5.14.5
+ "@babel/runtime": ^7.22.10
+ "@mui/utils": ^5.14.8
prop-types: ^15.8.1
peerDependencies:
"@types/react": ^17.0.0 || ^18.0.0
@@ -4011,15 +3843,15 @@ __metadata:
peerDependenciesMeta:
"@types/react":
optional: true
- checksum: 0d42a858725ee52369689f51c5237cd7d296bf2af380954b7406b62f41a09c34820ac698e53475caf1115adb3849b346945fe2dd867d637be7ae182a84c92b56
+ checksum: 3d8c4b768ee81d03c739acfa7d99450423b9267a1a2219171f247b1823350426452514f0cc646f4d48f113db396b5488c48132fe54a5db8646e101514b764d96
languageName: node
linkType: hard
-"@mui/styled-engine@npm:^5.13.2":
- version: 5.13.2
- resolution: "@mui/styled-engine@npm:5.13.2"
+"@mui/styled-engine@npm:^5.14.8":
+ version: 5.14.8
+ resolution: "@mui/styled-engine@npm:5.14.8"
dependencies:
- "@babel/runtime": ^7.21.0
+ "@babel/runtime": ^7.22.10
"@emotion/cache": ^11.11.0
csstype: ^3.1.2
prop-types: ^15.8.1
@@ -4032,19 +3864,19 @@ __metadata:
optional: true
"@emotion/styled":
optional: true
- checksum: e99f49755406b55a1595bf5d2727f0c0e3fd9f914dce1ea3b6cac826efe05038f8e4bde52580bd6a5a4c62ad59e5582bdde6c17abc10d80e61a64da168803391
+ checksum: 12d626a42fa15cc315172775a076cf6f71afc999123bd290cbda3855de8c607f8fbf0a3daa7a391e67a83ad824c6e7eb21e57121a448a527b3bf9b494a7bd852
languageName: node
linkType: hard
-"@mui/system@npm:^5.14.5":
- version: 5.14.5
- resolution: "@mui/system@npm:5.14.5"
+"@mui/system@npm:^5.14.8":
+ version: 5.14.8
+ resolution: "@mui/system@npm:5.14.8"
dependencies:
- "@babel/runtime": ^7.22.6
- "@mui/private-theming": ^5.14.5
- "@mui/styled-engine": ^5.13.2
+ "@babel/runtime": ^7.22.10
+ "@mui/private-theming": ^5.14.8
+ "@mui/styled-engine": ^5.14.8
"@mui/types": ^7.2.4
- "@mui/utils": ^5.14.5
+ "@mui/utils": ^5.14.8
clsx: ^2.0.0
csstype: ^3.1.2
prop-types: ^15.8.1
@@ -4060,7 +3892,7 @@ __metadata:
optional: true
"@types/react":
optional: true
- checksum: a177012914cf6f86af17e45e15ad489f5203ce5c055d40e77e5152ea0584fa01092c5b27fde956c8d7079b40d9ffd92270edf9c3a5249d4cd217b0dbccadd32d
+ checksum: d630b4253caa971ad0bcb35cef1165ff689bfcadb806eb3b26eddce4d6c1bcdeb9781ccaea87f9950bff308ac302514766880f63c4bbdcdf28619f66d974797c
languageName: node
linkType: hard
@@ -4076,18 +3908,18 @@ __metadata:
languageName: node
linkType: hard
-"@mui/utils@npm:^5.14.5":
- version: 5.14.5
- resolution: "@mui/utils@npm:5.14.5"
+"@mui/utils@npm:^5.14.8":
+ version: 5.14.8
+ resolution: "@mui/utils@npm:5.14.8"
dependencies:
- "@babel/runtime": ^7.22.6
+ "@babel/runtime": ^7.22.10
"@types/prop-types": ^15.7.5
"@types/react-is": ^18.2.1
prop-types: ^15.8.1
react-is: ^18.2.0
peerDependencies:
react: ^17.0.0 || ^18.0.0
- checksum: 7044d73ae41bdfd9c7c6287a3c1391ec4c5395c8f0092eac3ca4f1fd5359068fad29366f39d8072f68493eb5225399463935bbca266c879d630f8ebaa3db96d7
+ checksum: 2fb29c9d7908a47276b4f4a31a7e76d5a7d437afe95d2c0d6cd9c07f04beea89857f763c4f5c546fe243539d9986181815bfded42e516077122ed373d11a7ebf
languageName: node
linkType: hard
@@ -4330,18 +4162,18 @@ __metadata:
languageName: node
linkType: hard
-"@nrwl/cli@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/cli@npm:15.9.5"
+"@nrwl/cli@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/cli@npm:15.9.6"
dependencies:
- nx: 15.9.5
- checksum: 605b2614916de86969f5d885a4c2232d46713cf83811d9a4581981d7f5d2423291062b98ff3632a8bad358dabaf4fbb77f521fd825c70e853c0a694a8336b93a
+ nx: 15.9.6
+ checksum: cf1b702c66e2e0a82510bcb4e0c672f5481ef5265044573b8e15bc87e0234e961cb38f4b951d00335fad284bc5e539ee6eaf71276f5248a20902c05d26b91162
languageName: node
linkType: hard
"@nrwl/devkit@npm:>=15.5.2 < 16":
- version: 15.9.5
- resolution: "@nrwl/devkit@npm:15.9.5"
+ version: 15.9.6
+ resolution: "@nrwl/devkit@npm:15.9.6"
dependencies:
ejs: ^3.1.7
ignore: ^5.0.4
@@ -4350,81 +4182,81 @@ __metadata:
tslib: ^2.3.0
peerDependencies:
nx: ">= 14.1 <= 16"
- checksum: 745b3c03b0e39426d20f3ec437752f13ee41248ea46dbc009fce6bc7f494576015d25c861d93087c2896c825472302dc10035c8683979bbbe8a447b2c7446481
+ checksum: 94af5245aad362704819ecc7ac8ca6e6f78a232e9853cd1b36085ae47948cee357dcf8414bb3ac620131e1ce16fb3b4e469979593e7e18398ea9faa22b4fcc60
languageName: node
linkType: hard
-"@nrwl/nx-darwin-arm64@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-darwin-arm64@npm:15.9.5"
+"@nrwl/nx-darwin-arm64@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-darwin-arm64@npm:15.9.6"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
-"@nrwl/nx-darwin-x64@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-darwin-x64@npm:15.9.5"
+"@nrwl/nx-darwin-x64@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-darwin-x64@npm:15.9.6"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
-"@nrwl/nx-linux-arm-gnueabihf@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-linux-arm-gnueabihf@npm:15.9.5"
+"@nrwl/nx-linux-arm-gnueabihf@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-linux-arm-gnueabihf@npm:15.9.6"
conditions: os=linux & cpu=arm
languageName: node
linkType: hard
-"@nrwl/nx-linux-arm64-gnu@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-linux-arm64-gnu@npm:15.9.5"
+"@nrwl/nx-linux-arm64-gnu@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-linux-arm64-gnu@npm:15.9.6"
conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node
linkType: hard
-"@nrwl/nx-linux-arm64-musl@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-linux-arm64-musl@npm:15.9.5"
+"@nrwl/nx-linux-arm64-musl@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-linux-arm64-musl@npm:15.9.6"
conditions: os=linux & cpu=arm64 & libc=musl
languageName: node
linkType: hard
-"@nrwl/nx-linux-x64-gnu@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-linux-x64-gnu@npm:15.9.5"
+"@nrwl/nx-linux-x64-gnu@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-linux-x64-gnu@npm:15.9.6"
conditions: os=linux & cpu=x64 & libc=glibc
languageName: node
linkType: hard
-"@nrwl/nx-linux-x64-musl@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-linux-x64-musl@npm:15.9.5"
+"@nrwl/nx-linux-x64-musl@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-linux-x64-musl@npm:15.9.6"
conditions: os=linux & cpu=x64 & libc=musl
languageName: node
linkType: hard
-"@nrwl/nx-win32-arm64-msvc@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-win32-arm64-msvc@npm:15.9.5"
+"@nrwl/nx-win32-arm64-msvc@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-win32-arm64-msvc@npm:15.9.6"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
-"@nrwl/nx-win32-x64-msvc@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/nx-win32-x64-msvc@npm:15.9.5"
+"@nrwl/nx-win32-x64-msvc@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/nx-win32-x64-msvc@npm:15.9.6"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
-"@nrwl/tao@npm:15.9.5":
- version: 15.9.5
- resolution: "@nrwl/tao@npm:15.9.5"
+"@nrwl/tao@npm:15.9.6":
+ version: 15.9.6
+ resolution: "@nrwl/tao@npm:15.9.6"
dependencies:
- nx: 15.9.5
+ nx: 15.9.6
bin:
tao: index.js
- checksum: 6223829d3d447f4ec11f58a4484d2a4b41d45cc9abdea976005aafdf766b3d42871ab1068130459fcca4c4b0f48f97909066989223a4836a5aebcd72e16266d6
+ checksum: a100531e052de10d94e1040ffe0fb9459b83be1d6e30a9cdb9436f7c5d10a5e0e7889381d4fe1335fd6a76493666493bcc3d68aa65b1ef803da3880b54fce4f1
languageName: node
linkType: hard
@@ -4641,8 +4473,8 @@ __metadata:
linkType: hard
"@rjsf/core@npm:^5.1.0":
- version: 5.12.1
- resolution: "@rjsf/core@npm:5.12.1"
+ version: 5.13.0
+ resolution: "@rjsf/core@npm:5.13.0"
dependencies:
lodash: ^4.17.21
lodash-es: ^4.17.21
@@ -4650,15 +4482,15 @@ __metadata:
nanoid: ^3.3.6
prop-types: ^15.8.1
peerDependencies:
- "@rjsf/utils": ^5.8.x
+ "@rjsf/utils": ^5.12.x
react: ^16.14.0 || >=17
- checksum: 94497e4320773e83abae67902eb070834ea190b22602a09821375c7963133082654b5c79e486dffd7715714703a5786b4ab975d314f78c5c52e802a619eec53d
+ checksum: d7d66d20fcdf310f4b152c22e1ac1ca8abe5f40b502711c9cabc4241b3252ec0e58345aa194529d2bdfb7a51b9f1179c9ddefc0cdc7fd9f94ad10c5e5b1032b8
languageName: node
linkType: hard
"@rjsf/utils@npm:^5.1.0":
- version: 5.12.1
- resolution: "@rjsf/utils@npm:5.12.1"
+ version: 5.13.0
+ resolution: "@rjsf/utils@npm:5.13.0"
dependencies:
json-schema-merge-allof: ^0.8.1
jsonpointer: ^5.0.1
@@ -4667,7 +4499,7 @@ __metadata:
react-is: ^18.2.0
peerDependencies:
react: ^16.14.0 || >=17
- checksum: 7be971df803f1cef4cb6083e5393ac7f76a24e9c682e408f908630d015f22188255048cc1e158e6133d789692224d73911943edf813587f28a98a879c88f8c50
+ checksum: 283e2b405eac2f4fdd243b2e35ade7e83a4bf7551eb5e075499e8eb5d3a3ae161e9c047bcf63d2e6fef7c6b2e7438f1a150f353b909df992e85194940c311f9b
languageName: node
linkType: hard
@@ -4715,15 +4547,6 @@ __metadata:
languageName: node
linkType: hard
-"@sinonjs/commons@npm:^1.7.0":
- version: 1.8.6
- resolution: "@sinonjs/commons@npm:1.8.6"
- dependencies:
- type-detect: 4.0.8
- checksum: 7d3f8c1e85f30cd4e83594fc19b7a657f14d49eb8d95a30095631ce15e906c869e0eff96c5b93dffea7490c00418b07f54582ba49c6560feb2a8c34c0b16832d
- languageName: node
- linkType: hard
-
"@sinonjs/commons@npm:^3.0.0":
version: 3.0.0
resolution: "@sinonjs/commons@npm:3.0.0"
@@ -4742,22 +4565,6 @@ __metadata:
languageName: node
linkType: hard
-"@sinonjs/fake-timers@npm:^6.0.1":
- version: 6.0.1
- resolution: "@sinonjs/fake-timers@npm:6.0.1"
- dependencies:
- "@sinonjs/commons": ^1.7.0
- checksum: 8e331aa1412d905ecc8efd63550f58a6f77dcb510f878172004e53be63eb82650623618763001a918fc5e21257b86c45041e4e97c454ed6a2d187de084abbd11
- languageName: node
- linkType: hard
-
-"@tootallnate/once@npm:1":
- version: 1.1.2
- resolution: "@tootallnate/once@npm:1.1.2"
- checksum: e1fb1bbbc12089a0cb9433dc290f97bddd062deadb6178ce9bcb93bb7c1aecde5e60184bc7065aec42fe1663622a213493c48bbd4972d931aae48315f18e1be9
- languageName: node
- linkType: hard
-
"@tootallnate/once@npm:2":
version: 2.0.0
resolution: "@tootallnate/once@npm:2.0.0"
@@ -4782,7 +4589,7 @@ __metadata:
languageName: node
linkType: hard
-"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14, @types/babel__core@npm:^7.1.7":
+"@types/babel__core@npm:^7.1.14":
version: 7.20.1
resolution: "@types/babel__core@npm:7.20.1"
dependencies:
@@ -4814,7 +4621,7 @@ __metadata:
languageName: node
linkType: hard
-"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.4, @types/babel__traverse@npm:^7.0.6":
+"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6":
version: 7.20.1
resolution: "@types/babel__traverse@npm:7.20.1"
dependencies:
@@ -4866,7 +4673,7 @@ __metadata:
languageName: node
linkType: hard
-"@types/graceful-fs@npm:^4.1.2, @types/graceful-fs@npm:^4.1.3":
+"@types/graceful-fs@npm:^4.1.3":
version: 4.1.6
resolution: "@types/graceful-fs@npm:4.1.6"
dependencies:
@@ -4909,13 +4716,13 @@ __metadata:
languageName: node
linkType: hard
-"@types/jest@npm:^26.0.0":
- version: 26.0.24
- resolution: "@types/jest@npm:26.0.24"
+"@types/jest@npm:^29":
+ version: 29.5.4
+ resolution: "@types/jest@npm:29.5.4"
dependencies:
- jest-diff: ^26.0.0
- pretty-format: ^26.0.0
- checksum: ae39675412f08d884926254e9b12bfd2b5a4e4d204c94d3148cb942174a474930d0c60540133c968f22241d4712b7940c96cbc883096eb326a4d5b206fb78bd0
+ expect: ^29.0.0
+ pretty-format: ^29.0.0
+ checksum: 38ed5942f44336452efd0f071eab60aaa57cd8d46530348d0a3aa5a691dcbf1366c4ca8f6ee8364efb45b4413bfefae443e5d4f469246a472a03b21ac11cd4ed
languageName: node
linkType: hard
@@ -4982,9 +4789,9 @@ __metadata:
linkType: hard
"@types/node@npm:*":
- version: 20.5.3
- resolution: "@types/node@npm:20.5.3"
- checksum: fe67a0fd7402218bdf91523a2b1c2e41d619f7294b1a471e0a778b8bc7bb3fcf291aed12041bcbe9622d50a3d1295a9adea0e7e19bb9386a246bf66071404721
+ version: 20.6.0
+ resolution: "@types/node@npm:20.6.0"
+ checksum: 52611801af5cf151c6fac1963aa4a8a8ca2e388a9e9ed82b01b70bca762088ded5b32cc789c5564220d5d7dccba2b8dd34446a3d4fc74736805e1f2cf262e29d
languageName: node
linkType: hard
@@ -5002,13 +4809,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/prettier@npm:^2.0.0":
- version: 2.7.3
- resolution: "@types/prettier@npm:2.7.3"
- checksum: 705384209cea6d1433ff6c187c80dcc0b95d99d5c5ce21a46a9a58060c527973506822e428789d842761e0280d25e3359300f017fbe77b9755bc772ab3dc2f83
- languageName: node
- linkType: hard
-
"@types/prop-types@npm:*, @types/prop-types@npm:^15.0.0, @types/prop-types@npm:^15.7.5":
version: 15.7.5
resolution: "@types/prop-types@npm:15.7.5"
@@ -5094,9 +4894,9 @@ __metadata:
linkType: hard
"@types/unist@npm:^2, @types/unist@npm:^2.0.0":
- version: 2.0.7
- resolution: "@types/unist@npm:2.0.7"
- checksum: b97a219554e83431f19a93ff113306bf0512909292815e8f32964e47d041c505af1aaa2a381c23e137c4c0b962fad58d4ce9c5c3256642921a466be43c1fc715
+ version: 2.0.8
+ resolution: "@types/unist@npm:2.0.8"
+ checksum: f4852d10a6752dc70df363917ef74453e5d2fd42824c0f6d09d19d530618e1402193977b1207366af4415aaec81d4e262c64d00345402020c4ca179216e553c7
languageName: node
linkType: hard
@@ -5118,15 +4918,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/yargs@npm:^15.0.0":
- version: 15.0.15
- resolution: "@types/yargs@npm:15.0.15"
- dependencies:
- "@types/yargs-parser": "*"
- checksum: 3420f6bcc508a895ef91858f8e6de975c710e4498cf6ed293f1174d3f1ad56edb4ab8481219bf6190f64a3d4115fab1d13ab3edc90acd54fba7983144040e446
- languageName: node
- linkType: hard
-
"@types/yargs@npm:^17.0.8":
version: 17.0.24
resolution: "@types/yargs@npm:17.0.24"
@@ -5474,7 +5265,7 @@ __metadata:
languageName: node
linkType: hard
-"abab@npm:^2.0.3, abab@npm:^2.0.5, abab@npm:^2.0.6":
+"abab@npm:^2.0.3, abab@npm:^2.0.6":
version: 2.0.6
resolution: "abab@npm:2.0.6"
checksum: 6ffc1af4ff315066c62600123990d87551ceb0aafa01e6539da77b0f5987ac7019466780bf480f1787576d4385e3690c81ccc37cfda12819bf510b8ab47e5a3e
@@ -5530,16 +5321,6 @@ __metadata:
languageName: node
linkType: hard
-"acorn-globals@npm:^6.0.0":
- version: 6.0.0
- resolution: "acorn-globals@npm:6.0.0"
- dependencies:
- acorn: ^7.1.1
- acorn-walk: ^7.1.1
- checksum: 72d95e5b5e585f9acd019b993ab8bbba68bb3cbc9d9b5c1ebb3c2f1fe5981f11deababfb4949f48e6262f9c57878837f5958c0cca396f81023814680ca878042
- languageName: node
- linkType: hard
-
"acorn-globals@npm:^7.0.0":
version: 7.0.1
resolution: "acorn-globals@npm:7.0.1"
@@ -5568,13 +5349,6 @@ __metadata:
languageName: node
linkType: hard
-"acorn-walk@npm:^7.1.1":
- version: 7.2.0
- resolution: "acorn-walk@npm:7.2.0"
- checksum: 9252158a79b9d92f1bc0dd6acc0fcfb87a67339e84bcc301bb33d6078936d27e35d606b4d35626d2962cd43c256d6f27717e70cbe15c04fff999ab0b2260b21f
- languageName: node
- linkType: hard
-
"acorn-walk@npm:^8.0.2":
version: 8.2.0
resolution: "acorn-walk@npm:8.2.0"
@@ -5582,7 +5356,7 @@ __metadata:
languageName: node
linkType: hard
-"acorn@npm:^7.1.1, acorn@npm:^7.4.0":
+"acorn@npm:^7.4.0":
version: 7.4.1
resolution: "acorn@npm:7.4.1"
bin:
@@ -5591,7 +5365,7 @@ __metadata:
languageName: node
linkType: hard
-"acorn@npm:^8.1.0, acorn@npm:^8.2.4, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2":
+"acorn@npm:^8.1.0, acorn@npm:^8.7.1, acorn@npm:^8.8.1, acorn@npm:^8.8.2":
version: 8.10.0
resolution: "acorn@npm:8.10.0"
bin:
@@ -5709,7 +5483,7 @@ __metadata:
languageName: node
linkType: hard
-"ansi-regex@npm:^5.0.0, ansi-regex@npm:^5.0.1":
+"ansi-regex@npm:^5.0.1":
version: 5.0.1
resolution: "ansi-regex@npm:5.0.1"
checksum: 2aa4bb54caf2d622f1afdad09441695af2a83aa3fe8b8afa581d205e57ed4261c183c4d3877cee25794443fde5876417d859c108078ab788d6af7e4fe52eb66b
@@ -5755,16 +5529,6 @@ __metadata:
languageName: node
linkType: hard
-"anymatch@npm:^2.0.0":
- version: 2.0.0
- resolution: "anymatch@npm:2.0.0"
- dependencies:
- micromatch: ^3.1.4
- normalize-path: ^2.1.1
- checksum: f7bb1929842b4585cdc28edbb385767d499ce7d673f96a8f11348d2b2904592ffffc594fe9229b9a1e9e4dccb9329b7692f9f45e6a11dcefbb76ecdc9ab740f6
- languageName: node
- linkType: hard
-
"anymatch@npm:^3.0.3":
version: 3.1.3
resolution: "anymatch@npm:3.1.3"
@@ -5818,27 +5582,6 @@ __metadata:
languageName: node
linkType: hard
-"arr-diff@npm:^4.0.0":
- version: 4.0.0
- resolution: "arr-diff@npm:4.0.0"
- checksum: ea7c8834842ad3869297f7915689bef3494fd5b102ac678c13ffccab672d3d1f35802b79e90c4cfec2f424af3392e44112d1ccf65da34562ed75e049597276a0
- languageName: node
- linkType: hard
-
-"arr-flatten@npm:^1.1.0":
- version: 1.1.0
- resolution: "arr-flatten@npm:1.1.0"
- checksum: 963fe12564fca2f72c055f3f6c206b9e031f7c433a0c66ca9858b484821f248c5b1e5d53c8e4989d80d764cd776cf6d9b160ad05f47bdc63022bfd63b5455e22
- languageName: node
- linkType: hard
-
-"arr-union@npm:^3.1.0":
- version: 3.1.0
- resolution: "arr-union@npm:3.1.0"
- checksum: b5b0408c6eb7591143c394f3be082fee690ddd21f0fdde0a0a01106799e847f67fcae1b7e56b0a0c173290e29c6aca9562e82b300708a268bc8f88f3d6613cb9
- languageName: node
- linkType: hard
-
"array-buffer-byte-length@npm:^1.0.0":
version: 1.0.0
resolution: "array-buffer-byte-length@npm:1.0.0"
@@ -5870,24 +5613,18 @@ __metadata:
languageName: node
linkType: hard
-"array-unique@npm:^0.3.2":
- version: 0.3.2
- resolution: "array-unique@npm:0.3.2"
- checksum: da344b89cfa6b0a5c221f965c21638bfb76b57b45184a01135382186924f55973cd9b171d4dad6bf606c6d9d36b0d721d091afdc9791535ead97ccbe78f8a888
- languageName: node
- linkType: hard
-
"arraybuffer.prototype.slice@npm:^1.0.1":
- version: 1.0.1
- resolution: "arraybuffer.prototype.slice@npm:1.0.1"
+ version: 1.0.2
+ resolution: "arraybuffer.prototype.slice@npm:1.0.2"
dependencies:
array-buffer-byte-length: ^1.0.0
call-bind: ^1.0.2
define-properties: ^1.2.0
+ es-abstract: ^1.22.1
get-intrinsic: ^1.2.1
is-array-buffer: ^3.0.2
is-shared-array-buffer: ^1.0.2
- checksum: e3e9b2a3e988ebfeddce4c7e8f69df730c9e48cb04b0d40ff0874ce3d86b3d1339dd520ffde5e39c02610bc172ecfbd4bc93324b1cabd9554c44a56b131ce0ce
+ checksum: c200faf437786f5b2c80d4564ff5481c886a16dee642ef02abdc7306c7edd523d1f01d1dd12b769c7eb42ac9bc53874510db19a92a2c035c0f6696172aafa5d3
languageName: node
linkType: hard
@@ -5905,13 +5642,6 @@ __metadata:
languageName: node
linkType: hard
-"assign-symbols@npm:^1.0.0":
- version: 1.0.0
- resolution: "assign-symbols@npm:1.0.0"
- checksum: c0eb895911d05b6b2d245154f70461c5e42c107457972e5ebba38d48967870dee53bcdf6c7047990586daa80fab8dab3cc6300800fbd47b454247fdedd859a2c
- languageName: node
- linkType: hard
-
"astral-regex@npm:^2.0.0":
version: 2.0.0
resolution: "astral-regex@npm:2.0.0"
@@ -5947,15 +5677,6 @@ __metadata:
languageName: node
linkType: hard
-"atob@npm:^2.1.2":
- version: 2.1.2
- resolution: "atob@npm:2.1.2"
- bin:
- atob: bin/atob.js
- checksum: dfeeeb70090c5ebea7be4b9f787f866686c645d9f39a0d184c817252d0cf08455ed25267d79c03254d3be1f03ac399992a792edcd5ffb9c91e097ab5ef42833a
- languageName: node
- linkType: hard
-
"available-typed-arrays@npm:^1.0.5":
version: 1.0.5
resolution: "available-typed-arrays@npm:1.0.5"
@@ -5964,39 +5685,21 @@ __metadata:
linkType: hard
"axios@npm:^1.0.0":
- version: 1.4.0
- resolution: "axios@npm:1.4.0"
+ version: 1.5.0
+ resolution: "axios@npm:1.5.0"
dependencies:
follow-redirects: ^1.15.0
form-data: ^4.0.0
proxy-from-env: ^1.1.0
- checksum: 7fb6a4313bae7f45e89d62c70a800913c303df653f19eafec88e56cea2e3821066b8409bc68be1930ecca80e861c52aa787659df0ffec6ad4d451c7816b9386b
- languageName: node
- linkType: hard
-
-"babel-jest@npm:^26.6.3":
- version: 26.6.3
- resolution: "babel-jest@npm:26.6.3"
- dependencies:
- "@jest/transform": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/babel__core": ^7.1.7
- babel-plugin-istanbul: ^6.0.0
- babel-preset-jest: ^26.6.2
- chalk: ^4.0.0
- graceful-fs: ^4.2.4
- slash: ^3.0.0
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 5917233f0d381e719e195b69b81e46da90293432d10288d79f8f59b8f3f9ac030e14701f3d9f90893fb739481df1d132446f1b983d841e65e2623775db100897
+ checksum: e7405a5dbbea97760d0e6cd58fecba311b0401ddb4a8efbc4108f5537da9b3f278bde566deb777935a960beec4fa18e7b8353881f2f465e4f2c0e949fead35be
languageName: node
linkType: hard
-"babel-jest@npm:^29.6.3":
- version: 29.6.3
- resolution: "babel-jest@npm:29.6.3"
+"babel-jest@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "babel-jest@npm:29.6.4"
dependencies:
- "@jest/transform": ^29.6.3
+ "@jest/transform": ^29.6.4
"@types/babel__core": ^7.1.14
babel-plugin-istanbul: ^6.1.1
babel-preset-jest: ^29.6.3
@@ -6005,11 +5708,11 @@ __metadata:
slash: ^3.0.0
peerDependencies:
"@babel/core": ^7.8.0
- checksum: 8b4b85d829d8ee010f0c8381cb9d67842da905c32183c1fc6e1e8833447a79b969f8279759d44197bb77001239dc41a49fff0e8222d8e8577f47a8d0428d178e
+ checksum: c574f1805ab6b51a7d0f5a028aad19eec4634be81e66e6f4631b79b34d8ea05dfb53629f3686c77345163872730aa0408c9e5937ed85f846984228f7ab5e5d96
languageName: node
linkType: hard
-"babel-plugin-istanbul@npm:^6.0.0, babel-plugin-istanbul@npm:^6.1.1":
+"babel-plugin-istanbul@npm:^6.1.1":
version: 6.1.1
resolution: "babel-plugin-istanbul@npm:6.1.1"
dependencies:
@@ -6022,18 +5725,6 @@ __metadata:
languageName: node
linkType: hard
-"babel-plugin-jest-hoist@npm:^26.6.2":
- version: 26.6.2
- resolution: "babel-plugin-jest-hoist@npm:26.6.2"
- dependencies:
- "@babel/template": ^7.3.3
- "@babel/types": ^7.3.3
- "@types/babel__core": ^7.0.0
- "@types/babel__traverse": ^7.0.6
- checksum: abe3732fdf20f96e91cbf788a54d776b30bd7a6054cb002a744d7071c656813e26e77a780dc2a6f6b197472897e220836cd907bda3fadb9d0481126bfd6c3783
- languageName: node
- linkType: hard
-
"babel-plugin-jest-hoist@npm:^29.6.3":
version: 29.6.3
resolution: "babel-plugin-jest-hoist@npm:29.6.3"
@@ -6115,18 +5806,6 @@ __metadata:
languageName: node
linkType: hard
-"babel-preset-jest@npm:^26.6.2":
- version: 26.6.2
- resolution: "babel-preset-jest@npm:26.6.2"
- dependencies:
- babel-plugin-jest-hoist: ^26.6.2
- babel-preset-current-node-syntax: ^1.0.0
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 1d9bef3a7ac6751a09d29ceb84be8b1998abd210fafa12223689c744db4f2a63ab90cba7986a71f3154d9aceda9dbeca563178731d21cbaf793b4096ed3a4d01
- languageName: node
- linkType: hard
-
"babel-preset-jest@npm:^29.6.3":
version: 29.6.3
resolution: "babel-preset-jest@npm:29.6.3"
@@ -6167,21 +5846,6 @@ __metadata:
languageName: node
linkType: hard
-"base@npm:^0.11.1":
- version: 0.11.2
- resolution: "base@npm:0.11.2"
- dependencies:
- cache-base: ^1.0.1
- class-utils: ^0.3.5
- component-emitter: ^1.2.1
- define-property: ^1.0.0
- isobject: ^3.0.1
- mixin-deep: ^1.2.0
- pascalcase: ^0.1.1
- checksum: a4a146b912e27eea8f66d09cb0c9eab666f32ce27859a7dfd50f38cd069a2557b39f16dba1bc2aecb3b44bf096738dd207b7970d99b0318423285ab1b1994edd
- languageName: node
- linkType: hard
-
"before-after-hook@npm:^2.2.0":
version: 2.2.3
resolution: "before-after-hook@npm:2.2.3"
@@ -6238,24 +5902,6 @@ __metadata:
languageName: node
linkType: hard
-"braces@npm:^2.3.1":
- version: 2.3.2
- resolution: "braces@npm:2.3.2"
- dependencies:
- arr-flatten: ^1.1.0
- array-unique: ^0.3.2
- extend-shallow: ^2.0.1
- fill-range: ^4.0.0
- isobject: ^3.0.1
- repeat-element: ^1.1.2
- snapdragon: ^0.8.1
- snapdragon-node: ^2.0.1
- split-string: ^3.0.2
- to-regex: ^3.0.1
- checksum: e30dcb6aaf4a31c8df17d848aa283a65699782f75ad61ae93ec25c9729c66cf58e66f0000a9fec84e4add1135bb7da40f7cb9601b36bebcfa9ca58e8d5c07de0
- languageName: node
- linkType: hard
-
"braces@npm:^3.0.2":
version: 3.0.2
resolution: "braces@npm:3.0.2"
@@ -6265,13 +5911,6 @@ __metadata:
languageName: node
linkType: hard
-"browser-process-hrtime@npm:^1.0.0":
- version: 1.0.0
- resolution: "browser-process-hrtime@npm:1.0.0"
- checksum: e30f868cdb770b1201afb714ad1575dd86366b6e861900884665fb627109b3cc757c40067d3bfee1ff2a29c835257ea30725a8018a9afd02ac1c24b408b1e45f
- languageName: node
- linkType: hard
-
"browserslist@npm:^4.14.5, browserslist@npm:^4.21.10, browserslist@npm:^4.21.9":
version: 4.21.10
resolution: "browserslist@npm:4.21.10"
@@ -6304,7 +5943,7 @@ __metadata:
languageName: node
linkType: hard
-"buffer-from@npm:1.x, buffer-from@npm:^1.0.0":
+"buffer-from@npm:^1.0.0":
version: 1.1.2
resolution: "buffer-from@npm:1.1.2"
checksum: 0448524a562b37d4d7ed9efd91685a5b77a50672c556ea254ac9a6d30e3403a517d8981f10e565db24e8339413b43c97ca2951f10e399c6125a0d8911f5679bb
@@ -6400,23 +6039,6 @@ __metadata:
languageName: node
linkType: hard
-"cache-base@npm:^1.0.1":
- version: 1.0.1
- resolution: "cache-base@npm:1.0.1"
- dependencies:
- collection-visit: ^1.0.0
- component-emitter: ^1.2.1
- get-value: ^2.0.6
- has-value: ^1.0.0
- isobject: ^3.0.1
- set-value: ^2.0.0
- to-object-path: ^0.3.0
- union-value: ^1.0.0
- unset-value: ^1.0.0
- checksum: 9114b8654fe2366eedc390bad0bcf534e2f01b239a888894e2928cb58cdc1e6ea23a73c6f3450dcfd2058aa73a8a981e723cd1e7c670c047bf11afdc65880107
- languageName: node
- linkType: hard
-
"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2":
version: 1.0.2
resolution: "call-bind@npm:1.0.2"
@@ -6445,14 +6067,14 @@ __metadata:
languageName: node
linkType: hard
-"camelcase@npm:^5.0.0, camelcase@npm:^5.3.1":
+"camelcase@npm:^5.3.1":
version: 5.3.1
resolution: "camelcase@npm:5.3.1"
checksum: e6effce26b9404e3c0f301498184f243811c30dfe6d0b9051863bd8e4034d09c8c2923794f280d6827e5aa055f6c434115ff97864a16a963366fb35fd673024b
languageName: node
linkType: hard
-"camelcase@npm:^6.0.0, camelcase@npm:^6.2.0":
+"camelcase@npm:^6.2.0":
version: 6.3.0
resolution: "camelcase@npm:6.3.0"
checksum: 8c96818a9076434998511251dcb2761a94817ea17dbdc37f47ac080bd088fc62c7369429a19e2178b993497132c8cbcf5cc1f44ba963e76782ba469c0474938d
@@ -6460,18 +6082,9 @@ __metadata:
linkType: hard
"caniuse-lite@npm:^1.0.30001517":
- version: 1.0.30001522
- resolution: "caniuse-lite@npm:1.0.30001522"
- checksum: 56e3551c02ae595085114073cf242f7d9d54d32255c80893ca9098a44f44fc6eef353936f234f31c7f4cb894dd2b6c9c4626e30649ee29e04d70aa127eeefeb0
- languageName: node
- linkType: hard
-
-"capture-exit@npm:^2.0.0":
- version: 2.0.0
- resolution: "capture-exit@npm:2.0.0"
- dependencies:
- rsvp: ^4.8.4
- checksum: 0b9f10daca09e521da9599f34c8e7af14ad879c336e2bdeb19955b375398ae1c5bcc91ac9f2429944343057ee9ed028b1b2fb28816c384e0e55d70c439b226f4
+ version: 1.0.30001532
+ resolution: "caniuse-lite@npm:1.0.30001532"
+ checksum: 613abeb15e03dde307d543195a7860f7ba7450c9c9262d45642b2c8fbe097914fa060d68c8647f9d443947b1f62b09d891858bde7d2cac94fae8133a0b518b28
languageName: node
linkType: hard
@@ -6583,13 +6196,6 @@ __metadata:
languageName: node
linkType: hard
-"cjs-module-lexer@npm:^0.6.0":
- version: 0.6.0
- resolution: "cjs-module-lexer@npm:0.6.0"
- checksum: 445b039607efd74561d7db8d0867031c8b6a69f25e83fdd861b0fa1fbc11f12de057ba1db80637f3c9016774354092af5325eebb90505d65ccc5389cae09d1fd
- languageName: node
- linkType: hard
-
"cjs-module-lexer@npm:^1.0.0":
version: 1.2.3
resolution: "cjs-module-lexer@npm:1.2.3"
@@ -6597,18 +6203,6 @@ __metadata:
languageName: node
linkType: hard
-"class-utils@npm:^0.3.5":
- version: 0.3.6
- resolution: "class-utils@npm:0.3.6"
- dependencies:
- arr-union: ^3.1.0
- define-property: ^0.2.5
- isobject: ^3.0.0
- static-extend: ^0.1.1
- checksum: be108900801e639e50f96a7e4bfa8867c753a7750a7603879f3981f8b0a89cba657497a2d5f40cd4ea557ff15d535a100818bb486baf6e26fe5d7872e75f1078
- languageName: node
- linkType: hard
-
"classnames@npm:^2.2":
version: 2.3.2
resolution: "classnames@npm:2.3.2"
@@ -6653,17 +6247,6 @@ __metadata:
languageName: node
linkType: hard
-"cliui@npm:^6.0.0":
- version: 6.0.0
- resolution: "cliui@npm:6.0.0"
- dependencies:
- string-width: ^4.2.0
- strip-ansi: ^6.0.0
- wrap-ansi: ^6.2.0
- checksum: 4fcfd26d292c9f00238117f39fc797608292ae36bac2168cfee4c85923817d0607fe21b3329a8621e01aedf512c99b7eaa60e363a671ffd378df6649fb48ae42
- languageName: node
- linkType: hard
-
"cliui@npm:^7.0.2":
version: 7.0.4
resolution: "cliui@npm:7.0.4"
@@ -6741,16 +6324,6 @@ __metadata:
languageName: node
linkType: hard
-"collection-visit@npm:^1.0.0":
- version: 1.0.0
- resolution: "collection-visit@npm:1.0.0"
- dependencies:
- map-visit: ^1.0.0
- object-visit: ^1.0.0
- checksum: 15d9658fe6eb23594728346adad5433b86bb7a04fd51bbab337755158722f9313a5376ef479de5b35fbc54140764d0d39de89c339f5d25b959ed221466981da9
- languageName: node
- linkType: hard
-
"color-convert@npm:^1.9.0":
version: 1.9.3
resolution: "color-convert@npm:1.9.3"
@@ -6884,13 +6457,6 @@ __metadata:
languageName: node
linkType: hard
-"component-emitter@npm:^1.2.1":
- version: 1.3.0
- resolution: "component-emitter@npm:1.3.0"
- checksum: b3c46de38ffd35c57d1c02488355be9f218e582aec72d72d1b8bbec95a3ac1b38c96cd6e03ff015577e68f550fbb361a3bfdbd9bb248be9390b7b3745691be6b
- languageName: node
- linkType: hard
-
"compute-gcd@npm:^1.2.1":
version: 1.2.1
resolution: "compute-gcd@npm:1.2.1"
@@ -7052,7 +6618,7 @@ __metadata:
languageName: node
linkType: hard
-"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.5.0, convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0":
+"convert-source-map@npm:^1.5.0, convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0":
version: 1.9.0
resolution: "convert-source-map@npm:1.9.0"
checksum: dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8
@@ -7066,26 +6632,19 @@ __metadata:
languageName: node
linkType: hard
-"copy-descriptor@npm:^0.1.0":
- version: 0.1.1
- resolution: "copy-descriptor@npm:0.1.1"
- checksum: d4b7b57b14f1d256bb9aa0b479241048afd7f5bcf22035fc7b94e8af757adeae247ea23c1a774fe44869fd5694efba4a969b88d966766c5245fdee59837fe45b
- languageName: node
- linkType: hard
-
"core-js-compat@npm:^3.31.0":
- version: 3.32.1
- resolution: "core-js-compat@npm:3.32.1"
+ version: 3.32.2
+ resolution: "core-js-compat@npm:3.32.2"
dependencies:
browserslist: ^4.21.10
- checksum: 2ce0002d6d2acabfc6f4c1ea32915683406a10051a186db354b761303cb6f5728f83887d070fb8d0072b5601bb16cb0d24555ee72bfa6df244f7b3ef74d61f76
+ checksum: efca146ad71a542e6f196db5ba5aed617e48c615bdf1fbb065471b3267f833ac545bd5fc5ad0642c3d3974b955f0684ff0863d7471d7050ee0284e0a1313942e
languageName: node
linkType: hard
"core-js-pure@npm:^3.6.5":
- version: 3.32.1
- resolution: "core-js-pure@npm:3.32.1"
- checksum: 06d3b1585b1f161e84adaf6a0f1db2434309b8d6c748ee82f1806c5d9755272a30074dfa888d60a164c639c6820588ab8462f1073c6971e76659f13788c2f10d
+ version: 3.32.2
+ resolution: "core-js-pure@npm:3.32.2"
+ checksum: 19e781c624aee4003f8980f3c4fc441c16ef671473151affe114dc37cfe18958acdb42241b14827f62277f2d6eea73658f6c2e09131be20619e2859426bd03b4
languageName: node
linkType: hard
@@ -7129,7 +6688,7 @@ __metadata:
languageName: node
linkType: hard
-"cross-spawn@npm:^6.0.0, cross-spawn@npm:^6.0.5":
+"cross-spawn@npm:^6.0.5":
version: 6.0.5
resolution: "cross-spawn@npm:6.0.5"
dependencies:
@@ -7194,13 +6753,6 @@ __metadata:
languageName: node
linkType: hard
-"cssom@npm:^0.4.4":
- version: 0.4.4
- resolution: "cssom@npm:0.4.4"
- checksum: e3bc1076e7ee4213d4fef05e7ae03bfa83dc05f32611d8edc341f4ecc3d9647b89c8245474c7dd2cdcdb797a27c462e99da7ad00a34399694559f763478ff53f
- languageName: node
- linkType: hard
-
"cssom@npm:^0.5.0":
version: 0.5.0
resolution: "cssom@npm:0.5.0"
@@ -7286,15 +6838,6 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:^2.2.0, debug@npm:^2.3.3":
- version: 2.6.9
- resolution: "debug@npm:2.6.9"
- dependencies:
- ms: 2.0.0
- checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6
- languageName: node
- linkType: hard
-
"decamelize-keys@npm:^1.1.0":
version: 1.1.1
resolution: "decamelize-keys@npm:1.1.1"
@@ -7312,7 +6855,7 @@ __metadata:
languageName: node
linkType: hard
-"decimal.js@npm:^10.2.1, decimal.js@npm:^10.4.2":
+"decimal.js@npm:^10.4.2":
version: 10.4.3
resolution: "decimal.js@npm:10.4.3"
checksum: 796404dcfa9d1dbfdc48870229d57f788b48c21c603c3f6554a1c17c10195fc1024de338b0cf9e1efe0c7c167eeb18f04548979bcc5fdfabebb7cc0ae3287bae
@@ -7328,13 +6871,6 @@ __metadata:
languageName: node
linkType: hard
-"decode-uri-component@npm:^0.2.0":
- version: 0.2.2
- resolution: "decode-uri-component@npm:0.2.2"
- checksum: 95476a7d28f267292ce745eac3524a9079058bbb35767b76e3ee87d42e34cd0275d2eb19d9d08c3e167f97556e8a2872747f5e65cbebcac8b0c98d83e285f139
- languageName: node
- linkType: hard
-
"dedent@npm:0.7.0, dedent@npm:^0.7.0":
version: 0.7.0
resolution: "dedent@npm:0.7.0"
@@ -7418,34 +6954,6 @@ __metadata:
languageName: node
linkType: hard
-"define-property@npm:^0.2.5":
- version: 0.2.5
- resolution: "define-property@npm:0.2.5"
- dependencies:
- is-descriptor: ^0.1.0
- checksum: 85af107072b04973b13f9e4128ab74ddfda48ec7ad2e54b193c0ffb57067c4ce5b7786a7b4ae1f24bd03e87c5d18766b094571810b314d7540f86d4354dbd394
- languageName: node
- linkType: hard
-
-"define-property@npm:^1.0.0":
- version: 1.0.0
- resolution: "define-property@npm:1.0.0"
- dependencies:
- is-descriptor: ^1.0.0
- checksum: 5fbed11dace44dd22914035ba9ae83ad06008532ca814d7936a53a09e897838acdad5b108dd0688cc8d2a7cf0681acbe00ee4136cf36743f680d10517379350a
- languageName: node
- linkType: hard
-
-"define-property@npm:^2.0.2":
- version: 2.0.2
- resolution: "define-property@npm:2.0.2"
- dependencies:
- is-descriptor: ^1.0.2
- isobject: ^3.0.1
- checksum: 3217ed53fc9eed06ba8da6f4d33e28c68a82e2f2a8ab4d562c4920d8169a166fe7271453675e6c69301466f36a65d7f47edf0cf7f474b9aa52a5ead9c1b13c99
- languageName: node
- linkType: hard
-
"del@npm:^6.0.0":
version: 6.1.1
resolution: "del@npm:6.1.1"
@@ -7504,13 +7012,6 @@ __metadata:
languageName: node
linkType: hard
-"diff-sequences@npm:^26.6.2":
- version: 26.6.2
- resolution: "diff-sequences@npm:26.6.2"
- checksum: 79af871776ef149a7ff3345d6b1bf37fe6e81f68632aa5542787851f6f60fba19b0be22fdd1e06046f56ae7382763ccfe94a982c39ee72bd107aef435ecbc0cf
- languageName: node
- linkType: hard
-
"diff-sequences@npm:^29.6.3":
version: 29.6.3
resolution: "diff-sequences@npm:29.6.3"
@@ -7587,15 +7088,6 @@ __metadata:
languageName: node
linkType: hard
-"domexception@npm:^2.0.1":
- version: 2.0.1
- resolution: "domexception@npm:2.0.1"
- dependencies:
- webidl-conversions: ^5.0.0
- checksum: d638e9cb05c52999f1b2eb87c374b03311ea5b1d69c2f875bc92da73e17db60c12142b45c950228642ff7f845c536b65305483350d080df59003a653da80b691
- languageName: node
- linkType: hard
-
"domexception@npm:^4.0.0":
version: 4.0.0
resolution: "domexception@npm:4.0.0"
@@ -7688,9 +7180,9 @@ __metadata:
linkType: hard
"electron-to-chromium@npm:^1.4.477":
- version: 1.4.499
- resolution: "electron-to-chromium@npm:1.4.499"
- checksum: 9002f3bcd9018f38b3496c2ced5393c6144d3a09bc5e1ea9866541045f6364841a6d11afe8c5977838835bc70f50f8caee63ba928a910e68ac1eed45afd18120
+ version: 1.4.513
+ resolution: "electron-to-chromium@npm:1.4.513"
+ checksum: 613b66da177dcf5abca2441c502cde4b4fb247665dc049c54d1fe3b79fc3a5a3ecae92faf97d3147af0fec9c50bf90db09e8ca3f0953a5ec2fdb472d6d6253c2
languageName: node
linkType: hard
@@ -7701,13 +7193,6 @@ __metadata:
languageName: node
linkType: hard
-"emittery@npm:^0.7.1":
- version: 0.7.2
- resolution: "emittery@npm:0.7.2"
- checksum: 908cd933d48a9bcb58ddf39e9a7d4ba1e049de392ccbef010102539a636e03cea2b28218331b7ede41de8165d9ed7f148851c5112ebd2e943117c0f61eff5f10
- languageName: node
- linkType: hard
-
"emoji-regex@npm:^8.0.0":
version: 8.0.0
resolution: "emoji-regex@npm:8.0.0"
@@ -7750,7 +7235,7 @@ __metadata:
languageName: node
linkType: hard
-"end-of-stream@npm:^1.1.0, end-of-stream@npm:^1.4.1":
+"end-of-stream@npm:^1.4.1":
version: 1.4.4
resolution: "end-of-stream@npm:1.4.4"
dependencies:
@@ -7845,7 +7330,7 @@ __metadata:
languageName: node
linkType: hard
-"es-abstract@npm:^1.19.0, es-abstract@npm:^1.20.4":
+"es-abstract@npm:^1.22.1":
version: 1.22.1
resolution: "es-abstract@npm:1.22.1"
dependencies:
@@ -8170,13 +7655,6 @@ __metadata:
languageName: node
linkType: hard
-"exec-sh@npm:^0.3.2":
- version: 0.3.6
- resolution: "exec-sh@npm:0.3.6"
- checksum: 0be4f06929c8e4834ea4812f29fe59e2dfcc1bc3fc4b4bb71acb38a500c3b394628a05ef7ba432520bc6c5ec4fadab00cc9c513c4ff6a32104965af302e998e0
- languageName: node
- linkType: hard
-
"execa@npm:5.0.0":
version: 5.0.0
resolution: "execa@npm:5.0.0"
@@ -8194,38 +7672,6 @@ __metadata:
languageName: node
linkType: hard
-"execa@npm:^1.0.0":
- version: 1.0.0
- resolution: "execa@npm:1.0.0"
- dependencies:
- cross-spawn: ^6.0.0
- get-stream: ^4.0.0
- is-stream: ^1.1.0
- npm-run-path: ^2.0.0
- p-finally: ^1.0.0
- signal-exit: ^3.0.0
- strip-eof: ^1.0.0
- checksum: ddf1342c1c7d02dd93b41364cd847640f6163350d9439071abf70bf4ceb1b9b2b2e37f54babb1d8dc1df8e0d8def32d0e81e74a2e62c3e1d70c303eb4c306bc4
- languageName: node
- linkType: hard
-
-"execa@npm:^4.0.0":
- version: 4.1.0
- resolution: "execa@npm:4.1.0"
- dependencies:
- cross-spawn: ^7.0.0
- get-stream: ^5.0.0
- human-signals: ^1.1.1
- is-stream: ^2.0.0
- merge-stream: ^2.0.0
- npm-run-path: ^4.0.0
- onetime: ^5.1.0
- signal-exit: ^3.0.2
- strip-final-newline: ^2.0.0
- checksum: e30d298934d9c52f90f3847704fd8224e849a081ab2b517bbc02f5f7732c24e56a21f14cb96a08256deffeb2d12b2b7cb7e2b014a12fb36f8d3357e06417ed55
- languageName: node
- linkType: hard
-
"execa@npm:^5.0.0":
version: 5.1.1
resolution: "execa@npm:5.1.1"
@@ -8250,45 +7696,16 @@ __metadata:
languageName: node
linkType: hard
-"expand-brackets@npm:^2.1.4":
- version: 2.1.4
- resolution: "expand-brackets@npm:2.1.4"
- dependencies:
- debug: ^2.3.3
- define-property: ^0.2.5
- extend-shallow: ^2.0.1
- posix-character-classes: ^0.1.0
- regex-not: ^1.0.0
- snapdragon: ^0.8.1
- to-regex: ^3.0.1
- checksum: 1781d422e7edfa20009e2abda673cadb040a6037f0bd30fcd7357304f4f0c284afd420d7622722ca4a016f39b6d091841ab57b401c1f7e2e5131ac65b9f14fa1
- languageName: node
- linkType: hard
-
-"expect@npm:^26.6.2":
- version: 26.6.2
- resolution: "expect@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- ansi-styles: ^4.0.0
- jest-get-type: ^26.3.0
- jest-matcher-utils: ^26.6.2
- jest-message-util: ^26.6.2
- jest-regex-util: ^26.0.0
- checksum: 79a9b888c5c6d37d11f2cb76def6cf1dc8ff098d38662ee20c9f2ee0da67e9a93435f2327854b2e7554732153870621843e7f83e8cefb1250447ee2bc39883a4
- languageName: node
- linkType: hard
-
-"expect@npm:^29.6.3":
- version: 29.6.3
- resolution: "expect@npm:29.6.3"
+"expect@npm:^29.0.0, expect@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "expect@npm:29.6.4"
dependencies:
- "@jest/expect-utils": ^29.6.3
+ "@jest/expect-utils": ^29.6.4
jest-get-type: ^29.6.3
- jest-matcher-utils: ^29.6.3
+ jest-matcher-utils: ^29.6.4
jest-message-util: ^29.6.3
jest-util: ^29.6.3
- checksum: c72de87abbc9acc17c66f42fcac8be4dff256f871f1800c3aaa004c74f95f61866cf80e8f2ddacc3f2df290fd58b0cba8adb3a0dee3a09dd5d39f97f63d2aae8
+ checksum: 019b187d665562e4948b239e011a8791363e916f3076a229298d625e67fdadb06e8c2748798c49b4cf418ea223673eadd1de06537e08ba3c055c6f0efefc2306
languageName: node
linkType: hard
@@ -8299,25 +7716,6 @@ __metadata:
languageName: node
linkType: hard
-"extend-shallow@npm:^2.0.1":
- version: 2.0.1
- resolution: "extend-shallow@npm:2.0.1"
- dependencies:
- is-extendable: ^0.1.0
- checksum: 8fb58d9d7a511f4baf78d383e637bd7d2e80843bd9cd0853649108ea835208fb614da502a553acc30208e1325240bb7cc4a68473021612496bb89725483656d8
- languageName: node
- linkType: hard
-
-"extend-shallow@npm:^3.0.0, extend-shallow@npm:^3.0.2":
- version: 3.0.2
- resolution: "extend-shallow@npm:3.0.2"
- dependencies:
- assign-symbols: ^1.0.0
- is-extendable: ^1.0.1
- checksum: a920b0cd5838a9995ace31dfd11ab5e79bf6e295aa566910ce53dff19f4b1c0fda2ef21f26b28586c7a2450ca2b42d97bd8c0f5cec9351a819222bf861e02461
- languageName: node
- linkType: hard
-
"extend@npm:^3.0.0":
version: 3.0.2
resolution: "extend@npm:3.0.2"
@@ -8336,22 +7734,6 @@ __metadata:
languageName: node
linkType: hard
-"extglob@npm:^2.0.4":
- version: 2.0.4
- resolution: "extglob@npm:2.0.4"
- dependencies:
- array-unique: ^0.3.2
- define-property: ^1.0.0
- expand-brackets: ^2.1.4
- extend-shallow: ^2.0.1
- fragment-cache: ^0.2.1
- regex-not: ^1.0.0
- snapdragon: ^0.8.1
- to-regex: ^3.0.1
- checksum: a41531b8934735b684cef5e8c5a01d0f298d7d384500ceca38793a9ce098125aab04ee73e2d75d5b2901bc5dddd2b64e1b5e3bf19139ea48bac52af4a92f1d00
- languageName: node
- linkType: hard
-
"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3":
version: 3.1.3
resolution: "fast-deep-equal@npm:3.1.3"
@@ -8474,18 +7856,6 @@ __metadata:
languageName: node
linkType: hard
-"fill-range@npm:^4.0.0":
- version: 4.0.0
- resolution: "fill-range@npm:4.0.0"
- dependencies:
- extend-shallow: ^2.0.1
- is-number: ^3.0.0
- repeat-string: ^1.6.1
- to-regex-range: ^2.1.0
- checksum: dbb5102467786ab42bc7a3ec7380ae5d6bfd1b5177b2216de89e4a541193f8ba599a6db84651bd2c58c8921db41b8cc3d699ea83b477342d3ce404020f73c298
- languageName: node
- linkType: hard
-
"fill-range@npm:^7.0.1":
version: 7.0.1
resolution: "fill-range@npm:7.0.1"
@@ -8532,12 +7902,13 @@ __metadata:
linkType: hard
"flat-cache@npm:^3.0.4":
- version: 3.0.4
- resolution: "flat-cache@npm:3.0.4"
+ version: 3.1.0
+ resolution: "flat-cache@npm:3.1.0"
dependencies:
- flatted: ^3.1.0
+ flatted: ^3.2.7
+ keyv: ^4.5.3
rimraf: ^3.0.2
- checksum: 4fdd10ecbcbf7d520f9040dd1340eb5dfe951e6f0ecf2252edeec03ee68d989ec8b9a20f4434270e71bcfd57800dc09b3344fca3966b2eb8f613072c7d9a2365
+ checksum: 99312601d5b90f44aef403f17f056dc09be7e437703740b166cdc9386d99e681f74e6b6e8bd7d010bda66904ea643c9527276b1b80308a2119741d94108a4d8f
languageName: node
linkType: hard
@@ -8550,7 +7921,7 @@ __metadata:
languageName: node
linkType: hard
-"flatted@npm:^3.1.0":
+"flatted@npm:^3.2.7":
version: 3.2.7
resolution: "flatted@npm:3.2.7"
checksum: 427633049d55bdb80201c68f7eb1cbd533e03eac541f97d3aecab8c5526f12a20ccecaeede08b57503e772c769e7f8680b37e8d482d1e5f8d7e2194687f9ea35
@@ -8576,13 +7947,6 @@ __metadata:
languageName: node
linkType: hard
-"for-in@npm:^1.0.2":
- version: 1.0.2
- resolution: "for-in@npm:1.0.2"
- checksum: 09f4ae93ce785d253ac963d94c7f3432d89398bf25ac7a24ed034ca393bf74380bdeccc40e0f2d721a895e54211b07c8fad7132e8157827f6f7f059b70b4043d
- languageName: node
- linkType: hard
-
"foreground-child@npm:^3.1.0":
version: 3.1.1
resolution: "foreground-child@npm:3.1.1"
@@ -8593,17 +7957,6 @@ __metadata:
languageName: node
linkType: hard
-"form-data@npm:^3.0.0":
- version: 3.0.1
- resolution: "form-data@npm:3.0.1"
- dependencies:
- asynckit: ^0.4.0
- combined-stream: ^1.0.8
- mime-types: ^2.1.12
- checksum: b019e8d35c8afc14a2bd8a7a92fa4f525a4726b6d5a9740e8d2623c30e308fbb58dc8469f90415a856698933c8479b01646a9dff33c87cc4e76d72aedbbf860d
- languageName: node
- linkType: hard
-
"form-data@npm:^4.0.0":
version: 4.0.0
resolution: "form-data@npm:4.0.0"
@@ -8622,15 +7975,6 @@ __metadata:
languageName: node
linkType: hard
-"fragment-cache@npm:^0.2.1":
- version: 0.2.1
- resolution: "fragment-cache@npm:0.2.1"
- dependencies:
- map-cache: ^0.2.2
- checksum: 1cbbd0b0116b67d5790175de0038a11df23c1cd2e8dcdbade58ebba5594c2d641dade6b4f126d82a7b4a6ffc2ea12e3d387dbb64ea2ae97cf02847d436f60fdc
- languageName: node
- linkType: hard
-
"free-style@npm:3.1.0":
version: 3.1.0
resolution: "free-style@npm:3.1.0"
@@ -8704,7 +8048,7 @@ __metadata:
languageName: node
linkType: hard
-"fsevents@npm:^2.1.2, fsevents@npm:^2.3.2":
+"fsevents@npm:^2.3.2":
version: 2.3.3
resolution: "fsevents@npm:2.3.3"
dependencies:
@@ -8714,7 +8058,7 @@ __metadata:
languageName: node
linkType: hard
-"fsevents@patch:fsevents@^2.1.2#~builtin, fsevents@patch:fsevents@^2.3.2#~builtin":
+"fsevents@patch:fsevents@^2.3.2#~builtin":
version: 2.3.3
resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=df0bf1"
dependencies:
@@ -8731,14 +8075,14 @@ __metadata:
linkType: hard
"function.prototype.name@npm:^1.1.5":
- version: 1.1.5
- resolution: "function.prototype.name@npm:1.1.5"
+ version: 1.1.6
+ resolution: "function.prototype.name@npm:1.1.6"
dependencies:
call-bind: ^1.0.2
- define-properties: ^1.1.3
- es-abstract: ^1.19.0
- functions-have-names: ^1.2.2
- checksum: acd21d733a9b649c2c442f067567743214af5fa248dbeee69d8278ce7df3329ea5abac572be9f7470b4ec1cd4d8f1040e3c5caccf98ebf2bf861a0deab735c27
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ functions-have-names: ^1.2.3
+ checksum: 7a3f9bd98adab09a07f6e1f03da03d3f7c26abbdeaeee15223f6c04a9fb5674792bdf5e689dac19b97ac71de6aad2027ba3048a9b883aa1b3173eed6ab07f479
languageName: node
linkType: hard
@@ -8749,7 +8093,7 @@ __metadata:
languageName: node
linkType: hard
-"functions-have-names@npm:^1.2.2, functions-have-names@npm:^1.2.3":
+"functions-have-names@npm:^1.2.3":
version: 1.2.3
resolution: "functions-have-names@npm:1.2.3"
checksum: c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5
@@ -8795,7 +8139,7 @@ __metadata:
languageName: node
linkType: hard
-"get-caller-file@npm:^2.0.1, get-caller-file@npm:^2.0.5":
+"get-caller-file@npm:^2.0.5":
version: 2.0.5
resolution: "get-caller-file@npm:2.0.5"
checksum: b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9
@@ -8856,24 +8200,6 @@ __metadata:
languageName: node
linkType: hard
-"get-stream@npm:^4.0.0":
- version: 4.1.0
- resolution: "get-stream@npm:4.1.0"
- dependencies:
- pump: ^3.0.0
- checksum: 443e1914170c15bd52ff8ea6eff6dfc6d712b031303e36302d2778e3de2506af9ee964d6124010f7818736dcfde05c04ba7ca6cc26883106e084357a17ae7d73
- languageName: node
- linkType: hard
-
-"get-stream@npm:^5.0.0":
- version: 5.2.0
- resolution: "get-stream@npm:5.2.0"
- dependencies:
- pump: ^3.0.0
- checksum: 8bc1a23174a06b2b4ce600df38d6c98d2ef6d84e020c1ddad632ad75bac4e092eeb40e4c09e0761c35fc2dbc5e7fff5dab5e763a383582c4a167dd69a905bd12
- languageName: node
- linkType: hard
-
"get-stream@npm:^6.0.0":
version: 6.0.1
resolution: "get-stream@npm:6.0.1"
@@ -8891,13 +8217,6 @@ __metadata:
languageName: node
linkType: hard
-"get-value@npm:^2.0.3, get-value@npm:^2.0.6":
- version: 2.0.6
- resolution: "get-value@npm:2.0.6"
- checksum: 5c3b99cb5398ea8016bf46ff17afc5d1d286874d2ad38ca5edb6e87d75c0965b0094cb9a9dddef2c59c23d250702323539a7fbdd870620db38c7e7d7ec87c1eb
- languageName: node
- linkType: hard
-
"git-raw-commits@npm:^2.0.8":
version: 2.0.11
resolution: "git-raw-commits@npm:2.0.11"
@@ -8994,8 +8313,8 @@ __metadata:
linkType: hard
"glob@npm:^10.2.2":
- version: 10.3.3
- resolution: "glob@npm:10.3.3"
+ version: 10.3.4
+ resolution: "glob@npm:10.3.4"
dependencies:
foreground-child: ^3.1.0
jackspeak: ^2.0.3
@@ -9004,11 +8323,11 @@ __metadata:
path-scurry: ^1.10.1
bin:
glob: dist/cjs/src/bin.js
- checksum: 29190d3291f422da0cb40b77a72fc8d2c51a36524e99b8bf412548b7676a6627489528b57250429612b6eec2e6fe7826d328451d3e694a9d15e575389308ec53
+ checksum: 176b97c124414401cb51329a93d2ba112cef8814adbed10348481916b9521b677773eee2691cb6b24d66632d8c8bb8913533f5ac4bfb2d0ef5454a1856082361
languageName: node
linkType: hard
-"glob@npm:^7.1.1, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.4":
+"glob@npm:^7.1.3, glob@npm:^7.1.4":
version: 7.2.3
resolution: "glob@npm:7.2.3"
dependencies:
@@ -9150,13 +8469,6 @@ __metadata:
languageName: node
linkType: hard
-"growly@npm:^1.3.0":
- version: 1.3.0
- resolution: "growly@npm:1.3.0"
- checksum: 53cdecd4c16d7d9154a9061a9ccb87d602e957502ca69b529d7d1b2436c2c0b700ec544fc6b3e4cd115d59b81e62e44ce86bd0521403b579d3a2a97d7ce72a44
- languageName: node
- linkType: hard
-
"gud@npm:^1.0.0":
version: 1.0.0
resolution: "gud@npm:1.0.0"
@@ -9256,45 +8568,6 @@ __metadata:
languageName: node
linkType: hard
-"has-value@npm:^0.3.1":
- version: 0.3.1
- resolution: "has-value@npm:0.3.1"
- dependencies:
- get-value: ^2.0.3
- has-values: ^0.1.4
- isobject: ^2.0.0
- checksum: 29e2a1e6571dad83451b769c7ce032fce6009f65bccace07c2962d3ad4d5530b6743d8f3229e4ecf3ea8e905d23a752c5f7089100c1f3162039fa6dc3976558f
- languageName: node
- linkType: hard
-
-"has-value@npm:^1.0.0":
- version: 1.0.0
- resolution: "has-value@npm:1.0.0"
- dependencies:
- get-value: ^2.0.6
- has-values: ^1.0.0
- isobject: ^3.0.0
- checksum: b9421d354e44f03d3272ac39fd49f804f19bc1e4fa3ceef7745df43d6b402053f828445c03226b21d7d934a21ac9cf4bc569396dc312f496ddff873197bbd847
- languageName: node
- linkType: hard
-
-"has-values@npm:^0.1.4":
- version: 0.1.4
- resolution: "has-values@npm:0.1.4"
- checksum: ab1c4bcaf811ccd1856c11cfe90e62fca9e2b026ebe474233a3d282d8d67e3b59ed85b622c7673bac3db198cb98bd1da2b39300a2f98e453729b115350af49bc
- languageName: node
- linkType: hard
-
-"has-values@npm:^1.0.0":
- version: 1.0.0
- resolution: "has-values@npm:1.0.0"
- dependencies:
- is-number: ^3.0.0
- kind-of: ^4.0.0
- checksum: 77e6693f732b5e4cf6c38dfe85fdcefad0fab011af74995c3e83863fabf5e3a836f406d83565816baa0bc0a523c9410db8b990fe977074d61aeb6d8f4fcffa11
- languageName: node
- linkType: hard
-
"has@npm:^1.0.3":
version: 1.0.3
resolution: "has@npm:1.0.3"
@@ -9484,15 +8757,6 @@ __metadata:
languageName: node
linkType: hard
-"html-encoding-sniffer@npm:^2.0.1":
- version: 2.0.1
- resolution: "html-encoding-sniffer@npm:2.0.1"
- dependencies:
- whatwg-encoding: ^1.0.5
- checksum: bf30cce461015ed7e365736fcd6a3063c7bc016a91f74398ef6158886970a96333938f7c02417ab3c12aa82e3e53b40822145facccb9ddfbcdc15a879ae4d7ba
- languageName: node
- linkType: hard
-
"html-encoding-sniffer@npm:^3.0.0":
version: 3.0.0
resolution: "html-encoding-sniffer@npm:3.0.0"
@@ -9535,17 +8799,6 @@ __metadata:
languageName: node
linkType: hard
-"http-proxy-agent@npm:^4.0.1":
- version: 4.0.1
- resolution: "http-proxy-agent@npm:4.0.1"
- dependencies:
- "@tootallnate/once": 1
- agent-base: 6
- debug: 4
- checksum: c6a5da5a1929416b6bbdf77b1aca13888013fe7eb9d59fc292e25d18e041bb154a8dfada58e223fc7b76b9b2d155a87e92e608235201f77d34aa258707963a82
- languageName: node
- linkType: hard
-
"http-proxy-agent@npm:^5.0.0":
version: 5.0.0
resolution: "http-proxy-agent@npm:5.0.0"
@@ -9567,13 +8820,6 @@ __metadata:
languageName: node
linkType: hard
-"human-signals@npm:^1.1.1":
- version: 1.1.1
- resolution: "human-signals@npm:1.1.1"
- checksum: d587647c9e8ec24e02821b6be7de5a0fc37f591f6c4e319b3054b43fd4c35a70a94c46fc74d8c1a43c47fde157d23acd7421f375e1c1365b09a16835b8300205
- languageName: node
- linkType: hard
-
"human-signals@npm:^2.1.0":
version: 2.1.0
resolution: "human-signals@npm:2.1.0"
@@ -9590,15 +8836,6 @@ __metadata:
languageName: node
linkType: hard
-"iconv-lite@npm:0.4.24, iconv-lite@npm:^0.4.24":
- version: 0.4.24
- resolution: "iconv-lite@npm:0.4.24"
- dependencies:
- safer-buffer: ">= 2.1.2 < 3"
- checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6
- languageName: node
- linkType: hard
-
"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2":
version: 0.6.3
resolution: "iconv-lite@npm:0.6.3"
@@ -9608,6 +8845,15 @@ __metadata:
languageName: node
linkType: hard
+"iconv-lite@npm:^0.4.24":
+ version: 0.4.24
+ resolution: "iconv-lite@npm:0.4.24"
+ dependencies:
+ safer-buffer: ">= 2.1.2 < 3"
+ checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6
+ languageName: node
+ linkType: hard
+
"icss-utils@npm:^5.0.0, icss-utils@npm:^5.1.0":
version: 5.1.0
resolution: "icss-utils@npm:5.1.0"
@@ -9839,24 +9085,6 @@ __metadata:
languageName: node
linkType: hard
-"is-accessor-descriptor@npm:^0.1.6":
- version: 0.1.6
- resolution: "is-accessor-descriptor@npm:0.1.6"
- dependencies:
- kind-of: ^3.0.2
- checksum: 3d629a086a9585bc16a83a8e8a3416f400023301855cafb7ccc9a1d63145b7480f0ad28877dcc2cce09492c4ec1c39ef4c071996f24ee6ac626be4217b8ffc8a
- languageName: node
- linkType: hard
-
-"is-accessor-descriptor@npm:^1.0.0":
- version: 1.0.0
- resolution: "is-accessor-descriptor@npm:1.0.0"
- dependencies:
- kind-of: ^6.0.0
- checksum: 8e475968e9b22f9849343c25854fa24492dbe8ba0dea1a818978f9f1b887339190b022c9300d08c47fe36f1b913d70ce8cbaca00369c55a56705fdb7caed37fe
- languageName: node
- linkType: hard
-
"is-alphabetical@npm:^1.0.0":
version: 1.0.4
resolution: "is-alphabetical@npm:1.0.4"
@@ -9921,13 +9149,6 @@ __metadata:
languageName: node
linkType: hard
-"is-buffer@npm:^1.1.5":
- version: 1.1.6
- resolution: "is-buffer@npm:1.1.6"
- checksum: 4a186d995d8bbf9153b4bd9ff9fd04ae75068fe695d29025d25e592d9488911eeece84eefbd8fa41b8ddcc0711058a71d4c466dcf6f1f6e1d83830052d8ca707
- languageName: node
- linkType: hard
-
"is-buffer@npm:^2.0.0":
version: 2.0.5
resolution: "is-buffer@npm:2.0.5"
@@ -9942,7 +9163,7 @@ __metadata:
languageName: node
linkType: hard
-"is-ci@npm:2.0.0, is-ci@npm:^2.0.0":
+"is-ci@npm:2.0.0":
version: 2.0.0
resolution: "is-ci@npm:2.0.0"
dependencies:
@@ -9962,24 +9183,6 @@ __metadata:
languageName: node
linkType: hard
-"is-data-descriptor@npm:^0.1.4":
- version: 0.1.4
- resolution: "is-data-descriptor@npm:0.1.4"
- dependencies:
- kind-of: ^3.0.2
- checksum: 5c622e078ba933a78338ae398a3d1fc5c23332b395312daf4f74bab4afb10d061cea74821add726cb4db8b946ba36217ee71a24fe71dd5bca4632edb7f6aad87
- languageName: node
- linkType: hard
-
-"is-data-descriptor@npm:^1.0.0":
- version: 1.0.0
- resolution: "is-data-descriptor@npm:1.0.0"
- dependencies:
- kind-of: ^6.0.0
- checksum: e705e6816241c013b05a65dc452244ee378d1c3e3842bd140beabe6e12c0d700ef23c91803f971aa7b091fb0573c5da8963af34a2b573337d87bc3e1f53a4e6d
- languageName: node
- linkType: hard
-
"is-date-object@npm:^1.0.1":
version: 1.0.5
resolution: "is-date-object@npm:1.0.5"
@@ -9996,28 +9199,6 @@ __metadata:
languageName: node
linkType: hard
-"is-descriptor@npm:^0.1.0":
- version: 0.1.6
- resolution: "is-descriptor@npm:0.1.6"
- dependencies:
- is-accessor-descriptor: ^0.1.6
- is-data-descriptor: ^0.1.4
- kind-of: ^5.0.0
- checksum: 0f780c1b46b465f71d970fd7754096ffdb7b69fd8797ca1f5069c163eaedcd6a20ec4a50af669075c9ebcfb5266d2e53c8b227e485eefdb0d1fee09aa1dd8ab6
- languageName: node
- linkType: hard
-
-"is-descriptor@npm:^1.0.0, is-descriptor@npm:^1.0.2":
- version: 1.0.2
- resolution: "is-descriptor@npm:1.0.2"
- dependencies:
- is-accessor-descriptor: ^1.0.0
- is-data-descriptor: ^1.0.0
- kind-of: ^6.0.2
- checksum: 2ed623560bee035fb67b23e32ce885700bef8abe3fbf8c909907d86507b91a2c89a9d3a4d835a4d7334dd5db0237a0aeae9ca109c1e4ef1c0e7b577c0846ab5a
- languageName: node
- linkType: hard
-
"is-docker@npm:^2.0.0, is-docker@npm:^2.1.1":
version: 2.2.1
resolution: "is-docker@npm:2.2.1"
@@ -10027,22 +9208,6 @@ __metadata:
languageName: node
linkType: hard
-"is-extendable@npm:^0.1.0, is-extendable@npm:^0.1.1":
- version: 0.1.1
- resolution: "is-extendable@npm:0.1.1"
- checksum: 3875571d20a7563772ecc7a5f36cb03167e9be31ad259041b4a8f73f33f885441f778cee1f1fe0085eb4bc71679b9d8c923690003a36a6a5fdf8023e6e3f0672
- languageName: node
- linkType: hard
-
-"is-extendable@npm:^1.0.1":
- version: 1.0.1
- resolution: "is-extendable@npm:1.0.1"
- dependencies:
- is-plain-object: ^2.0.4
- checksum: db07bc1e9de6170de70eff7001943691f05b9d1547730b11be01c0ebfe67362912ba743cf4be6fd20a5e03b4180c685dad80b7c509fe717037e3eee30ad8e84f
- languageName: node
- linkType: hard
-
"is-extglob@npm:^2.1.1":
version: 2.1.1
resolution: "is-extglob@npm:2.1.1"
@@ -10110,15 +9275,6 @@ __metadata:
languageName: node
linkType: hard
-"is-number@npm:^3.0.0":
- version: 3.0.0
- resolution: "is-number@npm:3.0.0"
- dependencies:
- kind-of: ^3.0.2
- checksum: 0c62bf8e9d72c4dd203a74d8cfc751c746e75513380fef420cda8237e619a988ee43e678ddb23c87ac24d91ac0fe9f22e4ffb1301a50310c697e9d73ca3994e9
- languageName: node
- linkType: hard
-
"is-number@npm:^7.0.0":
version: 7.0.0
resolution: "is-number@npm:7.0.0"
@@ -10161,7 +9317,7 @@ __metadata:
languageName: node
linkType: hard
-"is-plain-object@npm:^2.0.3, is-plain-object@npm:^2.0.4":
+"is-plain-object@npm:^2.0.4":
version: 2.0.4
resolution: "is-plain-object@npm:2.0.4"
dependencies:
@@ -10219,13 +9375,6 @@ __metadata:
languageName: node
linkType: hard
-"is-stream@npm:^1.1.0":
- version: 1.1.0
- resolution: "is-stream@npm:1.1.0"
- checksum: 063c6bec9d5647aa6d42108d4c59723d2bd4ae42135a2d4db6eadbd49b7ea05b750fd69d279e5c7c45cf9da753ad2c00d8978be354d65aa9f6bb434969c6a2ae
- languageName: node
- linkType: hard
-
"is-stream@npm:^2.0.0":
version: 2.0.1
resolution: "is-stream@npm:2.0.1"
@@ -10269,13 +9418,6 @@ __metadata:
languageName: node
linkType: hard
-"is-typedarray@npm:^1.0.0":
- version: 1.0.0
- resolution: "is-typedarray@npm:1.0.0"
- checksum: 3508c6cd0a9ee2e0df2fa2e9baabcdc89e911c7bd5cf64604586697212feec525aa21050e48affb5ffc3df20f0f5d2e2cf79b08caa64e1ccc9578e251763aef7
- languageName: node
- linkType: hard
-
"is-unicode-supported@npm:^0.1.0":
version: 0.1.0
resolution: "is-unicode-supported@npm:0.1.0"
@@ -10292,13 +9434,6 @@ __metadata:
languageName: node
linkType: hard
-"is-windows@npm:^1.0.2":
- version: 1.0.2
- resolution: "is-windows@npm:1.0.2"
- checksum: 438b7e52656fe3b9b293b180defb4e448088e7023a523ec21a91a80b9ff8cdb3377ddb5b6e60f7c7de4fa8b63ab56e121b6705fe081b3cf1b828b0a380009ad7
- languageName: node
- linkType: hard
-
"is-wsl@npm:^2.2.0":
version: 2.2.0
resolution: "is-wsl@npm:2.2.0"
@@ -10308,13 +9443,6 @@ __metadata:
languageName: node
linkType: hard
-"isarray@npm:1.0.0, isarray@npm:~1.0.0":
- version: 1.0.0
- resolution: "isarray@npm:1.0.0"
- checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab
- languageName: node
- linkType: hard
-
"isarray@npm:^2.0.5":
version: 2.0.5
resolution: "isarray@npm:2.0.5"
@@ -10322,6 +9450,13 @@ __metadata:
languageName: node
linkType: hard
+"isarray@npm:~1.0.0":
+ version: 1.0.0
+ resolution: "isarray@npm:1.0.0"
+ checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab
+ languageName: node
+ linkType: hard
+
"isexe@npm:^2.0.0":
version: 2.0.0
resolution: "isexe@npm:2.0.0"
@@ -10329,16 +9464,7 @@ __metadata:
languageName: node
linkType: hard
-"isobject@npm:^2.0.0":
- version: 2.1.0
- resolution: "isobject@npm:2.1.0"
- dependencies:
- isarray: 1.0.0
- checksum: 811c6f5a866877d31f0606a88af4a45f282544de886bf29f6a34c46616a1ae2ed17076cc6bf34c0128f33eecf7e1fcaa2c82cf3770560d3e26810894e96ae79f
- languageName: node
- linkType: hard
-
-"isobject@npm:^3.0.0, isobject@npm:^3.0.1":
+"isobject@npm:^3.0.1":
version: 3.0.1
resolution: "isobject@npm:3.0.1"
checksum: db85c4c970ce30693676487cca0e61da2ca34e8d4967c2e1309143ff910c207133a969f9e4ddb2dc6aba670aabce4e0e307146c310350b298e74a31f7d464703
@@ -10359,18 +9485,6 @@ __metadata:
languageName: node
linkType: hard
-"istanbul-lib-instrument@npm:^4.0.3":
- version: 4.0.3
- resolution: "istanbul-lib-instrument@npm:4.0.3"
- dependencies:
- "@babel/core": ^7.7.5
- "@istanbuljs/schema": ^0.1.2
- istanbul-lib-coverage: ^3.0.0
- semver: ^6.3.0
- checksum: fa1171d3022b1bb8f6a734042620ac5d9ee7dc80f3065a0bb12863e9f0494d0eefa3d86608fcc0254ab2765d29d7dad8bdc42e5f8df2f9a1fbe85ccc59d76cb9
- languageName: node
- linkType: hard
-
"istanbul-lib-instrument@npm:^5.0.4":
version: 5.2.1
resolution: "istanbul-lib-instrument@npm:5.2.1"
@@ -10419,7 +9533,7 @@ __metadata:
languageName: node
linkType: hard
-"istanbul-reports@npm:^3.0.2, istanbul-reports@npm:^3.1.3":
+"istanbul-reports@npm:^3.1.3":
version: 3.1.6
resolution: "istanbul-reports@npm:3.1.6"
dependencies:
@@ -10430,15 +9544,15 @@ __metadata:
linkType: hard
"jackspeak@npm:^2.0.3":
- version: 2.3.0
- resolution: "jackspeak@npm:2.3.0"
+ version: 2.3.3
+ resolution: "jackspeak@npm:2.3.3"
dependencies:
"@isaacs/cliui": ^8.0.2
"@pkgjs/parseargs": ^0.11.0
dependenciesMeta:
"@pkgjs/parseargs":
optional: true
- checksum: 71bf716f4b5793226d4aeb9761ebf2605ee093b59f91a61451d57d998dd64bbf2b54323fb749b8b2ae8b6d8a463de4f6e3fedab50108671f247bbc80195a6306
+ checksum: 4313a7c0cc44c7753c4cb9869935f0b06f4cf96827515f63f58ff46b3d2f6e29aba6b3b5151778397c3f5ae67ef8bfc48871967bd10343c27e90cff198ec7808
languageName: node
linkType: hard
@@ -10456,17 +9570,6 @@ __metadata:
languageName: node
linkType: hard
-"jest-changed-files@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-changed-files@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- execa: ^4.0.0
- throat: ^5.0.0
- checksum: 8c405f5ff905ee69ace9fd39355233206e3e233badf6a3f3b27e45bbf0a46d86943430be2e080d25b1e085f4231b9b3b27c94317aa04116efb40b592184066f4
- languageName: node
- linkType: hard
-
"jest-changed-files@npm:^29.6.3":
version: 29.6.3
resolution: "jest-changed-files@npm:29.6.3"
@@ -10478,13 +9581,13 @@ __metadata:
languageName: node
linkType: hard
-"jest-circus@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-circus@npm:29.6.3"
+"jest-circus@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-circus@npm:29.6.4"
dependencies:
- "@jest/environment": ^29.6.3
- "@jest/expect": ^29.6.3
- "@jest/test-result": ^29.6.3
+ "@jest/environment": ^29.6.4
+ "@jest/expect": ^29.6.4
+ "@jest/test-result": ^29.6.4
"@jest/types": ^29.6.3
"@types/node": "*"
chalk: ^4.0.0
@@ -10492,55 +9595,32 @@ __metadata:
dedent: ^1.0.0
is-generator-fn: ^2.0.0
jest-each: ^29.6.3
- jest-matcher-utils: ^29.6.3
+ jest-matcher-utils: ^29.6.4
jest-message-util: ^29.6.3
- jest-runtime: ^29.6.3
- jest-snapshot: ^29.6.3
+ jest-runtime: ^29.6.4
+ jest-snapshot: ^29.6.4
jest-util: ^29.6.3
p-limit: ^3.1.0
pretty-format: ^29.6.3
pure-rand: ^6.0.0
slash: ^3.0.0
stack-utils: ^2.0.3
- checksum: 65b76f853d1bd2ddc74ec5d9a37cff3d04d436e675b0ded52167ba9e5dfb9d6fbca8572c9f255d379ad332e87770bac3da6dbcabcaf840ee2ba6e0cde5b8c20e
+ checksum: 31f64ddf6df4aefe30ef5f8de9da137c9cba58ab5e2a25cf749450735088dc88a9974591a4256d481af0fe64608173c921219f9fad9a7dd87cbe47a79e111be8
languageName: node
linkType: hard
-"jest-cli@npm:^26.6.3":
- version: 26.6.3
- resolution: "jest-cli@npm:26.6.3"
+"jest-cli@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-cli@npm:29.6.4"
dependencies:
- "@jest/core": ^26.6.3
- "@jest/test-result": ^26.6.2
- "@jest/types": ^26.6.2
- chalk: ^4.0.0
- exit: ^0.1.2
- graceful-fs: ^4.2.4
- import-local: ^3.0.2
- is-ci: ^2.0.0
- jest-config: ^26.6.3
- jest-util: ^26.6.2
- jest-validate: ^26.6.2
- prompts: ^2.0.1
- yargs: ^15.4.1
- bin:
- jest: bin/jest.js
- checksum: c8554147be756f09f5566974f0026485f78742e8642d2723f8fbee5746f50f44fb72b17aad181226655a8446d3ecc8ad8ed0a11a8a55686fa2b9c10d85700121
- languageName: node
- linkType: hard
-
-"jest-cli@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-cli@npm:29.6.3"
- dependencies:
- "@jest/core": ^29.6.3
- "@jest/test-result": ^29.6.3
+ "@jest/core": ^29.6.4
+ "@jest/test-result": ^29.6.4
"@jest/types": ^29.6.3
chalk: ^4.0.0
exit: ^0.1.2
graceful-fs: ^4.2.9
import-local: ^3.0.2
- jest-config: ^29.6.3
+ jest-config: ^29.6.4
jest-util: ^29.6.3
jest-validate: ^29.6.3
prompts: ^2.0.1
@@ -10552,60 +9632,29 @@ __metadata:
optional: true
bin:
jest: bin/jest.js
- checksum: 69c422f1522b25756afb5a27b4b01a710d0f5ba52c592903b1ab47103ee2414ac9a9fff36a976092bb595980ba5c45f128e33b5d6ebc666c8a6973474bbf1443
+ checksum: 87a85a27eff0e502717b6ee0ce861d3e50d8c47d7298477f8ca10964b958f06c20241d28f1360ce2a85072763483e4924248106a8ed530ca460a56db3fdfc53e
languageName: node
linkType: hard
-"jest-config@npm:^26.6.3":
- version: 26.6.3
- resolution: "jest-config@npm:26.6.3"
- dependencies:
- "@babel/core": ^7.1.0
- "@jest/test-sequencer": ^26.6.3
- "@jest/types": ^26.6.2
- babel-jest: ^26.6.3
- chalk: ^4.0.0
- deepmerge: ^4.2.2
- glob: ^7.1.1
- graceful-fs: ^4.2.4
- jest-environment-jsdom: ^26.6.2
- jest-environment-node: ^26.6.2
- jest-get-type: ^26.3.0
- jest-jasmine2: ^26.6.3
- jest-regex-util: ^26.0.0
- jest-resolve: ^26.6.2
- jest-util: ^26.6.2
- jest-validate: ^26.6.2
- micromatch: ^4.0.2
- pretty-format: ^26.6.2
- peerDependencies:
- ts-node: ">=9.0.0"
- peerDependenciesMeta:
- ts-node:
- optional: true
- checksum: 303c798582d3c5d4b4e6ab8a4d91a83ded28e4ebbc0bcfc1ad271f9864437ef5409b7c7773010143811bc8176b0695c096717b91419c6484b56dcc032560a74b
- languageName: node
- linkType: hard
-
-"jest-config@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-config@npm:29.6.3"
+"jest-config@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-config@npm:29.6.4"
dependencies:
"@babel/core": ^7.11.6
- "@jest/test-sequencer": ^29.6.3
+ "@jest/test-sequencer": ^29.6.4
"@jest/types": ^29.6.3
- babel-jest: ^29.6.3
+ babel-jest: ^29.6.4
chalk: ^4.0.0
ci-info: ^3.2.0
deepmerge: ^4.2.2
glob: ^7.1.3
graceful-fs: ^4.2.9
- jest-circus: ^29.6.3
- jest-environment-node: ^29.6.3
+ jest-circus: ^29.6.4
+ jest-environment-node: ^29.6.4
jest-get-type: ^29.6.3
jest-regex-util: ^29.6.3
- jest-resolve: ^29.6.3
- jest-runner: ^29.6.3
+ jest-resolve: ^29.6.4
+ jest-runner: ^29.6.4
jest-util: ^29.6.3
jest-validate: ^29.6.3
micromatch: ^4.0.4
@@ -10621,40 +9670,19 @@ __metadata:
optional: true
ts-node:
optional: true
- checksum: c3505411b89e5d046fbd294bb6e9ccc8c64a7efcf9d546450bec25512db4cbb67c8d102e4a58fa8ef8eac73052d1259533d9012b483469581ad5ed4cc5faa39f
+ checksum: 177352658774344896df3988dbe892e0b117579f45cc43aebc588493665bf19a557e202f097f5b4a987314ec2d84afa0769299ac6e702c5923d1fd3cfa4692b0
languageName: node
linkType: hard
-"jest-diff@npm:^26.0.0, jest-diff@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-diff@npm:26.6.2"
- dependencies:
- chalk: ^4.0.0
- diff-sequences: ^26.6.2
- jest-get-type: ^26.3.0
- pretty-format: ^26.6.2
- checksum: d00d297f31e1ac0252127089892432caa7a11c69bde29cf3bb6c7a839c8afdb95cf1fd401f9df16a4422745da2e6a5d94b428b30666a2540c38e1c5699915c2d
- languageName: node
- linkType: hard
-
-"jest-diff@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-diff@npm:29.6.3"
+"jest-diff@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-diff@npm:29.6.4"
dependencies:
chalk: ^4.0.0
diff-sequences: ^29.6.3
jest-get-type: ^29.6.3
pretty-format: ^29.6.3
- checksum: 23b0a88efeab36566386f059f3da340754d2860969cbc34805154e2377714e37e3130e21a791fc68008fb460bbf5edd7ec43c16d96d15797b32ccfae5160fe37
- languageName: node
- linkType: hard
-
-"jest-docblock@npm:^26.0.0":
- version: 26.0.0
- resolution: "jest-docblock@npm:26.0.0"
- dependencies:
- detect-newline: ^3.0.0
- checksum: e03ef104ee8c571335e6fa394b8fc8d2bd87eec9fe8b3d7d9aac056ada7de288f37ee8ac4922bb3a4222ac304db975d8832d5abc85486092866c534a16847cd5
+ checksum: e205c45ab6dbcc660dc2a682cddb20f6a3cbbbdecd2821cce2050619f96dbd7560ee25f7f51d42c302596aeaddbea54390b78be3ab639340d24d67e4d270a8b0
languageName: node
linkType: hard
@@ -10667,19 +9695,6 @@ __metadata:
languageName: node
linkType: hard
-"jest-each@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-each@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- chalk: ^4.0.0
- jest-get-type: ^26.3.0
- jest-util: ^26.6.2
- pretty-format: ^26.6.2
- checksum: 4e00ea4667e4fe015b894dc698cce0ae695cf458e021e5da62d4a5b052cd2c0a878da93f8c97cbdde60bcecf70982e8d3a7a5d63e1588f59531cc797a18c39ef
- languageName: node
- linkType: hard
-
"jest-each@npm:^29.6.3":
version: 29.6.3
resolution: "jest-each@npm:29.6.3"
@@ -10693,27 +9708,12 @@ __metadata:
languageName: node
linkType: hard
-"jest-environment-jsdom@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-environment-jsdom@npm:26.6.2"
- dependencies:
- "@jest/environment": ^26.6.2
- "@jest/fake-timers": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/node": "*"
- jest-mock: ^26.6.2
- jest-util: ^26.6.2
- jsdom: ^16.4.0
- checksum: 8af9ffdf1b147362a19032bfe9ed51b709d43c74dc4b1c45e56d721808bf6cabdca8c226855b55a985ea196ce51cdb171bfe420ceec3daa2d13818d5c1915890
- languageName: node
- linkType: hard
-
"jest-environment-jsdom@npm:^29.3.0":
- version: 29.6.3
- resolution: "jest-environment-jsdom@npm:29.6.3"
+ version: 29.6.4
+ resolution: "jest-environment-jsdom@npm:29.6.4"
dependencies:
- "@jest/environment": ^29.6.3
- "@jest/fake-timers": ^29.6.3
+ "@jest/environment": ^29.6.4
+ "@jest/fake-timers": ^29.6.4
"@jest/types": ^29.6.3
"@types/jsdom": ^20.0.0
"@types/node": "*"
@@ -10725,42 +9725,21 @@ __metadata:
peerDependenciesMeta:
canvas:
optional: true
- checksum: c8c3a45952c4ca82fa17ae77b9be986ebe323300bd3d2f85895a143f078402668df42978a8764005d373d8b10926367a832731ae524a79d61568cc4e75a92c41
+ checksum: 2afe105f12d7d93ca56e2e6f67ab07ada3dd3da0516d1198f254930683ab9feb2b8c14417baaca53544eed88fd7fb5744f0dbce2e100269746187317ce0347df
languageName: node
linkType: hard
-"jest-environment-node@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-environment-node@npm:26.6.2"
+"jest-environment-node@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-environment-node@npm:29.6.4"
dependencies:
- "@jest/environment": ^26.6.2
- "@jest/fake-timers": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/node": "*"
- jest-mock: ^26.6.2
- jest-util: ^26.6.2
- checksum: 0b69b481e6d6f2350ed241c2dabc70b0b1f3a00f9a410b7dad97c8ab38e88026acf7445ca663eb314f46ff50acee0133100b1006bf4ebda5298ffb02763a6861
- languageName: node
- linkType: hard
-
-"jest-environment-node@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-environment-node@npm:29.6.3"
- dependencies:
- "@jest/environment": ^29.6.3
- "@jest/fake-timers": ^29.6.3
+ "@jest/environment": ^29.6.4
+ "@jest/fake-timers": ^29.6.4
"@jest/types": ^29.6.3
"@types/node": "*"
jest-mock: ^29.6.3
jest-util: ^29.6.3
- checksum: c215d8d94d95ba0353677c8b6c7c46d3f612bfd6becafa90e842ab99cb4ba2243c7f0309f1518ea2879820d39c0f3ec0d678e9ebb41055ed6eedbeb123f2897c
- languageName: node
- linkType: hard
-
-"jest-get-type@npm:^26.3.0":
- version: 26.3.0
- resolution: "jest-get-type@npm:26.3.0"
- checksum: 1cc6465ae4f5e880be22ba52fd270fa64c21994915f81b41f8f7553a7957dd8e077cc8d03035de9412e2d739f8bad6a032ebb5dab5805692a5fb9e20dd4ea666
+ checksum: 518221505af4bd32c84f2af2c03f9d771de2711bd69fe7723b648fcc2e05d95b4e75f493afa9010209e26a4a3309ebee971f9b18c45b540891771d3b68c3a16e
languageName: node
linkType: hard
@@ -10771,34 +9750,9 @@ __metadata:
languageName: node
linkType: hard
-"jest-haste-map@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-haste-map@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- "@types/graceful-fs": ^4.1.2
- "@types/node": "*"
- anymatch: ^3.0.3
- fb-watchman: ^2.0.0
- fsevents: ^2.1.2
- graceful-fs: ^4.2.4
- jest-regex-util: ^26.0.0
- jest-serializer: ^26.6.2
- jest-util: ^26.6.2
- jest-worker: ^26.6.2
- micromatch: ^4.0.2
- sane: ^4.0.3
- walker: ^1.0.7
- dependenciesMeta:
- fsevents:
- optional: true
- checksum: 8ad5236d5646d2388d2bd58a57ea53698923434f43d59ea9ebdc58bce4d0b8544c8de2f7acaa9a6d73171f04460388b2b6d7d6b6c256aea4ebb8780140781596
- languageName: node
- linkType: hard
-
-"jest-haste-map@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-haste-map@npm:29.6.3"
+"jest-haste-map@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-haste-map@npm:29.6.4"
dependencies:
"@jest/types": ^29.6.3
"@types/graceful-fs": ^4.1.3
@@ -10809,39 +9763,13 @@ __metadata:
graceful-fs: ^4.2.9
jest-regex-util: ^29.6.3
jest-util: ^29.6.3
- jest-worker: ^29.6.3
+ jest-worker: ^29.6.4
micromatch: ^4.0.4
walker: ^1.0.8
dependenciesMeta:
fsevents:
optional: true
- checksum: d72b81442cf54c5962009502b4001e53b7e40ecd1717bb5d17d5b0badc89cf5529b8be5d2804442d25ee6a70809de150e554b074029170b0e86a32b7560ce430
- languageName: node
- linkType: hard
-
-"jest-jasmine2@npm:^26.6.3":
- version: 26.6.3
- resolution: "jest-jasmine2@npm:26.6.3"
- dependencies:
- "@babel/traverse": ^7.1.0
- "@jest/environment": ^26.6.2
- "@jest/source-map": ^26.6.2
- "@jest/test-result": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/node": "*"
- chalk: ^4.0.0
- co: ^4.6.0
- expect: ^26.6.2
- is-generator-fn: ^2.0.0
- jest-each: ^26.6.2
- jest-matcher-utils: ^26.6.2
- jest-message-util: ^26.6.2
- jest-runtime: ^26.6.3
- jest-snapshot: ^26.6.2
- jest-util: ^26.6.2
- pretty-format: ^26.6.2
- throat: ^5.0.0
- checksum: 41df0b993ae0cdeb2660fb3d8e88e2dcc83aec6b5c27d85eb233c2d507b546f8dce45fc54898ffbefa48ccc4633f225d0e023fd0979b8f7f2f1626074a69a9a3
+ checksum: 4f720fd3813bb38400b7a9a094e55664cbddd907ba1769457ed746f6c870c615167647a5b697a788183d832b1dcb1b66143e52990a6f4403283f6686077fa868
languageName: node
linkType: hard
@@ -10857,16 +9785,6 @@ __metadata:
languageName: node
linkType: hard
-"jest-leak-detector@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-leak-detector@npm:26.6.2"
- dependencies:
- jest-get-type: ^26.3.0
- pretty-format: ^26.6.2
- checksum: 364dd4d021347e26c66ba9c09da8a30477f14a3a8a208d2d7d64e4c396db81b85d8cb6b6834bcfc47a61b5938e274553957d11a7de2255f058c9d55d7f8fdfe7
- languageName: node
- linkType: hard
-
"jest-leak-detector@npm:^29.6.3":
version: 29.6.3
resolution: "jest-leak-detector@npm:29.6.3"
@@ -10877,44 +9795,15 @@ __metadata:
languageName: node
linkType: hard
-"jest-matcher-utils@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-matcher-utils@npm:26.6.2"
+"jest-matcher-utils@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-matcher-utils@npm:29.6.4"
dependencies:
chalk: ^4.0.0
- jest-diff: ^26.6.2
- jest-get-type: ^26.3.0
- pretty-format: ^26.6.2
- checksum: 74d2165c1ac7fe98fe27cd2b5407499478e6b2fe99dd54e26d8ee5c9f5f913bdd7bdc07c7221b9b04df0c15e9be0e866ff3455b03e38cc66c480d9996d6d5405
- languageName: node
- linkType: hard
-
-"jest-matcher-utils@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-matcher-utils@npm:29.6.3"
- dependencies:
- chalk: ^4.0.0
- jest-diff: ^29.6.3
+ jest-diff: ^29.6.4
jest-get-type: ^29.6.3
pretty-format: ^29.6.3
- checksum: d4965d5cc079799bc0a9075daea7a964768d4db55f0388ef879642215399c955ae9a22c967496813c908763b487f97e40701a1eb4ed5b0b7529c447b6d33e652
- languageName: node
- linkType: hard
-
-"jest-message-util@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-message-util@npm:26.6.2"
- dependencies:
- "@babel/code-frame": ^7.0.0
- "@jest/types": ^26.6.2
- "@types/stack-utils": ^2.0.0
- chalk: ^4.0.0
- graceful-fs: ^4.2.4
- micromatch: ^4.0.2
- pretty-format: ^26.6.2
- slash: ^3.0.0
- stack-utils: ^2.0.2
- checksum: ffe5a715591c41240b9ed4092faf10f3eaf9ddfdf25d257a0c9f903aaa8d9eed5baa7e38016d2ec4f610fd29225e0f5231a91153e087a043e62824972c83d015
+ checksum: 9e17bce282e74bdbba2ce5475c490e0bba4f464cd42132bfc5df0337e0853af4dba925c7f4f61cbb0a4818fa121d28d7ff0196ec8829773a22fce59a822976d2
languageName: node
linkType: hard
@@ -10935,16 +9824,6 @@ __metadata:
languageName: node
linkType: hard
-"jest-mock@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-mock@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- "@types/node": "*"
- checksum: 6c0fe028ff0cdc87b5d63b9ca749af04cae6c5577aaab234f602e546cae3f4b932adac9d77e6de2abb24955ee00978e1e5d5a861725654e2f9a42317d91fbc1f
- languageName: node
- linkType: hard
-
"jest-mock@npm:^29.6.3":
version: 29.6.3
resolution: "jest-mock@npm:29.6.3"
@@ -10968,13 +9847,6 @@ __metadata:
languageName: node
linkType: hard
-"jest-regex-util@npm:^26.0.0":
- version: 26.0.0
- resolution: "jest-regex-util@npm:26.0.0"
- checksum: 930a00665e8dfbedc29140678b4a54f021b41b895cf35050f76f557c1da3ac48ff42dd7b18ba2ccba6f4e518c6445d6753730d03ec7049901b93992db1ef0483
- languageName: node
- linkType: hard
-
"jest-regex-util@npm:^29.6.3":
version: 29.6.3
resolution: "jest-regex-util@npm:29.6.3"
@@ -10982,164 +9854,72 @@ __metadata:
languageName: node
linkType: hard
-"jest-resolve-dependencies@npm:^26.6.3":
- version: 26.6.3
- resolution: "jest-resolve-dependencies@npm:26.6.3"
- dependencies:
- "@jest/types": ^26.6.2
- jest-regex-util: ^26.0.0
- jest-snapshot: ^26.6.2
- checksum: 533ea1e271426006ff02c03c9802b108fcd68f2144615b6110ae59f3a0a2cc4a7abb3f44c3c65299c76b3a725d5d8220aaed9c58b79c8c8c508c18699a96e3f7
- languageName: node
- linkType: hard
-
-"jest-resolve-dependencies@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-resolve-dependencies@npm:29.6.3"
+"jest-resolve-dependencies@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-resolve-dependencies@npm:29.6.4"
dependencies:
jest-regex-util: ^29.6.3
- jest-snapshot: ^29.6.3
- checksum: db0e57158cc085926f1e0dd63919cc78b87dc7e5644cd40f6b4b0bdcc228f3872b5520477db9a67889f4bcf658c5b85303fef89eee1df60d02a662c356021c2f
+ jest-snapshot: ^29.6.4
+ checksum: 34f81d22cbd72203130cc14cbb66d5783d9f59fba4d366b9653f8fb4f6feeaac25d89696f2f77c700659843d5440dc92f58ad443ba05da1da46c39234866d916
languageName: node
linkType: hard
-"jest-resolve@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-resolve@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- chalk: ^4.0.0
- graceful-fs: ^4.2.4
- jest-pnp-resolver: ^1.2.2
- jest-util: ^26.6.2
- read-pkg-up: ^7.0.1
- resolve: ^1.18.1
- slash: ^3.0.0
- checksum: d6264d3f39b098753802a237c8c54f3109f5f3b3b7fa6f8d7aec7dca01b357ddf518ce1c33a68454357c15f48fb3c6026a92b9c4f5d72f07e24e80f04bcc8d58
- languageName: node
- linkType: hard
-
-"jest-resolve@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-resolve@npm:29.6.3"
+"jest-resolve@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-resolve@npm:29.6.4"
dependencies:
chalk: ^4.0.0
graceful-fs: ^4.2.9
- jest-haste-map: ^29.6.3
+ jest-haste-map: ^29.6.4
jest-pnp-resolver: ^1.2.2
jest-util: ^29.6.3
jest-validate: ^29.6.3
resolve: ^1.20.0
resolve.exports: ^2.0.0
slash: ^3.0.0
- checksum: 94594aab55b957e4f13fec248a18c99a6d8eb4842aa33ea5ef77179604df206d3fff1c59393a8984f179d0a7c6b98322d260b356076cdc2e74f2ebf1d9fba74a
+ checksum: 5f0ef260aec79ef00e16e0ba7b27d527054e1faed08a144279cd191b5c5b71af67c52b9ddfd24aa2f563d254618ce9bf7519809f23fb2abf6c4fa375503caa28
languageName: node
linkType: hard
-"jest-runner@npm:^26.6.3":
- version: 26.6.3
- resolution: "jest-runner@npm:26.6.3"
- dependencies:
- "@jest/console": ^26.6.2
- "@jest/environment": ^26.6.2
- "@jest/test-result": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/node": "*"
- chalk: ^4.0.0
- emittery: ^0.7.1
- exit: ^0.1.2
- graceful-fs: ^4.2.4
- jest-config: ^26.6.3
- jest-docblock: ^26.0.0
- jest-haste-map: ^26.6.2
- jest-leak-detector: ^26.6.2
- jest-message-util: ^26.6.2
- jest-resolve: ^26.6.2
- jest-runtime: ^26.6.3
- jest-util: ^26.6.2
- jest-worker: ^26.6.2
- source-map-support: ^0.5.6
- throat: ^5.0.0
- checksum: ccd69918baa49a5efa45985cf60cfa1fbb1686b32d7a86296b7b55f89684e36d1f08e62598c4b7be7e81f2cf2e245d1a65146ea7bdcaedfa6ed176d3e645d7e2
- languageName: node
- linkType: hard
-
-"jest-runner@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-runner@npm:29.6.3"
+"jest-runner@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-runner@npm:29.6.4"
dependencies:
- "@jest/console": ^29.6.3
- "@jest/environment": ^29.6.3
- "@jest/test-result": ^29.6.3
- "@jest/transform": ^29.6.3
+ "@jest/console": ^29.6.4
+ "@jest/environment": ^29.6.4
+ "@jest/test-result": ^29.6.4
+ "@jest/transform": ^29.6.4
"@jest/types": ^29.6.3
"@types/node": "*"
chalk: ^4.0.0
emittery: ^0.13.1
graceful-fs: ^4.2.9
jest-docblock: ^29.6.3
- jest-environment-node: ^29.6.3
- jest-haste-map: ^29.6.3
+ jest-environment-node: ^29.6.4
+ jest-haste-map: ^29.6.4
jest-leak-detector: ^29.6.3
jest-message-util: ^29.6.3
- jest-resolve: ^29.6.3
- jest-runtime: ^29.6.3
+ jest-resolve: ^29.6.4
+ jest-runtime: ^29.6.4
jest-util: ^29.6.3
- jest-watcher: ^29.6.3
- jest-worker: ^29.6.3
+ jest-watcher: ^29.6.4
+ jest-worker: ^29.6.4
p-limit: ^3.1.0
source-map-support: 0.5.13
- checksum: 9f10100f1a558ec78d24e131494d9b3736633f788f3edcd30dbce7257c0cee6f62fec08ab99dbb684ddcc7dbb5ca846711b140ca6090a9547c5900a0e3da53f8
+ checksum: ca977dd30262171fe000de8407a3187c16e7057ddf690bcc21068155aacd4824ee927b544e0fa9f2885948b47a5123b472da41e095e3bcbdebb79f1fa2f2fc56
languageName: node
linkType: hard
-"jest-runtime@npm:^26.6.3":
- version: 26.6.3
- resolution: "jest-runtime@npm:26.6.3"
+"jest-runtime@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-runtime@npm:29.6.4"
dependencies:
- "@jest/console": ^26.6.2
- "@jest/environment": ^26.6.2
- "@jest/fake-timers": ^26.6.2
- "@jest/globals": ^26.6.2
- "@jest/source-map": ^26.6.2
- "@jest/test-result": ^26.6.2
- "@jest/transform": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/yargs": ^15.0.0
- chalk: ^4.0.0
- cjs-module-lexer: ^0.6.0
- collect-v8-coverage: ^1.0.0
- exit: ^0.1.2
- glob: ^7.1.3
- graceful-fs: ^4.2.4
- jest-config: ^26.6.3
- jest-haste-map: ^26.6.2
- jest-message-util: ^26.6.2
- jest-mock: ^26.6.2
- jest-regex-util: ^26.0.0
- jest-resolve: ^26.6.2
- jest-snapshot: ^26.6.2
- jest-util: ^26.6.2
- jest-validate: ^26.6.2
- slash: ^3.0.0
- strip-bom: ^4.0.0
- yargs: ^15.4.1
- bin:
- jest-runtime: bin/jest-runtime.js
- checksum: 867922b49f9ab4cf2f5f1356ac3d9962c4477c7a2ff696cc841ea4c600ea389e7d6dfcbf945fec6849e606f81980addf31e4f34d63eaa3d3415f4901de2f605a
- languageName: node
- linkType: hard
-
-"jest-runtime@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-runtime@npm:29.6.3"
- dependencies:
- "@jest/environment": ^29.6.3
- "@jest/fake-timers": ^29.6.3
- "@jest/globals": ^29.6.3
+ "@jest/environment": ^29.6.4
+ "@jest/fake-timers": ^29.6.4
+ "@jest/globals": ^29.6.4
"@jest/source-map": ^29.6.3
- "@jest/test-result": ^29.6.3
- "@jest/transform": ^29.6.3
+ "@jest/test-result": ^29.6.4
+ "@jest/transform": ^29.6.4
"@jest/types": ^29.6.3
"@types/node": "*"
chalk: ^4.0.0
@@ -11147,92 +9927,44 @@ __metadata:
collect-v8-coverage: ^1.0.0
glob: ^7.1.3
graceful-fs: ^4.2.9
- jest-haste-map: ^29.6.3
+ jest-haste-map: ^29.6.4
jest-message-util: ^29.6.3
jest-mock: ^29.6.3
jest-regex-util: ^29.6.3
- jest-resolve: ^29.6.3
- jest-snapshot: ^29.6.3
+ jest-resolve: ^29.6.4
+ jest-snapshot: ^29.6.4
jest-util: ^29.6.3
slash: ^3.0.0
strip-bom: ^4.0.0
- checksum: 8743c61a2354dbce87282bfcbc11049f7d30d25ecd5f475ce56c1b7d926debb21b04db284d4d65a14283893a696442c66e923b35742fb02cc9f940a0a41ca49e
- languageName: node
- linkType: hard
-
-"jest-serializer@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-serializer@npm:26.6.2"
- dependencies:
- "@types/node": "*"
- graceful-fs: ^4.2.4
- checksum: dbecfb0d01462fe486a0932cf1680cf6abb204c059db2a8f72c6c2a7c9842a82f6d256874112774cea700764ed8f38fc9e3db982456c138d87353e3390e746fe
- languageName: node
- linkType: hard
-
-"jest-snapshot@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-snapshot@npm:26.6.2"
- dependencies:
- "@babel/types": ^7.0.0
- "@jest/types": ^26.6.2
- "@types/babel__traverse": ^7.0.4
- "@types/prettier": ^2.0.0
- chalk: ^4.0.0
- expect: ^26.6.2
- graceful-fs: ^4.2.4
- jest-diff: ^26.6.2
- jest-get-type: ^26.3.0
- jest-haste-map: ^26.6.2
- jest-matcher-utils: ^26.6.2
- jest-message-util: ^26.6.2
- jest-resolve: ^26.6.2
- natural-compare: ^1.4.0
- pretty-format: ^26.6.2
- semver: ^7.3.2
- checksum: 53f1de055b1d3840bc6e851fd674d5991b844d4695dadbd07354c93bf191048d8767b8606999847e97c4214a485b9afb45c1d2411772befa1870414ac973b3e2
+ checksum: 93deacd06f8f2bb808dbfb8acbcbc0b724187b3d3fffafd497a32c939bf385ca21f5a3f03eebd5b958a0e93865d0e68a0db73bd0fe16dafbd5e922558aa7b359
languageName: node
linkType: hard
-"jest-snapshot@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-snapshot@npm:29.6.3"
+"jest-snapshot@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-snapshot@npm:29.6.4"
dependencies:
"@babel/core": ^7.11.6
"@babel/generator": ^7.7.2
"@babel/plugin-syntax-jsx": ^7.7.2
"@babel/plugin-syntax-typescript": ^7.7.2
"@babel/types": ^7.3.3
- "@jest/expect-utils": ^29.6.3
- "@jest/transform": ^29.6.3
+ "@jest/expect-utils": ^29.6.4
+ "@jest/transform": ^29.6.4
"@jest/types": ^29.6.3
babel-preset-current-node-syntax: ^1.0.0
chalk: ^4.0.0
- expect: ^29.6.3
+ expect: ^29.6.4
graceful-fs: ^4.2.9
- jest-diff: ^29.6.3
+ jest-diff: ^29.6.4
jest-get-type: ^29.6.3
- jest-matcher-utils: ^29.6.3
+ jest-matcher-utils: ^29.6.4
jest-message-util: ^29.6.3
jest-util: ^29.6.3
natural-compare: ^1.4.0
pretty-format: ^29.6.3
semver: ^7.5.3
- checksum: c63631d2c18adc678455b9aa6e569cb1ea227e97aaa8628e154b39c95ca626d89e88d62c82e07d66cc83a1fddda1f7153506dd0f49d3411bbbecb52272ed72f5
- languageName: node
- linkType: hard
-
-"jest-util@npm:^26.1.0, jest-util@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-util@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- "@types/node": "*"
- chalk: ^4.0.0
- graceful-fs: ^4.2.4
- is-ci: ^2.0.0
- micromatch: ^4.0.2
- checksum: 3c6a5fba05c4c6892cd3a9f66196ea8867087b77a5aa1a3f6cd349c785c3f1ca24abfd454664983aed1a165cab7846688e44fe8630652d666ba326b08625bc3d
+ checksum: 0c9b5ec640457fb780ac6c9b6caa814436e9e16bf744772eee3bfd055ae5f7a3085a6a09b2f30910e31915dafc3955d92357cc98189e4d5dcb417b5fdafda6e3
languageName: node
linkType: hard
@@ -11250,20 +9982,6 @@ __metadata:
languageName: node
linkType: hard
-"jest-validate@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-validate@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- camelcase: ^6.0.0
- chalk: ^4.0.0
- jest-get-type: ^26.3.0
- leven: ^3.1.0
- pretty-format: ^26.6.2
- checksum: bac11d6586d9b8885328a4a66eec45b692e45ac23034a5c09eb0ee32de324f2d3d52b073e0c34e9c222b3642b083d1152a736cf24c52109e4957537d731ca62b
- languageName: node
- linkType: hard
-
"jest-validate@npm:^29.6.3":
version: 29.6.3
resolution: "jest-validate@npm:29.6.3"
@@ -11278,26 +9996,11 @@ __metadata:
languageName: node
linkType: hard
-"jest-watcher@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-watcher@npm:26.6.2"
+"jest-watcher@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-watcher@npm:29.6.4"
dependencies:
- "@jest/test-result": ^26.6.2
- "@jest/types": ^26.6.2
- "@types/node": "*"
- ansi-escapes: ^4.2.1
- chalk: ^4.0.0
- jest-util: ^26.6.2
- string-length: ^4.0.1
- checksum: 401137f1a73bf23cdf390019ebffb3f6f89c53ca49d48252d1dd6daf17a68787fef75cc55a623de28b63d87d0e8f13d8972d7dd06740f2f64f7b2a0409d119d2
- languageName: node
- linkType: hard
-
-"jest-watcher@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-watcher@npm:29.6.3"
- dependencies:
- "@jest/test-result": ^29.6.3
+ "@jest/test-result": ^29.6.4
"@jest/types": ^29.6.3
"@types/node": "*"
ansi-escapes: ^4.2.1
@@ -11305,18 +10008,7 @@ __metadata:
emittery: ^0.13.1
jest-util: ^29.6.3
string-length: ^4.0.1
- checksum: d31ab2076342d45959d5a7d9fdd88c0c5d52c2ea6fb3b1eabe7f8c28177d90355331beb4d844e171ed9e0341a2da901b7eefaa122505ba0f0ac88e58d29b3374
- languageName: node
- linkType: hard
-
-"jest-worker@npm:^26.6.2":
- version: 26.6.2
- resolution: "jest-worker@npm:26.6.2"
- dependencies:
- "@types/node": "*"
- merge-stream: ^2.0.0
- supports-color: ^7.0.0
- checksum: f9afa3b88e3f12027901e4964ba3ff048285b5783b5225cab28fac25b4058cea8ad54001e9a1577ee2bed125fac3ccf5c80dc507b120300cc1bbcb368796533e
+ checksum: 13c0f96f7e9212e4f3ef2daf3e787045bdcec414061bf286eca934c7f4083fb04d38df9ced9c0edfbe15f3521ca581eb2ed6108c338a0db1f3e1def65687992f
languageName: node
linkType: hard
@@ -11331,39 +10023,26 @@ __metadata:
languageName: node
linkType: hard
-"jest-worker@npm:^29.6.3":
- version: 29.6.3
- resolution: "jest-worker@npm:29.6.3"
+"jest-worker@npm:^29.6.4":
+ version: 29.6.4
+ resolution: "jest-worker@npm:29.6.4"
dependencies:
"@types/node": "*"
jest-util: ^29.6.3
merge-stream: ^2.0.0
supports-color: ^8.0.0
- checksum: 8ffb24a2d4c70ed3032034a2601defccc19353d854d89459f58793c6c8f170f88038c6722073c8047c5734c8ec8d4902ebc955f4f7acb433c2499adf616388fc
+ checksum: 05d19a5759ebfeb964036065be55ad8d8e8ddffa85d9b3a4c0b95765695efb1d8226ec824a4d8e660c38cda3389bfeb98d819f47232acf9fb0e79f553b7c0a76
languageName: node
linkType: hard
-"jest@npm:^26.0.0":
- version: 26.6.3
- resolution: "jest@npm:26.6.3"
+"jest@npm:^29, jest@npm:^29.2.0":
+ version: 29.6.4
+ resolution: "jest@npm:29.6.4"
dependencies:
- "@jest/core": ^26.6.3
- import-local: ^3.0.2
- jest-cli: ^26.6.3
- bin:
- jest: bin/jest.js
- checksum: 3a9b4c70e9bd5391e7367a0036045c1d3545c2a39e1439a71fb4b59b1748bc34e2ccb324faa1046b99bffc8dc2ed7b3c59016c462255b2646f5fa9300351f914
- languageName: node
- linkType: hard
-
-"jest@npm:^29.2.0":
- version: 29.6.3
- resolution: "jest@npm:29.6.3"
- dependencies:
- "@jest/core": ^29.6.3
+ "@jest/core": ^29.6.4
"@jest/types": ^29.6.3
import-local: ^3.0.2
- jest-cli: ^29.6.3
+ jest-cli: ^29.6.4
peerDependencies:
node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
peerDependenciesMeta:
@@ -11371,7 +10050,7 @@ __metadata:
optional: true
bin:
jest: bin/jest.js
- checksum: dd4f53fb84f28b665b47c628222e5d3b624e9e0afa79b22afceef4f2a53dc0d8f0edd7ca254917ace5c94c3a7bf58c108563234c4fe34e86c679ce99633cfbe6
+ checksum: ba28ca7a86d029bcd742bb254c0c8d0119c1e002ddae128ff6409ebabc0b29c36f69dbf3fdd326aff16e7b2500c9a918bbc6a9a5db4d966e035127242239439f
languageName: node
linkType: hard
@@ -11405,46 +10084,6 @@ __metadata:
languageName: node
linkType: hard
-"jsdom@npm:^16.4.0":
- version: 16.7.0
- resolution: "jsdom@npm:16.7.0"
- dependencies:
- abab: ^2.0.5
- acorn: ^8.2.4
- acorn-globals: ^6.0.0
- cssom: ^0.4.4
- cssstyle: ^2.3.0
- data-urls: ^2.0.0
- decimal.js: ^10.2.1
- domexception: ^2.0.1
- escodegen: ^2.0.0
- form-data: ^3.0.0
- html-encoding-sniffer: ^2.0.1
- http-proxy-agent: ^4.0.1
- https-proxy-agent: ^5.0.0
- is-potential-custom-element-name: ^1.0.1
- nwsapi: ^2.2.0
- parse5: 6.0.1
- saxes: ^5.0.1
- symbol-tree: ^3.2.4
- tough-cookie: ^4.0.0
- w3c-hr-time: ^1.0.2
- w3c-xmlserializer: ^2.0.0
- webidl-conversions: ^6.1.0
- whatwg-encoding: ^1.0.5
- whatwg-mimetype: ^2.3.0
- whatwg-url: ^8.5.0
- ws: ^7.4.6
- xml-name-validator: ^3.0.0
- peerDependencies:
- canvas: ^2.5.0
- peerDependenciesMeta:
- canvas:
- optional: true
- checksum: 454b83371857000763ed31130a049acd1b113e3b927e6dcd75c67ddc30cdd242d7ebcac5c2294b7a1a6428155cb1398709c573b3c6d809218692ea68edd93370
- languageName: node
- linkType: hard
-
"jsdom@npm:^20.0.0":
version: 20.0.3
resolution: "jsdom@npm:20.0.3"
@@ -11502,6 +10141,13 @@ __metadata:
languageName: node
linkType: hard
+"json-buffer@npm:3.0.1":
+ version: 3.0.1
+ resolution: "json-buffer@npm:3.0.1"
+ checksum: 9026b03edc2847eefa2e37646c579300a1f3a4586cfb62bf857832b60c852042d0d6ae55d1afb8926163fa54c2b01d83ae24705f34990348bdac6273a29d4581
+ languageName: node
+ linkType: hard
+
"json-parse-better-errors@npm:^1.0.1":
version: 1.0.2
resolution: "json-parse-better-errors@npm:1.0.2"
@@ -11589,7 +10235,7 @@ __metadata:
languageName: node
linkType: hard
-"json5@npm:2.x, json5@npm:^2.1.1, json5@npm:^2.1.2, json5@npm:^2.2.2, json5@npm:^2.2.3":
+"json5@npm:^2.1.1, json5@npm:^2.1.2, json5@npm:^2.2.2, json5@npm:^2.2.3":
version: 2.2.3
resolution: "json5@npm:2.2.3"
bin:
@@ -11657,32 +10303,16 @@ __metadata:
languageName: node
linkType: hard
-"kind-of@npm:^3.0.2, kind-of@npm:^3.0.3, kind-of@npm:^3.2.0":
- version: 3.2.2
- resolution: "kind-of@npm:3.2.2"
+"keyv@npm:^4.5.3":
+ version: 4.5.3
+ resolution: "keyv@npm:4.5.3"
dependencies:
- is-buffer: ^1.1.5
- checksum: e898df8ca2f31038f27d24f0b8080da7be274f986bc6ed176f37c77c454d76627619e1681f6f9d2e8d2fd7557a18ecc419a6bb54e422abcbb8da8f1a75e4b386
- languageName: node
- linkType: hard
-
-"kind-of@npm:^4.0.0":
- version: 4.0.0
- resolution: "kind-of@npm:4.0.0"
- dependencies:
- is-buffer: ^1.1.5
- checksum: 1b9e7624a8771b5a2489026e820f3bbbcc67893e1345804a56b23a91e9069965854d2a223a7c6ee563c45be9d8c6ff1ef87f28ed5f0d1a8d00d9dcbb067c529f
- languageName: node
- linkType: hard
-
-"kind-of@npm:^5.0.0":
- version: 5.1.0
- resolution: "kind-of@npm:5.1.0"
- checksum: f2a0102ae0cf19c4a953397e552571bad2b588b53282874f25fca7236396e650e2db50d41f9f516bd402536e4df968dbb51b8e69e4d5d4a7173def78448f7bab
+ json-buffer: 3.0.1
+ checksum: 3ffb4d5b72b6b4b4af443bbb75ca2526b23c750fccb5ac4c267c6116888b4b65681015c2833cb20d26cf3e6e32dac6b988c77f7f022e1a571b7d90f1442257da
languageName: node
linkType: hard
-"kind-of@npm:^6.0.0, kind-of@npm:^6.0.2, kind-of@npm:^6.0.3":
+"kind-of@npm:^6.0.2, kind-of@npm:^6.0.3":
version: 6.0.3
resolution: "kind-of@npm:6.0.3"
checksum: 3ab01e7b1d440b22fe4c31f23d8d38b4d9b91d9f291df683476576493d5dfd2e03848a8b05813dd0c3f0e835bc63f433007ddeceb71f05cb25c45ae1b19c6d3b
@@ -11917,14 +10547,14 @@ __metadata:
linkType: hard
"lib0@npm:^0.2.31, lib0@npm:^0.2.42, lib0@npm:^0.2.52, lib0@npm:^0.2.74":
- version: 0.2.82
- resolution: "lib0@npm:0.2.82"
+ version: 0.2.83
+ resolution: "lib0@npm:0.2.83"
dependencies:
isomorphic.js: ^0.2.4
bin:
0gentesthtml: bin/gentesthtml.js
0serve: bin/0serve.js
- checksum: 86316afe6f89674febfa3acd695e931290effbcaa61784fc916dc3c241247edd242e70f3b7154b1fcfa4fc4015c70f3946de3a56ac3a6aca5897ff7122e92d33
+ checksum: 2c05609146b25c14a72c99683f6f71e10c74b60be39618f25117d3f03a2435b6d6219876641fa019fe1acde7fdfa75dc3eb3a23e37c9ae30eae7be05225e2263
languageName: node
linkType: hard
@@ -12109,7 +10739,7 @@ __metadata:
languageName: node
linkType: hard
-"lodash@npm:4.x, lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4, lodash@npm:^4.7.0":
+"lodash@npm:^4.17.15, lodash@npm:^4.17.20, lodash@npm:^4.17.21, lodash@npm:^4.17.4, lodash@npm:^4.7.0":
version: 4.17.21
resolution: "lodash@npm:4.17.21"
checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7
@@ -12284,13 +10914,6 @@ __metadata:
languageName: node
linkType: hard
-"map-cache@npm:^0.2.2":
- version: 0.2.2
- resolution: "map-cache@npm:0.2.2"
- checksum: 3067cea54285c43848bb4539f978a15dedc63c03022abeec6ef05c8cb6829f920f13b94bcaf04142fc6a088318e564c4785704072910d120d55dbc2e0c421969
- languageName: node
- linkType: hard
-
"map-obj@npm:^1.0.0":
version: 1.0.1
resolution: "map-obj@npm:1.0.1"
@@ -12305,15 +10928,6 @@ __metadata:
languageName: node
linkType: hard
-"map-visit@npm:^1.0.0":
- version: 1.0.0
- resolution: "map-visit@npm:1.0.0"
- dependencies:
- object-visit: ^1.0.0
- checksum: c27045a5021c344fc19b9132eb30313e441863b2951029f8f8b66f79d3d8c1e7e5091578075a996f74e417479506fe9ede28c44ca7bc351a61c9d8073daec36a
- languageName: node
- linkType: hard
-
"markdown-to-jsx@npm:^7.3.2":
version: 7.3.2
resolution: "markdown-to-jsx@npm:7.3.2"
@@ -12734,28 +11348,7 @@ __metadata:
languageName: node
linkType: hard
-"micromatch@npm:^3.1.4":
- version: 3.1.10
- resolution: "micromatch@npm:3.1.10"
- dependencies:
- arr-diff: ^4.0.0
- array-unique: ^0.3.2
- braces: ^2.3.1
- define-property: ^2.0.2
- extend-shallow: ^3.0.2
- extglob: ^2.0.4
- fragment-cache: ^0.2.1
- kind-of: ^6.0.2
- nanomatch: ^1.2.9
- object.pick: ^1.3.0
- regex-not: ^1.0.0
- snapdragon: ^0.8.1
- to-regex: ^3.0.2
- checksum: ad226cba4daa95b4eaf47b2ca331c8d2e038d7b41ae7ed0697cde27f3f1d6142881ab03d4da51b65d9d315eceb5e4cdddb3fbb55f5f72cfa19cf3ea469d054dc
- languageName: node
- linkType: hard
-
-"micromatch@npm:^4.0.2, micromatch@npm:^4.0.4, micromatch@npm:^4.0.5":
+"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5":
version: 4.0.5
resolution: "micromatch@npm:4.0.5"
dependencies:
@@ -12880,7 +11473,7 @@ __metadata:
languageName: node
linkType: hard
-"minimist@npm:^1.1.1, minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6, minimist@npm:~1.2.0":
+"minimist@npm:^1.2.0, minimist@npm:^1.2.5, minimist@npm:^1.2.6, minimist@npm:~1.2.0":
version: 1.2.8
resolution: "minimist@npm:1.2.8"
checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0
@@ -13003,16 +11596,6 @@ __metadata:
languageName: node
linkType: hard
-"mixin-deep@npm:^1.2.0":
- version: 1.3.2
- resolution: "mixin-deep@npm:1.3.2"
- dependencies:
- for-in: ^1.0.2
- is-extendable: ^1.0.1
- checksum: 820d5a51fcb7479f2926b97f2c3bb223546bc915e6b3a3eb5d906dda871bba569863595424a76682f2b15718252954644f3891437cb7e3f220949bed54b1750d
- languageName: node
- linkType: hard
-
"mkdirp-infer-owner@npm:^2.0.0":
version: 2.0.0
resolution: "mkdirp-infer-owner@npm:2.0.0"
@@ -13024,7 +11607,7 @@ __metadata:
languageName: node
linkType: hard
-"mkdirp@npm:1.x, mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4":
+"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4":
version: 1.0.4
resolution: "mkdirp@npm:1.0.4"
bin:
@@ -13033,9 +11616,9 @@ __metadata:
languageName: node
linkType: hard
-"mobx-react-lite@npm:^4.0.3":
- version: 4.0.3
- resolution: "mobx-react-lite@npm:4.0.3"
+"mobx-react-lite@npm:^4.0.4":
+ version: 4.0.4
+ resolution: "mobx-react-lite@npm:4.0.4"
dependencies:
use-sync-external-store: ^1.2.0
peerDependencies:
@@ -13046,15 +11629,15 @@ __metadata:
optional: true
react-native:
optional: true
- checksum: 327151c61f6520605ce855b2972f30f4b4d9e277d546be5bf0abc663cf09f3e242193603d51d41a9e847fd359a3b9a5cfbeb89ccbb0905f04a2e1b38021d3025
+ checksum: a0104357b8db5a4d208251401d6530d47fba0ebadd9ad19f24bd687165dc8776a0b11d9155b93b4aa7f050613d44e24e94cb5a2ef309b4fb1d6aa891552b1875
languageName: node
linkType: hard
"mobx-react@npm:^9.0.0":
- version: 9.0.0
- resolution: "mobx-react@npm:9.0.0"
+ version: 9.0.1
+ resolution: "mobx-react@npm:9.0.1"
dependencies:
- mobx-react-lite: ^4.0.3
+ mobx-react-lite: ^4.0.4
peerDependencies:
mobx: ^6.9.0
react: ^16.8.0 || ^17 || ^18
@@ -13063,14 +11646,14 @@ __metadata:
optional: true
react-native:
optional: true
- checksum: 275282f5deb99c31419a92e8ff426a59825b0ac98c356a7ce333f1256961d032809136033af63ac9aab13530aa5a6a0beecfbb6ef61dd27bcfb0625da406e20c
+ checksum: b0677a6ca2f55ff5adc3b9052a511b2cd9f1f2484bd40a390f2c345936c00b1086631f2458e07efb782d2289b668dcfbbcfe84be56acf5283d95bfb9650efd98
languageName: node
linkType: hard
"mobx@npm:^6.10.0":
- version: 6.10.0
- resolution: "mobx@npm:6.10.0"
- checksum: 8279d5a978d845664fb1830ce1e7f3fcebd5809bd9be6f2cac9b190e07cf6f16b09581107cc2d1ff7097e979da758fefd9ac68db76c814b8e783e59d0b8e418c
+ version: 6.10.2
+ resolution: "mobx@npm:6.10.2"
+ checksum: 14d6f1db4e3a61c823510ea130229c96bd4958b77d81057ac1abc6a439703eaf3ea2289192ef205b4250d3adb1d83a439ad56d5e53f2b967c6e62a6bccc23d8a
languageName: node
linkType: hard
@@ -13095,13 +11678,6 @@ __metadata:
languageName: node
linkType: hard
-"ms@npm:2.0.0":
- version: 2.0.0
- resolution: "ms@npm:2.0.0"
- checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4
- languageName: node
- linkType: hard
-
"ms@npm:2.1.2":
version: 2.1.2
resolution: "ms@npm:2.1.2"
@@ -13145,25 +11721,6 @@ __metadata:
languageName: node
linkType: hard
-"nanomatch@npm:^1.2.9":
- version: 1.2.13
- resolution: "nanomatch@npm:1.2.13"
- dependencies:
- arr-diff: ^4.0.0
- array-unique: ^0.3.2
- define-property: ^2.0.2
- extend-shallow: ^3.0.2
- fragment-cache: ^0.2.1
- is-windows: ^1.0.2
- kind-of: ^6.0.2
- object.pick: ^1.3.0
- regex-not: ^1.0.0
- snapdragon: ^0.8.1
- to-regex: ^3.0.1
- checksum: 54d4166d6ef08db41252eb4e96d4109ebcb8029f0374f9db873bd91a1f896c32ec780d2a2ea65c0b2d7caf1f28d5e1ea33746a470f32146ac8bba821d80d38d8
- languageName: node
- linkType: hard
-
"napi-macros@npm:~2.0.0":
version: 2.0.0
resolution: "napi-macros@npm:2.0.0"
@@ -13223,8 +11780,8 @@ __metadata:
linkType: hard
"node-fetch@npm:^2.6.0, node-fetch@npm:^2.6.7":
- version: 2.6.13
- resolution: "node-fetch@npm:2.6.13"
+ version: 2.7.0
+ resolution: "node-fetch@npm:2.7.0"
dependencies:
whatwg-url: ^5.0.0
peerDependencies:
@@ -13232,18 +11789,18 @@ __metadata:
peerDependenciesMeta:
encoding:
optional: true
- checksum: 055845ae5b4796c78c7053564745345025cf959563b3568b43c385f67d311779e6b00e5fef6ed1b79f86ba4048e4b4b722e1aa948305521b9353eb7e788912c9
+ checksum: d76d2f5edb451a3f05b15115ec89fc6be39de37c6089f1b6368df03b91e1633fd379a7e01b7ab05089a25034b2023d959b47e59759cb38d88341b2459e89d6e5
languageName: node
linkType: hard
"node-gyp-build@npm:^4.3.0":
- version: 4.6.0
- resolution: "node-gyp-build@npm:4.6.0"
+ version: 4.6.1
+ resolution: "node-gyp-build@npm:4.6.1"
bin:
node-gyp-build: bin.js
node-gyp-build-optional: optional.js
node-gyp-build-test: build-test.js
- checksum: 25d78c5ef1f8c24291f4a370c47ba52fcea14f39272041a90a7894cd50d766f7c8cb8fb06c0f42bf6f69b204b49d9be3c8fc344aac09714d5bdb95965499eb15
+ checksum: c3676d337b36803bc7792e35bf7fdcda7cdcb7e289b8f9855a5535702a82498eb976842fefcf487258c58005ca32ce3d537fbed91280b04409161dcd7232a882
languageName: node
linkType: hard
@@ -13286,20 +11843,6 @@ __metadata:
languageName: node
linkType: hard
-"node-notifier@npm:^8.0.0":
- version: 8.0.2
- resolution: "node-notifier@npm:8.0.2"
- dependencies:
- growly: ^1.3.0
- is-wsl: ^2.2.0
- semver: ^7.3.2
- shellwords: ^0.1.1
- uuid: ^8.3.0
- which: ^2.0.2
- checksum: 7db1683003f6aaa4324959dfa663cd56e301ccc0165977a9e7737989ffe3b4763297f9fc85f44d0662b63a4fd85516eda43411b492a4d2fae207afb23773f912
- languageName: node
- linkType: hard
-
"node-releases@npm:^2.0.13":
version: 2.0.13
resolution: "node-releases@npm:2.0.13"
@@ -13377,15 +11920,6 @@ __metadata:
languageName: node
linkType: hard
-"normalize-path@npm:^2.1.1":
- version: 2.1.1
- resolution: "normalize-path@npm:2.1.1"
- dependencies:
- remove-trailing-separator: ^1.0.1
- checksum: 7e9cbdcf7f5b8da7aa191fbfe33daf290cdcd8c038f422faf1b8a83c972bf7a6d94c5be34c4326cb00fb63bc0fd97d9fbcfaf2e5d6142332c2cd36d2e1b86cea
- languageName: node
- linkType: hard
-
"normalize-path@npm:^3.0.0":
version: 3.0.0
resolution: "normalize-path@npm:3.0.0"
@@ -13584,16 +12118,7 @@ __metadata:
languageName: node
linkType: hard
-"npm-run-path@npm:^2.0.0":
- version: 2.0.2
- resolution: "npm-run-path@npm:2.0.2"
- dependencies:
- path-key: ^2.0.0
- checksum: acd5ad81648ba4588ba5a8effb1d98d2b339d31be16826a118d50f182a134ac523172101b82eab1d01cb4c2ba358e857d54cfafd8163a1ffe7bd52100b741125
- languageName: node
- linkType: hard
-
-"npm-run-path@npm:^4.0.0, npm-run-path@npm:^4.0.1":
+"npm-run-path@npm:^4.0.1":
version: 4.0.1
resolution: "npm-run-path@npm:4.0.1"
dependencies:
@@ -13626,28 +12151,28 @@ __metadata:
languageName: node
linkType: hard
-"nwsapi@npm:^2.2.0, nwsapi@npm:^2.2.2":
+"nwsapi@npm:^2.2.2":
version: 2.2.7
resolution: "nwsapi@npm:2.2.7"
checksum: cab25f7983acec7e23490fec3ef7be608041b460504229770e3bfcf9977c41d6fe58f518994d3bd9aa3a101f501089a3d4a63536f4ff8ae4b8c4ca23bdbfda4e
languageName: node
linkType: hard
-"nx@npm:15.9.5, nx@npm:>=15.5.2 < 16, nx@npm:^15.9.2":
- version: 15.9.5
- resolution: "nx@npm:15.9.5"
+"nx@npm:15.9.6, nx@npm:>=15.5.2 < 16, nx@npm:^15.9.2":
+ version: 15.9.6
+ resolution: "nx@npm:15.9.6"
dependencies:
- "@nrwl/cli": 15.9.5
- "@nrwl/nx-darwin-arm64": 15.9.5
- "@nrwl/nx-darwin-x64": 15.9.5
- "@nrwl/nx-linux-arm-gnueabihf": 15.9.5
- "@nrwl/nx-linux-arm64-gnu": 15.9.5
- "@nrwl/nx-linux-arm64-musl": 15.9.5
- "@nrwl/nx-linux-x64-gnu": 15.9.5
- "@nrwl/nx-linux-x64-musl": 15.9.5
- "@nrwl/nx-win32-arm64-msvc": 15.9.5
- "@nrwl/nx-win32-x64-msvc": 15.9.5
- "@nrwl/tao": 15.9.5
+ "@nrwl/cli": 15.9.6
+ "@nrwl/nx-darwin-arm64": 15.9.6
+ "@nrwl/nx-darwin-x64": 15.9.6
+ "@nrwl/nx-linux-arm-gnueabihf": 15.9.6
+ "@nrwl/nx-linux-arm64-gnu": 15.9.6
+ "@nrwl/nx-linux-arm64-musl": 15.9.6
+ "@nrwl/nx-linux-x64-gnu": 15.9.6
+ "@nrwl/nx-linux-x64-musl": 15.9.6
+ "@nrwl/nx-win32-arm64-msvc": 15.9.6
+ "@nrwl/nx-win32-x64-msvc": 15.9.6
+ "@nrwl/tao": 15.9.6
"@parcel/watcher": 2.0.4
"@yarnpkg/lockfile": ^1.1.0
"@yarnpkg/parsers": 3.0.0-rc.46
@@ -13710,7 +12235,7 @@ __metadata:
optional: true
bin:
nx: bin/nx.js
- checksum: 57422bcf205f646ff90f6701ef18535d073355b5abdc2418366f7bcbfa055e9f8c3af529fdc7f500ce05e02b482fda49fbdb7bdc72fd2af7f616d061deb01250
+ checksum: 27ffd2559624cd0d7a40110540f8048994686c1032ac45483092bf00a3b128444236d47de9f02ae7e4830ac20763b251d430f609d7f317916057f9615ea68ac7
languageName: node
linkType: hard
@@ -13721,17 +12246,6 @@ __metadata:
languageName: node
linkType: hard
-"object-copy@npm:^0.1.0":
- version: 0.1.0
- resolution: "object-copy@npm:0.1.0"
- dependencies:
- copy-descriptor: ^0.1.0
- define-property: ^0.2.5
- kind-of: ^3.0.3
- checksum: a9e35f07e3a2c882a7e979090360d1a20ab51d1fa19dfdac3aa8873b328a7c4c7683946ee97c824ae40079d848d6740a3788fa14f2185155dab7ed970a72c783
- languageName: node
- linkType: hard
-
"object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0":
version: 1.12.3
resolution: "object-inspect@npm:1.12.3"
@@ -13756,15 +12270,6 @@ __metadata:
languageName: node
linkType: hard
-"object-visit@npm:^1.0.0":
- version: 1.0.1
- resolution: "object-visit@npm:1.0.1"
- dependencies:
- isobject: ^3.0.0
- checksum: b0ee07f5bf3bb881b881ff53b467ebbde2b37ebb38649d6944a6cd7681b32eedd99da9bd1e01c55facf81f54ed06b13af61aba6ad87f0052982995e09333f790
- languageName: node
- linkType: hard
-
"object.assign@npm:^4.1.4":
version: 4.1.4
resolution: "object.assign@npm:4.1.4"
@@ -13777,16 +12282,7 @@ __metadata:
languageName: node
linkType: hard
-"object.pick@npm:^1.3.0":
- version: 1.3.0
- resolution: "object.pick@npm:1.3.0"
- dependencies:
- isobject: ^3.0.1
- checksum: 77fb6eed57c67adf75e9901187e37af39f052ef601cb4480386436561357eb9e459e820762f01fd02c5c1b42ece839ad393717a6d1850d848ee11fbabb3e580a
- languageName: node
- linkType: hard
-
-"once@npm:^1.3.0, once@npm:^1.3.1, once@npm:^1.4.0":
+"once@npm:^1.3.0, once@npm:^1.4.0":
version: 1.4.0
resolution: "once@npm:1.4.0"
dependencies:
@@ -13853,13 +12349,6 @@ __metadata:
languageName: node
linkType: hard
-"p-each-series@npm:^2.1.0":
- version: 2.2.0
- resolution: "p-each-series@npm:2.2.0"
- checksum: 5fbe2f1f1966f55833bd401fe36f7afe410707d5e9fb6032c6dde8aa716d50521c3bb201fdb584130569b5941d5e84993e09e0b3f76a474288e0ede8f632983c
- languageName: node
- linkType: hard
-
"p-finally@npm:^1.0.0":
version: 1.0.0
resolution: "p-finally@npm:1.0.0"
@@ -14130,13 +12619,6 @@ __metadata:
languageName: node
linkType: hard
-"parse5@npm:6.0.1":
- version: 6.0.1
- resolution: "parse5@npm:6.0.1"
- checksum: 7d569a176c5460897f7c8f3377eff640d54132b9be51ae8a8fa4979af940830b2b0c296ce75e5bd8f4041520aadde13170dbdec44889975f906098ea0002f4bd
- languageName: node
- linkType: hard
-
"parse5@npm:^7.0.0, parse5@npm:^7.1.1":
version: 7.1.2
resolution: "parse5@npm:7.1.2"
@@ -14146,13 +12628,6 @@ __metadata:
languageName: node
linkType: hard
-"pascalcase@npm:^0.1.1":
- version: 0.1.1
- resolution: "pascalcase@npm:0.1.1"
- checksum: f83681c3c8ff75fa473a2bb2b113289952f802ff895d435edd717e7cb898b0408cbdb247117a938edcbc5d141020909846cc2b92c47213d764e2a94d2ad2b925
- languageName: node
- linkType: hard
-
"path-browserify@npm:^1.0.0":
version: 1.0.1
resolution: "path-browserify@npm:1.0.1"
@@ -14181,7 +12656,7 @@ __metadata:
languageName: node
linkType: hard
-"path-key@npm:^2.0.0, path-key@npm:^2.0.1":
+"path-key@npm:^2.0.1":
version: 2.0.1
resolution: "path-key@npm:2.0.1"
checksum: f7ab0ad42fe3fb8c7f11d0c4f849871e28fbd8e1add65c370e422512fc5887097b9cf34d09c1747d45c942a8c1e26468d6356e2df3f740bf177ab8ca7301ebfd
@@ -14279,7 +12754,7 @@ __metadata:
languageName: node
linkType: hard
-"pirates@npm:^4.0.1, pirates@npm:^4.0.4":
+"pirates@npm:^4.0.4":
version: 4.0.6
resolution: "pirates@npm:4.0.6"
checksum: 46a65fefaf19c6f57460388a5af9ab81e3d7fd0e7bc44ca59d753cb5c4d0df97c6c6e583674869762101836d68675f027d60f841c105d72734df9dfca97cbcc6
@@ -14302,13 +12777,6 @@ __metadata:
languageName: node
linkType: hard
-"posix-character-classes@npm:^0.1.0":
- version: 0.1.1
- resolution: "posix-character-classes@npm:0.1.1"
- checksum: dedb99913c60625a16050cfed2fb5c017648fc075be41ac18474e1c6c3549ef4ada201c8bd9bd006d36827e289c571b6092e1ef6e756cdbab2fd7046b25c6442
- languageName: node
- linkType: hard
-
"postcss-media-query-parser@npm:^0.2.3":
version: 0.2.3
resolution: "postcss-media-query-parser@npm:0.2.3"
@@ -14394,13 +12862,13 @@ __metadata:
linkType: hard
"postcss@npm:^8.3.11, postcss@npm:^8.4.19, postcss@npm:^8.4.21":
- version: 8.4.28
- resolution: "postcss@npm:8.4.28"
+ version: 8.4.29
+ resolution: "postcss@npm:8.4.29"
dependencies:
nanoid: ^3.3.6
picocolors: ^1.0.0
source-map-js: ^1.0.2
- checksum: f605c24a36f7e400bad379735fbfc893ccb8d293ad6d419bb824db77cdcb69f43d614ef35f9f7091f32ca588d130ec60dbcf53b366e6bf88a8a64bbeb3c05f6d
+ checksum: dd6daa25e781db9ae5b651d9b7bfde0ec6e60e86a37da69a18eb4773d5ddd51e28fc4ff054fbdc04636a31462e6bf09a1e50986f69ac52b10d46b7457cd36d12
languageName: node
linkType: hard
@@ -14440,19 +12908,7 @@ __metadata:
languageName: node
linkType: hard
-"pretty-format@npm:^26.0.0, pretty-format@npm:^26.6.2":
- version: 26.6.2
- resolution: "pretty-format@npm:26.6.2"
- dependencies:
- "@jest/types": ^26.6.2
- ansi-regex: ^5.0.0
- ansi-styles: ^4.0.0
- react-is: ^17.0.1
- checksum: e3b808404d7e1519f0df1aa1f25cee0054ab475775c6b2b8c5568ff23194a92d54bf93274139b6f584ca70fd773be4eaa754b0e03f12bb0a8d1426b07f079976
- languageName: node
- linkType: hard
-
-"pretty-format@npm:^29.6.3":
+"pretty-format@npm:^29.0.0, pretty-format@npm:^29.6.3":
version: 29.6.3
resolution: "pretty-format@npm:29.6.3"
dependencies:
@@ -14583,9 +13039,9 @@ __metadata:
linkType: hard
"property-information@npm:^6.0.0":
- version: 6.2.0
- resolution: "property-information@npm:6.2.0"
- checksum: 23afce07ba821cbe7d926e63cdd680991961c82be4bbb6c0b17c47f48894359c1be6e51cd74485fc10a9d3fd361b475388e1e39311ed2b53127718f72aab1955
+ version: 6.3.0
+ resolution: "property-information@npm:6.3.0"
+ checksum: bf0a15dec097fd4324a42163cabd96b90819e48ef0d8d98756ef0420b2c579bf33646fe0b6e04aa9e79f5a2b5b5860ef11655a79cd8969d8eda58df23c4f96c9
languageName: node
linkType: hard
@@ -14624,16 +13080,6 @@ __metadata:
languageName: node
linkType: hard
-"pump@npm:^3.0.0":
- version: 3.0.0
- resolution: "pump@npm:3.0.0"
- dependencies:
- end-of-stream: ^1.1.0
- once: ^1.3.1
- checksum: e42e9229fba14732593a718b04cb5e1cfef8254544870997e0ecd9732b189a48e1256e4e5478148ecb47c8511dca2b09eae56b4d0aad8009e6fac8072923cfc9
- languageName: node
- linkType: hard
-
"punycode@npm:^1.4.1":
version: 1.4.1
resolution: "punycode@npm:1.4.1"
@@ -14649,9 +13095,9 @@ __metadata:
linkType: hard
"pure-rand@npm:^6.0.0":
- version: 6.0.2
- resolution: "pure-rand@npm:6.0.2"
- checksum: 79de33876a4f515d759c48e98d00756bbd916b4ea260cc572d7adfa4b62cace9952e89f0241d0410214554503d25061140fe325c66f845213d2b1728ba8d413e
+ version: 6.0.3
+ resolution: "pure-rand@npm:6.0.3"
+ checksum: d08701cfd1528c5f9cdca996776c498c92767722561f9b8f9e62645d5025c8a3bf60b90f76f262aaab124e6bb1d58e1b0850722dbca2846a19b708801956e56b
languageName: node
linkType: hard
@@ -14662,7 +13108,7 @@ __metadata:
languageName: node
linkType: hard
-"qs@npm:^6.11.0":
+"qs@npm:^6.11.2":
version: 6.11.2
resolution: "qs@npm:6.11.2"
dependencies:
@@ -14733,13 +13179,6 @@ __metadata:
languageName: node
linkType: hard
-"react-is@npm:^17.0.1":
- version: 17.0.2
- resolution: "react-is@npm:17.0.2"
- checksum: 9d6d111d8990dc98bc5402c1266a808b0459b5d54830bbea24c12d908b536df7883f268a7868cfaedde3dd9d4e0d574db456f84d2e6df9c4526f99bb4b5344d8
- languageName: node
- linkType: hard
-
"react-is@npm:^18.0.0, react-is@npm:^18.2.0":
version: 18.2.0
resolution: "react-is@npm:18.2.0"
@@ -15080,18 +13519,8 @@ __metadata:
version: 0.15.2
resolution: "regenerator-transform@npm:0.15.2"
dependencies:
- "@babel/runtime": ^7.8.4
- checksum: 20b6f9377d65954980fe044cfdd160de98df415b4bff38fbade67b3337efaf078308c4fed943067cd759827cc8cfeca9cb28ccda1f08333b85d6a2acbd022c27
- languageName: node
- linkType: hard
-
-"regex-not@npm:^1.0.0, regex-not@npm:^1.0.2":
- version: 1.0.2
- resolution: "regex-not@npm:1.0.2"
- dependencies:
- extend-shallow: ^3.0.2
- safe-regex: ^1.1.0
- checksum: 3081403de79559387a35ef9d033740e41818a559512668cef3d12da4e8a29ef34ee13c8ed1256b07e27ae392790172e8a15c8a06b72962fd4550476cde3d8f77
+ "@babel/runtime": ^7.8.4
+ checksum: 20b6f9377d65954980fe044cfdd160de98df415b4bff38fbade67b3337efaf078308c4fed943067cd759827cc8cfeca9cb28ccda1f08333b85d6a2acbd022c27
languageName: node
linkType: hard
@@ -15205,27 +13634,6 @@ __metadata:
languageName: node
linkType: hard
-"remove-trailing-separator@npm:^1.0.1":
- version: 1.1.0
- resolution: "remove-trailing-separator@npm:1.1.0"
- checksum: d3c20b5a2d987db13e1cca9385d56ecfa1641bae143b620835ac02a6b70ab88f68f117a0021838db826c57b31373d609d52e4f31aca75fc490c862732d595419
- languageName: node
- linkType: hard
-
-"repeat-element@npm:^1.1.2":
- version: 1.1.4
- resolution: "repeat-element@npm:1.1.4"
- checksum: 1edd0301b7edad71808baad226f0890ba709443f03a698224c9ee4f2494c317892dc5211b2ba8cbea7194a9ddbcac01e283bd66de0467ab24ee1fc1a3711d8a9
- languageName: node
- linkType: hard
-
-"repeat-string@npm:^1.6.1":
- version: 1.6.1
- resolution: "repeat-string@npm:1.6.1"
- checksum: 1b809fc6db97decdc68f5b12c4d1a671c8e3f65ec4a40c238bc5200e44e85bcc52a54f78268ab9c29fcf5fe4f1343e805420056d1f30fa9a9ee4c2d93e3cc6c0
- languageName: node
- linkType: hard
-
"require-directory@npm:^2.1.1":
version: 2.1.1
resolution: "require-directory@npm:2.1.1"
@@ -15240,13 +13648,6 @@ __metadata:
languageName: node
linkType: hard
-"require-main-filename@npm:^2.0.0":
- version: 2.0.0
- resolution: "require-main-filename@npm:2.0.0"
- checksum: e9e294695fea08b076457e9ddff854e81bffbe248ed34c1eec348b7abbd22a0d02e8d75506559e2265e96978f3c4720bd77a6dad84755de8162b357eb6c778c7
- languageName: node
- linkType: hard
-
"requires-port@npm:^1.0.0":
version: 1.0.0
resolution: "requires-port@npm:1.0.0"
@@ -15277,13 +13678,6 @@ __metadata:
languageName: node
linkType: hard
-"resolve-url@npm:^0.2.1":
- version: 0.2.1
- resolution: "resolve-url@npm:0.2.1"
- checksum: 7b7035b9ed6e7bc7d289e90aef1eab5a43834539695dac6416ca6e91f1a94132ae4796bbd173cdacfdc2ade90b5f38a3fb6186bebc1b221cd157777a23b9ad14
- languageName: node
- linkType: hard
-
"resolve.exports@npm:^2.0.0":
version: 2.0.2
resolution: "resolve.exports@npm:2.0.2"
@@ -15291,7 +13685,7 @@ __metadata:
languageName: node
linkType: hard
-"resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.18.1, resolve@npm:^1.19.0, resolve@npm:^1.20.0":
+"resolve@npm:^1.10.0, resolve@npm:^1.14.2, resolve@npm:^1.19.0, resolve@npm:^1.20.0":
version: 1.22.4
resolution: "resolve@npm:1.22.4"
dependencies:
@@ -15304,7 +13698,7 @@ __metadata:
languageName: node
linkType: hard
-"resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.18.1#~builtin, resolve@patch:resolve@^1.19.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin":
+"resolve@patch:resolve@^1.10.0#~builtin, resolve@patch:resolve@^1.14.2#~builtin, resolve@patch:resolve@^1.19.0#~builtin, resolve@patch:resolve@^1.20.0#~builtin":
version: 1.22.4
resolution: "resolve@patch:resolve@npm%3A1.22.4#~builtin::version=1.22.4&hash=c3c19d"
dependencies:
@@ -15327,13 +13721,6 @@ __metadata:
languageName: node
linkType: hard
-"ret@npm:~0.1.10":
- version: 0.1.15
- resolution: "ret@npm:0.1.15"
- checksum: d76a9159eb8c946586567bd934358dfc08a36367b3257f7a3d7255fdd7b56597235af23c6afa0d7f0254159e8051f93c918809962ebd6df24ca2a83dbe4d4151
- languageName: node
- linkType: hard
-
"retry@npm:^0.12.0":
version: 0.12.0
resolution: "retry@npm:0.12.0"
@@ -15370,13 +13757,6 @@ __metadata:
languageName: node
linkType: hard
-"rsvp@npm:^4.8.4":
- version: 4.8.5
- resolution: "rsvp@npm:4.8.5"
- checksum: 2d8ef30d8febdf05bdf856ccca38001ae3647e41835ca196bc1225333f79b94ae44def733121ca549ccc36209c9b689f6586905e2a043873262609744da8efc1
- languageName: node
- linkType: hard
-
"run-async@npm:^2.4.0":
version: 2.4.1
resolution: "run-async@npm:2.4.1"
@@ -15412,14 +13792,14 @@ __metadata:
linkType: hard
"safe-array-concat@npm:^1.0.0":
- version: 1.0.0
- resolution: "safe-array-concat@npm:1.0.0"
+ version: 1.0.1
+ resolution: "safe-array-concat@npm:1.0.1"
dependencies:
call-bind: ^1.0.2
- get-intrinsic: ^1.2.0
+ get-intrinsic: ^1.2.1
has-symbols: ^1.0.3
isarray: ^2.0.5
- checksum: f43cb98fe3b566327d0c09284de2b15fb85ae964a89495c1b1a5d50c7c8ed484190f4e5e71aacc167e16231940079b326f2c0807aea633d47cc7322f40a6b57f
+ checksum: 001ecf1d8af398251cbfabaf30ed66e3855127fbceee178179524b24160b49d15442f94ed6c0db0b2e796da76bb05b73bf3cc241490ec9c2b741b41d33058581
languageName: node
linkType: hard
@@ -15448,15 +13828,6 @@ __metadata:
languageName: node
linkType: hard
-"safe-regex@npm:^1.1.0":
- version: 1.1.0
- resolution: "safe-regex@npm:1.1.0"
- dependencies:
- ret: ~0.1.10
- checksum: 9a8bba57c87a841f7997b3b951e8e403b1128c1a4fd1182f40cc1a20e2d490593d7c2a21030fadfea320c8e859219019e136f678c6689ed5960b391b822f01d5
- languageName: node
- linkType: hard
-
"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0":
version: 2.1.2
resolution: "safer-buffer@npm:2.1.2"
@@ -15464,25 +13835,6 @@ __metadata:
languageName: node
linkType: hard
-"sane@npm:^4.0.3":
- version: 4.1.0
- resolution: "sane@npm:4.1.0"
- dependencies:
- "@cnakazawa/watch": ^1.0.3
- anymatch: ^2.0.0
- capture-exit: ^2.0.0
- exec-sh: ^0.3.2
- execa: ^1.0.0
- fb-watchman: ^2.0.0
- micromatch: ^3.1.4
- minimist: ^1.1.1
- walker: ~1.0.5
- bin:
- sane: ./src/cli.js
- checksum: 97716502d456c0d38670a902a4ea943d196dcdf998d1e40532d8f3e24e25d7eddfd4c3579025a1eee8eac09a48dfd05fba61a2156c56704e7feaa450eb249f7c
- languageName: node
- linkType: hard
-
"sanitize-html@npm:~2.7.3":
version: 2.7.3
resolution: "sanitize-html@npm:2.7.3"
@@ -15497,15 +13849,6 @@ __metadata:
languageName: node
linkType: hard
-"saxes@npm:^5.0.1":
- version: 5.0.1
- resolution: "saxes@npm:5.0.1"
- dependencies:
- xmlchars: ^2.2.0
- checksum: 5636b55cf15f7cf0baa73f2797bf992bdcf75d1b39d82c0aa4608555c774368f6ac321cb641fd5f3d3ceb87805122cd47540da6a7b5960fe0dbdb8f8c263f000
- languageName: node
- linkType: hard
-
"saxes@npm:^6.0.0":
version: 6.0.0
resolution: "saxes@npm:6.0.0"
@@ -15599,23 +13942,23 @@ __metadata:
languageName: node
linkType: hard
-"semver@npm:7.x, semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.2.1, semver@npm:^7.3.2, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4":
- version: 7.5.4
- resolution: "semver@npm:7.5.4"
- dependencies:
- lru-cache: ^6.0.0
+"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1":
+ version: 6.3.1
+ resolution: "semver@npm:6.3.1"
bin:
semver: bin/semver.js
- checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3
+ checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2
languageName: node
linkType: hard
-"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1":
- version: 6.3.1
- resolution: "semver@npm:6.3.1"
+"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.2.1, semver@npm:^7.3.4, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4":
+ version: 7.5.4
+ resolution: "semver@npm:7.5.4"
+ dependencies:
+ lru-cache: ^6.0.0
bin:
semver: bin/semver.js
- checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2
+ checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3
languageName: node
linkType: hard
@@ -15635,18 +13978,6 @@ __metadata:
languageName: node
linkType: hard
-"set-value@npm:^2.0.0, set-value@npm:^2.0.1":
- version: 2.0.1
- resolution: "set-value@npm:2.0.1"
- dependencies:
- extend-shallow: ^2.0.1
- is-extendable: ^0.1.1
- is-plain-object: ^2.0.3
- split-string: ^3.0.1
- checksum: 09a4bc72c94641aeae950eb60dc2755943b863780fcc32e441eda964b64df5e3f50603d5ebdd33394ede722528bd55ed43aae26e9df469b4d32e2292b427b601
- languageName: node
- linkType: hard
-
"shallow-clone@npm:^3.0.0":
version: 3.0.1
resolution: "shallow-clone@npm:3.0.1"
@@ -15695,13 +14026,6 @@ __metadata:
languageName: node
linkType: hard
-"shellwords@npm:^0.1.1":
- version: 0.1.1
- resolution: "shellwords@npm:0.1.1"
- checksum: 8d73a5e9861f5e5f1068e2cfc39bc0002400fe58558ab5e5fa75630d2c3adf44ca1fac81957609c8320d5533e093802fcafc72904bf1a32b95de3c19a0b1c0d4
- languageName: node
- linkType: hard
-
"side-channel@npm:^1.0.4":
version: 1.0.4
resolution: "side-channel@npm:1.0.4"
@@ -15713,7 +14037,7 @@ __metadata:
languageName: node
linkType: hard
-"signal-exit@npm:3.0.7, signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7":
+"signal-exit@npm:3.0.7, signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7":
version: 3.0.7
resolution: "signal-exit@npm:3.0.7"
checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318
@@ -15783,42 +14107,6 @@ __metadata:
languageName: node
linkType: hard
-"snapdragon-node@npm:^2.0.1":
- version: 2.1.1
- resolution: "snapdragon-node@npm:2.1.1"
- dependencies:
- define-property: ^1.0.0
- isobject: ^3.0.0
- snapdragon-util: ^3.0.1
- checksum: 9bb57d759f9e2a27935dbab0e4a790137adebace832b393e350a8bf5db461ee9206bb642d4fe47568ee0b44080479c8b4a9ad0ebe3712422d77edf9992a672fd
- languageName: node
- linkType: hard
-
-"snapdragon-util@npm:^3.0.1":
- version: 3.0.1
- resolution: "snapdragon-util@npm:3.0.1"
- dependencies:
- kind-of: ^3.2.0
- checksum: 684997dbe37ec995c03fd3f412fba2b711fc34cb4010452b7eb668be72e8811a86a12938b511e8b19baf853b325178c56d8b78d655305e5cfb0bb8b21677e7b7
- languageName: node
- linkType: hard
-
-"snapdragon@npm:^0.8.1":
- version: 0.8.2
- resolution: "snapdragon@npm:0.8.2"
- dependencies:
- base: ^0.11.1
- debug: ^2.2.0
- define-property: ^0.2.5
- extend-shallow: ^2.0.1
- map-cache: ^0.2.2
- source-map: ^0.5.6
- source-map-resolve: ^0.5.0
- use: ^3.1.0
- checksum: a197f242a8f48b11036563065b2487e9b7068f50a20dd81d9161eca6af422174fc158b8beeadbe59ce5ef172aa5718143312b3aebaae551c124b7824387c8312
- languageName: node
- linkType: hard
-
"socks-proxy-agent@npm:^7.0.0":
version: 7.0.0
resolution: "socks-proxy-agent@npm:7.0.0"
@@ -15878,19 +14166,6 @@ __metadata:
languageName: node
linkType: hard
-"source-map-resolve@npm:^0.5.0":
- version: 0.5.3
- resolution: "source-map-resolve@npm:0.5.3"
- dependencies:
- atob: ^2.1.2
- decode-uri-component: ^0.2.0
- resolve-url: ^0.2.1
- source-map-url: ^0.4.0
- urix: ^0.1.0
- checksum: c73fa44ac00783f025f6ad9e038ab1a2e007cd6a6b86f47fe717c3d0765b4a08d264f6966f3bd7cd9dbcd69e4832783d5472e43247775b2a550d6f2155d24bae
- languageName: node
- linkType: hard
-
"source-map-support@npm:0.5.13":
version: 0.5.13
resolution: "source-map-support@npm:0.5.13"
@@ -15901,7 +14176,7 @@ __metadata:
languageName: node
linkType: hard
-"source-map-support@npm:^0.5.6, source-map-support@npm:~0.5.20":
+"source-map-support@npm:~0.5.20":
version: 0.5.21
resolution: "source-map-support@npm:0.5.21"
dependencies:
@@ -15911,14 +14186,7 @@ __metadata:
languageName: node
linkType: hard
-"source-map-url@npm:^0.4.0":
- version: 0.4.1
- resolution: "source-map-url@npm:0.4.1"
- checksum: 64c5c2c77aff815a6e61a4120c309ae4cac01298d9bcbb3deb1b46a4dd4c46d4a1eaeda79ec9f684766ae80e8dc86367b89326ce9dd2b89947bd9291fc1ac08c
- languageName: node
- linkType: hard
-
-"source-map@npm:^0.5.6, source-map@npm:^0.5.7":
+"source-map@npm:^0.5.7":
version: 0.5.7
resolution: "source-map@npm:0.5.7"
checksum: 5dc2043b93d2f194142c7f38f74a24670cd7a0063acdaf4bf01d2964b402257ae843c2a8fa822ad5b71013b5fcafa55af7421383da919752f22ff488bc553f4d
@@ -15932,13 +14200,6 @@ __metadata:
languageName: node
linkType: hard
-"source-map@npm:^0.7.3":
- version: 0.7.4
- resolution: "source-map@npm:0.7.4"
- checksum: 01cc5a74b1f0e1d626a58d36ad6898ea820567e87f18dfc9d24a9843a351aaa2ec09b87422589906d6ff1deed29693e176194dc88bcae7c9a852dc74b311dbf5
- languageName: node
- linkType: hard
-
"space-separated-tokens@npm:^1.0.0":
version: 1.1.5
resolution: "space-separated-tokens@npm:1.1.5"
@@ -15987,15 +14248,6 @@ __metadata:
languageName: node
linkType: hard
-"split-string@npm:^3.0.1, split-string@npm:^3.0.2":
- version: 3.1.0
- resolution: "split-string@npm:3.1.0"
- dependencies:
- extend-shallow: ^3.0.0
- checksum: ae5af5c91bdc3633628821bde92fdf9492fa0e8a63cf6a0376ed6afde93c701422a1610916f59be61972717070119e848d10dfbbd5024b7729d6a71972d2a84c
- languageName: node
- linkType: hard
-
"split2@npm:^3.0.0":
version: 3.2.2
resolution: "split2@npm:3.2.2"
@@ -16039,7 +14291,7 @@ __metadata:
languageName: node
linkType: hard
-"stack-utils@npm:^2.0.2, stack-utils@npm:^2.0.3":
+"stack-utils@npm:^2.0.3":
version: 2.0.6
resolution: "stack-utils@npm:2.0.6"
dependencies:
@@ -16048,16 +14300,6 @@ __metadata:
languageName: node
linkType: hard
-"static-extend@npm:^0.1.1":
- version: 0.1.2
- resolution: "static-extend@npm:0.1.2"
- dependencies:
- define-property: ^0.2.5
- object-copy: ^0.1.0
- checksum: 8657485b831f79e388a437260baf22784540417a9b29e11572c87735df24c22b84eda42107403a64b30861b2faf13df9f7fc5525d51f9d1d2303aba5cbf4e12c
- languageName: node
- linkType: hard
-
"string-length@npm:^4.0.1":
version: 4.0.2
resolution: "string-length@npm:4.0.2"
@@ -16091,46 +14333,46 @@ __metadata:
linkType: hard
"string.prototype.padend@npm:^3.0.0":
- version: 3.1.4
- resolution: "string.prototype.padend@npm:3.1.4"
+ version: 3.1.5
+ resolution: "string.prototype.padend@npm:3.1.5"
dependencies:
call-bind: ^1.0.2
- define-properties: ^1.1.4
- es-abstract: ^1.20.4
- checksum: 76e07238fe31dc12177428f0436b7ed6985f6a7ba97470fd53e4f0a6d9860bfee127d81957f3073cc879b434233df143825d140581e1340278053ad993c92f6c
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: fc915e0b6ae1dce07a9f5088429d84fda2c1c0ac9a05bc14a602f173cc2fdef32e4893dfba5656f8f955450c9c16deebdb8d303d27613a367bc6d8508a94cd5e
languageName: node
linkType: hard
"string.prototype.trim@npm:^1.2.7":
- version: 1.2.7
- resolution: "string.prototype.trim@npm:1.2.7"
+ version: 1.2.8
+ resolution: "string.prototype.trim@npm:1.2.8"
dependencies:
call-bind: ^1.0.2
- define-properties: ^1.1.4
- es-abstract: ^1.20.4
- checksum: 05b7b2d6af63648e70e44c4a8d10d8cc457536df78b55b9d6230918bde75c5987f6b8604438c4c8652eb55e4fc9725d2912789eb4ec457d6995f3495af190c09
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 49eb1a862a53aba73c3fb6c2a53f5463173cb1f4512374b623bcd6b43ad49dd559a06fb5789bdec771a40fc4d2a564411c0a75d35fb27e76bbe738c211ecff07
languageName: node
linkType: hard
"string.prototype.trimend@npm:^1.0.6":
- version: 1.0.6
- resolution: "string.prototype.trimend@npm:1.0.6"
+ version: 1.0.7
+ resolution: "string.prototype.trimend@npm:1.0.7"
dependencies:
call-bind: ^1.0.2
- define-properties: ^1.1.4
- es-abstract: ^1.20.4
- checksum: 0fdc34645a639bd35179b5a08227a353b88dc089adf438f46be8a7c197fc3f22f8514c1c9be4629b3cd29c281582730a8cbbad6466c60f76b5f99cf2addb132e
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 2375516272fd1ba75992f4c4aa88a7b5f3c7a9ca308d963bcd5645adf689eba6f8a04ebab80c33e30ec0aefc6554181a3a8416015c38da0aa118e60ec896310c
languageName: node
linkType: hard
"string.prototype.trimstart@npm:^1.0.6":
- version: 1.0.6
- resolution: "string.prototype.trimstart@npm:1.0.6"
+ version: 1.0.7
+ resolution: "string.prototype.trimstart@npm:1.0.7"
dependencies:
call-bind: ^1.0.2
- define-properties: ^1.1.4
- es-abstract: ^1.20.4
- checksum: 89080feef416621e6ef1279588994305477a7a91648d9436490d56010a1f7adc39167cddac7ce0b9884b8cdbef086987c4dcb2960209f2af8bac0d23ceff4f41
+ define-properties: ^1.2.0
+ es-abstract: ^1.22.1
+ checksum: 13d0c2cb0d5ff9e926fa0bec559158b062eed2b68cd5be777ffba782c96b2b492944e47057274e064549b94dd27cf81f48b27a31fee8af5b574cff253e7eb613
languageName: node
linkType: hard
@@ -16184,13 +14426,6 @@ __metadata:
languageName: node
linkType: hard
-"strip-eof@npm:^1.0.0":
- version: 1.0.0
- resolution: "strip-eof@npm:1.0.0"
- checksum: 40bc8ddd7e072f8ba0c2d6d05267b4e0a4800898c3435b5fb5f5a21e6e47dfaff18467e7aa0d1844bb5d6274c3097246595841fbfeb317e541974ee992cac506
- languageName: node
- linkType: hard
-
"strip-final-newline@npm:^2.0.0":
version: 2.0.0
resolution: "strip-final-newline@npm:2.0.0"
@@ -16236,7 +14471,7 @@ __metadata:
languageName: node
linkType: hard
-"style-mod@npm:^4.0.0":
+"style-mod@npm:^4.0.0, style-mod@npm:^4.1.0":
version: 4.1.0
resolution: "style-mod@npm:4.1.0"
checksum: 8402b14ca11113a3640d46b3cf7ba49f05452df7846bc5185a3535d9b6a64a3019e7fb636b59ccbb7816aeb0725b24723e77a85b05612a9360e419958e13b4e6
@@ -16385,7 +14620,7 @@ __metadata:
languageName: node
linkType: hard
-"supports-hyperlinks@npm:^2.0.0, supports-hyperlinks@npm:^2.3.0":
+"supports-hyperlinks@npm:^2.3.0":
version: 2.3.0
resolution: "supports-hyperlinks@npm:2.3.0"
dependencies:
@@ -16464,8 +14699,8 @@ __metadata:
linkType: hard
"tar@npm:^6.1.11, tar@npm:^6.1.2":
- version: 6.1.15
- resolution: "tar@npm:6.1.15"
+ version: 6.2.0
+ resolution: "tar@npm:6.2.0"
dependencies:
chownr: ^2.0.0
fs-minipass: ^2.0.0
@@ -16473,7 +14708,7 @@ __metadata:
minizlib: ^2.1.1
mkdirp: ^1.0.3
yallist: ^4.0.0
- checksum: f23832fceeba7578bf31907aac744ae21e74a66f4a17a9e94507acf460e48f6db598c7023882db33bab75b80e027c21f276d405e4a0322d58f51c7088d428268
+ checksum: db4d9fe74a2082c3a5016630092c54c8375ff3b280186938cfd104f2e089c4fd9bad58688ef6be9cf186a889671bf355c7cda38f09bbf60604b281715ca57f5c
languageName: node
linkType: hard
@@ -16504,16 +14739,6 @@ __metadata:
languageName: node
linkType: hard
-"terminal-link@npm:^2.0.0":
- version: 2.1.1
- resolution: "terminal-link@npm:2.1.1"
- dependencies:
- ansi-escapes: ^4.2.1
- supports-hyperlinks: ^2.0.0
- checksum: ce3d2cd3a438c4a9453947aa664581519173ea40e77e2534d08c088ee6dda449eabdbe0a76d2a516b8b73c33262fedd10d5270ccf7576ae316e3db170ce6562f
- languageName: node
- linkType: hard
-
"terser-webpack-plugin@npm:^5.3.7":
version: 5.3.9
resolution: "terser-webpack-plugin@npm:5.3.9"
@@ -16537,8 +14762,8 @@ __metadata:
linkType: hard
"terser@npm:^5.16.8":
- version: 5.19.2
- resolution: "terser@npm:5.19.2"
+ version: 5.19.4
+ resolution: "terser@npm:5.19.4"
dependencies:
"@jridgewell/source-map": ^0.3.3
acorn: ^8.8.2
@@ -16546,7 +14771,7 @@ __metadata:
source-map-support: ~0.5.20
bin:
terser: bin/terser
- checksum: e059177775b4d4f4cff219ad89293175aefbd1b081252270444dc83e42a2c5f07824eb2a85eae6e22ef6eb7ef04b21af36dd7d1dd7cfb93912310e57d416a205
+ checksum: 09273ce7d3fbe8fea0ec2603ad1c06cc304838bdac42bbfe77835b0b0b6c4a894054575ca518fe16c95d5c401574a8c703f4fde97da45f1c972ea568e6ecafda
languageName: node
linkType: hard
@@ -16575,13 +14800,6 @@ __metadata:
languageName: node
linkType: hard
-"throat@npm:^5.0.0":
- version: 5.0.0
- resolution: "throat@npm:5.0.0"
- checksum: 031ff7f4431618036c1dedd99c8aa82f5c33077320a8358ed829e84b320783781d1869fe58e8f76e948306803de966f5f7573766a437562c9f5c033297ad2fe2
- languageName: node
- linkType: hard
-
"through2@npm:^2.0.0":
version: 2.0.5
resolution: "through2@npm:2.0.5"
@@ -16640,25 +14858,6 @@ __metadata:
languageName: node
linkType: hard
-"to-object-path@npm:^0.3.0":
- version: 0.3.0
- resolution: "to-object-path@npm:0.3.0"
- dependencies:
- kind-of: ^3.0.2
- checksum: 9425effee5b43e61d720940fa2b889623f77473d459c2ce3d4a580a4405df4403eec7be6b857455908070566352f9e2417304641ed158dda6f6a365fe3e66d70
- languageName: node
- linkType: hard
-
-"to-regex-range@npm:^2.1.0":
- version: 2.1.1
- resolution: "to-regex-range@npm:2.1.1"
- dependencies:
- is-number: ^3.0.0
- repeat-string: ^1.6.1
- checksum: 46093cc14be2da905cc931e442d280b2e544e2bfdb9a24b3cf821be8d342f804785e5736c108d5be026021a05d7b38144980a61917eee3c88de0a5e710e10320
- languageName: node
- linkType: hard
-
"to-regex-range@npm:^5.0.1":
version: 5.0.1
resolution: "to-regex-range@npm:5.0.1"
@@ -16668,19 +14867,7 @@ __metadata:
languageName: node
linkType: hard
-"to-regex@npm:^3.0.1, to-regex@npm:^3.0.2":
- version: 3.0.2
- resolution: "to-regex@npm:3.0.2"
- dependencies:
- define-property: ^2.0.2
- extend-shallow: ^3.0.2
- regex-not: ^1.0.2
- safe-regex: ^1.1.0
- checksum: 4ed4a619059b64e204aad84e4e5f3ea82d97410988bcece7cf6cbfdbf193d11bff48cf53842d88b8bb00b1bfc0d048f61f20f0709e6f393fd8fe0122662d9db4
- languageName: node
- linkType: hard
-
-"tough-cookie@npm:^4.0.0, tough-cookie@npm:^4.1.2":
+"tough-cookie@npm:^4.1.2":
version: 4.1.3
resolution: "tough-cookie@npm:4.1.3"
dependencies:
@@ -16745,30 +14932,7 @@ __metadata:
languageName: node
linkType: hard
-"ts-jest@npm:^26.0.0":
- version: 26.5.6
- resolution: "ts-jest@npm:26.5.6"
- dependencies:
- bs-logger: 0.x
- buffer-from: 1.x
- fast-json-stable-stringify: 2.x
- jest-util: ^26.1.0
- json5: 2.x
- lodash: 4.x
- make-error: 1.x
- mkdirp: 1.x
- semver: 7.x
- yargs-parser: 20.x
- peerDependencies:
- jest: ">=26 <27"
- typescript: ">=3.8 <5.0"
- bin:
- ts-jest: cli.js
- checksum: 6f65ad4fe67ab3f0fd4c7f9954acbee863af05b2b3f88dd0f490bbcdc58002960fac908b2cb9f009ec14da6fe13cb00a39e291260d6e555abe72448d1c0a017f
- languageName: node
- linkType: hard
-
-"ts-jest@npm:^29.1.0":
+"ts-jest@npm:^29, ts-jest@npm:^29.1.0":
version: 29.1.1
resolution: "ts-jest@npm:29.1.1"
dependencies:
@@ -16981,15 +15145,6 @@ __metadata:
languageName: node
linkType: hard
-"typedarray-to-buffer@npm:^3.1.5":
- version: 3.1.5
- resolution: "typedarray-to-buffer@npm:3.1.5"
- dependencies:
- is-typedarray: ^1.0.0
- checksum: 99c11aaa8f45189fcfba6b8a4825fd684a321caa9bd7a76a27cf0c7732c174d198b99f449c52c3818107430b5f41c0ccbbfb75cb2ee3ca4a9451710986d61a60
- languageName: node
- linkType: hard
-
"typedarray@npm:^0.0.6":
version: 0.0.6
resolution: "typedarray@npm:0.0.6"
@@ -17114,18 +15269,6 @@ __metadata:
languageName: node
linkType: hard
-"union-value@npm:^1.0.0":
- version: 1.0.1
- resolution: "union-value@npm:1.0.1"
- dependencies:
- arr-union: ^3.1.0
- get-value: ^2.0.6
- is-extendable: ^0.1.1
- set-value: ^2.0.1
- checksum: a3464097d3f27f6aa90cf103ed9387541bccfc006517559381a10e0dffa62f465a9d9a09c9b9c3d26d0f4cbe61d4d010e2fbd710fd4bf1267a768ba8a774b0ba
- languageName: node
- linkType: hard
-
"unique-filename@npm:^2.0.0":
version: 2.0.1
resolution: "unique-filename@npm:2.0.1"
@@ -17267,16 +15410,6 @@ __metadata:
languageName: node
linkType: hard
-"unset-value@npm:^1.0.0":
- version: 1.0.0
- resolution: "unset-value@npm:1.0.0"
- dependencies:
- has-value: ^0.3.1
- isobject: ^3.0.0
- checksum: 5990ecf660672be2781fc9fb322543c4aa592b68ed9a3312fa4df0e9ba709d42e823af090fc8f95775b4cd2c9a5169f7388f0cec39238b6d0d55a69fc2ab6b29
- languageName: node
- linkType: hard
-
"upath@npm:2.0.1, upath@npm:^2.0.1":
version: 2.0.1
resolution: "upath@npm:2.0.1"
@@ -17307,13 +15440,6 @@ __metadata:
languageName: node
linkType: hard
-"urix@npm:^0.1.0":
- version: 0.1.0
- resolution: "urix@npm:0.1.0"
- checksum: 4c076ecfbf3411e888547fe844e52378ab5ada2d2f27625139011eada79925e77f7fbf0e4016d45e6a9e9adb6b7e64981bd49b22700c7c401c5fc15f423303b3
- languageName: node
- linkType: hard
-
"url-parse@npm:^1.5.3, url-parse@npm:~1.5.1, url-parse@npm:~1.5.4":
version: 1.5.10
resolution: "url-parse@npm:1.5.10"
@@ -17325,12 +15451,12 @@ __metadata:
linkType: hard
"url@npm:^0.11.0":
- version: 0.11.1
- resolution: "url@npm:0.11.1"
+ version: 0.11.2
+ resolution: "url@npm:0.11.2"
dependencies:
punycode: ^1.4.1
- qs: ^6.11.0
- checksum: a7de4b37bbcbe60ef199acda4ce437ef843c0ef3a4b34ec3e3d97e0446a5f50dc7bfeafbe33ad118cf4e5aa04805e1328f0d0126e254f2b77bb8498fa395c596
+ qs: ^6.11.2
+ checksum: da5943ab43f4df75af5ed96d8465e3084fc2ea0f01bc73e98fb60899777a644541ea0022451371a419283a27a8bbd1809292212fb4c78a0b4a70f15fd89b8205
languageName: node
linkType: hard
@@ -17343,13 +15469,6 @@ __metadata:
languageName: node
linkType: hard
-"use@npm:^3.1.0":
- version: 3.1.1
- resolution: "use@npm:3.1.1"
- checksum: 08a130289f5238fcbf8f59a18951286a6e660d17acccc9d58d9b69dfa0ee19aa038e8f95721b00b432c36d1629a9e32a464bf2e7e0ae6a244c42ddb30bdd8b33
- languageName: node
- linkType: hard
-
"util-deprecate@npm:^1.0.1, util-deprecate@npm:^1.0.2, util-deprecate@npm:~1.0.1":
version: 1.0.2
resolution: "util-deprecate@npm:1.0.2"
@@ -17357,7 +15476,7 @@ __metadata:
languageName: node
linkType: hard
-"uuid@npm:8.3.2, uuid@npm:^8.3.0, uuid@npm:^8.3.2":
+"uuid@npm:8.3.2, uuid@npm:^8.3.2":
version: 8.3.2
resolution: "uuid@npm:8.3.2"
bin:
@@ -17394,17 +15513,6 @@ __metadata:
languageName: node
linkType: hard
-"v8-to-istanbul@npm:^7.0.0":
- version: 7.1.2
- resolution: "v8-to-istanbul@npm:7.1.2"
- dependencies:
- "@types/istanbul-lib-coverage": ^2.0.1
- convert-source-map: ^1.6.0
- source-map: ^0.7.3
- checksum: e52b48764f55aed62ff87f2b5f710c874f992cd1313eac8f438bf65aeeb0689153d85bb76e39514fd90ba3521d6ebea929a8ae1339b6d7b0cf18fb0ed13d8b40
- languageName: node
- linkType: hard
-
"v8-to-istanbul@npm:^9.0.1":
version: 9.1.0
resolution: "v8-to-istanbul@npm:9.1.0"
@@ -17565,15 +15673,6 @@ __metadata:
languageName: node
linkType: hard
-"w3c-hr-time@npm:^1.0.2":
- version: 1.0.2
- resolution: "w3c-hr-time@npm:1.0.2"
- dependencies:
- browser-process-hrtime: ^1.0.0
- checksum: ec3c2dacbf8050d917bbf89537a101a08c2e333b4c19155f7d3bedde43529d4339db6b3d049d9610789cb915f9515f8be037e0c54c079e9d4735c50b37ed52b9
- languageName: node
- linkType: hard
-
"w3c-keyname@npm:^2.2.4":
version: 2.2.8
resolution: "w3c-keyname@npm:2.2.8"
@@ -17581,15 +15680,6 @@ __metadata:
languageName: node
linkType: hard
-"w3c-xmlserializer@npm:^2.0.0":
- version: 2.0.0
- resolution: "w3c-xmlserializer@npm:2.0.0"
- dependencies:
- xml-name-validator: ^3.0.0
- checksum: ae25c51cf71f1fb2516df1ab33a481f83461a117565b95e3d0927432522323f93b1b2846cbb60196d337970c421adb604fc2d0d180c6a47a839da01db5b9973b
- languageName: node
- linkType: hard
-
"w3c-xmlserializer@npm:^4.0.0":
version: 4.0.0
resolution: "w3c-xmlserializer@npm:4.0.0"
@@ -17606,7 +15696,7 @@ __metadata:
languageName: node
linkType: hard
-"walker@npm:^1.0.7, walker@npm:^1.0.8, walker@npm:~1.0.5":
+"walker@npm:^1.0.8":
version: 1.0.8
resolution: "walker@npm:1.0.8"
dependencies:
@@ -17657,13 +15747,6 @@ __metadata:
languageName: node
linkType: hard
-"webidl-conversions@npm:^5.0.0":
- version: 5.0.0
- resolution: "webidl-conversions@npm:5.0.0"
- checksum: ccf1ec2ca7c0b5671e5440ace4a66806ae09c49016ab821481bec0c05b1b82695082dc0a27d1fe9d804d475a408ba0c691e6803fd21be608e710955d4589cd69
- languageName: node
- linkType: hard
-
"webidl-conversions@npm:^6.1.0":
version: 6.1.0
resolution: "webidl-conversions@npm:6.1.0"
@@ -17774,15 +15857,6 @@ __metadata:
languageName: node
linkType: hard
-"whatwg-encoding@npm:^1.0.5":
- version: 1.0.5
- resolution: "whatwg-encoding@npm:1.0.5"
- dependencies:
- iconv-lite: 0.4.24
- checksum: 5be4efe111dce29ddee3448d3915477fcc3b28f991d9cf1300b4e50d6d189010d47bca2f51140a844cf9b726e8f066f4aee72a04d687bfe4f2ee2767b2f5b1e6
- languageName: node
- linkType: hard
-
"whatwg-encoding@npm:^2.0.0":
version: 2.0.0
resolution: "whatwg-encoding@npm:2.0.0"
@@ -17826,7 +15900,7 @@ __metadata:
languageName: node
linkType: hard
-"whatwg-url@npm:^8.0.0, whatwg-url@npm:^8.5.0":
+"whatwg-url@npm:^8.0.0":
version: 8.7.0
resolution: "whatwg-url@npm:8.7.0"
dependencies:
@@ -17850,13 +15924,6 @@ __metadata:
languageName: node
linkType: hard
-"which-module@npm:^2.0.0":
- version: 2.0.1
- resolution: "which-module@npm:2.0.1"
- checksum: 1967b7ce17a2485544a4fdd9063599f0f773959cca24176dbe8f405e55472d748b7c549cd7920ff6abb8f1ab7db0b0f1b36de1a21c57a8ff741f4f1e792c52be
- languageName: node
- linkType: hard
-
"which-typed-array@npm:^1.1.10, which-typed-array@npm:^1.1.11":
version: 1.1.11
resolution: "which-typed-array@npm:1.1.11"
@@ -17949,7 +16016,7 @@ __metadata:
languageName: node
linkType: hard
-"wrap-ansi@npm:^6.0.1, wrap-ansi@npm:^6.2.0":
+"wrap-ansi@npm:^6.0.1":
version: 6.2.0
resolution: "wrap-ansi@npm:6.2.0"
dependencies:
@@ -17999,18 +16066,6 @@ __metadata:
languageName: node
linkType: hard
-"write-file-atomic@npm:^3.0.0":
- version: 3.0.3
- resolution: "write-file-atomic@npm:3.0.3"
- dependencies:
- imurmurhash: ^0.1.4
- is-typedarray: ^1.0.0
- signal-exit: ^3.0.2
- typedarray-to-buffer: ^3.1.5
- checksum: c55b24617cc61c3a4379f425fc62a386cc51916a9b9d993f39734d005a09d5a4bb748bc251f1304e7abd71d0a26d339996c275955f527a131b1dcded67878280
- languageName: node
- linkType: hard
-
"write-file-atomic@npm:^4.0.2":
version: 4.0.2
resolution: "write-file-atomic@npm:4.0.2"
@@ -18081,8 +16136,8 @@ __metadata:
linkType: hard
"ws@npm:^8.11.0":
- version: 8.13.0
- resolution: "ws@npm:8.13.0"
+ version: 8.14.1
+ resolution: "ws@npm:8.14.1"
peerDependencies:
bufferutil: ^4.0.1
utf-8-validate: ">=5.0.2"
@@ -18091,14 +16146,7 @@ __metadata:
optional: true
utf-8-validate:
optional: true
- checksum: 53e991bbf928faf5dc6efac9b8eb9ab6497c69feeb94f963d648b7a3530a720b19ec2e0ec037344257e05a4f35bd9ad04d9de6f289615ffb133282031b18c61c
- languageName: node
- linkType: hard
-
-"xml-name-validator@npm:^3.0.0":
- version: 3.0.0
- resolution: "xml-name-validator@npm:3.0.0"
- checksum: b3ac459afed783c285bb98e4960bd1f3ba12754fd4f2320efa0f9181ca28928c53cc75ca660d15d205e81f92304419afe94c531c7cfb3e0649aa6d140d53ecb0
+ checksum: 9e310be2b0ff69e1f87d8c6d093ecd17a1ed4c37f281d17c35e8c30e2bd116401775b3d503249651374e6e0e1e9905db62fff096b694371c77561aee06bc3466
languageName: node
linkType: hard
@@ -18174,13 +16222,6 @@ __metadata:
languageName: node
linkType: hard
-"y18n@npm:^4.0.0":
- version: 4.0.3
- resolution: "y18n@npm:4.0.3"
- checksum: 014dfcd9b5f4105c3bb397c1c8c6429a9df004aa560964fb36732bfb999bfe83d45ae40aeda5b55d21b1ee53d8291580a32a756a443e064317953f08025b1aa4
- languageName: node
- linkType: hard
-
"y18n@npm:^5.0.5":
version: 5.0.8
resolution: "y18n@npm:5.0.8"
@@ -18216,13 +16257,6 @@ __metadata:
languageName: node
linkType: hard
-"yargs-parser@npm:20.x, yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3":
- version: 20.2.9
- resolution: "yargs-parser@npm:20.2.9"
- checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3
- languageName: node
- linkType: hard
-
"yargs-parser@npm:21.1.1, yargs-parser@npm:^21.0.1, yargs-parser@npm:^21.1.1":
version: 21.1.1
resolution: "yargs-parser@npm:21.1.1"
@@ -18230,13 +16264,10 @@ __metadata:
languageName: node
linkType: hard
-"yargs-parser@npm:^18.1.2":
- version: 18.1.3
- resolution: "yargs-parser@npm:18.1.3"
- dependencies:
- camelcase: ^5.0.0
- decamelize: ^1.2.0
- checksum: 60e8c7d1b85814594d3719300ecad4e6ae3796748b0926137bfec1f3042581b8646d67e83c6fc80a692ef08b8390f21ddcacb9464476c39bbdf52e34961dd4d9
+"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3":
+ version: 20.2.9
+ resolution: "yargs-parser@npm:20.2.9"
+ checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3
languageName: node
linkType: hard
@@ -18255,25 +16286,6 @@ __metadata:
languageName: node
linkType: hard
-"yargs@npm:^15.4.1":
- version: 15.4.1
- resolution: "yargs@npm:15.4.1"
- dependencies:
- cliui: ^6.0.0
- decamelize: ^1.2.0
- find-up: ^4.1.0
- get-caller-file: ^2.0.1
- require-directory: ^2.1.1
- require-main-filename: ^2.0.0
- set-blocking: ^2.0.0
- string-width: ^4.2.0
- which-module: ^2.0.0
- y18n: ^4.0.0
- yargs-parser: ^18.1.2
- checksum: 40b974f508d8aed28598087720e086ecd32a5fd3e945e95ea4457da04ee9bdb8bdd17fd91acff36dc5b7f0595a735929c514c40c402416bbb87c03f6fb782373
- languageName: node
- linkType: hard
-
"yargs@npm:^17.3.1, yargs@npm:^17.6.2":
version: 17.7.2
resolution: "yargs@npm:17.7.2"