diff --git a/.eslintrc.cjs b/.eslintrc.cjs
index 164afa07..908981c5 100644
--- a/.eslintrc.cjs
+++ b/.eslintrc.cjs
@@ -15,6 +15,7 @@ module.exports = {
"plugin:matrix-org/typescript",
"prettier",
"plugin:rxjs/recommended",
+ "plugin:storybook/recommended",
],
parserOptions: {
ecmaVersion: "latest",
diff --git a/.githooks/post-commit b/.githooks/post-commit
deleted file mode 100755
index 467799bd..00000000
--- a/.githooks/post-commit
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/usr/bin/sh
-
-FILE=.links.temp-disabled.yaml
-if test -f "$FILE"; then
- # Only do the post-commit hook if the file was temp-disabled by the pre-commit hook.
- # Otherwise linking was actively (`yarn links:disable`) disabled and this hook should noop.
- mv .links.temp-disabled.yaml .links.yaml
- yarnLog=$(yarn)
- echo "[yarn-linker] The post-commit hook has re-enabled .links.yaml."
- exit 1
-fi
diff --git a/.githooks/pre-commit b/.githooks/pre-commit
index 435d75f1..2656c9b9 100755
--- a/.githooks/pre-commit
+++ b/.githooks/pre-commit
@@ -1,11 +1,9 @@
-#!/usr/bin/sh
+#!/usr/bin/env bash
-FILE=".links.yaml"
-if test -f "$FILE"; then
- mv .links.yaml .links.temp-disabled.yaml
- # echo "running yarn"
- x=$(yarn)
- y=$(git add yarn.lock)
- echo "[yarn-linker] The pre-commit hook has disabled .links.yaml and MODIFIED the yarn.lock file. Review the staged changes (the hook added yarn.lock, was this desired?) and run \`git commit \` again if they look okay. The post-commit hook will re-enable your links."
+# Checks if there currently is linking configured. Informs the user to disable linking before committing.
+
+PNPMFILE=.pnpmfile.cjs
+if test -f "$PNPMFILE"; then
+ echo "[pnpm-linker] The pre-commit hook detected $PNPMFILE which implies you have linked packages in your pnpm-lock.yaml. Run pnpm links:off and commit again. See also linking.md."
exit 1
fi
diff --git a/.github/workflows/build-element-call.yaml b/.github/workflows/build-element-call.yaml
index 3ddabb0b..f4071975 100644
--- a/.github/workflows/build-element-call.yaml
+++ b/.github/workflows/build-element-call.yaml
@@ -37,15 +37,16 @@ jobs:
persist-credentials: false
- name: Enable Corepack
run: corepack enable
- - name: Yarn cache
+ - name: pnpm cache
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
- cache: "yarn"
+ cache: "pnpm"
node-version-file: ".node-version"
- name: Install dependencies
- run: "yarn install --immutable"
+ # ignore-pnpmfile should never be commited. Make CI crash if it happened (`pnpmfileChecksum` is present)
+ run: "pnpm install --frozen-lockfile --ignore-pnpmfile"
- name: Build Element Call
- run: yarn run build:"$PACKAGE":"$BUILD_MODE"
+ run: pnpm run build:"$PACKAGE":"$BUILD_MODE"
env:
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
SENTRY_PROJECT: ${{ secrets.SENTRY_PROJECT }}
diff --git a/.github/workflows/changelog-label.yml b/.github/workflows/changelog-label.yml
index f11d3130..84c53cdb 100644
--- a/.github/workflows/changelog-label.yml
+++ b/.github/workflows/changelog-label.yml
@@ -5,7 +5,7 @@ on:
# This is safe because we do not use actions/checkout or execute untrusted code.
# Using pull_request_target is necessary to allow status writes for PRs from forks.
pull_request_target:
- types: [labeled, unlabeled, opened]
+ types: [labeled, unlabeled, opened, synchronize]
permissions:
pull-requests: read
diff --git a/.github/workflows/lint.yaml b/.github/workflows/lint.yaml
index 763d2eac..0638eca6 100644
--- a/.github/workflows/lint.yaml
+++ b/.github/workflows/lint.yaml
@@ -12,20 +12,21 @@ jobs:
persist-credentials: false
- name: Enable Corepack
run: corepack enable
- - name: Yarn cache
+ - name: pnpm cache
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
- cache: "yarn"
+ cache: "pnpm"
node-version-file: ".node-version"
- name: Install dependencies
- run: "yarn install --immutable"
+ # ignore-pnpmfile should never be commited. Make CI crash if it happened (`pnpmfileChecksum` is present)
+ run: "pnpm install --frozen-lockfile --ignore-pnpmfile"
- name: Prettier
- run: "yarn run prettier:check"
+ run: "pnpm run prettier:check"
- name: i18n
- run: "yarn run i18n:check"
+ run: "pnpm run i18n:check"
- name: ESLint
- run: "yarn run lint:eslint"
+ run: "pnpm run lint:eslint"
- name: Type check
- run: "yarn run lint:types"
+ run: "pnpm run lint:types"
- name: Dead code analysis
- run: "yarn run lint:knip"
+ run: "pnpm run lint:knip"
diff --git a/.github/workflows/publish-embedded-packages.yaml b/.github/workflows/publish-embedded-packages.yaml
index 3ab275a5..88d59947 100644
--- a/.github/workflows/publish-embedded-packages.yaml
+++ b/.github/workflows/publish-embedded-packages.yaml
@@ -97,7 +97,7 @@ jobs:
run: find ${FILENAME_PREFIX} -type f -print0 | sort -z | xargs -0 sha256sum | tee ${FILENAME_PREFIX}.sha256
- name: Upload
if: ${{ needs.versioning.outputs.DRY_RUN == 'false' }}
- uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2
+ uses: softprops/action-gh-release@153bb8e04406b158c6c84fc1615b65b24149a1fe # v2
with:
files: |
${{ env.FILENAME_PREFIX }}.tar.gz
@@ -297,7 +297,7 @@ jobs:
NEEDS_PUBLISH_IOS_OUTPUTS_ARTIFACT_VERSION: ${{ needs.publish_ios.outputs.ARTIFACT_VERSION }}
- name: Add release notes
if: ${{ needs.versioning.outputs.DRY_RUN == 'false' }}
- uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2
+ uses: softprops/action-gh-release@153bb8e04406b158c6c84fc1615b65b24149a1fe # v2
with:
append_body: true
body: |
diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml
index 0675b1b1..40b94e26 100644
--- a/.github/workflows/publish.yaml
+++ b/.github/workflows/publish.yaml
@@ -42,7 +42,7 @@ jobs:
- name: Create Checksum
run: find ${FILENAME_PREFIX} -type f -print0 | sort -z | xargs -0 sha256sum | tee ${FILENAME_PREFIX}.sha256
- name: Upload
- uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2
+ uses: softprops/action-gh-release@153bb8e04406b158c6c84fc1615b65b24149a1fe # v2
with:
files: |
${{ env.FILENAME_PREFIX }}.tar.gz
@@ -71,7 +71,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Add release note
- uses: softprops/action-gh-release@a06a81a03ee405af7f2048a818ed3f03bbf83c7b # v2
+ uses: softprops/action-gh-release@153bb8e04406b158c6c84fc1615b65b24149a1fe # v2
with:
append_body: true
body: |
diff --git a/.github/workflows/test-netlify.yaml b/.github/workflows/test-netlify.yaml
new file mode 100644
index 00000000..bccde445
--- /dev/null
+++ b/.github/workflows/test-netlify.yaml
@@ -0,0 +1,48 @@
+# Triggers after the playwright tests have finished,
+# taking the artifact and uploading it to Netlify for easier viewing
+name: Upload End to End Test report to Netlify
+on:
+ # Privilege escalation necessary to publish to Netlify
+ # 🚨 We must not execute any checked out code here.
+ workflow_run: # zizmor: ignore[dangerous-triggers]
+ workflows: ["Test"]
+ types:
+ - completed
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.event.workflow_run.head_branch || github.run_id }}
+ cancel-in-progress: ${{ github.event.workflow_run.event == 'pull_request' }}
+
+permissions: {}
+
+jobs:
+ report:
+ if: github.event.workflow_run.conclusion != 'cancelled'
+ name: Report results
+ runs-on: ubuntu-24.04
+ environment: Netlify
+ permissions:
+ statuses: write
+ deployments: write
+ actions: read
+ steps:
+ - name: Download HTML report
+ uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ run-id: ${{ github.event.workflow_run.id }}
+ name: html-report
+ path: playwright-report
+
+ - name: 📤 Deploy to Netlify
+ uses: matrix-org/netlify-pr-preview@9805cd123fc9a7e421e35340a05e1ebc5dee46b5 # v3
+ with:
+ path: playwright-report
+ owner: ${{ github.event.workflow_run.head_repository.owner.login }}
+ branch: ${{ github.event.workflow_run.head_branch }}
+ revision: ${{ github.event.workflow_run.head_sha }}
+ token: ${{ secrets.NETLIFY_AUTH_TOKEN }}
+ site_id: ${{ secrets.NETLIFY_SITE_ID }}
+ desc: Playwright Report
+ deployment_env: EndToEndTests
+ prefix: "e2e-"
diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml
index cd1c94c5..d8af6f92 100644
--- a/.github/workflows/test.yaml
+++ b/.github/workflows/test.yaml
@@ -14,17 +14,18 @@ jobs:
persist-credentials: false
- name: Enable Corepack
run: corepack enable
- - name: Yarn cache
+ - name: pnpm cache
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
- cache: "yarn"
+ cache: "pnpm"
node-version-file: ".node-version"
- name: Install dependencies
- run: "yarn install --immutable"
+ # ignore-pnpmfile should never be commited. Make CI crash if it happened (`pnpmfileChecksum` is present)
+ run: "pnpm install --frozen-lockfile --ignore-pnpmfile"
- name: Vitest
- run: "yarn run test:coverage"
+ run: "pnpm run test:coverage"
- name: Upload to codecov
- uses: codecov/codecov-action@671740ac38dd9b0130fbe1cec585b89eea48d3de # v5
+ uses: codecov/codecov-action@75cd11691c0faa626561e295848008c8a7dddffe # v5
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
@@ -42,12 +43,13 @@ jobs:
run: corepack enable
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
- cache: "yarn"
+ cache: "pnpm"
node-version-file: ".node-version"
- name: Install dependencies
- run: yarn install --immutable
+ # ignore-pnpmfile should never be commited. Make CI crash if it happened (`pnpmfileChecksum` is present)
+ run: pnpm install --frozen-lockfile --ignore-pnpmfile
- name: Install Playwright Browsers
- run: yarn playwright install --with-deps
+ run: pnpm exec playwright install --with-deps
- name: Run backend components
run: |
docker compose -f playwright-backend-docker-compose.yml -f playwright-backend-docker-compose.override.yml pull
@@ -56,10 +58,11 @@ jobs:
- name: Run Playwright tests
env:
USE_DOCKER: 1
- run: yarn playwright test
- - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4
+ run: pnpm exec playwright test
+ - uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
if: ${{ !cancelled() }}
with:
- name: playwright-report
- path: playwright-report/
- retention-days: 3
+ name: html-report
+ path: playwright-report
+ if-no-files-found: error
+ retention-days: 4
diff --git a/.github/workflows/translations-download.yaml b/.github/workflows/translations-download.yaml
index ad9f4652..08260a5a 100644
--- a/.github/workflows/translations-download.yaml
+++ b/.github/workflows/translations-download.yaml
@@ -22,11 +22,12 @@ jobs:
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4
with:
- cache: "yarn"
+ cache: "pnpm"
node-version-file: ".node-version"
- name: Install Deps
- run: "yarn install --immutable"
+ # ignore-pnpmfile should never be commited. Make CI crash if it happened (`pnpmfileChecksum` is present)
+ run: "pnpm install --frozen-lockfile --ignore-pnpmfile"
- name: Prune i18n
run: "rm -R locales"
@@ -40,7 +41,7 @@ jobs:
run: "sudo chown runner:docker -R locales"
- name: Prettier
- run: yarn prettier:format
+ run: pnpm prettier:format
- name: Create Pull Request
id: cpr
diff --git a/.gitignore b/.gitignore
index 5751844a..e9225072 100644
--- a/.gitignore
+++ b/.gitignore
@@ -21,12 +21,20 @@ yarn-error.log
!/.yarn/releases
!/.yarn/sdks
!/.yarn/versions
+# old yarn based linking
/.links.yaml
/.links.disabled.yaml
/.links.temp-disabled.yaml
+# pnpm based linking
+/.links.cjs
+/.links.disabled.cjs
+/.links.temp-disabled.cjs
# Playwright
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/
+
+*storybook.log
+storybook-static
diff --git a/.prettierignore b/.prettierignore
index f06235c4..31e6cd83 100644
--- a/.prettierignore
+++ b/.prettierignore
@@ -1,2 +1,3 @@
+pnpm-lock.yaml
node_modules
dist
diff --git a/.storybook/main.ts b/.storybook/main.ts
new file mode 100644
index 00000000..977eca73
--- /dev/null
+++ b/.storybook/main.ts
@@ -0,0 +1,15 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import type { StorybookConfig } from "@storybook/react-vite";
+
+const config: StorybookConfig = {
+ stories: ["../src/**/*.mdx", "../src/**/*.stories.@(js|jsx|mjs|ts|tsx)"],
+ addons: ["@storybook/addon-docs"],
+ framework: "@storybook/react-vite",
+};
+export default config;
diff --git a/.storybook/manager.ts b/.storybook/manager.ts
new file mode 100644
index 00000000..1177be2f
--- /dev/null
+++ b/.storybook/manager.ts
@@ -0,0 +1,31 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import { create } from "storybook/theming";
+import { addons } from "storybook/manager-api";
+
+addons.setConfig({
+ theme: create({
+ base: "light",
+ colorPrimary: "#1b1d22",
+ colorSecondary: "#0467dd",
+
+ // Typography
+ fontBase: '"Inter", sans-serif',
+ fontCode: '"Inconsolata", monospace',
+
+ // Text colors
+ textColor: "#1b1d22",
+ appBg: "#ffffff",
+ barBg: "#ffffff",
+
+ brandTitle: "Element Call",
+ brandUrl: "https://element.io/",
+ brandImage: "/src/icons/Logo.svg",
+ brandTarget: "_self",
+ }),
+});
diff --git a/.storybook/preview.tsx b/.storybook/preview.tsx
new file mode 100644
index 00000000..757c1f8a
--- /dev/null
+++ b/.storybook/preview.tsx
@@ -0,0 +1,56 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import type { Preview } from "@storybook/react-vite";
+import { TooltipProvider } from "@vector-im/compound-web";
+import i18n from "i18next";
+import { logger } from "matrix-js-sdk/lib/logger";
+
+import EN from "../locales/en/app.json";
+import { initReactI18next } from "react-i18next";
+import "../src/index.css";
+
+// Bare-minimum i18n config
+i18n
+ .use(initReactI18next)
+ .init({
+ lng: "en",
+ fallbackLng: "en",
+ supportedLngs: ["en"],
+ // We embed the translations, so that it never needs to fetch
+ resources: {
+ en: {
+ translation: EN,
+ },
+ },
+ interpolation: {
+ escapeValue: false, // React has built-in XSS protections
+ },
+ })
+ .catch((e) => logger.warn("Failed to init i18n for stories", e));
+
+const preview: Preview = {
+ parameters: {
+ layout: "centered",
+ controls: {
+ matchers: {
+ color: /(background|color)$/i,
+ date: /Date$/i,
+ },
+ },
+ },
+ tags: ["autodocs"],
+ decorators: [
+ (Story) => (
+
+
+
+ ),
+ ],
+};
+
+export default preview;
diff --git a/.yarn/plugins/linker.cjs b/.yarn/plugins/linker.cjs
deleted file mode 100644
index cf7181f9..00000000
--- a/.yarn/plugins/linker.cjs
+++ /dev/null
@@ -1,91 +0,0 @@
-/*
-Copyright 2025 New Vector Ltd.
-
-SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
-Please see LICENSE in the repository root for full details.
-*/
-
-module.exports = {
- name: "linker",
- factory: (require) => ({
- hooks: {
- // Yarn's plugin system is very light on documentation. The best we have
- // for this hook is simply the type definition in
- // https://github.com/yarnpkg/berry/blob/master/packages/yarnpkg-core/sources/Plugin.ts
- registerPackageExtensions: async (config, registerPackageExtension) => {
- const { structUtils } = require("@yarnpkg/core");
- const { parseSyml } = require("@yarnpkg/parsers");
- const path = require("path");
- const fs = require("fs");
- const process = require("process");
-
- // Create a descriptor that we can use to target our direct dependencies
- const projectPath = config.projectCwd
- .replace(/\\/g, "/")
- .replace("/C:/", "C:/");
- const manifestPath = path.join(projectPath, "package.json");
- const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf8"));
- const selfDescriptor = structUtils.parseDescriptor(
- `${manifest.name}@*`,
- true,
- );
-
- // Load the list of linked packages
- const linksPath = path.join(projectPath, ".links.yaml");
- let linksFile;
- try {
- linksFile = fs.readFileSync(linksPath, "utf8");
- } catch (e) {
- return; // File doesn't exist, there's nothing to link
- }
- let links;
- try {
- links = parseSyml(linksFile);
- } catch (e) {
- console.error(".links.yaml has invalid syntax", e);
- process.exit(1);
- }
-
- // Resolve paths and turn them into a Yarn package extension
- const overrides = Object.fromEntries(
- Object.entries(links).map(([name, link]) => [
- name,
- `portal:${path.resolve(config.projectCwd, link)}`,
- ]),
- );
- const overrideIdentHashes = new Set();
- for (const name of Object.keys(overrides))
- overrideIdentHashes.add(
- structUtils.parseDescriptor(`${name}@*`, true).identHash,
- );
-
- // Extend our own package's dependencies with these local overrides
- registerPackageExtension(selfDescriptor, { dependencies: overrides });
-
- // Filter out the original dependencies from the package spec so Yarn
- // actually respects the overrides
- const filterDependencies = (original) => {
- const pkg = structUtils.copyPackage(original);
- pkg.dependencies = new Map(
- Array.from(pkg.dependencies.entries()).filter(
- ([, value]) => !overrideIdentHashes.has(value.identHash),
- ),
- );
- return pkg;
- };
-
- // Patch Yarn's own normalizePackage method to use the above filter
- const originalNormalizePackage = config.normalizePackage;
- config.normalizePackage = function (pkg, extensions) {
- return originalNormalizePackage.call(
- this,
- pkg.identHash === selfDescriptor.identHash
- ? filterDependencies(pkg)
- : pkg,
- extensions,
- );
- };
- },
- },
- }),
-};
diff --git a/.yarnrc.yml b/.yarnrc.yml
deleted file mode 100644
index 538de0e7..00000000
--- a/.yarnrc.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-nodeLinker: node-modules
-plugins:
- - .yarn/plugins/linker.cjs
diff --git a/README.md b/README.md
index 688a7a7f..0c82e4b0 100644
--- a/README.md
+++ b/README.md
@@ -108,17 +108,17 @@ recommended method for embedding Element Call.
For more details on the packages, see the
-[Embedded vs. Standalone Guide](./docs/embedded-standalone.md).
+[Embedded vs. Standalone Guide](./docs/embedded_standalone.md).
## 🛠️ Self-Hosting
For operating and deploying Element Call on your own server, refer to the
-[**Self-Hosting Guide**](./docs/self-hosting.md).
+[**Self-Hosting Guide**](./docs/self_hosting.md).
## 🧭 MatrixRTC Backend Discovery and Selection
For proper Element Call operation each site deployment needs a MatrixRTC backend
-setup as outlined in the [Self-Hosting](#self-hosting). A typical federated site
+setup as outlined in the [Self-Hosting](#self_hosting). A typical federated site
deployment for three different sites A, B and C is depicted below.
@@ -186,7 +186,7 @@ To get started clone and set up this project:
git clone https://github.com/element-hq/element-call.git
cd element-call
corepack enable
-yarn
+pnpm install
```
To use it, create a local config by, e.g.,
@@ -197,7 +197,7 @@ environment as outlined in the next section out of box.
You're now ready to launch the development server:
```sh
-yarn dev
+pnpm dev
```
See also:
@@ -230,7 +230,7 @@ only for local development and **_never be exposed to the public Internet._**
Run backend components:
```sh
-yarn backend
+pnpm backend
# or for podman-compose
# podman-compose -f dev-backend-docker-compose.yml up
```
@@ -260,13 +260,13 @@ on https://localhost:3000 (this is configured in `playwright.config.ts`) - this
is what will be tested.
The local backend environment should be running for the test to work:
-`yarn backend`
+`pnpm backend`
There are a few different ways to run the tests yourself. The simplest is to
run:
```shell
-yarn run test:playwright
+pnpm run test:playwright
```
This will run the Playwright tests once, non-interactively.
@@ -274,7 +274,7 @@ This will run the Playwright tests once, non-interactively.
There is a more user-friendly way to run the tests in interactive mode:
```shell
-yarn run test:playwright:open
+pnpm run test:playwright:open
```
The easiest way to develop new test is to use the codegen feature of Playwright:
@@ -316,7 +316,7 @@ To add a new translation key you can do these steps:
1. Add the new key entry to the code where the new key is used:
`t("some_new_key")`
-1. Run `yarn i18n` to extract the new key and update the translation files. This
+1. Run `pnpm i18n` to extract the new key and update the translation files. This
will add a skeleton entry to the `locales/en/app.json` file:
```jsonc
diff --git a/WIDGET_TEST.md b/WIDGET_TEST.md
index 53e26a29..fbad026a 100644
--- a/WIDGET_TEST.md
+++ b/WIDGET_TEST.md
@@ -1,6 +1,6 @@
# Testing Element-Call in widget mode
-When running `yarn backend` the latest element-web develop will be deployed and served on `http://localhost:8081`.
+When running `pnpm backend` the latest element-web develop will be deployed and served on `http://localhost:8081`.
In a development environment, you might prefer to just use the `element-web` repo directly, but this setup is useful for CI/CD testing.
## Setup
@@ -18,7 +18,7 @@ that uses
It is part of the existing backend setup. To start the backend, run:
```sh
-yarn backend
+pnpm backend
```
Then open `http://localhost:8081` in your browser.
diff --git a/backend/dev_nginx.conf b/backend/dev_nginx.conf
index d3ddbc53..bfd79fa2 100644
--- a/backend/dev_nginx.conf
+++ b/backend/dev_nginx.conf
@@ -28,11 +28,11 @@ server {
# Reason: the lk-jwt-service uses the federation API for the openid token
# verification, which requires TLS
location ~ ^(/_matrix|/_synapse/client) {
- proxy_pass "http://homeserver:8008";
+ proxy_pass "http://homeserver:8008";
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
- proxy_set_header Host $host;
+ proxy_set_header Host $host;
}
error_page 500 502 503 504 /50x.html;
@@ -73,7 +73,7 @@ server {
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
- proxy_set_header Host $host;
+ proxy_set_header Host $host;
}
error_page 500 502 503 504 /50x.html;
@@ -108,7 +108,7 @@ server {
# JWT Service running at port 6080
proxy_pass http://jwt-auth-services/;
-
+
}
location ^~ /livekit/sfu/ {
@@ -128,7 +128,7 @@ server {
# LiveKit SFU websocket connection running at port 7880
proxy_pass http://livekit-sfu:7880/;
}
-
+
error_page 500 502 503 504 /50x.html;
}
@@ -156,7 +156,7 @@ server {
# JWT Service running at port 16080
proxy_pass http://auth-service-1:16080/;
-
+
}
location ^~ /livekit/sfu/ {
@@ -176,14 +176,14 @@ server {
# LiveKit SFU websocket connection running at port 17880
proxy_pass http://livekit-sfu-1:17880/;
}
-
+
error_page 500 502 503 504 /50x.html;
}
# Convenience reverse proxy for the call.m.localhost domain to element call
# running on the host either via
-# - yarn dev --host or
+# - pnpm dev --host or
# - falling back to http (the element call docker container)
server {
listen 80;
@@ -260,7 +260,7 @@ server {
proxy_ssl_verify off;
}
-
+
error_page 500 502 503 504 /50x.html;
}
@@ -293,7 +293,7 @@ server {
proxy_ssl_verify off;
}
-
+
error_page 500 502 503 504 /50x.html;
}
diff --git a/dev-backend-docker-compose.yml b/dev-backend-docker-compose.yml
index 53bb2941..702aef39 100644
--- a/dev-backend-docker-compose.yml
+++ b/dev-backend-docker-compose.yml
@@ -3,7 +3,7 @@ networks:
services:
auth-service:
- image: ghcr.io/element-hq/lk-jwt-service:sha-f8ddd00
+ image: ghcr.io/element-hq/lk-jwt-service:0.4.4
pull_policy: always
hostname: auth-server
environment:
@@ -25,7 +25,7 @@ services:
- ecbackend
auth-service-1:
- image: ghcr.io/element-hq/lk-jwt-service:sha-f8ddd00
+ image: ghcr.io/element-hq/lk-jwt-service:0.4.4
pull_policy: always
hostname: auth-server-1
environment:
@@ -47,7 +47,7 @@ services:
- ecbackend
livekit:
- image: livekit/livekit-server:v1.9.11
+ image: livekit/livekit-server:v1.10.1
pull_policy: always
hostname: livekit-sfu
command: --dev --config /etc/livekit.yaml
@@ -70,7 +70,7 @@ services:
- ecbackend
livekit-1:
- image: livekit/livekit-server:v1.9.11
+ image: livekit/livekit-server:v1.10.1
pull_policy: always
hostname: livekit-sfu-1
command: --dev --config /etc/livekit.yaml
diff --git a/docs/README.md b/docs/README.md
index d97e8d56..e5a5d08a 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -2,8 +2,8 @@
This folder contains documentation for setup, usage, and development of Element Call.
-- [Embedded vs standalone mode](./embedded-standalone.md)
-- [Url format and parameters](./url-params.md)
+- [Embedded vs standalone mode](./embedded_standalone.md)
+- [Url format and parameters](./url_params.md)
- [Global JS controls](./controls.md)
-- [Self-Hosting](./self-hosting.md)
+- [Self-Hosting](./self_hosting.md)
- [Developing with linked packages](./linking.md)
diff --git a/docs/embedded-standalone.md b/docs/embedded_standalone.md
similarity index 97%
rename from docs/embedded-standalone.md
rename to docs/embedded_standalone.md
index 440dfac0..24ad2a7d 100644
--- a/docs/embedded-standalone.md
+++ b/docs/embedded_standalone.md
@@ -14,7 +14,7 @@ The table below provides a comparison of the two packages:
| **Release artifacts** | Docker Image, Tarball | Tarball, NPM for Web, Android AAR, SwiftPM for iOS |
| **Recommended for** | Standalone/guest access usage | Embedding within messenger apps |
| **Responsibility for regulatory compliance** | The administrator that is deploying the app is responsible for compliance with any applicable regulations (e.g. privacy) | The developer of the messenger app is responsible for compliance |
-| **Analytics consent** | Element Call will show a consent UI. | Element Call will not show a consent UI. The messenger app should only provide the embedded Element Call with the [analytics URL parameters](./url-params.md#embedded-only-parameters) if consent has been granted. |
+| **Analytics consent** | Element Call will show a consent UI. | Element Call will not show a consent UI. The messenger app should only provide the embedded Element Call with the [analytics URL parameters](./url_params.md#embedded-only-parameters) if consent has been granted. |
| **Analytics data** | Element Call will send data to the Posthog, Sentry and Open Telemetry targets specified by the administrator in the `config.json` | Element Call will send data to the Posthog and Sentry targets specified in the URL parameters by the messenger app |
### Using the embedded package within a messenger app
@@ -26,7 +26,7 @@ The basics are:
1. Add the appropriate platform dependency as given for a [release](https://github.com/element-hq/element-call/releases), or use the embedded tarball. e.g. `npm install @element-hq/element-call-embedded@0.9.0`
2. Include the assets from the platform dependency in the build process. e.g. copy the assets during a [Webpack](https://github.com/element-hq/element-web/blob/247cd8d56d832d006d7dfb919d1042529d712b59/webpack.config.js#L677-L682) build.
3. Use the `index.html` entrypointof the imported assets when you are constructing the WebView or iframe. e.g. using a [relative path in a webapp](https://github.com/element-hq/element-web/blob/247cd8d56d832d006d7dfb919d1042529d712b59/src/models/Call.ts#L680), or on the the Android [WebViewAssetLoader](https://github.com/element-hq/element-x-android/blob/fe5aab6588ecdcf9354a3bfbd9e97c1b31175a8f/features/call/impl/src/main/kotlin/io/element/android/features/call/impl/utils/DefaultCallWidgetProvider.kt#L20)
-4. Set any of the [embedded-only URL parameters](./url-params.md#embedded-only-parameters) that you need.
+4. Set any of the [embedded-only URL parameters](./url_params.md#embedded-only-parameters) that you need.
## Widget vs standalone mode
@@ -36,4 +36,4 @@ As a widget, the app only uses the core calling (MatrixRTC) parts. The rest (aut
Element Call and the hosting client are connected via the widget API.
Element Call detects that it is run as a widget if a widgetId is defined in the url parameters. If `widgetId` is present then Element Call will try to connect to the client via the widget postMessage API using the parameters provided in [Url Format and parameters
-](./url-params.md).
+](./url_params.md).
diff --git a/docs/linking.md b/docs/linking.md
index 0abbc73e..1016fffb 100644
--- a/docs/linking.md
+++ b/docs/linking.md
@@ -1,39 +1,65 @@
-# Developing with linked packages
+## Quickstart guide
-If you want to make changes to a package that Element Call depends on and see those changes applied in real time, you can create a link to a local copy of the package. Yarn has a command for this (`yarn link`), but it's not recommended to use it as it ends up modifying package.json with details specific to your development environment.
+run
-Instead, you can use our little 'linker' plugin. Create a file named `.links.yaml` in the Element Call project directory, listing the names and paths of any dependencies you want to link. For example:
-
-```yaml
-matrix-js-sdk: ../path/to/matrix-js-sdk
-"@vector-im/compound-web": /home/alice/path/to/compound-web
+```bash
+./scripts/setup-linking.sh
```
-Then run `yarn install`.
+Read the script output:
+
+```
+Setup complete.
+Update: .links.cjs to your liking
+Run: 'pnpm links:on' to test your .links.cjs
+Run: 'git commit' with links enabled to test the git pre-commit hook.
+Run: 'pnpm links:off' to be able to commit again
+Run: 'git config --local core.hooksPath ""' to allow committing with linking (not recommended)
+Run: 'rm links.cjs' & 'git config --local core.hooksPath ""' to fully revert what this script did
+```
+
+# Developing with linked packages
+
+If you want to make changes to a package that Element Call depends on and see those changes applied in real time, you can create a link to a local copy of the package. `pnpm` has a command for this (`pnpm link`), but it's not recommended to use it as it ends up modifying package.json with details specific to your development environment.
+
+Instead, create a file named `.links.cjs` in the Element Call project directory (or run `./scripts/setup-linking.sh` to create a template), listing the names and paths of any dependencies you want to link. For example:
+
+```cjs
+// Packages to link to local checkouts
+module.exports = {
+ "matrix-js-sdk": "../your/path/matrix-js-sdk",
+ "matrix-widget-api": "../your/path/matrix-widget-api",
+};
+```
+
+Then run `pnpm links:on`. (this will activate the pnpm file + run `pnpm install` to setup the linking)
## Hooks
-Changes in `.links.yaml` will also update `yarn.lock` when `yarn` is executed. The lockfile will then contain the local
+Changes in `.links.cjs` will also update `pnpm-lock.yaml` when `pnpm install` is executed. The lockfile will then contain the local
version of the package which would not work on others dev setups or the github CI.
-One always needs to run:
+
+One always needs to remove the pnpm `readPackage` script (the `.pnpmfile.cjs`) and run:
```bash
-mv .links.yaml .links.disabled.yaml
-yarn
+pnpm install
```
before committing a change.
-To make it more convenient to work with this linking system we added git hooks for your conviniece.
-A `pre-commit` hook will run `mv .links.yaml .links.disabled.yaml`, `yarn` and `git add yarn.lock` if it detects
-a `.links.yaml` file and abort the commit.
-You will than need to check if the resulting changes are appropriate and commit again.
+To make this less of a foot gun we added a git hook.
+A `pre-commit` hook will check if linking is currently used. If it detects
+a `.pnpmfile.cjs` file it will abort the commit with an explanatory message.
+You will than need to run `pnpm links:off` and commit again.
-A `post-commit` hook will setup the linking as it was
-before if a `.links.disabled.yaml` is present. It runs `mv .links.disabled.yaml .links.yaml` and `yarn`.
-
-To activate the hooks automatically configure git with
+To activate the hooks configure git with (when using the setup script (`./scripts/setup-linking.sh`) this is already done):
```bash
-git config --local core.hooksPath .githooks/
+git config --local core.hooksPath .githooks
```
+
+This will add the hook path for this repository only to .gihooks. which is a tracked (by git) folder containing the pre-commit hook.
+
+## Background
+
+Information, why this approach is used can be found in the [linking concept reasoning](./linking_concept_reasoning.md) document.
diff --git a/docs/linking_concept_reasoning.md b/docs/linking_concept_reasoning.md
new file mode 100644
index 00000000..7c135a96
--- /dev/null
+++ b/docs/linking_concept_reasoning.md
@@ -0,0 +1,30 @@
+### Why do we not enable .pnpmfile.cjs by default
+
+Background: The presence of the `.pnpmfile.cjs` adds a field to the `pnpm-lock.yaml` called: `pnpmfileChecksum`. This field is a checksum of the content of the `.pnpmfile.cjs` file.
+`pnpm install --frozen-lockfile` **fails** if there is a `.pnpmfile.cjs` but no `pnpmfileChecksum` or vice versa (or on mismatch).
+
+_TLDR: running with `--ignore-pnpmfile` will fail if `pnpmfileChecksum` is present._
+
+#### `pnpmfileChecksum` + renovate bot
+
+When the renovate bot creates a PR it runs `pnpm install --ignore-pnpmfile`. This means that the `pnpmfileChecksum` in the lockfile will be **empty**.
+This breaks builds that **don't** ignore the `.pnpmfile.cjs`-file. (CI that runs on the renovate PR)
+From here we have two possible paths:
+
+- ignore `.pnpmfile.cjs` in all CI builds CI will also fail if we accidently add it locally.
+- fixup the `pnpm-lock.yaml` in the renovate PR to contain the correct `pnpmfileChecksum`.
+
+Ignoring in all CI builds means that CI will always fail if we enable the linking system.
+This is annoying but can be worked around with the git hook we provide that at least lets us know that we are
+commiting with enabled linking.
+Only if we remember setting it back/disbale linking (or let ourselves remember by the git hook) the CI will work.
+
+#### Summary
+
+- We will always run into conflicts with the `pnpmfileChecksum` because in renovate prs it will be empty (`--ignore-pnpmfile`)
+- To keep it simple we set `--ignore-pnpmfile` in all of ours CI to see issues immediately.
+- The only solution is to never have a `.pnpmfile.cjs` in the repository when pushing.
+ - This way there will never be a commit with `pnpmfileChecksum` in the lockfile.
+ - renovate (which uses `--ignore-pnpmfile` which we cannot disable) and other CI will work
+- We are able to use the linking system locally if we `cp` this file from the scripts folder into `./` on demand.
+- `pnpm links:on` and `pnpm links:off` + `./scripts/setup-linking.sh` will help us with this.
diff --git a/docs/self-hosting.md b/docs/self_hosting.md
similarity index 99%
rename from docs/self-hosting.md
rename to docs/self_hosting.md
index d6d46421..dc1dd687 100644
--- a/docs/self-hosting.md
+++ b/docs/self_hosting.md
@@ -237,8 +237,8 @@ source. First, clone and install the package:
git clone https://github.com/element-hq/element-call.git
cd element-call
corepack enable
-yarn
-yarn build
+pnpm install
+pnpm build
```
If all went well, you can now find the build output under `dist` as a series of
diff --git a/docs/url-params.md b/docs/url_params.md
similarity index 62%
rename from docs/url-params.md
rename to docs/url_params.md
index e24e9823..e88e7095 100644
--- a/docs/url-params.md
+++ b/docs/url_params.md
@@ -4,7 +4,7 @@ There are two formats for Element Call URLs.
## Link for sharing
-Requires Element Call to be deployed in [standalone](./embedded-standalone.md) mode.
+Requires Element Call to be deployed in [standalone](./embedded_standalone.md) mode.
```text
https://element_call.domain/room/#
@@ -36,46 +36,45 @@ possible to support encryption.
| Package | Deployment | URL |
| ------------------------------------ | ----------------------------- | ----------------------------------------------------------------------------- |
-| [Full](./embedded-standalone.md) | All | `https://element_call.domain/room` |
-| [Embedded](./embedded-standalone.md) | Remote URL | `https://element_call.domain/` n.b. no `/room` part |
-| [Embedded](./embedded-standalone.md) | Embedded within messenger app | Platform dependent, but you load the `index.html` file without a `/room` part |
+| [Full](./embedded_standalone.md) | All | `https://element_call.domain/room` |
+| [Embedded](./embedded_standalone.md) | Remote URL | `https://element_call.domain/` n.b. no `/room` part |
+| [Embedded](./embedded_standalone.md) | Embedded within messenger app | Platform dependent, but you load the `index.html` file without a `/room` part |
## Parameters
### Common Parameters
-These parameters are relevant to both [widget](./embedded-standalone.md) and [standalone](./embedded-standalone.md) modes:
+These parameters are relevant to both [widget](./embedded_standalone.md) and [standalone](./embedded_standalone.md) modes:
-| Name | Values | Required for widget | Required for SPA | Description |
-| ---------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
-| `intent` | `start_call`, `join_existing`, `start_call_dm`, `join_existing_dm. | No, defaults to `start_call` | No, defaults to `start_call` | The intent is a special url parameter that defines the defaults for all the other parameters. In most cases it should be enough to only set the intent to setup element-call. |
-| `allowIceFallback` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Allows use of fallback STUN servers for ICE if the user's homeserver doesn’t provide any. |
-| `posthogUserId` | Posthog analytics ID | No | No | Available only with user's consent for sharing telemetry in Element Web. |
-| `appPrompt` | `true` or `false` | No, defaults to `true` | No, defaults to `true` | Prompts the user to launch the native mobile app upon entering a room, applicable only on Android and iOS, and must be enabled in config. |
-| `confineToRoom` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Keeps the user confined to the current call/room. |
-| `displayName` | | No | No | Display name used for auto-registration. |
-| `enableE2EE` (deprecated) | `true` or `false` | No, defaults to `true` | No, defaults to `true` | Legacy flag to enable end-to-end encryption, not used in the `livekit` branch. |
-| `fontScale` | A decimal number such as `0.9` | No, defaults to `1.0` | No, defaults to `1.0` | Factor by which to scale the interface's font size. |
-| `fonts` | | No | No | Defines the font(s) used by the interface. Multiple font parameters can be specified: `?font=font-one&font=font-two...`. |
-| `header` | `none`, `standard` or `app_bar` | No, defaults to `standard` | No, defaults to `standard` | The style of headers to show. `standard` is the default arrangement, `none` hides the header entirely, and `app_bar` produces a header with a back button like you might see in mobile apps. The callback for the back button is `window.controls.onBackButtonPressed`. |
-| `hideScreensharing` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Hides the screen-sharing button. |
-| `homeserver` | | Not applicable | No | Homeserver for registering a new (guest) user, configures non-default guest user server when creating a spa link. |
-| `lang` | [BCP 47](https://www.rfc-editor.org/info/bcp47) code | No | No | The language the app should use. |
-| `password` | | No | No | E2EE password when using a shared secret. (For individual sender keys in embedded mode this is not required.) |
-| `perParticipantE2EE` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Enables per participant encryption with Keys exchanged over encrypted matrix room messages. |
-| `controlledAudioDevices` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Whether the [global JS controls for audio devices](./controls.md#audio-devices) should be enabled, allowing the list of audio devices to be controlled by the app hosting Element Call. |
-| `roomId` | [Matrix Room ID](https://spec.matrix.org/v1.12/appendices/#room-ids) | Yes | No | Anything about what room we're pointed to should be from useRoomIdentifier which parses the path and resolves alias with respect to the default server name, however roomId is an exception as we need the room ID in embedded widget mode, and not the room alias (or even the via params because we are not trying to join it). This is also not validated, where it is in `useRoomIdentifier()`. |
-| `showControls` | `true` or `false` | No, defaults to `true` | No, defaults to `true` | Displays controls like mute, screen-share, invite, and hangup buttons during a call. |
-| `skipLobby` (deprecated: use `intent` instead) | `true` or `false` | No. If `intent` is explicitly `start_call` then defaults to `true`. Otherwise defaults to `false` | No, defaults to `false` | Skips the lobby to join a call directly, can be combined with preload in widget. When `true` the audio and video inputs will be muted by default. (This means there currently is no way to start without muted video if one wants to skip the lobby. Also not in widget mode.) |
-| `theme` | One of: `light`, `dark`, `light-high-contrast`, `dark-high-contrast` | No, defaults to `dark` | No, defaults to `dark` | UI theme to use. |
-| `viaServers` | Comma separated list of [Matrix Server Names](https://spec.matrix.org/v1.12/appendices/#server-name) | Not applicable | No | Homeserver for joining a room, non-empty value required for rooms not on the user’s default homeserver. |
-| `sendNotificationType` | `ring` or `notification` | No | No | Will send a "ring" or "notification" `m.rtc.notification` event if the user is the first one in the call. |
-| `autoLeaveWhenOthersLeft` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Whether the app should automatically leave the call when there is no one left in the call. |
-| `waitForCallPickup` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | When sending a notification, show UI that the app is awaiting an answer, play a dial tone, and (in widget mode) auto-close the widget once the notification expires. |
+| Name | Values | Required for widget | Required for SPA | Description |
+| ---------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------- | ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| `intent` | `start_call`, `join_existing`, `start_call_voice`, `join_existing_voice`, `start_call_dm`, `join_existing_dm`, `start_call_dm_voice`, or `join_existing_dm_voice`. | No, defaults to `start_call` | No, defaults to `start_call` | The intent is a special url parameter that defines the defaults for all the other parameters. In most cases it should be enough to only set the intent to setup element-call. |
+| `allowIceFallback` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Allows use of fallback STUN servers for ICE if the user's homeserver doesn’t provide any. |
+| `posthogUserId` | Posthog analytics ID | No | No | Available only with user's consent for sharing telemetry in Element Web. |
+| `confineToRoom` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Keeps the user confined to the current call/room. |
+| `displayName` | | No | No | Display name used for auto-registration. |
+| `enableE2EE` (deprecated) | `true` or `false` | No, defaults to `true` | No, defaults to `true` | Legacy flag to enable end-to-end encryption, not used in the `livekit` branch. |
+| `fontScale` | A decimal number such as `0.9` | No, defaults to `1.0` | No, defaults to `1.0` | Factor by which to scale the interface's font size. |
+| `fonts` | | No | No | Defines the font(s) used by the interface. Multiple font parameters can be specified: `?font=font-one&font=font-two...`. |
+| `header` | `none`, `standard` or `app_bar` | No, defaults to `standard` | No, defaults to `standard` | The style of headers to show. `standard` is the default arrangement, `none` hides the header entirely, and `app_bar` produces a header with a back button like you might see in mobile apps. The callback for the back button is `window.controls.onBackButtonPressed`. |
+| `hideScreensharing` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Hides the screen-sharing button. |
+| `homeserver` | | Not applicable | No | Homeserver for registering a new (guest) user, configures non-default guest user server when creating a spa link. |
+| `lang` | [BCP 47](https://www.rfc-editor.org/info/bcp47) code | No | No | The language the app should use. |
+| `password` | | No | No | E2EE password when using a shared secret. (For individual sender keys in embedded mode this is not required.) |
+| `perParticipantE2EE` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Enables per participant encryption with Keys exchanged over encrypted matrix room messages. |
+| `controlledAudioDevices` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Whether the [global JS controls for audio devices](./controls.md#audio-devices) should be enabled, allowing the list of audio devices to be controlled by the app hosting Element Call. |
+| `roomId` | [Matrix Room ID](https://spec.matrix.org/v1.12/appendices/#room-ids) | Yes | No | Anything about what room we're pointed to should be from useRoomIdentifier which parses the path and resolves alias with respect to the default server name, however roomId is an exception as we need the room ID in embedded widget mode, and not the room alias (or even the via params because we are not trying to join it). This is also not validated, where it is in `useRoomIdentifier()`. |
+| `showControls` | `true` or `false` | No, defaults to `true` | No, defaults to `true` | Displays controls like mute, screen-share, invite, and hangup buttons during a call. |
+| `skipLobby` (deprecated: use `intent` instead) | `true` or `false` | No. If `intent` is explicitly `start_call` then defaults to `true`. Otherwise defaults to `false` | No, defaults to `false` | Skips the lobby to join a call directly, can be combined with preload in widget. When `true` the audio and video inputs will be muted by default. (This means there currently is no way to start without muted video if one wants to skip the lobby. Also not in widget mode.) |
+| `theme` | One of: `light`, `dark`, `light-high-contrast`, `dark-high-contrast` | No, defaults to `dark` | No, defaults to `dark` | UI theme to use. |
+| `viaServers` | Comma separated list of [Matrix Server Names](https://spec.matrix.org/v1.12/appendices/#server-name) | Not applicable | No | Homeserver for joining a room, non-empty value required for rooms not on the user’s default homeserver. |
+| `sendNotificationType` | `ring` or `notification` | No | No | Will send a "ring" or "notification" `m.rtc.notification` event if the user is the first one in the call. |
+| `autoLeaveWhenOthersLeft` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | Whether the app should automatically leave the call when there is no one left in the call. |
+| `waitForCallPickup` | `true` or `false` | No, defaults to `false` | No, defaults to `false` | When sending a notification, show UI that the app is awaiting an answer, play a dial tone, and (in widget mode) auto-close the widget once the notification expires. |
### Widget-only parameters
-These parameters are only supported in [widget](./embedded-standalone.md) mode.
+These parameters are only supported in [widget](./embedded_standalone.md) mode.
| Name | Values | Required | Description |
| --------------- | ----------------------------------------------------------------------------------------- | ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
@@ -90,7 +89,7 @@ These parameters are only supported in [widget](./embedded-standalone.md) mode.
### Embedded-only parameters
-These parameters are only supported in the [embedded](./embedded-standalone.md) package of Element Call and will be ignored in the [full](./embedded-standalone.md) package.
+These parameters are only supported in the [embedded](./embedded_standalone.md) package of Element Call and will be ignored in the [full](./embedded_standalone.md) package.
| Name | Values | Required | Description |
| -------------------- | -------------------------------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------- |
diff --git a/embedded/android/publish_android_package.sh b/embedded/android/publish_android_package.sh
index 8c310c9b..31693317 100755
--- a/embedded/android/publish_android_package.sh
+++ b/embedded/android/publish_android_package.sh
@@ -11,7 +11,7 @@ pushd $CURRENT_DIR > /dev/null
function build_assets() {
echo "Generating Element Call assets..."
pushd ../.. > /dev/null
- yarn build
+ pnpm build
popd > /dev/null
}
@@ -26,7 +26,7 @@ function copy_assets() {
}
getopts :sh opt
-case $opt in
+case $opt in
s)
SKIP=1
;;
@@ -41,7 +41,7 @@ if [ ! $SKIP ]; then
echo ""
if [[ $REPLY =~ ^[Yy]$ ]]; then
build_assets
- else
+ else
echo "Using existing assets from ../../dist"
fi
copy_assets
@@ -56,4 +56,4 @@ echo "Publishing the Android project"
./gradlew publishAndReleaseToMavenCentral --no-daemon
-popd > /dev/null
\ No newline at end of file
+popd > /dev/null
diff --git a/knip.ts b/knip.ts
index 3be3e653..d7628941 100644
--- a/knip.ts
+++ b/knip.ts
@@ -18,6 +18,7 @@ export default {
// https://docs.docker.com/compose/migrate/
"docker-compose",
],
+ ignoreFiles: ["scripts/.pnpmfile.cjs"],
ignoreDependencies: [
// Used in CSS
"normalize.css",
@@ -30,16 +31,10 @@ export default {
"@types/content-type",
"@types/sdp-transform",
"@types/uuid",
- // We obviously use this, but if the package has been linked with yarn link,
+ // We obviously use this, but if the package has been linked with pnpm link,
// then Knip will flag it as a false positive
// https://github.com/webpro-nl/knip/issues/766
"@vector-im/compound-web",
- // Yarn plugins are allowed to depend on packages provided by the Yarn
- // runtime. These shouldn't be listed in package.json, because plugins
- // should work before Yarn even installs dependencies for the first time.
- // https://yarnpkg.com/advanced/plugin-tutorial#what-does-a-plugin-look-like
- "@yarnpkg/core",
- "@yarnpkg/parsers",
"matrix-widget-api",
],
ignoreExportsUsedInFile: true,
diff --git a/locales/cs/app.json b/locales/cs/app.json
index f307bf6b..46e96bde 100644
--- a/locales/cs/app.json
+++ b/locales/cs/app.json
@@ -22,12 +22,6 @@
"upload_file": "Nahrát soubor"
},
"analytics_notice": "Účastí v této beta verzi souhlasíte se shromažďováním anonymních údajů, které používáme ke zlepšování produktu. Více informací o tom, které údaje sledujeme, najdete v našich <2>Zásadách ochrany osobních údajů2> a <6>Zásadách používání souborů cookie6>.",
- "app_selection_modal": {
- "continue_in_browser": "Pokračovat v prohlížeči",
- "open_in_app": "Otevřít v aplikaci",
- "text": "Jste připraveni se připojit?",
- "title": "Vybrat aplikaci"
- },
"call_ended_view": {
"create_account_button": "Vytvořit účet",
"create_account_prompt": "<0>Proč neskončit nastavením hesla, abyste mohli účet použít znovu?0><1>Budete si moci nechat své jméno a nastavit si avatar pro budoucí hovory 1>",
diff --git a/locales/da/app.json b/locales/da/app.json
index 7708551f..73d883cf 100644
--- a/locales/da/app.json
+++ b/locales/da/app.json
@@ -22,12 +22,6 @@
"upload_file": "Upload fil"
},
"analytics_notice": "Ved at deltage i denne beta giver du samtykke til indsamling af anonyme data, som vi bruger til at forbedre produktet. Du kan finde flere oplysninger om, hvilke data vi sporer, i vores <2>fortrolighedspolitik2> og vores <6>cookiepolitik6>.",
- "app_selection_modal": {
- "continue_in_browser": "Fortsæt i browseren",
- "open_in_app": "Åbn i appen",
- "text": "Klar til at deltage?",
- "title": "Vælg app"
- },
"call_ended_view": {
"create_account_button": "Opret konto",
"create_account_prompt": "<0>Hvorfor ikke afslutte med at oprette en adgangskode for at beholde din konto? 0><1>Du kan beholde dit navn og indstille en avatar til brug ved fremtidige opkald 1>",
diff --git a/locales/de/app.json b/locales/de/app.json
index bb6328e7..95cc49a5 100644
--- a/locales/de/app.json
+++ b/locales/de/app.json
@@ -22,12 +22,6 @@
"upload_file": "Datei hochladen"
},
"analytics_notice": "Mit der Teilnahme an der Beta akzeptierst du die Sammlung von anonymen Daten, die wir zur Verbesserung des Produkts verwenden. Weitere Informationen zu den von uns erhobenen Daten findest du in unserer <2>Datenschutzerklärung2> und unseren <6>Cookie-Richtlinien6>.",
- "app_selection_modal": {
- "continue_in_browser": "Weiter im Browser",
- "open_in_app": "In der App öffnen",
- "text": "Bereit, beizutreten?",
- "title": "App auswählen"
- },
"call_ended_view": {
"create_account_button": "Konto erstellen",
"create_account_prompt": "<0>Warum vergibst du nicht abschließend ein Passwort, um dein Konto zu erhalten?0><1>Du kannst deinen Namen behalten und ein Profilbild für zukünftige Anrufe festlegen.1>",
diff --git a/locales/el/app.json b/locales/el/app.json
index 6eec5278..e85fbc9d 100644
--- a/locales/el/app.json
+++ b/locales/el/app.json
@@ -22,12 +22,6 @@
"upload_file": "Μεταφόρτωση αρχείου"
},
"analytics_notice": "Συμμετέχοντας σε αυτή τη δοκιμαστική έκδοση, συναινείτε στη συλλογή ανώνυμων δεδομένων, τα οποία χρησιμοποιούμε για τη βελτίωση του προϊόντος. Μπορείτε να βρείτε περισσότερες πληροφορίες σχετικά με το ποια δεδομένα καταγράφουμε στην <2>Πολιτική απορρήτου2> και στην <6>Πολιτική cookies6>.",
- "app_selection_modal": {
- "continue_in_browser": "Συνέχεια στο πρόγραμμα περιήγησης",
- "open_in_app": "Ανοίξτε στην εφαρμογή",
- "text": "Έτοιμοι να συμμετάσχετε?",
- "title": "Επιλέξτε εφαρμογή"
- },
"call_ended_view": {
"create_account_button": "Δημιουργία λογαριασμού",
"create_account_prompt": "<0>Γιατί να μην ολοκληρώσετε με τη δημιουργία ενός κωδικού πρόσβασης για τη διατήρηση του λογαριασμού σας;0><1>Θα μπορείτε να διατηρήσετε το όνομά σας και να ορίσετε ένα avatar για χρήση σε μελλοντικές κλήσεις.1>",
diff --git a/locales/en/app.json b/locales/en/app.json
index f5749cf7..5398930f 100644
--- a/locales/en/app.json
+++ b/locales/en/app.json
@@ -22,12 +22,6 @@
"upload_file": "Upload file"
},
"analytics_notice": "By participating in this beta, you consent to the collection of anonymous data, which we use to improve the product. You can find more information about which data we track in our <2>Privacy Policy2> and our <6>Cookie Policy6>.",
- "app_selection_modal": {
- "continue_in_browser": "Continue in browser",
- "open_in_app": "Open in the app",
- "text": "Ready to join?",
- "title": "Select app"
- },
"call_ended_view": {
"create_account_button": "Create account",
"create_account_prompt": "<0>Why not finish by setting up a password to keep your account?0><1>You'll be able to keep your name and set an avatar for use on future calls1>",
diff --git a/locales/es/app.json b/locales/es/app.json
index df9948b4..e84ef1d8 100644
--- a/locales/es/app.json
+++ b/locales/es/app.json
@@ -15,12 +15,6 @@
"submit": "Enviar"
},
"analytics_notice": "Al participar en esta beta, consientes a la recogida de datos anónimos, los cuales usaremos para mejorar el producto. Puedes encontrar más información sobre que datos recogemos en nuestra <2>Política de privacidad2> y en nuestra <5>Política sobre Cookies5>.",
- "app_selection_modal": {
- "continue_in_browser": "Continuar en el navegador",
- "open_in_app": "Abrir en la aplicación",
- "text": "¿Listo para unirte?",
- "title": "Selecciona aplicación"
- },
"call_ended_view": {
"create_account_button": "Crear cuenta",
"create_account_prompt": "<0>¿Por qué no mantienes tu cuenta estableciendo una contraseña?0><1>Podrás mantener tu nombre y establecer un avatar para usarlo en futuras llamadas1>",
diff --git a/locales/et/app.json b/locales/et/app.json
index e269e53f..450a1e7d 100644
--- a/locales/et/app.json
+++ b/locales/et/app.json
@@ -22,12 +22,6 @@
"upload_file": "Laadi fail üles"
},
"analytics_notice": "Nõustudes selle beetaversiooni kasutamisega, sa nõustud ka toote arendamiseks kasutatavate anonüümsete andmete kogumisega. Täpsemat teavet kogutavate andmete kohta leiad meie <2>Privaatsuspoliitikast2> ja meie <6>Küpsiste kasutamise reeglitest6>.",
- "app_selection_modal": {
- "continue_in_browser": "Jätka veebibrauseris",
- "open_in_app": "Ava rakenduses",
- "text": "Oled valmis liituma?",
- "title": "Vali rakendus"
- },
"call_ended_view": {
"create_account_button": "Loo konto",
"create_account_prompt": "<0>Kas soovid salasõna seadistada ja sellega oma kasutajakonto alles jätta?0><1>Nii saad säilitada oma nime ja määrata profiilipildi, mida saad kasutada tulevastes kõnedes1>",
diff --git a/locales/fi/app.json b/locales/fi/app.json
index 9e8a463c..8728cd68 100644
--- a/locales/fi/app.json
+++ b/locales/fi/app.json
@@ -22,12 +22,6 @@
"upload_file": "Lähetä tiedosto"
},
"analytics_notice": "Osallistumalla tähän betaan hyväksyt nimettömien tietojen keräämisen, joita käytämme tuotteen parantamiseen. Löydät lisätietoa siitä, mitä tietoja seuraamme meidän <2> Tietosuojakäytännöstä2> ja <6>Evästekäytännöstä6> .",
- "app_selection_modal": {
- "continue_in_browser": "Jatka selaimessa",
- "open_in_app": "Avaa sovelluksessa",
- "text": "Oletko valmis liittymään?",
- "title": "Valitse sovellus"
- },
"call_ended_view": {
"create_account_button": "Luo tili",
"create_account_prompt": "<0>Miksi et viimeistelisi määrittämällä salasanaa tilisi säilyttämiseksi?0><1>Voit säilyttää nimesi ja asettaa avatarin käytettäväksi tulevissa puheluissa1>",
diff --git a/locales/fr/app.json b/locales/fr/app.json
index 279542b1..4acda0e1 100644
--- a/locales/fr/app.json
+++ b/locales/fr/app.json
@@ -15,12 +15,6 @@
"submit": "Envoyer"
},
"analytics_notice": "En participant à cette beta, vous consentez à la collecte de données anonymes, qui seront utilisées pour améliorer le produit. Vous trouverez plus d’informations sur les données collectées dans notre <2>Politique de vie privée2> et notre <5>Politique de cookies5>.",
- "app_selection_modal": {
- "continue_in_browser": "Continuer dans le navigateur",
- "open_in_app": "Ouvrir dans l’application",
- "text": "Prêt à rejoindre ?",
- "title": "Choisissez l’application"
- },
"call_ended_view": {
"create_account_button": "Créer un compte",
"create_account_prompt": "<0>Pourquoi ne pas créer un mot de passe pour conserver votre compte ?0><1>Vous pourrez garder votre nom et définir un avatar pour vos futurs appels1>",
diff --git a/locales/id/app.json b/locales/id/app.json
index ac1c6221..b8001897 100644
--- a/locales/id/app.json
+++ b/locales/id/app.json
@@ -22,12 +22,6 @@
"upload_file": "Unggah berkas"
},
"analytics_notice": "Dengan bergabung dalam beta ini, Anda mengizinkan kami untuk mengumpulkan data anonim, yang kami gunakan untuk meningkatkan produk ini. Anda dapat mempelajari lebih lanjut tentang data apa yang kami lacak dalam <2>Kebijakan Privasi2> dan <5>Kebijakan Kuki5> kami.",
- "app_selection_modal": {
- "continue_in_browser": "Lanjutkan dalam peramban",
- "open_in_app": "Buka dalam aplikasi",
- "text": "Siap untuk bergabung?",
- "title": "Pilih plikasi"
- },
"call_ended_view": {
"create_account_button": "Buat akun",
"create_account_prompt": "<0>Kenapa tidak selesaikan dengan mengatur sebuah kata sandi untuk menjaga akun Anda?0><1>Anda akan dapat tetap menggunakan nama Anda dan atur sebuah avatar untuk digunakan dalam panggilan di masa mendatang1>",
diff --git a/locales/it/app.json b/locales/it/app.json
index d3708d11..84701c1c 100644
--- a/locales/it/app.json
+++ b/locales/it/app.json
@@ -22,12 +22,6 @@
"upload_file": "Carica file"
},
"analytics_notice": "Partecipando a questa beta, acconsenti alla raccolta di dati anonimi che usiamo per migliorare il prodotto. Puoi trovare più informazioni su quali dati monitoriamo nella nostra <2>informativa sulla privacy2> e nell'<5>informativa sui cookie5>.",
- "app_selection_modal": {
- "continue_in_browser": "Continua nel browser",
- "open_in_app": "Apri nell'app",
- "text": "Tutto pronto per entrare?",
- "title": "Seleziona app"
- },
"call_ended_view": {
"create_account_button": "Crea profilo",
"create_account_prompt": "<0>Ti va di terminare impostando una password per mantenere il profilo?0><1>Potrai mantenere il tuo nome e impostare un avatar da usare in chiamate future1>",
diff --git a/locales/ja/app.json b/locales/ja/app.json
index 2b52cfe2..152ef51f 100644
--- a/locales/ja/app.json
+++ b/locales/ja/app.json
@@ -15,12 +15,6 @@
"submit": "送信"
},
"analytics_notice": "ベータ版への参加と同時に、製品の改善のために匿名データを収集することに同意したことになります。追跡するデータの詳細については、<2>プライバシーポリシー2>と<6>クッキーポリシー6>をご確認下さい。",
- "app_selection_modal": {
- "continue_in_browser": "ブラウザで続行",
- "open_in_app": "アプリで開く",
- "text": "準備完了?",
- "title": "アプリを選択"
- },
"call_ended_view": {
"create_account_button": "アカウントを作成",
"create_account_prompt": "<0>パスワードを設定してアカウント設定を保持してみませんか?0><1>名前とアバターの設定を次の通話に利用する事ができます。1>",
diff --git a/locales/lv/app.json b/locales/lv/app.json
index 4c351d97..f5220310 100644
--- a/locales/lv/app.json
+++ b/locales/lv/app.json
@@ -22,12 +22,6 @@
"upload_file": "Augšupielādēt failu"
},
"analytics_notice": "Piedaloties šajā beta versijā, jūs piekrītat anonīmu datu vākšanai, ko mēs izmantojam produkta uzlabošanai. Plašāku informāciju par to, kādus datus mēs izsekojam, varat atrast mūsu <2>konfidencialitātes politikā2> un mūsu <6>sīkfailu politikā6>.",
- "app_selection_modal": {
- "continue_in_browser": "Turpināt pārlūkprogrammā",
- "open_in_app": "Atvērt lietotnē",
- "text": "Gatavs pievienoties?",
- "title": "Izvēlies lietotni"
- },
"call_ended_view": {
"create_account_button": "Izveidot kontu",
"create_account_prompt": "<0>Kādēļ nepabeigt ar paroles iestatīšanu, lai paturētu savu kontu?0><1>Būs iespējams paturēt savu vārdu un iestatīt attēlu izmantošanai turpmākajos zvanos1>",
diff --git a/locales/pl/app.json b/locales/pl/app.json
index c6d9a0f3..c2b25675 100644
--- a/locales/pl/app.json
+++ b/locales/pl/app.json
@@ -22,12 +22,6 @@
"upload_file": "Prześlij plik"
},
"analytics_notice": "Uczestnicząc w tej becie, upoważniasz nas do zbierania anonimowych danych, które wykorzystamy do ulepszenia produktu. Dowiedz się więcej na temat danych, które zbieramy w naszej <2>Polityce prywatności2> i <5>Polityce ciasteczek5>.",
- "app_selection_modal": {
- "continue_in_browser": "Kontynuuj w przeglądarce",
- "open_in_app": "Otwórz w aplikacji",
- "text": "Gotowy, by dołączyć?",
- "title": "Wybierz aplikację"
- },
"call_ended_view": {
"create_account_button": "Utwórz konto",
"create_account_prompt": "<0>Może zechcesz ustawić hasło, aby zachować swoje konto?0><1>Będziesz w stanie utrzymać swoją nazwę i ustawić awatar do wyświetlania podczas połączeń w przyszłości1>",
diff --git a/locales/ro/app.json b/locales/ro/app.json
index ceaa79b7..d733cbba 100644
--- a/locales/ro/app.json
+++ b/locales/ro/app.json
@@ -22,12 +22,6 @@
"upload_file": "Încărcați fișierul"
},
"analytics_notice": "Prin participarea la această versiune beta, sunteți de acord cu colectarea de date anonime, pe care le folosim pentru a îmbunătăți produsul. Puteți găsi mai multe informații despre datele pe care le urmărim în Politica noastră de <2> confidențialitate 2> și Politica noastră <6> privind cookie-urile6>.",
- "app_selection_modal": {
- "continue_in_browser": "Continuați în browser",
- "open_in_app": "Deschideți în aplicație",
- "text": "Sunteți gata să vă alăturați?",
- "title": "Selectați o aplicație"
- },
"call_ended_view": {
"create_account_button": "Creaţi un cont",
"create_account_prompt": "<0>De ce să nu terminați prin configurarea unei parole pentru a vă păstra contul? 0><1>Veți putea să vă păstrați numele și să setați un avatar pentru a fi utilizat la apelurile viitoare 1>",
diff --git a/locales/ru/app.json b/locales/ru/app.json
index 99b8775a..651d119d 100644
--- a/locales/ru/app.json
+++ b/locales/ru/app.json
@@ -22,12 +22,6 @@
"upload_file": "Загрузить файл"
},
"analytics_notice": "Участвуя в этой бета-версии, вы соглашаетесь на сбор анонимных данных, которые мы используем для улучшения продукта. Дополнительную информацию о том, какие данные мы отслеживаем, можно найти в нашей <2> Политике конфиденциальности 2> и Политике <6> использования файлов cookie6>.",
- "app_selection_modal": {
- "continue_in_browser": "Продолжить в браузере",
- "open_in_app": "Открыть в приложении",
- "text": "Готовы присоединиться?",
- "title": "Выбрать приложение"
- },
"call_ended_view": {
"create_account_button": "Создать аккаунт",
"create_account_prompt": "<0>Почему бы не задать пароль, тем самым сохранив аккаунт?0><1>Так вы можете оставить своё имя и задать аватар для будущих звонков.1>",
diff --git a/locales/sk/app.json b/locales/sk/app.json
index d017220b..d2a12f26 100644
--- a/locales/sk/app.json
+++ b/locales/sk/app.json
@@ -22,12 +22,6 @@
"upload_file": "Nahrať súbor"
},
"analytics_notice": "Účasťou v tejto beta verzii súhlasíte so zhromažďovaním anonymných údajov, ktoré použijeme na zlepšenie produktu. Viac informácií o tom, ktoré údaje sledujeme, nájdete v našich <2>Zásadách ochrany osobných údajov2> a <6>Zásadách používania súborov cookie6>.",
- "app_selection_modal": {
- "continue_in_browser": "Pokračovať v prehliadači",
- "open_in_app": "Otvoriť v aplikácii",
- "text": "Ste pripravení sa pridať?",
- "title": "Vybrať aplikáciu"
- },
"call_ended_view": {
"create_account_button": "Vytvoriť účet",
"create_account_prompt": "<0>Prečo neskončiť nastavením hesla, aby ste si zachovali svoj účet? 0><1>Budete si môcť ponechať svoje meno a nastaviť obrázok, ktorý sa bude používať pri budúcich hovoroch1>",
diff --git a/locales/sv/app.json b/locales/sv/app.json
index bf0b742f..748e124f 100644
--- a/locales/sv/app.json
+++ b/locales/sv/app.json
@@ -22,12 +22,6 @@
"upload_file": "Ladda upp fil"
},
"analytics_notice": "Genom att delta i denna beta samtycker du till insamling av anonyma uppgifter, som vi använder för att förbättra produkten. Du kan hitta mer information om vilka data vi spårar i vår <2>integritetspolicy2> och vår <5>cookiepolicy5>.",
- "app_selection_modal": {
- "continue_in_browser": "Fortsätt i webbläsaren",
- "open_in_app": "Öppna i appen",
- "text": "Är du redo att gå med?",
- "title": "Välj app"
- },
"call_ended_view": {
"create_account_button": "Skapa konto",
"create_account_prompt": "<0>Varför inte avsluta genom att skapa ett lösenord för att behålla ditt konto?0><1>Du kommer att kunna behålla ditt namn och ställa in en avatar för användning vid framtida samtal1>",
diff --git a/locales/tr/app.json b/locales/tr/app.json
index da26eb0f..c976e984 100644
--- a/locales/tr/app.json
+++ b/locales/tr/app.json
@@ -22,12 +22,6 @@
"upload_file": "Dosya Yükle"
},
"analytics_notice": "Bu beta sürümüne katılarak, ürünü geliştirmek için kullandığımız anonim verilerin toplanmasına izin vermiş olursunuz. Hangi verileri izlediğimiz hakkında daha fazla bilgiyi <2>Gizlilik Politikamızda2> ve <6>Çerez Politikamızda bulabilirsiniz6>..",
- "app_selection_modal": {
- "continue_in_browser": "Tarayıcıda devam et",
- "open_in_app": "Uygulamada aç",
- "text": "Katılmaya hazır mısınız?",
- "title": "Uygulama seçin"
- },
"call_ended_view": {
"create_account_button": "Hesap aç",
"create_account_prompt": "<0>Hesabınızı tutmak için niye bir parola açmıyorsunuz?0><1>Böylece ileriki aramalarda adınızı ve avatarınızı kullanabileceksiniz1>",
diff --git a/locales/uk/app.json b/locales/uk/app.json
index d7d1b0ea..bcccf310 100644
--- a/locales/uk/app.json
+++ b/locales/uk/app.json
@@ -22,12 +22,6 @@
"upload_file": "Завантажити файл"
},
"analytics_notice": "Користуючись дочасним доступом, ви даєте згоду на збір анонімних даних, які ми використовуємо для вдосконалення продукту. Ви можете знайти більше інформації про те, які дані ми відстежуємо в нашій <2>Політиці Приватності2> і нашій <6>Політиці про файли cookie6>.",
- "app_selection_modal": {
- "continue_in_browser": "Продовжити у браузері",
- "open_in_app": "Відкрити у застосунку",
- "text": "Готові приєднатися?",
- "title": "Вибрати застосунок"
- },
"call_ended_view": {
"create_account_button": "Створити обліковий запис",
"create_account_prompt": "<0>Чому б не завершити, налаштувавши пароль для збереження свого облікового запису?0><1>Ви зможете зберегти своє ім'я та встановити аватарку для подальшого користування під час майбутніх викликів1>",
diff --git a/locales/zh-Hans/app.json b/locales/zh-Hans/app.json
index 9c0e7c8f..17a4f60f 100644
--- a/locales/zh-Hans/app.json
+++ b/locales/zh-Hans/app.json
@@ -15,12 +15,6 @@
"submit": "提交"
},
"analytics_notice": "参与测试即表示您同意我们收集匿名数据,用于改进产品。您可以在我们的<2>隐私政策2>和<5>Cookie政策5>中找到有关我们跟踪哪些数据以及更多信息。",
- "app_selection_modal": {
- "continue_in_browser": "在浏览器中继续",
- "open_in_app": "在应用中打开",
- "text": "准备好加入了吗?",
- "title": "选择应用程序"
- },
"call_ended_view": {
"create_account_button": "创建账户",
"create_account_prompt": "<0>为何不设置密码来保留你的账户?0><1>保留昵称并设置头像,以便在未来的通话中使用。1>",
diff --git a/locales/zh-Hant/app.json b/locales/zh-Hant/app.json
index 8d474be5..06cf1e4a 100644
--- a/locales/zh-Hant/app.json
+++ b/locales/zh-Hant/app.json
@@ -15,12 +15,6 @@
"submit": "遞交"
},
"analytics_notice": "參與此測試版即表示您同意蒐集匿名資料,我們使用這些資料來改進產品。您可以在我們的<2>隱私政策2>與我們的 <5>Cookie 政策5> 中找到關於我們追蹤哪些資料的更多資訊。",
- "app_selection_modal": {
- "continue_in_browser": "在瀏覽器中繼續",
- "open_in_app": "在應用程式中開啟",
- "text": "準備好加入了?",
- "title": "選取應用程式"
- },
"call_ended_view": {
"create_account_button": "建立帳號",
"create_account_prompt": "<0>何不設定密碼以保留此帳號?0><1>您可以保留暱稱並設定頭像,以便未來通話時使用1>",
diff --git a/package.json b/package.json
index cc8a36eb..87204c66 100644
--- a/package.json
+++ b/package.json
@@ -3,23 +3,23 @@
"version": "0.0.0",
"type": "module",
"scripts": {
- "dev": "yarn dev:full",
+ "dev": "pnpm dev:full",
"dev:full": "vite",
"dev:embedded": "vite --config vite-embedded.config.js",
- "build": "yarn build:full",
+ "build": "pnpm build:full",
"build:full": "NODE_OPTIONS=--max-old-space-size=16384 vite build",
- "build:full:production": "yarn build:full",
- "build:full:development": "yarn build:full --mode development",
- "build:embedded": "yarn build:full --config vite-embedded.config.js",
- "build:embedded:production": "yarn build:embedded",
- "build:embedded:development": "yarn build:embedded --mode development",
- "build:sdk:development": "yarn build:sdk --mode development",
- "build:sdk": "yarn build:full --config vite-sdk.config.js",
- "build:sdk:production": "yarn build:sdk",
+ "build:full:production": "pnpm build:full",
+ "build:full:development": "pnpm build:full --mode development",
+ "build:embedded": "pnpm build:full --config vite-embedded.config.js",
+ "build:embedded:production": "pnpm build:embedded",
+ "build:embedded:development": "pnpm build:embedded --mode development",
+ "build:sdk:development": "pnpm build:sdk --mode development",
+ "build:sdk": "pnpm build:full --config vite-sdk.config.js",
+ "build:sdk:production": "pnpm build:sdk",
"serve": "vite preview",
"prettier:check": "prettier -c .",
"prettier:format": "prettier -w .",
- "lint": "yarn lint:types && yarn lint:eslint && yarn lint:knip",
+ "lint": "pnpm lint:types && pnpm lint:eslint && pnpm lint:knip",
"lint:eslint": "eslint --max-warnings 0 src playwright",
"lint:eslint-fix": "eslint --max-warnings 0 src playwright --fix",
"lint:knip": "knip",
@@ -31,9 +31,11 @@
"backend": "docker-compose -f dev-backend-docker-compose.yml up",
"backend-playwright": "docker-compose -f playwright-backend-docker-compose.yml -f playwright-backend-docker-compose.override.yml up",
"test:playwright": "playwright test",
- "test:playwright:open": "yarn test:playwright --ui",
- "links:enable": "mv .links.disabled.yaml .links.yaml & touch .links.yaml",
- "links:disable": "mv .links.yaml .links.disabled.yaml"
+ "test:playwright:open": "pnpm test:playwright --ui",
+ "links:on": "cp scripts/.pnpmfile.cjs .pnpmfile.cjs & pnpm install",
+ "links:off": "rm .pnpmfile.cjs & pnpm install",
+ "storybook": "storybook dev -p 6006",
+ "build-storybook": "storybook build"
},
"devDependencies": {
"@babel/core": "^7.16.5",
@@ -57,6 +59,8 @@
"@react-spring/web": "^10.0.0",
"@sentry/react": "^8.0.0",
"@sentry/vite-plugin": "^3.0.0",
+ "@storybook/addon-docs": "^10.3.3",
+ "@storybook/react-vite": "^10.3.3",
"@stylistic/eslint-plugin": "^3.0.0",
"@testing-library/dom": "^10.1.0",
"@testing-library/jest-dom": "^6.6.3",
@@ -76,8 +80,8 @@
"@typescript-eslint/eslint-plugin": "^8.31.0",
"@typescript-eslint/parser": "^8.31.0",
"@use-gesture/react": "^10.2.11",
- "@vector-im/compound-design-tokens": "^6.0.0",
- "@vector-im/compound-web": "^8.0.0",
+ "@vector-im/compound-design-tokens": "^10.0.0",
+ "@vector-im/compound-web": "^9.0.0",
"@vitejs/plugin-react": "^4.0.1",
"@vitest/coverage-v8": "^4.0.18",
"babel-plugin-transform-vite-meta-env": "^1.0.3",
@@ -86,7 +90,7 @@
"eslint": "^8.14.0",
"eslint-config-google": "^0.14.0",
"eslint-config-prettier": "^10.0.0",
- "eslint-plugin-deprecate": "^0.8.2",
+ "eslint-plugin-deprecate": "^0.9.0",
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-jsdoc": "^61.5.0",
"eslint-plugin-jsx-a11y": "^6.5.1",
@@ -94,6 +98,7 @@
"eslint-plugin-react": "^7.29.4",
"eslint-plugin-react-hooks": "^5.0.0",
"eslint-plugin-rxjs": "^5.0.3",
+ "eslint-plugin-storybook": "^10.3.3",
"eslint-plugin-unicorn": "^56.0.0",
"fetch-mock": "11.1.5",
"global-jsdom": "^26.0.0",
@@ -102,10 +107,10 @@
"i18next-parser": "^9.1.0",
"jsdom": "^26.0.0",
"knip": "^5.86.0",
- "livekit-client": "^2.13.0",
+ "livekit-client": "^2.18.1",
"lodash-es": "^4.17.21",
"loglevel": "^1.9.1",
- "matrix-js-sdk": "matrix-org/matrix-js-sdk#6e3efef0c5f660df47cf00874927dec1c75cc3cf",
+ "matrix-js-sdk": "matrix-org/matrix-js-sdk#develop",
"matrix-widget-api": "^1.16.1",
"node-stdlib-browser": "^1.3.1",
"normalize.css": "^8.0.1",
@@ -118,32 +123,38 @@
"qrcode": "^1.5.4",
"react": "19",
"react-dom": "19",
- "react-i18next": "^16.0.0 <16.6.0",
+ "react-i18next": "^16.0.0 <16.7.0",
"react-router-dom": "^7.0.0",
"react-use-measure": "^2.1.1",
"rxjs": "^7.8.1",
"sass": "^1.42.1",
+ "storybook": "^10.3.3",
"typescript": "^5.8.3",
"typescript-eslint-language-service": "^5.0.5",
"unique-names-generator": "^4.6.0",
"uuid": "^13.0.0",
"vaul": "^1.0.0",
- "vite": "^7.3.0",
+ "vite": "^8.0.0",
"vite-plugin-generate-file": "^0.3.0",
"vite-plugin-html": "^3.2.2",
+ "vite-plugin-node-polyfills": "^0.26.0",
"vite-plugin-node-stdlib-browser": "^0.2.1",
"vite-plugin-svgr": "^4.0.0",
+ "vite-plugin-wasm": "^3.6.0",
"vitest": "^4.0.18",
"vitest-axe": "^1.0.0-pre.3"
},
- "resolutions": {
- "@livekit/components-core/rxjs": "^7.8.1",
- "@livekit/track-processors/@mediapipe/tasks-vision": "^0.10.18",
- "minimatch": "^10.2.3",
- "tar": "^7.5.11",
- "glob": "^10.5.0",
- "qs": "^6.14.1",
- "js-yaml": "^4.1.1"
+ "pnpm": {
+ "overrides": {
+ "@livekit/components-core>rxjs": "^7.8.1",
+ "@livekit/track-processors>@mediapipe/tasks-vision": "^0.10.18",
+ "minimatch": "^10.2.3",
+ "tar": "^7.5.11",
+ "glob": "^10.5.0",
+ "qs": "^6.14.1",
+ "js-yaml": "^4.1.1",
+ "esbuild": "^0.27.7"
+ }
},
- "packageManager": "yarn@4.7.0"
+ "packageManager": "pnpm@10.33.0"
}
diff --git a/playwright/errors.spec.ts b/playwright/errors.spec.ts
index 085fb0b4..607384f5 100644
--- a/playwright/errors.spec.ts
+++ b/playwright/errors.spec.ts
@@ -75,7 +75,9 @@ test("Should automatically retry non fatal JWT errors", async ({
await expect(page.getByTestId("video").first()).toBeVisible();
});
-test("Should show error screen if call creation is restricted", async ({
+// We skip this test for now as it appears the livekit does not let us
+// detect and handle NotAllowed errors anymore. https://github.com/livekit/client-sdk-js/issues/1883
+test.skip("Should show error screen if call creation is restricted", async ({
page,
browserName,
}) => {
@@ -102,8 +104,10 @@ test("Should show error screen if call creation is restricted", async ({
// Then if the socket connection fails, livekit will try to validate the token!
// Livekit will not auto_create anymore and will return a 404 error.
+ // Note the regex is required as livekit-client is nowasays trying two
+ // differnt APIs
await page.route(
- "**/badurltotricktest/livekit/sfu/rtc/validate?**",
+ /.*\/badurltotricktest\/livekit\/sfu\/rtc(\/v1)?\/validate?.*/,
async (route) =>
await route.fulfill({
status: 404,
diff --git a/playwright/fixtures/fixture-mobile-create.ts b/playwright/fixtures/fixture-mobile-create.ts
index 3920c978..8b729e4c 100644
--- a/playwright/fixtures/fixture-mobile-create.ts
+++ b/playwright/fixtures/fixture-mobile-create.ts
@@ -45,9 +45,6 @@ async function createCallAndInvite(
await creatorPage.getByTestId("home_go").click();
await expect(creatorPage.locator("video")).toBeVisible();
- await creatorPage
- .getByRole("button", { name: "Continue in browser" })
- .click();
// join
await creatorPage.getByTestId("lobby_joinCall").click();
diff --git a/playwright/mobile/create-call-mobile.spec.ts b/playwright/mobile/create-call-mobile.spec.ts
index 1c4eef57..b66ad6c4 100644
--- a/playwright/mobile/create-call-mobile.spec.ts
+++ b/playwright/mobile/create-call-mobile.spec.ts
@@ -23,8 +23,6 @@ test("@mobile Start a new call then leave and show the feedback screen", async (
// await page.pause();
await expect(page.locator("video")).toBeVisible();
await expect(page.getByTestId("lobby_joinCall")).toBeVisible();
-
- await page.getByRole("button", { name: "Continue in browser" }).click();
// Join the call
await page.getByTestId("lobby_joinCall").click();
@@ -67,10 +65,6 @@ mobileTest(
const guestPage = await guestInviteeContext.newPage();
await guestPage.goto(inviteLink + "&controlledAudioDevices=true");
- await guestPage
- .getByRole("button", { name: "Continue in browser" })
- .click();
-
await guestPage.getByTestId("joincall_displayName").fill("Invitee");
await expect(guestPage.getByTestId("joincall_joincall")).toBeVisible();
await guestPage.getByTestId("joincall_joincall").click();
@@ -104,10 +98,12 @@ mobileTest(
// Open settings to select earpiece
await guestPage.getByRole("button", { name: "Settings" }).click();
- await guestPage.getByText("Handset", { exact: true }).click();
+ await guestPage
+ .getByRole("radio", { name: "Handset", exact: true })
+ .click();
// dismiss settings
- await guestPage.locator("#root").getByLabel("Settings").press("Escape");
+ await guestPage.locator("#root").press("Escape");
await guestPage.pause();
await expect(
diff --git a/playwright/spa-call-sticky.spec.ts b/playwright/spa-call-sticky.spec.ts
index 246b4a73..328a65da 100644
--- a/playwright/spa-call-sticky.spec.ts
+++ b/playwright/spa-call-sticky.spec.ts
@@ -28,7 +28,7 @@ async function setupTwoUserSpaCall(
await page.goto("/");
let androlHasSentStickyEvent = false;
-
+ const androlResolver = Promise.withResolvers();
await interceptEventSend(
page,
// This room is not encrypted, so the event is sent in clear
@@ -36,6 +36,7 @@ async function setupTwoUserSpaCall(
(req) => {
androlHasSentStickyEvent =
androlHasSentStickyEvent || isStickySend(req.url());
+ androlResolver.resolve();
},
);
@@ -53,6 +54,7 @@ async function setupTwoUserSpaCall(
let pevaraHasSentStickyEvent = false;
+ const pevaraResolver = Promise.withResolvers();
await interceptEventSend(
guestPage,
// This room is not encrypted, so the event is sent in clear
@@ -60,6 +62,7 @@ async function setupTwoUserSpaCall(
(req) => {
pevaraHasSentStickyEvent =
pevaraHasSentStickyEvent || isStickySend(req.url());
+ pevaraResolver.resolve();
},
);
@@ -70,7 +73,9 @@ async function setupTwoUserSpaCall(
"2_0",
);
// Assert both sides have sent sticky membership events
+ await androlResolver.promise;
expect(androlHasSentStickyEvent).toEqual(true);
+ await pevaraResolver.promise;
expect(pevaraHasSentStickyEvent).toEqual(true);
return { guestPage };
diff --git a/playwright/widget/federation-oldest-membership-bug.spec.ts b/playwright/widget/federation-oldest-membership-bug.spec.ts
new file mode 100644
index 00000000..70442e05
--- /dev/null
+++ b/playwright/widget/federation-oldest-membership-bug.spec.ts
@@ -0,0 +1,92 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import { expect, test } from "@playwright/test";
+
+import { widgetTest } from "../fixtures/widget-user";
+import { HOST1, HOST2, TestHelpers } from "./test-helpers";
+
+widgetTest(
+ "Bug new joiner was not publishing on correct SFU",
+ async ({ addUser, browserName }) => {
+ test.skip(
+ browserName === "firefox",
+ "This is a bug in the old widget, not a browser problem.",
+ );
+
+ test.slow();
+
+ // 2 users in federation
+ const florian = await addUser("floriant", HOST1);
+ const timo = await addUser("timo", HOST2);
+
+ // Florian creates a room and invites Timo to it
+ const roomName = "Call Room";
+ await TestHelpers.createRoom(roomName, florian.page, [timo.mxId]);
+
+ // Timo joins the room
+ await TestHelpers.acceptRoomInvite(roomName, timo.page);
+
+ // Ensure we are in legacy mode (should be the default)
+ await TestHelpers.openWidgetSetEmbeddedElementCallRtcModeCloseWidget(
+ florian.page,
+ "legacy",
+ );
+ await TestHelpers.openWidgetSetEmbeddedElementCallRtcModeCloseWidget(
+ timo.page,
+ "legacy",
+ );
+
+ // Let timo create a call
+ await TestHelpers.startCallInCurrentRoom(timo.page, false);
+ await TestHelpers.joinCallFromLobby(timo.page);
+
+ // We want to simulate that the oldest membership authentication is way slower than
+ // the preffered auth.
+ // In this setup, timo advertised$ transport will be it's own, and the active will be the one from florian
+ await florian.page.route(
+ "**/matrix-rtc.othersite.m.localhost/livekit/jwt/**",
+ async (route) => {
+ await new Promise((resolve) => setTimeout(resolve, 2000)); // 5 second delay
+ await route.continue();
+ },
+ );
+
+ // Florian joins the call
+ await expect(florian.page.getByTestId("join-call-button")).toBeVisible();
+ await florian.page.getByTestId("join-call-button").click();
+ await TestHelpers.joinCallFromLobby(florian.page);
+
+ await florian.page.waitForTimeout(3000);
+ await timo.page.waitForTimeout(3000);
+
+ // We should see 2 video tiles everywhere now
+ for (const user of [timo, florian]) {
+ const frame = user.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame();
+ await expect(frame.getByTestId("videoTile")).toHaveCount(2);
+
+ // No one should be waiting for media
+ await expect(frame.getByText("Waiting for media...")).not.toBeVisible();
+
+ // There should be 2 video elements, visible and autoplaying
+ const videoElements = await frame.locator("video").all();
+ expect(videoElements.length).toBe(2);
+
+ const blockDisplayCount = await frame
+ .locator("video")
+ .evaluateAll(
+ (videos: Element[]) =>
+ videos.filter(
+ (v: Element) => window.getComputedStyle(v).display === "block",
+ ).length,
+ );
+ expect(blockDisplayCount).toBe(2);
+ }
+ },
+);
diff --git a/playwright/widget/screen-share.test.ts b/playwright/widget/screen-share.test.ts
new file mode 100644
index 00000000..c60ef697
--- /dev/null
+++ b/playwright/widget/screen-share.test.ts
@@ -0,0 +1,150 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import { expect, test } from "@playwright/test";
+
+import { widgetTest } from "../fixtures/widget-user.ts";
+import { HOST1, TestHelpers } from "./test-helpers.ts";
+
+widgetTest("Sharing screen in group call", async ({ addUser, browserName }) => {
+ test.skip(
+ browserName === "firefox",
+ "The is test is not working on firefox CI environment. No mic/audio device inputs so cam/mic are disabled",
+ );
+
+ test.slow(); // We are registering multiple users here, give it more time
+
+ const alice = await addUser("Alice", HOST1);
+ const bob = await addUser("Bob", HOST1);
+ const carol = await addUser("Carol", HOST1);
+
+ const roomName = "Meeting Room";
+ await TestHelpers.createRoom(roomName, alice.page, [bob.mxId, carol.mxId]);
+
+ for (const user of [bob, carol]) {
+ // Accept the invite
+ // This isn't super stable to get this as this super generic locator,
+ // but it works for now.
+ await TestHelpers.acceptRoomInvite(roomName, user.page);
+ }
+
+ await TestHelpers.startCallInCurrentRoom(alice.page, false);
+ await expect(
+ alice.page.locator('iframe[title="Element Call"]'),
+ ).toBeVisible();
+
+ await TestHelpers.joinCallFromLobby(alice.page);
+
+ for (const user of [bob, carol]) {
+ await TestHelpers.joinCallInCurrentRoom(user.page);
+ }
+
+ for (const user of [alice, bob, carol]) {
+ const frame = user.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame();
+
+ // Expect 3 video tiles
+ await expect(frame.locator("video")).toHaveCount(3, {
+ timeout: 5000,
+ });
+ }
+
+ // await alice.page.pause();
+
+ await alice.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame()
+ .getByRole("switch", { name: "Share screen" })
+ .click();
+
+ // await alice.page.pause();
+
+ for (const user of [alice, bob, carol]) {
+ const frame = user.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame();
+
+ // Expect 4 (3 + screen share) video tiles
+ await expect(frame.locator("video")).toHaveCount(4, {
+ timeout: 5000,
+ });
+
+ await expect(
+ frame.locator('video[data-lk-source="screen_share"]'),
+ ).toHaveCount(1);
+ }
+
+ // Alice should be in grid mode as she is local sharing
+ {
+ const frame = alice.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame();
+ await expect(frame.getByRole("radio", { name: "Grid" })).toBeChecked();
+ }
+
+ // Others should have switched to spotlight
+ for (const user of [bob, carol]) {
+ const frame = user.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame();
+
+ await expect(frame.getByRole("radio", { name: "Spotlight" })).toBeChecked();
+ }
+ // await alice.page.pause();
+ // await bob.page.pause();
+
+ // Let's start another screen share from bob
+ await bob.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame()
+ .getByRole("switch", { name: "Share screen" })
+ .click();
+
+ {
+ const frame = carol.page
+ .locator('iframe[title="Element Call"]')
+ .contentFrame();
+
+ // Expect 5 (2 + screen share) video tiles
+ await expect(frame.locator("video")).toHaveCount(5, {
+ timeout: 5000,
+ });
+
+ await expect(
+ frame.locator('video[data-lk-source="screen_share"]'),
+ ).toHaveCount(2);
+
+ // Expect 2 indicators at the bottom
+ await expect(frame.getByTestId("screenshare-indicator")).toHaveCount(2);
+
+ // Check the first indicator is visible
+ await expect(
+ frame.getByTestId("screenshare-indicator").first(),
+ ).toHaveAttribute("data-visible", "true");
+
+ await carol.page.pause();
+
+ // now click on next
+ await expect(frame.getByRole("button", { name: "Next" })).toBeVisible();
+ await frame.getByRole("button", { name: "Next" }).click();
+
+ // Check the second indicator is visible
+ await expect(
+ frame.getByTestId("screenshare-indicator").nth(1),
+ ).toHaveAttribute("data-visible", "true");
+ // the first one should be grayed out
+ await expect(
+ frame.getByTestId("screenshare-indicator").first(),
+ ).toHaveAttribute("data-visible", "false");
+
+ // There should be a prev button now
+ await expect(frame.getByRole("button", { name: "Back" })).toBeVisible();
+
+ // await carol.page.pause();
+ }
+});
diff --git a/playwright/widget/test-helpers.ts b/playwright/widget/test-helpers.ts
index 31247e1a..ff5fa7e2 100644
--- a/playwright/widget/test-helpers.ts
+++ b/playwright/widget/test-helpers.ts
@@ -34,9 +34,6 @@ export class TestHelpers {
).toBeVisible();
await page.getByRole("menuitem", { name: "Element Call" }).click();
-
- // TODO: Remove as soon as web merges https://github.com/element-hq/element-web/pull/32755
- await this.dismissFileDialogPermissionIfNeeded(page);
}
public static async joinCallFromLobby(page: Page): Promise {
@@ -63,9 +60,6 @@ export class TestHelpers {
await expect(page.getByText(label)).toBeVisible();
await expect(page.getByRole("button", { name: "Join" })).toBeVisible();
await page.getByRole("button", { name: "Join" }).click();
-
- // TODO: Remove as soon as web merges https://github.com/element-hq/element-web/pull/32755
- await this.dismissFileDialogPermissionIfNeeded(page);
}
/**
@@ -242,29 +236,10 @@ export class TestHelpers {
await page.getByRole("button", { name: "Video call" }).click();
await page.getByRole("menuitem", { name: "Element Call" }).click();
- // TODO: Remove as soon as web merges https://github.com/element-hq/element-web/pull/32755
- await this.dismissFileDialogPermissionIfNeeded(page);
-
await TestHelpers.setEmbeddedElementCallRtcMode(page, mode);
await page.getByRole("button", { name: "Close lobby" }).click();
}
- // TODO: Remove as soon as web merges https://github.com/element-hq/element-web/pull/32755
- public static async dismissFileDialogPermissionIfNeeded(
- page: Page,
- ): Promise {
- const dialogHeading = page.getByRole("heading", {
- name: "Approve widget permissions",
- });
-
- try {
- await expect(dialogHeading).toBeVisible({ timeout: 3000 });
- await page.getByRole("button", { name: "Approve" }).click();
- } catch {
- // Dialog did not appear, that's fine
- }
- }
-
/**
* Goes to the settings to set the RTC mode.
* then closes the settings modal.
diff --git a/playwright/widget/voice-call-dm.spec.ts b/playwright/widget/voice-call-dm.spec.ts
index f5152e1f..a4e6255b 100644
--- a/playwright/widget/voice-call-dm.spec.ts
+++ b/playwright/widget/voice-call-dm.spec.ts
@@ -45,8 +45,6 @@ widgetTest(
await expect(whistler.page.getByText("Incoming voice call")).toBeVisible();
await whistler.page.getByRole("button", { name: "Accept" }).click();
- await TestHelpers.dismissFileDialogPermissionIfNeeded(whistler.page);
-
await expect(
whistler.page.locator('iframe[title="Element Call"]'),
).toBeVisible();
@@ -140,8 +138,6 @@ widgetTest(
await expect(whistler.page.getByText("Incoming video call")).toBeVisible();
await whistler.page.getByRole("button", { name: "Accept" }).click();
- await TestHelpers.dismissFileDialogPermissionIfNeeded(whistler.page);
-
await expect(
whistler.page.locator('iframe[title="Element Call"]'),
).toBeVisible();
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
new file mode 100644
index 00000000..2d3e891d
--- /dev/null
+++ b/pnpm-lock.yaml
@@ -0,0 +1,13883 @@
+lockfileVersion: '9.0'
+
+settings:
+ autoInstallPeers: true
+ excludeLinksFromLockfile: false
+
+overrides:
+ '@livekit/components-core>rxjs': ^7.8.1
+ '@livekit/track-processors>@mediapipe/tasks-vision': ^0.10.18
+ minimatch: ^10.2.3
+ tar: ^7.5.11
+ glob: ^10.5.0
+ qs: ^6.14.1
+ js-yaml: ^4.1.1
+ esbuild: ^0.27.7
+
+importers:
+
+ .:
+ devDependencies:
+ '@babel/core':
+ specifier: ^7.16.5
+ version: 7.29.0
+ '@babel/preset-env':
+ specifier: ^7.22.20
+ version: 7.29.2(@babel/core@7.29.0)
+ '@babel/preset-react':
+ specifier: ^7.22.15
+ version: 7.28.5(@babel/core@7.29.0)
+ '@babel/preset-typescript':
+ specifier: ^7.23.0
+ version: 7.28.5(@babel/core@7.29.0)
+ '@codecov/vite-plugin':
+ specifier: ^1.3.0
+ version: 1.9.1(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@fontsource/inconsolata':
+ specifier: ^5.1.0
+ version: 5.2.8
+ '@fontsource/inter':
+ specifier: ^5.1.0
+ version: 5.2.8
+ '@formatjs/intl-durationformat':
+ specifier: ^0.10.0
+ version: 0.10.4
+ '@formatjs/intl-segmenter':
+ specifier: ^11.7.3
+ version: 11.7.12
+ '@livekit/components-core':
+ specifier: ^0.12.0
+ version: 0.12.13(livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22))(tslib@2.8.1)
+ '@livekit/components-react':
+ specifier: ^2.0.0
+ version: 2.9.20(livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(tslib@2.8.1)
+ '@livekit/protocol':
+ specifier: ^1.42.2
+ version: 1.45.3
+ '@livekit/track-processors':
+ specifier: ^0.7.1
+ version: 0.7.2(@types/dom-mediacapture-transform@0.1.11)(livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22))
+ '@mediapipe/tasks-vision':
+ specifier: ^0.10.18
+ version: 0.10.34
+ '@playwright/test':
+ specifier: ^1.57.0
+ version: 1.59.1
+ '@radix-ui/react-dialog':
+ specifier: ^1.0.4
+ version: 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-slider':
+ specifier: ^1.1.2
+ version: 1.3.6(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-visually-hidden':
+ specifier: ^1.0.3
+ version: 1.2.4(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@react-spring/web':
+ specifier: ^10.0.0
+ version: 10.0.3(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@sentry/react':
+ specifier: ^8.0.0
+ version: 8.55.1(react@19.2.5)
+ '@sentry/vite-plugin':
+ specifier: ^3.0.0
+ version: 3.6.1
+ '@storybook/addon-docs':
+ specifier: ^10.3.3
+ version: 10.3.5(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@storybook/react-vite':
+ specifier: ^10.3.3
+ version: 10.3.5(esbuild@0.27.7)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@stylistic/eslint-plugin':
+ specifier: ^3.0.0
+ version: 3.1.0(eslint@8.57.1)(typescript@5.9.3)
+ '@testing-library/dom':
+ specifier: ^10.1.0
+ version: 10.4.1
+ '@testing-library/jest-dom':
+ specifier: ^6.6.3
+ version: 6.9.1
+ '@testing-library/react':
+ specifier: ^16.0.0
+ version: 16.3.2(@testing-library/dom@10.4.1)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@testing-library/user-event':
+ specifier: ^14.5.1
+ version: 14.6.1(@testing-library/dom@10.4.1)
+ '@types/content-type':
+ specifier: ^1.1.5
+ version: 1.1.9
+ '@types/grecaptcha':
+ specifier: ^3.0.9
+ version: 3.0.9
+ '@types/jsdom':
+ specifier: ^21.1.7
+ version: 21.1.7
+ '@types/lodash-es':
+ specifier: ^4.17.12
+ version: 4.17.12
+ '@types/node':
+ specifier: ^24.0.0
+ version: 24.12.2
+ '@types/pako':
+ specifier: ^2.0.3
+ version: 2.0.4
+ '@types/qrcode':
+ specifier: ^1.5.5
+ version: 1.5.6
+ '@types/react':
+ specifier: ^19.0.0
+ version: 19.2.14
+ '@types/react-dom':
+ specifier: ^19.0.0
+ version: 19.2.3(@types/react@19.2.14)
+ '@types/sdp-transform':
+ specifier: ^2.4.5
+ version: 2.15.0
+ '@types/uuid':
+ specifier: '10'
+ version: 10.0.0
+ '@typescript-eslint/eslint-plugin':
+ specifier: ^8.31.0
+ version: 8.58.2(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)
+ '@typescript-eslint/parser':
+ specifier: ^8.31.0
+ version: 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ '@use-gesture/react':
+ specifier: ^10.2.11
+ version: 10.3.1(react@19.2.5)
+ '@vector-im/compound-design-tokens':
+ specifier: ^10.0.0
+ version: 10.1.0(@types/react@19.2.14)(react@19.2.5)
+ '@vector-im/compound-web':
+ specifier: ^9.0.0
+ version: 9.2.0(@fontsource/inconsolata@5.2.8)(@fontsource/inter@5.2.8)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(@vector-im/compound-design-tokens@10.1.0(@types/react@19.2.14)(react@19.2.5))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@vitejs/plugin-react':
+ specifier: ^4.0.1
+ version: 4.7.0(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@vitest/coverage-v8':
+ specifier: ^4.0.18
+ version: 4.1.4(vitest@4.1.4)
+ babel-plugin-transform-vite-meta-env:
+ specifier: ^1.0.3
+ version: 1.0.3
+ classnames:
+ specifier: ^2.3.1
+ version: 2.5.1
+ copy-to-clipboard:
+ specifier: ^3.3.3
+ version: 3.3.3
+ eslint:
+ specifier: ^8.14.0
+ version: 8.57.1
+ eslint-config-google:
+ specifier: ^0.14.0
+ version: 0.14.0(eslint@8.57.1)
+ eslint-config-prettier:
+ specifier: ^10.0.0
+ version: 10.1.8(eslint@8.57.1)
+ eslint-plugin-deprecate:
+ specifier: ^0.9.0
+ version: 0.9.0(eslint@8.57.1)
+ eslint-plugin-import:
+ specifier: ^2.26.0
+ version: 2.32.0(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)
+ eslint-plugin-jsdoc:
+ specifier: ^61.5.0
+ version: 61.7.1(eslint@8.57.1)
+ eslint-plugin-jsx-a11y:
+ specifier: ^6.5.1
+ version: 6.10.2(eslint@8.57.1)
+ eslint-plugin-matrix-org:
+ specifier: 2.1.0
+ version: 2.1.0(09e41ec1b738154136ea8b36e5821317)
+ eslint-plugin-react:
+ specifier: ^7.29.4
+ version: 7.37.5(eslint@8.57.1)
+ eslint-plugin-react-hooks:
+ specifier: ^5.0.0
+ version: 5.2.0(eslint@8.57.1)
+ eslint-plugin-rxjs:
+ specifier: ^5.0.3
+ version: 5.0.3(eslint@8.57.1)(typescript@5.9.3)
+ eslint-plugin-storybook:
+ specifier: ^10.3.3
+ version: 10.3.5(eslint@8.57.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)
+ eslint-plugin-unicorn:
+ specifier: ^56.0.0
+ version: 56.0.1(eslint@8.57.1)
+ fetch-mock:
+ specifier: 11.1.5
+ version: 11.1.5
+ global-jsdom:
+ specifier: ^26.0.0
+ version: 26.0.0(jsdom@26.1.0)
+ i18next:
+ specifier: ^25.0.0
+ version: 25.10.10(typescript@5.9.3)
+ i18next-browser-languagedetector:
+ specifier: ^8.0.0
+ version: 8.2.1
+ i18next-parser:
+ specifier: ^9.1.0
+ version: 9.4.0
+ jsdom:
+ specifier: ^26.0.0
+ version: 26.1.0
+ knip:
+ specifier: ^5.86.0
+ version: 5.88.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(@types/node@24.12.2)(typescript@5.9.3)
+ livekit-client:
+ specifier: ^2.18.1
+ version: 2.18.4(@types/dom-mediacapture-record@1.0.22)
+ lodash-es:
+ specifier: ^4.17.21
+ version: 4.18.1
+ loglevel:
+ specifier: ^1.9.1
+ version: 1.9.2
+ matrix-js-sdk:
+ specifier: matrix-org/matrix-js-sdk#develop
+ version: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/fef093747e1c35a60b0fdc687a7166a7d7eb8a28
+ matrix-widget-api:
+ specifier: ^1.16.1
+ version: 1.17.0
+ node-stdlib-browser:
+ specifier: ^1.3.1
+ version: 1.3.1
+ normalize.css:
+ specifier: ^8.0.1
+ version: 8.0.1
+ observable-hooks:
+ specifier: ^4.2.3
+ version: 4.2.4(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(rxjs@7.8.2)
+ pako:
+ specifier: ^2.0.4
+ version: 2.1.0
+ postcss:
+ specifier: ^8.4.41
+ version: 8.5.10
+ postcss-preset-env:
+ specifier: ^10.0.0
+ version: 10.6.1(postcss@8.5.10)
+ posthog-js:
+ specifier: 1.160.3
+ version: 1.160.3
+ prettier:
+ specifier: ^3.0.0
+ version: 3.8.3
+ qrcode:
+ specifier: ^1.5.4
+ version: 1.5.4
+ react:
+ specifier: '19'
+ version: 19.2.5
+ react-dom:
+ specifier: '19'
+ version: 19.2.5(react@19.2.5)
+ react-i18next:
+ specifier: ^16.0.0 <16.7.0
+ version: 16.6.6(i18next@25.10.10(typescript@5.9.3))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typescript@5.9.3)
+ react-router-dom:
+ specifier: ^7.0.0
+ version: 7.14.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react-use-measure:
+ specifier: ^2.1.1
+ version: 2.1.7(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ rxjs:
+ specifier: ^7.8.1
+ version: 7.8.2
+ sass:
+ specifier: ^1.42.1
+ version: 1.99.0
+ storybook:
+ specifier: ^10.3.3
+ version: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ typescript:
+ specifier: ^5.8.3
+ version: 5.9.3
+ typescript-eslint-language-service:
+ specifier: ^5.0.5
+ version: 5.0.5(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)
+ unique-names-generator:
+ specifier: ^4.6.0
+ version: 4.7.1
+ uuid:
+ specifier: ^13.0.0
+ version: 13.0.0
+ vaul:
+ specifier: ^1.0.0
+ version: 1.1.2(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ vite:
+ specifier: ^8.0.0
+ version: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ vite-plugin-generate-file:
+ specifier: ^0.3.0
+ version: 0.3.1
+ vite-plugin-html:
+ specifier: ^3.2.2
+ version: 3.2.2(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ vite-plugin-node-polyfills:
+ specifier: ^0.26.0
+ version: 0.26.0(rollup@4.60.1)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ vite-plugin-node-stdlib-browser:
+ specifier: ^0.2.1
+ version: 0.2.1(node-stdlib-browser@1.3.1)(rollup@4.60.1)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ vite-plugin-svgr:
+ specifier: ^4.0.0
+ version: 4.5.0(rollup@4.60.1)(typescript@5.9.3)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ vite-plugin-wasm:
+ specifier: ^3.6.0
+ version: 3.6.0(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ vitest:
+ specifier: ^4.0.18
+ version: 4.1.4(@types/node@24.12.2)(@vitest/coverage-v8@4.1.4)(jsdom@26.1.0)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ vitest-axe:
+ specifier: ^1.0.0-pre.3
+ version: 1.0.0-pre.5(vitest@4.1.4)
+
+packages:
+
+ '@actions/core@1.11.1':
+ resolution: {integrity: sha512-hXJCSrkwfA46Vd9Z3q4cpEpHB1rL5NG04+/rbqW9d3+CSvtB1tYe8UTpAlixa1vj0m/ULglfEK2UKxMGxCxv5A==}
+
+ '@actions/exec@1.1.1':
+ resolution: {integrity: sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==}
+
+ '@actions/github@6.0.1':
+ resolution: {integrity: sha512-xbZVcaqD4XnQAe35qSQqskb3SqIAfRyLBrHMd/8TuL7hJSz2QtbDwnNM8zWx4zO5l2fnGtseNE3MbEvD7BxVMw==}
+
+ '@actions/http-client@2.2.3':
+ resolution: {integrity: sha512-mx8hyJi/hjFvbPokCg4uRd4ZX78t+YyRPtnKWwIl+RzNaVuFpQHfmlGVfsKEJN8LwTCvL+DfVgAM04XaHkm6bA==}
+
+ '@actions/io@1.1.3':
+ resolution: {integrity: sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==}
+
+ '@adobe/css-tools@4.4.4':
+ resolution: {integrity: sha512-Elp+iwUx5rN5+Y8xLt5/GRoG20WGoDCQ/1Fb+1LiGtvwbDavuSk0jhD/eZdckHAuzcDzccnkv+rEjyWfRx18gg==}
+
+ '@asamuzakjp/css-color@3.2.0':
+ resolution: {integrity: sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==}
+
+ '@babel/code-frame@7.29.0':
+ resolution: {integrity: sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/compat-data@7.29.0':
+ resolution: {integrity: sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/core@7.29.0':
+ resolution: {integrity: sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/eslint-parser@7.28.6':
+ resolution: {integrity: sha512-QGmsKi2PBO/MHSQk+AAgA9R6OHQr+VqnniFE0eMWZcVcfBZoA2dKn2hUsl3Csg/Plt9opRUWdY7//VXsrIlEiA==}
+ engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0}
+ peerDependencies:
+ '@babel/core': ^7.11.0
+ eslint: ^7.5.0 || ^8.0.0 || ^9.0.0
+
+ '@babel/eslint-plugin@7.27.1':
+ resolution: {integrity: sha512-vOG/EipZbIAcREK6XI4JRO3B3uZr70/KIhsrNLO9RXcgLMaW0sTsBpNeTpQUyelB0HsbWd45NIsuTgD3mqr/Og==}
+ engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0}
+ peerDependencies:
+ '@babel/eslint-parser': ^7.11.0
+ eslint: ^7.5.0 || ^8.0.0 || ^9.0.0
+
+ '@babel/generator@7.29.1':
+ resolution: {integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-annotate-as-pure@7.27.3':
+ resolution: {integrity: sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-compilation-targets@7.28.6':
+ resolution: {integrity: sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-create-class-features-plugin@7.28.6':
+ resolution: {integrity: sha512-dTOdvsjnG3xNT9Y0AUg1wAl38y+4Rl4sf9caSQZOXdNqVn+H+HbbJ4IyyHaIqNR6SW9oJpA/RuRjsjCw2IdIow==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-create-regexp-features-plugin@7.28.5':
+ resolution: {integrity: sha512-N1EhvLtHzOvj7QQOUCCS3NrPJP8c5W6ZXCHDn7Yialuy1iu4r5EmIYkXlKNqT99Ciw+W0mDqWoR6HWMZlFP3hw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-define-polyfill-provider@0.6.8':
+ resolution: {integrity: sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ '@babel/helper-globals@7.28.0':
+ resolution: {integrity: sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-member-expression-to-functions@7.28.5':
+ resolution: {integrity: sha512-cwM7SBRZcPCLgl8a7cY0soT1SptSzAlMH39vwiRpOQkJlh53r5hdHwLSCZpQdVLT39sZt+CRpNwYG4Y2v77atg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-module-imports@7.28.6':
+ resolution: {integrity: sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-module-transforms@7.28.6':
+ resolution: {integrity: sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-optimise-call-expression@7.27.1':
+ resolution: {integrity: sha512-URMGH08NzYFhubNSGJrpUEphGKQwMQYBySzat5cAByY1/YgIRkULnIy3tAMeszlL/so2HbeilYloUmSpd7GdVw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-plugin-utils@7.28.6':
+ resolution: {integrity: sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-remap-async-to-generator@7.27.1':
+ resolution: {integrity: sha512-7fiA521aVw8lSPeI4ZOD3vRFkoqkJcS+z4hFo82bFSH/2tNd6eJ5qCVMS5OzDmZh/kaHQeBaeyxK6wljcPtveA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-replace-supers@7.28.6':
+ resolution: {integrity: sha512-mq8e+laIk94/yFec3DxSjCRD2Z0TAjhVbEJY3UQrlwVo15Lmt7C2wAUbK4bjnTs4APkwsYLTahXRraQXhb1WCg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
+ resolution: {integrity: sha512-Tub4ZKEXqbPjXgWLl2+3JpQAYBJ8+ikpQ2Ocj/q/r0LwE3UhENh7EUabyHjz2kCEsrRY83ew2DQdHluuiDQFzg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-string-parser@7.27.1':
+ resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-validator-identifier@7.28.5':
+ resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-validator-option@7.27.1':
+ resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helper-wrap-function@7.28.6':
+ resolution: {integrity: sha512-z+PwLziMNBeSQJonizz2AGnndLsP2DeGHIxDAn+wdHOGuo4Fo1x1HBPPXeE9TAOPHNNWQKCSlA2VZyYyyibDnQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/helpers@7.29.2':
+ resolution: {integrity: sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/parser@7.29.2':
+ resolution: {integrity: sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5':
+ resolution: {integrity: sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1':
+ resolution: {integrity: sha512-qNeq3bCKnGgLkEXUuFry6dPlGfCdQNZbn7yUAPCInwAJHMU7THJfrBSozkcWq5sNM6RcF3S8XyQL2A52KNR9IA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1':
+ resolution: {integrity: sha512-g4L7OYun04N1WyqMNjldFwlfPCLVkgB54A/YCXICZYBsvJJE3kByKv9c9+R/nAfmIfjl2rKYLNyMHboYbZaWaA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1':
+ resolution: {integrity: sha512-oO02gcONcD5O1iTLi/6frMJBIwWEHceWGSGqrpCmEL8nogiS6J9PBlE48CaK20/Jx1LuRml9aDftLgdjXT8+Cw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.13.0
+
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.6':
+ resolution: {integrity: sha512-a0aBScVTlNaiUe35UtfxAN7A/tehvvG4/ByO6+46VPKTRSlfnAFsgKy0FUh+qAkQrDTmhDkT+IBOKlOoMUxQ0g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2':
+ resolution: {integrity: sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-import-assertions@7.28.6':
+ resolution: {integrity: sha512-pSJUpFHdx9z5nqTSirOCMtYVP2wFgoWhP0p3g8ONK/4IHhLIBd0B9NYqAvIUAhq+OkhO4VM1tENCt0cjlsNShw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-import-attributes@7.28.6':
+ resolution: {integrity: sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CCzbSGUAbDOzlGHJC1U+vRfLQDvw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-jsx@7.28.6':
+ resolution: {integrity: sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-typescript@7.28.6':
+ resolution: {integrity: sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc6rdiYhomzv/A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-syntax-unicode-sets-regex@7.18.6':
+ resolution: {integrity: sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-arrow-functions@7.27.1':
+ resolution: {integrity: sha512-8Z4TGic6xW70FKThA5HYEKKyBpOOsucTOD1DjU3fZxDg+K3zBJcXMFnt/4yQiZnf5+MiOMSXQ9PaEK/Ilh1DeA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-async-generator-functions@7.29.0':
+ resolution: {integrity: sha512-va0VdWro4zlBr2JsXC+ofCPB2iG12wPtVGTWFx2WLDOM3nYQZZIGP82qku2eW/JR83sD+k2k+CsNtyEbUqhU6w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-async-to-generator@7.28.6':
+ resolution: {integrity: sha512-ilTRcmbuXjsMmcZ3HASTe4caH5Tpo93PkTxF9oG2VZsSWsahydmcEHhix9Ik122RcTnZnUzPbmux4wh1swfv7g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-block-scoped-functions@7.27.1':
+ resolution: {integrity: sha512-cnqkuOtZLapWYZUYM5rVIdv1nXYuFVIltZ6ZJ7nIj585QsjKM5dhL2Fu/lICXZ1OyIAFc7Qy+bvDAtTXqGrlhg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-block-scoping@7.28.6':
+ resolution: {integrity: sha512-tt/7wOtBmwHPNMPu7ax4pdPz6shjFrmHDghvNC+FG9Qvj7D6mJcoRQIF5dy4njmxR941l6rgtvfSB2zX3VlUIw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-class-properties@7.28.6':
+ resolution: {integrity: sha512-dY2wS3I2G7D697VHndN91TJr8/AAfXQNt5ynCTI/MpxMsSzHp+52uNivYT5wCPax3whc47DR8Ba7cmlQMg24bw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-class-static-block@7.28.6':
+ resolution: {integrity: sha512-rfQ++ghVwTWTqQ7w8qyDxL1XGihjBss4CmTgGRCTAC9RIbhVpyp4fOeZtta0Lbf+dTNIVJer6ych2ibHwkZqsQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.12.0
+
+ '@babel/plugin-transform-classes@7.28.6':
+ resolution: {integrity: sha512-EF5KONAqC5zAqT783iMGuM2ZtmEBy+mJMOKl2BCvPZ2lVrwvXnB6o+OBWCS+CoeCCpVRF2sA2RBKUxvT8tQT5Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-computed-properties@7.28.6':
+ resolution: {integrity: sha512-bcc3k0ijhHbc2lEfpFHgx7eYw9KNXqOerKWfzbxEHUGKnS3sz9C4CNL9OiFN1297bDNfUiSO7DaLzbvHQQQ1BQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-destructuring@7.28.5':
+ resolution: {integrity: sha512-Kl9Bc6D0zTUcFUvkNuQh4eGXPKKNDOJQXVyyM4ZAQPMveniJdxi8XMJwLo+xSoW3MIq81bD33lcUe9kZpl0MCw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-dotall-regex@7.28.6':
+ resolution: {integrity: sha512-SljjowuNKB7q5Oayv4FoPzeB74g3QgLt8IVJw9ADvWy3QnUb/01aw8I4AVv8wYnPvQz2GDDZ/g3GhcNyDBI4Bg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-duplicate-keys@7.27.1':
+ resolution: {integrity: sha512-MTyJk98sHvSs+cvZ4nOauwTTG1JeonDjSGvGGUNHreGQns+Mpt6WX/dVzWBHgg+dYZhkC4X+zTDfkTU+Vy9y7Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.29.0':
+ resolution: {integrity: sha512-zBPcW2lFGxdiD8PUnPwJjag2J9otbcLQzvbiOzDxpYXyCuYX9agOwMPGn1prVH0a4qzhCKu24rlH4c1f7yA8rw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-dynamic-import@7.27.1':
+ resolution: {integrity: sha512-MHzkWQcEmjzzVW9j2q8LGjwGWpG2mjwaaB0BNQwst3FIjqsg8Ct/mIZlvSPJvfi9y2AC8mi/ktxbFVL9pZ1I4A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-explicit-resource-management@7.28.6':
+ resolution: {integrity: sha512-Iao5Konzx2b6g7EPqTy40UZbcdXE126tTxVFr/nAIj+WItNxjKSYTEw3RC+A2/ZetmdJsgueL1KhaMCQHkLPIg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-exponentiation-operator@7.28.6':
+ resolution: {integrity: sha512-WitabqiGjV/vJ0aPOLSFfNY1u9U3R7W36B03r5I2KoNix+a3sOhJ3pKFB3R5It9/UiK78NiO0KE9P21cMhlPkw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-export-namespace-from@7.27.1':
+ resolution: {integrity: sha512-tQvHWSZ3/jH2xuq/vZDy0jNn+ZdXJeM8gHvX4lnJmsc3+50yPlWdZXIc5ay+umX+2/tJIqHqiEqcJvxlmIvRvQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-for-of@7.27.1':
+ resolution: {integrity: sha512-BfbWFFEJFQzLCQ5N8VocnCtA8J1CLkNTe2Ms2wocj75dd6VpiqS5Z5quTYcUoo4Yq+DN0rtikODccuv7RU81sw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-function-name@7.27.1':
+ resolution: {integrity: sha512-1bQeydJF9Nr1eBCMMbC+hdwmRlsv5XYOMu03YSWFwNs0HsAmtSxxF1fyuYPqemVldVyFmlCU7w8UE14LupUSZQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-json-strings@7.28.6':
+ resolution: {integrity: sha512-Nr+hEN+0geQkzhbdgQVPoqr47lZbm+5fCUmO70722xJZd0Mvb59+33QLImGj6F+DkK3xgDi1YVysP8whD6FQAw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-literals@7.27.1':
+ resolution: {integrity: sha512-0HCFSepIpLTkLcsi86GG3mTUzxV5jpmbv97hTETW3yzrAij8aqlD36toB1D0daVFJM8NK6GvKO0gslVQmm+zZA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-logical-assignment-operators@7.28.6':
+ resolution: {integrity: sha512-+anKKair6gpi8VsM/95kmomGNMD0eLz1NQ8+Pfw5sAwWH9fGYXT50E55ZpV0pHUHWf6IUTWPM+f/7AAff+wr9A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-member-expression-literals@7.27.1':
+ resolution: {integrity: sha512-hqoBX4dcZ1I33jCSWcXrP+1Ku7kdqXf1oeah7ooKOIiAdKQ+uqftgCFNOSzA5AMS2XIHEYeGFg4cKRCdpxzVOQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-amd@7.27.1':
+ resolution: {integrity: sha512-iCsytMg/N9/oFq6n+gFTvUYDZQOMK5kEdeYxmxt91fcJGycfxVP9CnrxoliM0oumFERba2i8ZtwRUCMhvP1LnA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-commonjs@7.28.6':
+ resolution: {integrity: sha512-jppVbf8IV9iWWwWTQIxJMAJCWBuuKx71475wHwYytrRGQ2CWiDvYlADQno3tcYpS/T2UUWFQp3nVtYfK/YBQrA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-systemjs@7.29.0':
+ resolution: {integrity: sha512-PrujnVFbOdUpw4UHiVwKvKRLMMic8+eC0CuNlxjsyZUiBjhFdPsewdXCkveh2KqBA9/waD0W1b4hXSOBQJezpQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-modules-umd@7.27.1':
+ resolution: {integrity: sha512-iQBE/xC5BV1OxJbp6WG7jq9IWiD+xxlZhLrdwpPkTX3ydmXdvoCpyfJN7acaIBZaOqTfr76pgzqBJflNbeRK+w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-named-capturing-groups-regex@7.29.0':
+ resolution: {integrity: sha512-1CZQA5KNAD6ZYQLPw7oi5ewtDNxH/2vuCh+6SmvgDfhumForvs8a1o9n0UrEoBD8HU4djO2yWngTQlXl1NDVEQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-new-target@7.27.1':
+ resolution: {integrity: sha512-f6PiYeqXQ05lYq3TIfIDu/MtliKUbNwkGApPUvyo6+tc7uaR4cPjPe7DFPr15Uyycg2lZU6btZ575CuQoYh7MQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-nullish-coalescing-operator@7.28.6':
+ resolution: {integrity: sha512-3wKbRgmzYbw24mDJXT7N+ADXw8BC/imU9yo9c9X9NKaLF1fW+e5H1U5QjMUBe4Qo4Ox/o++IyUkl1sVCLgevKg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-numeric-separator@7.28.6':
+ resolution: {integrity: sha512-SJR8hPynj8outz+SlStQSwvziMN4+Bq99it4tMIf5/Caq+3iOc0JtKyse8puvyXkk3eFRIA5ID/XfunGgO5i6w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-object-rest-spread@7.28.6':
+ resolution: {integrity: sha512-5rh+JR4JBC4pGkXLAcYdLHZjXudVxWMXbB6u6+E9lRL5TrGVbHt1TjxGbZ8CkmYw9zjkB7jutzOROArsqtncEA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-object-super@7.27.1':
+ resolution: {integrity: sha512-SFy8S9plRPbIcxlJ8A6mT/CxFdJx/c04JEctz4jf8YZaVS2px34j7NXRrlGlHkN/M2gnpL37ZpGRGVFLd3l8Ng==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-optional-catch-binding@7.28.6':
+ resolution: {integrity: sha512-R8ja/Pyrv0OGAvAXQhSTmWyPJPml+0TMqXlO5w+AsMEiwb2fg3WkOvob7UxFSL3OIttFSGSRFKQsOhJ/X6HQdQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-optional-chaining@7.28.6':
+ resolution: {integrity: sha512-A4zobikRGJTsX9uqVFdafzGkqD30t26ck2LmOzAuLL8b2x6k3TIqRiT2xVvA9fNmFeTX484VpsdgmKNA0bS23w==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-parameters@7.27.7':
+ resolution: {integrity: sha512-qBkYTYCb76RRxUM6CcZA5KRu8K4SM8ajzVeUgVdMVO9NN9uI/GaVmBg/WKJJGnNokV9SY8FxNOVWGXzqzUidBg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-private-methods@7.28.6':
+ resolution: {integrity: sha512-piiuapX9CRv7+0st8lmuUlRSmX6mBcVeNQ1b4AYzJxfCMuBfB0vBXDiGSmm03pKJw1v6cZ8KSeM+oUnM6yAExg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-private-property-in-object@7.28.6':
+ resolution: {integrity: sha512-b97jvNSOb5+ehyQmBpmhOCiUC5oVK4PMnpRvO7+ymFBoqYjeDHIU9jnrNUuwHOiL9RpGDoKBpSViarV+BU+eVA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-property-literals@7.27.1':
+ resolution: {integrity: sha512-oThy3BCuCha8kDZ8ZkgOg2exvPYUlprMukKQXI1r1pJ47NCvxfkEy8vK+r/hT9nF0Aa4H1WUPZZjHTFtAhGfmQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-react-display-name@7.28.0':
+ resolution: {integrity: sha512-D6Eujc2zMxKjfa4Zxl4GHMsmhKKZ9VpcqIchJLvwTxad9zWIYulwYItBovpDOoNLISpcZSXoDJ5gaGbQUDqViA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-react-jsx-development@7.27.1':
+ resolution: {integrity: sha512-ykDdF5yI4f1WrAolLqeF3hmYU12j9ntLQl/AOG1HAS21jxyg1Q0/J/tpREuYLfatGdGmXp/3yS0ZA76kOlVq9Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-react-jsx-self@7.27.1':
+ resolution: {integrity: sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-react-jsx-source@7.27.1':
+ resolution: {integrity: sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-react-jsx@7.28.6':
+ resolution: {integrity: sha512-61bxqhiRfAACulXSLd/GxqmAedUSrRZIu/cbaT18T1CetkTmtDN15it7i80ru4DVqRK1WMxQhXs+Lf9kajm5Ow==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-react-pure-annotations@7.27.1':
+ resolution: {integrity: sha512-JfuinvDOsD9FVMTHpzA/pBLisxpv1aSf+OIV8lgH3MuWrks19R27e6a6DipIg4aX1Zm9Wpb04p8wljfKrVSnPA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-regenerator@7.29.0':
+ resolution: {integrity: sha512-FijqlqMA7DmRdg/aINBSs04y8XNTYw/lr1gJ2WsmBnnaNw1iS43EPkJW+zK7z65auG3AWRFXWj+NcTQwYptUog==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-regexp-modifiers@7.28.6':
+ resolution: {integrity: sha512-QGWAepm9qxpaIs7UM9FvUSnCGlb8Ua1RhyM4/veAxLwt3gMat/LSGrZixyuj4I6+Kn9iwvqCyPTtbdxanYoWYg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/plugin-transform-reserved-words@7.27.1':
+ resolution: {integrity: sha512-V2ABPHIJX4kC7HegLkYoDpfg9PVmuWy/i6vUM5eGK22bx4YVFD3M5F0QQnWQoDs6AGsUWTVOopBiMFQgHaSkVw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-shorthand-properties@7.27.1':
+ resolution: {integrity: sha512-N/wH1vcn4oYawbJ13Y/FxcQrWk63jhfNa7jef0ih7PHSIHX2LB7GWE1rkPrOnka9kwMxb6hMl19p7lidA+EHmQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-spread@7.28.6':
+ resolution: {integrity: sha512-9U4QObUC0FtJl05AsUcodau/RWDytrU6uKgkxu09mLR9HLDAtUMoPuuskm5huQsoktmsYpI+bGmq+iapDcriKA==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-sticky-regex@7.27.1':
+ resolution: {integrity: sha512-lhInBO5bi/Kowe2/aLdBAawijx+q1pQzicSgnkB6dUPc1+RC8QmJHKf2OjvU+NZWitguJHEaEmbV6VWEouT58g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-template-literals@7.27.1':
+ resolution: {integrity: sha512-fBJKiV7F2DxZUkg5EtHKXQdbsbURW3DZKQUWphDum0uRP6eHGGa/He9mc0mypL680pb+e/lDIthRohlv8NCHkg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-typeof-symbol@7.27.1':
+ resolution: {integrity: sha512-RiSILC+nRJM7FY5srIyc4/fGIwUhyDuuBSdWn4y6yT6gm652DpCHZjIipgn6B7MQ1ITOUnAKWixEUjQRIBIcLw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-typescript@7.28.6':
+ resolution: {integrity: sha512-0YWL2RFxOqEm9Efk5PvreamxPME8OyY0wM5wh5lHjF+VtVhdneCWGzZeSqzOfiobVqQaNCd2z0tQvnI9DaPWPw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-escapes@7.27.1':
+ resolution: {integrity: sha512-Ysg4v6AmF26k9vpfFuTZg8HRfVWzsh1kVfowA23y9j/Gu6dOuahdUVhkLqpObp3JIv27MLSii6noRnuKN8H0Mg==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-property-regex@7.28.6':
+ resolution: {integrity: sha512-4Wlbdl/sIZjzi/8St0evF0gEZrgOswVO6aOzqxh1kDZOl9WmLrHq2HtGhnOJZmHZYKP8WZ1MDLCt5DAWwRo57A==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-regex@7.27.1':
+ resolution: {integrity: sha512-xvINq24TRojDuyt6JGtHmkVkrfVV3FPT16uytxImLeBZqW3/H52yN+kM1MGuyPkIQxrzKwPHs5U/MP3qKyzkGw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/plugin-transform-unicode-sets-regex@7.28.6':
+ resolution: {integrity: sha512-/wHc/paTUmsDYN7SZkpWxogTOBNnlx7nBQYfy6JJlCT7G3mVhltk3e++N7zV0XfgGsrqBxd4rJQt9H16I21Y1Q==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0
+
+ '@babel/preset-env@7.29.2':
+ resolution: {integrity: sha512-DYD23veRYGvBFhcTY1iUvJnDNpuqNd/BzBwCvzOTKUnJjKg5kpUBh3/u9585Agdkgj+QuygG7jLfOPWMa2KVNw==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/preset-modules@0.1.6-no-external-plugins':
+ resolution: {integrity: sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
+
+ '@babel/preset-react@7.28.5':
+ resolution: {integrity: sha512-Z3J8vhRq7CeLjdC58jLv4lnZ5RKFUJWqH5emvxmv9Hv3BD1T9R/Im713R4MTKwvFaV74ejZ3sM01LyEKk4ugNQ==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/preset-typescript@7.28.5':
+ resolution: {integrity: sha512-+bQy5WOI2V6LJZpPVxY+yp66XdZ2yifu0Mc1aP5CQKgjn4QM5IN2i5fAZ4xKop47pr8rpVhiAeu+nDQa12C8+g==}
+ engines: {node: '>=6.9.0'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@babel/runtime@7.29.2':
+ resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/template@7.28.6':
+ resolution: {integrity: sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/traverse@7.29.0':
+ resolution: {integrity: sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==}
+ engines: {node: '>=6.9.0'}
+
+ '@babel/types@7.29.0':
+ resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==}
+ engines: {node: '>=6.9.0'}
+
+ '@bcoe/v8-coverage@1.0.2':
+ resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==}
+ engines: {node: '>=18'}
+
+ '@bufbuild/protobuf@1.10.1':
+ resolution: {integrity: sha512-wJ8ReQbHxsAfXhrf9ixl0aYbZorRuOWpBNzm8pL8ftmSxQx/wnJD5Eg861NwJU/czy2VXFIebCeZnZrI9rktIQ==}
+
+ '@codecov/bundler-plugin-core@1.9.1':
+ resolution: {integrity: sha512-dt3ic7gMswz4p/qdkYPVJwXlLiLsz55rBBn2I7mr0HTG8pCoLRqnANJIwo5WrqGBZgPyVSMPBqBra6VxLWfDyA==}
+ engines: {node: '>=18.0.0'}
+
+ '@codecov/vite-plugin@1.9.1':
+ resolution: {integrity: sha512-S6Yne7comVulJ1jD3T7rCfYFHPR0zUjAYoLjUDPXNJCUrdzWJdf/ak/UepE7TicqQG+yBa6eb5WusqcPgg+1AQ==}
+ engines: {node: '>=18.0.0'}
+ peerDependencies:
+ vite: 4.x || 5.x || 6.x
+
+ '@csstools/cascade-layer-name-parser@2.0.5':
+ resolution: {integrity: sha512-p1ko5eHgV+MgXFVa4STPKpvPxr6ReS8oS2jzTukjR74i5zJNyWO1ZM1m8YKBXnzDKWfBN1ztLYlHxbVemDD88A==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
+
+ '@csstools/color-helpers@5.1.0':
+ resolution: {integrity: sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==}
+ engines: {node: '>=18'}
+
+ '@csstools/css-calc@2.1.4':
+ resolution: {integrity: sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
+
+ '@csstools/css-color-parser@3.1.0':
+ resolution: {integrity: sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
+
+ '@csstools/css-parser-algorithms@3.0.5':
+ resolution: {integrity: sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-tokenizer': ^3.0.4
+
+ '@csstools/css-tokenizer@3.0.4':
+ resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==}
+ engines: {node: '>=18'}
+
+ '@csstools/media-query-list-parser@4.0.3':
+ resolution: {integrity: sha512-HAYH7d3TLRHDOUQK4mZKf9k9Ph/m8Akstg66ywKR4SFAigjs3yBiUeZtFxywiTm5moZMAp/5W/ZuFnNXXYLuuQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@csstools/css-parser-algorithms': ^3.0.5
+ '@csstools/css-tokenizer': ^3.0.4
+
+ '@csstools/postcss-alpha-function@1.0.1':
+ resolution: {integrity: sha512-isfLLwksH3yHkFXfCI2Gcaqg7wGGHZZwunoJzEZk0yKYIokgre6hYVFibKL3SYAoR1kBXova8LB+JoO5vZzi9w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-cascade-layers@5.0.2':
+ resolution: {integrity: sha512-nWBE08nhO8uWl6kSAeCx4im7QfVko3zLrtgWZY4/bP87zrSPpSyN/3W3TDqz1jJuH+kbKOHXg5rJnK+ZVYcFFg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-color-function-display-p3-linear@1.0.1':
+ resolution: {integrity: sha512-E5qusdzhlmO1TztYzDIi8XPdPoYOjoTY6HBYBCYSj+Gn4gQRBlvjgPQXzfzuPQqt8EhkC/SzPKObg4Mbn8/xMg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-color-function@4.0.12':
+ resolution: {integrity: sha512-yx3cljQKRaSBc2hfh8rMZFZzChaFgwmO2JfFgFr1vMcF3C/uyy5I4RFIBOIWGq1D+XbKCG789CGkG6zzkLpagA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-color-mix-function@3.0.12':
+ resolution: {integrity: sha512-4STERZfCP5Jcs13P1U5pTvI9SkgLgfMUMhdXW8IlJWkzOOOqhZIjcNhWtNJZes2nkBDsIKJ0CJtFtuaZ00moag==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-color-mix-variadic-function-arguments@1.0.2':
+ resolution: {integrity: sha512-rM67Gp9lRAkTo+X31DUqMEq+iK+EFqsidfecmhrteErxJZb6tUoJBVQca1Vn1GpDql1s1rD1pKcuYzMsg7Z1KQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-content-alt-text@2.0.8':
+ resolution: {integrity: sha512-9SfEW9QCxEpTlNMnpSqFaHyzsiRpZ5J5+KqCu1u5/eEJAWsMhzT40qf0FIbeeglEvrGRMdDzAxMIz3wqoGSb+Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-contrast-color-function@2.0.12':
+ resolution: {integrity: sha512-YbwWckjK3qwKjeYz/CijgcS7WDUCtKTd8ShLztm3/i5dhh4NaqzsbYnhm4bjrpFpnLZ31jVcbK8YL77z3GBPzA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-exponential-functions@2.0.9':
+ resolution: {integrity: sha512-abg2W/PI3HXwS/CZshSa79kNWNZHdJPMBXeZNyPQFbbj8sKO3jXxOt/wF7juJVjyDTc6JrvaUZYFcSBZBhaxjw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-font-format-keywords@4.0.0':
+ resolution: {integrity: sha512-usBzw9aCRDvchpok6C+4TXC57btc4bJtmKQWOHQxOVKen1ZfVqBUuCZ/wuqdX5GHsD0NRSr9XTP+5ID1ZZQBXw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-gamut-mapping@2.0.11':
+ resolution: {integrity: sha512-fCpCUgZNE2piVJKC76zFsgVW1apF6dpYsqGyH8SIeCcM4pTEsRTWTLCaJIMKFEundsCKwY1rwfhtrio04RJ4Dw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-gradients-interpolation-method@5.0.12':
+ resolution: {integrity: sha512-jugzjwkUY0wtNrZlFeyXzimUL3hN4xMvoPnIXxoZqxDvjZRiSh+itgHcVUWzJ2VwD/VAMEgCLvtaJHX+4Vj3Ow==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-hwb-function@4.0.12':
+ resolution: {integrity: sha512-mL/+88Z53KrE4JdePYFJAQWFrcADEqsLprExCM04GDNgHIztwFzj0Mbhd/yxMBngq0NIlz58VVxjt5abNs1VhA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-ic-unit@4.0.4':
+ resolution: {integrity: sha512-yQ4VmossuOAql65sCPppVO1yfb7hDscf4GseF0VCA/DTDaBc0Wtf8MTqVPfjGYlT5+2buokG0Gp7y0atYZpwjg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-initial@2.0.1':
+ resolution: {integrity: sha512-L1wLVMSAZ4wovznquK0xmC7QSctzO4D0Is590bxpGqhqjboLXYA16dWZpfwImkdOgACdQ9PqXsuRroW6qPlEsg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-is-pseudo-class@5.0.3':
+ resolution: {integrity: sha512-jS/TY4SpG4gszAtIg7Qnf3AS2pjcUM5SzxpApOrlndMeGhIbaTzWBzzP/IApXoNWEW7OhcjkRT48jnAUIFXhAQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-light-dark-function@2.0.11':
+ resolution: {integrity: sha512-fNJcKXJdPM3Lyrbmgw2OBbaioU7yuKZtiXClf4sGdQttitijYlZMD5K7HrC/eF83VRWRrYq6OZ0Lx92leV2LFA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-logical-float-and-clear@3.0.0':
+ resolution: {integrity: sha512-SEmaHMszwakI2rqKRJgE+8rpotFfne1ZS6bZqBoQIicFyV+xT1UF42eORPxJkVJVrH9C0ctUgwMSn3BLOIZldQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-logical-overflow@2.0.0':
+ resolution: {integrity: sha512-spzR1MInxPuXKEX2csMamshR4LRaSZ3UXVaRGjeQxl70ySxOhMpP2252RAFsg8QyyBXBzuVOOdx1+bVO5bPIzA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-logical-overscroll-behavior@2.0.0':
+ resolution: {integrity: sha512-e/webMjoGOSYfqLunyzByZj5KKe5oyVg/YSbie99VEaSDE2kimFm0q1f6t/6Jo+VVCQ/jbe2Xy+uX+C4xzWs4w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-logical-resize@3.0.0':
+ resolution: {integrity: sha512-DFbHQOFW/+I+MY4Ycd/QN6Dg4Hcbb50elIJCfnwkRTCX05G11SwViI5BbBlg9iHRl4ytB7pmY5ieAFk3ws7yyg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-logical-viewport-units@3.0.4':
+ resolution: {integrity: sha512-q+eHV1haXA4w9xBwZLKjVKAWn3W2CMqmpNpZUk5kRprvSiBEGMgrNH3/sJZ8UA3JgyHaOt3jwT9uFa4wLX4EqQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-media-minmax@2.0.9':
+ resolution: {integrity: sha512-af9Qw3uS3JhYLnCbqtZ9crTvvkR+0Se+bBqSr7ykAnl9yKhk6895z9rf+2F4dClIDJWxgn0iZZ1PSdkhrbs2ig==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.5':
+ resolution: {integrity: sha512-zhAe31xaaXOY2Px8IYfoVTB3wglbJUVigGphFLj6exb7cjZRH9A6adyE22XfFK3P2PzwRk0VDeTJmaxpluyrDg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-nested-calc@4.0.0':
+ resolution: {integrity: sha512-jMYDdqrQQxE7k9+KjstC3NbsmC063n1FTPLCgCRS2/qHUbHM0mNy9pIn4QIiQGs9I/Bg98vMqw7mJXBxa0N88A==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-normalize-display-values@4.0.1':
+ resolution: {integrity: sha512-TQUGBuRvxdc7TgNSTevYqrL8oItxiwPDixk20qCB5me/W8uF7BPbhRrAvFuhEoywQp/woRsUZ6SJ+sU5idZAIA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-oklab-function@4.0.12':
+ resolution: {integrity: sha512-HhlSmnE1NKBhXsTnNGjxvhryKtO7tJd1w42DKOGFD6jSHtYOrsJTQDKPMwvOfrzUAk8t7GcpIfRyM7ssqHpFjg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-position-area-property@1.0.0':
+ resolution: {integrity: sha512-fUP6KR8qV2NuUZV3Cw8itx0Ep90aRjAZxAEzC3vrl6yjFv+pFsQbR18UuQctEKmA72K9O27CoYiKEgXxkqjg8Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-progressive-custom-properties@4.2.1':
+ resolution: {integrity: sha512-uPiiXf7IEKtUQXsxu6uWtOlRMXd2QWWy5fhxHDnPdXKCQckPP3E34ZgDoZ62r2iT+UOgWsSbM4NvHE5m3mAEdw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-property-rule-prelude-list@1.0.0':
+ resolution: {integrity: sha512-IxuQjUXq19fobgmSSvUDO7fVwijDJaZMvWQugxfEUxmjBeDCVaDuMpsZ31MsTm5xbnhA+ElDi0+rQ7sQQGisFA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-random-function@2.0.1':
+ resolution: {integrity: sha512-q+FQaNiRBhnoSNo+GzqGOIBKoHQ43lYz0ICrV+UudfWnEF6ksS6DsBIJSISKQT2Bvu3g4k6r7t0zYrk5pDlo8w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-relative-color-syntax@3.0.12':
+ resolution: {integrity: sha512-0RLIeONxu/mtxRtf3o41Lq2ghLimw0w9ByLWnnEVuy89exmEEq8bynveBxNW3nyHqLAFEeNtVEmC1QK9MZ8Huw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-scope-pseudo-class@4.0.1':
+ resolution: {integrity: sha512-IMi9FwtH6LMNuLea1bjVMQAsUhFxJnyLSgOp/cpv5hrzWmrUYU5fm0EguNDIIOHUqzXode8F/1qkC/tEo/qN8Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-sign-functions@1.1.4':
+ resolution: {integrity: sha512-P97h1XqRPcfcJndFdG95Gv/6ZzxUBBISem0IDqPZ7WMvc/wlO+yU0c5D/OCpZ5TJoTt63Ok3knGk64N+o6L2Pg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-stepped-value-functions@4.0.9':
+ resolution: {integrity: sha512-h9btycWrsex4dNLeQfyU3y3w40LMQooJWFMm/SK9lrKguHDcFl4VMkncKKoXi2z5rM9YGWbUQABI8BT2UydIcA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-syntax-descriptor-syntax-production@1.0.1':
+ resolution: {integrity: sha512-GneqQWefjM//f4hJ/Kbox0C6f2T7+pi4/fqTqOFGTL3EjnvOReTqO1qUQ30CaUjkwjYq9qZ41hzarrAxCc4gow==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-system-ui-font-family@1.0.0':
+ resolution: {integrity: sha512-s3xdBvfWYfoPSBsikDXbuorcMG1nN1M6GdU0qBsGfcmNR0A/qhloQZpTxjA3Xsyrk1VJvwb2pOfiOT3at/DuIQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-text-decoration-shorthand@4.0.3':
+ resolution: {integrity: sha512-KSkGgZfx0kQjRIYnpsD7X2Om9BUXX/Kii77VBifQW9Ih929hK0KNjVngHDH0bFB9GmfWcR9vJYJJRvw/NQjkrA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-trigonometric-functions@4.0.9':
+ resolution: {integrity: sha512-Hnh5zJUdpNrJqK9v1/E3BbrQhaDTj5YiX7P61TOvUhoDHnUmsNNxcDAgkQ32RrcWx9GVUvfUNPcUkn8R3vIX6A==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/postcss-unset-value@4.0.0':
+ resolution: {integrity: sha512-cBz3tOCI5Fw6NIFEwU3RiwK6mn3nKegjpJuzCndoGq3BZPkUjnsq7uQmIeMNeMbMk7YD2MfKcgCpZwX5jyXqCA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@csstools/selector-resolve-nested@3.1.0':
+ resolution: {integrity: sha512-mf1LEW0tJLKfWyvn5KdDrhpxHyuxpbNwTIwOYLIvsTffeyOf85j5oIzfG0yosxDgx/sswlqBnESYUcQH0vgZ0g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss-selector-parser: ^7.0.0
+
+ '@csstools/selector-specificity@5.0.0':
+ resolution: {integrity: sha512-PCqQV3c4CoVm3kdPhyeZ07VmBRdH2EpMFA/pd9OASpOEC3aXNGoqPDAZ80D0cLpMBxnmk0+yNhGsEx31hq7Gtw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss-selector-parser: ^7.0.0
+
+ '@csstools/utilities@2.0.0':
+ resolution: {integrity: sha512-5VdOr0Z71u+Yp3ozOx8T11N703wIFGVRgOWbOZMKgglPJsWA54MRIoMNVMa7shUToIhx5J8vX4sOZgD2XiihiQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ '@emnapi/core@1.9.2':
+ resolution: {integrity: sha512-UC+ZhH3XtczQYfOlu3lNEkdW/p4dsJ1r/bP7H8+rhao3TTTMO1ATq/4DdIi23XuGoFY+Cz0JmCbdVl0hz9jZcA==}
+
+ '@emnapi/runtime@1.9.2':
+ resolution: {integrity: sha512-3U4+MIWHImeyu1wnmVygh5WlgfYDtyf0k8AbLhMFxOipihf6nrWC4syIm/SwEeec0mNSafiiNnMJwbza/Is6Lw==}
+
+ '@emnapi/wasi-threads@1.2.1':
+ resolution: {integrity: sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==}
+
+ '@es-joy/jsdoccomment@0.78.0':
+ resolution: {integrity: sha512-rQkU5u8hNAq2NVRzHnIUUvR6arbO0b6AOlvpTNS48CkiKSn/xtNfOzBK23JE4SiW89DgvU7GtxLVgV4Vn2HBAw==}
+ engines: {node: '>=20.11.0'}
+
+ '@es-joy/resolve.exports@1.2.0':
+ resolution: {integrity: sha512-Q9hjxWI5xBM+qW2enxfe8wDKdFWMfd0Z29k5ZJnuBqD/CasY5Zryj09aCA6owbGATWz+39p5uIdaHXpopOcG8g==}
+ engines: {node: '>=10'}
+
+ '@esbuild/aix-ppc64@0.27.7':
+ resolution: {integrity: sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [aix]
+
+ '@esbuild/android-arm64@0.27.7':
+ resolution: {integrity: sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [android]
+
+ '@esbuild/android-arm@0.27.7':
+ resolution: {integrity: sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [android]
+
+ '@esbuild/android-x64@0.27.7':
+ resolution: {integrity: sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [android]
+
+ '@esbuild/darwin-arm64@0.27.7':
+ resolution: {integrity: sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@esbuild/darwin-x64@0.27.7':
+ resolution: {integrity: sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@esbuild/freebsd-arm64@0.27.7':
+ resolution: {integrity: sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@esbuild/freebsd-x64@0.27.7':
+ resolution: {integrity: sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@esbuild/linux-arm64@0.27.7':
+ resolution: {integrity: sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [linux]
+
+ '@esbuild/linux-arm@0.27.7':
+ resolution: {integrity: sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA==}
+ engines: {node: '>=18'}
+ cpu: [arm]
+ os: [linux]
+
+ '@esbuild/linux-ia32@0.27.7':
+ resolution: {integrity: sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [linux]
+
+ '@esbuild/linux-loong64@0.27.7':
+ resolution: {integrity: sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q==}
+ engines: {node: '>=18'}
+ cpu: [loong64]
+ os: [linux]
+
+ '@esbuild/linux-mips64el@0.27.7':
+ resolution: {integrity: sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw==}
+ engines: {node: '>=18'}
+ cpu: [mips64el]
+ os: [linux]
+
+ '@esbuild/linux-ppc64@0.27.7':
+ resolution: {integrity: sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ==}
+ engines: {node: '>=18'}
+ cpu: [ppc64]
+ os: [linux]
+
+ '@esbuild/linux-riscv64@0.27.7':
+ resolution: {integrity: sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ==}
+ engines: {node: '>=18'}
+ cpu: [riscv64]
+ os: [linux]
+
+ '@esbuild/linux-s390x@0.27.7':
+ resolution: {integrity: sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw==}
+ engines: {node: '>=18'}
+ cpu: [s390x]
+ os: [linux]
+
+ '@esbuild/linux-x64@0.27.7':
+ resolution: {integrity: sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [linux]
+
+ '@esbuild/netbsd-arm64@0.27.7':
+ resolution: {integrity: sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [netbsd]
+
+ '@esbuild/netbsd-x64@0.27.7':
+ resolution: {integrity: sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [netbsd]
+
+ '@esbuild/openbsd-arm64@0.27.7':
+ resolution: {integrity: sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openbsd]
+
+ '@esbuild/openbsd-x64@0.27.7':
+ resolution: {integrity: sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [openbsd]
+
+ '@esbuild/openharmony-arm64@0.27.7':
+ resolution: {integrity: sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@esbuild/sunos-x64@0.27.7':
+ resolution: {integrity: sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [sunos]
+
+ '@esbuild/win32-arm64@0.27.7':
+ resolution: {integrity: sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA==}
+ engines: {node: '>=18'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@esbuild/win32-ia32@0.27.7':
+ resolution: {integrity: sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw==}
+ engines: {node: '>=18'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@esbuild/win32-x64@0.27.7':
+ resolution: {integrity: sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg==}
+ engines: {node: '>=18'}
+ cpu: [x64]
+ os: [win32]
+
+ '@eslint-community/eslint-utils@4.9.1':
+ resolution: {integrity: sha512-phrYmNiYppR7znFEdqgfWHXR6NCkZEK7hwWDHZUjit/2/U0r6XvkDl0SYnoM51Hq7FhCGdLDT6zxCCOY1hexsQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
+
+ '@eslint-community/regexpp@4.12.2':
+ resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==}
+ engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0}
+
+ '@eslint/eslintrc@2.1.4':
+ resolution: {integrity: sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ '@eslint/js@8.57.1':
+ resolution: {integrity: sha512-d9zaMRSTIKDLhctzH12MtXvJKSSUhaHcjV+2Z+GK+EEY7XKpP5yR4x+N3TAcHTcu963nIr+TMcCb4DBCYX1z6Q==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ '@fastify/busboy@2.1.1':
+ resolution: {integrity: sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==}
+ engines: {node: '>=14'}
+
+ '@floating-ui/core@1.7.5':
+ resolution: {integrity: sha512-1Ih4WTWyw0+lKyFMcBHGbb5U5FtuHJuujoyyr5zTaWS5EYMeT6Jb2AuDeftsCsEuchO+mM2ij5+q9crhydzLhQ==}
+
+ '@floating-ui/dom@1.7.4':
+ resolution: {integrity: sha512-OOchDgh4F2CchOX94cRVqhvy7b3AFb+/rQXyswmzmGakRfkMgoWVjfnLWkRirfLEfuD4ysVW16eXzwt3jHIzKA==}
+
+ '@floating-ui/dom@1.7.6':
+ resolution: {integrity: sha512-9gZSAI5XM36880PPMm//9dfiEngYoC6Am2izES1FF406YFsjvyBMmeJ2g4SAju3xWwtuynNRFL2s9hgxpLI5SQ==}
+
+ '@floating-ui/react-dom@2.1.8':
+ resolution: {integrity: sha512-cC52bHwM/n/CxS87FH0yWdngEZrjdtLW/qVruo68qg+prK7ZQ4YGdut2GyDVpoGeAYe/h899rVeOVm6Oi40k2A==}
+ peerDependencies:
+ react: '>=16.8.0'
+ react-dom: '>=16.8.0'
+
+ '@floating-ui/react@0.27.19':
+ resolution: {integrity: sha512-31B8h5mm8YxotlE7/AU/PhNAl8eWxAmjL/v2QOxroDNkTFLk3Uu82u63N3b6TXa4EGJeeZLVcd/9AlNlVqzeog==}
+ peerDependencies:
+ react: '>=17.0.0'
+ react-dom: '>=17.0.0'
+
+ '@floating-ui/utils@0.2.11':
+ resolution: {integrity: sha512-RiB/yIh78pcIxl6lLMG0CgBXAZ2Y0eVHqMPYugu+9U0AeT6YBeiJpf7lbdJNIugFP5SIjwNRgo4DhR1Qxi26Gg==}
+
+ '@fontsource/inconsolata@5.2.8':
+ resolution: {integrity: sha512-lIZW+WOZYpUH91g9r6rYYhfTmptF3YPPM54ZOs8IYVeeL4SeiAu4tfj7mdr8llYEq31DLYgi6JtGIJa192gB0Q==}
+
+ '@fontsource/inter@5.2.8':
+ resolution: {integrity: sha512-P6r5WnJoKiNVV+zvW2xM13gNdFhAEpQ9dQJHt3naLvfg+LkF2ldgSLiF4T41lf1SQCM9QmkqPTn4TH568IRagg==}
+
+ '@formatjs/ecma402-abstract@2.3.6':
+ resolution: {integrity: sha512-HJnTFeRM2kVFVr5gr5kH1XP6K0JcJtE7Lzvtr3FS/so5f1kpsqqqxy5JF+FRaO6H2qmcMfAUIox7AJteieRtVw==}
+
+ '@formatjs/fast-memoize@2.2.7':
+ resolution: {integrity: sha512-Yabmi9nSvyOMrlSeGGWDiH7rf3a7sIwplbvo/dlz9WCIjzIQAfy1RMf4S0X3yG724n5Ghu2GmEl5NJIV6O9sZQ==}
+
+ '@formatjs/fast-memoize@3.1.2':
+ resolution: {integrity: sha512-vPnriihkfK0lzoQGaXq+qXH23VsYyansRTkTgo2aTG0k1NjLFyZimFVdfj4C9JkSE5dm7CEngcQ5TTc1yAyBfQ==}
+
+ '@formatjs/intl-durationformat@0.10.4':
+ resolution: {integrity: sha512-SUS4xT3GX43/thXTZojOXMNMB1zUIlLC+3mdyJga7evrgV4jvmgycX9bXfmMNDu7c2TC9gnXySUpUcxMghZrKg==}
+
+ '@formatjs/intl-localematcher@0.6.2':
+ resolution: {integrity: sha512-XOMO2Hupl0wdd172Y06h6kLpBz6Dv+J4okPLl4LPtzbr8f66WbIoy4ev98EBuZ6ZK4h5ydTN6XneT4QVpD7cdA==}
+
+ '@formatjs/intl-localematcher@0.8.3':
+ resolution: {integrity: sha512-pHUjWb9NuhnMs8+PxQdzBtZRFJHlGhrURGAbm6Ltwl82BFajeuiIR3jblSa7ia3r62rXe/0YtVpUG3xWr5bFCA==}
+
+ '@formatjs/intl-segmenter@11.7.12':
+ resolution: {integrity: sha512-3QefVKh5HvaKU80lAFmqUsWmKYWcpiDymsc0HwFvhuVl0dAnMhtbNmzMN50UiC7ZsnbybelNGrm9GZPp4kbbZA==}
+
+ '@gulpjs/to-absolute-glob@4.0.0':
+ resolution: {integrity: sha512-kjotm7XJrJ6v+7knhPaRgaT6q8F8K2jiafwYdNHLzmV0uGLuZY43FK6smNSHUPrhq5kX2slCUy+RGG/xGqmIKA==}
+ engines: {node: '>=10.13.0'}
+
+ '@humanwhocodes/config-array@0.13.0':
+ resolution: {integrity: sha512-DZLEEqFWQFiyK6h5YIeynKx7JlvCYWL0cImfSRXZ9l4Sg2efkFGTuFf6vzXjK1cq6IYkU+Eg/JizXw+TD2vRNw==}
+ engines: {node: '>=10.10.0'}
+ deprecated: Use @eslint/config-array instead
+
+ '@humanwhocodes/module-importer@1.0.1':
+ resolution: {integrity: sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==}
+ engines: {node: '>=12.22'}
+
+ '@humanwhocodes/object-schema@2.0.3':
+ resolution: {integrity: sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==}
+ deprecated: Use @eslint/object-schema instead
+
+ '@isaacs/cliui@8.0.2':
+ resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
+ engines: {node: '>=12'}
+
+ '@joshwooding/vite-plugin-react-docgen-typescript@0.7.0':
+ resolution: {integrity: sha512-qvsTEwEFefhdirGOPnu9Wp6ChfIwy2dBCRuETU3uE+4cC+PFoxMSiiEhxk4lOluA34eARHA0OxqsEUYDqRMgeQ==}
+ peerDependencies:
+ typescript: '>= 4.3.x'
+ vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@jridgewell/gen-mapping@0.3.13':
+ resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
+
+ '@jridgewell/remapping@2.3.5':
+ resolution: {integrity: sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==}
+
+ '@jridgewell/resolve-uri@3.1.2':
+ resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
+ engines: {node: '>=6.0.0'}
+
+ '@jridgewell/source-map@0.3.11':
+ resolution: {integrity: sha512-ZMp1V8ZFcPG5dIWnQLr3NSI1MiCU7UETdS/A0G8V/XWHvJv3ZsFqutJn1Y5RPmAPX6F3BiE397OqveU/9NCuIA==}
+
+ '@jridgewell/sourcemap-codec@1.5.5':
+ resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
+
+ '@jridgewell/trace-mapping@0.3.31':
+ resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
+
+ '@livekit/components-core@0.12.13':
+ resolution: {integrity: sha512-DQmi84afHoHjZ62wm8y+XPNIDHTwFHAltjd3lmyXj8UZHOY7wcza4vFt1xnghJOD5wLRY58L1dkAgAw59MgWvw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ livekit-client: ^2.17.2
+ tslib: ^2.6.2
+
+ '@livekit/components-react@2.9.20':
+ resolution: {integrity: sha512-hjkYOsJj9Jbghb7wM5cI8HoVisKeL6Zcy1VnRWTLm0sqVbto8GJp/17T4Udx85mCPY6Jgh8I1Cv0yVzgz7CQtg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@livekit/krisp-noise-filter': ^0.2.12 || ^0.3.0
+ livekit-client: ^2.17.2
+ react: '>=18'
+ react-dom: '>=18'
+ tslib: ^2.6.2
+ peerDependenciesMeta:
+ '@livekit/krisp-noise-filter':
+ optional: true
+
+ '@livekit/mutex@1.1.1':
+ resolution: {integrity: sha512-EsshAucklmpuUAfkABPxJNhzj9v2sG7JuzFDL4ML1oJQSV14sqrpTYnsaOudMAw9yOaW53NU3QQTlUQoRs4czw==}
+
+ '@livekit/protocol@1.45.3':
+ resolution: {integrity: sha512-WmMxBTsy4dRBqcrswFwUUlgq3Z0nnhOqKR6tX749Rb/PcB1yBMUtrHxZvcsS6qi3/5+86zHeVG+exmu1sZqfJg==}
+
+ '@livekit/track-processors@0.7.2':
+ resolution: {integrity: sha512-lzARBKTbBwqycdR/SwTu6//N0l20BzfDd7grxCXl07676SwRApNtZAK1GJjL1m3dCM3KBqH1aVxjMpNcbOw5uQ==}
+ peerDependencies:
+ '@types/dom-mediacapture-transform': ^0.1.9
+ livekit-client: ^1.12.0 || ^2.1.0
+
+ '@matrix-org/matrix-sdk-crypto-wasm@18.1.0':
+ resolution: {integrity: sha512-GxXK2U39+2qWNvR3fXJY7nxdikvpiT17RaS0/Dktk6R8FMKDk3vm79Hq65yrCWLBmT7pJZoerfILNZqhrcUHrg==}
+ engines: {node: '>= 18'}
+
+ '@mdx-js/react@3.1.1':
+ resolution: {integrity: sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==}
+ peerDependencies:
+ '@types/react': '>=16'
+ react: '>=16'
+
+ '@mediapipe/tasks-vision@0.10.34':
+ resolution: {integrity: sha512-KFGyhDsjJ+9WUMcMfjTOpcEp3LJNS3KwC7BfvKrCYELn/7G/5kmwnU7z6Spps+iWQoTGL8xW8i68r65OTa3DwA==}
+
+ '@napi-rs/wasm-runtime@1.1.4':
+ resolution: {integrity: sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==}
+ peerDependencies:
+ '@emnapi/core': ^1.7.1
+ '@emnapi/runtime': ^1.7.1
+
+ '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1':
+ resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==}
+
+ '@nodelib/fs.scandir@2.1.5':
+ resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.stat@2.0.5':
+ resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==}
+ engines: {node: '>= 8'}
+
+ '@nodelib/fs.walk@1.2.8':
+ resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
+ engines: {node: '>= 8'}
+
+ '@octokit/auth-token@4.0.0':
+ resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==}
+ engines: {node: '>= 18'}
+
+ '@octokit/core@5.2.2':
+ resolution: {integrity: sha512-/g2d4sW9nUDJOMz3mabVQvOGhVa4e/BN/Um7yca9Bb2XTzPPnfTWHWQg+IsEYO7M3Vx+EXvaM/I2pJWIMun1bg==}
+ engines: {node: '>= 18'}
+
+ '@octokit/endpoint@9.0.6':
+ resolution: {integrity: sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw==}
+ engines: {node: '>= 18'}
+
+ '@octokit/graphql@7.1.1':
+ resolution: {integrity: sha512-3mkDltSfcDUoa176nlGoA32RGjeWjl3K7F/BwHwRMJUW/IteSa4bnSV8p2ThNkcIcZU2umkZWxwETSSCJf2Q7g==}
+ engines: {node: '>= 18'}
+
+ '@octokit/openapi-types@20.0.0':
+ resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==}
+
+ '@octokit/openapi-types@24.2.0':
+ resolution: {integrity: sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==}
+
+ '@octokit/plugin-paginate-rest@9.2.2':
+ resolution: {integrity: sha512-u3KYkGF7GcZnSD/3UP0S7K5XUFT2FkOQdcfXZGZQPGv3lm4F2Xbf71lvjldr8c1H3nNbF+33cLEkWYbokGWqiQ==}
+ engines: {node: '>= 18'}
+ peerDependencies:
+ '@octokit/core': '5'
+
+ '@octokit/plugin-rest-endpoint-methods@10.4.1':
+ resolution: {integrity: sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg==}
+ engines: {node: '>= 18'}
+ peerDependencies:
+ '@octokit/core': '5'
+
+ '@octokit/request-error@5.1.1':
+ resolution: {integrity: sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g==}
+ engines: {node: '>= 18'}
+
+ '@octokit/request@8.4.1':
+ resolution: {integrity: sha512-qnB2+SY3hkCmBxZsR/MPCybNmbJe4KAlfWErXq+rBKkQJlbjdJeS85VI9r8UqeLYLvnAenU8Q1okM/0MBsAGXw==}
+ engines: {node: '>= 18'}
+
+ '@octokit/types@12.6.0':
+ resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==}
+
+ '@octokit/types@13.10.0':
+ resolution: {integrity: sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==}
+
+ '@oxc-project/types@0.124.0':
+ resolution: {integrity: sha512-VBFWMTBvHxS11Z5Lvlr3IWgrwhMTXV+Md+EQF0Xf60+wAdsGFTBx7X7K/hP4pi8N7dcm1RvcHwDxZ16Qx8keUg==}
+
+ '@oxc-resolver/binding-android-arm-eabi@11.19.1':
+ resolution: {integrity: sha512-aUs47y+xyXHUKlbhqHUjBABjvycq6YSD7bpxSW7vplUmdzAlJ93yXY6ZR0c1o1x5A/QKbENCvs3+NlY8IpIVzg==}
+ cpu: [arm]
+ os: [android]
+
+ '@oxc-resolver/binding-android-arm64@11.19.1':
+ resolution: {integrity: sha512-oolbkRX+m7Pq2LNjr/kKgYeC7bRDMVTWPgxBGMjSpZi/+UskVo4jsMU3MLheZV55jL6c3rNelPl4oD60ggYmqA==}
+ cpu: [arm64]
+ os: [android]
+
+ '@oxc-resolver/binding-darwin-arm64@11.19.1':
+ resolution: {integrity: sha512-nUC6d2i3R5B12sUW4O646qD5cnMXf2oBGPLIIeaRfU9doJRORAbE2SGv4eW6rMqhD+G7nf2Y8TTJTLiiO3Q/dQ==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@oxc-resolver/binding-darwin-x64@11.19.1':
+ resolution: {integrity: sha512-cV50vE5+uAgNcFa3QY1JOeKDSkM/9ReIcc/9wn4TavhW/itkDGrXhw9jaKnkQnGbjJ198Yh5nbX/Gr2mr4Z5jQ==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@oxc-resolver/binding-freebsd-x64@11.19.1':
+ resolution: {integrity: sha512-xZOQiYGFxtk48PBKff+Zwoym7ScPAIVp4c14lfLxizO2LTTTJe5sx9vQNGrBymrf/vatSPNMD4FgsaaRigPkqw==}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@oxc-resolver/binding-linux-arm-gnueabihf@11.19.1':
+ resolution: {integrity: sha512-lXZYWAC6kaGe/ky2su94e9jN9t6M0/6c+GrSlCqL//XO1cxi5lpAhnJYdyrKfm0ZEr/c7RNyAx3P7FSBcBd5+A==}
+ cpu: [arm]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-arm-musleabihf@11.19.1':
+ resolution: {integrity: sha512-veG1kKsuK5+t2IsO9q0DErYVSw2azvCVvWHnfTOS73WE0STdLLB7Q1bB9WR+yHPQM76ASkFyRbogWo1GR1+WbQ==}
+ cpu: [arm]
+ os: [linux]
+
+ '@oxc-resolver/binding-linux-arm64-gnu@11.19.1':
+ resolution: {integrity: sha512-heV2+jmXyYnUrpUXSPugqWDRpnsQcDm2AX4wzTuvgdlZfoNYO0O3W2AVpJYaDn9AG4JdM6Kxom8+foE7/BcSig==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxc-resolver/binding-linux-arm64-musl@11.19.1':
+ resolution: {integrity: sha512-jvo2Pjs1c9KPxMuMPIeQsgu0mOJF9rEb3y3TdpsrqwxRM+AN6/nDDwv45n5ZrUnQMsdBy5gIabioMKnQfWo9ew==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ '@oxc-resolver/binding-linux-ppc64-gnu@11.19.1':
+ resolution: {integrity: sha512-vLmdNxWCdN7Uo5suays6A/+ywBby2PWBBPXctWPg5V0+eVuzsJxgAn6MMB4mPlshskYbppjpN2Zg83ArHze9gQ==}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxc-resolver/binding-linux-riscv64-gnu@11.19.1':
+ resolution: {integrity: sha512-/b+WgR+VTSBxzgOhDO7TlMXC1ufPIMR6Vj1zN+/x+MnyXGW7prTLzU9eW85Aj7Th7CCEG9ArCbTeqxCzFWdg2w==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxc-resolver/binding-linux-riscv64-musl@11.19.1':
+ resolution: {integrity: sha512-YlRdeWb9j42p29ROh+h4eg/OQ3dTJlpHSa+84pUM9+p6i3djtPz1q55yLJhgW9XfDch7FN1pQ/Vd6YP+xfRIuw==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [musl]
+
+ '@oxc-resolver/binding-linux-s390x-gnu@11.19.1':
+ resolution: {integrity: sha512-EDpafVOQWF8/MJynsjOGFThcqhRHy417sRyLfQmeiamJ8qVhSKAn2Dn2VVKUGCjVB9C46VGjhNo7nOPUi1x6uA==}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxc-resolver/binding-linux-x64-gnu@11.19.1':
+ resolution: {integrity: sha512-NxjZe+rqWhr+RT8/Ik+5ptA3oz7tUw361Wa5RWQXKnfqwSSHdHyrw6IdcTfYuml9dM856AlKWZIUXDmA9kkiBQ==}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ '@oxc-resolver/binding-linux-x64-musl@11.19.1':
+ resolution: {integrity: sha512-cM/hQwsO3ReJg5kR+SpI69DMfvNCp+A/eVR4b4YClE5bVZwz8rh2Nh05InhwI5HR/9cArbEkzMjcKgTHS6UaNw==}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ '@oxc-resolver/binding-openharmony-arm64@11.19.1':
+ resolution: {integrity: sha512-QF080IowFB0+9Rh6RcD19bdgh49BpQHUW5TajG1qvWHvmrQznTZZjYlgE2ltLXyKY+qs4F/v5xuX1XS7Is+3qA==}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@oxc-resolver/binding-wasm32-wasi@11.19.1':
+ resolution: {integrity: sha512-w8UCKhX826cP/ZLokXDS6+milN8y4X7zidsAttEdWlVoamTNf6lhBJldaWr3ukTDiye7s4HRcuPEPOXNC432Vg==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
+ '@oxc-resolver/binding-win32-arm64-msvc@11.19.1':
+ resolution: {integrity: sha512-nJ4AsUVZrVKwnU/QRdzPCCrO0TrabBqgJ8pJhXITdZGYOV28TIYystV1VFLbQ7DtAcaBHpocT5/ZJnF78YJPtQ==}
+ cpu: [arm64]
+ os: [win32]
+
+ '@oxc-resolver/binding-win32-ia32-msvc@11.19.1':
+ resolution: {integrity: sha512-EW+ND5q2Tl+a3pH81l1QbfgbF3HmqgwLfDfVithRFheac8OTcnbXt/JxqD2GbDkb7xYEqy1zNaVFRr3oeG8npA==}
+ cpu: [ia32]
+ os: [win32]
+
+ '@oxc-resolver/binding-win32-x64-msvc@11.19.1':
+ resolution: {integrity: sha512-6hIU3RQu45B+VNTY4Ru8ppFwjVS/S5qwYyGhBotmjxfEKk41I2DlGtRfGJndZ5+6lneE2pwloqunlOyZuX/XAw==}
+ cpu: [x64]
+ os: [win32]
+
+ '@parcel/watcher-android-arm64@2.5.6':
+ resolution: {integrity: sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [android]
+
+ '@parcel/watcher-darwin-arm64@2.5.6':
+ resolution: {integrity: sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@parcel/watcher-darwin-x64@2.5.6':
+ resolution: {integrity: sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [darwin]
+
+ '@parcel/watcher-freebsd-x64@2.5.6':
+ resolution: {integrity: sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@parcel/watcher-linux-arm-glibc@2.5.6':
+ resolution: {integrity: sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm]
+ os: [linux]
+ libc: [glibc]
+
+ '@parcel/watcher-linux-arm-musl@2.5.6':
+ resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm]
+ os: [linux]
+ libc: [musl]
+
+ '@parcel/watcher-linux-arm64-glibc@2.5.6':
+ resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ '@parcel/watcher-linux-arm64-musl@2.5.6':
+ resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ '@parcel/watcher-linux-x64-glibc@2.5.6':
+ resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ '@parcel/watcher-linux-x64-musl@2.5.6':
+ resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ '@parcel/watcher-win32-arm64@2.5.6':
+ resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@parcel/watcher-win32-ia32@2.5.6':
+ resolution: {integrity: sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [ia32]
+ os: [win32]
+
+ '@parcel/watcher-win32-x64@2.5.6':
+ resolution: {integrity: sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==}
+ engines: {node: '>= 10.0.0'}
+ cpu: [x64]
+ os: [win32]
+
+ '@parcel/watcher@2.5.6':
+ resolution: {integrity: sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ==}
+ engines: {node: '>= 10.0.0'}
+
+ '@pkgjs/parseargs@0.11.0':
+ resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
+ engines: {node: '>=14'}
+
+ '@playwright/test@1.59.1':
+ resolution: {integrity: sha512-PG6q63nQg5c9rIi4/Z5lR5IVF7yU5MqmKaPOe0HSc0O2cX1fPi96sUQu5j7eo4gKCkB2AnNGoWt7y4/Xx3Kcqg==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ '@radix-ui/number@1.1.1':
+ resolution: {integrity: sha512-MkKCwxlXTgz6CFoJx3pCwn07GKp36+aZyu/u2Ln2VrA5DcdyCZkASEDBTd8x5whTQQL5CiYf4prXKLcgQdv29g==}
+
+ '@radix-ui/primitive@1.1.3':
+ resolution: {integrity: sha512-JTF99U/6XIjCBo0wqkU5sK10glYe27MRRsfwoiq5zzOEZLHU3A3KCMa5X/azekYRCJ0HlwI0crAXS/5dEHTzDg==}
+
+ '@radix-ui/react-arrow@1.1.7':
+ resolution: {integrity: sha512-F+M1tLhO+mlQaOWspE8Wstg+z6PwxwRd8oQ8IXceWz92kfAmalTRf0EjrouQeo7QssEPfCn05B4Ihs1K9WQ/7w==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-collection@1.1.7':
+ resolution: {integrity: sha512-Fh9rGN0MoI4ZFUNyfFVNU4y9LUz93u9/0K+yLgA2bwRojxM8JU1DyvvMBabnZPBgMWREAJvU2jjVzq+LrFUglw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-compose-refs@1.1.2':
+ resolution: {integrity: sha512-z4eqJvfiNnFMHIIvXP3CY57y2WJs5g2v3X0zm9mEJkrkNv4rDxu+sg9Jh8EkXyeqBkB7SOcboo9dMVqhyrACIg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-context-menu@2.2.16':
+ resolution: {integrity: sha512-O8morBEW+HsVG28gYDZPTrT9UUovQUlJue5YO836tiTJhuIWBm/zQHc7j388sHWtdH/xUZurK9olD2+pcqx5ww==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-context@1.1.2':
+ resolution: {integrity: sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-context@1.1.3':
+ resolution: {integrity: sha512-ieIFACdMpYfMEjF0rEf5KLvfVyIkOz6PDGyNnP+u+4xQ6jny3VCgA4OgXOwNx2aUkxn8zx9fiVcM8CfFYv9Lxw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-dialog@1.1.15':
+ resolution: {integrity: sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-direction@1.1.1':
+ resolution: {integrity: sha512-1UEWRX6jnOA2y4H5WczZ44gOOjTEmlqv1uNW4GAJEO5+bauCBhv8snY65Iw5/VOS/ghKN9gr2KjnLKxrsvoMVw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-dismissable-layer@1.1.11':
+ resolution: {integrity: sha512-Nqcp+t5cTB8BinFkZgXiMJniQH0PsUt2k51FUhbdfeKvc4ACcG2uQniY/8+h1Yv6Kza4Q7lD7PQV0z0oicE0Mg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-dropdown-menu@2.1.16':
+ resolution: {integrity: sha512-1PLGQEynI/3OX/ftV54COn+3Sud/Mn8vALg2rWnBLnRaGtJDduNW/22XjlGgPdpcIbiQxjKtb7BkcjP00nqfJw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-focus-guards@1.1.3':
+ resolution: {integrity: sha512-0rFg/Rj2Q62NCm62jZw0QX7a3sz6QCQU0LpZdNrJX8byRGaGVTqbrW9jAoIAHyMQqsNpeZ81YgSizOt5WXq0Pw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-focus-scope@1.1.7':
+ resolution: {integrity: sha512-t2ODlkXBQyn7jkl6TNaw/MtVEVvIGelJDCG41Okq/KwUsJBwQ4XVZsHAVUkK4mBv3ewiAS3PGuUWuY2BoK4ZUw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-form@0.1.8':
+ resolution: {integrity: sha512-QM70k4Zwjttifr5a4sZFts9fn8FzHYvQ5PiB19O2HsYibaHSVt9fH9rzB0XZo/YcM+b7t/p7lYCT/F5eOeF5yQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-id@1.1.1':
+ resolution: {integrity: sha512-kGkGegYIdQsOb4XjsfM97rXsiHaBwco+hFI66oO4s9LU+PLAC5oJ7khdOVFxkhsmlbpUqDAvXw11CluXP+jkHg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-label@2.1.7':
+ resolution: {integrity: sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-menu@2.1.16':
+ resolution: {integrity: sha512-72F2T+PLlphrqLcAotYPp0uJMr5SjP5SL01wfEspJbru5Zs5vQaSHb4VB3ZMJPimgHHCHG7gMOeOB9H3Hdmtxg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-popper@1.2.8':
+ resolution: {integrity: sha512-0NJQ4LFFUuWkE7Oxf0htBKS6zLkkjBH+hM1uk7Ng705ReR8m/uelduy1DBo0PyBXPKVnBA6YBlU94MBGXrSBCw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-portal@1.1.9':
+ resolution: {integrity: sha512-bpIxvq03if6UNwXZ+HTK71JLh4APvnXntDc6XOX8UVq4XQOVl7lwok0AvIl+b8zgCw3fSaVTZMpAPPagXbKmHQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-presence@1.1.5':
+ resolution: {integrity: sha512-/jfEwNDdQVBCNvjkGit4h6pMOzq8bHkopq458dPt2lMjx+eBQUohZNG9A7DtO/O5ukSbxuaNGXMjHicgwy6rQQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-primitive@2.1.3':
+ resolution: {integrity: sha512-m9gTwRkhy2lvCPe6QJp4d3G1TYEUHn/FzJUtq9MjH46an1wJU+GdoGC5VLof8RX8Ft/DlpshApkhswDLZzHIcQ==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-primitive@2.1.4':
+ resolution: {integrity: sha512-9hQc4+GNVtJAIEPEqlYqW5RiYdrr8ea5XQ0ZOnD6fgru+83kqT15mq2OCcbe8KnjRZl5vF3ks69AKz3kh1jrhg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-progress@1.1.8':
+ resolution: {integrity: sha512-+gISHcSPUJ7ktBy9RnTqbdKW78bcGke3t6taawyZ71pio1JewwGSJizycs7rLhGTvMJYCQB1DBK4KQsxs7U8dA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-roving-focus@1.1.11':
+ resolution: {integrity: sha512-7A6S9jSgm/S+7MdtNDSb+IU859vQqJ/QAtcYQcfFC6W8RS4IxIZDldLR0xqCFZ6DCyrQLjLPsxtTNch5jVA4lA==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-separator@1.1.8':
+ resolution: {integrity: sha512-sDvqVY4itsKwwSMEe0jtKgfTh+72Sy3gPmQpjqcQneqQ4PFmr/1I0YA+2/puilhggCe2gJcx5EBAYFkWkdpa5g==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-slider@1.3.6':
+ resolution: {integrity: sha512-JPYb1GuM1bxfjMRlNLE+BcmBC8onfCi60Blk7OBqi2MLTFdS+8401U4uFjnwkOr49BLmXxLC6JHkvAsx5OJvHw==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/react-slot@1.2.3':
+ resolution: {integrity: sha512-aeNmHnBxbi2St0au6VBVC7JXFlhLlOnvIIlePNniyUNAClzmtAUEY8/pBiK3iHjufOlwA+c20/8jngo7xcrg8A==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-slot@1.2.4':
+ resolution: {integrity: sha512-Jl+bCv8HxKnlTLVrcDE8zTMJ09R9/ukw4qBs/oZClOfoQk/cOTbDn+NceXfV7j09YPVQUryJPHurafcSg6EVKA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-callback-ref@1.1.1':
+ resolution: {integrity: sha512-FkBMwD+qbGQeMu1cOHnuGB6x4yzPjho8ap5WtbEJ26umhgqVXbhekKUQO+hZEL1vU92a3wHwdp0HAcqAUF5iDg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-controllable-state@1.2.2':
+ resolution: {integrity: sha512-BjasUjixPFdS+NKkypcyyN5Pmg83Olst0+c6vGov0diwTEo6mgdqVR6hxcEgFuh4QrAs7Rc+9KuGJ9TVCj0Zzg==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-effect-event@0.0.2':
+ resolution: {integrity: sha512-Qp8WbZOBe+blgpuUT+lw2xheLP8q0oatc9UpmiemEICxGvFLYmHm9QowVZGHtJlGbS6A6yJ3iViad/2cVjnOiA==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-escape-keydown@1.1.1':
+ resolution: {integrity: sha512-Il0+boE7w/XebUHyBjroE+DbByORGR9KKmITzbR7MyQ4akpORYP/ZmbhAr0DG7RmmBqoOnZdy2QlvajJ2QA59g==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-layout-effect@1.1.1':
+ resolution: {integrity: sha512-RbJRS4UWQFkzHTTwVymMTUv8EqYhOp8dOOviLj2ugtTiXRaRQS7GLGxZTLL1jWhMeoSCf5zmcZkqTl9IiYfXcQ==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-previous@1.1.1':
+ resolution: {integrity: sha512-2dHfToCj/pzca2Ck724OZ5L0EVrr3eHRNsG/b3xQJLA2hZpVCS99bLAX+hm1IHXDEnzU6by5z/5MIY794/a8NQ==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-rect@1.1.1':
+ resolution: {integrity: sha512-QTYuDesS0VtuHNNvMh+CjlKJ4LJickCMUAqjlE3+j8w+RlRpwyX3apEQKGFzbZGdo7XNG1tXa+bQqIE7HIXT2w==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-use-size@1.1.1':
+ resolution: {integrity: sha512-ewrXRDTAqAXlkl6t/fkXWNAhFX9I+CkKlw6zjEwk86RSPKwZr3xpBRso655aqYafwtnbpHLj6toFzmd6xdVptQ==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@radix-ui/react-visually-hidden@1.2.4':
+ resolution: {integrity: sha512-kaeiyGCe844dkb9AVF+rb4yTyb1LiLN/e3es3nLiRyN4dC8AduBYPMnnNlDjX2VDOcvDEiPnRNMJeWCfsX0txg==}
+ peerDependencies:
+ '@types/react': '*'
+ '@types/react-dom': '*'
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@radix-ui/rect@1.1.1':
+ resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==}
+
+ '@react-spring/animated@10.0.3':
+ resolution: {integrity: sha512-7MrxADV3vaUADn2V9iYhaIL6iOWRx9nCJjYrsk2AHD2kwPr6fg7Pt0v+deX5RnCDmCKNnD6W5fasiyM8D+wzJQ==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
+ '@react-spring/core@10.0.3':
+ resolution: {integrity: sha512-D4DwNO68oohDf/0HG2G0Uragzb9IA1oXblxrd6MZAcBcUQG2EHUWXewjdECMPLNmQvlYVyyBRH6gPxXM5DX7DQ==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
+ '@react-spring/rafz@10.0.3':
+ resolution: {integrity: sha512-Ri2/xqt8OnQ2iFKkxKMSF4Nqv0LSWnxXT4jXFzBDsHgeeH/cHxTLupAWUwmV9hAGgmEhBmh5aONtj3J6R/18wg==}
+
+ '@react-spring/shared@10.0.3':
+ resolution: {integrity: sha512-geCal66nrkaQzUVhPkGomylo+Jpd5VPK8tPMEDevQEfNSWAQP15swHm+MCRG4wVQrQlTi9lOzKzpRoTL3CA84Q==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
+ '@react-spring/types@10.0.3':
+ resolution: {integrity: sha512-H5Ixkd2OuSIgHtxuHLTt7aJYfhMXKXT/rK32HPD/kSrOB6q6ooeiWAXkBy7L8F3ZxdkBb9ini9zP9UwnEFzWgQ==}
+
+ '@react-spring/web@10.0.3':
+ resolution: {integrity: sha512-ndU+kWY81rHsT7gTFtCJ6mrVhaJ6grFmgTnENipzmKqot4HGf5smPNK+cZZJqoGeDsj9ZsiWPW4geT/NyD484A==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
+ '@rolldown/binding-android-arm64@1.0.0-rc.15':
+ resolution: {integrity: sha512-YYe6aWruPZDtHNpwu7+qAHEMbQ/yRl6atqb/AhznLTnD3UY99Q1jE7ihLSahNWkF4EqRPVC4SiR4O0UkLK02tA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [android]
+
+ '@rolldown/binding-darwin-arm64@1.0.0-rc.15':
+ resolution: {integrity: sha512-oArR/ig8wNTPYsXL+Mzhs0oxhxfuHRfG7Ikw7jXsw8mYOtk71W0OkF2VEVh699pdmzjPQsTjlD1JIOoHkLP1Fg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rolldown/binding-darwin-x64@1.0.0-rc.15':
+ resolution: {integrity: sha512-YzeVqOqjPYvUbJSWJ4EDL8ahbmsIXQpgL3JVipmN+MX0XnXMeWomLN3Fb+nwCmP/jfyqte5I3XRSm7OfQrbyxw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rolldown/binding-freebsd-x64@1.0.0-rc.15':
+ resolution: {integrity: sha512-9Erhx956jeQ0nNTyif1+QWAXDRD38ZNjr//bSHrt6wDwB+QkAfl2q6Mn1k6OBPerznjRmbM10lgRb1Pli4xZPw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.15':
+ resolution: {integrity: sha512-cVwk0w8QbZJGTnP/AHQBs5yNwmpgGYStL88t4UIaqcvYJWBfS0s3oqVLZPwsPU6M0zlW4GqjP0Zq5MnAGwFeGA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm]
+ os: [linux]
+
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-eBZ/u8iAK9SoHGanqe/jrPnY0JvBN6iXbVOsbO38mbz+ZJsaobExAm1Iu+rxa4S1l2FjG0qEZn4Rc6X8n+9M+w==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-arm64-musl@1.0.0-rc.15':
+ resolution: {integrity: sha512-ZvRYMGrAklV9PEkgt4LQM6MjQX2P58HPAuecwYObY2DhS2t35R0I810bKi0wmaYORt6m/2Sm+Z+nFgb0WhXNcQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-VDpgGBzgfg5hLg+uBpCLoFG5kVvEyafmfxGUV0UHLcL5irxAK7PKNeC2MwClgk6ZAiNhmo9FLhRYgvMmedLtnQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-y1uXY3qQWCzcPgRJATPSOUP4tCemh4uBdY7e3EZbVwCJTY3gLJWnQABgeUetvED+bt1FQ01OeZwvhLS2bpNrAQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-x64-gnu@1.0.0-rc.15':
+ resolution: {integrity: sha512-023bTPBod7J3Y/4fzAN6QtpkSABR0rigtrwaP+qSEabUh5zf6ELr9Nc7GujaROuPY3uwdSIXWrvhn1KxOvurWA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rolldown/binding-linux-x64-musl@1.0.0-rc.15':
+ resolution: {integrity: sha512-witB2O0/hU4CgfOOKUoeFgQ4GktPi1eEbAhaLAIpgD6+ZnhcPkUtPsoKKHRzmOoWPZue46IThdSgdo4XneOLYw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ '@rolldown/binding-openharmony-arm64@1.0.0-rc.15':
+ resolution: {integrity: sha512-UCL68NJ0Ud5zRipXZE9dF5PmirzJE4E4BCIOOssEnM7wLDsxjc6Qb0sGDxTNRTP53I6MZpygyCpY8Aa8sPfKPg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@rolldown/binding-wasm32-wasi@1.0.0-rc.15':
+ resolution: {integrity: sha512-ApLruZq/ig+nhaE7OJm4lDjayUnOHVUa77zGeqnqZ9pn0ovdVbbNPerVibLXDmWeUZXjIYIT8V3xkT58Rm9u5Q==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.15':
+ resolution: {integrity: sha512-KmoUoU7HnN+Si5YWJigfTws1jz1bKBYDQKdbLspz0UaqjjFkddHsqorgiW1mxcAj88lYUE6NC/zJNwT+SloqtA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [win32]
+
+ '@rolldown/binding-win32-x64-msvc@1.0.0-rc.15':
+ resolution: {integrity: sha512-3P2A8L+x75qavWLe/Dll3EYBJLQmtkJN8rfh+U/eR3MqMgL/h98PhYI+JFfXuDPgPeCB7iZAKiqii5vqOvnA0g==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [win32]
+
+ '@rolldown/pluginutils@1.0.0-beta.27':
+ resolution: {integrity: sha512-+d0F4MKMCbeVUJwG96uQ4SgAznZNSq93I3V+9NHA4OpvqG8mRCpGdKmK8l/dl02h2CCDHwW2FqilnTyDcAnqjA==}
+
+ '@rolldown/pluginutils@1.0.0-rc.15':
+ resolution: {integrity: sha512-UromN0peaE53IaBRe9W7CjrZgXl90fqGpK+mIZbA3qSTeYqg3pqpROBdIPvOG3F5ereDHNwoHBI2e50n1BDr1g==}
+
+ '@rollup/plugin-inject@5.0.5':
+ resolution: {integrity: sha512-2+DEJbNBoPROPkgTDNe8/1YXWcqxbN5DTjASVIOx8HS+pITXushyNiBV56RB08zuptzz8gT3YfkqriTBVycepg==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+
+ '@rollup/pluginutils@4.2.1':
+ resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==}
+ engines: {node: '>= 8.0.0'}
+
+ '@rollup/pluginutils@5.3.0':
+ resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+
+ '@rollup/rollup-android-arm-eabi@4.60.1':
+ resolution: {integrity: sha512-d6FinEBLdIiK+1uACUttJKfgZREXrF0Qc2SmLII7W2AD8FfiZ9Wjd+rD/iRuf5s5dWrr1GgwXCvPqOuDquOowA==}
+ cpu: [arm]
+ os: [android]
+
+ '@rollup/rollup-android-arm64@4.60.1':
+ resolution: {integrity: sha512-YjG/EwIDvvYI1YvYbHvDz/BYHtkY4ygUIXHnTdLhG+hKIQFBiosfWiACWortsKPKU/+dUwQQCKQM3qrDe8c9BA==}
+ cpu: [arm64]
+ os: [android]
+
+ '@rollup/rollup-darwin-arm64@4.60.1':
+ resolution: {integrity: sha512-mjCpF7GmkRtSJwon+Rq1N8+pI+8l7w5g9Z3vWj4T7abguC4Czwi3Yu/pFaLvA3TTeMVjnu3ctigusqWUfjZzvw==}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rollup/rollup-darwin-x64@4.60.1':
+ resolution: {integrity: sha512-haZ7hJ1JT4e9hqkoT9R/19XW2QKqjfJVv+i5AGg57S+nLk9lQnJ1F/eZloRO3o9Scy9CM3wQ9l+dkXtcBgN5Ew==}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rollup/rollup-freebsd-arm64@4.60.1':
+ resolution: {integrity: sha512-czw90wpQq3ZsAVBlinZjAYTKduOjTywlG7fEeWKUA7oCmpA8xdTkxZZlwNJKWqILlq0wehoZcJYfBvOyhPTQ6w==}
+ cpu: [arm64]
+ os: [freebsd]
+
+ '@rollup/rollup-freebsd-x64@4.60.1':
+ resolution: {integrity: sha512-KVB2rqsxTHuBtfOeySEyzEOB7ltlB/ux38iu2rBQzkjbwRVlkhAGIEDiiYnO2kFOkJp+Z7pUXKyrRRFuFUKt+g==}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@rollup/rollup-linux-arm-gnueabihf@4.60.1':
+ resolution: {integrity: sha512-L+34Qqil+v5uC0zEubW7uByo78WOCIrBvci69E7sFASRl0X7b/MB6Cqd1lky/CtcSVTydWa2WZwFuWexjS5o6g==}
+ cpu: [arm]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-arm-musleabihf@4.60.1':
+ resolution: {integrity: sha512-n83O8rt4v34hgFzlkb1ycniJh7IR5RCIqt6mz1VRJD6pmhRi0CXdmfnLu9dIUS6buzh60IvACM842Ffb3xd6Gg==}
+ cpu: [arm]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-linux-arm64-gnu@4.60.1':
+ resolution: {integrity: sha512-Nql7sTeAzhTAja3QXeAI48+/+GjBJ+QmAH13snn0AJSNL50JsDqotyudHyMbO2RbJkskbMbFJfIJKWA6R1LCJQ==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-arm64-musl@4.60.1':
+ resolution: {integrity: sha512-+pUymDhd0ys9GcKZPPWlFiZ67sTWV5UU6zOJat02M1+PiuSGDziyRuI/pPue3hoUwm2uGfxdL+trT6Z9rxnlMA==}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-linux-loong64-gnu@4.60.1':
+ resolution: {integrity: sha512-VSvgvQeIcsEvY4bKDHEDWcpW4Yw7BtlKG1GUT4FzBUlEKQK0rWHYBqQt6Fm2taXS+1bXvJT6kICu5ZwqKCnvlQ==}
+ cpu: [loong64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-loong64-musl@4.60.1':
+ resolution: {integrity: sha512-4LqhUomJqwe641gsPp6xLfhqWMbQV04KtPp7/dIp0nzPxAkNY1AbwL5W0MQpcalLYk07vaW9Kp1PBhdpZYYcEw==}
+ cpu: [loong64]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-linux-ppc64-gnu@4.60.1':
+ resolution: {integrity: sha512-tLQQ9aPvkBxOc/EUT6j3pyeMD6Hb8QF2BTBnCQWP/uu1lhc9AIrIjKnLYMEroIz/JvtGYgI9dF3AxHZNaEH0rw==}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-ppc64-musl@4.60.1':
+ resolution: {integrity: sha512-RMxFhJwc9fSXP6PqmAz4cbv3kAyvD1etJFjTx4ONqFP9DkTkXsAMU4v3Vyc5BgzC+anz7nS/9tp4obsKfqkDHg==}
+ cpu: [ppc64]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-linux-riscv64-gnu@4.60.1':
+ resolution: {integrity: sha512-QKgFl+Yc1eEk6MmOBfRHYF6lTxiiiV3/z/BRrbSiW2I7AFTXoBFvdMEyglohPj//2mZS4hDOqeB0H1ACh3sBbg==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-riscv64-musl@4.60.1':
+ resolution: {integrity: sha512-RAjXjP/8c6ZtzatZcA1RaQr6O1TRhzC+adn8YZDnChliZHviqIjmvFwHcxi4JKPSDAt6Uhf/7vqcBzQJy0PDJg==}
+ cpu: [riscv64]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-linux-s390x-gnu@4.60.1':
+ resolution: {integrity: sha512-wcuocpaOlaL1COBYiA89O6yfjlp3RwKDeTIA0hM7OpmhR1Bjo9j31G1uQVpDlTvwxGn2nQs65fBFL5UFd76FcQ==}
+ cpu: [s390x]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-x64-gnu@4.60.1':
+ resolution: {integrity: sha512-77PpsFQUCOiZR9+LQEFg9GClyfkNXj1MP6wRnzYs0EeWbPcHs02AXu4xuUbM1zhwn3wqaizle3AEYg5aeoohhg==}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ '@rollup/rollup-linux-x64-musl@4.60.1':
+ resolution: {integrity: sha512-5cIATbk5vynAjqqmyBjlciMJl1+R/CwX9oLk/EyiFXDWd95KpHdrOJT//rnUl4cUcskrd0jCCw3wpZnhIHdD9w==}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ '@rollup/rollup-openbsd-x64@4.60.1':
+ resolution: {integrity: sha512-cl0w09WsCi17mcmWqqglez9Gk8isgeWvoUZ3WiJFYSR3zjBQc2J5/ihSjpl+VLjPqjQ/1hJRcqBfLjssREQILw==}
+ cpu: [x64]
+ os: [openbsd]
+
+ '@rollup/rollup-openharmony-arm64@4.60.1':
+ resolution: {integrity: sha512-4Cv23ZrONRbNtbZa37mLSueXUCtN7MXccChtKpUnQNgF010rjrjfHx3QxkS2PI7LqGT5xXyYs1a7LbzAwT0iCA==}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@rollup/rollup-win32-arm64-msvc@4.60.1':
+ resolution: {integrity: sha512-i1okWYkA4FJICtr7KpYzFpRTHgy5jdDbZiWfvny21iIKky5YExiDXP+zbXzm3dUcFpkEeYNHgQ5fuG236JPq0g==}
+ cpu: [arm64]
+ os: [win32]
+
+ '@rollup/rollup-win32-ia32-msvc@4.60.1':
+ resolution: {integrity: sha512-u09m3CuwLzShA0EYKMNiFgcjjzwqtUMLmuCJLeZWjjOYA3IT2Di09KaxGBTP9xVztWyIWjVdsB2E9goMjZvTQg==}
+ cpu: [ia32]
+ os: [win32]
+
+ '@rollup/rollup-win32-x64-gnu@4.60.1':
+ resolution: {integrity: sha512-k+600V9Zl1CM7eZxJgMyTUzmrmhB/0XZnF4pRypKAlAgxmedUA+1v9R+XOFv56W4SlHEzfeMtzujLJD22Uz5zg==}
+ cpu: [x64]
+ os: [win32]
+
+ '@rollup/rollup-win32-x64-msvc@4.60.1':
+ resolution: {integrity: sha512-lWMnixq/QzxyhTV6NjQJ4SFo1J6PvOX8vUx5Wb4bBPsEb+8xZ89Bz6kOXpfXj9ak9AHTQVQzlgzBEc1SyM27xQ==}
+ cpu: [x64]
+ os: [win32]
+
+ '@rtsao/scc@1.1.0':
+ resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==}
+
+ '@sentry-internal/browser-utils@8.55.1':
+ resolution: {integrity: sha512-SipXiwVhJrxzy3/4kf+YIFmpYlLKtGSRD+er7SBCcuSBtv31Fee8IXMDvk+bq24gRXxyjOLUmT//GGXjy2LL6w==}
+ engines: {node: '>=14.18'}
+
+ '@sentry-internal/feedback@8.55.1':
+ resolution: {integrity: sha512-9iFHaT/ijtzB0ffZhXMnt2rPNIXO/dDiCL1G1Bc55rQMPXgawR9AIaAWciyqQjYcbL1DDOhWbzdVqB+kVs5gXw==}
+ engines: {node: '>=14.18'}
+
+ '@sentry-internal/replay-canvas@8.55.1':
+ resolution: {integrity: sha512-2sKRu96Qe70y6TiYdYbwkhg4um2prgzH/ZJRItuoSEAjPjoFYYlP+1qjE2CcBw4RPS8/PimV7SFheSaeZs2GCw==}
+ engines: {node: '>=14.18'}
+
+ '@sentry-internal/replay@8.55.1':
+ resolution: {integrity: sha512-XaX6r8pXeX47rfiQrSQUwkgxHsDkOKzIT++zfTwrmveVlYSqAhp3x+AKhxAXGmKG62wlmAKQz54GJKcG4cgyKQ==}
+ engines: {node: '>=14.18'}
+
+ '@sentry/babel-plugin-component-annotate@3.6.1':
+ resolution: {integrity: sha512-zmvUa4RpzDG3LQJFpGCE8lniz8Rk1Wa6ZvvK+yEH+snZeaHHRbSnAQBMR607GOClP+euGHNO2YtaY4UAdNTYbg==}
+ engines: {node: '>= 14'}
+
+ '@sentry/browser@8.55.1':
+ resolution: {integrity: sha512-OEn2eg8h3Mr7BmBGQ28BqbWehYA/NklZ0pAZB1FypPPl+kMd85AbaRdGTnaSjgmpc8bKbBO64edq4Y14sbCs5w==}
+ engines: {node: '>=14.18'}
+
+ '@sentry/bundler-plugin-core@3.6.1':
+ resolution: {integrity: sha512-/ubWjPwgLep84sUPzHfKL2Ns9mK9aQrEX4aBFztru7ygiJidKJTxYGtvjh4dL2M1aZ0WRQYp+7PF6+VKwdZXcQ==}
+ engines: {node: '>= 14'}
+
+ '@sentry/cli-darwin@2.58.5':
+ resolution: {integrity: sha512-lYrNzenZFJftfwSya7gwrHGxtE+Kob/e1sr9lmHMFOd4utDlmq0XFDllmdZAMf21fxcPRI1GL28ejZ3bId01fQ==}
+ engines: {node: '>=10'}
+ os: [darwin]
+
+ '@sentry/cli-linux-arm64@2.58.5':
+ resolution: {integrity: sha512-/4gywFeBqRB6tR/iGMRAJ3HRqY6Z7Yp4l8ZCbl0TDLAfHNxu7schEw4tSnm2/Hh9eNMiOVy4z58uzAWlZXAYBQ==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-linux-arm@2.58.5':
+ resolution: {integrity: sha512-KtHweSIomYL4WVDrBrYSYJricKAAzxUgX86kc6OnlikbyOhoK6Fy8Vs6vwd52P6dvWPjgrMpUYjW2M5pYXQDUw==}
+ engines: {node: '>=10'}
+ cpu: [arm]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-linux-i686@2.58.5':
+ resolution: {integrity: sha512-G7261dkmyxqlMdyvyP06b+RTIVzp1gZNgglj5UksxSouSUqRd/46W/2pQeOMPhloDYo9yLtCN2YFb3Mw4aUsWw==}
+ engines: {node: '>=10'}
+ cpu: [x86, ia32]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-linux-x64@2.58.5':
+ resolution: {integrity: sha512-rP04494RSmt86xChkQ+ecBNRYSPbyXc4u0IA7R7N1pSLCyO74e5w5Al+LnAq35cMfVbZgz5Sm0iGLjyiUu4I1g==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-win32-arm64@2.58.5':
+ resolution: {integrity: sha512-AOJ2nCXlQL1KBaCzv38m3i2VmSHNurUpm7xVKd6yAHX+ZoVBI8VT0EgvwmtJR2TY2N2hNCC7UrgRmdUsQ152bA==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@sentry/cli-win32-i686@2.58.5':
+ resolution: {integrity: sha512-EsuboLSOnlrN7MMPJ1eFvfMDm+BnzOaSWl8eYhNo8W/BIrmNgpRUdBwnWn9Q2UOjJj5ZopukmsiMYtU/D7ml9g==}
+ engines: {node: '>=10'}
+ cpu: [x86, ia32]
+ os: [win32]
+
+ '@sentry/cli-win32-x64@2.58.5':
+ resolution: {integrity: sha512-IZf+XIMiQwj+5NzqbOQfywlOitmCV424Vtf9c+ep61AaVScUFD1TSrQbOcJJv5xGxhlxNOMNgMeZhdexdzrKZg==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [win32]
+
+ '@sentry/cli@2.58.5':
+ resolution: {integrity: sha512-tavJ7yGUZV+z3Ct2/ZB6mg339i08sAk6HDkgqmSRuQEu2iLS5sl9HIvuXfM6xjv8fwlgFOSy++WNABNAcGHUbg==}
+ engines: {node: '>= 10'}
+ hasBin: true
+
+ '@sentry/core@8.55.1':
+ resolution: {integrity: sha512-0ea+yDOgaijR3ba2al1QZxY0bZ9MBZq2a0G+2A0uCBpBkiXnpLFGVAo9UAlEikN1C4M8ROZYiuFU7yZCqacgLQ==}
+ engines: {node: '>=14.18'}
+
+ '@sentry/react@8.55.1':
+ resolution: {integrity: sha512-vrqEI1EVRMaeUluHSt84//WFuMecqAfwS+t2SojhvXtsSP6BbaCHd0jt7til5MBzI9kWAQjIxsUUr3pbFAviVg==}
+ engines: {node: '>=14.18'}
+ peerDependencies:
+ react: ^16.14.0 || 17.x || 18.x || 19.x
+
+ '@sentry/vite-plugin@3.6.1':
+ resolution: {integrity: sha512-x8WMdv2K2HcGS2ezEUIEZXpT/fNeWQ9rsEeF0K9DfKXK8Z9lzRmCr6TVA6I9+yW39Is+1/0cv1Rsu0LhO7lHzg==}
+ engines: {node: '>= 14'}
+
+ '@sindresorhus/base62@1.0.0':
+ resolution: {integrity: sha512-TeheYy0ILzBEI/CO55CP6zJCSdSWeRtGnHy8U8dWSUH4I68iqTsy7HkMktR4xakThc9jotkPQUXT4ITdbV7cHA==}
+ engines: {node: '>=18'}
+
+ '@standard-schema/spec@1.1.0':
+ resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==}
+
+ '@storybook/addon-docs@10.3.5':
+ resolution: {integrity: sha512-WuHbxia/o5TX4Rg/IFD0641K5qId/Nk0dxhmAUNoFs5L0+yfZUwh65XOBbzXqrkYmYmcVID4v7cgDRmzstQNkA==}
+ peerDependencies:
+ storybook: ^10.3.5
+
+ '@storybook/builder-vite@10.3.5':
+ resolution: {integrity: sha512-i4KwCOKbhtlbQIbhm53+Kk7bMnxa0cwTn1pxmtA/x5wm1Qu7FrrBQV0V0DNjkUqzcSKo1CjspASJV/HlY0zYlw==}
+ peerDependencies:
+ storybook: ^10.3.5
+ vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ '@storybook/csf-plugin@10.3.5':
+ resolution: {integrity: sha512-qlEzNKxOjq86pvrbuMwiGD/bylnsXk1dg7ve0j77YFjEEchqtl7qTlrXvFdNaLA89GhW6D/EV6eOCu/eobPDgw==}
+ peerDependencies:
+ esbuild: ^0.27.7
+ rollup: '*'
+ storybook: ^10.3.5
+ vite: '*'
+ webpack: '*'
+ peerDependenciesMeta:
+ esbuild:
+ optional: true
+ rollup:
+ optional: true
+ vite:
+ optional: true
+ webpack:
+ optional: true
+
+ '@storybook/global@5.0.0':
+ resolution: {integrity: sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==}
+
+ '@storybook/icons@2.0.1':
+ resolution: {integrity: sha512-/smVjw88yK3CKsiuR71vNgWQ9+NuY2L+e8X7IMrFjexjm6ZR8ULrV2DRkTA61aV6ryefslzHEGDInGpnNeIocg==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
+ '@storybook/react-dom-shim@10.3.5':
+ resolution: {integrity: sha512-Gw8R7XZm0zSUH0XAuxlQJhmizsLzyD6x00KOlP6l7oW9eQHXGfxg3seNDG3WrSAcW07iP1/P422kuiriQlOv7g==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ storybook: ^10.3.5
+
+ '@storybook/react-vite@10.3.5':
+ resolution: {integrity: sha512-UB5sJHeh26bfd8sNMx2YPGYRYmErIdTRaLOT28m4bykQIa1l9IgVktsYg/geW7KsJU0lXd3oTbnUjLD+enpi3w==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ storybook: ^10.3.5
+ vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ '@storybook/react@10.3.5':
+ resolution: {integrity: sha512-tpLTLaVGoA6fLK3ReyGzZUricq7lyPaV2hLPpj5wqdXLV/LpRtAHClUpNoPDYSBjlnSjL81hMZijbkGC3mA+gw==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ storybook: ^10.3.5
+ typescript: '>= 4.9.x'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@stylistic/eslint-plugin@3.1.0':
+ resolution: {integrity: sha512-pA6VOrOqk0+S8toJYhQGv2MWpQQR0QpeUo9AhNkC49Y26nxBQ/nH1rta9bUU1rPw2fJ1zZEMV5oCX5AazT7J2g==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: '>=8.40.0'
+
+ '@svgr/babel-plugin-add-jsx-attribute@8.0.0':
+ resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-plugin-remove-jsx-attribute@8.0.0':
+ resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0':
+ resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0':
+ resolution: {integrity: sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-plugin-svg-dynamic-title@8.0.0':
+ resolution: {integrity: sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-plugin-svg-em-dimensions@8.0.0':
+ resolution: {integrity: sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-plugin-transform-react-native-svg@8.1.0':
+ resolution: {integrity: sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-plugin-transform-svg-component@8.0.0':
+ resolution: {integrity: sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==}
+ engines: {node: '>=12'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/babel-preset@8.1.0':
+ resolution: {integrity: sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@babel/core': ^7.0.0-0
+
+ '@svgr/core@8.1.0':
+ resolution: {integrity: sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==}
+ engines: {node: '>=14'}
+
+ '@svgr/hast-util-to-babel-ast@8.0.0':
+ resolution: {integrity: sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==}
+ engines: {node: '>=14'}
+
+ '@svgr/plugin-jsx@8.1.0':
+ resolution: {integrity: sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ '@svgr/core': '*'
+
+ '@testing-library/dom@10.4.1':
+ resolution: {integrity: sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==}
+ engines: {node: '>=18'}
+
+ '@testing-library/jest-dom@6.9.1':
+ resolution: {integrity: sha512-zIcONa+hVtVSSep9UT3jZ5rizo2BsxgyDYU7WFD5eICBE7no3881HGeb/QkGfsJs6JTkY1aQhT7rIPC7e+0nnA==}
+ engines: {node: '>=14', npm: '>=6', yarn: '>=1'}
+
+ '@testing-library/react@16.3.2':
+ resolution: {integrity: sha512-XU5/SytQM+ykqMnAnvB2umaJNIOsLF3PVv//1Ew4CTcpz0/BRyy/af40qqrt7SjKpDdT1saBMc42CUok5gaw+g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@testing-library/dom': ^10.0.0
+ '@types/react': ^18.0.0 || ^19.0.0
+ '@types/react-dom': ^18.0.0 || ^19.0.0
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ '@types/react-dom':
+ optional: true
+
+ '@testing-library/user-event@14.6.1':
+ resolution: {integrity: sha512-vq7fv0rnt+QTXgPxr5Hjc210p6YKq2kmdziLgnsZGgLJ9e6VAShx1pACLuRjd/AS/sr7phAR58OIIpf0LlmQNw==}
+ engines: {node: '>=12', npm: '>=6'}
+ peerDependencies:
+ '@testing-library/dom': '>=7.21.4'
+
+ '@tybys/wasm-util@0.10.1':
+ resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==}
+
+ '@types/aria-query@5.0.4':
+ resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==}
+
+ '@types/babel__core@7.20.5':
+ resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
+
+ '@types/babel__generator@7.27.0':
+ resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==}
+
+ '@types/babel__template@7.4.4':
+ resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
+
+ '@types/babel__traverse@7.28.0':
+ resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==}
+
+ '@types/chai@5.2.3':
+ resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==}
+
+ '@types/content-type@1.1.9':
+ resolution: {integrity: sha512-Hq9IMnfekuOCsEmYl4QX2HBrT+XsfXiupfrLLY8Dcf3Puf4BkBOxSbWYTITSOQAhJoYPBez+b4MJRpIYL65z8A==}
+
+ '@types/deep-eql@4.0.2':
+ resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==}
+
+ '@types/doctrine@0.0.9':
+ resolution: {integrity: sha512-eOIHzCUSH7SMfonMG1LsC2f8vxBFtho6NGBznK41R84YzPuvSBzrhEps33IsQiOW9+VL6NQ9DbjQJznk/S4uRA==}
+
+ '@types/dom-mediacapture-record@1.0.22':
+ resolution: {integrity: sha512-mUMZLK3NvwRLcAAT9qmcK+9p7tpU2FHdDsntR3YI4+GY88XrgG4XiE7u1Q2LAN2/FZOz/tdMDC3GQCR4T8nFuw==}
+
+ '@types/dom-mediacapture-transform@0.1.11':
+ resolution: {integrity: sha512-Y2p+nGf1bF2XMttBnsVPHUWzRRZzqUoJAKmiP10b5umnO6DDrWI0BrGDJy1pOHoOULVmGSfFNkQrAlC5dcj6nQ==}
+
+ '@types/dom-webcodecs@0.1.18':
+ resolution: {integrity: sha512-vAvE8C9DGWR+tkb19xyjk1TSUlJ7RUzzp4a9Anu7mwBT+fpyePWK1UxmH14tMO5zHmrnrRIMg5NutnnDztLxgg==}
+
+ '@types/estree@1.0.8':
+ resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
+
+ '@types/events@3.0.3':
+ resolution: {integrity: sha512-trOc4AAUThEz9hapPtSd7wf5tiQKvTtu5b371UxXdTuqzIh0ArcRspRP0i0Viu+LXstIQ1z96t1nsPxT9ol01g==}
+
+ '@types/glob-to-regexp@0.4.4':
+ resolution: {integrity: sha512-nDKoaKJYbnn1MZxUY0cA1bPmmgZbg0cTq7Rh13d0KWYNOiKbqoR+2d89SnRPszGh7ROzSwZ/GOjZ4jPbmmZ6Eg==}
+
+ '@types/grecaptcha@3.0.9':
+ resolution: {integrity: sha512-fFxMtjAvXXMYTzDFK5NpcVB7WHnrHVLl00QzEGpuFxSAC789io6M+vjcn+g5FTEamIJtJr/IHkCDsqvJxeWDyw==}
+
+ '@types/jsdom@21.1.7':
+ resolution: {integrity: sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==}
+
+ '@types/json-schema@7.0.15':
+ resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==}
+
+ '@types/json5@0.0.29':
+ resolution: {integrity: sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==}
+
+ '@types/lodash-es@4.17.12':
+ resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
+
+ '@types/lodash@4.17.24':
+ resolution: {integrity: sha512-gIW7lQLZbue7lRSWEFql49QJJWThrTFFeIMJdp3eH4tKoxm1OvEPg02rm4wCCSHS0cL3/Fizimb35b7k8atwsQ==}
+
+ '@types/mdx@2.0.13':
+ resolution: {integrity: sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==}
+
+ '@types/minimatch@3.0.5':
+ resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==}
+
+ '@types/node@24.12.2':
+ resolution: {integrity: sha512-A1sre26ke7HDIuY/M23nd9gfB+nrmhtYyMINbjI1zHJxYteKR6qSMX56FsmjMcDb3SMcjJg5BiRRgOCC/yBD0g==}
+
+ '@types/normalize-package-data@2.4.4':
+ resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
+
+ '@types/pako@2.0.4':
+ resolution: {integrity: sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw==}
+
+ '@types/qrcode@1.5.6':
+ resolution: {integrity: sha512-te7NQcV2BOvdj2b1hCAHzAoMNuj65kNBMz0KBaxM6c3VGBOhU0dURQKOtH8CFNI/dsKkwlv32p26qYQTWoB5bw==}
+
+ '@types/react-dom@19.2.3':
+ resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==}
+ peerDependencies:
+ '@types/react': ^19.2.0
+
+ '@types/react@19.2.14':
+ resolution: {integrity: sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==}
+
+ '@types/resolve@1.20.6':
+ resolution: {integrity: sha512-A4STmOXPhMUtHH+S6ymgE2GiBSMqf4oTvcQZMcHzokuTLVYzXTB8ttjcgxOVaAp2lGwEdzZ0J+cRbbeevQj1UQ==}
+
+ '@types/sdp-transform@2.15.0':
+ resolution: {integrity: sha512-ikIFF0EaYt/2XetIYYVeMj6SB52oVXFasJUXDzWHgzNJS5ep2Pbsu7f8f3Za+dEie8HQtt3Zr9mHYBpWT0XgxQ==}
+
+ '@types/semver@7.7.1':
+ resolution: {integrity: sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==}
+
+ '@types/symlink-or-copy@1.2.2':
+ resolution: {integrity: sha512-MQ1AnmTLOncwEf9IVU+B2e4Hchrku5N67NkgcAHW0p3sdzPe0FNMANxEm6OJUzPniEQGkeT3OROLlCwZJLWFZA==}
+
+ '@types/tough-cookie@4.0.5':
+ resolution: {integrity: sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==}
+
+ '@types/uuid@10.0.0':
+ resolution: {integrity: sha512-7gqG38EyHgyP1S+7+xomFtL+ZNHcKv6DwNaCZmJmo1vgMugyF3TCnXVg4t1uk89mLNwnLtnY3TpOpCOyp1/xHQ==}
+
+ '@types/yargs-parser@21.0.3':
+ resolution: {integrity: sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==}
+
+ '@types/yargs@17.0.35':
+ resolution: {integrity: sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==}
+
+ '@typescript-eslint/eslint-plugin@8.58.2':
+ resolution: {integrity: sha512-aC2qc5thQahutKjP+cl8cgN9DWe3ZUqVko30CMSZHnFEHyhOYoZSzkGtAI2mcwZ38xeImDucI4dnqsHiOYuuCw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ '@typescript-eslint/parser': ^8.58.2
+ eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/experimental-utils@5.62.0':
+ resolution: {integrity: sha512-RTXpeB3eMkpoclG3ZHft6vG/Z30azNHuqY6wKPBHlVMZFuEvrtlEDe8gMqDb+SO+9hjC/pLekeSCryf9vMZlCw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ '@typescript-eslint/parser@8.58.2':
+ resolution: {integrity: sha512-/Zb/xaIDfxeJnvishjGdcR4jmr7S+bda8PKNhRGdljDM+elXhlvN0FyPSsMnLmJUrVG9aPO6dof80wjMawsASg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/project-service@8.58.2':
+ resolution: {integrity: sha512-Cq6UfpZZk15+r87BkIh5rDpi38W4b+Sjnb8wQCPPDDweS/LRCFjCyViEbzHk5Ck3f2QDfgmlxqSa7S7clDtlfg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/project-service@8.59.0':
+ resolution: {integrity: sha512-Lw5ITrR5s5TbC19YSvlr63ZfLaJoU6vtKTHyB0GQOpX0W7d5/Ir6vUahWi/8Sps/nOukZQ0IB3SmlxZnjaKVnw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/scope-manager@5.62.0':
+ resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ '@typescript-eslint/scope-manager@8.58.2':
+ resolution: {integrity: sha512-SgmyvDPexWETQek+qzZnrG6844IaO02UVyOLhI4wpo82dpZJY9+6YZCKAMFzXb7qhx37mFK1QcPQ18tud+vo6Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/scope-manager@8.59.0':
+ resolution: {integrity: sha512-UzR16Ut8IpA3Mc4DbgAShlPPkVm8xXMWafXxB0BocaVRHs8ZGakAxGRskF7FId3sdk9lgGD73GSFaWmWFDE4dg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/tsconfig-utils@8.58.2':
+ resolution: {integrity: sha512-3SR+RukipDvkkKp/d0jP0dyzuls3DbGmwDpVEc5wqk5f38KFThakqAAO0XMirWAE+kT00oTauTbzMFGPoAzB0A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/tsconfig-utils@8.59.0':
+ resolution: {integrity: sha512-91Sbl3s4Kb3SybliIY6muFBmHVv+pYXfybC4Oolp3dvk8BvIE3wOPc+403CWIT7mJNkfQRGtdqghzs2+Z91Tqg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/type-utils@8.58.2':
+ resolution: {integrity: sha512-Z7EloNR/B389FvabdGeTo2XMs4W9TjtPiO9DAsmT0yom0bwlPyRjkJ1uCdW1DvrrrYP50AJZ9Xc3sByZA9+dcg==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/types@5.62.0':
+ resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ '@typescript-eslint/types@8.58.2':
+ resolution: {integrity: sha512-9TukXyATBQf/Jq9AMQXfvurk+G5R2MwfqQGDR2GzGz28HvY/lXNKGhkY+6IOubwcquikWk5cjlgPvD2uAA7htQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/types@8.59.0':
+ resolution: {integrity: sha512-nLzdsT1gdOgFxxxwrlNVUBzSNBEEHJ86bblmk4QAS6stfig7rcJzWKqCyxFy3YRRHXDWEkb2NralA1nOYkkm/A==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/typescript-estree@5.62.0':
+ resolution: {integrity: sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ typescript: '*'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ '@typescript-eslint/typescript-estree@8.58.2':
+ resolution: {integrity: sha512-ELGuoofuhhoCvNbQjFFiobFcGgcDCEm0ThWdmO4Z0UzLqPXS3KFvnEZ+SHewwOYHjM09tkzOWXNTv9u6Gqtyuw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/typescript-estree@8.59.0':
+ resolution: {integrity: sha512-O9Re9P1BmBLFJyikRbQpLku/QA3/AueZNO9WePLBwQrvkixTmDe8u76B6CYUAITRl/rHawggEqUGn5QIkVRLMw==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/utils@5.62.0':
+ resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ peerDependencies:
+ eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ '@typescript-eslint/utils@8.58.2':
+ resolution: {integrity: sha512-QZfjHNEzPY8+l0+fIXMvuQ2sJlplB4zgDZvA+NmvZsZv3EQwOcc1DuIU1VJUTWZ/RKouBMhDyNaBMx4sWvrzRA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/utils@8.59.0':
+ resolution: {integrity: sha512-I1R/K7V07XsMJ12Oaxg/O9GfrysGTmCRhvZJBv0RE0NcULMzjqVpR5kRRQjHsz3J/bElU7HwCO7zkqL+MSUz+g==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+ peerDependencies:
+ eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
+ typescript: '>=4.8.4 <6.1.0'
+
+ '@typescript-eslint/visitor-keys@5.62.0':
+ resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ '@typescript-eslint/visitor-keys@8.58.2':
+ resolution: {integrity: sha512-f1WO2Lx8a9t8DARmcWAUPJbu0G20bJlj8L4z72K00TMeJAoyLr/tHhI/pzYBLrR4dXWkcxO1cWYZEOX8DKHTqA==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@typescript-eslint/visitor-keys@8.59.0':
+ resolution: {integrity: sha512-/uejZt4dSere1bx12WLlPfv8GktzcaDtuJ7s42/HEZ5zGj9oxRaD4bj7qwSunXkf+pbAhFt2zjpHYUiT5lHf0Q==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ '@ungap/structured-clone@1.3.0':
+ resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
+
+ '@use-gesture/core@10.3.1':
+ resolution: {integrity: sha512-WcINiDt8WjqBdUXye25anHiNxPc0VOrlT8F6LLkU6cycrOGUDyY/yyFmsg3k8i5OLvv25llc0QC45GhR/C8llw==}
+
+ '@use-gesture/react@10.3.1':
+ resolution: {integrity: sha512-Yy19y6O2GJq8f7CHf7L0nxL8bf4PZCPaVOCgJrusOeFHY1LvHgYXnmnXg6N5iwAnbgbZCDjo60SiM6IPJi9C5g==}
+ peerDependencies:
+ react: '>= 16.8.0'
+
+ '@vector-im/compound-design-tokens@10.1.0':
+ resolution: {integrity: sha512-o+7DGx+NygpT2NPE1Jo//7NZDuyjzRH06eRchS0ZlkJicKx/impEmShmHU/XiE4P84BIFOo9eZ1Ws+rAym6Tuw==}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^17 || ^18 || ^19.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+ react:
+ optional: true
+
+ '@vector-im/compound-web@9.2.0':
+ resolution: {integrity: sha512-jHbABGEQ2yqNtm5xRIkklQs198VEfSk9AJQolI+e4WSJ0xg8Ozyv9t9KIuKQAmjdSV9aow5G6hDE861XB6DQgw==}
+ peerDependencies:
+ '@fontsource/inconsolata': ^5
+ '@fontsource/inter': ^5
+ '@types/react': '*'
+ '@vector-im/compound-design-tokens': '>=1.6.1 <11.0.0'
+ react: ^18 || ^19.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ '@vitejs/plugin-react@4.7.0':
+ resolution: {integrity: sha512-gUu9hwfWvvEDBBmgtAowQCojwZmJ5mcLn3aufeCsitijs3+f2NsrPtlAWIR6OPiqljl96GVCUbLe0HyqIpVaoA==}
+ engines: {node: ^14.18.0 || >=16.0.0}
+ peerDependencies:
+ vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0
+
+ '@vitest/coverage-v8@4.1.4':
+ resolution: {integrity: sha512-x7FptB5oDruxNPDNY2+S8tCh0pcq7ymCe1gTHcsp733jYjrJl8V1gMUlVysuCD9Kz46Xz9t1akkv08dPcYDs1w==}
+ peerDependencies:
+ '@vitest/browser': 4.1.4
+ vitest: 4.1.4
+ peerDependenciesMeta:
+ '@vitest/browser':
+ optional: true
+
+ '@vitest/expect@3.2.4':
+ resolution: {integrity: sha512-Io0yyORnB6sikFlt8QW5K7slY4OjqNX9jmJQ02QDda8lyM6B5oNgVWoSoKPac8/kgnCUzuHQKrSLtu/uOqqrig==}
+
+ '@vitest/expect@4.1.4':
+ resolution: {integrity: sha512-iPBpra+VDuXmBFI3FMKHSFXp3Gx5HfmSCE8X67Dn+bwephCnQCaB7qWK2ldHa+8ncN8hJU8VTMcxjPpyMkUjww==}
+
+ '@vitest/mocker@4.1.4':
+ resolution: {integrity: sha512-R9HTZBhW6yCSGbGQnDnH3QHfJxokKN4KB+Yvk9Q1le7eQNYwiCyKxmLmurSpFy6BzJanSLuEUDrD+j97Q+ZLPg==}
+ peerDependencies:
+ msw: ^2.4.9
+ vite: ^6.0.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ msw:
+ optional: true
+ vite:
+ optional: true
+
+ '@vitest/pretty-format@3.2.4':
+ resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==}
+
+ '@vitest/pretty-format@4.1.4':
+ resolution: {integrity: sha512-ddmDHU0gjEUyEVLxtZa7xamrpIefdEETu3nZjWtHeZX4QxqJ7tRxSteHVXJOcr8jhiLoGAhkK4WJ3WqBpjx42A==}
+
+ '@vitest/runner@4.1.4':
+ resolution: {integrity: sha512-xTp7VZ5aXP5ZJrn15UtJUWlx6qXLnGtF6jNxHepdPHpMfz/aVPx+htHtgcAL2mDXJgKhpoo2e9/hVJsIeFbytQ==}
+
+ '@vitest/snapshot@4.1.4':
+ resolution: {integrity: sha512-MCjCFgaS8aZz+m5nTcEcgk/xhWv0rEH4Yl53PPlMXOZ1/Ka2VcZU6CJ+MgYCZbcJvzGhQRjVrGQNZqkGPttIKw==}
+
+ '@vitest/spy@3.2.4':
+ resolution: {integrity: sha512-vAfasCOe6AIK70iP5UD11Ac4siNUNJ9i/9PZ3NKx07sG6sUxeag1LWdNrMWeKKYBLlzuK+Gn65Yd5nyL6ds+nw==}
+
+ '@vitest/spy@4.1.4':
+ resolution: {integrity: sha512-XxNdAsKW7C+FLydqFJLb5KhJtl3PGCMmYwFRfhvIgxJvLSXhhVI1zM8f1qD3Zg7RCjTSzDVyct6sghs9UEgBEQ==}
+
+ '@vitest/utils@3.2.4':
+ resolution: {integrity: sha512-fB2V0JFrQSMsCo9HiSq3Ezpdv4iYaXRG1Sx8edX3MwxfyNn83mKiGzOcH+Fkxt4MHxr3y42fQi1oeAInqgX2QA==}
+
+ '@vitest/utils@4.1.4':
+ resolution: {integrity: sha512-13QMT+eysM5uVGa1rG4kegGYNp6cnQcsTc67ELFbhNLQO+vgsygtYJx2khvdt4gVQqSSpC/KT5FZZxUpP3Oatw==}
+
+ '@webcontainer/env@1.1.1':
+ resolution: {integrity: sha512-6aN99yL695Hi9SuIk1oC88l9o0gmxL1nGWWQ/kNy81HigJ0FoaoTXpytCj6ItzgyCEwA9kF1wixsTuv5cjsgng==}
+
+ acorn-jsx@5.3.2:
+ resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==}
+ peerDependencies:
+ acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ acorn@8.16.0:
+ resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+
+ agent-base@6.0.2:
+ resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
+ engines: {node: '>= 6.0.0'}
+
+ agent-base@7.1.4:
+ resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==}
+ engines: {node: '>= 14'}
+
+ ajv@6.14.0:
+ resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==}
+
+ another-json@0.2.0:
+ resolution: {integrity: sha512-/Ndrl68UQLhnCdsAzEXLMFuOR546o2qbYRqCglaNHbjXrwG1ayTcdwr3zkSGOGtGXDyR5X9nCFfnyG2AFJIsqg==}
+
+ ansi-regex@5.0.1:
+ resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==}
+ engines: {node: '>=8'}
+
+ ansi-regex@6.2.2:
+ resolution: {integrity: sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==}
+ engines: {node: '>=12'}
+
+ ansi-styles@4.3.0:
+ resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
+ engines: {node: '>=8'}
+
+ ansi-styles@5.2.0:
+ resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==}
+ engines: {node: '>=10'}
+
+ ansi-styles@6.2.3:
+ resolution: {integrity: sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==}
+ engines: {node: '>=12'}
+
+ anymatch@3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
+ engines: {node: '>= 8'}
+
+ are-docs-informative@0.0.2:
+ resolution: {integrity: sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==}
+ engines: {node: '>=14'}
+
+ argparse@2.0.1:
+ resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==}
+
+ aria-hidden@1.2.6:
+ resolution: {integrity: sha512-ik3ZgC9dY/lYVVM++OISsaYDeg1tb0VtP5uL3ouh1koGOaUMDPpbFIei4JkFimWUFPn90sbMNMXQAIVOlnYKJA==}
+ engines: {node: '>=10'}
+
+ aria-query@5.3.0:
+ resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
+
+ aria-query@5.3.2:
+ resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
+ engines: {node: '>= 0.4'}
+
+ array-buffer-byte-length@1.0.2:
+ resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
+ engines: {node: '>= 0.4'}
+
+ array-includes@3.1.9:
+ resolution: {integrity: sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==}
+ engines: {node: '>= 0.4'}
+
+ array-union@2.1.0:
+ resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==}
+ engines: {node: '>=8'}
+
+ array.prototype.findlast@1.2.5:
+ resolution: {integrity: sha512-CVvd6FHg1Z3POpBLxO6E6zr+rSKEQ9L6rZHAaY7lLfhKsWYUBBOuMs0e9o24oopj6H+geRCX0YJ+TJLBK2eHyQ==}
+ engines: {node: '>= 0.4'}
+
+ array.prototype.findlastindex@1.2.6:
+ resolution: {integrity: sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==}
+ engines: {node: '>= 0.4'}
+
+ array.prototype.flat@1.3.3:
+ resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==}
+ engines: {node: '>= 0.4'}
+
+ array.prototype.flatmap@1.3.3:
+ resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==}
+ engines: {node: '>= 0.4'}
+
+ array.prototype.tosorted@1.1.4:
+ resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==}
+ engines: {node: '>= 0.4'}
+
+ arraybuffer.prototype.slice@1.0.4:
+ resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==}
+ engines: {node: '>= 0.4'}
+
+ asn1.js@4.10.1:
+ resolution: {integrity: sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==}
+
+ assert@2.1.0:
+ resolution: {integrity: sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==}
+
+ assertion-error@2.0.1:
+ resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
+ engines: {node: '>=12'}
+
+ ast-types-flow@0.0.8:
+ resolution: {integrity: sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==}
+
+ ast-types@0.16.1:
+ resolution: {integrity: sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==}
+ engines: {node: '>=4'}
+
+ ast-v8-to-istanbul@1.0.0:
+ resolution: {integrity: sha512-1fSfIwuDICFA4LKkCzRPO7F0hzFf0B7+Xqrl27ynQaa+Rh0e1Es0v6kWHPott3lU10AyAr7oKHa65OppjLn3Rg==}
+
+ async-function@1.0.0:
+ resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==}
+ engines: {node: '>= 0.4'}
+
+ async@3.2.6:
+ resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==}
+
+ autoprefixer@10.5.0:
+ resolution: {integrity: sha512-FMhOoZV4+qR6aTUALKX2rEqGG+oyATvwBt9IIzVR5rMa2HRWPkxf+P+PAJLD1I/H5/II+HuZcBJYEFBpq39ong==}
+ engines: {node: ^10 || ^12 || >=14}
+ hasBin: true
+ peerDependencies:
+ postcss: ^8.1.0
+
+ available-typed-arrays@1.0.7:
+ resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
+ engines: {node: '>= 0.4'}
+
+ axe-core@4.11.3:
+ resolution: {integrity: sha512-zBQouZixDTbo3jMGqHKyePxYxr1e5W8UdTmBQ7sNtaA9M2bE32daxxPLS/jojhKOHxQ7LWwPjfiwf/fhaJWzlg==}
+ engines: {node: '>=4'}
+
+ axobject-query@4.1.0:
+ resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
+ engines: {node: '>= 0.4'}
+
+ b4a@1.8.0:
+ resolution: {integrity: sha512-qRuSmNSkGQaHwNbM7J78Wwy+ghLEYF1zNrSeMxj4Kgw6y33O3mXcQ6Ie9fRvfU/YnxWkOchPXbaLb73TkIsfdg==}
+ peerDependencies:
+ react-native-b4a: '*'
+ peerDependenciesMeta:
+ react-native-b4a:
+ optional: true
+
+ babel-plugin-polyfill-corejs2@0.4.17:
+ resolution: {integrity: sha512-aTyf30K/rqAsNwN76zYrdtx8obu0E4KoUME29B1xj+B3WxgvWkp943vYQ+z8Mv3lw9xHXMHpvSPOBxzAkIa94w==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ babel-plugin-polyfill-corejs3@0.14.2:
+ resolution: {integrity: sha512-coWpDLJ410R781Npmn/SIBZEsAetR4xVi0SxLMXPaMO4lSf1MwnkGYMtkFxew0Dn8B3/CpbpYxN0JCgg8mn67g==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ babel-plugin-polyfill-regenerator@0.6.8:
+ resolution: {integrity: sha512-M762rNHfSF1EV3SLtnCJXFoQbbIIz0OyRwnCmV0KPC7qosSfCO0QLTSuJX3ayAebubhE6oYBAYPrBA5ljowaZg==}
+ peerDependencies:
+ '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
+
+ babel-plugin-transform-vite-meta-env@1.0.3:
+ resolution: {integrity: sha512-eyfuDEXrMu667TQpmctHeTlJrZA6jXYHyEJFjcM0yEa60LS/LXlOg2PBbMb8DVS+V9CnTj/j9itdlDVMcY2zEg==}
+
+ balanced-match@4.0.4:
+ resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==}
+ engines: {node: 18 || 20 || >=22}
+
+ bare-events@2.8.2:
+ resolution: {integrity: sha512-riJjyv1/mHLIPX4RwiK+oW9/4c3TEUeORHKefKAKnZ5kyslbN+HXowtbaVEqt4IMUB7OXlfixcs6gsFeo/jhiQ==}
+ peerDependencies:
+ bare-abort-controller: '*'
+ peerDependenciesMeta:
+ bare-abort-controller:
+ optional: true
+
+ base-x@5.0.1:
+ resolution: {integrity: sha512-M7uio8Zt++eg3jPj+rHMfCC+IuygQHHCOU+IYsVtik6FWjuYpVt/+MRKcgsAMHh8mMFAwnB+Bs+mTrFiXjMzKg==}
+
+ base64-js@1.5.1:
+ resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==}
+
+ baseline-browser-mapping@2.10.19:
+ resolution: {integrity: sha512-qCkNLi2sfBOn8XhZQ0FXsT1Ki/Yo5P90hrkRamVFRS7/KV9hpfA4HkoWNU152+8w0zPjnxo5psx5NL3PSGgv5g==}
+ engines: {node: '>=6.0.0'}
+ hasBin: true
+
+ before-after-hook@2.2.3:
+ resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==}
+
+ bent@7.3.12:
+ resolution: {integrity: sha512-T3yrKnVGB63zRuoco/7Ybl7BwwGZR0lceoVG5XmQyMIH9s19SV5m+a8qam4if0zQuAmOQTyPTPmsQBdAorGK3w==}
+
+ binary-extensions@2.3.0:
+ resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
+ engines: {node: '>=8'}
+
+ bl@5.1.0:
+ resolution: {integrity: sha512-tv1ZJHLfTDnXE6tMHv73YgSJaWR2AFuPwMntBe7XL/GBFHnT0CLnsHMogfk5+GzCDC5ZWarSCYaIGATZt9dNsQ==}
+
+ bn.js@4.12.3:
+ resolution: {integrity: sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==}
+
+ bn.js@5.2.3:
+ resolution: {integrity: sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==}
+
+ boolbase@1.0.0:
+ resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==}
+
+ brace-expansion@5.0.5:
+ resolution: {integrity: sha512-VZznLgtwhn+Mact9tfiwx64fA9erHH/MCXEUfB/0bX/6Fz6ny5EGTXYltMocqg4xFAQZtnO3DHWWXi8RiuN7cQ==}
+ engines: {node: 18 || 20 || >=22}
+
+ braces@3.0.3:
+ resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
+ engines: {node: '>=8'}
+
+ broccoli-node-api@1.7.0:
+ resolution: {integrity: sha512-QIqLSVJWJUVOhclmkmypJJH9u9s/aWH4+FH6Q6Ju5l+Io4dtwqdPUNmDfw40o6sxhbZHhqGujDJuHTML1wG8Yw==}
+
+ broccoli-node-info@2.2.0:
+ resolution: {integrity: sha512-VabSGRpKIzpmC+r+tJueCE5h8k6vON7EIMMWu6d/FyPdtijwLQ7QvzShEw+m3mHoDzUaj/kiZsDYrS8X2adsBg==}
+ engines: {node: 8.* || >= 10.*}
+
+ broccoli-output-wrapper@3.2.5:
+ resolution: {integrity: sha512-bQAtwjSrF4Nu0CK0JOy5OZqw9t5U0zzv2555EA/cF8/a8SLDTIetk9UgrtMVw7qKLKdSpOZ2liZNeZZDaKgayw==}
+ engines: {node: 10.* || >= 12.*}
+
+ broccoli-plugin@4.0.7:
+ resolution: {integrity: sha512-a4zUsWtA1uns1K7p9rExYVYG99rdKeGRymW0qOCNkvDPHQxVi3yVyJHhQbM3EZwdt2E0mnhr5e0c/bPpJ7p3Wg==}
+ engines: {node: 10.* || >= 12.*}
+
+ brorand@1.1.0:
+ resolution: {integrity: sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==}
+
+ browser-resolve@2.0.0:
+ resolution: {integrity: sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==}
+
+ browserify-aes@1.2.0:
+ resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==}
+
+ browserify-cipher@1.0.1:
+ resolution: {integrity: sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==}
+
+ browserify-des@1.0.2:
+ resolution: {integrity: sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==}
+
+ browserify-rsa@4.1.1:
+ resolution: {integrity: sha512-YBjSAiTqM04ZVei6sXighu679a3SqWORA3qZTEqZImnlkDIFtKc6pNutpjyZ8RJTjQtuYfeetkxM11GwoYXMIQ==}
+ engines: {node: '>= 0.10'}
+
+ browserify-sign@4.2.5:
+ resolution: {integrity: sha512-C2AUdAJg6rlM2W5QMp2Q4KGQMVBwR1lIimTsUnutJ8bMpW5B52pGpR2gEnNBNwijumDo5FojQ0L9JrXA8m4YEw==}
+ engines: {node: '>= 0.10'}
+
+ browserify-zlib@0.2.0:
+ resolution: {integrity: sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==}
+
+ browserslist@4.28.2:
+ resolution: {integrity: sha512-48xSriZYYg+8qXna9kwqjIVzuQxi+KYWp2+5nCYnYKPTr0LvD89Jqk2Or5ogxz0NUMfIjhh2lIUX/LyX9B4oIg==}
+ engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
+ hasBin: true
+
+ bs58@6.0.0:
+ resolution: {integrity: sha512-PD0wEnEYg6ijszw/u8s+iI3H17cTymlrwkKhDhPZq+Sokl3AU4htyBFTjAeNAlCCmg0f53g6ih3jATyCKftTfw==}
+
+ buffer-from@1.1.2:
+ resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
+
+ buffer-xor@1.0.3:
+ resolution: {integrity: sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==}
+
+ buffer@5.7.1:
+ resolution: {integrity: sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==}
+
+ buffer@6.0.3:
+ resolution: {integrity: sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==}
+
+ builtin-modules@3.3.0:
+ resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
+ engines: {node: '>=6'}
+
+ builtin-status-codes@3.0.0:
+ resolution: {integrity: sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==}
+
+ bundle-name@4.1.0:
+ resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==}
+ engines: {node: '>=18'}
+
+ bytesish@0.4.4:
+ resolution: {integrity: sha512-i4uu6M4zuMUiyfZN4RU2+i9+peJh//pXhd9x1oSe1LBkZ3LEbCoygu8W0bXTukU1Jme2txKuotpCZRaC3FLxcQ==}
+
+ call-bind-apply-helpers@1.0.2:
+ resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}
+ engines: {node: '>= 0.4'}
+
+ call-bind@1.0.9:
+ resolution: {integrity: sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==}
+ engines: {node: '>= 0.4'}
+
+ call-bound@1.0.4:
+ resolution: {integrity: sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==}
+ engines: {node: '>= 0.4'}
+
+ callsites@3.1.0:
+ resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==}
+ engines: {node: '>=6'}
+
+ camel-case@4.1.2:
+ resolution: {integrity: sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==}
+
+ camelcase@5.3.1:
+ resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==}
+ engines: {node: '>=6'}
+
+ camelcase@6.3.0:
+ resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==}
+ engines: {node: '>=10'}
+
+ caniuse-lite@1.0.30001788:
+ resolution: {integrity: sha512-6q8HFp+lOQtcf7wBK+uEenxymVWkGKkjFpCvw5W25cmMwEDU45p1xQFBQv8JDlMMry7eNxyBaR+qxgmTUZkIRQ==}
+
+ caseless@0.12.0:
+ resolution: {integrity: sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw==}
+
+ chai@5.3.3:
+ resolution: {integrity: sha512-4zNhdJD/iOjSH0A05ea+Ke6MU5mmpQcbQsSOkgdaUMJ9zTlDTD/GYlwohmIE2u0gaxHYiVHEn1Fw9mZ/ktJWgw==}
+ engines: {node: '>=18'}
+
+ chai@6.2.2:
+ resolution: {integrity: sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==}
+ engines: {node: '>=18'}
+
+ chalk@4.1.2:
+ resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
+ engines: {node: '>=10'}
+
+ chalk@5.6.2:
+ resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==}
+ engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
+
+ check-error@2.1.3:
+ resolution: {integrity: sha512-PAJdDJusoxnwm1VwW07VWwUN1sl7smmC3OKggvndJFadxxDRyFJBX/ggnu/KE4kQAB7a3Dp8f/YXC1FlUprWmA==}
+ engines: {node: '>= 16'}
+
+ cheerio-select@2.1.0:
+ resolution: {integrity: sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==}
+
+ cheerio@1.2.0:
+ resolution: {integrity: sha512-WDrybc/gKFpTYQutKIK6UvfcuxijIZfMfXaYm8NMsPQxSYvf+13fXUJ4rztGGbJcBQ/GF55gvrZ0Bc0bj/mqvg==}
+ engines: {node: '>=20.18.1'}
+
+ chokidar@3.6.0:
+ resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
+ engines: {node: '>= 8.10.0'}
+
+ chokidar@4.0.3:
+ resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==}
+ engines: {node: '>= 14.16.0'}
+
+ ci-info@4.4.0:
+ resolution: {integrity: sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==}
+ engines: {node: '>=8'}
+
+ cipher-base@1.0.7:
+ resolution: {integrity: sha512-Mz9QMT5fJe7bKI7MH31UilT5cEK5EHHRCccw/YRFsRY47AuNgaV6HY3rscp0/I4Q+tTW/5zoqpSeRRI54TkDWA==}
+ engines: {node: '>= 0.10'}
+
+ classnames@2.5.1:
+ resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==}
+
+ clean-css@5.3.3:
+ resolution: {integrity: sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==}
+ engines: {node: '>= 10.0'}
+
+ clean-regexp@1.0.0:
+ resolution: {integrity: sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==}
+ engines: {node: '>=4'}
+
+ cliui@6.0.0:
+ resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==}
+
+ cliui@8.0.1:
+ resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+ engines: {node: '>=12'}
+
+ clone@2.1.2:
+ resolution: {integrity: sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==}
+ engines: {node: '>=0.8'}
+
+ clsx@2.1.1:
+ resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
+ engines: {node: '>=6'}
+
+ color-convert@2.0.1:
+ resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
+ engines: {node: '>=7.0.0'}
+
+ color-name@1.1.4:
+ resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
+
+ colorette@2.0.20:
+ resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
+
+ colors@1.4.0:
+ resolution: {integrity: sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==}
+ engines: {node: '>=0.1.90'}
+
+ commander@12.1.0:
+ resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==}
+ engines: {node: '>=18'}
+
+ commander@2.20.3:
+ resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==}
+
+ commander@8.3.0:
+ resolution: {integrity: sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==}
+ engines: {node: '>= 12'}
+
+ comment-parser@1.4.1:
+ resolution: {integrity: sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==}
+ engines: {node: '>= 12.0.0'}
+
+ common-tags@1.8.2:
+ resolution: {integrity: sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==}
+ engines: {node: '>=4.0.0'}
+
+ connect-history-api-fallback@1.6.0:
+ resolution: {integrity: sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==}
+ engines: {node: '>=0.8'}
+
+ consola@2.15.3:
+ resolution: {integrity: sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw==}
+
+ console-browserify@1.2.0:
+ resolution: {integrity: sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==}
+
+ constants-browserify@1.0.0:
+ resolution: {integrity: sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==}
+
+ content-type@1.0.5:
+ resolution: {integrity: sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==}
+ engines: {node: '>= 0.6'}
+
+ convert-source-map@2.0.0:
+ resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+
+ cookie@1.1.1:
+ resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==}
+ engines: {node: '>=18'}
+
+ copy-to-clipboard@3.3.3:
+ resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==}
+
+ core-js-compat@3.49.0:
+ resolution: {integrity: sha512-VQXt1jr9cBz03b331DFDCCP90b3fanciLkgiOoy8SBHy06gNf+vQ1A3WFLqG7I8TipYIKeYK9wxd0tUrvHcOZA==}
+
+ core-util-is@1.0.3:
+ resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
+
+ cosmiconfig@8.3.6:
+ resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==}
+ engines: {node: '>=14'}
+ peerDependencies:
+ typescript: '>=4.9.5'
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ create-ecdh@4.0.4:
+ resolution: {integrity: sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==}
+
+ create-hash@1.2.0:
+ resolution: {integrity: sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==}
+
+ create-hmac@1.1.7:
+ resolution: {integrity: sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==}
+
+ create-require@1.1.1:
+ resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
+
+ cross-spawn@7.0.6:
+ resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
+ engines: {node: '>= 8'}
+
+ crypto-browserify@3.12.1:
+ resolution: {integrity: sha512-r4ESw/IlusD17lgQi1O20Fa3qNnsckR126TdUuBgAu7GBYSIPvdNyONd3Zrxh0xCwA4+6w/TDArBPsMvhur+KQ==}
+ engines: {node: '>= 0.10'}
+
+ css-blank-pseudo@7.0.1:
+ resolution: {integrity: sha512-jf+twWGDf6LDoXDUode+nc7ZlrqfaNphrBIBrcmeP3D8yw1uPaix1gCC8LUQUGQ6CycuK2opkbFFWFuq/a94ag==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ css-has-pseudo@7.0.3:
+ resolution: {integrity: sha512-oG+vKuGyqe/xvEMoxAQrhi7uY16deJR3i7wwhBerVrGQKSqUC5GiOVxTpM9F9B9hw0J+eKeOWLH7E9gZ1Dr5rA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ css-prefers-color-scheme@10.0.0:
+ resolution: {integrity: sha512-VCtXZAWivRglTZditUfB4StnsWr6YVZ2PRtuxQLKTNRdtAf8tpzaVPE9zXIF3VaSc7O70iK/j1+NXxyQCqdPjQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ css-select@4.3.0:
+ resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==}
+
+ css-select@5.2.2:
+ resolution: {integrity: sha512-TizTzUddG/xYLA3NXodFM0fSbNizXjOKhqiQQwvhlspadZokn1KDy0NZFS0wuEubIYAV5/c1/lAr0TaaFXEXzw==}
+
+ css-what@6.2.2:
+ resolution: {integrity: sha512-u/O3vwbptzhMs3L1fQE82ZSLHQQfto5gyZzwteVIEyeaY5Fc7R4dapF/BvRoSYFeqfBk4m0V1Vafq5Pjv25wvA==}
+ engines: {node: '>= 6'}
+
+ css.escape@1.5.1:
+ resolution: {integrity: sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==}
+
+ cssdb@8.8.0:
+ resolution: {integrity: sha512-QbLeyz2Bgso1iRlh7IpWk6OKa3lLNGXsujVjDMPl9rOZpxKeiG69icLpbLCFxeURwmcdIfZqQyhlooKJYM4f8Q==}
+
+ cssesc@3.0.0:
+ resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ cssstyle@4.6.0:
+ resolution: {integrity: sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==}
+ engines: {node: '>=18'}
+
+ csstype@3.2.3:
+ resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==}
+
+ damerau-levenshtein@1.0.8:
+ resolution: {integrity: sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==}
+
+ data-urls@5.0.0:
+ resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==}
+ engines: {node: '>=18'}
+
+ data-view-buffer@1.0.2:
+ resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==}
+ engines: {node: '>= 0.4'}
+
+ data-view-byte-length@1.0.2:
+ resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==}
+ engines: {node: '>= 0.4'}
+
+ data-view-byte-offset@1.0.1:
+ resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==}
+ engines: {node: '>= 0.4'}
+
+ debug@2.6.9:
+ resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+
+ debug@3.2.7:
+ resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+
+ debug@4.4.3:
+ resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==}
+ engines: {node: '>=6.0'}
+ peerDependencies:
+ supports-color: '*'
+ peerDependenciesMeta:
+ supports-color:
+ optional: true
+
+ decamelize@1.2.0:
+ resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==}
+ engines: {node: '>=0.10.0'}
+
+ decamelize@5.0.1:
+ resolution: {integrity: sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==}
+ engines: {node: '>=10'}
+
+ decimal.js@10.6.0:
+ resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==}
+
+ deep-eql@5.0.2:
+ resolution: {integrity: sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==}
+ engines: {node: '>=6'}
+
+ deep-is@0.1.4:
+ resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==}
+
+ default-browser-id@5.0.1:
+ resolution: {integrity: sha512-x1VCxdX4t+8wVfd1so/9w+vQ4vx7lKd2Qp5tDRutErwmR85OgmfX7RlLRMWafRMY7hbEiXIbudNrjOAPa/hL8Q==}
+ engines: {node: '>=18'}
+
+ default-browser@5.5.0:
+ resolution: {integrity: sha512-H9LMLr5zwIbSxrmvikGuI/5KGhZ8E2zH3stkMgM5LpOWDutGM2JZaj460Udnf1a+946zc7YBgrqEWwbk7zHvGw==}
+ engines: {node: '>=18'}
+
+ define-data-property@1.1.4:
+ resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
+ engines: {node: '>= 0.4'}
+
+ define-lazy-prop@3.0.0:
+ resolution: {integrity: sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==}
+ engines: {node: '>=12'}
+
+ define-properties@1.2.1:
+ resolution: {integrity: sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==}
+ engines: {node: '>= 0.4'}
+
+ deprecation@2.3.1:
+ resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==}
+
+ dequal@2.0.3:
+ resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
+ engines: {node: '>=6'}
+
+ des.js@1.1.0:
+ resolution: {integrity: sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==}
+
+ detect-libc@2.1.2:
+ resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
+ engines: {node: '>=8'}
+
+ detect-node-es@1.1.0:
+ resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==}
+
+ diffie-hellman@5.0.3:
+ resolution: {integrity: sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==}
+
+ dijkstrajs@1.0.3:
+ resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==}
+
+ dir-glob@3.0.1:
+ resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
+ engines: {node: '>=8'}
+
+ doctrine@2.1.0:
+ resolution: {integrity: sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==}
+ engines: {node: '>=0.10.0'}
+
+ doctrine@3.0.0:
+ resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==}
+ engines: {node: '>=6.0.0'}
+
+ dom-accessibility-api@0.5.16:
+ resolution: {integrity: sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==}
+
+ dom-accessibility-api@0.6.3:
+ resolution: {integrity: sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==}
+
+ dom-serializer@1.4.1:
+ resolution: {integrity: sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==}
+
+ dom-serializer@2.0.0:
+ resolution: {integrity: sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==}
+
+ domain-browser@4.22.0:
+ resolution: {integrity: sha512-IGBwjF7tNk3cwypFNH/7bfzBcgSCbaMOD3GsaY1AU/JRrnHnYgEM0+9kQt52iZxjNsjBtJYtao146V+f8jFZNw==}
+ engines: {node: '>=10'}
+
+ domelementtype@2.3.0:
+ resolution: {integrity: sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==}
+
+ domhandler@4.3.1:
+ resolution: {integrity: sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==}
+ engines: {node: '>= 4'}
+
+ domhandler@5.0.3:
+ resolution: {integrity: sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==}
+ engines: {node: '>= 4'}
+
+ domutils@2.8.0:
+ resolution: {integrity: sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==}
+
+ domutils@3.2.2:
+ resolution: {integrity: sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==}
+
+ dot-case@3.0.4:
+ resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==}
+
+ dotenv-expand@8.0.3:
+ resolution: {integrity: sha512-SErOMvge0ZUyWd5B0NXMQlDkN+8r+HhVUsxgOO7IoPDOdDRD2JjExpN6y3KnFR66jsJMwSn1pqIivhU5rcJiNg==}
+ engines: {node: '>=12'}
+
+ dotenv@16.6.1:
+ resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==}
+ engines: {node: '>=12'}
+
+ dunder-proto@1.0.1:
+ resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
+ engines: {node: '>= 0.4'}
+
+ eastasianwidth@0.2.0:
+ resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
+
+ ejs@3.1.10:
+ resolution: {integrity: sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==}
+ engines: {node: '>=0.10.0'}
+ hasBin: true
+
+ electron-to-chromium@1.5.339:
+ resolution: {integrity: sha512-Is+0BBHJ4NrdpAYiperrmp53pLywG/yV/6lIMTAnhxvzj/Cmn5Q/ogSHC6AKe7X+8kPLxxFk0cs5oc/3j/fxIg==}
+
+ elliptic@6.6.1:
+ resolution: {integrity: sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g==}
+
+ emoji-regex@8.0.0:
+ resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==}
+
+ emoji-regex@9.2.2:
+ resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==}
+
+ empathic@2.0.0:
+ resolution: {integrity: sha512-i6UzDscO/XfAcNYD75CfICkmfLedpyPDdozrLMmQc5ORaQcdMoc21OnlEylMIqI7U8eniKrPMxxtj8k0vhmJhA==}
+ engines: {node: '>=14'}
+
+ encoding-sniffer@0.2.1:
+ resolution: {integrity: sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==}
+
+ ensure-posix-path@1.1.1:
+ resolution: {integrity: sha512-VWU0/zXzVbeJNXvME/5EmLuEj2TauvoaTz6aFYK1Z92JCBlDlZ3Gu0tuGR42kpW1754ywTs+QB0g5TP0oj9Zaw==}
+
+ entities@2.2.0:
+ resolution: {integrity: sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==}
+
+ entities@4.5.0:
+ resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==}
+ engines: {node: '>=0.12'}
+
+ entities@6.0.1:
+ resolution: {integrity: sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==}
+ engines: {node: '>=0.12'}
+
+ entities@7.0.1:
+ resolution: {integrity: sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==}
+ engines: {node: '>=0.12'}
+
+ eol@0.9.1:
+ resolution: {integrity: sha512-Ds/TEoZjwggRoz/Q2O7SE3i4Jm66mqTDfmdHdq/7DKVk3bro9Q8h6WdXKdPqFLMoqxrDK5SVRzHVPOS6uuGtrg==}
+
+ error-ex@1.3.4:
+ resolution: {integrity: sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==}
+
+ es-abstract@1.24.2:
+ resolution: {integrity: sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==}
+ engines: {node: '>= 0.4'}
+
+ es-define-property@1.0.1:
+ resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}
+ engines: {node: '>= 0.4'}
+
+ es-errors@1.3.0:
+ resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==}
+ engines: {node: '>= 0.4'}
+
+ es-iterator-helpers@1.3.2:
+ resolution: {integrity: sha512-HVLACW1TppGYjJ8H6/jqH/pqOtKRw6wMlrB23xfExmFWxFquAIWCmwoLsOyN96K4a5KbmOf5At9ZUO3GZbetAw==}
+ engines: {node: '>= 0.4'}
+
+ es-module-lexer@2.0.0:
+ resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==}
+
+ es-object-atoms@1.1.1:
+ resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
+ engines: {node: '>= 0.4'}
+
+ es-set-tostringtag@2.1.0:
+ resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==}
+ engines: {node: '>= 0.4'}
+
+ es-shim-unscopables@1.1.0:
+ resolution: {integrity: sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==}
+ engines: {node: '>= 0.4'}
+
+ es-to-primitive@1.3.0:
+ resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==}
+ engines: {node: '>= 0.4'}
+
+ esbuild@0.27.7:
+ resolution: {integrity: sha512-IxpibTjyVnmrIQo5aqNpCgoACA/dTKLTlhMHihVHhdkxKyPO1uBBthumT0rdHmcsk9uMonIWS0m4FljWzILh3w==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ escalade@3.2.0:
+ resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
+ engines: {node: '>=6'}
+
+ escape-string-regexp@1.0.5:
+ resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==}
+ engines: {node: '>=0.8.0'}
+
+ escape-string-regexp@4.0.0:
+ resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
+ engines: {node: '>=10'}
+
+ eslint-config-google@0.14.0:
+ resolution: {integrity: sha512-WsbX4WbjuMvTdeVL6+J3rK1RGhCTqjsFjX7UMSMgZiyxxaNLkoJENbrGExzERFeoTpGw3F3FypTiWAP9ZXzkEw==}
+ engines: {node: '>=0.10.0'}
+ peerDependencies:
+ eslint: '>=5.16.0'
+
+ eslint-config-prettier@10.1.8:
+ resolution: {integrity: sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w==}
+ hasBin: true
+ peerDependencies:
+ eslint: '>=7.0.0'
+
+ eslint-etc@5.2.1:
+ resolution: {integrity: sha512-lFJBSiIURdqQKq9xJhvSJFyPA+VeTh5xvk24e8pxVL7bwLBtGF60C/KRkLTMrvCZ6DA3kbPuYhLWY0TZMlqTsg==}
+ peerDependencies:
+ eslint: ^8.0.0
+ typescript: '>=4.0.0'
+
+ eslint-import-resolver-node@0.3.10:
+ resolution: {integrity: sha512-tRrKqFyCaKict5hOd244sL6EQFNycnMQnBe+j8uqGNXYzsImGbGUU4ibtoaBmv5FLwJwcFJNeg1GeVjQfbMrDQ==}
+
+ eslint-module-utils@2.12.1:
+ resolution: {integrity: sha512-L8jSWTze7K2mTg0vos/RuLRS5soomksDPoJLXIslC7c8Wmut3bx7CPpJijDcBZtxQ5lrbUdM+s0OlNbz0DCDNw==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: '*'
+ eslint-import-resolver-node: '*'
+ eslint-import-resolver-typescript: '*'
+ eslint-import-resolver-webpack: '*'
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+ eslint:
+ optional: true
+ eslint-import-resolver-node:
+ optional: true
+ eslint-import-resolver-typescript:
+ optional: true
+ eslint-import-resolver-webpack:
+ optional: true
+
+ eslint-plugin-deprecate@0.9.0:
+ resolution: {integrity: sha512-M4rP6pRQcvM/LxafQ0PzNKYkfuDn06pOW2uRB2e2WFJiE2KvQqFspxo2Rta3ee6NatHzqDQ4q8UPnaxGMtn5Zw==}
+ engines: {node: '>=18.18.0'}
+ peerDependencies:
+ eslint: ^8.0.0 || ^9.0.0
+
+ eslint-plugin-import@2.32.0:
+ resolution: {integrity: sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ '@typescript-eslint/parser': '*'
+ eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9
+ peerDependenciesMeta:
+ '@typescript-eslint/parser':
+ optional: true
+
+ eslint-plugin-jest@29.15.2:
+ resolution: {integrity: sha512-kEN4r9RZl1xcsb4arGq89LrcVdOUFII/JSCwtTPJyv16mDwmPrcuEQwpxqZHeINvcsd7oK5O/rhdGlxFRaZwvQ==}
+ engines: {node: ^20.12.0 || ^22.0.0 || >=24.0.0}
+ peerDependencies:
+ '@typescript-eslint/eslint-plugin': ^8.0.0
+ eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
+ jest: '*'
+ typescript: '>=4.8.4 <7.0.0'
+ peerDependenciesMeta:
+ '@typescript-eslint/eslint-plugin':
+ optional: true
+ jest:
+ optional: true
+ typescript:
+ optional: true
+
+ eslint-plugin-jsdoc@61.7.1:
+ resolution: {integrity: sha512-36DpldF95MlTX//n3/naULFVt8d1cV4jmSkx7ZKrE9ikkKHAgMLesuWp1SmwpVwAs5ndIM6abKd6PeOYZUgdWg==}
+ engines: {node: '>=20.11.0'}
+ peerDependencies:
+ eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
+
+ eslint-plugin-jsx-a11y@6.10.2:
+ resolution: {integrity: sha512-scB3nz4WmG75pV8+3eRUQOHZlNSUhFNq37xnpgRkCCELU3XMvXAxLk1eqWWyE22Ki4Q01Fnsw9BA3cJHDPgn2Q==}
+ engines: {node: '>=4.0'}
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9
+
+ eslint-plugin-matrix-org@2.1.0:
+ resolution: {integrity: sha512-YjVQ0qunzVV34tpUchLWhOrOalGfRLm0tclS4dPYnXS8Ui+p12o/YtRHt+26Mg5tJ0QH76HsGC0LJKLVLNoqfg==}
+ peerDependencies:
+ '@babel/core': '*'
+ '@babel/eslint-parser': '*'
+ '@babel/eslint-plugin': '*'
+ '@stylistic/eslint-plugin': '*'
+ '@typescript-eslint/eslint-plugin': '*'
+ '@typescript-eslint/parser': '*'
+ eslint: '*'
+ eslint-config-google: '*'
+ eslint-config-prettier: '*'
+ eslint-plugin-deprecate: '*'
+ eslint-plugin-import: '*'
+ eslint-plugin-jest: '*'
+ eslint-plugin-jsx-a11y: '*'
+ eslint-plugin-react: '*'
+ eslint-plugin-react-hooks: '*'
+ eslint-plugin-unicorn: '*'
+ prettier: '*'
+ typescript: '*'
+
+ eslint-plugin-react-hooks@5.2.0:
+ resolution: {integrity: sha512-+f15FfK64YQwZdJNELETdn5ibXEUQmW1DZL6KXhNnc2heoy/sg9VJJeT7n8TlMWouzWqSWavFkIhHyIbIAEapg==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0
+
+ eslint-plugin-react@7.37.5:
+ resolution: {integrity: sha512-Qteup0SqU15kdocexFNAJMvCJEfa2xUKNV4CC1xsVMrIIqEy3SQ/rqyxCWNzfrd3/ldy6HMlD2e0JDVpDg2qIA==}
+ engines: {node: '>=4'}
+ peerDependencies:
+ eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
+
+ eslint-plugin-rxjs@5.0.3:
+ resolution: {integrity: sha512-fcVkqLmYLRfRp+ShafjpUKuaZ+cw/sXAvM5dfSxiEr7M28QZ/NY7vaOr09FB4rSaZsQyLBnNPh5SL+4EgKjh8Q==}
+ peerDependencies:
+ eslint: ^8.0.0
+ typescript: '>=4.0.0'
+
+ eslint-plugin-storybook@10.3.5:
+ resolution: {integrity: sha512-rEFkfU3ypF44GpB4tiJ9EFDItueoGvGi3+weLHZax2ON2MB7VIDsxdSUGvIU5tMURg+oWYlpzCyLm4TpDq2deA==}
+ peerDependencies:
+ eslint: '>=8'
+ storybook: ^10.3.5
+
+ eslint-plugin-unicorn@56.0.1:
+ resolution: {integrity: sha512-FwVV0Uwf8XPfVnKSGpMg7NtlZh0G0gBarCaFcMUOoqPxXryxdYxTRRv4kH6B9TFCVIrjRXG+emcxIk2ayZilog==}
+ engines: {node: '>=18.18'}
+ peerDependencies:
+ eslint: '>=8.56.0'
+
+ eslint-rule-composer@0.3.0:
+ resolution: {integrity: sha512-bt+Sh8CtDmn2OajxvNO+BX7Wn4CIWMpTRm3MaiKPCQcnnlm0CS2mhui6QaoeQugs+3Kj2ESKEEGJUdVafwhiCg==}
+ engines: {node: '>=4.0.0'}
+
+ eslint-scope@5.1.1:
+ resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==}
+ engines: {node: '>=8.0.0'}
+
+ eslint-scope@7.2.2:
+ resolution: {integrity: sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ eslint-visitor-keys@2.1.0:
+ resolution: {integrity: sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==}
+ engines: {node: '>=10'}
+
+ eslint-visitor-keys@3.4.3:
+ resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ eslint-visitor-keys@4.2.1:
+ resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ eslint-visitor-keys@5.0.1:
+ resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==}
+ engines: {node: ^20.19.0 || ^22.13.0 || >=24}
+
+ eslint@8.57.1:
+ resolution: {integrity: sha512-ypowyDxpVSYpkXr9WPv2PAZCtNip1Mv5KTW0SCurXv/9iOpcrH9PaqUElksqEB6pChqHGDRCFTyrZlGhnLNGiA==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+ deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options.
+ hasBin: true
+
+ espree@10.4.0:
+ resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==}
+ engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
+
+ espree@11.2.0:
+ resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==}
+ engines: {node: ^20.19.0 || ^22.13.0 || >=24}
+
+ espree@9.6.1:
+ resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==}
+ engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
+
+ esprima@4.0.1:
+ resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==}
+ engines: {node: '>=4'}
+ hasBin: true
+
+ esquery@1.7.0:
+ resolution: {integrity: sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==}
+ engines: {node: '>=0.10'}
+
+ esrecurse@4.3.0:
+ resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==}
+ engines: {node: '>=4.0'}
+
+ estraverse@4.3.0:
+ resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==}
+ engines: {node: '>=4.0'}
+
+ estraverse@5.3.0:
+ resolution: {integrity: sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==}
+ engines: {node: '>=4.0'}
+
+ estree-walker@2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+
+ estree-walker@3.0.3:
+ resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
+
+ esutils@2.0.3:
+ resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==}
+ engines: {node: '>=0.10.0'}
+
+ events-universal@1.0.1:
+ resolution: {integrity: sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw==}
+
+ events@3.3.0:
+ resolution: {integrity: sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==}
+ engines: {node: '>=0.8.x'}
+
+ evp_bytestokey@1.0.3:
+ resolution: {integrity: sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==}
+
+ expect-type@1.3.0:
+ resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==}
+ engines: {node: '>=12.0.0'}
+
+ fast-deep-equal@3.1.3:
+ resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
+
+ fast-fifo@1.3.2:
+ resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==}
+
+ fast-glob@3.3.3:
+ resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
+ engines: {node: '>=8.6.0'}
+
+ fast-json-stable-stringify@2.1.0:
+ resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==}
+
+ fast-levenshtein@2.0.6:
+ resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==}
+
+ fastq@1.20.1:
+ resolution: {integrity: sha512-GGToxJ/w1x32s/D2EKND7kTil4n8OVk/9mycTc4VDza13lOvpUZTGX3mFSCtV9ksdGBVzvsyAVLM6mHFThxXxw==}
+
+ fd-package-json@2.0.0:
+ resolution: {integrity: sha512-jKmm9YtsNXN789RS/0mSzOC1NUq9mkVd65vbSSVsKdjGvYXBuE4oWe2QOEoFeRmJg+lPuZxpmrfFclNhoRMneQ==}
+
+ fdir@6.5.0:
+ resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
+ engines: {node: '>=12.0.0'}
+ peerDependencies:
+ picomatch: ^3 || ^4
+ peerDependenciesMeta:
+ picomatch:
+ optional: true
+
+ fetch-mock@11.1.5:
+ resolution: {integrity: sha512-KHmZDnZ1ry0pCTrX4YG5DtThHi0MH+GNI9caESnzX/nMJBrvppUHMvLx47M0WY9oAtKOMiPfZDRpxhlHg89BOA==}
+ engines: {node: '>=8.0.0'}
+ peerDependencies:
+ node-fetch: '*'
+ peerDependenciesMeta:
+ node-fetch:
+ optional: true
+
+ fflate@0.4.8:
+ resolution: {integrity: sha512-FJqqoDBR00Mdj9ppamLa/Y7vxm+PRmNWA67N846RvsoYVMKB4q3y/de5PA7gUmRMYK/8CMz2GDZQmCRN1wBcWA==}
+
+ file-entry-cache@6.0.1:
+ resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+
+ filelist@1.0.6:
+ resolution: {integrity: sha512-5giy2PkLYY1cP39p17Ech+2xlpTRL9HLspOfEgm0L6CwBXBTgsK5ou0JtzYuepxkaQ/tvhCFIJ5uXo0OrM2DxA==}
+
+ fill-range@7.1.1:
+ resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
+ engines: {node: '>=8'}
+
+ find-up@4.1.0:
+ resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==}
+ engines: {node: '>=8'}
+
+ find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+
+ flat-cache@3.2.0:
+ resolution: {integrity: sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==}
+ engines: {node: ^10.12.0 || >=12.0.0}
+
+ flatted@3.4.2:
+ resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==}
+
+ for-each@0.3.5:
+ resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==}
+ engines: {node: '>= 0.4'}
+
+ foreground-child@3.3.1:
+ resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
+ engines: {node: '>=14'}
+
+ formatly@0.3.0:
+ resolution: {integrity: sha512-9XNj/o4wrRFyhSMJOvsuyMwy8aUfBaZ1VrqHVfohyXf0Sw0e+yfKG+xZaY3arGCOMdwFsqObtzVOc1gU9KiT9w==}
+ engines: {node: '>=18.3.0'}
+ hasBin: true
+
+ fraction.js@5.3.4:
+ resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==}
+
+ fs-extra@10.1.0:
+ resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
+ engines: {node: '>=12'}
+
+ fs-extra@11.3.4:
+ resolution: {integrity: sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==}
+ engines: {node: '>=14.14'}
+
+ fs-extra@8.1.0:
+ resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
+ engines: {node: '>=6 <7 || >=8'}
+
+ fs-merger@3.2.1:
+ resolution: {integrity: sha512-AN6sX12liy0JE7C2evclwoo0aCG3PFulLjrTLsJpWh/2mM+DinhpSGqYLbHBBbIW1PLRNcFhJG8Axtz8mQW3ug==}
+
+ fs-mkdirp-stream@2.0.1:
+ resolution: {integrity: sha512-UTOY+59K6IA94tec8Wjqm0FSh5OVudGNB0NL/P6fB3HiE3bYOY3VYBGijsnOHNkQSwC1FKkU77pmq7xp9CskLw==}
+ engines: {node: '>=10.13.0'}
+
+ fs-tree-diff@2.0.1:
+ resolution: {integrity: sha512-x+CfAZ/lJHQqwlD64pYM5QxWjzWhSjroaVsr8PW831zOApL55qPibed0c+xebaLWVr2BnHFoHdrwOv8pzt8R5A==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+
+ fsevents@2.3.2:
+ resolution: {integrity: sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+
+ fsevents@2.3.3:
+ resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
+ engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
+ os: [darwin]
+
+ function-bind@1.1.2:
+ resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
+
+ function.prototype.name@1.1.8:
+ resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==}
+ engines: {node: '>= 0.4'}
+
+ functions-have-names@1.2.3:
+ resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
+
+ generator-function@2.0.1:
+ resolution: {integrity: sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==}
+ engines: {node: '>= 0.4'}
+
+ gensync@1.0.0-beta.2:
+ resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==}
+ engines: {node: '>=6.9.0'}
+
+ get-caller-file@2.0.5:
+ resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+
+ get-intrinsic@1.3.0:
+ resolution: {integrity: sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==}
+ engines: {node: '>= 0.4'}
+
+ get-nonce@1.0.1:
+ resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==}
+ engines: {node: '>=6'}
+
+ get-proto@1.0.1:
+ resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
+ engines: {node: '>= 0.4'}
+
+ get-symbol-description@1.1.0:
+ resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==}
+ engines: {node: '>= 0.4'}
+
+ glob-parent@5.1.2:
+ resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==}
+ engines: {node: '>= 6'}
+
+ glob-parent@6.0.2:
+ resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==}
+ engines: {node: '>=10.13.0'}
+
+ glob-stream@8.0.3:
+ resolution: {integrity: sha512-fqZVj22LtFJkHODT+M4N1RJQ3TjnnQhfE9GwZI8qXscYarnhpip70poMldRnP8ipQ/w0B621kOhfc53/J9bd/A==}
+ engines: {node: '>=10.13.0'}
+
+ glob-to-regexp@0.4.1:
+ resolution: {integrity: sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==}
+
+ glob@10.5.0:
+ resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==}
+ deprecated: Old versions of glob are not supported, and contain widely publicized security vulnerabilities, which have been fixed in the current version. Please update. Support for old versions may be purchased (at exorbitant rates) by contacting i@izs.me
+ hasBin: true
+
+ global-jsdom@26.0.0:
+ resolution: {integrity: sha512-BqXpTNZFjP40N+s4k8Bk9HS8GFVPJB/+TKtwcShM84wLv6C5dH9o1dydI3pL6potanhfDiIAVDbaaGj/uSdRSA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ jsdom: '>=26 <27'
+
+ globals@13.24.0:
+ resolution: {integrity: sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==}
+ engines: {node: '>=8'}
+
+ globals@15.15.0:
+ resolution: {integrity: sha512-7ACyT3wmyp3I61S4fG682L0VA2RGD9otkqGJIwNUMF1SWUombIIk+af1unuDYgMm082aHYwD+mzJvv9Iu8dsgg==}
+ engines: {node: '>=18'}
+
+ globalthis@1.0.4:
+ resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
+ engines: {node: '>= 0.4'}
+
+ globby@11.1.0:
+ resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
+ engines: {node: '>=10'}
+
+ gopd@1.2.0:
+ resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
+ engines: {node: '>= 0.4'}
+
+ graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
+
+ graphemer@1.4.0:
+ resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
+
+ gulp-sort@2.0.0:
+ resolution: {integrity: sha512-MyTel3FXOdh1qhw1yKhpimQrAmur9q1X0ZigLmCOxouQD+BD3za9/89O+HfbgBQvvh4igEbp0/PUWO+VqGYG1g==}
+
+ has-bigints@1.1.0:
+ resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==}
+ engines: {node: '>= 0.4'}
+
+ has-flag@4.0.0:
+ resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
+ engines: {node: '>=8'}
+
+ has-property-descriptors@1.0.2:
+ resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
+
+ has-proto@1.2.0:
+ resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==}
+ engines: {node: '>= 0.4'}
+
+ has-symbols@1.1.0:
+ resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
+ engines: {node: '>= 0.4'}
+
+ has-tostringtag@1.0.2:
+ resolution: {integrity: sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==}
+ engines: {node: '>= 0.4'}
+
+ hash-base@3.0.5:
+ resolution: {integrity: sha512-vXm0l45VbcHEVlTCzs8M+s0VeYsB2lnlAaThoLKGXr3bE/VWDOelNUnycUPEhKEaXARL2TEFjBOyUiM6+55KBg==}
+ engines: {node: '>= 0.10'}
+
+ hash-base@3.1.2:
+ resolution: {integrity: sha512-Bb33KbowVTIj5s7Ked1OsqHUeCpz//tPwR+E2zJgJKo9Z5XolZ9b6bdUgjmYlwnWhoOQKoTd1TYToZGn5mAYOg==}
+ engines: {node: '>= 0.8'}
+
+ hash.js@1.1.7:
+ resolution: {integrity: sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==}
+
+ hasown@2.0.2:
+ resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==}
+ engines: {node: '>= 0.4'}
+
+ he@1.2.0:
+ resolution: {integrity: sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==}
+ hasBin: true
+
+ heimdalljs-logger@0.1.10:
+ resolution: {integrity: sha512-pO++cJbhIufVI/fmB/u2Yty3KJD0TqNPecehFae0/eps0hkZ3b4Zc/PezUMOpYuHFQbA7FxHZxa305EhmjLj4g==}
+
+ heimdalljs@0.2.6:
+ resolution: {integrity: sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==}
+
+ hmac-drbg@1.0.1:
+ resolution: {integrity: sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==}
+
+ hoist-non-react-statics@3.3.2:
+ resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
+
+ hosted-git-info@2.8.9:
+ resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
+
+ html-encoding-sniffer@4.0.0:
+ resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==}
+ engines: {node: '>=18'}
+
+ html-entities@2.6.0:
+ resolution: {integrity: sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==}
+
+ html-escaper@2.0.2:
+ resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
+
+ html-minifier-terser@6.1.0:
+ resolution: {integrity: sha512-YXxSlJBZTP7RS3tWnQw74ooKa6L9b9i9QYXY21eUEvhZ3u9XLfv6OnFsQq6RxkhHygsaUMvYsZRV5rU/OVNZxw==}
+ engines: {node: '>=12'}
+ hasBin: true
+
+ html-parse-stringify@3.0.1:
+ resolution: {integrity: sha512-KknJ50kTInJ7qIScF3jeaFRpMpE8/lfiTdzf/twXyPBLAGrLRTmkz3AdTnKeh40X8k9L2fdYwEp/42WGXIRGcg==}
+
+ htmlparser2@10.1.0:
+ resolution: {integrity: sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==}
+
+ http-proxy-agent@7.0.2:
+ resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
+ engines: {node: '>= 14'}
+
+ https-browserify@1.0.0:
+ resolution: {integrity: sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==}
+
+ https-proxy-agent@5.0.1:
+ resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
+ engines: {node: '>= 6'}
+
+ https-proxy-agent@7.0.6:
+ resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==}
+ engines: {node: '>= 14'}
+
+ i18next-browser-languagedetector@8.2.1:
+ resolution: {integrity: sha512-bZg8+4bdmaOiApD7N7BPT9W8MLZG+nPTOFlLiJiT8uzKXFjhxw4v2ierCXOwB5sFDMtuA5G4kgYZ0AznZxQ/cw==}
+
+ i18next-parser@9.4.0:
+ resolution: {integrity: sha512-SLQJGDj/baBIB9ALmJVXSOXWh3Zn9+wH7J2IuQ4rvx8yuQYpUWitmt8cHFjj6FExjgr8dHfd1SGeQgkowXDO1Q==}
+ engines: {node: ^18.0.0 || ^20.0.0 || ^22.0.0, npm: '>=6', yarn: '>=1'}
+ deprecated: Project is deprecated, use i18next-cli instead
+ hasBin: true
+
+ i18next@24.2.3:
+ resolution: {integrity: sha512-lfbf80OzkocvX7nmZtu7nSTNbrTYR52sLWxPtlXX1zAhVw8WEnFk4puUkCR4B1dNQwbSpEHHHemcZu//7EcB7A==}
+ peerDependencies:
+ typescript: ^5
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ i18next@25.10.10:
+ resolution: {integrity: sha512-cqUW2Z3EkRx7NqSyywjkgCLK7KLCL6IFVFcONG7nVYIJ3ekZ1/N5jUsihHV6Bq37NfhgtczxJcxduELtjTwkuQ==}
+ peerDependencies:
+ typescript: ^5 || ^6
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+
+ iconv-lite@0.6.3:
+ resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
+ engines: {node: '>=0.10.0'}
+
+ ieee754@1.2.1:
+ resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==}
+
+ ignore@5.3.2:
+ resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
+ engines: {node: '>= 4'}
+
+ ignore@7.0.5:
+ resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
+ engines: {node: '>= 4'}
+
+ immutable@5.1.5:
+ resolution: {integrity: sha512-t7xcm2siw+hlUM68I+UEOK+z84RzmN59as9DZ7P1l0994DKUWV7UXBMQZVxaoMSRQ+PBZbHCOoBt7a2wxOMt+A==}
+
+ import-fresh@3.3.1:
+ resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
+ engines: {node: '>=6'}
+
+ imurmurhash@0.1.4:
+ resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==}
+ engines: {node: '>=0.8.19'}
+
+ indent-string@4.0.0:
+ resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==}
+ engines: {node: '>=8'}
+
+ inherits@2.0.4:
+ resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==}
+
+ internal-slot@1.1.0:
+ resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==}
+ engines: {node: '>= 0.4'}
+
+ is-arguments@1.2.0:
+ resolution: {integrity: sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==}
+ engines: {node: '>= 0.4'}
+
+ is-array-buffer@3.0.5:
+ resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==}
+ engines: {node: '>= 0.4'}
+
+ is-arrayish@0.2.1:
+ resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+
+ is-async-function@2.1.1:
+ resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==}
+ engines: {node: '>= 0.4'}
+
+ is-bigint@1.1.0:
+ resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==}
+ engines: {node: '>= 0.4'}
+
+ is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
+
+ is-boolean-object@1.2.2:
+ resolution: {integrity: sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==}
+ engines: {node: '>= 0.4'}
+
+ is-builtin-module@3.2.1:
+ resolution: {integrity: sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A==}
+ engines: {node: '>=6'}
+
+ is-callable@1.2.7:
+ resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==}
+ engines: {node: '>= 0.4'}
+
+ is-core-module@2.16.1:
+ resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
+ engines: {node: '>= 0.4'}
+
+ is-data-view@1.0.2:
+ resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==}
+ engines: {node: '>= 0.4'}
+
+ is-date-object@1.1.0:
+ resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==}
+ engines: {node: '>= 0.4'}
+
+ is-docker@3.0.0:
+ resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==}
+ engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0}
+ hasBin: true
+
+ is-extglob@2.1.1:
+ resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
+ engines: {node: '>=0.10.0'}
+
+ is-finalizationregistry@1.1.1:
+ resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==}
+ engines: {node: '>= 0.4'}
+
+ is-fullwidth-code-point@3.0.0:
+ resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
+ engines: {node: '>=8'}
+
+ is-generator-function@1.1.2:
+ resolution: {integrity: sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==}
+ engines: {node: '>= 0.4'}
+
+ is-glob@4.0.3:
+ resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
+ engines: {node: '>=0.10.0'}
+
+ is-inside-container@1.0.0:
+ resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==}
+ engines: {node: '>=14.16'}
+ hasBin: true
+
+ is-map@2.0.3:
+ resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
+ engines: {node: '>= 0.4'}
+
+ is-nan@1.3.2:
+ resolution: {integrity: sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==}
+ engines: {node: '>= 0.4'}
+
+ is-negated-glob@1.0.0:
+ resolution: {integrity: sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==}
+ engines: {node: '>=0.10.0'}
+
+ is-negative-zero@2.0.3:
+ resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
+ engines: {node: '>= 0.4'}
+
+ is-network-error@1.3.1:
+ resolution: {integrity: sha512-6QCxa49rQbmUWLfk0nuGqzql9U8uaV2H6279bRErPBHe/109hCzsLUBUHfbEtvLIHBd6hyXbgedBSHevm43Edw==}
+ engines: {node: '>=16'}
+
+ is-number-object@1.1.1:
+ resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
+ engines: {node: '>= 0.4'}
+
+ is-number@7.0.0:
+ resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
+ engines: {node: '>=0.12.0'}
+
+ is-path-inside@3.0.3:
+ resolution: {integrity: sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==}
+ engines: {node: '>=8'}
+
+ is-plain-obj@4.1.0:
+ resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
+ engines: {node: '>=12'}
+
+ is-potential-custom-element-name@1.0.1:
+ resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==}
+
+ is-regex@1.2.1:
+ resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==}
+ engines: {node: '>= 0.4'}
+
+ is-set@2.0.3:
+ resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
+ engines: {node: '>= 0.4'}
+
+ is-shared-array-buffer@1.0.4:
+ resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==}
+ engines: {node: '>= 0.4'}
+
+ is-stream@2.0.1:
+ resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
+ engines: {node: '>=8'}
+
+ is-string@1.1.1:
+ resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==}
+ engines: {node: '>= 0.4'}
+
+ is-subset@0.1.1:
+ resolution: {integrity: sha512-6Ybun0IkarhmEqxXCNw/C0bna6Zb/TkfUX9UbwJtK6ObwAVCxmAP308WWTHviM/zAqXk05cdhYsUsZeGQh99iw==}
+
+ is-symbol@1.1.1:
+ resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==}
+ engines: {node: '>= 0.4'}
+
+ is-typed-array@1.1.15:
+ resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==}
+ engines: {node: '>= 0.4'}
+
+ is-valid-glob@1.0.0:
+ resolution: {integrity: sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==}
+ engines: {node: '>=0.10.0'}
+
+ is-weakmap@2.0.2:
+ resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==}
+ engines: {node: '>= 0.4'}
+
+ is-weakref@1.1.1:
+ resolution: {integrity: sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==}
+ engines: {node: '>= 0.4'}
+
+ is-weakset@2.0.4:
+ resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==}
+ engines: {node: '>= 0.4'}
+
+ is-wsl@3.1.1:
+ resolution: {integrity: sha512-e6rvdUCiQCAuumZslxRJWR/Doq4VpPR82kqclvcS0efgt430SlGIk05vdCN58+VrzgtIcfNODjozVielycD4Sw==}
+ engines: {node: '>=16'}
+
+ isarray@1.0.0:
+ resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
+
+ isarray@2.0.5:
+ resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
+
+ isexe@2.0.0:
+ resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
+
+ isomorphic-timers-promises@1.0.1:
+ resolution: {integrity: sha512-u4sej9B1LPSxTGKB/HiuzvEQnXH0ECYkSVQU39koSwmFAxhlEAFl9RdTvLv4TOTQUgBS5O3O5fwUxk6byBZ+IQ==}
+ engines: {node: '>=10'}
+
+ istanbul-lib-coverage@3.2.2:
+ resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==}
+ engines: {node: '>=8'}
+
+ istanbul-lib-report@3.0.1:
+ resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==}
+ engines: {node: '>=10'}
+
+ istanbul-reports@3.2.0:
+ resolution: {integrity: sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==}
+ engines: {node: '>=8'}
+
+ iterator.prototype@1.1.5:
+ resolution: {integrity: sha512-H0dkQoCa3b2VEeKQBOxFph+JAbcrQdE7KC0UkqwpLmv2EC4P41QXP+rqo9wYodACiG5/WM5s9oDApTU8utwj9g==}
+ engines: {node: '>= 0.4'}
+
+ jackspeak@3.4.3:
+ resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==}
+
+ jake@10.9.4:
+ resolution: {integrity: sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==}
+ engines: {node: '>=10'}
+ hasBin: true
+
+ jiti@2.6.1:
+ resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
+ hasBin: true
+
+ jose@6.2.2:
+ resolution: {integrity: sha512-d7kPDd34KO/YnzaDOlikGpOurfF0ByC2sEV4cANCtdqLlTfBlw2p14O/5d/zv40gJPbIQxfES3nSx1/oYNyuZQ==}
+
+ js-tokens@10.0.0:
+ resolution: {integrity: sha512-lM/UBzQmfJRo9ABXbPWemivdCW8V2G8FHaHdypQaIy523snUjog0W71ayWXTjiR+ixeMyVHN2XcpnTd/liPg/Q==}
+
+ js-tokens@4.0.0:
+ resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
+
+ js-yaml@4.1.1:
+ resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==}
+ hasBin: true
+
+ jsdoc-type-pratt-parser@7.0.0:
+ resolution: {integrity: sha512-c7YbokssPOSHmqTbSAmTtnVgAVa/7lumWNYqomgd5KOMyPrRve2anx6lonfOsXEQacqF9FKVUj7bLg4vRSvdYA==}
+ engines: {node: '>=20.0.0'}
+
+ jsdom@26.1.0:
+ resolution: {integrity: sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ canvas: ^3.0.0
+ peerDependenciesMeta:
+ canvas:
+ optional: true
+
+ jsesc@0.5.0:
+ resolution: {integrity: sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==}
+ hasBin: true
+
+ jsesc@3.1.0:
+ resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ json-buffer@3.0.1:
+ resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
+
+ json-parse-even-better-errors@2.3.1:
+ resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
+
+ json-schema-traverse@0.4.1:
+ resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==}
+
+ json-stable-stringify-without-jsonify@1.0.1:
+ resolution: {integrity: sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==}
+
+ json5@1.0.2:
+ resolution: {integrity: sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==}
+ hasBin: true
+
+ json5@2.2.3:
+ resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==}
+ engines: {node: '>=6'}
+ hasBin: true
+
+ jsonfile@4.0.0:
+ resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
+
+ jsonfile@6.2.0:
+ resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==}
+
+ jsx-ast-utils@3.3.5:
+ resolution: {integrity: sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==}
+ engines: {node: '>=4.0'}
+
+ jwt-decode@4.0.0:
+ resolution: {integrity: sha512-+KJGIyHgkGuIq3IEBNftfhW/LfWhXUIY6OmyVWjliu5KH1y0fw7VQ8YndE2O4qZdMSd9SqbnC8GOcZEy0Om7sA==}
+ engines: {node: '>=18'}
+
+ keyv@4.5.4:
+ resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
+
+ kleur@3.0.3:
+ resolution: {integrity: sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==}
+ engines: {node: '>=6'}
+
+ knip@5.88.1:
+ resolution: {integrity: sha512-tpy5o7zu1MjawVkLPuahymVJekYY3kYjvzcoInhIchgePxTlo+api90tBv2KfhAIe5uXh+mez1tAfmbv8/TiZg==}
+ engines: {node: '>=18.18.0'}
+ hasBin: true
+ peerDependencies:
+ '@types/node': '>=18'
+ typescript: '>=5.0.4 <7'
+
+ language-subtag-registry@0.3.23:
+ resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==}
+
+ language-tags@1.0.9:
+ resolution: {integrity: sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==}
+ engines: {node: '>=0.10'}
+
+ lead@4.0.0:
+ resolution: {integrity: sha512-DpMa59o5uGUWWjruMp71e6knmwKU3jRBBn1kjuLWN9EeIOxNeSAwvHf03WIl8g/ZMR2oSQC9ej3yeLBwdDc/pg==}
+ engines: {node: '>=10.13.0'}
+
+ levn@0.4.1:
+ resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==}
+ engines: {node: '>= 0.8.0'}
+
+ lightningcss-android-arm64@1.32.0:
+ resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [android]
+
+ lightningcss-darwin-arm64@1.32.0:
+ resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [darwin]
+
+ lightningcss-darwin-x64@1.32.0:
+ resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [darwin]
+
+ lightningcss-freebsd-x64@1.32.0:
+ resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [freebsd]
+
+ lightningcss-linux-arm-gnueabihf@1.32.0:
+ resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm]
+ os: [linux]
+
+ lightningcss-linux-arm64-gnu@1.32.0:
+ resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [glibc]
+
+ lightningcss-linux-arm64-musl@1.32.0:
+ resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [linux]
+ libc: [musl]
+
+ lightningcss-linux-x64-gnu@1.32.0:
+ resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [glibc]
+
+ lightningcss-linux-x64-musl@1.32.0:
+ resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [linux]
+ libc: [musl]
+
+ lightningcss-win32-arm64-msvc@1.32.0:
+ resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [arm64]
+ os: [win32]
+
+ lightningcss-win32-x64-msvc@1.32.0:
+ resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==}
+ engines: {node: '>= 12.0.0'}
+ cpu: [x64]
+ os: [win32]
+
+ lightningcss@1.32.0:
+ resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==}
+ engines: {node: '>= 12.0.0'}
+
+ lilconfig@3.1.3:
+ resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
+ engines: {node: '>=14'}
+
+ lines-and-columns@1.2.4:
+ resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+
+ livekit-client@2.18.4:
+ resolution: {integrity: sha512-kjbH9WdA85gZNqFiAMY9jKJ3HArk8F+AQvAvSE5N6PnY+wNCV9OYe9yeb9BVezZiD6ltGyB3CkTxGyuX6BXYAw==}
+ peerDependencies:
+ '@types/dom-mediacapture-record': ^1
+
+ locate-path@5.0.0:
+ resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==}
+ engines: {node: '>=8'}
+
+ locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
+
+ lodash-es@4.18.1:
+ resolution: {integrity: sha512-J8xewKD/Gk22OZbhpOVSwcs60zhd95ESDwezOFuA3/099925PdHJ7OFHNTGtajL3AlZkykD32HykiMo+BIBI8A==}
+
+ lodash.debounce@4.0.8:
+ resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==}
+
+ lodash.merge@4.6.2:
+ resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==}
+
+ loglevel@1.9.1:
+ resolution: {integrity: sha512-hP3I3kCrDIMuRwAwHltphhDM1r8i55H33GgqjXbrisuJhF4kRhW1dNuxsRklp4bXl8DSdLaNLuiL4A/LWRfxvg==}
+ engines: {node: '>= 0.6.0'}
+
+ loglevel@1.9.2:
+ resolution: {integrity: sha512-HgMmCqIJSAKqo68l0rS2AanEWfkxaZ5wNiEFb5ggm08lDs9Xl2KxBlX3PTcaD2chBM1gXAYf491/M2Rv8Jwayg==}
+ engines: {node: '>= 0.6.0'}
+
+ loose-envify@1.4.0:
+ resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
+ hasBin: true
+
+ loupe@3.2.1:
+ resolution: {integrity: sha512-CdzqowRJCeLU72bHvWqwRBBlLcMEtIvGrlvef74kMnV2AolS9Y8xUv1I0U/MNAWMhBlKIoyuEgoJ0t/bbwHbLQ==}
+
+ lower-case@2.0.2:
+ resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==}
+
+ lru-cache@10.4.3:
+ resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==}
+
+ lru-cache@5.1.1:
+ resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==}
+
+ lz-string@1.5.0:
+ resolution: {integrity: sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==}
+ hasBin: true
+
+ magic-string@0.30.21:
+ resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
+
+ magic-string@0.30.8:
+ resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==}
+ engines: {node: '>=12'}
+
+ magicast@0.5.2:
+ resolution: {integrity: sha512-E3ZJh4J3S9KfwdjZhe2afj6R9lGIN5Pher1pF39UGrXRqq/VDaGVIGN13BjHd2u8B61hArAGOnso7nBOouW3TQ==}
+
+ make-dir@4.0.0:
+ resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
+ engines: {node: '>=10'}
+
+ matcher-collection@2.0.1:
+ resolution: {integrity: sha512-daE62nS2ZQsDg9raM0IlZzLmI2u+7ZapXBwdoeBUKAYERPDDIc0qNqA8E0Rp2D+gspKR7BgIFP52GeujaGXWeQ==}
+ engines: {node: 6.* || 8.* || >= 10.*}
+
+ math-intrinsics@1.1.0:
+ resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
+ engines: {node: '>= 0.4'}
+
+ matrix-events-sdk@0.0.1:
+ resolution: {integrity: sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==}
+
+ matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/fef093747e1c35a60b0fdc687a7166a7d7eb8a28:
+ resolution: {tarball: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/fef093747e1c35a60b0fdc687a7166a7d7eb8a28}
+ version: 41.3.0
+ engines: {node: '>=22.0.0'}
+
+ matrix-widget-api@1.17.0:
+ resolution: {integrity: sha512-5FHoo3iEP3Bdlv5jsYPWOqj+pGdFQNLWnJLiB0V7Ygne7bb+Gsj3ibyFyHWC6BVw+Z+tSW4ljHpO17I9TwStwQ==}
+
+ md5.js@1.3.5:
+ resolution: {integrity: sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==}
+
+ merge2@1.4.1:
+ resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
+ engines: {node: '>= 8'}
+
+ micromatch@4.0.8:
+ resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
+ engines: {node: '>=8.6'}
+
+ miller-rabin@4.0.1:
+ resolution: {integrity: sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==}
+ hasBin: true
+
+ mime-db@1.52.0:
+ resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==}
+ engines: {node: '>= 0.6'}
+
+ mime-types@2.1.35:
+ resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==}
+ engines: {node: '>= 0.6'}
+
+ min-indent@1.0.1:
+ resolution: {integrity: sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==}
+ engines: {node: '>=4'}
+
+ minimalistic-assert@1.0.1:
+ resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==}
+
+ minimalistic-crypto-utils@1.0.1:
+ resolution: {integrity: sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==}
+
+ minimatch@10.2.5:
+ resolution: {integrity: sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==}
+ engines: {node: 18 || 20 || >=22}
+
+ minimist@1.2.8:
+ resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
+
+ minipass@7.1.3:
+ resolution: {integrity: sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==}
+ engines: {node: '>=16 || 14 >=14.17'}
+
+ mktemp@2.0.2:
+ resolution: {integrity: sha512-Q9wJ/xhzeD9Wua1MwDN2v3ah3HENsUVSlzzL9Qw149cL9hHZkXtQGl3Eq36BbdLV+/qUwaP1WtJQ+H/+Oxso8g==}
+ engines: {node: 20 || 22 || 24}
+
+ ms@2.0.0:
+ resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==}
+
+ ms@2.1.3:
+ resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
+
+ nanoid@3.3.11:
+ resolution: {integrity: sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==}
+ engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
+ hasBin: true
+
+ natural-compare@1.4.0:
+ resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
+
+ no-case@3.0.4:
+ resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==}
+
+ node-addon-api@7.1.1:
+ resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
+
+ node-exports-info@1.6.0:
+ resolution: {integrity: sha512-pyFS63ptit/P5WqUkt+UUfe+4oevH+bFeIiPPdfb0pFeYEu/1ELnJu5l+5EcTKYL5M7zaAa7S8ddywgXypqKCw==}
+ engines: {node: '>= 0.4'}
+
+ node-fetch@2.7.0:
+ resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
+ engines: {node: 4.x || >=6.0.0}
+ peerDependencies:
+ encoding: ^0.1.0
+ peerDependenciesMeta:
+ encoding:
+ optional: true
+
+ node-html-parser@5.4.2:
+ resolution: {integrity: sha512-RaBPP3+51hPne/OolXxcz89iYvQvKOydaqoePpOgXcrOKZhjVIzmpKZz+Hd/RBO2/zN2q6CNJhQzucVz+u3Jyw==}
+
+ node-releases@2.0.37:
+ resolution: {integrity: sha512-1h5gKZCF+pO/o3Iqt5Jp7wc9rH3eJJ0+nh/CIoiRwjRxde/hAHyLPXYN4V3CqKAbiZPSeJFSWHmJsbkicta0Eg==}
+
+ node-stdlib-browser@1.3.1:
+ resolution: {integrity: sha512-X75ZN8DCLftGM5iKwoYLA3rjnrAEs97MkzvSd4q2746Tgpg8b8XWiBGiBG4ZpgcAqBgtgPHTiAc8ZMCvZuikDw==}
+ engines: {node: '>=10'}
+
+ normalize-package-data@2.5.0:
+ resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==}
+
+ normalize-path@3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+ engines: {node: '>=0.10.0'}
+
+ normalize.css@8.0.1:
+ resolution: {integrity: sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==}
+
+ now-and-later@3.0.0:
+ resolution: {integrity: sha512-pGO4pzSdaxhWTGkfSfHx3hVzJVslFPwBp2Myq9MYN/ChfJZF87ochMAXnvz6/58RJSf5ik2q9tXprBBrk2cpcg==}
+ engines: {node: '>= 10.13.0'}
+
+ nth-check@2.1.1:
+ resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==}
+
+ nwsapi@2.2.23:
+ resolution: {integrity: sha512-7wfH4sLbt4M0gCDzGE6vzQBo0bfTKjU7Sfpqy/7gs1qBfYz2vEJH6vXcBKpO3+6Yu1telwd0t9HpyOoLEQQbIQ==}
+
+ object-assign@4.1.1:
+ resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==}
+ engines: {node: '>=0.10.0'}
+
+ object-deep-merge@2.0.0:
+ resolution: {integrity: sha512-3DC3UMpeffLTHiuXSy/UG4NOIYTLlY9u3V82+djSCLYClWobZiS4ivYzpIUWrRY/nfsJ8cWsKyG3QfyLePmhvg==}
+
+ object-inspect@1.13.4:
+ resolution: {integrity: sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==}
+ engines: {node: '>= 0.4'}
+
+ object-is@1.1.6:
+ resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==}
+ engines: {node: '>= 0.4'}
+
+ object-keys@1.1.1:
+ resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
+ engines: {node: '>= 0.4'}
+
+ object.assign@4.1.7:
+ resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==}
+ engines: {node: '>= 0.4'}
+
+ object.entries@1.1.9:
+ resolution: {integrity: sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==}
+ engines: {node: '>= 0.4'}
+
+ object.fromentries@2.0.8:
+ resolution: {integrity: sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==}
+ engines: {node: '>= 0.4'}
+
+ object.groupby@1.0.3:
+ resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
+ engines: {node: '>= 0.4'}
+
+ object.values@1.2.1:
+ resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==}
+ engines: {node: '>= 0.4'}
+
+ observable-hooks@4.2.4:
+ resolution: {integrity: sha512-FdTQgyw1h5bG/QHCBIqctdBSnv9VARJCEilgpV6L2qlw1yeLqFIwPm4U15dMtl5kDmNN0hSt+Nl6iYbLFwEcQA==}
+ peerDependencies:
+ react: '>=16.8.0'
+ react-dom: '>=16.8.0'
+ rxjs: '>=6.0.0'
+
+ obug@2.1.1:
+ resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==}
+
+ oidc-client-ts@3.5.0:
+ resolution: {integrity: sha512-l2q8l9CTCTOlbX+AnK4p3M+4CEpKpyQhle6blQkdFhm0IsBqsxm15bYaSa11G7pWdsYr6epdsRZxJpCyCRbT8A==}
+ engines: {node: '>=18'}
+
+ once@1.4.0:
+ resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
+
+ open@10.2.0:
+ resolution: {integrity: sha512-YgBpdJHPyQ2UE5x+hlSXcnejzAvD0b22U2OuAP+8OnlJT+PjWPxtgmGqKKc+RgTM63U9gN0YzrYc71R2WT/hTA==}
+ engines: {node: '>=18'}
+
+ optionator@0.9.4:
+ resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
+ engines: {node: '>= 0.8.0'}
+
+ os-browserify@0.3.0:
+ resolution: {integrity: sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==}
+
+ own-keys@1.0.1:
+ resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==}
+ engines: {node: '>= 0.4'}
+
+ oxc-resolver@11.19.1:
+ resolution: {integrity: sha512-qE/CIg/spwrTBFt5aKmwe3ifeDdLfA2NESN30E42X/lII5ClF8V7Wt6WIJhcGZjp0/Q+nQ+9vgxGk//xZNX2hg==}
+
+ p-limit@2.3.0:
+ resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==}
+ engines: {node: '>=6'}
+
+ p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
+
+ p-locate@4.1.0:
+ resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==}
+ engines: {node: '>=8'}
+
+ p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
+
+ p-retry@8.0.0:
+ resolution: {integrity: sha512-kFVqH1HxOHp8LupNsOys7bSV09VYTRLxarH/mokO4Rqhk6wGi70E0jh4VzvVGXfEVNggHoHLAMWsQqHyU1Ey9A==}
+ engines: {node: '>=22'}
+
+ p-try@2.2.0:
+ resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==}
+ engines: {node: '>=6'}
+
+ package-json-from-dist@1.0.1:
+ resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
+
+ pako@1.0.11:
+ resolution: {integrity: sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==}
+
+ pako@2.1.0:
+ resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
+
+ param-case@3.0.4:
+ resolution: {integrity: sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==}
+
+ parent-module@1.0.1:
+ resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
+ engines: {node: '>=6'}
+
+ parse-asn1@5.1.9:
+ resolution: {integrity: sha512-fIYNuZ/HastSb80baGOuPRo1O9cf4baWw5WsAp7dBuUzeTD/BoaG8sVTdlPFksBE2lF21dN+A1AnrpIjSWqHHg==}
+ engines: {node: '>= 0.10'}
+
+ parse-imports-exports@0.2.4:
+ resolution: {integrity: sha512-4s6vd6dx1AotCx/RCI2m7t7GCh5bDRUtGNvRfHSP2wbBQdMi67pPe7mtzmgwcaQ8VKK/6IB7Glfyu3qdZJPybQ==}
+
+ parse-json@5.2.0:
+ resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
+ engines: {node: '>=8'}
+
+ parse-statements@1.0.11:
+ resolution: {integrity: sha512-HlsyYdMBnbPQ9Jr/VgJ1YF4scnldvJpJxCVx6KgqPL4dxppsWrJHCIIxQXMJrqGnsRkNPATbeMJ8Yxu7JMsYcA==}
+
+ parse5-htmlparser2-tree-adapter@7.1.0:
+ resolution: {integrity: sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==}
+
+ parse5-parser-stream@7.1.2:
+ resolution: {integrity: sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==}
+
+ parse5@7.3.0:
+ resolution: {integrity: sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==}
+
+ pascal-case@3.1.2:
+ resolution: {integrity: sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==}
+
+ path-browserify@1.0.1:
+ resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
+
+ path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
+
+ path-key@3.1.1:
+ resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
+ engines: {node: '>=8'}
+
+ path-parse@1.0.7:
+ resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==}
+
+ path-posix@1.0.0:
+ resolution: {integrity: sha512-1gJ0WpNIiYcQydgg3Ed8KzvIqTsDpNwq+cjBCssvBtuTWjEqY1AW+i+OepiEMqDCzyro9B2sLAe4RBPajMYFiA==}
+
+ path-scurry@1.11.1:
+ resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==}
+ engines: {node: '>=16 || 14 >=14.18'}
+
+ path-type@4.0.0:
+ resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==}
+ engines: {node: '>=8'}
+
+ pathe@0.2.0:
+ resolution: {integrity: sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==}
+
+ pathe@2.0.3:
+ resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==}
+
+ pathval@2.0.1:
+ resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==}
+ engines: {node: '>= 14.16'}
+
+ pbkdf2@3.1.5:
+ resolution: {integrity: sha512-Q3CG/cYvCO1ye4QKkuH7EXxs3VC/rI1/trd+qX2+PolbaKG0H+bgcZzrTt96mMyRtejk+JMCiLUn3y29W8qmFQ==}
+ engines: {node: '>= 0.10'}
+
+ picocolors@1.1.1:
+ resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
+
+ picomatch@2.3.2:
+ resolution: {integrity: sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA==}
+ engines: {node: '>=8.6'}
+
+ picomatch@4.0.4:
+ resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==}
+ engines: {node: '>=12'}
+
+ pkg-dir@5.0.0:
+ resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==}
+ engines: {node: '>=10'}
+
+ playwright-core@1.59.1:
+ resolution: {integrity: sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ playwright@1.59.1:
+ resolution: {integrity: sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ pluralize@8.0.0:
+ resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==}
+ engines: {node: '>=4'}
+
+ pngjs@5.0.0:
+ resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==}
+ engines: {node: '>=10.13.0'}
+
+ possible-typed-array-names@1.1.0:
+ resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==}
+ engines: {node: '>= 0.4'}
+
+ postcss-attribute-case-insensitive@7.0.1:
+ resolution: {integrity: sha512-Uai+SupNSqzlschRyNx3kbCTWgY/2hcwtHEI/ej2LJWc9JJ77qKgGptd8DHwY1mXtZ7Aoh4z4yxfwMBue9eNgw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-clamp@4.1.0:
+ resolution: {integrity: sha512-ry4b1Llo/9zz+PKC+030KUnPITTJAHeOwjfAyyB60eT0AorGLdzp52s31OsPRHRf8NchkgFoG2y6fCfn1IV1Ow==}
+ engines: {node: '>=7.6.0'}
+ peerDependencies:
+ postcss: ^8.4.6
+
+ postcss-color-functional-notation@7.0.12:
+ resolution: {integrity: sha512-TLCW9fN5kvO/u38/uesdpbx3e8AkTYhMvDZYa9JpmImWuTE99bDQ7GU7hdOADIZsiI9/zuxfAJxny/khknp1Zw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-color-hex-alpha@10.0.0:
+ resolution: {integrity: sha512-1kervM2cnlgPs2a8Vt/Qbe5cQ++N7rkYo/2rz2BkqJZIHQwaVuJgQH38REHrAi4uM0b1fqxMkWYmese94iMp3w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-color-rebeccapurple@10.0.0:
+ resolution: {integrity: sha512-JFta737jSP+hdAIEhk1Vs0q0YF5P8fFcj+09pweS8ktuGuZ8pPlykHsk6mPxZ8awDl4TrcxUqJo9l1IhVr/OjQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-custom-media@11.0.6:
+ resolution: {integrity: sha512-C4lD4b7mUIw+RZhtY7qUbf4eADmb7Ey8BFA2px9jUbwg7pjTZDl4KY4bvlUV+/vXQvzQRfiGEVJyAbtOsCMInw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-custom-properties@14.0.6:
+ resolution: {integrity: sha512-fTYSp3xuk4BUeVhxCSJdIPhDLpJfNakZKoiTDx7yRGCdlZrSJR7mWKVOBS4sBF+5poPQFMj2YdXx1VHItBGihQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-custom-selectors@8.0.5:
+ resolution: {integrity: sha512-9PGmckHQswiB2usSO6XMSswO2yFWVoCAuih1yl9FVcwkscLjRKjwsjM3t+NIWpSU2Jx3eOiK2+t4vVTQaoCHHg==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-dir-pseudo-class@9.0.1:
+ resolution: {integrity: sha512-tRBEK0MHYvcMUrAuYMEOa0zg9APqirBcgzi6P21OhxtJyJADo/SWBwY1CAwEohQ/6HDaa9jCjLRG7K3PVQYHEA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-double-position-gradients@6.0.4:
+ resolution: {integrity: sha512-m6IKmxo7FxSP5nF2l63QbCC3r+bWpFUWmZXZf096WxG0m7Vl1Q1+ruFOhpdDRmKrRS+S3Jtk+TVk/7z0+BVK6g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-focus-visible@10.0.1:
+ resolution: {integrity: sha512-U58wyjS/I1GZgjRok33aE8juW9qQgQUNwTSdxQGuShHzwuYdcklnvK/+qOWX1Q9kr7ysbraQ6ht6r+udansalA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-focus-within@9.0.1:
+ resolution: {integrity: sha512-fzNUyS1yOYa7mOjpci/bR+u+ESvdar6hk8XNK/TRR0fiGTp2QT5N+ducP0n3rfH/m9I7H/EQU6lsa2BrgxkEjw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-font-variant@5.0.0:
+ resolution: {integrity: sha512-1fmkBaCALD72CK2a9i468mA/+tr9/1cBxRRMXOUaZqO43oWPR5imcyPjXwuv7PXbCid4ndlP5zWhidQVVa3hmA==}
+ peerDependencies:
+ postcss: ^8.1.0
+
+ postcss-gap-properties@6.0.0:
+ resolution: {integrity: sha512-Om0WPjEwiM9Ru+VhfEDPZJAKWUd0mV1HmNXqp2C29z80aQ2uP9UVhLc7e3aYMIor/S5cVhoPgYQ7RtfeZpYTRw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-image-set-function@7.0.0:
+ resolution: {integrity: sha512-QL7W7QNlZuzOwBTeXEmbVckNt1FSmhQtbMRvGGqqU4Nf4xk6KUEQhAoWuMzwbSv5jxiRiSZ5Tv7eiDB9U87znA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-lab-function@7.0.12:
+ resolution: {integrity: sha512-tUcyRk1ZTPec3OuKFsqtRzW2Go5lehW29XA21lZ65XmzQkz43VY2tyWEC202F7W3mILOjw0voOiuxRGTsN+J9w==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-logical@8.1.0:
+ resolution: {integrity: sha512-pL1hXFQ2fEXNKiNiAgtfA005T9FBxky5zkX6s4GZM2D8RkVgRqz3f4g1JUoq925zXv495qk8UNldDwh8uGEDoA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-nesting@13.0.2:
+ resolution: {integrity: sha512-1YCI290TX+VP0U/K/aFxzHzQWHWURL+CtHMSbex1lCdpXD1SoR2sYuxDu5aNI9lPoXpKTCggFZiDJbwylU0LEQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-opacity-percentage@3.0.0:
+ resolution: {integrity: sha512-K6HGVzyxUxd/VgZdX04DCtdwWJ4NGLG212US4/LA1TLAbHgmAsTWVR86o+gGIbFtnTkfOpb9sCRBx8K7HO66qQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-overflow-shorthand@6.0.0:
+ resolution: {integrity: sha512-BdDl/AbVkDjoTofzDQnwDdm/Ym6oS9KgmO7Gr+LHYjNWJ6ExORe4+3pcLQsLA9gIROMkiGVjjwZNoL/mpXHd5Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-page-break@3.0.4:
+ resolution: {integrity: sha512-1JGu8oCjVXLa9q9rFTo4MbeeA5FMe00/9C7lN4va606Rdb+HkxXtXsmEDrIraQ11fGz/WvKWa8gMuCKkrXpTsQ==}
+ peerDependencies:
+ postcss: ^8
+
+ postcss-place@10.0.0:
+ resolution: {integrity: sha512-5EBrMzat2pPAxQNWYavwAfoKfYcTADJ8AXGVPcUZ2UkNloUTWzJQExgrzrDkh3EKzmAx1evfTAzF9I8NGcc+qw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-preset-env@10.6.1:
+ resolution: {integrity: sha512-yrk74d9EvY+W7+lO9Aj1QmjWY9q5NsKjK2V9drkOPZB/X6KZ0B3igKsHUYakb7oYVhnioWypQX3xGuePf89f3g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-pseudo-class-any-link@10.0.1:
+ resolution: {integrity: sha512-3el9rXlBOqTFaMFkWDOkHUTQekFIYnaQY55Rsp8As8QQkpiSgIYEcF/6Ond93oHiDsGb4kad8zjt+NPlOC1H0Q==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-replace-overflow-wrap@4.0.0:
+ resolution: {integrity: sha512-KmF7SBPphT4gPPcKZc7aDkweHiKEEO8cla/GjcBK+ckKxiZslIu3C4GCRW3DNfL0o7yW7kMQu9xlZ1kXRXLXtw==}
+ peerDependencies:
+ postcss: ^8.0.3
+
+ postcss-selector-not@8.0.1:
+ resolution: {integrity: sha512-kmVy/5PYVb2UOhy0+LqUYAhKj7DUGDpSWa5LZqlkWJaaAV+dxxsOG3+St0yNLu6vsKD7Dmqx+nWQt0iil89+WA==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ postcss: ^8.4
+
+ postcss-selector-parser@7.1.1:
+ resolution: {integrity: sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==}
+ engines: {node: '>=4'}
+
+ postcss-value-parser@4.2.0:
+ resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==}
+
+ postcss@8.5.10:
+ resolution: {integrity: sha512-pMMHxBOZKFU6HgAZ4eyGnwXF/EvPGGqUr0MnZ5+99485wwW41kW91A4LOGxSHhgugZmSChL5AlElNdwlNgcnLQ==}
+ engines: {node: ^10 || ^12 || >=14}
+
+ posthog-js@1.160.3:
+ resolution: {integrity: sha512-mGvxOIlWPtdPx8EI0MQ81wNKlnH2K0n4RqwQOl044b34BCKiFVzZ7Hc7geMuZNaRAvCi5/5zyGeWHcAYZQxiMQ==}
+
+ preact@10.29.1:
+ resolution: {integrity: sha512-gQCLc/vWroE8lIpleXtdJhTFDogTdZG9AjMUpVkDf2iTCNwYNWA+u16dL41TqUDJO4gm2IgrcMv3uTpjd4Pwmg==}
+
+ prelude-ls@1.2.1:
+ resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==}
+ engines: {node: '>= 0.8.0'}
+
+ prettier@3.8.3:
+ resolution: {integrity: sha512-7igPTM53cGHMW8xWuVTydi2KO233VFiTNyF5hLJqpilHfmn8C8gPf+PS7dUT64YcXFbiMGZxS9pCSxL/Dxm/Jw==}
+ engines: {node: '>=14'}
+ hasBin: true
+
+ pretty-format@27.5.1:
+ resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==}
+ engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+
+ process-nextick-args@2.0.1:
+ resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
+
+ process@0.11.10:
+ resolution: {integrity: sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==}
+ engines: {node: '>= 0.6.0'}
+
+ progress@2.0.3:
+ resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==}
+ engines: {node: '>=0.4.0'}
+
+ promise-map-series@0.3.0:
+ resolution: {integrity: sha512-3npG2NGhTc8BWBolLLf8l/92OxMGaRLbqvIh9wjCHhDXNvk4zsxaTaCpiCunW09qWPrN2zeNSNwRLVBrQQtutA==}
+ engines: {node: 10.* || >= 12.*}
+
+ prompts@2.4.2:
+ resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
+ engines: {node: '>= 6'}
+
+ prop-types@15.8.1:
+ resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
+
+ proxy-from-env@1.1.0:
+ resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
+
+ public-encrypt@4.0.3:
+ resolution: {integrity: sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==}
+
+ punycode@1.4.1:
+ resolution: {integrity: sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==}
+
+ punycode@2.3.1:
+ resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==}
+ engines: {node: '>=6'}
+
+ qrcode@1.5.4:
+ resolution: {integrity: sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==}
+ engines: {node: '>=10.13.0'}
+ hasBin: true
+
+ qs@6.15.1:
+ resolution: {integrity: sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg==}
+ engines: {node: '>=0.6'}
+
+ querystring-es3@0.2.1:
+ resolution: {integrity: sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==}
+ engines: {node: '>=0.4.x'}
+
+ queue-microtask@1.2.3:
+ resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
+
+ quick-temp@0.1.9:
+ resolution: {integrity: sha512-yI0h7tIhKVObn03kD+Ln9JFi4OljD28lfaOsTdfpTR0xzrhGOod+q66CjGafUqYX2juUfT9oHIGrTBBo22mkRA==}
+
+ randombytes@2.1.0:
+ resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
+
+ randomfill@1.0.4:
+ resolution: {integrity: sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==}
+
+ react-docgen-typescript@2.4.0:
+ resolution: {integrity: sha512-ZtAp5XTO5HRzQctjPU0ybY0RRCQO19X/8fxn3w7y2VVTUbGHDKULPTL4ky3vB05euSgG5NpALhEhDPvQ56wvXg==}
+ peerDependencies:
+ typescript: '>= 4.3.x'
+
+ react-docgen@8.0.3:
+ resolution: {integrity: sha512-aEZ9qP+/M+58x2qgfSFEWH1BxLyHe5+qkLNJOZQb5iGS017jpbRnoKhNRrXPeA6RfBrZO5wZrT9DMC1UqE1f1w==}
+ engines: {node: ^20.9.0 || >=22}
+
+ react-dom@19.2.5:
+ resolution: {integrity: sha512-J5bAZz+DXMMwW/wV3xzKke59Af6CHY7G4uYLN1OvBcKEsWOs4pQExj86BBKamxl/Ik5bx9whOrvBlSDfWzgSag==}
+ peerDependencies:
+ react: ^19.2.5
+
+ react-i18next@16.6.6:
+ resolution: {integrity: sha512-ZgL2HUoW34UKUkOV7uSQFE1CDnRPD+tCR3ywSuWH7u2iapnz86U8Bi3Vrs620qNDzCf1F47NxglCEkchCTDOHw==}
+ peerDependencies:
+ i18next: '>= 25.10.9'
+ react: '>= 16.8.0'
+ react-dom: '*'
+ react-native: '*'
+ typescript: ^5 || ^6
+ peerDependenciesMeta:
+ react-dom:
+ optional: true
+ react-native:
+ optional: true
+ typescript:
+ optional: true
+
+ react-is@16.13.1:
+ resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
+
+ react-is@17.0.2:
+ resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
+
+ react-refresh@0.17.0:
+ resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==}
+ engines: {node: '>=0.10.0'}
+
+ react-remove-scroll-bar@2.3.8:
+ resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ react-remove-scroll@2.7.2:
+ resolution: {integrity: sha512-Iqb9NjCCTt6Hf+vOdNIZGdTiH1QSqr27H/Ek9sv/a97gfueI/5h1s3yRi1nngzMUaOOToin5dI1dXKdXiF+u0Q==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ react-router-dom@7.14.1:
+ resolution: {integrity: sha512-ZkrQuwwhGibjQLqH1eCdyiZyLWglPxzxdl5tgwgKEyCSGC76vmAjleGocRe3J/MLfzMUIKwaFJWpFVJhK3d2xA==}
+ engines: {node: '>=20.0.0'}
+ peerDependencies:
+ react: '>=18'
+ react-dom: '>=18'
+
+ react-router@7.14.1:
+ resolution: {integrity: sha512-5BCvFskyAAVumqhEKh/iPhLOIkfxcEUz8WqFIARCkMg8hZZzDYX9CtwxXA0e+qT8zAxmMC0x3Ckb9iMONwc5jg==}
+ engines: {node: '>=20.0.0'}
+ peerDependencies:
+ react: '>=18'
+ react-dom: '>=18'
+ peerDependenciesMeta:
+ react-dom:
+ optional: true
+
+ react-style-singleton@2.2.3:
+ resolution: {integrity: sha512-b6jSvxvVnyptAiLjbkWLE/lOnR4lfTtDAl+eUC7RZy+QQWc6wRzIV2CE6xBuMmDxc2qIihtDCZD5NPOFl7fRBQ==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ react-use-measure@2.1.7:
+ resolution: {integrity: sha512-KrvcAo13I/60HpwGO5jpW7E9DfusKyLPLvuHlUyP5zqnmAPhNc6qTRjUQrdTADl0lpPpDVU2/Gg51UlOGHXbdg==}
+ peerDependencies:
+ react: '>=16.13'
+ react-dom: '>=16.13'
+ peerDependenciesMeta:
+ react-dom:
+ optional: true
+
+ react@19.2.5:
+ resolution: {integrity: sha512-llUJLzz1zTUBrskt2pwZgLq59AemifIftw4aB7JxOqf1HY2FDaGDxgwpAPVzHU1kdWabH7FauP4i1oEeer2WCA==}
+ engines: {node: '>=0.10.0'}
+
+ read-pkg-up@7.0.1:
+ resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==}
+ engines: {node: '>=8'}
+
+ read-pkg@5.2.0:
+ resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==}
+ engines: {node: '>=8'}
+
+ readable-stream@2.3.8:
+ resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
+
+ readable-stream@3.6.2:
+ resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
+ engines: {node: '>= 6'}
+
+ readdirp@3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+ engines: {node: '>=8.10.0'}
+
+ readdirp@4.1.2:
+ resolution: {integrity: sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==}
+ engines: {node: '>= 14.18.0'}
+
+ recast@0.23.11:
+ resolution: {integrity: sha512-YTUo+Flmw4ZXiWfQKGcwwc11KnoRAYgzAE2E7mXKCjSviTKShtxBsN6YUUBB2gtaBzKzeKunxhUwNHQuRryhWA==}
+ engines: {node: '>= 4'}
+
+ redent@3.0.0:
+ resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
+ engines: {node: '>=8'}
+
+ reflect.getprototypeof@1.0.10:
+ resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==}
+ engines: {node: '>= 0.4'}
+
+ regenerate-unicode-properties@10.2.2:
+ resolution: {integrity: sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==}
+ engines: {node: '>=4'}
+
+ regenerate@1.4.2:
+ resolution: {integrity: sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==}
+
+ regexp-tree@0.1.27:
+ resolution: {integrity: sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==}
+ hasBin: true
+
+ regexp.prototype.flags@1.5.4:
+ resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==}
+ engines: {node: '>= 0.4'}
+
+ regexparam@3.0.0:
+ resolution: {integrity: sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q==}
+ engines: {node: '>=8'}
+
+ regexpu-core@6.4.0:
+ resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==}
+ engines: {node: '>=4'}
+
+ regjsgen@0.8.0:
+ resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
+
+ regjsparser@0.10.0:
+ resolution: {integrity: sha512-qx+xQGZVsy55CH0a1hiVwHmqjLryfh7wQyF5HO07XJ9f7dQMY/gPQHhlyDkIzJKC+x2fUCpCcUODUUUFrm7SHA==}
+ hasBin: true
+
+ regjsparser@0.13.1:
+ resolution: {integrity: sha512-dLsljMd9sqwRkby8zhO1gSg3PnJIBFid8f4CQj/sXx+7cKx+E7u0PKhZ+U4wmhx7EfmtvnA318oVaIkAB1lRJw==}
+ hasBin: true
+
+ relateurl@0.2.7:
+ resolution: {integrity: sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==}
+ engines: {node: '>= 0.10'}
+
+ remove-trailing-separator@1.1.0:
+ resolution: {integrity: sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==}
+
+ replace-ext@2.0.0:
+ resolution: {integrity: sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==}
+ engines: {node: '>= 10'}
+
+ require-directory@2.1.1:
+ resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==}
+ engines: {node: '>=0.10.0'}
+
+ require-main-filename@2.0.0:
+ resolution: {integrity: sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==}
+
+ requireindex@1.2.0:
+ resolution: {integrity: sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==}
+ engines: {node: '>=0.10.5'}
+
+ reserved-identifiers@1.2.0:
+ resolution: {integrity: sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==}
+ engines: {node: '>=18'}
+
+ resolve-from@4.0.0:
+ resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
+ engines: {node: '>=4'}
+
+ resolve-options@2.0.0:
+ resolution: {integrity: sha512-/FopbmmFOQCfsCx77BRFdKOniglTiHumLgwvd6IDPihy1GKkadZbgQJBcTb2lMzSR1pndzd96b1nZrreZ7+9/A==}
+ engines: {node: '>= 10.13.0'}
+
+ resolve@1.22.12:
+ resolution: {integrity: sha512-TyeJ1zif53BPfHootBGwPRYT1RUt6oGWsaQr8UyZW/eAm9bKoijtvruSDEmZHm92CwS9nj7/fWttqPCgzep8CA==}
+ engines: {node: '>= 0.4'}
+ hasBin: true
+
+ resolve@2.0.0-next.6:
+ resolution: {integrity: sha512-3JmVl5hMGtJ3kMmB3zi3DL25KfkCEyy3Tw7Gmw7z5w8M9WlwoPFnIvwChzu1+cF3iaK3sp18hhPz8ANeimdJfA==}
+ engines: {node: '>= 0.4'}
+ hasBin: true
+
+ reusify@1.1.0:
+ resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
+ engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
+
+ rimraf@3.0.2:
+ resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
+ deprecated: Rimraf versions prior to v4 are no longer supported
+ hasBin: true
+
+ rimraf@5.0.10:
+ resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==}
+ hasBin: true
+
+ ripemd160@2.0.3:
+ resolution: {integrity: sha512-5Di9UC0+8h1L6ZD2d7awM7E/T4uA1fJRlx6zk/NvdCCVEoAnFqvHmCuNeIKoCeIixBX/q8uM+6ycDvF8woqosA==}
+ engines: {node: '>= 0.8'}
+
+ rolldown@1.0.0-rc.15:
+ resolution: {integrity: sha512-Ff31guA5zT6WjnGp0SXw76X6hzGRk/OQq2hE+1lcDe+lJdHSgnSX6nK3erbONHyCbpSj9a9E+uX/OvytZoWp2g==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ hasBin: true
+
+ rollup@4.60.1:
+ resolution: {integrity: sha512-VmtB2rFU/GroZ4oL8+ZqXgSA38O6GR8KSIvWmEFv63pQ0G6KaBH9s07PO8XTXP4vI+3UJUEypOfjkGfmSBBR0w==}
+ engines: {node: '>=18.0.0', npm: '>=8.0.0'}
+ hasBin: true
+
+ rrweb-cssom@0.8.0:
+ resolution: {integrity: sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==}
+
+ rsvp@3.2.1:
+ resolution: {integrity: sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==}
+
+ rsvp@4.8.5:
+ resolution: {integrity: sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==}
+ engines: {node: 6.* || >= 7.*}
+
+ run-applescript@7.1.0:
+ resolution: {integrity: sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==}
+ engines: {node: '>=18'}
+
+ run-parallel@1.2.0:
+ resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
+
+ rxjs-report-usage@1.0.6:
+ resolution: {integrity: sha512-omv1DIv5z1kV+zDAEjaDjWSkx8w5TbFp5NZoPwUipwzYVcor/4So9ZU3bUyQ1c8lxY5Q0Es/ztWW7PGjY7to0Q==}
+ hasBin: true
+
+ rxjs@7.8.2:
+ resolution: {integrity: sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==}
+
+ safe-array-concat@1.1.3:
+ resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==}
+ engines: {node: '>=0.4'}
+
+ safe-buffer@5.1.2:
+ resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
+
+ safe-buffer@5.2.1:
+ resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
+
+ safe-push-apply@1.0.0:
+ resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==}
+ engines: {node: '>= 0.4'}
+
+ safe-regex-test@1.1.0:
+ resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==}
+ engines: {node: '>= 0.4'}
+
+ safer-buffer@2.1.2:
+ resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
+
+ sass@1.99.0:
+ resolution: {integrity: sha512-kgW13M54DUB7IsIRM5LvJkNlpH+WhMpooUcaWGFARkF1Tc82v9mIWkCbCYf+MBvpIUBSeSOTilpZjEPr2VYE6Q==}
+ engines: {node: '>=14.0.0'}
+ hasBin: true
+
+ saxes@6.0.0:
+ resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==}
+ engines: {node: '>=v12.22.7'}
+
+ scheduler@0.27.0:
+ resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==}
+
+ sdp-transform@2.15.0:
+ resolution: {integrity: sha512-KrOH82c/W+GYQ0LHqtr3caRpM3ITglq3ljGUIb8LTki7ByacJZ9z+piSGiwZDsRyhQbYBOBJgr2k6X4BZXi3Kw==}
+ hasBin: true
+
+ sdp-transform@3.0.0:
+ resolution: {integrity: sha512-gfYVRGxjHkGF2NPeUWHw5u6T/KGFtS5/drPms73gaSuMaVHKCY3lpLnGDfswVQO0kddeePoti09AwhYP4zA8dQ==}
+ hasBin: true
+
+ sdp@3.2.2:
+ resolution: {integrity: sha512-xZocWwfyp4hkbN4hLWxMjmv2Q8aNa9MhmOZ7L9aCZPT+dZsgRr6wZRrSYE3HTdyk/2pZKPSgqI7ns7Een1xMSA==}
+
+ semver@5.7.2:
+ resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==}
+ hasBin: true
+
+ semver@6.3.1:
+ resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
+ hasBin: true
+
+ semver@7.7.4:
+ resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==}
+ engines: {node: '>=10'}
+ hasBin: true
+
+ set-blocking@2.0.0:
+ resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
+
+ set-cookie-parser@2.7.2:
+ resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==}
+
+ set-function-length@1.2.2:
+ resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
+ engines: {node: '>= 0.4'}
+
+ set-function-name@2.0.2:
+ resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
+ engines: {node: '>= 0.4'}
+
+ set-proto@1.0.0:
+ resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==}
+ engines: {node: '>= 0.4'}
+
+ setimmediate@1.0.5:
+ resolution: {integrity: sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==}
+
+ sha.js@2.4.12:
+ resolution: {integrity: sha512-8LzC5+bvI45BjpfXU8V5fdU2mfeKiQe1D1gIMn7XUlF3OTUrpdJpPPH4EMAnF0DsHHdSZqCdSss5qCmJKuiO3w==}
+ engines: {node: '>= 0.10'}
+ hasBin: true
+
+ shebang-command@2.0.0:
+ resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==}
+ engines: {node: '>=8'}
+
+ shebang-regex@3.0.0:
+ resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
+ engines: {node: '>=8'}
+
+ side-channel-list@1.0.1:
+ resolution: {integrity: sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-map@1.0.1:
+ resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==}
+ engines: {node: '>= 0.4'}
+
+ side-channel-weakmap@1.0.2:
+ resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==}
+ engines: {node: '>= 0.4'}
+
+ side-channel@1.1.0:
+ resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
+ engines: {node: '>= 0.4'}
+
+ siginfo@2.0.0:
+ resolution: {integrity: sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==}
+
+ signal-exit@4.1.0:
+ resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==}
+ engines: {node: '>=14'}
+
+ sisteransi@1.0.5:
+ resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==}
+
+ slash@3.0.0:
+ resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==}
+ engines: {node: '>=8'}
+
+ smol-toml@1.6.1:
+ resolution: {integrity: sha512-dWUG8F5sIIARXih1DTaQAX4SsiTXhInKf1buxdY9DIg4ZYPZK5nGM1VRIYmEbDbsHt7USo99xSLFu5Q1IqTmsg==}
+ engines: {node: '>= 18'}
+
+ snake-case@3.0.4:
+ resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==}
+
+ sort-keys@5.1.0:
+ resolution: {integrity: sha512-aSbHV0DaBcr7u0PVHXzM6NbZNAtrr9sF6+Qfs9UUVG7Ll3jQ6hHi8F/xqIIcn2rvIVbr0v/2zyjSdwSV47AgLQ==}
+ engines: {node: '>=12'}
+
+ source-map-js@1.2.1:
+ resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==}
+ engines: {node: '>=0.10.0'}
+
+ source-map-support@0.5.21:
+ resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
+
+ source-map@0.6.1:
+ resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
+ engines: {node: '>=0.10.0'}
+
+ spdx-correct@3.2.0:
+ resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
+
+ spdx-exceptions@2.5.0:
+ resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
+
+ spdx-expression-parse@3.0.1:
+ resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
+
+ spdx-expression-parse@4.0.0:
+ resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==}
+
+ spdx-license-ids@3.0.23:
+ resolution: {integrity: sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==}
+
+ sprintf-js@1.1.3:
+ resolution: {integrity: sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==}
+
+ stackback@0.0.2:
+ resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
+
+ std-env@4.1.0:
+ resolution: {integrity: sha512-Rq7ybcX2RuC55r9oaPVEW7/xu3tj8u4GeBYHBWCychFtzMIr86A7e3PPEBPT37sHStKX3+TiX/Fr/ACmJLVlLQ==}
+
+ stop-iteration-iterator@1.1.0:
+ resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==}
+ engines: {node: '>= 0.4'}
+
+ storybook@10.3.5:
+ resolution: {integrity: sha512-uBSZu/GZa9aEIW3QMGvdQPMZWhGxSe4dyRWU8B3/Vd47Gy/XLC7tsBxRr13txmmPOEDHZR94uLuq0H50fvuqBw==}
+ hasBin: true
+ peerDependencies:
+ prettier: ^2 || ^3
+ peerDependenciesMeta:
+ prettier:
+ optional: true
+
+ stream-browserify@3.0.0:
+ resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==}
+
+ stream-composer@1.0.2:
+ resolution: {integrity: sha512-bnBselmwfX5K10AH6L4c8+S5lgZMWI7ZYrz2rvYjCPB2DIMC4Ig8OpxGpNJSxRZ58oti7y1IcNvjBAz9vW5m4w==}
+
+ stream-http@3.2.0:
+ resolution: {integrity: sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==}
+
+ streamx@2.25.0:
+ resolution: {integrity: sha512-0nQuG6jf1w+wddNEEXCF4nTg3LtufWINB5eFEN+5TNZW7KWJp6x87+JFL43vaAUPyCfH1wID+mNVyW6OHtFamg==}
+
+ string-width@4.2.3:
+ resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==}
+ engines: {node: '>=8'}
+
+ string-width@5.1.2:
+ resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==}
+ engines: {node: '>=12'}
+
+ string.prototype.includes@2.0.1:
+ resolution: {integrity: sha512-o7+c9bW6zpAdJHTtujeePODAhkuicdAryFsfVKwA+wGw89wJ4GTY484WTucM9hLtDEOpOvI+aHnzqnC5lHp4Rg==}
+ engines: {node: '>= 0.4'}
+
+ string.prototype.matchall@4.0.12:
+ resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==}
+ engines: {node: '>= 0.4'}
+
+ string.prototype.repeat@1.0.0:
+ resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==}
+
+ string.prototype.trim@1.2.10:
+ resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==}
+ engines: {node: '>= 0.4'}
+
+ string.prototype.trimend@1.0.9:
+ resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==}
+ engines: {node: '>= 0.4'}
+
+ string.prototype.trimstart@1.0.8:
+ resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
+ engines: {node: '>= 0.4'}
+
+ string_decoder@1.1.1:
+ resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==}
+
+ string_decoder@1.3.0:
+ resolution: {integrity: sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==}
+
+ strip-ansi@6.0.1:
+ resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==}
+ engines: {node: '>=8'}
+
+ strip-ansi@7.2.0:
+ resolution: {integrity: sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==}
+ engines: {node: '>=12'}
+
+ strip-bom@3.0.0:
+ resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==}
+ engines: {node: '>=4'}
+
+ strip-indent@3.0.0:
+ resolution: {integrity: sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==}
+ engines: {node: '>=8'}
+
+ strip-indent@4.1.1:
+ resolution: {integrity: sha512-SlyRoSkdh1dYP0PzclLE7r0M9sgbFKKMFXpFRUMNuKhQSbC6VQIGzq3E0qsfvGJaUFJPGv6Ws1NZ/haTAjfbMA==}
+ engines: {node: '>=12'}
+
+ strip-json-comments@3.1.1:
+ resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==}
+ engines: {node: '>=8'}
+
+ strip-json-comments@5.0.3:
+ resolution: {integrity: sha512-1tB5mhVo7U+ETBKNf92xT4hrQa3pm0MZ0PQvuDnWgAAGHDsfp4lPSpiS6psrSiet87wyGPh9ft6wmhOMQ0hDiw==}
+ engines: {node: '>=14.16'}
+
+ supports-color@7.2.0:
+ resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
+ engines: {node: '>=8'}
+
+ supports-preserve-symlinks-flag@1.0.0:
+ resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
+ engines: {node: '>= 0.4'}
+
+ svg-parser@2.0.4:
+ resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==}
+
+ symbol-tree@3.2.4:
+ resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
+
+ symlink-or-copy@1.3.1:
+ resolution: {integrity: sha512-0K91MEXFpBUaywiwSSkmKjnGcasG/rVBXFLJz5DrgGabpYD6N+3yZrfD6uUIfpuTu65DZLHi7N8CizHc07BPZA==}
+
+ tabbable@6.4.0:
+ resolution: {integrity: sha512-05PUHKSNE8ou2dwIxTngl4EzcnsCDZGJ/iCLtDflR/SHB/ny14rXc+qU5P4mG9JkusiV7EivzY9Mhm55AzAvCg==}
+
+ teex@1.0.1:
+ resolution: {integrity: sha512-eYE6iEI62Ni1H8oIa7KlDU6uQBtqr4Eajni3wX7rpfXD8ysFx8z0+dri+KWEPWpBsxXfxu58x/0jvTVT1ekOSg==}
+
+ terser@5.46.1:
+ resolution: {integrity: sha512-vzCjQO/rgUuK9sf8VJZvjqiqiHFaZLnOiimmUuOKODxWL8mm/xua7viT7aqX7dgPY60otQjUotzFMmCB4VdmqQ==}
+ engines: {node: '>=10'}
+ hasBin: true
+
+ text-decoder@1.2.7:
+ resolution: {integrity: sha512-vlLytXkeP4xvEq2otHeJfSQIRyWxo/oZGEbXrtEEF9Hnmrdly59sUbzZ/QgyWuLYHctCHxFF4tRQZNQ9k60ExQ==}
+
+ text-table@0.2.0:
+ resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==}
+
+ through2@2.0.5:
+ resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==}
+
+ timers-browserify@2.0.12:
+ resolution: {integrity: sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==}
+ engines: {node: '>=0.6.0'}
+
+ tiny-invariant@1.3.3:
+ resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==}
+
+ tinybench@2.9.0:
+ resolution: {integrity: sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==}
+
+ tinyexec@1.1.1:
+ resolution: {integrity: sha512-VKS/ZaQhhkKFMANmAOhhXVoIfBXblQxGX1myCQ2faQrfmobMftXeJPcZGp0gS07ocvGJWDLZGyOZDadDBqYIJg==}
+ engines: {node: '>=18'}
+
+ tinyglobby@0.2.16:
+ resolution: {integrity: sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==}
+ engines: {node: '>=12.0.0'}
+
+ tinyrainbow@2.0.0:
+ resolution: {integrity: sha512-op4nsTR47R6p0vMUUoYl/a+ljLFVtlfaXkLQmqfLR1qHma1h/ysYk4hEXZ880bf2CYgTskvTa/e196Vd5dDQXw==}
+ engines: {node: '>=14.0.0'}
+
+ tinyrainbow@3.1.0:
+ resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==}
+ engines: {node: '>=14.0.0'}
+
+ tinyspy@4.0.4:
+ resolution: {integrity: sha512-azl+t0z7pw/z958Gy9svOTuzqIk6xq+NSheJzn5MMWtWTFywIacg2wUlzKFGtt3cthx0r2SxMK0yzJOR0IES7Q==}
+ engines: {node: '>=14.0.0'}
+
+ tldts-core@6.1.86:
+ resolution: {integrity: sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==}
+
+ tldts@6.1.86:
+ resolution: {integrity: sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==}
+ hasBin: true
+
+ to-buffer@1.2.2:
+ resolution: {integrity: sha512-db0E3UJjcFhpDhAF4tLo03oli3pwl3dbnzXOUIlRKrp+ldk/VUxzpWYZENsw2SZiuBjHAk7DfB0VU7NKdpb6sw==}
+ engines: {node: '>= 0.4'}
+
+ to-regex-range@5.0.1:
+ resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
+ engines: {node: '>=8.0'}
+
+ to-through@3.0.0:
+ resolution: {integrity: sha512-y8MN937s/HVhEoBU1SxfHC+wxCHkV1a9gW8eAdTadYh/bGyesZIVcbjI+mSpFbSVwQici/XjBjuUyri1dnXwBw==}
+ engines: {node: '>=10.13.0'}
+
+ to-valid-identifier@1.0.0:
+ resolution: {integrity: sha512-41wJyvKep3yT2tyPqX/4blcfybknGB4D+oETKLs7Q76UiPqRpUJK3hr1nxelyYO0PHKVzJwlu0aCeEAsGI6rpw==}
+ engines: {node: '>=20'}
+
+ toggle-selection@1.0.6:
+ resolution: {integrity: sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==}
+
+ tough-cookie@5.1.2:
+ resolution: {integrity: sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==}
+ engines: {node: '>=16'}
+
+ tr46@0.0.3:
+ resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
+
+ tr46@5.1.1:
+ resolution: {integrity: sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==}
+ engines: {node: '>=18'}
+
+ ts-api-utils@2.5.0:
+ resolution: {integrity: sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==}
+ engines: {node: '>=18.12'}
+ peerDependencies:
+ typescript: '>=4.8.4'
+
+ ts-dedent@2.2.0:
+ resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==}
+ engines: {node: '>=6.10'}
+
+ tsconfig-paths@3.15.0:
+ resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
+
+ tsconfig-paths@4.2.0:
+ resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==}
+ engines: {node: '>=6'}
+
+ tslib@1.14.1:
+ resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==}
+
+ tslib@2.8.1:
+ resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
+
+ tsutils-etc@1.4.2:
+ resolution: {integrity: sha512-2Dn5SxTDOu6YWDNKcx1xu2YUy6PUeKrWZB/x2cQ8vY2+iz3JRembKn/iZ0JLT1ZudGNwQQvtFX9AwvRHbXuPUg==}
+ hasBin: true
+ peerDependencies:
+ tsutils: ^3.0.0
+ typescript: '>=4.0.0'
+
+ tsutils@3.21.0:
+ resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==}
+ engines: {node: '>= 6'}
+ peerDependencies:
+ typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta'
+
+ tty-browserify@0.0.1:
+ resolution: {integrity: sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==}
+
+ tunnel@0.0.6:
+ resolution: {integrity: sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==}
+ engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'}
+
+ type-check@0.4.0:
+ resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==}
+ engines: {node: '>= 0.8.0'}
+
+ type-fest@0.20.2:
+ resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
+ engines: {node: '>=10'}
+
+ type-fest@0.6.0:
+ resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==}
+ engines: {node: '>=8'}
+
+ type-fest@0.8.1:
+ resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
+ engines: {node: '>=8'}
+
+ typed-array-buffer@1.0.3:
+ resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==}
+ engines: {node: '>= 0.4'}
+
+ typed-array-byte-length@1.0.3:
+ resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==}
+ engines: {node: '>= 0.4'}
+
+ typed-array-byte-offset@1.0.4:
+ resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==}
+ engines: {node: '>= 0.4'}
+
+ typed-array-length@1.0.7:
+ resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==}
+ engines: {node: '>= 0.4'}
+
+ typed-emitter@2.1.0:
+ resolution: {integrity: sha512-g/KzbYKbH5C2vPkaXGu8DJlHrGKHLsM25Zg9WuC9pMGfuvT+X25tZQWo5fK1BjBm8+UrVE9LDCvaY0CQk+fXDA==}
+
+ typescript-eslint-language-service@5.0.5:
+ resolution: {integrity: sha512-b7gWXpwSTqMVKpPX3WttNZEyVAMKs/2jsHKF79H+qaD6mjzCyU5jboJe/lOZgLJD+QRsXCr0GjIVxvl5kI1NMw==}
+ peerDependencies:
+ '@typescript-eslint/parser': '>= 5.0.0'
+ eslint: '>= 8.0.0'
+ typescript: '>= 4.0.0'
+
+ typescript@5.9.3:
+ resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==}
+ engines: {node: '>=14.17'}
+ hasBin: true
+
+ unbash@2.2.0:
+ resolution: {integrity: sha512-X2wH19RAPZE3+ldGicOkoj/SIA83OIxcJ6Cuaw23hf8Xc6fQpvZXY0SftE2JgS0QhYLUG4uwodSI3R53keyh7w==}
+ engines: {node: '>=14'}
+
+ unbox-primitive@1.1.0:
+ resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==}
+ engines: {node: '>= 0.4'}
+
+ underscore.string@3.3.6:
+ resolution: {integrity: sha512-VoC83HWXmCrF6rgkyxS9GHv8W9Q5nhMKho+OadDJGzL2oDYbYEppBaCMH6pFlwLeqj2QS+hhkw2kpXkSdD1JxQ==}
+
+ undici-types@7.16.0:
+ resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==}
+
+ undici@5.29.0:
+ resolution: {integrity: sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==}
+ engines: {node: '>=14.0'}
+
+ undici@7.25.0:
+ resolution: {integrity: sha512-xXnp4kTyor2Zq+J1FfPI6Eq3ew5h6Vl0F/8d9XU5zZQf1tX9s2Su1/3PiMmUANFULpmksxkClamIZcaUqryHsQ==}
+ engines: {node: '>=20.18.1'}
+
+ unhomoglyph@1.0.6:
+ resolution: {integrity: sha512-7uvcWI3hWshSADBu4JpnyYbTVc7YlhF5GDW/oPD5AxIxl34k4wXR3WDkPnzLxkN32LiTCTKMQLtKVZiwki3zGg==}
+
+ unicode-canonical-property-names-ecmascript@2.0.1:
+ resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
+ engines: {node: '>=4'}
+
+ unicode-match-property-ecmascript@2.0.0:
+ resolution: {integrity: sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==}
+ engines: {node: '>=4'}
+
+ unicode-match-property-value-ecmascript@2.2.1:
+ resolution: {integrity: sha512-JQ84qTuMg4nVkx8ga4A16a1epI9H6uTXAknqxkGF/aFfRLw1xC/Bp24HNLaZhHSkWd3+84t8iXnp1J0kYcZHhg==}
+ engines: {node: '>=4'}
+
+ unicode-property-aliases-ecmascript@2.2.0:
+ resolution: {integrity: sha512-hpbDzxUY9BFwX+UeBnxv3Sh1q7HFxj48DTmXchNgRa46lO8uj3/1iEn3MiNUYTg1g9ctIqXCCERn8gYZhHC5lQ==}
+ engines: {node: '>=4'}
+
+ unique-names-generator@4.7.1:
+ resolution: {integrity: sha512-lMx9dX+KRmG8sq6gulYYpKWZc9RlGsgBR6aoO8Qsm3qvkSJ+3rAymr+TnV8EDMrIrwuFJ4kruzMWM/OpYzPoow==}
+ engines: {node: '>=8'}
+
+ universal-user-agent@6.0.1:
+ resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==}
+
+ universalify@0.1.2:
+ resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==}
+ engines: {node: '>= 4.0.0'}
+
+ universalify@2.0.1:
+ resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
+ engines: {node: '>= 10.0.0'}
+
+ unplugin@1.0.1:
+ resolution: {integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==}
+
+ unplugin@1.16.1:
+ resolution: {integrity: sha512-4/u/j4FrCKdi17jaxuJA0jClGxB1AvU2hw/IuayPc4ay1XGaJs/rbb4v5WKwAjNifjmXK9PIFyuPiaK8azyR9w==}
+ engines: {node: '>=14.0.0'}
+
+ unplugin@2.3.11:
+ resolution: {integrity: sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==}
+ engines: {node: '>=18.12.0'}
+
+ update-browserslist-db@1.2.3:
+ resolution: {integrity: sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==}
+ hasBin: true
+ peerDependencies:
+ browserslist: '>= 4.21.0'
+
+ uri-js@4.4.1:
+ resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==}
+
+ url@0.11.4:
+ resolution: {integrity: sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==}
+ engines: {node: '>= 0.4'}
+
+ use-callback-ref@1.3.3:
+ resolution: {integrity: sha512-jQL3lRnocaFtu3V00JToYz/4QkNWswxijDaCVNZRiRTO3HQDLsdu1ZtmIUvV4yPp+rvWm5j0y0TG/S61cuijTg==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ use-sidecar@1.1.3:
+ resolution: {integrity: sha512-Fedw0aZvkhynoPYlA5WXrMCAMm+nSWdZt6lzJQ7Ok8S6Q+VsHmHpRWndVRJ8Be0ZbkfPc5LRYH+5XrzXcEeLRQ==}
+ engines: {node: '>=10'}
+ peerDependencies:
+ '@types/react': '*'
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
+ peerDependenciesMeta:
+ '@types/react':
+ optional: true
+
+ use-sync-external-store@1.6.0:
+ resolution: {integrity: sha512-Pp6GSwGP/NrPIrxVFAIkOQeyw8lFenOHijQWkUTrDvrF4ALqylP2C/KCkeS9dpUM3KvYRQhna5vt7IL95+ZQ9w==}
+ peerDependencies:
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+
+ usehooks-ts@3.1.1:
+ resolution: {integrity: sha512-I4diPp9Cq6ieSUH2wu+fDAVQO43xwtulo+fKEidHUwZPnYImbtkTjzIJYcDcJqxgmX31GVqNFURodvcgHcW0pA==}
+ engines: {node: '>=16.15.0'}
+ peerDependencies:
+ react: ^16.8.0 || ^17 || ^18 || ^19 || ^19.0.0-rc
+
+ util-deprecate@1.0.2:
+ resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
+
+ util@0.12.5:
+ resolution: {integrity: sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==}
+
+ uuid@13.0.0:
+ resolution: {integrity: sha512-XQegIaBTVUjSHliKqcnFqYypAd4S+WCYt5NIeRs6w/UAry7z8Y9j5ZwRRL4kzq9U3sD6v+85er9FvkEaBpji2w==}
+ hasBin: true
+
+ validate-npm-package-license@3.0.4:
+ resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
+
+ value-or-function@4.0.0:
+ resolution: {integrity: sha512-aeVK81SIuT6aMJfNo9Vte8Dw0/FZINGBV8BfCraGtqVxIeLAEhJyoWs8SmvRVmXfGss2PmmOwZCuBPbZR+IYWg==}
+ engines: {node: '>= 10.13.0'}
+
+ vaul@1.1.2:
+ resolution: {integrity: sha512-ZFkClGpWyI2WUQjdLJ/BaGuV6AVQiJ3uELGk3OYtP+B6yCO7Cmn9vPFXVJkRaGkOJu3m8bQMgtyzNHixULceQA==}
+ peerDependencies:
+ react: ^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc
+ react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc
+
+ vinyl-contents@2.0.0:
+ resolution: {integrity: sha512-cHq6NnGyi2pZ7xwdHSW1v4Jfnho4TEGtxZHw01cmnc8+i7jgR6bRnED/LbrKan/Q7CvVLbnvA5OepnhbpjBZ5Q==}
+ engines: {node: '>=10.13.0'}
+
+ vinyl-fs@4.0.2:
+ resolution: {integrity: sha512-XRFwBLLTl8lRAOYiBqxY279wY46tVxLaRhSwo3GzKEuLz1giffsOquWWboD/haGf5lx+JyTigCFfe7DWHoARIA==}
+ engines: {node: '>=10.13.0'}
+
+ vinyl-sourcemap@2.0.0:
+ resolution: {integrity: sha512-BAEvWxbBUXvlNoFQVFVHpybBbjW1r03WhohJzJDSfgrrK5xVYIDTan6xN14DlyImShgDRv2gl9qhM6irVMsV0Q==}
+ engines: {node: '>=10.13.0'}
+
+ vinyl@3.0.1:
+ resolution: {integrity: sha512-0QwqXteBNXgnLCdWdvPQBX6FXRHtIH3VhJPTd5Lwn28tJXc34YqSCWUmkOvtJHBmB3gGoPtrOKk3Ts8/kEZ9aA==}
+ engines: {node: '>=10.13.0'}
+
+ vite-plugin-generate-file@0.3.1:
+ resolution: {integrity: sha512-tiA3gkPM21MS2+RyqsBMT33GSlM9LM1TJjf6vGvV/e/ml3e3vTKfuH3l2N0NpUgcayvj1fXnmlo5YBuahA6bsg==}
+
+ vite-plugin-html@3.2.2:
+ resolution: {integrity: sha512-vb9C9kcdzcIo/Oc3CLZVS03dL5pDlOFuhGlZYDCJ840BhWl/0nGeZWf3Qy7NlOayscY4Cm/QRgULCQkEZige5Q==}
+ peerDependencies:
+ vite: '>=2.0.0'
+
+ vite-plugin-node-polyfills@0.26.0:
+ resolution: {integrity: sha512-BAe5YzJf368XGev02hDvioidx4uVH8dqEJlG73bjQSxM26/AQnGcKFomq9n3vGq5yqpSHKN4h1XQNxx9l98mBg==}
+ peerDependencies:
+ vite: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
+
+ vite-plugin-node-stdlib-browser@0.2.1:
+ resolution: {integrity: sha512-6u2i613Dkqj5KaTNIrnZvE6y3/awWAp0S5TjucTvGxdhetftB1Mgvblc+nwYzlw6sntPlac8UOC7ttXNh+LZKA==}
+ peerDependencies:
+ node-stdlib-browser: ^1.2.0
+ vite: ^2.0.0 || ^3.0.0 || ^4.0.0
+
+ vite-plugin-svgr@4.5.0:
+ resolution: {integrity: sha512-W+uoSpmVkSmNOGPSsDCWVW/DDAyv+9fap9AZXBvWiQqrboJ08j2vh0tFxTD/LjwqwAd3yYSVJgm54S/1GhbdnA==}
+ peerDependencies:
+ vite: '>=2.6.0'
+
+ vite-plugin-wasm@3.6.0:
+ resolution: {integrity: sha512-mL/QPziiIA4RAA6DkaZZzOstdwbW5jO4Vz7Zenj0wieKWBlNvIvX5L5ljum9lcUX0ShNfBgCNLKTjNkRVVqcsw==}
+ peerDependencies:
+ vite: ^2 || ^3 || ^4 || ^5 || ^6 || ^7 || ^8
+
+ vite@8.0.8:
+ resolution: {integrity: sha512-dbU7/iLVa8KZALJyLOBOQ88nOXtNG8vxKuOT4I2mD+Ya70KPceF4IAmDsmU0h1Qsn5bPrvsY9HJstCRh3hG6Uw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ hasBin: true
+ peerDependencies:
+ '@types/node': ^20.19.0 || >=22.12.0
+ '@vitejs/devtools': ^0.1.0
+ esbuild: ^0.27.7
+ jiti: '>=1.21.0'
+ less: ^4.0.0
+ sass: ^1.70.0
+ sass-embedded: ^1.70.0
+ stylus: '>=0.54.8'
+ sugarss: ^5.0.0
+ terser: ^5.16.0
+ tsx: ^4.8.1
+ yaml: ^2.4.2
+ peerDependenciesMeta:
+ '@types/node':
+ optional: true
+ '@vitejs/devtools':
+ optional: true
+ esbuild:
+ optional: true
+ jiti:
+ optional: true
+ less:
+ optional: true
+ sass:
+ optional: true
+ sass-embedded:
+ optional: true
+ stylus:
+ optional: true
+ sugarss:
+ optional: true
+ terser:
+ optional: true
+ tsx:
+ optional: true
+ yaml:
+ optional: true
+
+ vitest-axe@1.0.0-pre.5:
+ resolution: {integrity: sha512-eUGxjpXnceha9lkqIVyMgOUeDmWU9LVjNiLTjAjDtMew0WbaBDtixoUvdftOhZfqRI03G2Ay4ZxaU1KG6jNCiQ==}
+ peerDependencies:
+ vitest: '>=1'
+
+ vitest@4.1.4:
+ resolution: {integrity: sha512-tFuJqTxKb8AvfyqMfnavXdzfy3h3sWZRWwfluGbkeR7n0HUev+FmNgZ8SDrRBTVrVCjgH5cA21qGbCffMNtWvg==}
+ engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0}
+ hasBin: true
+ peerDependencies:
+ '@edge-runtime/vm': '*'
+ '@opentelemetry/api': ^1.9.0
+ '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0
+ '@vitest/browser-playwright': 4.1.4
+ '@vitest/browser-preview': 4.1.4
+ '@vitest/browser-webdriverio': 4.1.4
+ '@vitest/coverage-istanbul': 4.1.4
+ '@vitest/coverage-v8': 4.1.4
+ '@vitest/ui': 4.1.4
+ happy-dom: '*'
+ jsdom: '*'
+ vite: ^6.0.0 || ^7.0.0 || ^8.0.0
+ peerDependenciesMeta:
+ '@edge-runtime/vm':
+ optional: true
+ '@opentelemetry/api':
+ optional: true
+ '@types/node':
+ optional: true
+ '@vitest/browser-playwright':
+ optional: true
+ '@vitest/browser-preview':
+ optional: true
+ '@vitest/browser-webdriverio':
+ optional: true
+ '@vitest/coverage-istanbul':
+ optional: true
+ '@vitest/coverage-v8':
+ optional: true
+ '@vitest/ui':
+ optional: true
+ happy-dom:
+ optional: true
+ jsdom:
+ optional: true
+
+ vm-browserify@1.1.2:
+ resolution: {integrity: sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==}
+
+ void-elements@3.1.0:
+ resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==}
+ engines: {node: '>=0.10.0'}
+
+ w3c-xmlserializer@5.0.0:
+ resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==}
+ engines: {node: '>=18'}
+
+ walk-sync@2.2.0:
+ resolution: {integrity: sha512-IC8sL7aB4/ZgFcGI2T1LczZeFWZ06b3zoHH7jBPyHxOtIIz1jppWHjjEXkOFvFojBVAK9pV7g47xOZ4LW3QLfg==}
+ engines: {node: 8.* || >= 10.*}
+
+ walk-up-path@4.0.0:
+ resolution: {integrity: sha512-3hu+tD8YzSLGuFYtPRb48vdhKMi0KQV5sn+uWr8+7dMEq/2G/dtLrdDinkLjqq5TIbIBjYJ4Ax/n3YiaW7QM8A==}
+ engines: {node: 20 || >=22}
+
+ web-vitals@4.2.4:
+ resolution: {integrity: sha512-r4DIlprAGwJ7YM11VZp4R884m0Vmgr6EAKe3P+kO0PPj3Unqyvv59rczf6UiGcb9Z8QxZVcqKNwv/g0WNdWwsw==}
+
+ webidl-conversions@3.0.1:
+ resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
+
+ webidl-conversions@7.0.0:
+ resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
+ engines: {node: '>=12'}
+
+ webpack-sources@3.3.4:
+ resolution: {integrity: sha512-7tP1PdV4vF+lYPnkMR0jMY5/la2ub5Fc/8VQrrU+lXkiM6C4TjVfGw7iKfyhnTQOsD+6Q/iKw0eFciziRgD58Q==}
+ engines: {node: '>=10.13.0'}
+
+ webpack-virtual-modules@0.5.0:
+ resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==}
+
+ webpack-virtual-modules@0.6.2:
+ resolution: {integrity: sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==}
+
+ webrtc-adapter@9.0.5:
+ resolution: {integrity: sha512-U9vjByy/sK2OMXu5mmfuZFKTMIUQe34c0JXRO+oDrxJTsntdYT2iIFwYMOV7HhMTuktcZLGf2W1N/OcSf9ssWg==}
+ engines: {node: '>=6.0.0', npm: '>=3.10.0'}
+
+ whatwg-encoding@3.1.1:
+ resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==}
+ engines: {node: '>=18'}
+ deprecated: Use @exodus/bytes instead for a more spec-conformant and faster implementation
+
+ whatwg-mimetype@4.0.0:
+ resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==}
+ engines: {node: '>=18'}
+
+ whatwg-url@14.2.0:
+ resolution: {integrity: sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==}
+ engines: {node: '>=18'}
+
+ whatwg-url@5.0.0:
+ resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
+
+ which-boxed-primitive@1.1.1:
+ resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==}
+ engines: {node: '>= 0.4'}
+
+ which-builtin-type@1.2.1:
+ resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==}
+ engines: {node: '>= 0.4'}
+
+ which-collection@1.0.2:
+ resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==}
+ engines: {node: '>= 0.4'}
+
+ which-module@2.0.1:
+ resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==}
+
+ which-typed-array@1.1.20:
+ resolution: {integrity: sha512-LYfpUkmqwl0h9A2HL09Mms427Q1RZWuOHsukfVcKRq9q95iQxdw0ix1JQrqbcDR9PH1QDwf5Qo8OZb5lksZ8Xg==}
+ engines: {node: '>= 0.4'}
+
+ which@2.0.2:
+ resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
+ engines: {node: '>= 8'}
+ hasBin: true
+
+ why-is-node-running@2.3.0:
+ resolution: {integrity: sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==}
+ engines: {node: '>=8'}
+ hasBin: true
+
+ word-wrap@1.2.5:
+ resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
+ engines: {node: '>=0.10.0'}
+
+ wrap-ansi@6.2.0:
+ resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==}
+ engines: {node: '>=8'}
+
+ wrap-ansi@7.0.0:
+ resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==}
+ engines: {node: '>=10'}
+
+ wrap-ansi@8.1.0:
+ resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
+ engines: {node: '>=12'}
+
+ wrappy@1.0.2:
+ resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==}
+
+ ws@8.20.0:
+ resolution: {integrity: sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA==}
+ engines: {node: '>=10.0.0'}
+ peerDependencies:
+ bufferutil: ^4.0.1
+ utf-8-validate: '>=5.0.2'
+ peerDependenciesMeta:
+ bufferutil:
+ optional: true
+ utf-8-validate:
+ optional: true
+
+ wsl-utils@0.1.0:
+ resolution: {integrity: sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==}
+ engines: {node: '>=18'}
+
+ xml-name-validator@5.0.0:
+ resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==}
+ engines: {node: '>=18'}
+
+ xmlchars@2.2.0:
+ resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
+
+ xtend@4.0.2:
+ resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
+ engines: {node: '>=0.4'}
+
+ y18n@4.0.3:
+ resolution: {integrity: sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==}
+
+ y18n@5.0.8:
+ resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
+ engines: {node: '>=10'}
+
+ yallist@3.1.1:
+ resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
+
+ yaml@2.8.3:
+ resolution: {integrity: sha512-AvbaCLOO2Otw/lW5bmh9d/WEdcDFdQp2Z2ZUH3pX9U2ihyUY0nvLv7J6TrWowklRGPYbB/IuIMfYgxaCPg5Bpg==}
+ engines: {node: '>= 14.6'}
+ hasBin: true
+
+ yargs-parser@18.1.3:
+ resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==}
+ engines: {node: '>=6'}
+
+ yargs-parser@21.1.1:
+ resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+ engines: {node: '>=12'}
+
+ yargs@15.4.1:
+ resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==}
+ engines: {node: '>=8'}
+
+ yargs@17.7.2:
+ resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
+ engines: {node: '>=12'}
+
+ yocto-queue@0.1.0:
+ resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+ engines: {node: '>=10'}
+
+ zod@3.25.76:
+ resolution: {integrity: sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ==}
+
+ zod@4.3.6:
+ resolution: {integrity: sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==}
+
+snapshots:
+
+ '@actions/core@1.11.1':
+ dependencies:
+ '@actions/exec': 1.1.1
+ '@actions/http-client': 2.2.3
+
+ '@actions/exec@1.1.1':
+ dependencies:
+ '@actions/io': 1.1.3
+
+ '@actions/github@6.0.1':
+ dependencies:
+ '@actions/http-client': 2.2.3
+ '@octokit/core': 5.2.2
+ '@octokit/plugin-paginate-rest': 9.2.2(@octokit/core@5.2.2)
+ '@octokit/plugin-rest-endpoint-methods': 10.4.1(@octokit/core@5.2.2)
+ '@octokit/request': 8.4.1
+ '@octokit/request-error': 5.1.1
+ undici: 5.29.0
+
+ '@actions/http-client@2.2.3':
+ dependencies:
+ tunnel: 0.0.6
+ undici: 5.29.0
+
+ '@actions/io@1.1.3': {}
+
+ '@adobe/css-tools@4.4.4': {}
+
+ '@asamuzakjp/css-color@3.2.0':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ lru-cache: 10.4.3
+
+ '@babel/code-frame@7.29.0':
+ dependencies:
+ '@babel/helper-validator-identifier': 7.28.5
+ js-tokens: 4.0.0
+ picocolors: 1.1.1
+
+ '@babel/compat-data@7.29.0': {}
+
+ '@babel/core@7.29.0':
+ dependencies:
+ '@babel/code-frame': 7.29.0
+ '@babel/generator': 7.29.1
+ '@babel/helper-compilation-targets': 7.28.6
+ '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0)
+ '@babel/helpers': 7.29.2
+ '@babel/parser': 7.29.2
+ '@babel/template': 7.28.6
+ '@babel/traverse': 7.29.0
+ '@babel/types': 7.29.0
+ '@jridgewell/remapping': 2.3.5
+ convert-source-map: 2.0.0
+ debug: 4.4.3
+ gensync: 1.0.0-beta.2
+ json5: 2.2.3
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/eslint-parser@7.28.6(@babel/core@7.29.0)(eslint@8.57.1)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1
+ eslint: 8.57.1
+ eslint-visitor-keys: 2.1.0
+ semver: 6.3.1
+
+ '@babel/eslint-plugin@7.27.1(@babel/eslint-parser@7.28.6(@babel/core@7.29.0)(eslint@8.57.1))(eslint@8.57.1)':
+ dependencies:
+ '@babel/eslint-parser': 7.28.6(@babel/core@7.29.0)(eslint@8.57.1)
+ eslint: 8.57.1
+ eslint-rule-composer: 0.3.0
+
+ '@babel/generator@7.29.1':
+ dependencies:
+ '@babel/parser': 7.29.2
+ '@babel/types': 7.29.0
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+ jsesc: 3.1.0
+
+ '@babel/helper-annotate-as-pure@7.27.3':
+ dependencies:
+ '@babel/types': 7.29.0
+
+ '@babel/helper-compilation-targets@7.28.6':
+ dependencies:
+ '@babel/compat-data': 7.29.0
+ '@babel/helper-validator-option': 7.27.1
+ browserslist: 4.28.2
+ lru-cache: 5.1.1
+ semver: 6.3.1
+
+ '@babel/helper-create-class-features-plugin@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-member-expression-to-functions': 7.28.5
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/helper-replace-supers': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/traverse': 7.29.0
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-create-regexp-features-plugin@7.28.5(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ regexpu-core: 6.4.0
+ semver: 6.3.1
+
+ '@babel/helper-define-polyfill-provider@0.6.8(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-compilation-targets': 7.28.6
+ '@babel/helper-plugin-utils': 7.28.6
+ debug: 4.4.3
+ lodash.debounce: 4.0.8
+ resolve: 1.22.12
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-globals@7.28.0': {}
+
+ '@babel/helper-member-expression-to-functions@7.28.5':
+ dependencies:
+ '@babel/traverse': 7.29.0
+ '@babel/types': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-imports@7.28.6':
+ dependencies:
+ '@babel/traverse': 7.29.0
+ '@babel/types': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-module-transforms@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-module-imports': 7.28.6
+ '@babel/helper-validator-identifier': 7.28.5
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-optimise-call-expression@7.27.1':
+ dependencies:
+ '@babel/types': 7.29.0
+
+ '@babel/helper-plugin-utils@7.28.6': {}
+
+ '@babel/helper-remap-async-to-generator@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-wrap-function': 7.28.6
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-replace-supers@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-member-expression-to-functions': 7.28.5
+ '@babel/helper-optimise-call-expression': 7.27.1
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-skip-transparent-expression-wrappers@7.27.1':
+ dependencies:
+ '@babel/traverse': 7.29.0
+ '@babel/types': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helper-string-parser@7.27.1': {}
+
+ '@babel/helper-validator-identifier@7.28.5': {}
+
+ '@babel/helper-validator-option@7.27.1': {}
+
+ '@babel/helper-wrap-function@7.28.6':
+ dependencies:
+ '@babel/template': 7.28.6
+ '@babel/traverse': 7.29.0
+ '@babel/types': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/helpers@7.29.2':
+ dependencies:
+ '@babel/template': 7.28.6
+ '@babel/types': 7.29.0
+
+ '@babel/parser@7.29.2':
+ dependencies:
+ '@babel/types': 7.29.0
+
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-transform-optional-chaining': 7.28.6(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@babel/plugin-syntax-import-assertions@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-syntax-import-attributes@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-syntax-jsx@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-syntax-typescript@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-arrow-functions@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-async-generator-functions@7.29.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.29.0)
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-async-to-generator@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-module-imports': 7.28.6
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-remap-async-to-generator': 7.27.1(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-block-scoped-functions@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-block-scoping@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-class-properties@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-class-features-plugin': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-class-static-block@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-class-features-plugin': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-classes@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-compilation-targets': 7.28.6
+ '@babel/helper-globals': 7.28.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-replace-supers': 7.28.6(@babel/core@7.29.0)
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-computed-properties@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/template': 7.28.6
+
+ '@babel/plugin-transform-destructuring@7.28.5(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-dotall-regex@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-duplicate-keys@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.29.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-dynamic-import@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-explicit-resource-management@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-exponentiation-operator@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-export-namespace-from@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-for-of@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-function-name@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-compilation-targets': 7.28.6
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-json-strings@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-literals@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-logical-assignment-operators@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-member-expression-literals@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-modules-amd@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-modules-commonjs@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-modules-systemjs@7.29.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-validator-identifier': 7.28.5
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-modules-umd@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-named-capturing-groups-regex@7.29.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-new-target@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-nullish-coalescing-operator@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-numeric-separator@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-object-rest-spread@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-compilation-targets': 7.28.6
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.29.0)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.29.0)
+ '@babel/traverse': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-object-super@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-replace-supers': 7.28.6(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-optional-catch-binding@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-optional-chaining@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-parameters@7.27.7(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-private-methods@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-class-features-plugin': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-private-property-in-object@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-property-literals@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-react-display-name@7.28.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-react-jsx-development@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/plugin-transform-react-jsx': 7.28.6(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-react-jsx-self@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-react-jsx-source@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-react-jsx@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-module-imports': 7.28.6
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0)
+ '@babel/types': 7.29.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-react-pure-annotations@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-regenerator@7.29.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-regexp-modifiers@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-reserved-words@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-shorthand-properties@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-spread@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-sticky-regex@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-template-literals@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-typeof-symbol@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-typescript@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-annotate-as-pure': 7.27.3
+ '@babel/helper-create-class-features-plugin': 7.28.6(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-skip-transparent-expression-wrappers': 7.27.1
+ '@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/plugin-transform-unicode-escapes@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-unicode-property-regex@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-unicode-regex@7.27.1(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/plugin-transform-unicode-sets-regex@7.28.6(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-create-regexp-features-plugin': 7.28.5(@babel/core@7.29.0)
+ '@babel/helper-plugin-utils': 7.28.6
+
+ '@babel/preset-env@7.29.2(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/compat-data': 7.29.0
+ '@babel/core': 7.29.0
+ '@babel/helper-compilation-targets': 7.28.6
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.28.5(@babel/core@7.29.0)
+ '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.29.0)
+ '@babel/plugin-syntax-import-assertions': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-syntax-import-attributes': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-arrow-functions': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-async-generator-functions': 7.29.0(@babel/core@7.29.0)
+ '@babel/plugin-transform-async-to-generator': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-block-scoped-functions': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-block-scoping': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-class-properties': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-class-static-block': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-classes': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-computed-properties': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-destructuring': 7.28.5(@babel/core@7.29.0)
+ '@babel/plugin-transform-dotall-regex': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-duplicate-keys': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.29.0(@babel/core@7.29.0)
+ '@babel/plugin-transform-dynamic-import': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-explicit-resource-management': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-exponentiation-operator': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-export-namespace-from': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-for-of': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-function-name': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-json-strings': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-literals': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-logical-assignment-operators': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-member-expression-literals': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-modules-amd': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-modules-commonjs': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-modules-systemjs': 7.29.0(@babel/core@7.29.0)
+ '@babel/plugin-transform-modules-umd': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-named-capturing-groups-regex': 7.29.0(@babel/core@7.29.0)
+ '@babel/plugin-transform-new-target': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-nullish-coalescing-operator': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-numeric-separator': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-object-rest-spread': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-object-super': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-optional-catch-binding': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-optional-chaining': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-parameters': 7.27.7(@babel/core@7.29.0)
+ '@babel/plugin-transform-private-methods': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-private-property-in-object': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-property-literals': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-regenerator': 7.29.0(@babel/core@7.29.0)
+ '@babel/plugin-transform-regexp-modifiers': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-reserved-words': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-shorthand-properties': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-spread': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-sticky-regex': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-template-literals': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-typeof-symbol': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-unicode-escapes': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-unicode-property-regex': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-unicode-sets-regex': 7.28.6(@babel/core@7.29.0)
+ '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.29.0)
+ babel-plugin-polyfill-corejs2: 0.4.17(@babel/core@7.29.0)
+ babel-plugin-polyfill-corejs3: 0.14.2(@babel/core@7.29.0)
+ babel-plugin-polyfill-regenerator: 0.6.8(@babel/core@7.29.0)
+ core-js-compat: 3.49.0
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/types': 7.29.0
+ esutils: 2.0.3
+
+ '@babel/preset-react@7.28.5(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-transform-react-display-name': 7.28.0(@babel/core@7.29.0)
+ '@babel/plugin-transform-react-jsx': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-react-jsx-development': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-react-pure-annotations': 7.27.1(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/preset-typescript@7.28.5(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-plugin-utils': 7.28.6
+ '@babel/helper-validator-option': 7.27.1
+ '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-modules-commonjs': 7.28.6(@babel/core@7.29.0)
+ '@babel/plugin-transform-typescript': 7.28.6(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/runtime@7.29.2': {}
+
+ '@babel/template@7.28.6':
+ dependencies:
+ '@babel/code-frame': 7.29.0
+ '@babel/parser': 7.29.2
+ '@babel/types': 7.29.0
+
+ '@babel/traverse@7.29.0':
+ dependencies:
+ '@babel/code-frame': 7.29.0
+ '@babel/generator': 7.29.1
+ '@babel/helper-globals': 7.28.0
+ '@babel/parser': 7.29.2
+ '@babel/template': 7.28.6
+ '@babel/types': 7.29.0
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@babel/types@7.29.0':
+ dependencies:
+ '@babel/helper-string-parser': 7.27.1
+ '@babel/helper-validator-identifier': 7.28.5
+
+ '@bcoe/v8-coverage@1.0.2': {}
+
+ '@bufbuild/protobuf@1.10.1': {}
+
+ '@codecov/bundler-plugin-core@1.9.1':
+ dependencies:
+ '@actions/core': 1.11.1
+ '@actions/github': 6.0.1
+ chalk: 4.1.2
+ semver: 7.7.4
+ unplugin: 1.16.1
+ zod: 3.25.76
+
+ '@codecov/vite-plugin@1.9.1(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ '@codecov/bundler-plugin-core': 1.9.1
+ unplugin: 1.16.1
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+
+ '@csstools/cascade-layer-name-parser@2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+
+ '@csstools/color-helpers@5.1.0': {}
+
+ '@csstools/css-calc@2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+
+ '@csstools/css-color-parser@3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
+ dependencies:
+ '@csstools/color-helpers': 5.1.0
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+
+ '@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4)':
+ dependencies:
+ '@csstools/css-tokenizer': 3.0.4
+
+ '@csstools/css-tokenizer@3.0.4': {}
+
+ '@csstools/media-query-list-parser@4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+
+ '@csstools/postcss-alpha-function@1.0.1(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-cascade-layers@5.0.2(postcss@8.5.10)':
+ dependencies:
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.1)
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ '@csstools/postcss-color-function-display-p3-linear@1.0.1(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-color-function@4.0.12(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-color-mix-function@3.0.12(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-color-mix-variadic-function-arguments@1.0.2(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-content-alt-text@2.0.8(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-contrast-color-function@2.0.12(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-exponential-functions@2.0.9(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-font-format-keywords@4.0.0(postcss@8.5.10)':
+ dependencies:
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ '@csstools/postcss-gamut-mapping@2.0.11(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-gradients-interpolation-method@5.0.12(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-hwb-function@4.0.12(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-ic-unit@4.0.4(postcss@8.5.10)':
+ dependencies:
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ '@csstools/postcss-initial@2.0.1(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+
+ '@csstools/postcss-is-pseudo-class@5.0.3(postcss@8.5.10)':
+ dependencies:
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.1)
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ '@csstools/postcss-light-dark-function@2.0.11(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-logical-float-and-clear@3.0.0(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+
+ '@csstools/postcss-logical-overflow@2.0.0(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+
+ '@csstools/postcss-logical-overscroll-behavior@2.0.0(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+
+ '@csstools/postcss-logical-resize@3.0.0(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ '@csstools/postcss-logical-viewport-units@3.0.4(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-media-minmax@2.0.9(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ postcss: 8.5.10
+
+ '@csstools/postcss-media-queries-aspect-ratio-number-values@3.0.5(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ postcss: 8.5.10
+
+ '@csstools/postcss-nested-calc@4.0.0(postcss@8.5.10)':
+ dependencies:
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ '@csstools/postcss-normalize-display-values@4.0.1(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ '@csstools/postcss-oklab-function@4.0.12(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-position-area-property@1.0.0(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+
+ '@csstools/postcss-progressive-custom-properties@4.2.1(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ '@csstools/postcss-property-rule-prelude-list@1.0.0(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-random-function@2.0.1(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-relative-color-syntax@3.0.12(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ '@csstools/postcss-scope-pseudo-class@4.0.1(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ '@csstools/postcss-sign-functions@1.1.4(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-stepped-value-functions@4.0.9(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-syntax-descriptor-syntax-production@1.0.1(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-system-ui-font-family@1.0.0(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-text-decoration-shorthand@4.0.3(postcss@8.5.10)':
+ dependencies:
+ '@csstools/color-helpers': 5.1.0
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ '@csstools/postcss-trigonometric-functions@4.0.9(postcss@8.5.10)':
+ dependencies:
+ '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+
+ '@csstools/postcss-unset-value@4.0.0(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+
+ '@csstools/selector-resolve-nested@3.1.0(postcss-selector-parser@7.1.1)':
+ dependencies:
+ postcss-selector-parser: 7.1.1
+
+ '@csstools/selector-specificity@5.0.0(postcss-selector-parser@7.1.1)':
+ dependencies:
+ postcss-selector-parser: 7.1.1
+
+ '@csstools/utilities@2.0.0(postcss@8.5.10)':
+ dependencies:
+ postcss: 8.5.10
+
+ '@emnapi/core@1.9.2':
+ dependencies:
+ '@emnapi/wasi-threads': 1.2.1
+ tslib: 2.8.1
+ optional: true
+
+ '@emnapi/runtime@1.9.2':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
+ '@emnapi/wasi-threads@1.2.1':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
+ '@es-joy/jsdoccomment@0.78.0':
+ dependencies:
+ '@types/estree': 1.0.8
+ '@typescript-eslint/types': 8.58.2
+ comment-parser: 1.4.1
+ esquery: 1.7.0
+ jsdoc-type-pratt-parser: 7.0.0
+
+ '@es-joy/resolve.exports@1.2.0': {}
+
+ '@esbuild/aix-ppc64@0.27.7':
+ optional: true
+
+ '@esbuild/android-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/android-arm@0.27.7':
+ optional: true
+
+ '@esbuild/android-x64@0.27.7':
+ optional: true
+
+ '@esbuild/darwin-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/darwin-x64@0.27.7':
+ optional: true
+
+ '@esbuild/freebsd-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/freebsd-x64@0.27.7':
+ optional: true
+
+ '@esbuild/linux-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/linux-arm@0.27.7':
+ optional: true
+
+ '@esbuild/linux-ia32@0.27.7':
+ optional: true
+
+ '@esbuild/linux-loong64@0.27.7':
+ optional: true
+
+ '@esbuild/linux-mips64el@0.27.7':
+ optional: true
+
+ '@esbuild/linux-ppc64@0.27.7':
+ optional: true
+
+ '@esbuild/linux-riscv64@0.27.7':
+ optional: true
+
+ '@esbuild/linux-s390x@0.27.7':
+ optional: true
+
+ '@esbuild/linux-x64@0.27.7':
+ optional: true
+
+ '@esbuild/netbsd-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/netbsd-x64@0.27.7':
+ optional: true
+
+ '@esbuild/openbsd-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/openbsd-x64@0.27.7':
+ optional: true
+
+ '@esbuild/openharmony-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/sunos-x64@0.27.7':
+ optional: true
+
+ '@esbuild/win32-arm64@0.27.7':
+ optional: true
+
+ '@esbuild/win32-ia32@0.27.7':
+ optional: true
+
+ '@esbuild/win32-x64@0.27.7':
+ optional: true
+
+ '@eslint-community/eslint-utils@4.9.1(eslint@8.57.1)':
+ dependencies:
+ eslint: 8.57.1
+ eslint-visitor-keys: 3.4.3
+
+ '@eslint-community/regexpp@4.12.2': {}
+
+ '@eslint/eslintrc@2.1.4':
+ dependencies:
+ ajv: 6.14.0
+ debug: 4.4.3
+ espree: 9.6.1
+ globals: 13.24.0
+ ignore: 5.3.2
+ import-fresh: 3.3.1
+ js-yaml: 4.1.1
+ minimatch: 10.2.5
+ strip-json-comments: 3.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@eslint/js@8.57.1': {}
+
+ '@fastify/busboy@2.1.1': {}
+
+ '@floating-ui/core@1.7.5':
+ dependencies:
+ '@floating-ui/utils': 0.2.11
+
+ '@floating-ui/dom@1.7.4':
+ dependencies:
+ '@floating-ui/core': 1.7.5
+ '@floating-ui/utils': 0.2.11
+
+ '@floating-ui/dom@1.7.6':
+ dependencies:
+ '@floating-ui/core': 1.7.5
+ '@floating-ui/utils': 0.2.11
+
+ '@floating-ui/react-dom@2.1.8(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@floating-ui/dom': 1.7.6
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+
+ '@floating-ui/react@0.27.19(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@floating-ui/react-dom': 2.1.8(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@floating-ui/utils': 0.2.11
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ tabbable: 6.4.0
+
+ '@floating-ui/utils@0.2.11': {}
+
+ '@fontsource/inconsolata@5.2.8': {}
+
+ '@fontsource/inter@5.2.8': {}
+
+ '@formatjs/ecma402-abstract@2.3.6':
+ dependencies:
+ '@formatjs/fast-memoize': 2.2.7
+ '@formatjs/intl-localematcher': 0.6.2
+ decimal.js: 10.6.0
+ tslib: 2.8.1
+
+ '@formatjs/fast-memoize@2.2.7':
+ dependencies:
+ tslib: 2.8.1
+
+ '@formatjs/fast-memoize@3.1.2': {}
+
+ '@formatjs/intl-durationformat@0.10.4':
+ dependencies:
+ '@formatjs/intl-localematcher': 0.8.3
+
+ '@formatjs/intl-localematcher@0.6.2':
+ dependencies:
+ tslib: 2.8.1
+
+ '@formatjs/intl-localematcher@0.8.3':
+ dependencies:
+ '@formatjs/fast-memoize': 3.1.2
+
+ '@formatjs/intl-segmenter@11.7.12':
+ dependencies:
+ '@formatjs/ecma402-abstract': 2.3.6
+ '@formatjs/intl-localematcher': 0.6.2
+ tslib: 2.8.1
+
+ '@gulpjs/to-absolute-glob@4.0.0':
+ dependencies:
+ is-negated-glob: 1.0.0
+
+ '@humanwhocodes/config-array@0.13.0':
+ dependencies:
+ '@humanwhocodes/object-schema': 2.0.3
+ debug: 4.4.3
+ minimatch: 10.2.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@humanwhocodes/module-importer@1.0.1': {}
+
+ '@humanwhocodes/object-schema@2.0.3': {}
+
+ '@isaacs/cliui@8.0.2':
+ dependencies:
+ string-width: 5.1.2
+ string-width-cjs: string-width@4.2.3
+ strip-ansi: 7.2.0
+ strip-ansi-cjs: strip-ansi@6.0.1
+ wrap-ansi: 8.1.0
+ wrap-ansi-cjs: wrap-ansi@7.0.0
+
+ '@joshwooding/vite-plugin-react-docgen-typescript@0.7.0(typescript@5.9.3)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ glob: 10.5.0
+ react-docgen-typescript: 2.4.0(typescript@5.9.3)
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ optionalDependencies:
+ typescript: 5.9.3
+
+ '@jridgewell/gen-mapping@0.3.13':
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+ '@jridgewell/trace-mapping': 0.3.31
+
+ '@jridgewell/remapping@2.3.5':
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+
+ '@jridgewell/resolve-uri@3.1.2': {}
+
+ '@jridgewell/source-map@0.3.11':
+ dependencies:
+ '@jridgewell/gen-mapping': 0.3.13
+ '@jridgewell/trace-mapping': 0.3.31
+
+ '@jridgewell/sourcemap-codec@1.5.5': {}
+
+ '@jridgewell/trace-mapping@0.3.31':
+ dependencies:
+ '@jridgewell/resolve-uri': 3.1.2
+ '@jridgewell/sourcemap-codec': 1.5.5
+
+ '@livekit/components-core@0.12.13(livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22))(tslib@2.8.1)':
+ dependencies:
+ '@floating-ui/dom': 1.7.4
+ livekit-client: 2.18.4(@types/dom-mediacapture-record@1.0.22)
+ loglevel: 1.9.1
+ rxjs: 7.8.2
+ tslib: 2.8.1
+
+ '@livekit/components-react@2.9.20(livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(tslib@2.8.1)':
+ dependencies:
+ '@livekit/components-core': 0.12.13(livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22))(tslib@2.8.1)
+ clsx: 2.1.1
+ events: 3.3.0
+ jose: 6.2.2
+ livekit-client: 2.18.4(@types/dom-mediacapture-record@1.0.22)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ tslib: 2.8.1
+ usehooks-ts: 3.1.1(react@19.2.5)
+
+ '@livekit/mutex@1.1.1': {}
+
+ '@livekit/protocol@1.45.3':
+ dependencies:
+ '@bufbuild/protobuf': 1.10.1
+
+ '@livekit/track-processors@0.7.2(@types/dom-mediacapture-transform@0.1.11)(livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22))':
+ dependencies:
+ '@mediapipe/tasks-vision': 0.10.34
+ '@types/dom-mediacapture-transform': 0.1.11
+ livekit-client: 2.18.4(@types/dom-mediacapture-record@1.0.22)
+
+ '@matrix-org/matrix-sdk-crypto-wasm@18.1.0': {}
+
+ '@mdx-js/react@3.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@types/mdx': 2.0.13
+ '@types/react': 19.2.14
+ react: 19.2.5
+
+ '@mediapipe/tasks-vision@0.10.34': {}
+
+ '@napi-rs/wasm-runtime@1.1.4(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)':
+ dependencies:
+ '@emnapi/core': 1.9.2
+ '@emnapi/runtime': 1.9.2
+ '@tybys/wasm-util': 0.10.1
+ optional: true
+
+ '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1':
+ dependencies:
+ eslint-scope: 5.1.1
+
+ '@nodelib/fs.scandir@2.1.5':
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ run-parallel: 1.2.0
+
+ '@nodelib/fs.stat@2.0.5': {}
+
+ '@nodelib/fs.walk@1.2.8':
+ dependencies:
+ '@nodelib/fs.scandir': 2.1.5
+ fastq: 1.20.1
+
+ '@octokit/auth-token@4.0.0': {}
+
+ '@octokit/core@5.2.2':
+ dependencies:
+ '@octokit/auth-token': 4.0.0
+ '@octokit/graphql': 7.1.1
+ '@octokit/request': 8.4.1
+ '@octokit/request-error': 5.1.1
+ '@octokit/types': 13.10.0
+ before-after-hook: 2.2.3
+ universal-user-agent: 6.0.1
+
+ '@octokit/endpoint@9.0.6':
+ dependencies:
+ '@octokit/types': 13.10.0
+ universal-user-agent: 6.0.1
+
+ '@octokit/graphql@7.1.1':
+ dependencies:
+ '@octokit/request': 8.4.1
+ '@octokit/types': 13.10.0
+ universal-user-agent: 6.0.1
+
+ '@octokit/openapi-types@20.0.0': {}
+
+ '@octokit/openapi-types@24.2.0': {}
+
+ '@octokit/plugin-paginate-rest@9.2.2(@octokit/core@5.2.2)':
+ dependencies:
+ '@octokit/core': 5.2.2
+ '@octokit/types': 12.6.0
+
+ '@octokit/plugin-rest-endpoint-methods@10.4.1(@octokit/core@5.2.2)':
+ dependencies:
+ '@octokit/core': 5.2.2
+ '@octokit/types': 12.6.0
+
+ '@octokit/request-error@5.1.1':
+ dependencies:
+ '@octokit/types': 13.10.0
+ deprecation: 2.3.1
+ once: 1.4.0
+
+ '@octokit/request@8.4.1':
+ dependencies:
+ '@octokit/endpoint': 9.0.6
+ '@octokit/request-error': 5.1.1
+ '@octokit/types': 13.10.0
+ universal-user-agent: 6.0.1
+
+ '@octokit/types@12.6.0':
+ dependencies:
+ '@octokit/openapi-types': 20.0.0
+
+ '@octokit/types@13.10.0':
+ dependencies:
+ '@octokit/openapi-types': 24.2.0
+
+ '@oxc-project/types@0.124.0': {}
+
+ '@oxc-resolver/binding-android-arm-eabi@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-android-arm64@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-darwin-arm64@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-darwin-x64@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-freebsd-x64@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-arm-gnueabihf@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-arm-musleabihf@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-arm64-gnu@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-arm64-musl@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-ppc64-gnu@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-riscv64-gnu@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-riscv64-musl@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-s390x-gnu@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-x64-gnu@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-linux-x64-musl@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-openharmony-arm64@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-wasm32-wasi@11.19.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)':
+ dependencies:
+ '@napi-rs/wasm-runtime': 1.1.4(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
+ optional: true
+
+ '@oxc-resolver/binding-win32-arm64-msvc@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-win32-ia32-msvc@11.19.1':
+ optional: true
+
+ '@oxc-resolver/binding-win32-x64-msvc@11.19.1':
+ optional: true
+
+ '@parcel/watcher-android-arm64@2.5.6':
+ optional: true
+
+ '@parcel/watcher-darwin-arm64@2.5.6':
+ optional: true
+
+ '@parcel/watcher-darwin-x64@2.5.6':
+ optional: true
+
+ '@parcel/watcher-freebsd-x64@2.5.6':
+ optional: true
+
+ '@parcel/watcher-linux-arm-glibc@2.5.6':
+ optional: true
+
+ '@parcel/watcher-linux-arm-musl@2.5.6':
+ optional: true
+
+ '@parcel/watcher-linux-arm64-glibc@2.5.6':
+ optional: true
+
+ '@parcel/watcher-linux-arm64-musl@2.5.6':
+ optional: true
+
+ '@parcel/watcher-linux-x64-glibc@2.5.6':
+ optional: true
+
+ '@parcel/watcher-linux-x64-musl@2.5.6':
+ optional: true
+
+ '@parcel/watcher-win32-arm64@2.5.6':
+ optional: true
+
+ '@parcel/watcher-win32-ia32@2.5.6':
+ optional: true
+
+ '@parcel/watcher-win32-x64@2.5.6':
+ optional: true
+
+ '@parcel/watcher@2.5.6':
+ dependencies:
+ detect-libc: 2.1.2
+ is-glob: 4.0.3
+ node-addon-api: 7.1.1
+ picomatch: 4.0.4
+ optionalDependencies:
+ '@parcel/watcher-android-arm64': 2.5.6
+ '@parcel/watcher-darwin-arm64': 2.5.6
+ '@parcel/watcher-darwin-x64': 2.5.6
+ '@parcel/watcher-freebsd-x64': 2.5.6
+ '@parcel/watcher-linux-arm-glibc': 2.5.6
+ '@parcel/watcher-linux-arm-musl': 2.5.6
+ '@parcel/watcher-linux-arm64-glibc': 2.5.6
+ '@parcel/watcher-linux-arm64-musl': 2.5.6
+ '@parcel/watcher-linux-x64-glibc': 2.5.6
+ '@parcel/watcher-linux-x64-musl': 2.5.6
+ '@parcel/watcher-win32-arm64': 2.5.6
+ '@parcel/watcher-win32-ia32': 2.5.6
+ '@parcel/watcher-win32-x64': 2.5.6
+ optional: true
+
+ '@pkgjs/parseargs@0.11.0':
+ optional: true
+
+ '@playwright/test@1.59.1':
+ dependencies:
+ playwright: 1.59.1
+
+ '@radix-ui/number@1.1.1': {}
+
+ '@radix-ui/primitive@1.1.3': {}
+
+ '@radix-ui/react-arrow@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-collection@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-slot': 1.2.3(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-compose-refs@1.1.2(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-context-menu@2.2.16(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-context@1.1.2(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-context@1.1.3(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-dialog@1.1.15(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-slot': 1.2.3(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.14)(react@19.2.5)
+ aria-hidden: 1.2.6
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ react-remove-scroll: 2.7.2(@types/react@19.2.14)(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-direction@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-dismissable-layer@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-escape-keydown': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-dropdown-menu@2.1.16(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-focus-guards@1.1.3(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-focus-scope@1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-form@0.1.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-label': 2.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-id@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-label@2.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-menu@2.1.16(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-direction': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-dismissable-layer': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-focus-guards': 1.1.3(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-focus-scope': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-popper': 1.2.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-portal': 1.1.9(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-presence': 1.1.5(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-roving-focus': 1.1.11(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-slot': 1.2.3(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ aria-hidden: 1.2.6
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ react-remove-scroll: 2.7.2(@types/react@19.2.14)(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-popper@1.2.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@floating-ui/react-dom': 2.1.8(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-arrow': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-rect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/rect': 1.1.1
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-portal@1.1.9(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-presence@1.1.5(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-primitive@2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-slot': 1.2.3(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-primitive@2.1.4(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-slot': 1.2.4(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-progress@1.1.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-context': 1.1.3(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.4(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-roving-focus@1.1.11(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-direction': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-id': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-separator@1.1.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.1.4(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-slider@1.3.6(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/number': 1.1.1
+ '@radix-ui/primitive': 1.1.3
+ '@radix-ui/react-collection': 1.1.7(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-context': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-direction': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-primitive': 2.1.3(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-use-controllable-state': 1.2.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-previous': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-size': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/react-slot@1.2.3(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-slot@1.2.4(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-compose-refs': 1.1.2(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-callback-ref@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-controllable-state@1.2.2(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-use-effect-event': 0.0.2(@types/react@19.2.14)(react@19.2.5)
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-effect-event@0.0.2(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-escape-keydown@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-use-callback-ref': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-layout-effect@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-previous@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-rect@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/rect': 1.1.1
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-use-size@1.1.1(@types/react@19.2.14)(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-use-layout-effect': 1.1.1(@types/react@19.2.14)(react@19.2.5)
+ react: 19.2.5
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ '@radix-ui/react-visually-hidden@1.2.4(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@radix-ui/react-primitive': 2.1.4(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@radix-ui/rect@1.1.1': {}
+
+ '@react-spring/animated@10.0.3(react@19.2.5)':
+ dependencies:
+ '@react-spring/shared': 10.0.3(react@19.2.5)
+ '@react-spring/types': 10.0.3
+ react: 19.2.5
+
+ '@react-spring/core@10.0.3(react@19.2.5)':
+ dependencies:
+ '@react-spring/animated': 10.0.3(react@19.2.5)
+ '@react-spring/shared': 10.0.3(react@19.2.5)
+ '@react-spring/types': 10.0.3
+ react: 19.2.5
+
+ '@react-spring/rafz@10.0.3': {}
+
+ '@react-spring/shared@10.0.3(react@19.2.5)':
+ dependencies:
+ '@react-spring/rafz': 10.0.3
+ '@react-spring/types': 10.0.3
+ react: 19.2.5
+
+ '@react-spring/types@10.0.3': {}
+
+ '@react-spring/web@10.0.3(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@react-spring/animated': 10.0.3(react@19.2.5)
+ '@react-spring/core': 10.0.3(react@19.2.5)
+ '@react-spring/shared': 10.0.3(react@19.2.5)
+ '@react-spring/types': 10.0.3
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+
+ '@rolldown/binding-android-arm64@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-darwin-arm64@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-darwin-x64@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-freebsd-x64@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-linux-arm64-musl@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-linux-x64-gnu@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-linux-x64-musl@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-openharmony-arm64@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-wasm32-wasi@1.0.0-rc.15':
+ dependencies:
+ '@emnapi/core': 1.9.2
+ '@emnapi/runtime': 1.9.2
+ '@napi-rs/wasm-runtime': 1.1.4(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)
+ optional: true
+
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/binding-win32-x64-msvc@1.0.0-rc.15':
+ optional: true
+
+ '@rolldown/pluginutils@1.0.0-beta.27': {}
+
+ '@rolldown/pluginutils@1.0.0-rc.15': {}
+
+ '@rollup/plugin-inject@5.0.5(rollup@4.60.1)':
+ dependencies:
+ '@rollup/pluginutils': 5.3.0(rollup@4.60.1)
+ estree-walker: 2.0.2
+ magic-string: 0.30.21
+ optionalDependencies:
+ rollup: 4.60.1
+
+ '@rollup/pluginutils@4.2.1':
+ dependencies:
+ estree-walker: 2.0.2
+ picomatch: 2.3.2
+
+ '@rollup/pluginutils@5.3.0(rollup@4.60.1)':
+ dependencies:
+ '@types/estree': 1.0.8
+ estree-walker: 2.0.2
+ picomatch: 4.0.4
+ optionalDependencies:
+ rollup: 4.60.1
+
+ '@rollup/rollup-android-arm-eabi@4.60.1':
+ optional: true
+
+ '@rollup/rollup-android-arm64@4.60.1':
+ optional: true
+
+ '@rollup/rollup-darwin-arm64@4.60.1':
+ optional: true
+
+ '@rollup/rollup-darwin-x64@4.60.1':
+ optional: true
+
+ '@rollup/rollup-freebsd-arm64@4.60.1':
+ optional: true
+
+ '@rollup/rollup-freebsd-x64@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-arm-gnueabihf@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-arm-musleabihf@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-arm64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-arm64-musl@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-loong64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-loong64-musl@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-ppc64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-ppc64-musl@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-riscv64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-riscv64-musl@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-s390x-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-x64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-linux-x64-musl@4.60.1':
+ optional: true
+
+ '@rollup/rollup-openbsd-x64@4.60.1':
+ optional: true
+
+ '@rollup/rollup-openharmony-arm64@4.60.1':
+ optional: true
+
+ '@rollup/rollup-win32-arm64-msvc@4.60.1':
+ optional: true
+
+ '@rollup/rollup-win32-ia32-msvc@4.60.1':
+ optional: true
+
+ '@rollup/rollup-win32-x64-gnu@4.60.1':
+ optional: true
+
+ '@rollup/rollup-win32-x64-msvc@4.60.1':
+ optional: true
+
+ '@rtsao/scc@1.1.0': {}
+
+ '@sentry-internal/browser-utils@8.55.1':
+ dependencies:
+ '@sentry/core': 8.55.1
+
+ '@sentry-internal/feedback@8.55.1':
+ dependencies:
+ '@sentry/core': 8.55.1
+
+ '@sentry-internal/replay-canvas@8.55.1':
+ dependencies:
+ '@sentry-internal/replay': 8.55.1
+ '@sentry/core': 8.55.1
+
+ '@sentry-internal/replay@8.55.1':
+ dependencies:
+ '@sentry-internal/browser-utils': 8.55.1
+ '@sentry/core': 8.55.1
+
+ '@sentry/babel-plugin-component-annotate@3.6.1': {}
+
+ '@sentry/browser@8.55.1':
+ dependencies:
+ '@sentry-internal/browser-utils': 8.55.1
+ '@sentry-internal/feedback': 8.55.1
+ '@sentry-internal/replay': 8.55.1
+ '@sentry-internal/replay-canvas': 8.55.1
+ '@sentry/core': 8.55.1
+
+ '@sentry/bundler-plugin-core@3.6.1':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@sentry/babel-plugin-component-annotate': 3.6.1
+ '@sentry/cli': 2.58.5
+ dotenv: 16.6.1
+ find-up: 5.0.0
+ glob: 10.5.0
+ magic-string: 0.30.8
+ unplugin: 1.0.1
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+
+ '@sentry/cli-darwin@2.58.5':
+ optional: true
+
+ '@sentry/cli-linux-arm64@2.58.5':
+ optional: true
+
+ '@sentry/cli-linux-arm@2.58.5':
+ optional: true
+
+ '@sentry/cli-linux-i686@2.58.5':
+ optional: true
+
+ '@sentry/cli-linux-x64@2.58.5':
+ optional: true
+
+ '@sentry/cli-win32-arm64@2.58.5':
+ optional: true
+
+ '@sentry/cli-win32-i686@2.58.5':
+ optional: true
+
+ '@sentry/cli-win32-x64@2.58.5':
+ optional: true
+
+ '@sentry/cli@2.58.5':
+ dependencies:
+ https-proxy-agent: 5.0.1
+ node-fetch: 2.7.0
+ progress: 2.0.3
+ proxy-from-env: 1.1.0
+ which: 2.0.2
+ optionalDependencies:
+ '@sentry/cli-darwin': 2.58.5
+ '@sentry/cli-linux-arm': 2.58.5
+ '@sentry/cli-linux-arm64': 2.58.5
+ '@sentry/cli-linux-i686': 2.58.5
+ '@sentry/cli-linux-x64': 2.58.5
+ '@sentry/cli-win32-arm64': 2.58.5
+ '@sentry/cli-win32-i686': 2.58.5
+ '@sentry/cli-win32-x64': 2.58.5
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+
+ '@sentry/core@8.55.1': {}
+
+ '@sentry/react@8.55.1(react@19.2.5)':
+ dependencies:
+ '@sentry/browser': 8.55.1
+ '@sentry/core': 8.55.1
+ hoist-non-react-statics: 3.3.2
+ react: 19.2.5
+
+ '@sentry/vite-plugin@3.6.1':
+ dependencies:
+ '@sentry/bundler-plugin-core': 3.6.1
+ unplugin: 1.0.1
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+
+ '@sindresorhus/base62@1.0.0': {}
+
+ '@standard-schema/spec@1.1.0': {}
+
+ '@storybook/addon-docs@10.3.5(@types/react@19.2.14)(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ '@mdx-js/react': 3.1.1(@types/react@19.2.14)(react@19.2.5)
+ '@storybook/csf-plugin': 10.3.5(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@storybook/icons': 2.0.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@storybook/react-dom-shim': 10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ storybook: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ ts-dedent: 2.2.0
+ transitivePeerDependencies:
+ - '@types/react'
+ - esbuild
+ - rollup
+ - vite
+ - webpack
+
+ '@storybook/builder-vite@10.3.5(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ '@storybook/csf-plugin': 10.3.5(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ storybook: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ ts-dedent: 2.2.0
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ transitivePeerDependencies:
+ - esbuild
+ - rollup
+ - webpack
+
+ '@storybook/csf-plugin@10.3.5(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ storybook: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ unplugin: 2.3.11
+ optionalDependencies:
+ esbuild: 0.27.7
+ rollup: 4.60.1
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+
+ '@storybook/global@5.0.0': {}
+
+ '@storybook/icons@2.0.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+
+ '@storybook/react-dom-shim@10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))':
+ dependencies:
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ storybook: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+
+ '@storybook/react-vite@10.3.5(esbuild@0.27.7)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ '@joshwooding/vite-plugin-react-docgen-typescript': 0.7.0(typescript@5.9.3)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@rollup/pluginutils': 5.3.0(rollup@4.60.1)
+ '@storybook/builder-vite': 10.3.5(esbuild@0.27.7)(rollup@4.60.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@storybook/react': 10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)
+ empathic: 2.0.0
+ magic-string: 0.30.21
+ react: 19.2.5
+ react-docgen: 8.0.3
+ react-dom: 19.2.5(react@19.2.5)
+ resolve: 1.22.12
+ storybook: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ tsconfig-paths: 4.2.0
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ transitivePeerDependencies:
+ - esbuild
+ - rollup
+ - supports-color
+ - typescript
+ - webpack
+
+ '@storybook/react@10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3)':
+ dependencies:
+ '@storybook/global': 5.0.0
+ '@storybook/react-dom-shim': 10.3.5(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))
+ react: 19.2.5
+ react-docgen: 8.0.3
+ react-docgen-typescript: 2.4.0(typescript@5.9.3)
+ react-dom: 19.2.5(react@19.2.5)
+ storybook: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@stylistic/eslint-plugin@3.1.0(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/utils': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ eslint-visitor-keys: 4.2.1
+ espree: 10.4.0
+ estraverse: 5.3.0
+ picomatch: 4.0.4
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+
+ '@svgr/babel-preset@8.1.0(@babel/core@7.29.0)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.29.0)
+ '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.29.0)
+ '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.29.0)
+ '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.29.0)
+ '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.29.0)
+ '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.29.0)
+ '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.29.0)
+ '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.29.0)
+
+ '@svgr/core@8.1.0(typescript@5.9.3)':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@svgr/babel-preset': 8.1.0(@babel/core@7.29.0)
+ camelcase: 6.3.0
+ cosmiconfig: 8.3.6(typescript@5.9.3)
+ snake-case: 3.0.4
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ '@svgr/hast-util-to-babel-ast@8.0.0':
+ dependencies:
+ '@babel/types': 7.29.0
+ entities: 4.5.0
+
+ '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.9.3))':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@svgr/babel-preset': 8.1.0(@babel/core@7.29.0)
+ '@svgr/core': 8.1.0(typescript@5.9.3)
+ '@svgr/hast-util-to-babel-ast': 8.0.0
+ svg-parser: 2.0.4
+ transitivePeerDependencies:
+ - supports-color
+
+ '@testing-library/dom@10.4.1':
+ dependencies:
+ '@babel/code-frame': 7.29.0
+ '@babel/runtime': 7.29.2
+ '@types/aria-query': 5.0.4
+ aria-query: 5.3.0
+ dom-accessibility-api: 0.5.16
+ lz-string: 1.5.0
+ picocolors: 1.1.1
+ pretty-format: 27.5.1
+
+ '@testing-library/jest-dom@6.9.1':
+ dependencies:
+ '@adobe/css-tools': 4.4.4
+ aria-query: 5.3.2
+ css.escape: 1.5.1
+ dom-accessibility-api: 0.6.3
+ picocolors: 1.1.1
+ redent: 3.0.0
+
+ '@testing-library/react@16.3.2(@testing-library/dom@10.4.1)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@babel/runtime': 7.29.2
+ '@testing-library/dom': 10.4.1
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ '@types/react-dom': 19.2.3(@types/react@19.2.14)
+
+ '@testing-library/user-event@14.6.1(@testing-library/dom@10.4.1)':
+ dependencies:
+ '@testing-library/dom': 10.4.1
+
+ '@tybys/wasm-util@0.10.1':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
+ '@types/aria-query@5.0.4': {}
+
+ '@types/babel__core@7.20.5':
+ dependencies:
+ '@babel/parser': 7.29.2
+ '@babel/types': 7.29.0
+ '@types/babel__generator': 7.27.0
+ '@types/babel__template': 7.4.4
+ '@types/babel__traverse': 7.28.0
+
+ '@types/babel__generator@7.27.0':
+ dependencies:
+ '@babel/types': 7.29.0
+
+ '@types/babel__template@7.4.4':
+ dependencies:
+ '@babel/parser': 7.29.2
+ '@babel/types': 7.29.0
+
+ '@types/babel__traverse@7.28.0':
+ dependencies:
+ '@babel/types': 7.29.0
+
+ '@types/chai@5.2.3':
+ dependencies:
+ '@types/deep-eql': 4.0.2
+ assertion-error: 2.0.1
+
+ '@types/content-type@1.1.9': {}
+
+ '@types/deep-eql@4.0.2': {}
+
+ '@types/doctrine@0.0.9': {}
+
+ '@types/dom-mediacapture-record@1.0.22': {}
+
+ '@types/dom-mediacapture-transform@0.1.11':
+ dependencies:
+ '@types/dom-webcodecs': 0.1.18
+
+ '@types/dom-webcodecs@0.1.18': {}
+
+ '@types/estree@1.0.8': {}
+
+ '@types/events@3.0.3': {}
+
+ '@types/glob-to-regexp@0.4.4': {}
+
+ '@types/grecaptcha@3.0.9': {}
+
+ '@types/jsdom@21.1.7':
+ dependencies:
+ '@types/node': 24.12.2
+ '@types/tough-cookie': 4.0.5
+ parse5: 7.3.0
+
+ '@types/json-schema@7.0.15': {}
+
+ '@types/json5@0.0.29': {}
+
+ '@types/lodash-es@4.17.12':
+ dependencies:
+ '@types/lodash': 4.17.24
+
+ '@types/lodash@4.17.24': {}
+
+ '@types/mdx@2.0.13': {}
+
+ '@types/minimatch@3.0.5': {}
+
+ '@types/node@24.12.2':
+ dependencies:
+ undici-types: 7.16.0
+
+ '@types/normalize-package-data@2.4.4': {}
+
+ '@types/pako@2.0.4': {}
+
+ '@types/qrcode@1.5.6':
+ dependencies:
+ '@types/node': 24.12.2
+
+ '@types/react-dom@19.2.3(@types/react@19.2.14)':
+ dependencies:
+ '@types/react': 19.2.14
+
+ '@types/react@19.2.14':
+ dependencies:
+ csstype: 3.2.3
+
+ '@types/resolve@1.20.6': {}
+
+ '@types/sdp-transform@2.15.0': {}
+
+ '@types/semver@7.7.1': {}
+
+ '@types/symlink-or-copy@1.2.2': {}
+
+ '@types/tough-cookie@4.0.5': {}
+
+ '@types/uuid@10.0.0': {}
+
+ '@types/yargs-parser@21.0.3': {}
+
+ '@types/yargs@17.0.35':
+ dependencies:
+ '@types/yargs-parser': 21.0.3
+
+ '@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@eslint-community/regexpp': 4.12.2
+ '@typescript-eslint/parser': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ '@typescript-eslint/scope-manager': 8.58.2
+ '@typescript-eslint/type-utils': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.58.2
+ eslint: 8.57.1
+ ignore: 7.0.5
+ natural-compare: 1.4.0
+ ts-api-utils: 2.5.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/experimental-utils@5.62.0(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ '@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/scope-manager': 8.58.2
+ '@typescript-eslint/types': 8.58.2
+ '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3)
+ '@typescript-eslint/visitor-keys': 8.58.2
+ debug: 4.4.3
+ eslint: 8.57.1
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/project-service@8.58.2(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/tsconfig-utils': 8.58.2(typescript@5.9.3)
+ '@typescript-eslint/types': 8.58.2
+ debug: 4.4.3
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/project-service@8.59.0(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/tsconfig-utils': 8.59.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.59.0
+ debug: 4.4.3
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/scope-manager@5.62.0':
+ dependencies:
+ '@typescript-eslint/types': 5.62.0
+ '@typescript-eslint/visitor-keys': 5.62.0
+
+ '@typescript-eslint/scope-manager@8.58.2':
+ dependencies:
+ '@typescript-eslint/types': 8.58.2
+ '@typescript-eslint/visitor-keys': 8.58.2
+
+ '@typescript-eslint/scope-manager@8.59.0':
+ dependencies:
+ '@typescript-eslint/types': 8.59.0
+ '@typescript-eslint/visitor-keys': 8.59.0
+
+ '@typescript-eslint/tsconfig-utils@8.58.2(typescript@5.9.3)':
+ dependencies:
+ typescript: 5.9.3
+
+ '@typescript-eslint/tsconfig-utils@8.59.0(typescript@5.9.3)':
+ dependencies:
+ typescript: 5.9.3
+
+ '@typescript-eslint/type-utils@8.58.2(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/types': 8.58.2
+ '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ debug: 4.4.3
+ eslint: 8.57.1
+ ts-api-utils: 2.5.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/types@5.62.0': {}
+
+ '@typescript-eslint/types@8.58.2': {}
+
+ '@typescript-eslint/types@8.59.0': {}
+
+ '@typescript-eslint/typescript-estree@5.62.0(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/types': 5.62.0
+ '@typescript-eslint/visitor-keys': 5.62.0
+ debug: 4.4.3
+ globby: 11.1.0
+ is-glob: 4.0.3
+ semver: 7.7.4
+ tsutils: 3.21.0(typescript@5.9.3)
+ optionalDependencies:
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/typescript-estree@8.58.2(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/project-service': 8.58.2(typescript@5.9.3)
+ '@typescript-eslint/tsconfig-utils': 8.58.2(typescript@5.9.3)
+ '@typescript-eslint/types': 8.58.2
+ '@typescript-eslint/visitor-keys': 8.58.2
+ debug: 4.4.3
+ minimatch: 10.2.5
+ semver: 7.7.4
+ tinyglobby: 0.2.16
+ ts-api-utils: 2.5.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/typescript-estree@8.59.0(typescript@5.9.3)':
+ dependencies:
+ '@typescript-eslint/project-service': 8.59.0(typescript@5.9.3)
+ '@typescript-eslint/tsconfig-utils': 8.59.0(typescript@5.9.3)
+ '@typescript-eslint/types': 8.59.0
+ '@typescript-eslint/visitor-keys': 8.59.0
+ debug: 4.4.3
+ minimatch: 10.2.5
+ semver: 7.7.4
+ tinyglobby: 0.2.16
+ ts-api-utils: 2.5.0(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/utils@5.62.0(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@8.57.1)
+ '@types/json-schema': 7.0.15
+ '@types/semver': 7.7.1
+ '@typescript-eslint/scope-manager': 5.62.0
+ '@typescript-eslint/types': 5.62.0
+ '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.9.3)
+ eslint: 8.57.1
+ eslint-scope: 5.1.1
+ semver: 7.7.4
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ '@typescript-eslint/utils@8.58.2(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@8.57.1)
+ '@typescript-eslint/scope-manager': 8.58.2
+ '@typescript-eslint/types': 8.58.2
+ '@typescript-eslint/typescript-estree': 8.58.2(typescript@5.9.3)
+ eslint: 8.57.1
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/utils@8.59.0(eslint@8.57.1)(typescript@5.9.3)':
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@8.57.1)
+ '@typescript-eslint/scope-manager': 8.59.0
+ '@typescript-eslint/types': 8.59.0
+ '@typescript-eslint/typescript-estree': 8.59.0(typescript@5.9.3)
+ eslint: 8.57.1
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ '@typescript-eslint/visitor-keys@5.62.0':
+ dependencies:
+ '@typescript-eslint/types': 5.62.0
+ eslint-visitor-keys: 3.4.3
+
+ '@typescript-eslint/visitor-keys@8.58.2':
+ dependencies:
+ '@typescript-eslint/types': 8.58.2
+ eslint-visitor-keys: 5.0.1
+
+ '@typescript-eslint/visitor-keys@8.59.0':
+ dependencies:
+ '@typescript-eslint/types': 8.59.0
+ eslint-visitor-keys: 5.0.1
+
+ '@ungap/structured-clone@1.3.0': {}
+
+ '@use-gesture/core@10.3.1': {}
+
+ '@use-gesture/react@10.3.1(react@19.2.5)':
+ dependencies:
+ '@use-gesture/core': 10.3.1
+ react: 19.2.5
+
+ '@vector-im/compound-design-tokens@10.1.0(@types/react@19.2.14)(react@19.2.5)':
+ optionalDependencies:
+ '@types/react': 19.2.14
+ react: 19.2.5
+
+ '@vector-im/compound-web@9.2.0(@fontsource/inconsolata@5.2.8)(@fontsource/inter@5.2.8)(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(@vector-im/compound-design-tokens@10.1.0(@types/react@19.2.14)(react@19.2.5))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)':
+ dependencies:
+ '@floating-ui/react': 0.27.19(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@fontsource/inconsolata': 5.2.8
+ '@fontsource/inter': 5.2.8
+ '@radix-ui/react-context-menu': 2.2.16(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-dropdown-menu': 2.1.16(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-form': 0.1.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-progress': 1.1.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-separator': 1.1.8(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@radix-ui/react-slot': 1.2.4(@types/react@19.2.14)(react@19.2.5)
+ '@vector-im/compound-design-tokens': 10.1.0(@types/react@19.2.14)(react@19.2.5)
+ classnames: 2.5.1
+ react: 19.2.5
+ vaul: 1.1.2(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+ transitivePeerDependencies:
+ - '@types/react-dom'
+ - react-dom
+
+ '@vitejs/plugin-react@4.7.0(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0)
+ '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.29.0)
+ '@rolldown/pluginutils': 1.0.0-beta.27
+ '@types/babel__core': 7.20.5
+ react-refresh: 0.17.0
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@vitest/coverage-v8@4.1.4(vitest@4.1.4)':
+ dependencies:
+ '@bcoe/v8-coverage': 1.0.2
+ '@vitest/utils': 4.1.4
+ ast-v8-to-istanbul: 1.0.0
+ istanbul-lib-coverage: 3.2.2
+ istanbul-lib-report: 3.0.1
+ istanbul-reports: 3.2.0
+ magicast: 0.5.2
+ obug: 2.1.1
+ std-env: 4.1.0
+ tinyrainbow: 3.1.0
+ vitest: 4.1.4(@types/node@24.12.2)(@vitest/coverage-v8@4.1.4)(jsdom@26.1.0)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+
+ '@vitest/expect@3.2.4':
+ dependencies:
+ '@types/chai': 5.2.3
+ '@vitest/spy': 3.2.4
+ '@vitest/utils': 3.2.4
+ chai: 5.3.3
+ tinyrainbow: 2.0.0
+
+ '@vitest/expect@4.1.4':
+ dependencies:
+ '@standard-schema/spec': 1.1.0
+ '@types/chai': 5.2.3
+ '@vitest/spy': 4.1.4
+ '@vitest/utils': 4.1.4
+ chai: 6.2.2
+ tinyrainbow: 3.1.0
+
+ '@vitest/mocker@4.1.4(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))':
+ dependencies:
+ '@vitest/spy': 4.1.4
+ estree-walker: 3.0.3
+ magic-string: 0.30.21
+ optionalDependencies:
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+
+ '@vitest/pretty-format@3.2.4':
+ dependencies:
+ tinyrainbow: 2.0.0
+
+ '@vitest/pretty-format@4.1.4':
+ dependencies:
+ tinyrainbow: 3.1.0
+
+ '@vitest/runner@4.1.4':
+ dependencies:
+ '@vitest/utils': 4.1.4
+ pathe: 2.0.3
+
+ '@vitest/snapshot@4.1.4':
+ dependencies:
+ '@vitest/pretty-format': 4.1.4
+ '@vitest/utils': 4.1.4
+ magic-string: 0.30.21
+ pathe: 2.0.3
+
+ '@vitest/spy@3.2.4':
+ dependencies:
+ tinyspy: 4.0.4
+
+ '@vitest/spy@4.1.4': {}
+
+ '@vitest/utils@3.2.4':
+ dependencies:
+ '@vitest/pretty-format': 3.2.4
+ loupe: 3.2.1
+ tinyrainbow: 2.0.0
+
+ '@vitest/utils@4.1.4':
+ dependencies:
+ '@vitest/pretty-format': 4.1.4
+ convert-source-map: 2.0.0
+ tinyrainbow: 3.1.0
+
+ '@webcontainer/env@1.1.1': {}
+
+ acorn-jsx@5.3.2(acorn@8.16.0):
+ dependencies:
+ acorn: 8.16.0
+
+ acorn@8.16.0: {}
+
+ agent-base@6.0.2:
+ dependencies:
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ agent-base@7.1.4: {}
+
+ ajv@6.14.0:
+ dependencies:
+ fast-deep-equal: 3.1.3
+ fast-json-stable-stringify: 2.1.0
+ json-schema-traverse: 0.4.1
+ uri-js: 4.4.1
+
+ another-json@0.2.0: {}
+
+ ansi-regex@5.0.1: {}
+
+ ansi-regex@6.2.2: {}
+
+ ansi-styles@4.3.0:
+ dependencies:
+ color-convert: 2.0.1
+
+ ansi-styles@5.2.0: {}
+
+ ansi-styles@6.2.3: {}
+
+ anymatch@3.1.3:
+ dependencies:
+ normalize-path: 3.0.0
+ picomatch: 2.3.2
+
+ are-docs-informative@0.0.2: {}
+
+ argparse@2.0.1: {}
+
+ aria-hidden@1.2.6:
+ dependencies:
+ tslib: 2.8.1
+
+ aria-query@5.3.0:
+ dependencies:
+ dequal: 2.0.3
+
+ aria-query@5.3.2: {}
+
+ array-buffer-byte-length@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ is-array-buffer: 3.0.5
+
+ array-includes@3.1.9:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ is-string: 1.1.1
+ math-intrinsics: 1.1.0
+
+ array-union@2.1.0: {}
+
+ array.prototype.findlast@1.2.5:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ es-shim-unscopables: 1.1.0
+
+ array.prototype.findlastindex@1.2.6:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ es-shim-unscopables: 1.1.0
+
+ array.prototype.flat@1.3.3:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-shim-unscopables: 1.1.0
+
+ array.prototype.flatmap@1.3.3:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-shim-unscopables: 1.1.0
+
+ array.prototype.tosorted@1.1.4:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-errors: 1.3.0
+ es-shim-unscopables: 1.1.0
+
+ arraybuffer.prototype.slice@1.0.4:
+ dependencies:
+ array-buffer-byte-length: 1.0.2
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ is-array-buffer: 3.0.5
+
+ asn1.js@4.10.1:
+ dependencies:
+ bn.js: 4.12.3
+ inherits: 2.0.4
+ minimalistic-assert: 1.0.1
+
+ assert@2.1.0:
+ dependencies:
+ call-bind: 1.0.9
+ is-nan: 1.3.2
+ object-is: 1.1.6
+ object.assign: 4.1.7
+ util: 0.12.5
+
+ assertion-error@2.0.1: {}
+
+ ast-types-flow@0.0.8: {}
+
+ ast-types@0.16.1:
+ dependencies:
+ tslib: 2.8.1
+
+ ast-v8-to-istanbul@1.0.0:
+ dependencies:
+ '@jridgewell/trace-mapping': 0.3.31
+ estree-walker: 3.0.3
+ js-tokens: 10.0.0
+
+ async-function@1.0.0: {}
+
+ async@3.2.6: {}
+
+ autoprefixer@10.5.0(postcss@8.5.10):
+ dependencies:
+ browserslist: 4.28.2
+ caniuse-lite: 1.0.30001788
+ fraction.js: 5.3.4
+ picocolors: 1.1.1
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ available-typed-arrays@1.0.7:
+ dependencies:
+ possible-typed-array-names: 1.1.0
+
+ axe-core@4.11.3: {}
+
+ axobject-query@4.1.0: {}
+
+ b4a@1.8.0: {}
+
+ babel-plugin-polyfill-corejs2@0.4.17(@babel/core@7.29.0):
+ dependencies:
+ '@babel/compat-data': 7.29.0
+ '@babel/core': 7.29.0
+ '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.0)
+ semver: 6.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-plugin-polyfill-corejs3@0.14.2(@babel/core@7.29.0):
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.0)
+ core-js-compat: 3.49.0
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-plugin-polyfill-regenerator@0.6.8(@babel/core@7.29.0):
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/helper-define-polyfill-provider': 0.6.8(@babel/core@7.29.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ babel-plugin-transform-vite-meta-env@1.0.3:
+ dependencies:
+ '@babel/runtime': 7.29.2
+ '@types/babel__core': 7.20.5
+
+ balanced-match@4.0.4: {}
+
+ bare-events@2.8.2: {}
+
+ base-x@5.0.1: {}
+
+ base64-js@1.5.1: {}
+
+ baseline-browser-mapping@2.10.19: {}
+
+ before-after-hook@2.2.3: {}
+
+ bent@7.3.12:
+ dependencies:
+ bytesish: 0.4.4
+ caseless: 0.12.0
+ is-stream: 2.0.1
+
+ binary-extensions@2.3.0: {}
+
+ bl@5.1.0:
+ dependencies:
+ buffer: 6.0.3
+ inherits: 2.0.4
+ readable-stream: 3.6.2
+
+ bn.js@4.12.3: {}
+
+ bn.js@5.2.3: {}
+
+ boolbase@1.0.0: {}
+
+ brace-expansion@5.0.5:
+ dependencies:
+ balanced-match: 4.0.4
+
+ braces@3.0.3:
+ dependencies:
+ fill-range: 7.1.1
+
+ broccoli-node-api@1.7.0: {}
+
+ broccoli-node-info@2.2.0: {}
+
+ broccoli-output-wrapper@3.2.5:
+ dependencies:
+ fs-extra: 8.1.0
+ heimdalljs-logger: 0.1.10
+ symlink-or-copy: 1.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ broccoli-plugin@4.0.7:
+ dependencies:
+ broccoli-node-api: 1.7.0
+ broccoli-output-wrapper: 3.2.5
+ fs-merger: 3.2.1
+ promise-map-series: 0.3.0
+ quick-temp: 0.1.9
+ rimraf: 3.0.2
+ symlink-or-copy: 1.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ brorand@1.1.0: {}
+
+ browser-resolve@2.0.0:
+ dependencies:
+ resolve: 1.22.12
+
+ browserify-aes@1.2.0:
+ dependencies:
+ buffer-xor: 1.0.3
+ cipher-base: 1.0.7
+ create-hash: 1.2.0
+ evp_bytestokey: 1.0.3
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+
+ browserify-cipher@1.0.1:
+ dependencies:
+ browserify-aes: 1.2.0
+ browserify-des: 1.0.2
+ evp_bytestokey: 1.0.3
+
+ browserify-des@1.0.2:
+ dependencies:
+ cipher-base: 1.0.7
+ des.js: 1.1.0
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+
+ browserify-rsa@4.1.1:
+ dependencies:
+ bn.js: 5.2.3
+ randombytes: 2.1.0
+ safe-buffer: 5.2.1
+
+ browserify-sign@4.2.5:
+ dependencies:
+ bn.js: 5.2.3
+ browserify-rsa: 4.1.1
+ create-hash: 1.2.0
+ create-hmac: 1.1.7
+ elliptic: 6.6.1
+ inherits: 2.0.4
+ parse-asn1: 5.1.9
+ readable-stream: 2.3.8
+ safe-buffer: 5.2.1
+
+ browserify-zlib@0.2.0:
+ dependencies:
+ pako: 1.0.11
+
+ browserslist@4.28.2:
+ dependencies:
+ baseline-browser-mapping: 2.10.19
+ caniuse-lite: 1.0.30001788
+ electron-to-chromium: 1.5.339
+ node-releases: 2.0.37
+ update-browserslist-db: 1.2.3(browserslist@4.28.2)
+
+ bs58@6.0.0:
+ dependencies:
+ base-x: 5.0.1
+
+ buffer-from@1.1.2: {}
+
+ buffer-xor@1.0.3: {}
+
+ buffer@5.7.1:
+ dependencies:
+ base64-js: 1.5.1
+ ieee754: 1.2.1
+
+ buffer@6.0.3:
+ dependencies:
+ base64-js: 1.5.1
+ ieee754: 1.2.1
+
+ builtin-modules@3.3.0: {}
+
+ builtin-status-codes@3.0.0: {}
+
+ bundle-name@4.1.0:
+ dependencies:
+ run-applescript: 7.1.0
+
+ bytesish@0.4.4: {}
+
+ call-bind-apply-helpers@1.0.2:
+ dependencies:
+ es-errors: 1.3.0
+ function-bind: 1.1.2
+
+ call-bind@1.0.9:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-define-property: 1.0.1
+ get-intrinsic: 1.3.0
+ set-function-length: 1.2.2
+
+ call-bound@1.0.4:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ get-intrinsic: 1.3.0
+
+ callsites@3.1.0: {}
+
+ camel-case@4.1.2:
+ dependencies:
+ pascal-case: 3.1.2
+ tslib: 2.8.1
+
+ camelcase@5.3.1: {}
+
+ camelcase@6.3.0: {}
+
+ caniuse-lite@1.0.30001788: {}
+
+ caseless@0.12.0: {}
+
+ chai@5.3.3:
+ dependencies:
+ assertion-error: 2.0.1
+ check-error: 2.1.3
+ deep-eql: 5.0.2
+ loupe: 3.2.1
+ pathval: 2.0.1
+
+ chai@6.2.2: {}
+
+ chalk@4.1.2:
+ dependencies:
+ ansi-styles: 4.3.0
+ supports-color: 7.2.0
+
+ chalk@5.6.2: {}
+
+ check-error@2.1.3: {}
+
+ cheerio-select@2.1.0:
+ dependencies:
+ boolbase: 1.0.0
+ css-select: 5.2.2
+ css-what: 6.2.2
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ domutils: 3.2.2
+
+ cheerio@1.2.0:
+ dependencies:
+ cheerio-select: 2.1.0
+ dom-serializer: 2.0.0
+ domhandler: 5.0.3
+ domutils: 3.2.2
+ encoding-sniffer: 0.2.1
+ htmlparser2: 10.1.0
+ parse5: 7.3.0
+ parse5-htmlparser2-tree-adapter: 7.1.0
+ parse5-parser-stream: 7.1.2
+ undici: 7.25.0
+ whatwg-mimetype: 4.0.0
+
+ chokidar@3.6.0:
+ dependencies:
+ anymatch: 3.1.3
+ braces: 3.0.3
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+
+ chokidar@4.0.3:
+ dependencies:
+ readdirp: 4.1.2
+
+ ci-info@4.4.0: {}
+
+ cipher-base@1.0.7:
+ dependencies:
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+ to-buffer: 1.2.2
+
+ classnames@2.5.1: {}
+
+ clean-css@5.3.3:
+ dependencies:
+ source-map: 0.6.1
+
+ clean-regexp@1.0.0:
+ dependencies:
+ escape-string-regexp: 1.0.5
+
+ cliui@6.0.0:
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 6.2.0
+
+ cliui@8.0.1:
+ dependencies:
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+ wrap-ansi: 7.0.0
+
+ clone@2.1.2: {}
+
+ clsx@2.1.1: {}
+
+ color-convert@2.0.1:
+ dependencies:
+ color-name: 1.1.4
+
+ color-name@1.1.4: {}
+
+ colorette@2.0.20: {}
+
+ colors@1.4.0: {}
+
+ commander@12.1.0: {}
+
+ commander@2.20.3: {}
+
+ commander@8.3.0: {}
+
+ comment-parser@1.4.1: {}
+
+ common-tags@1.8.2: {}
+
+ connect-history-api-fallback@1.6.0: {}
+
+ consola@2.15.3: {}
+
+ console-browserify@1.2.0: {}
+
+ constants-browserify@1.0.0: {}
+
+ content-type@1.0.5: {}
+
+ convert-source-map@2.0.0: {}
+
+ cookie@1.1.1: {}
+
+ copy-to-clipboard@3.3.3:
+ dependencies:
+ toggle-selection: 1.0.6
+
+ core-js-compat@3.49.0:
+ dependencies:
+ browserslist: 4.28.2
+
+ core-util-is@1.0.3: {}
+
+ cosmiconfig@8.3.6(typescript@5.9.3):
+ dependencies:
+ import-fresh: 3.3.1
+ js-yaml: 4.1.1
+ parse-json: 5.2.0
+ path-type: 4.0.0
+ optionalDependencies:
+ typescript: 5.9.3
+
+ create-ecdh@4.0.4:
+ dependencies:
+ bn.js: 4.12.3
+ elliptic: 6.6.1
+
+ create-hash@1.2.0:
+ dependencies:
+ cipher-base: 1.0.7
+ inherits: 2.0.4
+ md5.js: 1.3.5
+ ripemd160: 2.0.3
+ sha.js: 2.4.12
+
+ create-hmac@1.1.7:
+ dependencies:
+ cipher-base: 1.0.7
+ create-hash: 1.2.0
+ inherits: 2.0.4
+ ripemd160: 2.0.3
+ safe-buffer: 5.2.1
+ sha.js: 2.4.12
+
+ create-require@1.1.1: {}
+
+ cross-spawn@7.0.6:
+ dependencies:
+ path-key: 3.1.1
+ shebang-command: 2.0.0
+ which: 2.0.2
+
+ crypto-browserify@3.12.1:
+ dependencies:
+ browserify-cipher: 1.0.1
+ browserify-sign: 4.2.5
+ create-ecdh: 4.0.4
+ create-hash: 1.2.0
+ create-hmac: 1.1.7
+ diffie-hellman: 5.0.3
+ hash-base: 3.0.5
+ inherits: 2.0.4
+ pbkdf2: 3.1.5
+ public-encrypt: 4.0.3
+ randombytes: 2.1.0
+ randomfill: 1.0.4
+
+ css-blank-pseudo@7.0.1(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ css-has-pseudo@7.0.3(postcss@8.5.10):
+ dependencies:
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.1)
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+ postcss-value-parser: 4.2.0
+
+ css-prefers-color-scheme@10.0.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+
+ css-select@4.3.0:
+ dependencies:
+ boolbase: 1.0.0
+ css-what: 6.2.2
+ domhandler: 4.3.1
+ domutils: 2.8.0
+ nth-check: 2.1.1
+
+ css-select@5.2.2:
+ dependencies:
+ boolbase: 1.0.0
+ css-what: 6.2.2
+ domhandler: 5.0.3
+ domutils: 3.2.2
+ nth-check: 2.1.1
+
+ css-what@6.2.2: {}
+
+ css.escape@1.5.1: {}
+
+ cssdb@8.8.0: {}
+
+ cssesc@3.0.0: {}
+
+ cssstyle@4.6.0:
+ dependencies:
+ '@asamuzakjp/css-color': 3.2.0
+ rrweb-cssom: 0.8.0
+
+ csstype@3.2.3: {}
+
+ damerau-levenshtein@1.0.8: {}
+
+ data-urls@5.0.0:
+ dependencies:
+ whatwg-mimetype: 4.0.0
+ whatwg-url: 14.2.0
+
+ data-view-buffer@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-data-view: 1.0.2
+
+ data-view-byte-length@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-data-view: 1.0.2
+
+ data-view-byte-offset@1.0.1:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-data-view: 1.0.2
+
+ debug@2.6.9:
+ dependencies:
+ ms: 2.0.0
+
+ debug@3.2.7:
+ dependencies:
+ ms: 2.1.3
+
+ debug@4.4.3:
+ dependencies:
+ ms: 2.1.3
+
+ decamelize@1.2.0: {}
+
+ decamelize@5.0.1: {}
+
+ decimal.js@10.6.0: {}
+
+ deep-eql@5.0.2: {}
+
+ deep-is@0.1.4: {}
+
+ default-browser-id@5.0.1: {}
+
+ default-browser@5.5.0:
+ dependencies:
+ bundle-name: 4.1.0
+ default-browser-id: 5.0.1
+
+ define-data-property@1.1.4:
+ dependencies:
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ gopd: 1.2.0
+
+ define-lazy-prop@3.0.0: {}
+
+ define-properties@1.2.1:
+ dependencies:
+ define-data-property: 1.1.4
+ has-property-descriptors: 1.0.2
+ object-keys: 1.1.1
+
+ deprecation@2.3.1: {}
+
+ dequal@2.0.3: {}
+
+ des.js@1.1.0:
+ dependencies:
+ inherits: 2.0.4
+ minimalistic-assert: 1.0.1
+
+ detect-libc@2.1.2: {}
+
+ detect-node-es@1.1.0: {}
+
+ diffie-hellman@5.0.3:
+ dependencies:
+ bn.js: 4.12.3
+ miller-rabin: 4.0.1
+ randombytes: 2.1.0
+
+ dijkstrajs@1.0.3: {}
+
+ dir-glob@3.0.1:
+ dependencies:
+ path-type: 4.0.0
+
+ doctrine@2.1.0:
+ dependencies:
+ esutils: 2.0.3
+
+ doctrine@3.0.0:
+ dependencies:
+ esutils: 2.0.3
+
+ dom-accessibility-api@0.5.16: {}
+
+ dom-accessibility-api@0.6.3: {}
+
+ dom-serializer@1.4.1:
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 4.3.1
+ entities: 2.2.0
+
+ dom-serializer@2.0.0:
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ entities: 4.5.0
+
+ domain-browser@4.22.0: {}
+
+ domelementtype@2.3.0: {}
+
+ domhandler@4.3.1:
+ dependencies:
+ domelementtype: 2.3.0
+
+ domhandler@5.0.3:
+ dependencies:
+ domelementtype: 2.3.0
+
+ domutils@2.8.0:
+ dependencies:
+ dom-serializer: 1.4.1
+ domelementtype: 2.3.0
+ domhandler: 4.3.1
+
+ domutils@3.2.2:
+ dependencies:
+ dom-serializer: 2.0.0
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+
+ dot-case@3.0.4:
+ dependencies:
+ no-case: 3.0.4
+ tslib: 2.8.1
+
+ dotenv-expand@8.0.3: {}
+
+ dotenv@16.6.1: {}
+
+ dunder-proto@1.0.1:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-errors: 1.3.0
+ gopd: 1.2.0
+
+ eastasianwidth@0.2.0: {}
+
+ ejs@3.1.10:
+ dependencies:
+ jake: 10.9.4
+
+ electron-to-chromium@1.5.339: {}
+
+ elliptic@6.6.1:
+ dependencies:
+ bn.js: 4.12.3
+ brorand: 1.1.0
+ hash.js: 1.1.7
+ hmac-drbg: 1.0.1
+ inherits: 2.0.4
+ minimalistic-assert: 1.0.1
+ minimalistic-crypto-utils: 1.0.1
+
+ emoji-regex@8.0.0: {}
+
+ emoji-regex@9.2.2: {}
+
+ empathic@2.0.0: {}
+
+ encoding-sniffer@0.2.1:
+ dependencies:
+ iconv-lite: 0.6.3
+ whatwg-encoding: 3.1.1
+
+ ensure-posix-path@1.1.1: {}
+
+ entities@2.2.0: {}
+
+ entities@4.5.0: {}
+
+ entities@6.0.1: {}
+
+ entities@7.0.1: {}
+
+ eol@0.9.1: {}
+
+ error-ex@1.3.4:
+ dependencies:
+ is-arrayish: 0.2.1
+
+ es-abstract@1.24.2:
+ dependencies:
+ array-buffer-byte-length: 1.0.2
+ arraybuffer.prototype.slice: 1.0.4
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ data-view-buffer: 1.0.2
+ data-view-byte-length: 1.0.2
+ data-view-byte-offset: 1.0.1
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ es-set-tostringtag: 2.1.0
+ es-to-primitive: 1.3.0
+ function.prototype.name: 1.1.8
+ get-intrinsic: 1.3.0
+ get-proto: 1.0.1
+ get-symbol-description: 1.1.0
+ globalthis: 1.0.4
+ gopd: 1.2.0
+ has-property-descriptors: 1.0.2
+ has-proto: 1.2.0
+ has-symbols: 1.1.0
+ hasown: 2.0.2
+ internal-slot: 1.1.0
+ is-array-buffer: 3.0.5
+ is-callable: 1.2.7
+ is-data-view: 1.0.2
+ is-negative-zero: 2.0.3
+ is-regex: 1.2.1
+ is-set: 2.0.3
+ is-shared-array-buffer: 1.0.4
+ is-string: 1.1.1
+ is-typed-array: 1.1.15
+ is-weakref: 1.1.1
+ math-intrinsics: 1.1.0
+ object-inspect: 1.13.4
+ object-keys: 1.1.1
+ object.assign: 4.1.7
+ own-keys: 1.0.1
+ regexp.prototype.flags: 1.5.4
+ safe-array-concat: 1.1.3
+ safe-push-apply: 1.0.0
+ safe-regex-test: 1.1.0
+ set-proto: 1.0.0
+ stop-iteration-iterator: 1.1.0
+ string.prototype.trim: 1.2.10
+ string.prototype.trimend: 1.0.9
+ string.prototype.trimstart: 1.0.8
+ typed-array-buffer: 1.0.3
+ typed-array-byte-length: 1.0.3
+ typed-array-byte-offset: 1.0.4
+ typed-array-length: 1.0.7
+ unbox-primitive: 1.1.0
+ which-typed-array: 1.1.20
+
+ es-define-property@1.0.1: {}
+
+ es-errors@1.3.0: {}
+
+ es-iterator-helpers@1.3.2:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-errors: 1.3.0
+ es-set-tostringtag: 2.1.0
+ function-bind: 1.1.2
+ get-intrinsic: 1.3.0
+ globalthis: 1.0.4
+ gopd: 1.2.0
+ has-property-descriptors: 1.0.2
+ has-proto: 1.2.0
+ has-symbols: 1.1.0
+ internal-slot: 1.1.0
+ iterator.prototype: 1.1.5
+ math-intrinsics: 1.1.0
+
+ es-module-lexer@2.0.0: {}
+
+ es-object-atoms@1.1.1:
+ dependencies:
+ es-errors: 1.3.0
+
+ es-set-tostringtag@2.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ has-tostringtag: 1.0.2
+ hasown: 2.0.2
+
+ es-shim-unscopables@1.1.0:
+ dependencies:
+ hasown: 2.0.2
+
+ es-to-primitive@1.3.0:
+ dependencies:
+ is-callable: 1.2.7
+ is-date-object: 1.1.0
+ is-symbol: 1.1.1
+
+ esbuild@0.27.7:
+ optionalDependencies:
+ '@esbuild/aix-ppc64': 0.27.7
+ '@esbuild/android-arm': 0.27.7
+ '@esbuild/android-arm64': 0.27.7
+ '@esbuild/android-x64': 0.27.7
+ '@esbuild/darwin-arm64': 0.27.7
+ '@esbuild/darwin-x64': 0.27.7
+ '@esbuild/freebsd-arm64': 0.27.7
+ '@esbuild/freebsd-x64': 0.27.7
+ '@esbuild/linux-arm': 0.27.7
+ '@esbuild/linux-arm64': 0.27.7
+ '@esbuild/linux-ia32': 0.27.7
+ '@esbuild/linux-loong64': 0.27.7
+ '@esbuild/linux-mips64el': 0.27.7
+ '@esbuild/linux-ppc64': 0.27.7
+ '@esbuild/linux-riscv64': 0.27.7
+ '@esbuild/linux-s390x': 0.27.7
+ '@esbuild/linux-x64': 0.27.7
+ '@esbuild/netbsd-arm64': 0.27.7
+ '@esbuild/netbsd-x64': 0.27.7
+ '@esbuild/openbsd-arm64': 0.27.7
+ '@esbuild/openbsd-x64': 0.27.7
+ '@esbuild/openharmony-arm64': 0.27.7
+ '@esbuild/sunos-x64': 0.27.7
+ '@esbuild/win32-arm64': 0.27.7
+ '@esbuild/win32-ia32': 0.27.7
+ '@esbuild/win32-x64': 0.27.7
+
+ escalade@3.2.0: {}
+
+ escape-string-regexp@1.0.5: {}
+
+ escape-string-regexp@4.0.0: {}
+
+ eslint-config-google@0.14.0(eslint@8.57.1):
+ dependencies:
+ eslint: 8.57.1
+
+ eslint-config-prettier@10.1.8(eslint@8.57.1):
+ dependencies:
+ eslint: 8.57.1
+
+ eslint-etc@5.2.1(eslint@8.57.1)(typescript@5.9.3):
+ dependencies:
+ '@typescript-eslint/experimental-utils': 5.62.0(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ tsutils: 3.21.0(typescript@5.9.3)
+ tsutils-etc: 1.4.2(tsutils@3.21.0(typescript@5.9.3))(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-import-resolver-node@0.3.10:
+ dependencies:
+ debug: 3.2.7
+ is-core-module: 2.16.1
+ resolve: 2.0.0-next.6
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-module-utils@2.12.1(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint-import-resolver-node@0.3.10)(eslint@8.57.1):
+ dependencies:
+ debug: 3.2.7
+ optionalDependencies:
+ '@typescript-eslint/parser': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ eslint-import-resolver-node: 0.3.10
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-deprecate@0.9.0(eslint@8.57.1):
+ dependencies:
+ eslint: 8.57.1
+
+ eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1):
+ dependencies:
+ '@rtsao/scc': 1.1.0
+ array-includes: 3.1.9
+ array.prototype.findlastindex: 1.2.6
+ array.prototype.flat: 1.3.3
+ array.prototype.flatmap: 1.3.3
+ debug: 3.2.7
+ doctrine: 2.1.0
+ eslint: 8.57.1
+ eslint-import-resolver-node: 0.3.10
+ eslint-module-utils: 2.12.1(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint-import-resolver-node@0.3.10)(eslint@8.57.1)
+ hasown: 2.0.2
+ is-core-module: 2.16.1
+ is-glob: 4.0.3
+ minimatch: 10.2.5
+ object.fromentries: 2.0.8
+ object.groupby: 1.0.3
+ object.values: 1.2.1
+ semver: 6.3.1
+ string.prototype.trimend: 1.0.9
+ tsconfig-paths: 3.15.0
+ optionalDependencies:
+ '@typescript-eslint/parser': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ transitivePeerDependencies:
+ - eslint-import-resolver-typescript
+ - eslint-import-resolver-webpack
+ - supports-color
+
+ eslint-plugin-jest@29.15.2(@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3):
+ dependencies:
+ '@typescript-eslint/utils': 8.59.0(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ optionalDependencies:
+ '@typescript-eslint/eslint-plugin': 8.58.2(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-jsdoc@61.7.1(eslint@8.57.1):
+ dependencies:
+ '@es-joy/jsdoccomment': 0.78.0
+ '@es-joy/resolve.exports': 1.2.0
+ are-docs-informative: 0.0.2
+ comment-parser: 1.4.1
+ debug: 4.4.3
+ escape-string-regexp: 4.0.0
+ eslint: 8.57.1
+ espree: 11.2.0
+ esquery: 1.7.0
+ html-entities: 2.6.0
+ object-deep-merge: 2.0.0
+ parse-imports-exports: 0.2.4
+ semver: 7.7.4
+ spdx-expression-parse: 4.0.0
+ to-valid-identifier: 1.0.0
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-jsx-a11y@6.10.2(eslint@8.57.1):
+ dependencies:
+ aria-query: 5.3.2
+ array-includes: 3.1.9
+ array.prototype.flatmap: 1.3.3
+ ast-types-flow: 0.0.8
+ axe-core: 4.11.3
+ axobject-query: 4.1.0
+ damerau-levenshtein: 1.0.8
+ emoji-regex: 9.2.2
+ eslint: 8.57.1
+ hasown: 2.0.2
+ jsx-ast-utils: 3.3.5
+ language-tags: 1.0.9
+ minimatch: 10.2.5
+ object.fromentries: 2.0.8
+ safe-regex-test: 1.1.0
+ string.prototype.includes: 2.0.1
+
+ eslint-plugin-matrix-org@2.1.0(09e41ec1b738154136ea8b36e5821317):
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/eslint-parser': 7.28.6(@babel/core@7.29.0)(eslint@8.57.1)
+ '@babel/eslint-plugin': 7.27.1(@babel/eslint-parser@7.28.6(@babel/core@7.29.0)(eslint@8.57.1))(eslint@8.57.1)
+ '@stylistic/eslint-plugin': 3.1.0(eslint@8.57.1)(typescript@5.9.3)
+ '@typescript-eslint/eslint-plugin': 8.58.2(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)
+ '@typescript-eslint/parser': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ eslint-config-google: 0.14.0(eslint@8.57.1)
+ eslint-config-prettier: 10.1.8(eslint@8.57.1)
+ eslint-plugin-deprecate: 0.9.0(eslint@8.57.1)
+ eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)
+ eslint-plugin-jest: 29.15.2(@typescript-eslint/eslint-plugin@8.58.2(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3)
+ eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.1)
+ eslint-plugin-react: 7.37.5(eslint@8.57.1)
+ eslint-plugin-react-hooks: 5.2.0(eslint@8.57.1)
+ eslint-plugin-unicorn: 56.0.1(eslint@8.57.1)
+ prettier: 3.8.3
+ typescript: 5.9.3
+
+ eslint-plugin-react-hooks@5.2.0(eslint@8.57.1):
+ dependencies:
+ eslint: 8.57.1
+
+ eslint-plugin-react@7.37.5(eslint@8.57.1):
+ dependencies:
+ array-includes: 3.1.9
+ array.prototype.findlast: 1.2.5
+ array.prototype.flatmap: 1.3.3
+ array.prototype.tosorted: 1.1.4
+ doctrine: 2.1.0
+ es-iterator-helpers: 1.3.2
+ eslint: 8.57.1
+ estraverse: 5.3.0
+ hasown: 2.0.2
+ jsx-ast-utils: 3.3.5
+ minimatch: 10.2.5
+ object.entries: 1.1.9
+ object.fromentries: 2.0.8
+ object.values: 1.2.1
+ prop-types: 15.8.1
+ resolve: 2.0.0-next.6
+ semver: 6.3.1
+ string.prototype.matchall: 4.0.12
+ string.prototype.repeat: 1.0.0
+
+ eslint-plugin-rxjs@5.0.3(eslint@8.57.1)(typescript@5.9.3):
+ dependencies:
+ '@typescript-eslint/experimental-utils': 5.62.0(eslint@8.57.1)(typescript@5.9.3)
+ common-tags: 1.8.2
+ decamelize: 5.0.1
+ eslint: 8.57.1
+ eslint-etc: 5.2.1(eslint@8.57.1)(typescript@5.9.3)
+ requireindex: 1.2.0
+ rxjs-report-usage: 1.0.6
+ tslib: 2.8.1
+ tsutils: 3.21.0(typescript@5.9.3)
+ tsutils-etc: 1.4.2(tsutils@3.21.0(typescript@5.9.3))(typescript@5.9.3)
+ typescript: 5.9.3
+ transitivePeerDependencies:
+ - supports-color
+
+ eslint-plugin-storybook@10.3.5(eslint@8.57.1)(storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5))(typescript@5.9.3):
+ dependencies:
+ '@typescript-eslint/utils': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ storybook: 10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ transitivePeerDependencies:
+ - supports-color
+ - typescript
+
+ eslint-plugin-unicorn@56.0.1(eslint@8.57.1):
+ dependencies:
+ '@babel/helper-validator-identifier': 7.28.5
+ '@eslint-community/eslint-utils': 4.9.1(eslint@8.57.1)
+ ci-info: 4.4.0
+ clean-regexp: 1.0.0
+ core-js-compat: 3.49.0
+ eslint: 8.57.1
+ esquery: 1.7.0
+ globals: 15.15.0
+ indent-string: 4.0.0
+ is-builtin-module: 3.2.1
+ jsesc: 3.1.0
+ pluralize: 8.0.0
+ read-pkg-up: 7.0.1
+ regexp-tree: 0.1.27
+ regjsparser: 0.10.0
+ semver: 7.7.4
+ strip-indent: 3.0.0
+
+ eslint-rule-composer@0.3.0: {}
+
+ eslint-scope@5.1.1:
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 4.3.0
+
+ eslint-scope@7.2.2:
+ dependencies:
+ esrecurse: 4.3.0
+ estraverse: 5.3.0
+
+ eslint-visitor-keys@2.1.0: {}
+
+ eslint-visitor-keys@3.4.3: {}
+
+ eslint-visitor-keys@4.2.1: {}
+
+ eslint-visitor-keys@5.0.1: {}
+
+ eslint@8.57.1:
+ dependencies:
+ '@eslint-community/eslint-utils': 4.9.1(eslint@8.57.1)
+ '@eslint-community/regexpp': 4.12.2
+ '@eslint/eslintrc': 2.1.4
+ '@eslint/js': 8.57.1
+ '@humanwhocodes/config-array': 0.13.0
+ '@humanwhocodes/module-importer': 1.0.1
+ '@nodelib/fs.walk': 1.2.8
+ '@ungap/structured-clone': 1.3.0
+ ajv: 6.14.0
+ chalk: 4.1.2
+ cross-spawn: 7.0.6
+ debug: 4.4.3
+ doctrine: 3.0.0
+ escape-string-regexp: 4.0.0
+ eslint-scope: 7.2.2
+ eslint-visitor-keys: 3.4.3
+ espree: 9.6.1
+ esquery: 1.7.0
+ esutils: 2.0.3
+ fast-deep-equal: 3.1.3
+ file-entry-cache: 6.0.1
+ find-up: 5.0.0
+ glob-parent: 6.0.2
+ globals: 13.24.0
+ graphemer: 1.4.0
+ ignore: 5.3.2
+ imurmurhash: 0.1.4
+ is-glob: 4.0.3
+ is-path-inside: 3.0.3
+ js-yaml: 4.1.1
+ json-stable-stringify-without-jsonify: 1.0.1
+ levn: 0.4.1
+ lodash.merge: 4.6.2
+ minimatch: 10.2.5
+ natural-compare: 1.4.0
+ optionator: 0.9.4
+ strip-ansi: 6.0.1
+ text-table: 0.2.0
+ transitivePeerDependencies:
+ - supports-color
+
+ espree@10.4.0:
+ dependencies:
+ acorn: 8.16.0
+ acorn-jsx: 5.3.2(acorn@8.16.0)
+ eslint-visitor-keys: 4.2.1
+
+ espree@11.2.0:
+ dependencies:
+ acorn: 8.16.0
+ acorn-jsx: 5.3.2(acorn@8.16.0)
+ eslint-visitor-keys: 5.0.1
+
+ espree@9.6.1:
+ dependencies:
+ acorn: 8.16.0
+ acorn-jsx: 5.3.2(acorn@8.16.0)
+ eslint-visitor-keys: 3.4.3
+
+ esprima@4.0.1: {}
+
+ esquery@1.7.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ esrecurse@4.3.0:
+ dependencies:
+ estraverse: 5.3.0
+
+ estraverse@4.3.0: {}
+
+ estraverse@5.3.0: {}
+
+ estree-walker@2.0.2: {}
+
+ estree-walker@3.0.3:
+ dependencies:
+ '@types/estree': 1.0.8
+
+ esutils@2.0.3: {}
+
+ events-universal@1.0.1:
+ dependencies:
+ bare-events: 2.8.2
+ transitivePeerDependencies:
+ - bare-abort-controller
+
+ events@3.3.0: {}
+
+ evp_bytestokey@1.0.3:
+ dependencies:
+ md5.js: 1.3.5
+ safe-buffer: 5.2.1
+
+ expect-type@1.3.0: {}
+
+ fast-deep-equal@3.1.3: {}
+
+ fast-fifo@1.3.2: {}
+
+ fast-glob@3.3.3:
+ dependencies:
+ '@nodelib/fs.stat': 2.0.5
+ '@nodelib/fs.walk': 1.2.8
+ glob-parent: 5.1.2
+ merge2: 1.4.1
+ micromatch: 4.0.8
+
+ fast-json-stable-stringify@2.1.0: {}
+
+ fast-levenshtein@2.0.6: {}
+
+ fastq@1.20.1:
+ dependencies:
+ reusify: 1.1.0
+
+ fd-package-json@2.0.0:
+ dependencies:
+ walk-up-path: 4.0.0
+
+ fdir@6.5.0(picomatch@4.0.4):
+ optionalDependencies:
+ picomatch: 4.0.4
+
+ fetch-mock@11.1.5:
+ dependencies:
+ '@types/glob-to-regexp': 0.4.4
+ dequal: 2.0.3
+ glob-to-regexp: 0.4.1
+ is-subset: 0.1.1
+ regexparam: 3.0.0
+
+ fflate@0.4.8: {}
+
+ file-entry-cache@6.0.1:
+ dependencies:
+ flat-cache: 3.2.0
+
+ filelist@1.0.6:
+ dependencies:
+ minimatch: 10.2.5
+
+ fill-range@7.1.1:
+ dependencies:
+ to-regex-range: 5.0.1
+
+ find-up@4.1.0:
+ dependencies:
+ locate-path: 5.0.0
+ path-exists: 4.0.0
+
+ find-up@5.0.0:
+ dependencies:
+ locate-path: 6.0.0
+ path-exists: 4.0.0
+
+ flat-cache@3.2.0:
+ dependencies:
+ flatted: 3.4.2
+ keyv: 4.5.4
+ rimraf: 3.0.2
+
+ flatted@3.4.2: {}
+
+ for-each@0.3.5:
+ dependencies:
+ is-callable: 1.2.7
+
+ foreground-child@3.3.1:
+ dependencies:
+ cross-spawn: 7.0.6
+ signal-exit: 4.1.0
+
+ formatly@0.3.0:
+ dependencies:
+ fd-package-json: 2.0.0
+
+ fraction.js@5.3.4: {}
+
+ fs-extra@10.1.0:
+ dependencies:
+ graceful-fs: 4.2.11
+ jsonfile: 6.2.0
+ universalify: 2.0.1
+
+ fs-extra@11.3.4:
+ dependencies:
+ graceful-fs: 4.2.11
+ jsonfile: 6.2.0
+ universalify: 2.0.1
+
+ fs-extra@8.1.0:
+ dependencies:
+ graceful-fs: 4.2.11
+ jsonfile: 4.0.0
+ universalify: 0.1.2
+
+ fs-merger@3.2.1:
+ dependencies:
+ broccoli-node-api: 1.7.0
+ broccoli-node-info: 2.2.0
+ fs-extra: 8.1.0
+ fs-tree-diff: 2.0.1
+ walk-sync: 2.2.0
+ transitivePeerDependencies:
+ - supports-color
+
+ fs-mkdirp-stream@2.0.1:
+ dependencies:
+ graceful-fs: 4.2.11
+ streamx: 2.25.0
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ fs-tree-diff@2.0.1:
+ dependencies:
+ '@types/symlink-or-copy': 1.2.2
+ heimdalljs-logger: 0.1.10
+ object-assign: 4.1.1
+ path-posix: 1.0.0
+ symlink-or-copy: 1.3.1
+ transitivePeerDependencies:
+ - supports-color
+
+ fsevents@2.3.2:
+ optional: true
+
+ fsevents@2.3.3:
+ optional: true
+
+ function-bind@1.1.2: {}
+
+ function.prototype.name@1.1.8:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ functions-have-names: 1.2.3
+ hasown: 2.0.2
+ is-callable: 1.2.7
+
+ functions-have-names@1.2.3: {}
+
+ generator-function@2.0.1: {}
+
+ gensync@1.0.0-beta.2: {}
+
+ get-caller-file@2.0.5: {}
+
+ get-intrinsic@1.3.0:
+ dependencies:
+ call-bind-apply-helpers: 1.0.2
+ es-define-property: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ function-bind: 1.1.2
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ has-symbols: 1.1.0
+ hasown: 2.0.2
+ math-intrinsics: 1.1.0
+
+ get-nonce@1.0.1: {}
+
+ get-proto@1.0.1:
+ dependencies:
+ dunder-proto: 1.0.1
+ es-object-atoms: 1.1.1
+
+ get-symbol-description@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+
+ glob-parent@5.1.2:
+ dependencies:
+ is-glob: 4.0.3
+
+ glob-parent@6.0.2:
+ dependencies:
+ is-glob: 4.0.3
+
+ glob-stream@8.0.3:
+ dependencies:
+ '@gulpjs/to-absolute-glob': 4.0.0
+ anymatch: 3.1.3
+ fastq: 1.20.1
+ glob-parent: 6.0.2
+ is-glob: 4.0.3
+ is-negated-glob: 1.0.0
+ normalize-path: 3.0.0
+ streamx: 2.25.0
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ glob-to-regexp@0.4.1: {}
+
+ glob@10.5.0:
+ dependencies:
+ foreground-child: 3.3.1
+ jackspeak: 3.4.3
+ minimatch: 10.2.5
+ minipass: 7.1.3
+ package-json-from-dist: 1.0.1
+ path-scurry: 1.11.1
+
+ global-jsdom@26.0.0(jsdom@26.1.0):
+ dependencies:
+ jsdom: 26.1.0
+
+ globals@13.24.0:
+ dependencies:
+ type-fest: 0.20.2
+
+ globals@15.15.0: {}
+
+ globalthis@1.0.4:
+ dependencies:
+ define-properties: 1.2.1
+ gopd: 1.2.0
+
+ globby@11.1.0:
+ dependencies:
+ array-union: 2.1.0
+ dir-glob: 3.0.1
+ fast-glob: 3.3.3
+ ignore: 5.3.2
+ merge2: 1.4.1
+ slash: 3.0.0
+
+ gopd@1.2.0: {}
+
+ graceful-fs@4.2.11: {}
+
+ graphemer@1.4.0: {}
+
+ gulp-sort@2.0.0:
+ dependencies:
+ through2: 2.0.5
+
+ has-bigints@1.1.0: {}
+
+ has-flag@4.0.0: {}
+
+ has-property-descriptors@1.0.2:
+ dependencies:
+ es-define-property: 1.0.1
+
+ has-proto@1.2.0:
+ dependencies:
+ dunder-proto: 1.0.1
+
+ has-symbols@1.1.0: {}
+
+ has-tostringtag@1.0.2:
+ dependencies:
+ has-symbols: 1.1.0
+
+ hash-base@3.0.5:
+ dependencies:
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+
+ hash-base@3.1.2:
+ dependencies:
+ inherits: 2.0.4
+ readable-stream: 2.3.8
+ safe-buffer: 5.2.1
+ to-buffer: 1.2.2
+
+ hash.js@1.1.7:
+ dependencies:
+ inherits: 2.0.4
+ minimalistic-assert: 1.0.1
+
+ hasown@2.0.2:
+ dependencies:
+ function-bind: 1.1.2
+
+ he@1.2.0: {}
+
+ heimdalljs-logger@0.1.10:
+ dependencies:
+ debug: 2.6.9
+ heimdalljs: 0.2.6
+ transitivePeerDependencies:
+ - supports-color
+
+ heimdalljs@0.2.6:
+ dependencies:
+ rsvp: 3.2.1
+
+ hmac-drbg@1.0.1:
+ dependencies:
+ hash.js: 1.1.7
+ minimalistic-assert: 1.0.1
+ minimalistic-crypto-utils: 1.0.1
+
+ hoist-non-react-statics@3.3.2:
+ dependencies:
+ react-is: 16.13.1
+
+ hosted-git-info@2.8.9: {}
+
+ html-encoding-sniffer@4.0.0:
+ dependencies:
+ whatwg-encoding: 3.1.1
+
+ html-entities@2.6.0: {}
+
+ html-escaper@2.0.2: {}
+
+ html-minifier-terser@6.1.0:
+ dependencies:
+ camel-case: 4.1.2
+ clean-css: 5.3.3
+ commander: 8.3.0
+ he: 1.2.0
+ param-case: 3.0.4
+ relateurl: 0.2.7
+ terser: 5.46.1
+
+ html-parse-stringify@3.0.1:
+ dependencies:
+ void-elements: 3.1.0
+
+ htmlparser2@10.1.0:
+ dependencies:
+ domelementtype: 2.3.0
+ domhandler: 5.0.3
+ domutils: 3.2.2
+ entities: 7.0.1
+
+ http-proxy-agent@7.0.2:
+ dependencies:
+ agent-base: 7.1.4
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ https-browserify@1.0.0: {}
+
+ https-proxy-agent@5.0.1:
+ dependencies:
+ agent-base: 6.0.2
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ https-proxy-agent@7.0.6:
+ dependencies:
+ agent-base: 7.1.4
+ debug: 4.4.3
+ transitivePeerDependencies:
+ - supports-color
+
+ i18next-browser-languagedetector@8.2.1:
+ dependencies:
+ '@babel/runtime': 7.29.2
+
+ i18next-parser@9.4.0:
+ dependencies:
+ '@babel/runtime': 7.29.2
+ broccoli-plugin: 4.0.7
+ cheerio: 1.2.0
+ colors: 1.4.0
+ commander: 12.1.0
+ eol: 0.9.1
+ esbuild: 0.27.7
+ fs-extra: 11.3.4
+ gulp-sort: 2.0.0
+ i18next: 24.2.3(typescript@5.9.3)
+ js-yaml: 4.1.1
+ lilconfig: 3.1.3
+ rsvp: 4.8.5
+ sort-keys: 5.1.0
+ typescript: 5.9.3
+ vinyl: 3.0.1
+ vinyl-fs: 4.0.2
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+ - supports-color
+
+ i18next@24.2.3(typescript@5.9.3):
+ dependencies:
+ '@babel/runtime': 7.29.2
+ optionalDependencies:
+ typescript: 5.9.3
+
+ i18next@25.10.10(typescript@5.9.3):
+ dependencies:
+ '@babel/runtime': 7.29.2
+ optionalDependencies:
+ typescript: 5.9.3
+
+ iconv-lite@0.6.3:
+ dependencies:
+ safer-buffer: 2.1.2
+
+ ieee754@1.2.1: {}
+
+ ignore@5.3.2: {}
+
+ ignore@7.0.5: {}
+
+ immutable@5.1.5: {}
+
+ import-fresh@3.3.1:
+ dependencies:
+ parent-module: 1.0.1
+ resolve-from: 4.0.0
+
+ imurmurhash@0.1.4: {}
+
+ indent-string@4.0.0: {}
+
+ inherits@2.0.4: {}
+
+ internal-slot@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ hasown: 2.0.2
+ side-channel: 1.1.0
+
+ is-arguments@1.2.0:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-array-buffer@3.0.5:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+
+ is-arrayish@0.2.1: {}
+
+ is-async-function@2.1.1:
+ dependencies:
+ async-function: 1.0.0
+ call-bound: 1.0.4
+ get-proto: 1.0.1
+ has-tostringtag: 1.0.2
+ safe-regex-test: 1.1.0
+
+ is-bigint@1.1.0:
+ dependencies:
+ has-bigints: 1.1.0
+
+ is-binary-path@2.1.0:
+ dependencies:
+ binary-extensions: 2.3.0
+
+ is-boolean-object@1.2.2:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-builtin-module@3.2.1:
+ dependencies:
+ builtin-modules: 3.3.0
+
+ is-callable@1.2.7: {}
+
+ is-core-module@2.16.1:
+ dependencies:
+ hasown: 2.0.2
+
+ is-data-view@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+ is-typed-array: 1.1.15
+
+ is-date-object@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-docker@3.0.0: {}
+
+ is-extglob@2.1.1: {}
+
+ is-finalizationregistry@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+
+ is-fullwidth-code-point@3.0.0: {}
+
+ is-generator-function@1.1.2:
+ dependencies:
+ call-bound: 1.0.4
+ generator-function: 2.0.1
+ get-proto: 1.0.1
+ has-tostringtag: 1.0.2
+ safe-regex-test: 1.1.0
+
+ is-glob@4.0.3:
+ dependencies:
+ is-extglob: 2.1.1
+
+ is-inside-container@1.0.0:
+ dependencies:
+ is-docker: 3.0.0
+
+ is-map@2.0.3: {}
+
+ is-nan@1.3.2:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+
+ is-negated-glob@1.0.0: {}
+
+ is-negative-zero@2.0.3: {}
+
+ is-network-error@1.3.1: {}
+
+ is-number-object@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-number@7.0.0: {}
+
+ is-path-inside@3.0.3: {}
+
+ is-plain-obj@4.1.0: {}
+
+ is-potential-custom-element-name@1.0.1: {}
+
+ is-regex@1.2.1:
+ dependencies:
+ call-bound: 1.0.4
+ gopd: 1.2.0
+ has-tostringtag: 1.0.2
+ hasown: 2.0.2
+
+ is-set@2.0.3: {}
+
+ is-shared-array-buffer@1.0.4:
+ dependencies:
+ call-bound: 1.0.4
+
+ is-stream@2.0.1: {}
+
+ is-string@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-tostringtag: 1.0.2
+
+ is-subset@0.1.1: {}
+
+ is-symbol@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+ has-symbols: 1.1.0
+ safe-regex-test: 1.1.0
+
+ is-typed-array@1.1.15:
+ dependencies:
+ which-typed-array: 1.1.20
+
+ is-valid-glob@1.0.0: {}
+
+ is-weakmap@2.0.2: {}
+
+ is-weakref@1.1.1:
+ dependencies:
+ call-bound: 1.0.4
+
+ is-weakset@2.0.4:
+ dependencies:
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+
+ is-wsl@3.1.1:
+ dependencies:
+ is-inside-container: 1.0.0
+
+ isarray@1.0.0: {}
+
+ isarray@2.0.5: {}
+
+ isexe@2.0.0: {}
+
+ isomorphic-timers-promises@1.0.1: {}
+
+ istanbul-lib-coverage@3.2.2: {}
+
+ istanbul-lib-report@3.0.1:
+ dependencies:
+ istanbul-lib-coverage: 3.2.2
+ make-dir: 4.0.0
+ supports-color: 7.2.0
+
+ istanbul-reports@3.2.0:
+ dependencies:
+ html-escaper: 2.0.2
+ istanbul-lib-report: 3.0.1
+
+ iterator.prototype@1.1.5:
+ dependencies:
+ define-data-property: 1.1.4
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ get-proto: 1.0.1
+ has-symbols: 1.1.0
+ set-function-name: 2.0.2
+
+ jackspeak@3.4.3:
+ dependencies:
+ '@isaacs/cliui': 8.0.2
+ optionalDependencies:
+ '@pkgjs/parseargs': 0.11.0
+
+ jake@10.9.4:
+ dependencies:
+ async: 3.2.6
+ filelist: 1.0.6
+ picocolors: 1.1.1
+
+ jiti@2.6.1: {}
+
+ jose@6.2.2: {}
+
+ js-tokens@10.0.0: {}
+
+ js-tokens@4.0.0: {}
+
+ js-yaml@4.1.1:
+ dependencies:
+ argparse: 2.0.1
+
+ jsdoc-type-pratt-parser@7.0.0: {}
+
+ jsdom@26.1.0:
+ dependencies:
+ cssstyle: 4.6.0
+ data-urls: 5.0.0
+ decimal.js: 10.6.0
+ html-encoding-sniffer: 4.0.0
+ http-proxy-agent: 7.0.2
+ https-proxy-agent: 7.0.6
+ is-potential-custom-element-name: 1.0.1
+ nwsapi: 2.2.23
+ parse5: 7.3.0
+ rrweb-cssom: 0.8.0
+ saxes: 6.0.0
+ symbol-tree: 3.2.4
+ tough-cookie: 5.1.2
+ w3c-xmlserializer: 5.0.0
+ webidl-conversions: 7.0.0
+ whatwg-encoding: 3.1.1
+ whatwg-mimetype: 4.0.0
+ whatwg-url: 14.2.0
+ ws: 8.20.0
+ xml-name-validator: 5.0.0
+ transitivePeerDependencies:
+ - bufferutil
+ - supports-color
+ - utf-8-validate
+
+ jsesc@0.5.0: {}
+
+ jsesc@3.1.0: {}
+
+ json-buffer@3.0.1: {}
+
+ json-parse-even-better-errors@2.3.1: {}
+
+ json-schema-traverse@0.4.1: {}
+
+ json-stable-stringify-without-jsonify@1.0.1: {}
+
+ json5@1.0.2:
+ dependencies:
+ minimist: 1.2.8
+
+ json5@2.2.3: {}
+
+ jsonfile@4.0.0:
+ optionalDependencies:
+ graceful-fs: 4.2.11
+
+ jsonfile@6.2.0:
+ dependencies:
+ universalify: 2.0.1
+ optionalDependencies:
+ graceful-fs: 4.2.11
+
+ jsx-ast-utils@3.3.5:
+ dependencies:
+ array-includes: 3.1.9
+ array.prototype.flat: 1.3.3
+ object.assign: 4.1.7
+ object.values: 1.2.1
+
+ jwt-decode@4.0.0: {}
+
+ keyv@4.5.4:
+ dependencies:
+ json-buffer: 3.0.1
+
+ kleur@3.0.3: {}
+
+ knip@5.88.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)(@types/node@24.12.2)(typescript@5.9.3):
+ dependencies:
+ '@nodelib/fs.walk': 1.2.8
+ '@types/node': 24.12.2
+ fast-glob: 3.3.3
+ formatly: 0.3.0
+ jiti: 2.6.1
+ minimist: 1.2.8
+ oxc-resolver: 11.19.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)
+ picocolors: 1.1.1
+ picomatch: 4.0.4
+ smol-toml: 1.6.1
+ strip-json-comments: 5.0.3
+ typescript: 5.9.3
+ unbash: 2.2.0
+ yaml: 2.8.3
+ zod: 4.3.6
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
+
+ language-subtag-registry@0.3.23: {}
+
+ language-tags@1.0.9:
+ dependencies:
+ language-subtag-registry: 0.3.23
+
+ lead@4.0.0: {}
+
+ levn@0.4.1:
+ dependencies:
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+
+ lightningcss-android-arm64@1.32.0:
+ optional: true
+
+ lightningcss-darwin-arm64@1.32.0:
+ optional: true
+
+ lightningcss-darwin-x64@1.32.0:
+ optional: true
+
+ lightningcss-freebsd-x64@1.32.0:
+ optional: true
+
+ lightningcss-linux-arm-gnueabihf@1.32.0:
+ optional: true
+
+ lightningcss-linux-arm64-gnu@1.32.0:
+ optional: true
+
+ lightningcss-linux-arm64-musl@1.32.0:
+ optional: true
+
+ lightningcss-linux-x64-gnu@1.32.0:
+ optional: true
+
+ lightningcss-linux-x64-musl@1.32.0:
+ optional: true
+
+ lightningcss-win32-arm64-msvc@1.32.0:
+ optional: true
+
+ lightningcss-win32-x64-msvc@1.32.0:
+ optional: true
+
+ lightningcss@1.32.0:
+ dependencies:
+ detect-libc: 2.1.2
+ optionalDependencies:
+ lightningcss-android-arm64: 1.32.0
+ lightningcss-darwin-arm64: 1.32.0
+ lightningcss-darwin-x64: 1.32.0
+ lightningcss-freebsd-x64: 1.32.0
+ lightningcss-linux-arm-gnueabihf: 1.32.0
+ lightningcss-linux-arm64-gnu: 1.32.0
+ lightningcss-linux-arm64-musl: 1.32.0
+ lightningcss-linux-x64-gnu: 1.32.0
+ lightningcss-linux-x64-musl: 1.32.0
+ lightningcss-win32-arm64-msvc: 1.32.0
+ lightningcss-win32-x64-msvc: 1.32.0
+
+ lilconfig@3.1.3: {}
+
+ lines-and-columns@1.2.4: {}
+
+ livekit-client@2.18.4(@types/dom-mediacapture-record@1.0.22):
+ dependencies:
+ '@livekit/mutex': 1.1.1
+ '@livekit/protocol': 1.45.3
+ '@types/dom-mediacapture-record': 1.0.22
+ events: 3.3.0
+ jose: 6.2.2
+ loglevel: 1.9.2
+ sdp-transform: 2.15.0
+ tslib: 2.8.1
+ typed-emitter: 2.1.0
+ webrtc-adapter: 9.0.5
+
+ locate-path@5.0.0:
+ dependencies:
+ p-locate: 4.1.0
+
+ locate-path@6.0.0:
+ dependencies:
+ p-locate: 5.0.0
+
+ lodash-es@4.18.1: {}
+
+ lodash.debounce@4.0.8: {}
+
+ lodash.merge@4.6.2: {}
+
+ loglevel@1.9.1: {}
+
+ loglevel@1.9.2: {}
+
+ loose-envify@1.4.0:
+ dependencies:
+ js-tokens: 4.0.0
+
+ loupe@3.2.1: {}
+
+ lower-case@2.0.2:
+ dependencies:
+ tslib: 2.8.1
+
+ lru-cache@10.4.3: {}
+
+ lru-cache@5.1.1:
+ dependencies:
+ yallist: 3.1.1
+
+ lz-string@1.5.0: {}
+
+ magic-string@0.30.21:
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+
+ magic-string@0.30.8:
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+
+ magicast@0.5.2:
+ dependencies:
+ '@babel/parser': 7.29.2
+ '@babel/types': 7.29.0
+ source-map-js: 1.2.1
+
+ make-dir@4.0.0:
+ dependencies:
+ semver: 7.7.4
+
+ matcher-collection@2.0.1:
+ dependencies:
+ '@types/minimatch': 3.0.5
+ minimatch: 10.2.5
+
+ math-intrinsics@1.1.0: {}
+
+ matrix-events-sdk@0.0.1: {}
+
+ matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/fef093747e1c35a60b0fdc687a7166a7d7eb8a28:
+ dependencies:
+ '@babel/runtime': 7.29.2
+ '@matrix-org/matrix-sdk-crypto-wasm': 18.1.0
+ another-json: 0.2.0
+ bs58: 6.0.0
+ content-type: 1.0.5
+ jwt-decode: 4.0.0
+ loglevel: 1.9.2
+ matrix-events-sdk: 0.0.1
+ matrix-widget-api: 1.17.0
+ oidc-client-ts: 3.5.0
+ p-retry: 8.0.0
+ sdp-transform: 3.0.0
+ unhomoglyph: 1.0.6
+ uuid: 13.0.0
+
+ matrix-widget-api@1.17.0:
+ dependencies:
+ '@types/events': 3.0.3
+ events: 3.3.0
+
+ md5.js@1.3.5:
+ dependencies:
+ hash-base: 3.0.5
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+
+ merge2@1.4.1: {}
+
+ micromatch@4.0.8:
+ dependencies:
+ braces: 3.0.3
+ picomatch: 2.3.2
+
+ miller-rabin@4.0.1:
+ dependencies:
+ bn.js: 4.12.3
+ brorand: 1.1.0
+
+ mime-db@1.52.0: {}
+
+ mime-types@2.1.35:
+ dependencies:
+ mime-db: 1.52.0
+
+ min-indent@1.0.1: {}
+
+ minimalistic-assert@1.0.1: {}
+
+ minimalistic-crypto-utils@1.0.1: {}
+
+ minimatch@10.2.5:
+ dependencies:
+ brace-expansion: 5.0.5
+
+ minimist@1.2.8: {}
+
+ minipass@7.1.3: {}
+
+ mktemp@2.0.2: {}
+
+ ms@2.0.0: {}
+
+ ms@2.1.3: {}
+
+ nanoid@3.3.11: {}
+
+ natural-compare@1.4.0: {}
+
+ no-case@3.0.4:
+ dependencies:
+ lower-case: 2.0.2
+ tslib: 2.8.1
+
+ node-addon-api@7.1.1:
+ optional: true
+
+ node-exports-info@1.6.0:
+ dependencies:
+ array.prototype.flatmap: 1.3.3
+ es-errors: 1.3.0
+ object.entries: 1.1.9
+ semver: 6.3.1
+
+ node-fetch@2.7.0:
+ dependencies:
+ whatwg-url: 5.0.0
+
+ node-html-parser@5.4.2:
+ dependencies:
+ css-select: 4.3.0
+ he: 1.2.0
+
+ node-releases@2.0.37: {}
+
+ node-stdlib-browser@1.3.1:
+ dependencies:
+ assert: 2.1.0
+ browser-resolve: 2.0.0
+ browserify-zlib: 0.2.0
+ buffer: 5.7.1
+ console-browserify: 1.2.0
+ constants-browserify: 1.0.0
+ create-require: 1.1.1
+ crypto-browserify: 3.12.1
+ domain-browser: 4.22.0
+ events: 3.3.0
+ https-browserify: 1.0.0
+ isomorphic-timers-promises: 1.0.1
+ os-browserify: 0.3.0
+ path-browserify: 1.0.1
+ pkg-dir: 5.0.0
+ process: 0.11.10
+ punycode: 1.4.1
+ querystring-es3: 0.2.1
+ readable-stream: 3.6.2
+ stream-browserify: 3.0.0
+ stream-http: 3.2.0
+ string_decoder: 1.3.0
+ timers-browserify: 2.0.12
+ tty-browserify: 0.0.1
+ url: 0.11.4
+ util: 0.12.5
+ vm-browserify: 1.1.2
+
+ normalize-package-data@2.5.0:
+ dependencies:
+ hosted-git-info: 2.8.9
+ resolve: 1.22.12
+ semver: 5.7.2
+ validate-npm-package-license: 3.0.4
+
+ normalize-path@3.0.0: {}
+
+ normalize.css@8.0.1: {}
+
+ now-and-later@3.0.0:
+ dependencies:
+ once: 1.4.0
+
+ nth-check@2.1.1:
+ dependencies:
+ boolbase: 1.0.0
+
+ nwsapi@2.2.23: {}
+
+ object-assign@4.1.1: {}
+
+ object-deep-merge@2.0.0: {}
+
+ object-inspect@1.13.4: {}
+
+ object-is@1.1.6:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+
+ object-keys@1.1.1: {}
+
+ object.assign@4.1.7:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+ has-symbols: 1.1.0
+ object-keys: 1.1.1
+
+ object.entries@1.1.9:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+
+ object.fromentries@2.0.8:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-object-atoms: 1.1.1
+
+ object.groupby@1.0.3:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+
+ object.values@1.2.1:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+
+ observable-hooks@4.2.4(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(rxjs@7.8.2):
+ dependencies:
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ rxjs: 7.8.2
+
+ obug@2.1.1: {}
+
+ oidc-client-ts@3.5.0:
+ dependencies:
+ jwt-decode: 4.0.0
+
+ once@1.4.0:
+ dependencies:
+ wrappy: 1.0.2
+
+ open@10.2.0:
+ dependencies:
+ default-browser: 5.5.0
+ define-lazy-prop: 3.0.0
+ is-inside-container: 1.0.0
+ wsl-utils: 0.1.0
+
+ optionator@0.9.4:
+ dependencies:
+ deep-is: 0.1.4
+ fast-levenshtein: 2.0.6
+ levn: 0.4.1
+ prelude-ls: 1.2.1
+ type-check: 0.4.0
+ word-wrap: 1.2.5
+
+ os-browserify@0.3.0: {}
+
+ own-keys@1.0.1:
+ dependencies:
+ get-intrinsic: 1.3.0
+ object-keys: 1.1.1
+ safe-push-apply: 1.0.0
+
+ oxc-resolver@11.19.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2):
+ optionalDependencies:
+ '@oxc-resolver/binding-android-arm-eabi': 11.19.1
+ '@oxc-resolver/binding-android-arm64': 11.19.1
+ '@oxc-resolver/binding-darwin-arm64': 11.19.1
+ '@oxc-resolver/binding-darwin-x64': 11.19.1
+ '@oxc-resolver/binding-freebsd-x64': 11.19.1
+ '@oxc-resolver/binding-linux-arm-gnueabihf': 11.19.1
+ '@oxc-resolver/binding-linux-arm-musleabihf': 11.19.1
+ '@oxc-resolver/binding-linux-arm64-gnu': 11.19.1
+ '@oxc-resolver/binding-linux-arm64-musl': 11.19.1
+ '@oxc-resolver/binding-linux-ppc64-gnu': 11.19.1
+ '@oxc-resolver/binding-linux-riscv64-gnu': 11.19.1
+ '@oxc-resolver/binding-linux-riscv64-musl': 11.19.1
+ '@oxc-resolver/binding-linux-s390x-gnu': 11.19.1
+ '@oxc-resolver/binding-linux-x64-gnu': 11.19.1
+ '@oxc-resolver/binding-linux-x64-musl': 11.19.1
+ '@oxc-resolver/binding-openharmony-arm64': 11.19.1
+ '@oxc-resolver/binding-wasm32-wasi': 11.19.1(@emnapi/core@1.9.2)(@emnapi/runtime@1.9.2)
+ '@oxc-resolver/binding-win32-arm64-msvc': 11.19.1
+ '@oxc-resolver/binding-win32-ia32-msvc': 11.19.1
+ '@oxc-resolver/binding-win32-x64-msvc': 11.19.1
+ transitivePeerDependencies:
+ - '@emnapi/core'
+ - '@emnapi/runtime'
+
+ p-limit@2.3.0:
+ dependencies:
+ p-try: 2.2.0
+
+ p-limit@3.1.0:
+ dependencies:
+ yocto-queue: 0.1.0
+
+ p-locate@4.1.0:
+ dependencies:
+ p-limit: 2.3.0
+
+ p-locate@5.0.0:
+ dependencies:
+ p-limit: 3.1.0
+
+ p-retry@8.0.0:
+ dependencies:
+ is-network-error: 1.3.1
+
+ p-try@2.2.0: {}
+
+ package-json-from-dist@1.0.1: {}
+
+ pako@1.0.11: {}
+
+ pako@2.1.0: {}
+
+ param-case@3.0.4:
+ dependencies:
+ dot-case: 3.0.4
+ tslib: 2.8.1
+
+ parent-module@1.0.1:
+ dependencies:
+ callsites: 3.1.0
+
+ parse-asn1@5.1.9:
+ dependencies:
+ asn1.js: 4.10.1
+ browserify-aes: 1.2.0
+ evp_bytestokey: 1.0.3
+ pbkdf2: 3.1.5
+ safe-buffer: 5.2.1
+
+ parse-imports-exports@0.2.4:
+ dependencies:
+ parse-statements: 1.0.11
+
+ parse-json@5.2.0:
+ dependencies:
+ '@babel/code-frame': 7.29.0
+ error-ex: 1.3.4
+ json-parse-even-better-errors: 2.3.1
+ lines-and-columns: 1.2.4
+
+ parse-statements@1.0.11: {}
+
+ parse5-htmlparser2-tree-adapter@7.1.0:
+ dependencies:
+ domhandler: 5.0.3
+ parse5: 7.3.0
+
+ parse5-parser-stream@7.1.2:
+ dependencies:
+ parse5: 7.3.0
+
+ parse5@7.3.0:
+ dependencies:
+ entities: 6.0.1
+
+ pascal-case@3.1.2:
+ dependencies:
+ no-case: 3.0.4
+ tslib: 2.8.1
+
+ path-browserify@1.0.1: {}
+
+ path-exists@4.0.0: {}
+
+ path-key@3.1.1: {}
+
+ path-parse@1.0.7: {}
+
+ path-posix@1.0.0: {}
+
+ path-scurry@1.11.1:
+ dependencies:
+ lru-cache: 10.4.3
+ minipass: 7.1.3
+
+ path-type@4.0.0: {}
+
+ pathe@0.2.0: {}
+
+ pathe@2.0.3: {}
+
+ pathval@2.0.1: {}
+
+ pbkdf2@3.1.5:
+ dependencies:
+ create-hash: 1.2.0
+ create-hmac: 1.1.7
+ ripemd160: 2.0.3
+ safe-buffer: 5.2.1
+ sha.js: 2.4.12
+ to-buffer: 1.2.2
+
+ picocolors@1.1.1: {}
+
+ picomatch@2.3.2: {}
+
+ picomatch@4.0.4: {}
+
+ pkg-dir@5.0.0:
+ dependencies:
+ find-up: 5.0.0
+
+ playwright-core@1.59.1: {}
+
+ playwright@1.59.1:
+ dependencies:
+ playwright-core: 1.59.1
+ optionalDependencies:
+ fsevents: 2.3.2
+
+ pluralize@8.0.0: {}
+
+ pngjs@5.0.0: {}
+
+ possible-typed-array-names@1.1.0: {}
+
+ postcss-attribute-case-insensitive@7.0.1(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-clamp@4.1.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-color-functional-notation@7.0.12(postcss@8.5.10):
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ postcss-color-hex-alpha@10.0.0(postcss@8.5.10):
+ dependencies:
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-color-rebeccapurple@10.0.0(postcss@8.5.10):
+ dependencies:
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-custom-media@11.0.6(postcss@8.5.10):
+ dependencies:
+ '@csstools/cascade-layer-name-parser': 2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/media-query-list-parser': 4.0.3(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ postcss: 8.5.10
+
+ postcss-custom-properties@14.0.6(postcss@8.5.10):
+ dependencies:
+ '@csstools/cascade-layer-name-parser': 2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-custom-selectors@8.0.5(postcss@8.5.10):
+ dependencies:
+ '@csstools/cascade-layer-name-parser': 2.0.5(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-dir-pseudo-class@9.0.1(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-double-position-gradients@6.0.4(postcss@8.5.10):
+ dependencies:
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-focus-visible@10.0.1(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-focus-within@9.0.1(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-font-variant@5.0.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+
+ postcss-gap-properties@6.0.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+
+ postcss-image-set-function@7.0.0(postcss@8.5.10):
+ dependencies:
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-lab-function@7.0.12(postcss@8.5.10):
+ dependencies:
+ '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4)
+ '@csstools/css-tokenizer': 3.0.4
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/utilities': 2.0.0(postcss@8.5.10)
+ postcss: 8.5.10
+
+ postcss-logical@8.1.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-nesting@13.0.2(postcss@8.5.10):
+ dependencies:
+ '@csstools/selector-resolve-nested': 3.1.0(postcss-selector-parser@7.1.1)
+ '@csstools/selector-specificity': 5.0.0(postcss-selector-parser@7.1.1)
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-opacity-percentage@3.0.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+
+ postcss-overflow-shorthand@6.0.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-page-break@3.0.4(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+
+ postcss-place@10.0.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-value-parser: 4.2.0
+
+ postcss-preset-env@10.6.1(postcss@8.5.10):
+ dependencies:
+ '@csstools/postcss-alpha-function': 1.0.1(postcss@8.5.10)
+ '@csstools/postcss-cascade-layers': 5.0.2(postcss@8.5.10)
+ '@csstools/postcss-color-function': 4.0.12(postcss@8.5.10)
+ '@csstools/postcss-color-function-display-p3-linear': 1.0.1(postcss@8.5.10)
+ '@csstools/postcss-color-mix-function': 3.0.12(postcss@8.5.10)
+ '@csstools/postcss-color-mix-variadic-function-arguments': 1.0.2(postcss@8.5.10)
+ '@csstools/postcss-content-alt-text': 2.0.8(postcss@8.5.10)
+ '@csstools/postcss-contrast-color-function': 2.0.12(postcss@8.5.10)
+ '@csstools/postcss-exponential-functions': 2.0.9(postcss@8.5.10)
+ '@csstools/postcss-font-format-keywords': 4.0.0(postcss@8.5.10)
+ '@csstools/postcss-gamut-mapping': 2.0.11(postcss@8.5.10)
+ '@csstools/postcss-gradients-interpolation-method': 5.0.12(postcss@8.5.10)
+ '@csstools/postcss-hwb-function': 4.0.12(postcss@8.5.10)
+ '@csstools/postcss-ic-unit': 4.0.4(postcss@8.5.10)
+ '@csstools/postcss-initial': 2.0.1(postcss@8.5.10)
+ '@csstools/postcss-is-pseudo-class': 5.0.3(postcss@8.5.10)
+ '@csstools/postcss-light-dark-function': 2.0.11(postcss@8.5.10)
+ '@csstools/postcss-logical-float-and-clear': 3.0.0(postcss@8.5.10)
+ '@csstools/postcss-logical-overflow': 2.0.0(postcss@8.5.10)
+ '@csstools/postcss-logical-overscroll-behavior': 2.0.0(postcss@8.5.10)
+ '@csstools/postcss-logical-resize': 3.0.0(postcss@8.5.10)
+ '@csstools/postcss-logical-viewport-units': 3.0.4(postcss@8.5.10)
+ '@csstools/postcss-media-minmax': 2.0.9(postcss@8.5.10)
+ '@csstools/postcss-media-queries-aspect-ratio-number-values': 3.0.5(postcss@8.5.10)
+ '@csstools/postcss-nested-calc': 4.0.0(postcss@8.5.10)
+ '@csstools/postcss-normalize-display-values': 4.0.1(postcss@8.5.10)
+ '@csstools/postcss-oklab-function': 4.0.12(postcss@8.5.10)
+ '@csstools/postcss-position-area-property': 1.0.0(postcss@8.5.10)
+ '@csstools/postcss-progressive-custom-properties': 4.2.1(postcss@8.5.10)
+ '@csstools/postcss-property-rule-prelude-list': 1.0.0(postcss@8.5.10)
+ '@csstools/postcss-random-function': 2.0.1(postcss@8.5.10)
+ '@csstools/postcss-relative-color-syntax': 3.0.12(postcss@8.5.10)
+ '@csstools/postcss-scope-pseudo-class': 4.0.1(postcss@8.5.10)
+ '@csstools/postcss-sign-functions': 1.1.4(postcss@8.5.10)
+ '@csstools/postcss-stepped-value-functions': 4.0.9(postcss@8.5.10)
+ '@csstools/postcss-syntax-descriptor-syntax-production': 1.0.1(postcss@8.5.10)
+ '@csstools/postcss-system-ui-font-family': 1.0.0(postcss@8.5.10)
+ '@csstools/postcss-text-decoration-shorthand': 4.0.3(postcss@8.5.10)
+ '@csstools/postcss-trigonometric-functions': 4.0.9(postcss@8.5.10)
+ '@csstools/postcss-unset-value': 4.0.0(postcss@8.5.10)
+ autoprefixer: 10.5.0(postcss@8.5.10)
+ browserslist: 4.28.2
+ css-blank-pseudo: 7.0.1(postcss@8.5.10)
+ css-has-pseudo: 7.0.3(postcss@8.5.10)
+ css-prefers-color-scheme: 10.0.0(postcss@8.5.10)
+ cssdb: 8.8.0
+ postcss: 8.5.10
+ postcss-attribute-case-insensitive: 7.0.1(postcss@8.5.10)
+ postcss-clamp: 4.1.0(postcss@8.5.10)
+ postcss-color-functional-notation: 7.0.12(postcss@8.5.10)
+ postcss-color-hex-alpha: 10.0.0(postcss@8.5.10)
+ postcss-color-rebeccapurple: 10.0.0(postcss@8.5.10)
+ postcss-custom-media: 11.0.6(postcss@8.5.10)
+ postcss-custom-properties: 14.0.6(postcss@8.5.10)
+ postcss-custom-selectors: 8.0.5(postcss@8.5.10)
+ postcss-dir-pseudo-class: 9.0.1(postcss@8.5.10)
+ postcss-double-position-gradients: 6.0.4(postcss@8.5.10)
+ postcss-focus-visible: 10.0.1(postcss@8.5.10)
+ postcss-focus-within: 9.0.1(postcss@8.5.10)
+ postcss-font-variant: 5.0.0(postcss@8.5.10)
+ postcss-gap-properties: 6.0.0(postcss@8.5.10)
+ postcss-image-set-function: 7.0.0(postcss@8.5.10)
+ postcss-lab-function: 7.0.12(postcss@8.5.10)
+ postcss-logical: 8.1.0(postcss@8.5.10)
+ postcss-nesting: 13.0.2(postcss@8.5.10)
+ postcss-opacity-percentage: 3.0.0(postcss@8.5.10)
+ postcss-overflow-shorthand: 6.0.0(postcss@8.5.10)
+ postcss-page-break: 3.0.4(postcss@8.5.10)
+ postcss-place: 10.0.0(postcss@8.5.10)
+ postcss-pseudo-class-any-link: 10.0.1(postcss@8.5.10)
+ postcss-replace-overflow-wrap: 4.0.0(postcss@8.5.10)
+ postcss-selector-not: 8.0.1(postcss@8.5.10)
+
+ postcss-pseudo-class-any-link@10.0.1(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-replace-overflow-wrap@4.0.0(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+
+ postcss-selector-not@8.0.1(postcss@8.5.10):
+ dependencies:
+ postcss: 8.5.10
+ postcss-selector-parser: 7.1.1
+
+ postcss-selector-parser@7.1.1:
+ dependencies:
+ cssesc: 3.0.0
+ util-deprecate: 1.0.2
+
+ postcss-value-parser@4.2.0: {}
+
+ postcss@8.5.10:
+ dependencies:
+ nanoid: 3.3.11
+ picocolors: 1.1.1
+ source-map-js: 1.2.1
+
+ posthog-js@1.160.3:
+ dependencies:
+ fflate: 0.4.8
+ preact: 10.29.1
+ web-vitals: 4.2.4
+
+ preact@10.29.1: {}
+
+ prelude-ls@1.2.1: {}
+
+ prettier@3.8.3: {}
+
+ pretty-format@27.5.1:
+ dependencies:
+ ansi-regex: 5.0.1
+ ansi-styles: 5.2.0
+ react-is: 17.0.2
+
+ process-nextick-args@2.0.1: {}
+
+ process@0.11.10: {}
+
+ progress@2.0.3: {}
+
+ promise-map-series@0.3.0: {}
+
+ prompts@2.4.2:
+ dependencies:
+ kleur: 3.0.3
+ sisteransi: 1.0.5
+
+ prop-types@15.8.1:
+ dependencies:
+ loose-envify: 1.4.0
+ object-assign: 4.1.1
+ react-is: 16.13.1
+
+ proxy-from-env@1.1.0: {}
+
+ public-encrypt@4.0.3:
+ dependencies:
+ bn.js: 4.12.3
+ browserify-rsa: 4.1.1
+ create-hash: 1.2.0
+ parse-asn1: 5.1.9
+ randombytes: 2.1.0
+ safe-buffer: 5.2.1
+
+ punycode@1.4.1: {}
+
+ punycode@2.3.1: {}
+
+ qrcode@1.5.4:
+ dependencies:
+ dijkstrajs: 1.0.3
+ pngjs: 5.0.0
+ yargs: 15.4.1
+
+ qs@6.15.1:
+ dependencies:
+ side-channel: 1.1.0
+
+ querystring-es3@0.2.1: {}
+
+ queue-microtask@1.2.3: {}
+
+ quick-temp@0.1.9:
+ dependencies:
+ mktemp: 2.0.2
+ rimraf: 5.0.10
+ underscore.string: 3.3.6
+
+ randombytes@2.1.0:
+ dependencies:
+ safe-buffer: 5.2.1
+
+ randomfill@1.0.4:
+ dependencies:
+ randombytes: 2.1.0
+ safe-buffer: 5.2.1
+
+ react-docgen-typescript@2.4.0(typescript@5.9.3):
+ dependencies:
+ typescript: 5.9.3
+
+ react-docgen@8.0.3:
+ dependencies:
+ '@babel/core': 7.29.0
+ '@babel/traverse': 7.29.0
+ '@babel/types': 7.29.0
+ '@types/babel__core': 7.20.5
+ '@types/babel__traverse': 7.28.0
+ '@types/doctrine': 0.0.9
+ '@types/resolve': 1.20.6
+ doctrine: 3.0.0
+ resolve: 1.22.12
+ strip-indent: 4.1.1
+ transitivePeerDependencies:
+ - supports-color
+
+ react-dom@19.2.5(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+ scheduler: 0.27.0
+
+ react-i18next@16.6.6(i18next@25.10.10(typescript@5.9.3))(react-dom@19.2.5(react@19.2.5))(react@19.2.5)(typescript@5.9.3):
+ dependencies:
+ '@babel/runtime': 7.29.2
+ html-parse-stringify: 3.0.1
+ i18next: 25.10.10(typescript@5.9.3)
+ react: 19.2.5
+ use-sync-external-store: 1.6.0(react@19.2.5)
+ optionalDependencies:
+ react-dom: 19.2.5(react@19.2.5)
+ typescript: 5.9.3
+
+ react-is@16.13.1: {}
+
+ react-is@17.0.2: {}
+
+ react-refresh@0.17.0: {}
+
+ react-remove-scroll-bar@2.3.8(@types/react@19.2.14)(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+ react-style-singleton: 2.2.3(@types/react@19.2.14)(react@19.2.5)
+ tslib: 2.8.1
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ react-remove-scroll@2.7.2(@types/react@19.2.14)(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+ react-remove-scroll-bar: 2.3.8(@types/react@19.2.14)(react@19.2.5)
+ react-style-singleton: 2.2.3(@types/react@19.2.14)(react@19.2.5)
+ tslib: 2.8.1
+ use-callback-ref: 1.3.3(@types/react@19.2.14)(react@19.2.5)
+ use-sidecar: 1.1.3(@types/react@19.2.14)(react@19.2.5)
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ react-router-dom@7.14.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ react-router: 7.14.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+
+ react-router@7.14.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5):
+ dependencies:
+ cookie: 1.1.1
+ react: 19.2.5
+ set-cookie-parser: 2.7.2
+ optionalDependencies:
+ react-dom: 19.2.5(react@19.2.5)
+
+ react-style-singleton@2.2.3(@types/react@19.2.14)(react@19.2.5):
+ dependencies:
+ get-nonce: 1.0.1
+ react: 19.2.5
+ tslib: 2.8.1
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ react-use-measure@2.1.7(react-dom@19.2.5(react@19.2.5))(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+ optionalDependencies:
+ react-dom: 19.2.5(react@19.2.5)
+
+ react@19.2.5: {}
+
+ read-pkg-up@7.0.1:
+ dependencies:
+ find-up: 4.1.0
+ read-pkg: 5.2.0
+ type-fest: 0.8.1
+
+ read-pkg@5.2.0:
+ dependencies:
+ '@types/normalize-package-data': 2.4.4
+ normalize-package-data: 2.5.0
+ parse-json: 5.2.0
+ type-fest: 0.6.0
+
+ readable-stream@2.3.8:
+ dependencies:
+ core-util-is: 1.0.3
+ inherits: 2.0.4
+ isarray: 1.0.0
+ process-nextick-args: 2.0.1
+ safe-buffer: 5.1.2
+ string_decoder: 1.1.1
+ util-deprecate: 1.0.2
+
+ readable-stream@3.6.2:
+ dependencies:
+ inherits: 2.0.4
+ string_decoder: 1.3.0
+ util-deprecate: 1.0.2
+
+ readdirp@3.6.0:
+ dependencies:
+ picomatch: 2.3.2
+
+ readdirp@4.1.2: {}
+
+ recast@0.23.11:
+ dependencies:
+ ast-types: 0.16.1
+ esprima: 4.0.1
+ source-map: 0.6.1
+ tiny-invariant: 1.3.3
+ tslib: 2.8.1
+
+ redent@3.0.0:
+ dependencies:
+ indent-string: 4.0.0
+ strip-indent: 3.0.0
+
+ reflect.getprototypeof@1.0.10:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ get-proto: 1.0.1
+ which-builtin-type: 1.2.1
+
+ regenerate-unicode-properties@10.2.2:
+ dependencies:
+ regenerate: 1.4.2
+
+ regenerate@1.4.2: {}
+
+ regexp-tree@0.1.27: {}
+
+ regexp.prototype.flags@1.5.4:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-errors: 1.3.0
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ set-function-name: 2.0.2
+
+ regexparam@3.0.0: {}
+
+ regexpu-core@6.4.0:
+ dependencies:
+ regenerate: 1.4.2
+ regenerate-unicode-properties: 10.2.2
+ regjsgen: 0.8.0
+ regjsparser: 0.13.1
+ unicode-match-property-ecmascript: 2.0.0
+ unicode-match-property-value-ecmascript: 2.2.1
+
+ regjsgen@0.8.0: {}
+
+ regjsparser@0.10.0:
+ dependencies:
+ jsesc: 0.5.0
+
+ regjsparser@0.13.1:
+ dependencies:
+ jsesc: 3.1.0
+
+ relateurl@0.2.7: {}
+
+ remove-trailing-separator@1.1.0: {}
+
+ replace-ext@2.0.0: {}
+
+ require-directory@2.1.1: {}
+
+ require-main-filename@2.0.0: {}
+
+ requireindex@1.2.0: {}
+
+ reserved-identifiers@1.2.0: {}
+
+ resolve-from@4.0.0: {}
+
+ resolve-options@2.0.0:
+ dependencies:
+ value-or-function: 4.0.0
+
+ resolve@1.22.12:
+ dependencies:
+ es-errors: 1.3.0
+ is-core-module: 2.16.1
+ path-parse: 1.0.7
+ supports-preserve-symlinks-flag: 1.0.0
+
+ resolve@2.0.0-next.6:
+ dependencies:
+ es-errors: 1.3.0
+ is-core-module: 2.16.1
+ node-exports-info: 1.6.0
+ object-keys: 1.1.1
+ path-parse: 1.0.7
+ supports-preserve-symlinks-flag: 1.0.0
+
+ reusify@1.1.0: {}
+
+ rimraf@3.0.2:
+ dependencies:
+ glob: 10.5.0
+
+ rimraf@5.0.10:
+ dependencies:
+ glob: 10.5.0
+
+ ripemd160@2.0.3:
+ dependencies:
+ hash-base: 3.1.2
+ inherits: 2.0.4
+
+ rolldown@1.0.0-rc.15:
+ dependencies:
+ '@oxc-project/types': 0.124.0
+ '@rolldown/pluginutils': 1.0.0-rc.15
+ optionalDependencies:
+ '@rolldown/binding-android-arm64': 1.0.0-rc.15
+ '@rolldown/binding-darwin-arm64': 1.0.0-rc.15
+ '@rolldown/binding-darwin-x64': 1.0.0-rc.15
+ '@rolldown/binding-freebsd-x64': 1.0.0-rc.15
+ '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.15
+ '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.15
+ '@rolldown/binding-linux-ppc64-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-s390x-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.15
+ '@rolldown/binding-linux-x64-musl': 1.0.0-rc.15
+ '@rolldown/binding-openharmony-arm64': 1.0.0-rc.15
+ '@rolldown/binding-wasm32-wasi': 1.0.0-rc.15
+ '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.15
+ '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.15
+
+ rollup@4.60.1:
+ dependencies:
+ '@types/estree': 1.0.8
+ optionalDependencies:
+ '@rollup/rollup-android-arm-eabi': 4.60.1
+ '@rollup/rollup-android-arm64': 4.60.1
+ '@rollup/rollup-darwin-arm64': 4.60.1
+ '@rollup/rollup-darwin-x64': 4.60.1
+ '@rollup/rollup-freebsd-arm64': 4.60.1
+ '@rollup/rollup-freebsd-x64': 4.60.1
+ '@rollup/rollup-linux-arm-gnueabihf': 4.60.1
+ '@rollup/rollup-linux-arm-musleabihf': 4.60.1
+ '@rollup/rollup-linux-arm64-gnu': 4.60.1
+ '@rollup/rollup-linux-arm64-musl': 4.60.1
+ '@rollup/rollup-linux-loong64-gnu': 4.60.1
+ '@rollup/rollup-linux-loong64-musl': 4.60.1
+ '@rollup/rollup-linux-ppc64-gnu': 4.60.1
+ '@rollup/rollup-linux-ppc64-musl': 4.60.1
+ '@rollup/rollup-linux-riscv64-gnu': 4.60.1
+ '@rollup/rollup-linux-riscv64-musl': 4.60.1
+ '@rollup/rollup-linux-s390x-gnu': 4.60.1
+ '@rollup/rollup-linux-x64-gnu': 4.60.1
+ '@rollup/rollup-linux-x64-musl': 4.60.1
+ '@rollup/rollup-openbsd-x64': 4.60.1
+ '@rollup/rollup-openharmony-arm64': 4.60.1
+ '@rollup/rollup-win32-arm64-msvc': 4.60.1
+ '@rollup/rollup-win32-ia32-msvc': 4.60.1
+ '@rollup/rollup-win32-x64-gnu': 4.60.1
+ '@rollup/rollup-win32-x64-msvc': 4.60.1
+ fsevents: 2.3.3
+ optional: true
+
+ rrweb-cssom@0.8.0: {}
+
+ rsvp@3.2.1: {}
+
+ rsvp@4.8.5: {}
+
+ run-applescript@7.1.0: {}
+
+ run-parallel@1.2.0:
+ dependencies:
+ queue-microtask: 1.2.3
+
+ rxjs-report-usage@1.0.6:
+ dependencies:
+ '@babel/parser': 7.29.2
+ '@babel/traverse': 7.29.0
+ '@babel/types': 7.29.0
+ bent: 7.3.12
+ chalk: 4.1.2
+ glob: 10.5.0
+ prompts: 2.4.2
+ transitivePeerDependencies:
+ - supports-color
+
+ rxjs@7.8.2:
+ dependencies:
+ tslib: 2.8.1
+
+ safe-array-concat@1.1.3:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ get-intrinsic: 1.3.0
+ has-symbols: 1.1.0
+ isarray: 2.0.5
+
+ safe-buffer@5.1.2: {}
+
+ safe-buffer@5.2.1: {}
+
+ safe-push-apply@1.0.0:
+ dependencies:
+ es-errors: 1.3.0
+ isarray: 2.0.5
+
+ safe-regex-test@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-regex: 1.2.1
+
+ safer-buffer@2.1.2: {}
+
+ sass@1.99.0:
+ dependencies:
+ chokidar: 4.0.3
+ immutable: 5.1.5
+ source-map-js: 1.2.1
+ optionalDependencies:
+ '@parcel/watcher': 2.5.6
+
+ saxes@6.0.0:
+ dependencies:
+ xmlchars: 2.2.0
+
+ scheduler@0.27.0: {}
+
+ sdp-transform@2.15.0: {}
+
+ sdp-transform@3.0.0: {}
+
+ sdp@3.2.2: {}
+
+ semver@5.7.2: {}
+
+ semver@6.3.1: {}
+
+ semver@7.7.4: {}
+
+ set-blocking@2.0.0: {}
+
+ set-cookie-parser@2.7.2: {}
+
+ set-function-length@1.2.2:
+ dependencies:
+ define-data-property: 1.1.4
+ es-errors: 1.3.0
+ function-bind: 1.1.2
+ get-intrinsic: 1.3.0
+ gopd: 1.2.0
+ has-property-descriptors: 1.0.2
+
+ set-function-name@2.0.2:
+ dependencies:
+ define-data-property: 1.1.4
+ es-errors: 1.3.0
+ functions-have-names: 1.2.3
+ has-property-descriptors: 1.0.2
+
+ set-proto@1.0.0:
+ dependencies:
+ dunder-proto: 1.0.1
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+
+ setimmediate@1.0.5: {}
+
+ sha.js@2.4.12:
+ dependencies:
+ inherits: 2.0.4
+ safe-buffer: 5.2.1
+ to-buffer: 1.2.2
+
+ shebang-command@2.0.0:
+ dependencies:
+ shebang-regex: 3.0.0
+
+ shebang-regex@3.0.0: {}
+
+ side-channel-list@1.0.1:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-map@1.0.1:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+
+ side-channel-weakmap@1.0.2:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ get-intrinsic: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-map: 1.0.1
+
+ side-channel@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ object-inspect: 1.13.4
+ side-channel-list: 1.0.1
+ side-channel-map: 1.0.1
+ side-channel-weakmap: 1.0.2
+
+ siginfo@2.0.0: {}
+
+ signal-exit@4.1.0: {}
+
+ sisteransi@1.0.5: {}
+
+ slash@3.0.0: {}
+
+ smol-toml@1.6.1: {}
+
+ snake-case@3.0.4:
+ dependencies:
+ dot-case: 3.0.4
+ tslib: 2.8.1
+
+ sort-keys@5.1.0:
+ dependencies:
+ is-plain-obj: 4.1.0
+
+ source-map-js@1.2.1: {}
+
+ source-map-support@0.5.21:
+ dependencies:
+ buffer-from: 1.1.2
+ source-map: 0.6.1
+
+ source-map@0.6.1: {}
+
+ spdx-correct@3.2.0:
+ dependencies:
+ spdx-expression-parse: 3.0.1
+ spdx-license-ids: 3.0.23
+
+ spdx-exceptions@2.5.0: {}
+
+ spdx-expression-parse@3.0.1:
+ dependencies:
+ spdx-exceptions: 2.5.0
+ spdx-license-ids: 3.0.23
+
+ spdx-expression-parse@4.0.0:
+ dependencies:
+ spdx-exceptions: 2.5.0
+ spdx-license-ids: 3.0.23
+
+ spdx-license-ids@3.0.23: {}
+
+ sprintf-js@1.1.3: {}
+
+ stackback@0.0.2: {}
+
+ std-env@4.1.0: {}
+
+ stop-iteration-iterator@1.1.0:
+ dependencies:
+ es-errors: 1.3.0
+ internal-slot: 1.1.0
+
+ storybook@10.3.5(@testing-library/dom@10.4.1)(prettier@3.8.3)(react-dom@19.2.5(react@19.2.5))(react@19.2.5):
+ dependencies:
+ '@storybook/global': 5.0.0
+ '@storybook/icons': 2.0.1(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ '@testing-library/jest-dom': 6.9.1
+ '@testing-library/user-event': 14.6.1(@testing-library/dom@10.4.1)
+ '@vitest/expect': 3.2.4
+ '@vitest/spy': 3.2.4
+ '@webcontainer/env': 1.1.1
+ esbuild: 0.27.7
+ open: 10.2.0
+ recast: 0.23.11
+ semver: 7.7.4
+ use-sync-external-store: 1.6.0(react@19.2.5)
+ ws: 8.20.0
+ optionalDependencies:
+ prettier: 3.8.3
+ transitivePeerDependencies:
+ - '@testing-library/dom'
+ - bufferutil
+ - react
+ - react-dom
+ - utf-8-validate
+
+ stream-browserify@3.0.0:
+ dependencies:
+ inherits: 2.0.4
+ readable-stream: 3.6.2
+
+ stream-composer@1.0.2:
+ dependencies:
+ streamx: 2.25.0
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ stream-http@3.2.0:
+ dependencies:
+ builtin-status-codes: 3.0.0
+ inherits: 2.0.4
+ readable-stream: 3.6.2
+ xtend: 4.0.2
+
+ streamx@2.25.0:
+ dependencies:
+ events-universal: 1.0.1
+ fast-fifo: 1.3.2
+ text-decoder: 1.2.7
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ string-width@4.2.3:
+ dependencies:
+ emoji-regex: 8.0.0
+ is-fullwidth-code-point: 3.0.0
+ strip-ansi: 6.0.1
+
+ string-width@5.1.2:
+ dependencies:
+ eastasianwidth: 0.2.0
+ emoji-regex: 9.2.2
+ strip-ansi: 7.2.0
+
+ string.prototype.includes@2.0.1:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+
+ string.prototype.matchall@4.0.12:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-errors: 1.3.0
+ es-object-atoms: 1.1.1
+ get-intrinsic: 1.3.0
+ gopd: 1.2.0
+ has-symbols: 1.1.0
+ internal-slot: 1.1.0
+ regexp.prototype.flags: 1.5.4
+ set-function-name: 2.0.2
+ side-channel: 1.1.0
+
+ string.prototype.repeat@1.0.0:
+ dependencies:
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+
+ string.prototype.trim@1.2.10:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-data-property: 1.1.4
+ define-properties: 1.2.1
+ es-abstract: 1.24.2
+ es-object-atoms: 1.1.1
+ has-property-descriptors: 1.0.2
+
+ string.prototype.trimend@1.0.9:
+ dependencies:
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+
+ string.prototype.trimstart@1.0.8:
+ dependencies:
+ call-bind: 1.0.9
+ define-properties: 1.2.1
+ es-object-atoms: 1.1.1
+
+ string_decoder@1.1.1:
+ dependencies:
+ safe-buffer: 5.1.2
+
+ string_decoder@1.3.0:
+ dependencies:
+ safe-buffer: 5.2.1
+
+ strip-ansi@6.0.1:
+ dependencies:
+ ansi-regex: 5.0.1
+
+ strip-ansi@7.2.0:
+ dependencies:
+ ansi-regex: 6.2.2
+
+ strip-bom@3.0.0: {}
+
+ strip-indent@3.0.0:
+ dependencies:
+ min-indent: 1.0.1
+
+ strip-indent@4.1.1: {}
+
+ strip-json-comments@3.1.1: {}
+
+ strip-json-comments@5.0.3: {}
+
+ supports-color@7.2.0:
+ dependencies:
+ has-flag: 4.0.0
+
+ supports-preserve-symlinks-flag@1.0.0: {}
+
+ svg-parser@2.0.4: {}
+
+ symbol-tree@3.2.4: {}
+
+ symlink-or-copy@1.3.1: {}
+
+ tabbable@6.4.0: {}
+
+ teex@1.0.1:
+ dependencies:
+ streamx: 2.25.0
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ terser@5.46.1:
+ dependencies:
+ '@jridgewell/source-map': 0.3.11
+ acorn: 8.16.0
+ commander: 2.20.3
+ source-map-support: 0.5.21
+
+ text-decoder@1.2.7:
+ dependencies:
+ b4a: 1.8.0
+ transitivePeerDependencies:
+ - react-native-b4a
+
+ text-table@0.2.0: {}
+
+ through2@2.0.5:
+ dependencies:
+ readable-stream: 2.3.8
+ xtend: 4.0.2
+
+ timers-browserify@2.0.12:
+ dependencies:
+ setimmediate: 1.0.5
+
+ tiny-invariant@1.3.3: {}
+
+ tinybench@2.9.0: {}
+
+ tinyexec@1.1.1: {}
+
+ tinyglobby@0.2.16:
+ dependencies:
+ fdir: 6.5.0(picomatch@4.0.4)
+ picomatch: 4.0.4
+
+ tinyrainbow@2.0.0: {}
+
+ tinyrainbow@3.1.0: {}
+
+ tinyspy@4.0.4: {}
+
+ tldts-core@6.1.86: {}
+
+ tldts@6.1.86:
+ dependencies:
+ tldts-core: 6.1.86
+
+ to-buffer@1.2.2:
+ dependencies:
+ isarray: 2.0.5
+ safe-buffer: 5.2.1
+ typed-array-buffer: 1.0.3
+
+ to-regex-range@5.0.1:
+ dependencies:
+ is-number: 7.0.0
+
+ to-through@3.0.0:
+ dependencies:
+ streamx: 2.25.0
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ to-valid-identifier@1.0.0:
+ dependencies:
+ '@sindresorhus/base62': 1.0.0
+ reserved-identifiers: 1.2.0
+
+ toggle-selection@1.0.6: {}
+
+ tough-cookie@5.1.2:
+ dependencies:
+ tldts: 6.1.86
+
+ tr46@0.0.3: {}
+
+ tr46@5.1.1:
+ dependencies:
+ punycode: 2.3.1
+
+ ts-api-utils@2.5.0(typescript@5.9.3):
+ dependencies:
+ typescript: 5.9.3
+
+ ts-dedent@2.2.0: {}
+
+ tsconfig-paths@3.15.0:
+ dependencies:
+ '@types/json5': 0.0.29
+ json5: 1.0.2
+ minimist: 1.2.8
+ strip-bom: 3.0.0
+
+ tsconfig-paths@4.2.0:
+ dependencies:
+ json5: 2.2.3
+ minimist: 1.2.8
+ strip-bom: 3.0.0
+
+ tslib@1.14.1: {}
+
+ tslib@2.8.1: {}
+
+ tsutils-etc@1.4.2(tsutils@3.21.0(typescript@5.9.3))(typescript@5.9.3):
+ dependencies:
+ '@types/yargs': 17.0.35
+ tsutils: 3.21.0(typescript@5.9.3)
+ typescript: 5.9.3
+ yargs: 17.7.2
+
+ tsutils@3.21.0(typescript@5.9.3):
+ dependencies:
+ tslib: 1.14.1
+ typescript: 5.9.3
+
+ tty-browserify@0.0.1: {}
+
+ tunnel@0.0.6: {}
+
+ type-check@0.4.0:
+ dependencies:
+ prelude-ls: 1.2.1
+
+ type-fest@0.20.2: {}
+
+ type-fest@0.6.0: {}
+
+ type-fest@0.8.1: {}
+
+ typed-array-buffer@1.0.3:
+ dependencies:
+ call-bound: 1.0.4
+ es-errors: 1.3.0
+ is-typed-array: 1.1.15
+
+ typed-array-byte-length@1.0.3:
+ dependencies:
+ call-bind: 1.0.9
+ for-each: 0.3.5
+ gopd: 1.2.0
+ has-proto: 1.2.0
+ is-typed-array: 1.1.15
+
+ typed-array-byte-offset@1.0.4:
+ dependencies:
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.9
+ for-each: 0.3.5
+ gopd: 1.2.0
+ has-proto: 1.2.0
+ is-typed-array: 1.1.15
+ reflect.getprototypeof: 1.0.10
+
+ typed-array-length@1.0.7:
+ dependencies:
+ call-bind: 1.0.9
+ for-each: 0.3.5
+ gopd: 1.2.0
+ is-typed-array: 1.1.15
+ possible-typed-array-names: 1.1.0
+ reflect.getprototypeof: 1.0.10
+
+ typed-emitter@2.1.0:
+ optionalDependencies:
+ rxjs: 7.8.2
+
+ typescript-eslint-language-service@5.0.5(@typescript-eslint/parser@8.58.2(eslint@8.57.1)(typescript@5.9.3))(eslint@8.57.1)(typescript@5.9.3):
+ dependencies:
+ '@typescript-eslint/parser': 8.58.2(eslint@8.57.1)(typescript@5.9.3)
+ eslint: 8.57.1
+ typescript: 5.9.3
+
+ typescript@5.9.3: {}
+
+ unbash@2.2.0: {}
+
+ unbox-primitive@1.1.0:
+ dependencies:
+ call-bound: 1.0.4
+ has-bigints: 1.1.0
+ has-symbols: 1.1.0
+ which-boxed-primitive: 1.1.1
+
+ underscore.string@3.3.6:
+ dependencies:
+ sprintf-js: 1.1.3
+ util-deprecate: 1.0.2
+
+ undici-types@7.16.0: {}
+
+ undici@5.29.0:
+ dependencies:
+ '@fastify/busboy': 2.1.1
+
+ undici@7.25.0: {}
+
+ unhomoglyph@1.0.6: {}
+
+ unicode-canonical-property-names-ecmascript@2.0.1: {}
+
+ unicode-match-property-ecmascript@2.0.0:
+ dependencies:
+ unicode-canonical-property-names-ecmascript: 2.0.1
+ unicode-property-aliases-ecmascript: 2.2.0
+
+ unicode-match-property-value-ecmascript@2.2.1: {}
+
+ unicode-property-aliases-ecmascript@2.2.0: {}
+
+ unique-names-generator@4.7.1: {}
+
+ universal-user-agent@6.0.1: {}
+
+ universalify@0.1.2: {}
+
+ universalify@2.0.1: {}
+
+ unplugin@1.0.1:
+ dependencies:
+ acorn: 8.16.0
+ chokidar: 3.6.0
+ webpack-sources: 3.3.4
+ webpack-virtual-modules: 0.5.0
+
+ unplugin@1.16.1:
+ dependencies:
+ acorn: 8.16.0
+ webpack-virtual-modules: 0.6.2
+
+ unplugin@2.3.11:
+ dependencies:
+ '@jridgewell/remapping': 2.3.5
+ acorn: 8.16.0
+ picomatch: 4.0.4
+ webpack-virtual-modules: 0.6.2
+
+ update-browserslist-db@1.2.3(browserslist@4.28.2):
+ dependencies:
+ browserslist: 4.28.2
+ escalade: 3.2.0
+ picocolors: 1.1.1
+
+ uri-js@4.4.1:
+ dependencies:
+ punycode: 2.3.1
+
+ url@0.11.4:
+ dependencies:
+ punycode: 1.4.1
+ qs: 6.15.1
+
+ use-callback-ref@1.3.3(@types/react@19.2.14)(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+ tslib: 2.8.1
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ use-sidecar@1.1.3(@types/react@19.2.14)(react@19.2.5):
+ dependencies:
+ detect-node-es: 1.1.0
+ react: 19.2.5
+ tslib: 2.8.1
+ optionalDependencies:
+ '@types/react': 19.2.14
+
+ use-sync-external-store@1.6.0(react@19.2.5):
+ dependencies:
+ react: 19.2.5
+
+ usehooks-ts@3.1.1(react@19.2.5):
+ dependencies:
+ lodash.debounce: 4.0.8
+ react: 19.2.5
+
+ util-deprecate@1.0.2: {}
+
+ util@0.12.5:
+ dependencies:
+ inherits: 2.0.4
+ is-arguments: 1.2.0
+ is-generator-function: 1.1.2
+ is-typed-array: 1.1.15
+ which-typed-array: 1.1.20
+
+ uuid@13.0.0: {}
+
+ validate-npm-package-license@3.0.4:
+ dependencies:
+ spdx-correct: 3.2.0
+ spdx-expression-parse: 3.0.1
+
+ value-or-function@4.0.0: {}
+
+ vaul@1.1.2(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5):
+ dependencies:
+ '@radix-ui/react-dialog': 1.1.15(@types/react-dom@19.2.3(@types/react@19.2.14))(@types/react@19.2.14)(react-dom@19.2.5(react@19.2.5))(react@19.2.5)
+ react: 19.2.5
+ react-dom: 19.2.5(react@19.2.5)
+ transitivePeerDependencies:
+ - '@types/react'
+ - '@types/react-dom'
+
+ vinyl-contents@2.0.0:
+ dependencies:
+ bl: 5.1.0
+ vinyl: 3.0.1
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ vinyl-fs@4.0.2:
+ dependencies:
+ fs-mkdirp-stream: 2.0.1
+ glob-stream: 8.0.3
+ graceful-fs: 4.2.11
+ iconv-lite: 0.6.3
+ is-valid-glob: 1.0.0
+ lead: 4.0.0
+ normalize-path: 3.0.0
+ resolve-options: 2.0.0
+ stream-composer: 1.0.2
+ streamx: 2.25.0
+ to-through: 3.0.0
+ value-or-function: 4.0.0
+ vinyl: 3.0.1
+ vinyl-sourcemap: 2.0.0
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ vinyl-sourcemap@2.0.0:
+ dependencies:
+ convert-source-map: 2.0.0
+ graceful-fs: 4.2.11
+ now-and-later: 3.0.0
+ streamx: 2.25.0
+ vinyl: 3.0.1
+ vinyl-contents: 2.0.0
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ vinyl@3.0.1:
+ dependencies:
+ clone: 2.1.2
+ remove-trailing-separator: 1.1.0
+ replace-ext: 2.0.0
+ teex: 1.0.1
+ transitivePeerDependencies:
+ - bare-abort-controller
+ - react-native-b4a
+
+ vite-plugin-generate-file@0.3.1:
+ dependencies:
+ ejs: 3.1.10
+ js-yaml: 4.1.1
+ mime-types: 2.1.35
+ picocolors: 1.1.1
+
+ vite-plugin-html@3.2.2(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)):
+ dependencies:
+ '@rollup/pluginutils': 4.2.1
+ colorette: 2.0.20
+ connect-history-api-fallback: 1.6.0
+ consola: 2.15.3
+ dotenv: 16.6.1
+ dotenv-expand: 8.0.3
+ ejs: 3.1.10
+ fast-glob: 3.3.3
+ fs-extra: 10.1.0
+ html-minifier-terser: 6.1.0
+ node-html-parser: 5.4.2
+ pathe: 0.2.0
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+
+ vite-plugin-node-polyfills@0.26.0(rollup@4.60.1)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)):
+ dependencies:
+ '@rollup/plugin-inject': 5.0.5(rollup@4.60.1)
+ node-stdlib-browser: 1.3.1
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ transitivePeerDependencies:
+ - rollup
+
+ vite-plugin-node-stdlib-browser@0.2.1(node-stdlib-browser@1.3.1)(rollup@4.60.1)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)):
+ dependencies:
+ '@rollup/plugin-inject': 5.0.5(rollup@4.60.1)
+ node-stdlib-browser: 1.3.1
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ transitivePeerDependencies:
+ - rollup
+
+ vite-plugin-svgr@4.5.0(rollup@4.60.1)(typescript@5.9.3)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)):
+ dependencies:
+ '@rollup/pluginutils': 5.3.0(rollup@4.60.1)
+ '@svgr/core': 8.1.0(typescript@5.9.3)
+ '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.9.3))
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ transitivePeerDependencies:
+ - rollup
+ - supports-color
+ - typescript
+
+ vite-plugin-wasm@3.6.0(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)):
+ dependencies:
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+
+ vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3):
+ dependencies:
+ lightningcss: 1.32.0
+ picomatch: 4.0.4
+ postcss: 8.5.10
+ rolldown: 1.0.0-rc.15
+ tinyglobby: 0.2.16
+ optionalDependencies:
+ '@types/node': 24.12.2
+ esbuild: 0.27.7
+ fsevents: 2.3.3
+ jiti: 2.6.1
+ sass: 1.99.0
+ terser: 5.46.1
+ yaml: 2.8.3
+
+ vitest-axe@1.0.0-pre.5(vitest@4.1.4):
+ dependencies:
+ '@vitest/pretty-format': 3.2.4
+ axe-core: 4.11.3
+ chalk: 5.6.2
+ lodash-es: 4.18.1
+ vitest: 4.1.4(@types/node@24.12.2)(@vitest/coverage-v8@4.1.4)(jsdom@26.1.0)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+
+ vitest@4.1.4(@types/node@24.12.2)(@vitest/coverage-v8@4.1.4)(jsdom@26.1.0)(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)):
+ dependencies:
+ '@vitest/expect': 4.1.4
+ '@vitest/mocker': 4.1.4(vite@8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3))
+ '@vitest/pretty-format': 4.1.4
+ '@vitest/runner': 4.1.4
+ '@vitest/snapshot': 4.1.4
+ '@vitest/spy': 4.1.4
+ '@vitest/utils': 4.1.4
+ es-module-lexer: 2.0.0
+ expect-type: 1.3.0
+ magic-string: 0.30.21
+ obug: 2.1.1
+ pathe: 2.0.3
+ picomatch: 4.0.4
+ std-env: 4.1.0
+ tinybench: 2.9.0
+ tinyexec: 1.1.1
+ tinyglobby: 0.2.16
+ tinyrainbow: 3.1.0
+ vite: 8.0.8(@types/node@24.12.2)(esbuild@0.27.7)(jiti@2.6.1)(sass@1.99.0)(terser@5.46.1)(yaml@2.8.3)
+ why-is-node-running: 2.3.0
+ optionalDependencies:
+ '@types/node': 24.12.2
+ '@vitest/coverage-v8': 4.1.4(vitest@4.1.4)
+ jsdom: 26.1.0
+ transitivePeerDependencies:
+ - msw
+
+ vm-browserify@1.1.2: {}
+
+ void-elements@3.1.0: {}
+
+ w3c-xmlserializer@5.0.0:
+ dependencies:
+ xml-name-validator: 5.0.0
+
+ walk-sync@2.2.0:
+ dependencies:
+ '@types/minimatch': 3.0.5
+ ensure-posix-path: 1.1.1
+ matcher-collection: 2.0.1
+ minimatch: 10.2.5
+
+ walk-up-path@4.0.0: {}
+
+ web-vitals@4.2.4: {}
+
+ webidl-conversions@3.0.1: {}
+
+ webidl-conversions@7.0.0: {}
+
+ webpack-sources@3.3.4: {}
+
+ webpack-virtual-modules@0.5.0: {}
+
+ webpack-virtual-modules@0.6.2: {}
+
+ webrtc-adapter@9.0.5:
+ dependencies:
+ sdp: 3.2.2
+
+ whatwg-encoding@3.1.1:
+ dependencies:
+ iconv-lite: 0.6.3
+
+ whatwg-mimetype@4.0.0: {}
+
+ whatwg-url@14.2.0:
+ dependencies:
+ tr46: 5.1.1
+ webidl-conversions: 7.0.0
+
+ whatwg-url@5.0.0:
+ dependencies:
+ tr46: 0.0.3
+ webidl-conversions: 3.0.1
+
+ which-boxed-primitive@1.1.1:
+ dependencies:
+ is-bigint: 1.1.0
+ is-boolean-object: 1.2.2
+ is-number-object: 1.1.1
+ is-string: 1.1.1
+ is-symbol: 1.1.1
+
+ which-builtin-type@1.2.1:
+ dependencies:
+ call-bound: 1.0.4
+ function.prototype.name: 1.1.8
+ has-tostringtag: 1.0.2
+ is-async-function: 2.1.1
+ is-date-object: 1.1.0
+ is-finalizationregistry: 1.1.1
+ is-generator-function: 1.1.2
+ is-regex: 1.2.1
+ is-weakref: 1.1.1
+ isarray: 2.0.5
+ which-boxed-primitive: 1.1.1
+ which-collection: 1.0.2
+ which-typed-array: 1.1.20
+
+ which-collection@1.0.2:
+ dependencies:
+ is-map: 2.0.3
+ is-set: 2.0.3
+ is-weakmap: 2.0.2
+ is-weakset: 2.0.4
+
+ which-module@2.0.1: {}
+
+ which-typed-array@1.1.20:
+ dependencies:
+ available-typed-arrays: 1.0.7
+ call-bind: 1.0.9
+ call-bound: 1.0.4
+ for-each: 0.3.5
+ get-proto: 1.0.1
+ gopd: 1.2.0
+ has-tostringtag: 1.0.2
+
+ which@2.0.2:
+ dependencies:
+ isexe: 2.0.0
+
+ why-is-node-running@2.3.0:
+ dependencies:
+ siginfo: 2.0.0
+ stackback: 0.0.2
+
+ word-wrap@1.2.5: {}
+
+ wrap-ansi@6.2.0:
+ dependencies:
+ ansi-styles: 4.3.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+
+ wrap-ansi@7.0.0:
+ dependencies:
+ ansi-styles: 4.3.0
+ string-width: 4.2.3
+ strip-ansi: 6.0.1
+
+ wrap-ansi@8.1.0:
+ dependencies:
+ ansi-styles: 6.2.3
+ string-width: 5.1.2
+ strip-ansi: 7.2.0
+
+ wrappy@1.0.2: {}
+
+ ws@8.20.0: {}
+
+ wsl-utils@0.1.0:
+ dependencies:
+ is-wsl: 3.1.1
+
+ xml-name-validator@5.0.0: {}
+
+ xmlchars@2.2.0: {}
+
+ xtend@4.0.2: {}
+
+ y18n@4.0.3: {}
+
+ y18n@5.0.8: {}
+
+ yallist@3.1.1: {}
+
+ yaml@2.8.3: {}
+
+ yargs-parser@18.1.3:
+ dependencies:
+ camelcase: 5.3.1
+ decamelize: 1.2.0
+
+ yargs-parser@21.1.1: {}
+
+ yargs@15.4.1:
+ dependencies:
+ cliui: 6.0.0
+ decamelize: 1.2.0
+ find-up: 4.1.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ require-main-filename: 2.0.0
+ set-blocking: 2.0.0
+ string-width: 4.2.3
+ which-module: 2.0.1
+ y18n: 4.0.3
+ yargs-parser: 18.1.3
+
+ yargs@17.7.2:
+ dependencies:
+ cliui: 8.0.1
+ escalade: 3.2.0
+ get-caller-file: 2.0.5
+ require-directory: 2.1.1
+ string-width: 4.2.3
+ y18n: 5.0.8
+ yargs-parser: 21.1.1
+
+ yocto-queue@0.1.0: {}
+
+ zod@3.25.76: {}
+
+ zod@4.3.6: {}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
new file mode 100644
index 00000000..3fbe34a8
--- /dev/null
+++ b/pnpm-workspace.yaml
@@ -0,0 +1,3 @@
+# dependencies where we use branches and hashes in the package.json. But that also use a pre/post install script.
+onlyBuiltDependencies:
+ - "matrix-js-sdk"
diff --git a/renovate.json b/renovate.json
index 612e6674..39fbf0c1 100644
--- a/renovate.json
+++ b/renovate.json
@@ -54,8 +54,8 @@
"matchFileNames": ["embedded/**/*"]
},
{
- "groupName": "Yarn",
- "matchDepNames": ["yarn"]
+ "groupName": "Pnpm",
+ "matchDepNames": ["pnpm"]
}
],
"semanticCommits": "disabled",
diff --git a/scripts/.pnpmfile.cjs b/scripts/.pnpmfile.cjs
new file mode 100644
index 00000000..23b0759f
--- /dev/null
+++ b/scripts/.pnpmfile.cjs
@@ -0,0 +1,62 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+// DONT RUN THIS FILE MANUALLY
+// This file is intended to be used with `pnpm links:on` and `pnpm links:off` which will copy this file to the project root.
+// See docs/linking.md for details.
+//
+//
+// Created based on https://github.com/element-hq/element-call/blob/60fae70a60e3697eb41210ccf1e400cab37df7c8/.yarn/plugins/linker.cjs
+// and the following prompt history:
+// - Can you convert this yarn plugin into a pnpm plugin.
+// - The goal is to not have modifications to the package.json and lock files so that we do not track links on gh.
+// This seems to modify the package.json file.
+// What can we do with pnpm to have the link inforamtion in a seperate file
+// - why do you cache the loaded links. When does this file get executed?
+// Do we need this optimization.
+// How do we guarantee, that we aleays use the most recent content from the links file?
+//
+// Manual transition to cjs. Claude proposed manual yaml parsing.
+
+const fs = require("fs");
+const path = require("path");
+
+function loadLinks() {
+ try {
+ return require(path.join(__dirname, ".links.cjs"));
+ } catch (e) {
+ return null;
+ }
+}
+
+function readPackage(pkg, context) {
+ const links = loadLinks();
+ if (!links) return pkg;
+
+ const manifest = JSON.parse(
+ fs.readFileSync(path.join(__dirname, "package.json"), "utf8"),
+ );
+ if (pkg.name !== manifest.name) return pkg;
+
+ for (const [name, linkPath] of Object.entries(links)) {
+ const resolved = `link:${path.resolve(__dirname, linkPath)}`;
+ if (pkg.dependencies && pkg.dependencies[name]) {
+ context.log(`Linking ${name} -> ${resolved}`);
+ pkg.dependencies[name] = resolved;
+ } else if (pkg.devDependencies && pkg.devDependencies[name]) {
+ context.log(`Linking ${name} -> ${resolved}`);
+ pkg.devDependencies[name] = resolved;
+ }
+ }
+
+ return pkg;
+}
+
+module.exports = {
+ hooks: {
+ readPackage,
+ },
+};
diff --git a/scripts/dockerbuild.sh b/scripts/dockerbuild.sh
index ceabde8e..5cf4c71e 100755
--- a/scripts/dockerbuild.sh
+++ b/scripts/dockerbuild.sh
@@ -5,5 +5,5 @@ set -ex
export VITE_APP_VERSION=$(git describe --tags --abbrev=0)
corepack enable
-yarn install
-yarn run build
+pnpm install
+pnpm run build
diff --git a/scripts/playwright-webserver-command.sh b/scripts/playwright-webserver-command.sh
index 8c00909b..70726f45 100755
--- a/scripts/playwright-webserver-command.sh
+++ b/scripts/playwright-webserver-command.sh
@@ -1,10 +1,10 @@
#!/bin/sh
if [ -n "$USE_DOCKER" ]; then
set -ex
- yarn build
+ pnpm build
docker build -t element-call:testing .
exec docker run --rm --name element-call-testing -p 8080:8080 -v ./config/config.devenv.json:/app/config.json:ro,Z element-call:testing
else
cp config/config.devenv.json public/config.json
- exec yarn dev
+ exec pnpm dev --host
fi
diff --git a/scripts/setup-linking.sh b/scripts/setup-linking.sh
new file mode 100755
index 00000000..b20228d6
--- /dev/null
+++ b/scripts/setup-linking.sh
@@ -0,0 +1,26 @@
+#!/usr/bin/env bash
+
+# Checks if there currently is linking configured. Informs the user to disable linking before committing.
+
+LINKSFILE=.links.cjs
+echo "Checking for existing linking configuration in $LINKSFILE..."
+if test -f "$LINKSFILE"; then
+echo "Linking configuration found in $LINKSFILE."
+else
+ echo "No $LINKSFILE -> Creating $LINKSFILE with default values. Please edit this file to point to your local checkouts of the dependencies you want to link."
+ echo '''// Packages to link to local checkouts
+module.exports = {
+ "matrix-js-sdk": "../your/path/matrix-js-sdk",
+ "matrix-widget-api": "../your/path/matrix-widget-api",
+};''' > $LINKSFILE
+fi
+echo "updating local git hookPath to .githooks"
+git config --local core.hooksPath .githooks
+echo ""
+echo "Setup complete."
+echo "Update: .links.cjs to your liking"
+echo "Run: 'pnpm links:on' to test your .links.cjs"
+echo "Run: 'git commit' with links enabled to test the git pre-commit hook."
+echo "Run: 'pnpm links:off' to be able to commit again"
+echo "Run: 'git config --local core.hooksPath \"\"' to allow committing with linking on (not recommended)"
+echo "Run: 'rm links.cjs' & 'git config --local core.hooksPath \"\"' to fully revert what this script did"
diff --git a/sdk/README.md b/sdk/README.md
index ad8ff97e..7102ba29 100644
--- a/sdk/README.md
+++ b/sdk/README.md
@@ -13,8 +13,8 @@ This folder contains an example index.html file that showcases the sdk in use (h
To get started run
```
-yarn
-yarn build:sdk
+pnpm install
+pnpm build:sdk
```
in the repository root.
diff --git a/sdk/main.ts b/sdk/main.ts
index c65bf4a7..286c16ea 100644
--- a/sdk/main.ts
+++ b/sdk/main.ts
@@ -8,7 +8,7 @@ Please see LICENSE in the repository root for full details.
/**
* EXPERIMENTAL
*
- * This file is the entrypoint for the sdk build of element call: `yarn build:sdk`
+ * This file is the entrypoint for the sdk build of element call: `pnpm build:sdk`
* use in widgets.
* It exposes the `createMatrixRTCSdk` which creates the `MatrixRTCSdk` interface (see below) that
* can be used to join a rtc session and exchange realtime data.
diff --git a/src/@types/mdx.d.ts b/src/@types/mdx.d.ts
new file mode 100644
index 00000000..75b63fea
--- /dev/null
+++ b/src/@types/mdx.d.ts
@@ -0,0 +1,12 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import { JSX as ReactJSX } from "react";
+
+declare module "mdx/types.js" {
+ export import JSX = ReactJSX;
+}
diff --git a/src/AppBar.tsx b/src/AppBar.tsx
index aaa7565e..9939f950 100644
--- a/src/AppBar.tsx
+++ b/src/AppBar.tsx
@@ -19,6 +19,7 @@ import {
import { Heading, IconButton, Tooltip } from "@vector-im/compound-web";
import { CollapseIcon } from "@vector-im/compound-design-tokens/assets/web/icons";
import { useTranslation } from "react-i18next";
+import { logger } from "matrix-js-sdk/lib/logger";
import { Header, LeftNav, RightNav } from "./Header";
import { platform } from "./Platform";
@@ -49,7 +50,9 @@ export const AppBar: FC = ({ children }) => {
const [title, setTitle] = useState("");
const [hidden, setHidden] = useState(false);
- const [secondaryButton, setSecondaryButton] = useState(null);
+ const [secondaryButton, setSecondaryButton] = useState(
+ null,
+ );
const context = useMemo(
() => ({ setTitle, setSecondaryButton, setHidden }),
[setTitle, setHidden, setSecondaryButton],
@@ -68,8 +71,8 @@ export const AppBar: FC = ({ children }) => {
>
-
-
+
+
@@ -114,6 +117,10 @@ export function useAppBarHidden(hidden: boolean): void {
if (setHidden !== undefined) {
setHidden(hidden);
return (): void => setHidden(false);
+ } else if (platform !== "desktop") {
+ logger.warn(
+ "[AppBar] useAppBarHidden called without AppBarContext provider, this will have no effect",
+ );
}
}, [setHidden, hidden]);
}
@@ -129,6 +136,10 @@ export function useAppBarSecondaryButton(button: ReactNode): void {
if (setSecondaryButton !== undefined) {
setSecondaryButton(button);
return (): void => setSecondaryButton("");
+ } else if (platform !== "desktop") {
+ logger.warn(
+ "[AppBar] useAppBarSecondaryButton called without AppBarContext provider, this will have no effect",
+ );
}
}, [button, setSecondaryButton]);
}
diff --git a/src/TranslatedError.ts b/src/TranslatedError.ts
index 6ffed4a9..32f4ed2e 100644
--- a/src/TranslatedError.ts
+++ b/src/TranslatedError.ts
@@ -25,7 +25,7 @@ export abstract class TranslatedError extends Error {
messageKey: ParseKeys,
translationFn: TFunction,
) {
- super(translationFn(messageKey, { lng: "en" } as TOptions));
+ super(translationFn(messageKey, { lng: "en" }));
this.translatedMessage = translationFn(messageKey);
}
}
diff --git a/src/UrlParams.test.ts b/src/UrlParams.test.ts
index ec92ee89..75bf9bfb 100644
--- a/src/UrlParams.test.ts
+++ b/src/UrlParams.test.ts
@@ -218,7 +218,6 @@ describe("UrlParams", () => {
describe("intent", () => {
const noIntentDefaults = {
confineToRoom: false,
- appPrompt: true,
preload: false,
header: HeaderStyle.Standard,
showControls: true,
@@ -232,7 +231,6 @@ describe("UrlParams", () => {
};
const startNewCallDefaults = (platform: string): object => ({
confineToRoom: true,
- appPrompt: false,
preload: false,
header: platform === "desktop" ? HeaderStyle.None : HeaderStyle.AppBar,
showControls: true,
@@ -246,7 +244,6 @@ describe("UrlParams", () => {
});
const joinExistingCallDefaults = (platform: string): object => ({
confineToRoom: true,
- appPrompt: false,
preload: false,
header: platform === "desktop" ? HeaderStyle.None : HeaderStyle.AppBar,
showControls: true,
@@ -271,7 +268,11 @@ describe("UrlParams", () => {
computeUrlParams(
"?intent=start_call&widgetId=1234&parentUrl=parent.org",
),
- ).toMatchObject({ ...startNewCallDefaults("desktop"), skipLobby: false });
+ ).toMatchObject({
+ ...startNewCallDefaults("desktop"),
+ skipLobby: false,
+ callIntent: "video",
+ });
});
it("accepts start_call_dm mobile", () => {
@@ -308,6 +309,29 @@ describe("UrlParams", () => {
),
).toMatchObject(joinExistingCallDefaults("desktop"));
});
+
+ it("accepts start_call_voice", () => {
+ expect(
+ computeUrlParams(
+ "?intent=start_call_voice&widgetId=1234&parentUrl=parent.org",
+ ),
+ ).toMatchObject({
+ ...startNewCallDefaults("desktop"),
+ skipLobby: false,
+ callIntent: "audio",
+ });
+ });
+
+ it("accepts join_existing_voice", () => {
+ expect(
+ computeUrlParams(
+ "?intent=join_existing_voice&widgetId=1234&parentUrl=parent.org",
+ ),
+ ).toMatchObject({
+ ...joinExistingCallDefaults("desktop"),
+ callIntent: "audio",
+ });
+ });
});
describe("skipLobby", () => {
diff --git a/src/UrlParams.ts b/src/UrlParams.ts
index 31101197..f4ea840d 100644
--- a/src/UrlParams.ts
+++ b/src/UrlParams.ts
@@ -29,6 +29,8 @@ interface RoomIdentifier {
export enum UserIntent {
StartNewCall = "start_call",
JoinExistingCall = "join_existing",
+ StartNewCallVoice = "start_call_voice",
+ JoinExistingCallVoice = "join_existing_voice",
StartNewCallDM = "start_call_dm",
StartNewCallDMVoice = "start_call_dm_voice",
JoinExistingCallDM = "join_existing_dm",
@@ -157,13 +159,6 @@ export interface UrlConfiguration {
* Whether the app should keep the user confined to the current call/room.
*/
confineToRoom: boolean;
- /**
- * Whether upon entering a room, the user should be prompted to launch the
- * native mobile app. (Affects only Android and iOS.)
- *
- * The app prompt must also be enabled in the config for this to take effect.
- */
- appPrompt: boolean;
/**
* Whether the app should pause before joining the call until it sees an
* io.element.join widget action, allowing it to be preloaded.
@@ -255,26 +250,6 @@ export interface UrlConfiguration {
// behavior to the needs of specific consumers.
export interface UrlParams extends UrlProperties, UrlConfiguration {}
-// This is here as a stopgap, but what would be far nicer is a function that
-// takes a UrlParams and returns a query string. That would enable us to
-// consolidate all the data about URL parameters and their meanings to this one
-// file.
-export function editFragmentQuery(
- hash: string,
- edit: (params: URLSearchParams) => URLSearchParams,
-): string {
- const fragmentQueryStart = hash.indexOf("?");
- const fragmentParams = edit(
- new URLSearchParams(
- fragmentQueryStart === -1 ? "" : hash.substring(fragmentQueryStart),
- ),
- );
- return `${hash.substring(
- 0,
- fragmentQueryStart,
- )}?${fragmentParams.toString()}`;
-}
-
class ParamParser {
private fragmentParams: URLSearchParams;
private queryParams: URLSearchParams;
@@ -390,7 +365,6 @@ export const computeUrlParams = (search = "", hash = ""): UrlParams => {
// Here we only use constants and `platform` to determine the intent preset.
let intentPreset: UrlConfiguration = {
confineToRoom: true,
- appPrompt: false,
preload: false,
header: platform === "desktop" ? HeaderStyle.None : HeaderStyle.AppBar,
showControls: true,
@@ -414,6 +388,15 @@ export const computeUrlParams = (search = "", hash = ""): UrlParams => {
intentPreset.skipLobby = false;
intentPreset.callIntent = "video";
break;
+ case UserIntent.StartNewCallVoice:
+ intentPreset.skipLobby = false;
+ intentPreset.callIntent = "audio";
+ break;
+ case UserIntent.JoinExistingCallVoice:
+ // On desktop this will be overridden based on which button was used to join the call
+ intentPreset.skipLobby = false;
+ intentPreset.callIntent = "audio";
+ break;
case UserIntent.StartNewCallDMVoice:
intentPreset.callIntent = "audio";
// Fall through
@@ -437,7 +420,6 @@ export const computeUrlParams = (search = "", hash = ""): UrlParams => {
default:
intentPreset = {
confineToRoom: false,
- appPrompt: true,
preload: false,
header: HeaderStyle.Standard,
showControls: true,
@@ -482,7 +464,6 @@ export const computeUrlParams = (search = "", hash = ""): UrlParams => {
const configuration: Partial = {
confineToRoom: parser.getFlag("confineToRoom"),
- appPrompt: parser.getFlag("appPrompt"),
preload: isWidget ? parser.getFlag("preload") : undefined,
// Check hideHeader for backwards compatibility. If header is set, hideHeader
// is ignored.
diff --git a/src/__snapshots__/AppBar.test.tsx.snap b/src/__snapshots__/AppBar.test.tsx.snap
index 7247c6b9..0df18767 100644
--- a/src/__snapshots__/AppBar.test.tsx.snap
+++ b/src/__snapshots__/AppBar.test.tsx.snap
@@ -17,7 +17,7 @@ exports[`AppBar > renders 1`] = `
class="_icon-button_1215g_8"
data-kind="primary"
role="button"
- style="--cpd-icon-button-size: 32px;"
+ style="--cpd-icon-button-size: 24px;"
tabindex="0"
>
renders 1`] = `
style="--cpd-icon-button-size: 100%;"
>
;
+ totals?: Partial;
+}): MatrixRTCSession {
+ return {
+ statistics: {
+ counters: { ...defaultCounters, ...overrides?.counters },
+ totals: { ...defaultTotals, ...overrides?.totals },
+ },
+ } as unknown as MatrixRTCSession;
+}
+
+describe("CallEnded", () => {
+ beforeAll(() => {
+ mockConfig();
+ });
+
+ beforeEach(() => {
+ vi.restoreAllMocks();
+ vi.spyOn(PosthogAnalytics.instance, "trackEvent").mockImplementation(
+ () => {},
+ );
+ });
+
+ afterAll(() => {
+ PosthogAnalytics.resetInstance();
+ });
+
+ it("warns if startTime is missing when track is called", () => {
+ const warnSpy = vi.spyOn(logger, "warn");
+ const tracker = new CallEndedTracker();
+ const mockSession = createMockRtcSession();
+
+ tracker.track("test-call-id", 2, false, mockSession);
+
+ expect(warnSpy).toHaveBeenCalledWith(
+ "[PosthogEvents] Failed to send posthog callEnded event due to missing startTime",
+ );
+ expect(PosthogAnalytics.instance.trackEvent).not.toHaveBeenCalled();
+ });
+
+ it("tracks event with correct properties when startTime is set", () => {
+ const tracker = new CallEndedTracker();
+ const mockSession = createMockRtcSession();
+
+ tracker.cacheStartCall(new Date(Date.now() - 60000));
+ tracker.cacheParticipantCountChanged(5);
+ tracker.track("test-call-id", 3, true, mockSession);
+
+ expect(PosthogAnalytics.instance.trackEvent).toHaveBeenCalledWith(
+ {
+ eventName: "CallEnded",
+ callId: "test-call-id",
+ callParticipantsMax: 5,
+ callParticipantsOnLeave: 3,
+ callDuration: expect.closeTo(60, 1),
+ roomEventEncryptionKeysSent: 10,
+ roomEventEncryptionKeysReceived: 5,
+ roomEventEncryptionKeysReceivedAverageAge: 100,
+ },
+ { send_instantly: true },
+ );
+ });
+
+ it("tracks maxParticipantsCount correctly across multiple changes", () => {
+ const tracker = new CallEndedTracker();
+ const mockSession = createMockRtcSession();
+
+ tracker.cacheStartCall(new Date());
+ tracker.cacheParticipantCountChanged(3);
+ tracker.cacheParticipantCountChanged(7);
+ tracker.cacheParticipantCountChanged(2);
+ tracker.track("test-call-id", 1, false, mockSession);
+
+ expect(PosthogAnalytics.instance.trackEvent).toHaveBeenCalledWith(
+ expect.objectContaining({
+ callParticipantsMax: 7,
+ }),
+ expect.anything(),
+ );
+ });
+
+ it("computes roomEventEncryptionKeysReceivedAverageAge as 0 when no keys received", () => {
+ const tracker = new CallEndedTracker();
+ const mockSession = createMockRtcSession({
+ counters: { roomEventEncryptionKeysReceived: 0 },
+ });
+
+ tracker.cacheStartCall(new Date());
+ tracker.track("test-call-id", 1, false, mockSession);
+
+ expect(PosthogAnalytics.instance.trackEvent).toHaveBeenCalledWith(
+ expect.objectContaining({
+ roomEventEncryptionKeysReceivedAverageAge: 0,
+ }),
+ expect.anything(),
+ );
+ });
+
+ it("computes roomEventEncryptionKeysReceivedAverageAge correctly when keys are received", () => {
+ const tracker = new CallEndedTracker();
+ const mockSession = createMockRtcSession({
+ counters: { roomEventEncryptionKeysReceived: 4 },
+ totals: { roomEventEncryptionKeysReceivedTotalAge: 200 },
+ });
+
+ tracker.cacheStartCall(new Date());
+ tracker.track("test-call-id", 1, false, mockSession);
+
+ expect(PosthogAnalytics.instance.trackEvent).toHaveBeenCalledWith(
+ expect.objectContaining({
+ roomEventEncryptionKeysReceivedAverageAge: 50,
+ }),
+ expect.anything(),
+ );
+ });
+
+ it("passes send_instantly option correctly", () => {
+ const tracker = new CallEndedTracker();
+ const mockSession = createMockRtcSession();
+
+ tracker.cacheStartCall(new Date());
+ tracker.track("test-call-id", 1, false, mockSession);
+
+ expect(PosthogAnalytics.instance.trackEvent).toHaveBeenCalledWith(
+ expect.anything(),
+ { send_instantly: false },
+ );
+ });
+});
diff --git a/src/analytics/PosthogEvents.ts b/src/analytics/PosthogEvents.ts
index f0f059f5..5553829a 100644
--- a/src/analytics/PosthogEvents.ts
+++ b/src/analytics/PosthogEvents.ts
@@ -27,8 +27,8 @@ interface CallEnded extends IPosthogEvent {
}
export class CallEndedTracker {
- private cache: { startTime: Date; maxParticipantsCount: number } = {
- startTime: new Date(0),
+ private cache: { startTime?: Date; maxParticipantsCount: number } = {
+ startTime: undefined,
maxParticipantsCount: 0,
};
@@ -49,26 +49,32 @@ export class CallEndedTracker {
sendInstantly: boolean,
rtcSession: MatrixRTCSession,
): void {
- PosthogAnalytics.instance.trackEvent(
- {
- eventName: "CallEnded",
- callId: callId,
- callParticipantsMax: this.cache.maxParticipantsCount,
- callParticipantsOnLeave: callParticipantsNow,
- callDuration: (Date.now() - this.cache.startTime.getTime()) / 1000,
- roomEventEncryptionKeysSent:
- rtcSession.statistics.counters.roomEventEncryptionKeysSent,
- roomEventEncryptionKeysReceived:
- rtcSession.statistics.counters.roomEventEncryptionKeysReceived,
- roomEventEncryptionKeysReceivedAverageAge:
- rtcSession.statistics.counters.roomEventEncryptionKeysReceived > 0
- ? rtcSession.statistics.totals
- .roomEventEncryptionKeysReceivedTotalAge /
- rtcSession.statistics.counters.roomEventEncryptionKeysReceived
- : 0,
- },
- { send_instantly: sendInstantly },
- );
+ if (this.cache.startTime) {
+ PosthogAnalytics.instance.trackEvent(
+ {
+ eventName: "CallEnded",
+ callId: callId,
+ callParticipantsMax: this.cache.maxParticipantsCount,
+ callParticipantsOnLeave: callParticipantsNow,
+ callDuration: (Date.now() - this.cache.startTime.getTime()) / 1000,
+ roomEventEncryptionKeysSent:
+ rtcSession.statistics.counters.roomEventEncryptionKeysSent,
+ roomEventEncryptionKeysReceived:
+ rtcSession.statistics.counters.roomEventEncryptionKeysReceived,
+ roomEventEncryptionKeysReceivedAverageAge:
+ rtcSession.statistics.counters.roomEventEncryptionKeysReceived > 0
+ ? rtcSession.statistics.totals
+ .roomEventEncryptionKeysReceivedTotalAge /
+ rtcSession.statistics.counters.roomEventEncryptionKeysReceived
+ : 0,
+ },
+ { send_instantly: sendInstantly },
+ );
+ } else {
+ logger.warn(
+ "[PosthogEvents] Failed to send posthog callEnded event due to missing startTime",
+ );
+ }
}
}
diff --git a/src/button/Button.tsx b/src/button/Button.tsx
index 0b8d7144..8a22668e 100644
--- a/src/button/Button.tsx
+++ b/src/button/Button.tsx
@@ -8,7 +8,11 @@ Please see LICENSE in the repository root for full details.
import { type ComponentPropsWithoutRef, type FC } from "react";
import classNames from "classnames";
import { useTranslation } from "react-i18next";
-import { Button as CpdButton, Tooltip } from "@vector-im/compound-web";
+import {
+ Button as CpdButton,
+ IconButton,
+ Tooltip,
+} from "@vector-im/compound-web";
import {
MicOnSolidIcon,
MicOffSolidIcon,
@@ -16,10 +20,15 @@ import {
VideoCallOffSolidIcon,
EndCallIcon,
ShareScreenSolidIcon,
- SettingsSolidIcon,
+ OverflowHorizontalIcon,
+ OverflowVerticalIcon,
+ VolumeOnSolidIcon,
+ VolumeOffSolidIcon,
} from "@vector-im/compound-design-tokens/assets/web/icons";
import styles from "./Button.module.css";
+import callFooterStyles from "../components/CallFooter.module.css";
+import { platform } from "../Platform";
interface MicButtonProps extends ComponentPropsWithoutRef<"button"> {
enabled: boolean;
@@ -38,7 +47,7 @@ export const MicButton: FC = ({ enabled, ...props }) => {
= ({ enabled, ...props }) => {
= ({
);
};
+interface LoudspeakerButtonProps extends ComponentPropsWithoutRef<"button"> {
+ size?: "sm" | "lg";
+ loudspeakerModeEnabled: boolean;
+}
+export const LoudspeakerButton: FC = ({
+ loudspeakerModeEnabled,
+ ...props
+}) => {
+ const { t } = useTranslation();
+ // if the target is the earpice, we are currently in loudspeaker mode.
+ const label = loudspeakerModeEnabled
+ ? t("settings.devices.loudspeaker")
+ : t("settings.devices.handset");
+ return (
+
+
+
+ );
+};
+
+function classNamesForScreenWidth(
+ className?: string,
+ forScreenWidth?: "wide" | "narrow",
+): string {
+ return classNames(className, {
+ [callFooterStyles.settingsOnlyShowWide]: forScreenWidth === "wide",
+ [callFooterStyles.settingsOnlyShowNarrow]: forScreenWidth === "narrow",
+ });
+}
+
+interface SettingsIconButtonProps extends ComponentPropsWithoutRef<"button"> {
+ /** If this buttons should be setup to be used in the app bar */
+ showForScreenWidth?: "wide" | "narrow";
+ kind?: "secondary" | "primary";
+}
+export const SettingsIconButton: FC = ({
+ showForScreenWidth,
+ className,
+ ...props
+}) => {
+ const { t } = useTranslation();
+ const Icon =
+ platform === "android" ? OverflowVerticalIcon : OverflowHorizontalIcon;
+ return (
+
+
+
+
+
+ );
+};
+
interface SettingsButtonProps extends ComponentPropsWithoutRef<"button"> {
size?: "sm" | "lg";
+ /** If this buttons should be setup to be used in the app bar */
+ showForScreenWidth?: "wide" | "narrow";
}
-export const SettingsButton: FC = (props) => {
+export const SettingsButton: FC = ({
+ showForScreenWidth,
+ className,
+ ...props
+}) => {
const { t } = useTranslation();
-
return (
diff --git a/src/button/ReactionToggleButton.test.tsx b/src/button/ReactionToggleButton.test.tsx
index c6010562..5c8d375c 100644
--- a/src/button/ReactionToggleButton.test.tsx
+++ b/src/button/ReactionToggleButton.test.tsx
@@ -37,7 +37,13 @@ function TestComponent({
vm={vm}
rtcSession={rtcSession.asMockedSession()}
>
-
+
);
diff --git a/src/button/ReactionToggleButton.tsx b/src/button/ReactionToggleButton.tsx
index 28163321..39804a5f 100644
--- a/src/button/ReactionToggleButton.tsx
+++ b/src/button/ReactionToggleButton.tsx
@@ -28,13 +28,14 @@ import classNames from "classnames";
import { useReactionsSender } from "../reactions/useReactionsSender";
import styles from "./ReactionToggleButton.module.css";
import {
+ type RaisedHandInfo,
type ReactionOption,
ReactionSet,
ReactionsRowSize,
} from "../reactions";
import { Modal } from "../Modal";
-import { type CallViewModel } from "../state/CallViewModel/CallViewModel";
import { useBehavior } from "../useBehavior";
+import { type Behavior } from "../state/Behavior";
interface InnerButtonProps extends ComponentPropsWithoutRef<"button"> {
raised: boolean;
@@ -163,15 +164,22 @@ export function ReactionPopupMenu({
);
}
+export interface ReactionData {
+ handsRaised$: Behavior>;
+ /** List of reactions. Keys are: membership.membershipId (currently predefined as: `${membershipEvent.userId}:${membershipEvent.deviceId}`)*/
+ reactions$: Behavior>;
+}
+
interface ReactionToggleButtonProps extends ComponentPropsWithoutRef<"button"> {
+ reactionData: ReactionData;
identifier: string;
- vm: CallViewModel;
size?: "sm" | "lg";
+ /** List of participants raising their hand */
}
export function ReactionToggleButton({
identifier,
- vm,
+ reactionData: { handsRaised$, reactions$ },
...props
}: ReactionToggleButtonProps): ReactNode {
const { t } = useTranslation();
@@ -180,8 +188,8 @@ export function ReactionToggleButton({
const [showReactionsMenu, setShowReactionsMenu] = useState(false);
const [errorText, setErrorText] = useState();
- const isHandRaised = !!useBehavior(vm.handsRaised$)[identifier];
- const canReact = !useBehavior(vm.reactions$)[identifier];
+ const isHandRaised = !!useBehavior(handsRaised$)[identifier];
+ const canReact = !useBehavior(reactions$)[identifier];
useEffect(() => {
// Clear whenever the reactions menu state changes.
diff --git a/src/components/CallFooter.mdx b/src/components/CallFooter.mdx
new file mode 100644
index 00000000..b94131a0
--- /dev/null
+++ b/src/components/CallFooter.mdx
@@ -0,0 +1,37 @@
+{/**
+Copyright 2026 Element Creations Ltd.
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+**/}
+
+{/**
+This is a custom doc page overwriting the default autodocs tag.
+This can be done by using the same filename as the component
+With the help of Primary, Controls,Stories the overhead is minimal
+**/}
+
+import {
+ Meta,
+ Primary,
+ Controls,
+ Stories,
+ Title,
+ Subtitle,
+} from "@storybook/addon-docs/blocks";
+import * as CallFooterStories from "./CallFooter.stories";
+
+
+
+ Call Footer
+
+The footer compoentn contains all main interactions needed for a call.
+
+ Mobile layouts
+
+This component is reactive. To properly check the mobile layout, you will need to click on the stories in the left sidebar to see the
+component on a mobile screen.
+The story summary here does not render the mobile layouts correctly.
+
+
+
+
diff --git a/src/components/CallFooter.module.css b/src/components/CallFooter.module.css
new file mode 100644
index 00000000..d2e54649
--- /dev/null
+++ b/src/components/CallFooter.module.css
@@ -0,0 +1,158 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+.footer {
+ position: sticky;
+ inset-block-end: 0;
+ z-index: var(--call-view-header-footer-layer);
+ display: grid;
+ grid-template-columns: 1fr auto 1fr;
+ grid-template-areas: ". buttons layout";
+ align-items: center;
+ gap: var(--cpd-space-3x);
+ padding: var(--cpd-space-10x) var(--cpd-space-6x);
+ background: linear-gradient(
+ 180deg,
+ rgba(0, 0, 0, 0) 0%,
+ var(--cpd-color-bg-canvas-default) 100%
+ );
+}
+
+.footer.hidden {
+ display: none;
+}
+
+.footer.overlay {
+ /* Note that the footer is still position: sticky in this case so that certain
+ tiles can move up out of the way of the footer when visible. */
+ opacity: 1;
+ transition: opacity 0.15s;
+}
+
+.footer.overlay.hidden {
+ display: grid;
+ opacity: 0;
+ pointer-events: none;
+ /* Switch to position: absolute so the footer takes up no space in the layout
+ when hidden. */
+ position: absolute;
+ inset-block-end: 0;
+ inset-inline: 0;
+}
+
+.footer.overlay:has(:focus-visible) {
+ opacity: 1;
+ pointer-events: initial;
+}
+
+.settingsLogoContainer {
+ display: flex;
+ align-items: center;
+ gap: var(--cpd-space-4x);
+ flex-direction: row;
+ flex-wrap: nowrap;
+}
+
+.logo {
+ justify-self: start;
+ display: flex;
+ align-items: center;
+ gap: var(--cpd-space-2x);
+ padding-inline-start: var(--cpd-space-1x);
+}
+
+.buttons {
+ grid-area: buttons;
+ justify-self: center;
+ display: flex;
+ gap: var(--cpd-space-3x);
+}
+
+.layout {
+ grid-area: layout;
+ justify-self: end;
+}
+
+/*First hide the logo*/
+@media (max-width: 750px) {
+ .logo {
+ display: none;
+ }
+}
+
+.settingsOnlyShowNarrow {
+ display: none;
+}
+.settingsOnlyShowWide {
+ display: inherit;
+}
+
+/*
+With the logo hidden >500px is enough space to show overflow, buttons, layout.
+Once we exceed 500 we hide everything except the buttons.
+*/
+@media (max-width: 500px) {
+ .footer {
+ grid-template-areas: "buttons buttons buttons";
+ }
+
+ .settingsOnlyShowNarrow {
+ display: inherit;
+ }
+ .settingsOnlyShowWide {
+ display: none;
+ }
+
+ .settingsLogoContainer {
+ display: none;
+ }
+
+ .layout {
+ display: none !important;
+ }
+}
+
+@media (max-height: 800px) {
+ .footer {
+ padding-block: var(--cpd-space-8x);
+ }
+}
+
+@media (max-height: 400px) {
+ .footer {
+ padding-block: var(--cpd-space-4x);
+ }
+}
+
+@media (max-width: 370px) {
+ .shareScreen {
+ display: none;
+ }
+
+ /* PIP custom css */
+ @media (max-height: 400px) {
+ .shareScreen {
+ display: flex;
+ }
+ .footer {
+ padding-block-start: var(--cpd-space-3x);
+ padding-block-end: var(--cpd-space-2x);
+ }
+ }
+}
+
+@media (max-width: 320px) {
+ .raiseHand {
+ display: none;
+ }
+}
+
+@media (min-width: 800px) {
+ .buttons {
+ gap: var(--cpd-space-4x);
+ }
+}
diff --git a/src/components/CallFooter.stories.tsx b/src/components/CallFooter.stories.tsx
new file mode 100644
index 00000000..6062d0bb
--- /dev/null
+++ b/src/components/CallFooter.stories.tsx
@@ -0,0 +1,242 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import { fn } from "storybook/test";
+import { BehaviorSubject } from "rxjs";
+import { type ReactNode } from "react";
+import { Link } from "@vector-im/compound-web";
+
+import type { Meta, StoryObj } from "@storybook/react-vite";
+import { CallFooter, type FooterProps } from "./CallFooter";
+import inCallViewStyles from "../room/InCallView.module.css";
+import { ReactionsSenderContext } from "../reactions/useReactionsSender";
+import { type ReactionOption } from "../reactions";
+
+function CallFooterWrapper(props: FooterProps): ReactNode {
+ return (
+
+ Promise.resolve(),
+ sendReaction: async (reaction: ReactionOption) => Promise.resolve(),
+ }}
+ >
+
+
+
+ );
+}
+
+const meta = {
+ component: CallFooterWrapper,
+} satisfies Meta;
+
+export default meta;
+type Story = StoryObj;
+
+const reactionIdentifier = "@user:example.com:DEVICE";
+const reactionData = {
+ handsRaised$: new BehaviorSubject({}),
+ reactions$: new BehaviorSubject({}),
+};
+
+const fnArgType = {
+ control: { type: "select" as const },
+ options: ["MockedCallback", "undefined"],
+ mapping: { MockedCallback: fn(), undefined: undefined },
+};
+export const Default: Story = {
+ args: {
+ hideLogo: true,
+ layoutMode: "grid",
+ audioEnabled: true,
+ videoEnabled: true,
+ setLayoutMode: fn(),
+ openSettings: fn(),
+ toggleAudio: fn(),
+ toggleVideo: fn(),
+ toggleScreenSharing: fn(),
+ hangup: fn(),
+ },
+ parameters: {
+ layout: "fullscreen",
+ },
+ argTypes: {
+ layoutMode: { control: "radio", options: ["grid", "spotlight"] },
+ audioOutputSwitcher: {
+ control: "select",
+ options: ["NoOutputCallback", "speaker", "earpiece"],
+ table: { defaultValue: { summary: "NoOutputCallback" } },
+ mapping: {
+ NoOutputCallback: undefined,
+ // This is inverersed (speaker<->earpice) because the switcher object stores the target output, not the current one.
+ speaker: { targetOutput: "earpiece", switch: fn() },
+ earpiece: { targetOutput: "speaker", switch: fn() },
+ },
+ },
+ toggleScreenSharing: fnArgType,
+ setLayoutMode: fnArgType,
+ openSettings: fnArgType,
+ toggleAudio: fnArgType,
+ toggleVideo: fnArgType,
+ hangup: fnArgType,
+ },
+};
+
+export const WithLogo: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ hideLogo: false,
+ },
+};
+
+export const AudioVideoEnabled: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ audioEnabled: true,
+ videoEnabled: true,
+ },
+};
+
+export const WithAudioOutputSpeaker: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ audioOutputSwitcher: { targetOutput: "earpiece", switch: fn() },
+ },
+};
+
+export const WithAudioOutputEarpiece: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ audioOutputSwitcher: { targetOutput: "speaker", switch: fn() },
+ },
+};
+export const WithReactions: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ reactionIdentifier,
+ reactionData,
+ },
+};
+export const Pip: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ asPip: true,
+ },
+};
+export const NoControlsWithLogo: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ hideControls: true,
+ hideLogo: false,
+ },
+};
+
+export const DebugData: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ debugTileLayout: true,
+ tileStoreGeneration: 74,
+ },
+};
+
+export const UnavailableMediaDevices: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ toggleAudio: undefined,
+ toggleVideo: undefined,
+ audioOutputSwitcher: undefined,
+ },
+};
+
+export const MobileLayout: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ hideLogo: true,
+
+ audioOutputSwitcher: { targetOutput: "speaker", switch: fn() },
+ },
+ globals: {
+ viewport: { value: "mobile2", isRotated: false },
+ },
+ parameters: {
+ ...Default.parameters,
+ },
+};
+
+export const Lobby: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ hideLogo: true,
+ openSettings: undefined,
+ setLayoutMode: undefined,
+ toggleScreenSharing: undefined,
+ },
+ parameters: {
+ ...Default.parameters,
+ },
+};
+
+export const LobbyMobile: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ hideLogo: true,
+
+ setLayoutMode: undefined,
+ toggleScreenSharing: undefined,
+ },
+ globals: {
+ viewport: { value: "mobile2", isRotated: false },
+ },
+ parameters: {
+ ...Default.parameters,
+ },
+};
+
+export const LobbyRecentButton: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ children: Back To Recents,
+ hideLogo: true,
+ setLayoutMode: undefined,
+ toggleScreenSharing: undefined,
+ },
+ parameters: {
+ ...Default.parameters,
+ },
+};
+
+export const LobbyRecentButtonMobile: Story = {
+ ...Default,
+ args: {
+ ...Default.args,
+ children: Back To Recents,
+ hideLogo: true,
+ setLayoutMode: undefined,
+ toggleScreenSharing: undefined,
+ },
+ globals: {
+ viewport: { value: "mobile2", isRotated: false },
+ },
+ parameters: {
+ ...Default.parameters,
+ },
+};
diff --git a/src/components/CallFooter.tsx b/src/components/CallFooter.tsx
new file mode 100644
index 00000000..4e728d3b
--- /dev/null
+++ b/src/components/CallFooter.tsx
@@ -0,0 +1,243 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import { type FC, type JSX, type Ref, useMemo } from "react";
+import classNames from "classnames";
+import { BehaviorSubject } from "rxjs";
+
+import LogoMark from "../icons/LogoMark.svg?react";
+import LogoType from "../icons/LogoType.svg?react";
+import {
+ EndCallButton,
+ MicButton,
+ VideoButton,
+ ShareScreenButton,
+ SettingsButton,
+ ReactionToggleButton,
+ LoudspeakerButton,
+ SettingsIconButton,
+ type ReactionData,
+} from "../button";
+import styles from "./CallFooter.module.css";
+import { LayoutToggle } from "../room/LayoutToggle";
+import { type GridMode } from "../state/CallViewModel/CallViewModel";
+
+export interface AudioOutputSwitcher {
+ targetOutput: string;
+ switch: () => void;
+}
+
+export interface FooterProps {
+ ref?: Ref;
+ /** Children will only be visible if the component is wider than 5*/
+ children?: JSX.Element | JSX.Element[] | false;
+
+ audioEnabled: boolean;
+ /** Also controls if the audioMute button is disabled */
+ toggleAudio: (() => void) | undefined;
+ videoEnabled: boolean;
+ /** Also controls if the videoMute button is disabled */
+ toggleVideo: (() => void) | undefined;
+
+ /* This is needed for WindowMode = "flat" */
+ hideControls?: boolean;
+ /** hide the entire footer*/
+ hidden?: boolean;
+ /** Pip controls buttonSize and hides: settings button, layout switcher and logo */
+ asPip?: boolean;
+ /** The footer should be used as an overlay.
+ * (Over the Call Grid) This saves spaces on small screens.*/
+ asOverlay?: boolean;
+
+ layoutMode?: GridMode;
+ /** Also controls if the layout button is visible */
+ setLayoutMode?: (mode: GridMode) => void;
+
+ sharingScreen?: boolean;
+ toggleScreenSharing?: () => void;
+
+ /** Also controls if the audio button is visible */
+ audioOutputSwitcher?: AudioOutputSwitcher;
+ /** Also controls if the settings button is visible */
+ openSettings?: () => void;
+ /** Also controls if the hangup button is visible */
+ hangup?: () => void;
+
+ reactionIdentifier?: string;
+ reactionData?: ReactionData;
+
+ hideLogo?: boolean;
+ // debug stuff
+ debugTileLayout?: boolean;
+ tileStoreGeneration?: number;
+}
+
+export const CallFooter: FC = ({
+ ref,
+ children,
+ asOverlay,
+ hidden,
+ hideControls,
+ hideLogo,
+ asPip,
+ layoutMode,
+ setLayoutMode,
+ openSettings,
+ audioEnabled,
+ videoEnabled,
+ toggleAudio,
+ toggleVideo,
+ sharingScreen,
+ toggleScreenSharing,
+ reactionIdentifier,
+ reactionData,
+ audioOutputSwitcher,
+ hangup,
+ debugTileLayout,
+ tileStoreGeneration,
+}) => {
+ const buttons: JSX.Element[] = [];
+ const buttonSize = asPip ? "sm" : "lg";
+ const showSettingsButton =
+ openSettings !== undefined && !asPip && !hideControls;
+ const showLayoutSwitcher = !asPip && !hideControls;
+ const showLogoDebugContainer = !asPip || (!hideLogo && !debugTileLayout);
+ const showLogo = !hideLogo && !asPip;
+ if (showSettingsButton) {
+ // add the settings button to the center group of buttons, so it will be visible on small screens.
+ // On larger screens, it will be hidden SettingsIconButton the one with `showForScreenWidth = "wide"` in the `settingsLogoContainer` will be visible.
+ buttons.push(
+ ,
+ );
+ }
+
+ buttons.push(
+ ,
+ ,
+ );
+
+ if (toggleScreenSharing !== undefined) {
+ buttons.push(
+ ,
+ );
+ }
+
+ if (reactionIdentifier && reactionData) {
+ buttons.push(
+ ,
+ );
+ }
+
+ // In this PR we just move the button to the bottom bar. We do not yet update its appearance
+ const audioOutputButton = useMemo(() => {
+ if (audioOutputSwitcher === undefined) return null;
+ return (
+ audioOutputSwitcher.switch()}
+ loudspeakerModeEnabled={audioOutputSwitcher.targetOutput === "earpiece"}
+ />
+ );
+ }, [audioOutputSwitcher, buttonSize]);
+
+ if (audioOutputButton) buttons.push(audioOutputButton);
+
+ if (hangup)
+ buttons.push(
+ ,
+ );
+
+ const logoDebugContainer = (
+
+ {showLogo && (
+ <>
+
+
+ >
+ )}
+ {debugTileLayout ? `Tiles generation: ${tileStoreGeneration}` : undefined}
+
+ );
+
+ return (
+
+
+ {showSettingsButton && (
+
+ )}
+ {children}
+ {showLogoDebugContainer && logoDebugContainer}
+
+ {!hideControls &&
{buttons}
}
+ {setLayoutMode && layoutMode && showLayoutSwitcher && (
+
+ )}
+
+ );
+};
diff --git a/src/config/ConfigOptions.ts b/src/config/ConfigOptions.ts
index 4da633ca..1b120546 100644
--- a/src/config/ConfigOptions.ts
+++ b/src/config/ConfigOptions.ts
@@ -97,14 +97,6 @@ export interface ConfigOptions {
enable_video?: boolean;
};
- /**
- * Whether upon entering a room, the user should be prompted to launch the
- * native mobile app. (Affects only Android and iOS.)
- *
- * Note that this can additionally be disabled by the app's URL parameters.
- */
- app_prompt?: boolean;
-
/**
* These are low level options that are used to configure the MatrixRTC session.
* Take care when changing these options.
@@ -164,7 +156,6 @@ export interface ResolvedConfigOptions extends ConfigOptions {
};
};
ssla: string;
- app_prompt: boolean;
}
export const DEFAULT_CONFIG: ResolvedConfigOptions = {
@@ -178,5 +169,4 @@ export const DEFAULT_CONFIG: ResolvedConfigOptions = {
feature_use_device_session_member_events: true,
},
ssla: "https://static.element.io/legal/element-software-and-services-license-agreement-uk-1.pdf",
- app_prompt: true,
};
diff --git a/src/grid/Grid.css b/src/grid/Grid.css
deleted file mode 100644
index 1e7710dd..00000000
--- a/src/grid/Grid.css
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
-Copyright 2023, 2024 New Vector Ltd.
-
-SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
-Please see LICENSE in the repository root for full details.
-*/
-
-.grid {
- contain: layout style;
- position: relative;
- flex-grow: 1;
- margin-inline: var(--inline-content-inset);
- margin-block: var(--cpd-space-4x);
-}
-
-.slots {
- position: relative;
-}
-
-.slot {
- contain: strict;
-}
diff --git a/src/grid/OneOnOneLayout.module.css b/src/grid/OneOnOneLayout.module.css
index 2e5e7d86..0ac1b78d 100644
--- a/src/grid/OneOnOneLayout.module.css
+++ b/src/grid/OneOnOneLayout.module.css
@@ -19,7 +19,7 @@ Please see LICENSE in the repository root for full details.
position: absolute;
inline-size: 180px;
block-size: 135px;
- inset: var(--cpd-space-4x);
+ inset: 0;
}
.spotlight {
diff --git a/src/grid/TileWrapper.module.css b/src/grid/TileWrapper.module.css
index d66fb68a..2147b194 100644
--- a/src/grid/TileWrapper.module.css
+++ b/src/grid/TileWrapper.module.css
@@ -7,6 +7,7 @@ Please see LICENSE in the repository root for full details.
.tile.draggable {
cursor: grab;
+ box-shadow: var(--big-drop-shadow);
}
.tile.draggable:active {
diff --git a/src/icons/StarSelected.svg b/src/icons/StarSelected.svg
index 69a8ce80..8004b0e4 100644
--- a/src/icons/StarSelected.svg
+++ b/src/icons/StarSelected.svg
@@ -1,3 +1,3 @@
-
-
\ No newline at end of file
+
+
diff --git a/src/icons/StarUnselected.svg b/src/icons/StarUnselected.svg
index be281947..7a28ee95 100644
--- a/src/icons/StarUnselected.svg
+++ b/src/icons/StarUnselected.svg
@@ -1,4 +1,4 @@
-
+
-
\ No newline at end of file
+
diff --git a/src/index.css b/src/index.css
index dc914452..767c749a 100644
--- a/src/index.css
+++ b/src/index.css
@@ -43,6 +43,7 @@ layer(compound);
max(var(--cpd-space-4x), calc((100vw - 900px) / 3))
);
--small-drop-shadow: 0px 1.2px 2.4px 0px rgba(0, 0, 0, 0.15);
+ --big-drop-shadow: 0px 0px 24px 0px #1b1d221a;
--subtle-drop-shadow: 0px 1px 2px 0px rgba(16, 24, 40, 0.05);
--background-gradient: url("graphics/backgroundGradient.svg");
diff --git a/src/initializer.test.ts b/src/initializer.test.ts
index 0e43ed1f..6439c015 100644
--- a/src/initializer.test.ts
+++ b/src/initializer.test.ts
@@ -18,7 +18,7 @@ import {
import { mockConfig } from "./utils/test";
-const sentryInitSpy = vi.fn();
+const sentryInitSpy = vi.hoisted(() => vi.fn());
// Place the mock after the spy is defined
vi.mock("@sentry/react", () => ({
diff --git a/src/input/StarRatingInput.stories.tsx b/src/input/StarRatingInput.stories.tsx
new file mode 100644
index 00000000..9dc43480
--- /dev/null
+++ b/src/input/StarRatingInput.stories.tsx
@@ -0,0 +1,25 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import { fn } from "storybook/test";
+
+import type { Meta, StoryObj } from "@storybook/react-vite";
+import { StarRatingInput } from "./StarRatingInput";
+
+const meta = {
+ component: StarRatingInput,
+} satisfies Meta
;
+
+export default meta;
+type Story = StoryObj;
+
+export const Default: Story = {
+ args: {
+ starCount: 5,
+ onChange: fn(),
+ },
+};
diff --git a/src/livekit/BlurBackgroundTransformer.ts b/src/livekit/BlurBackgroundTransformer.ts
index c3d885ba..f86120d3 100644
--- a/src/livekit/BlurBackgroundTransformer.ts
+++ b/src/livekit/BlurBackgroundTransformer.ts
@@ -29,7 +29,7 @@ interface WasmFileset {
// MediaPipe and depend on node_modules having this specific structure. It's
// easy to see this breaking if our dependencies changed and MediaPipe were
// no longer hoisted, or if we switched to another dependency loader such as
-// Yarn PnP.
+// yarn PnP.
// https://github.com/google-ai-edge/mediapipe/issues/5961
const wasmFileset: WasmFileset = {
wasmLoaderPath: new URL(
diff --git a/src/livekit/openIDSFU.test.ts b/src/livekit/openIDSFU.test.ts
index 20820748..fc0b6d54 100644
--- a/src/livekit/openIDSFU.test.ts
+++ b/src/livekit/openIDSFU.test.ts
@@ -19,12 +19,14 @@ import fetchMock from "fetch-mock";
import { getSFUConfigWithOpenID, type OpenIDClientParts } from "./openIDSFU";
import { testJWTToken } from "../utils/test-fixtures";
import { ownMemberMock } from "../utils/test";
+import { FailToGetOpenIdToken } from "../utils/errors";
const sfuUrl = "https://sfu.example.org";
describe("getSFUConfigWithOpenID", () => {
let matrixClient: MockedObject;
beforeEach(() => {
+ fetchMock.catch(404);
matrixClient = {
getOpenIdToken: vitest.fn(),
getDeviceId: vitest.fn(),
@@ -71,9 +73,10 @@ describe("getSFUConfigWithOpenID", () => {
"https://sfu.example.org",
"!example_room_id",
);
- } catch (ex) {
- expect((ex as Error).message).toEqual(
- "SFU Config fetch failed with status code 500",
+ } catch (ex: unknown) {
+ expect(ex).toBeInstanceOf(FailToGetOpenIdToken);
+ expect((ex as FailToGetOpenIdToken).cause).toEqual(
+ new Error("SFU Config fetch failed with status code 500"),
);
void (await fetchMock.flush());
return;
@@ -106,8 +109,9 @@ describe("getSFUConfigWithOpenID", () => {
},
);
} catch (ex) {
- expect((ex as Error).message).toEqual(
- "SFU Config fetch failed with status code 500",
+ expect(ex).toBeInstanceOf(FailToGetOpenIdToken);
+ expect((ex as FailToGetOpenIdToken).cause).toEqual(
+ new Error("SFU Config fetch failed with status code 500"),
);
void (await fetchMock.flush());
}
@@ -160,8 +164,9 @@ describe("getSFUConfigWithOpenID", () => {
},
);
} catch (ex) {
- expect((ex as Error).message).toEqual(
- "SFU Config fetch failed with status code 500",
+ expect(ex).toBeInstanceOf(FailToGetOpenIdToken);
+ expect((ex as FailToGetOpenIdToken).cause).toEqual(
+ new Error("SFU Config fetch failed with status code 500"),
);
void (await fetchMock.flush());
}
diff --git a/src/livekit/openIDSFU.ts b/src/livekit/openIDSFU.ts
index d3756e6c..dfe04323 100644
--- a/src/livekit/openIDSFU.ts
+++ b/src/livekit/openIDSFU.ts
@@ -5,11 +5,7 @@ SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
Please see LICENSE in the repository root for full details.
*/
-import {
- retryNetworkOperation,
- type IOpenIDToken,
- type MatrixClient,
-} from "matrix-js-sdk";
+import { type IOpenIDToken, type MatrixClient } from "matrix-js-sdk";
import { type CallMembershipIdentityParts } from "matrix-js-sdk/lib/matrixrtc/EncryptionManager";
import { type Logger } from "matrix-js-sdk/lib/logger";
@@ -70,6 +66,7 @@ export type OpenIDClientParts = Pick<
MatrixClient,
"getOpenIdToken" | "getDeviceId"
>;
+
/**
* Gets a bearer token from the homeserver and then use it to authenticate
* to the matrix RTC backend in order to get acces to the SFU.
@@ -113,9 +110,6 @@ export async function getSFUConfigWithOpenID(
);
}
logger?.debug("Got openID token", openIdToken);
-
- logger?.info(`Trying to get JWT for focus ${serviceUrl}...`);
-
let sfuConfig: { url: string; jwt: string } | undefined;
const tryBothJwtEndpoints = opts?.forceJwtEndpoint === undefined; // This is for SFUs where we do not publish.
@@ -127,7 +121,10 @@ export async function getSFUConfigWithOpenID(
// if we can use both or if we are forced to use the new one.
if (tryBothJwtEndpoints || forceMatrix2Jwt) {
try {
- sfuConfig = await getLiveKitJWTWithDelayDelegation(
+ logger?.info(
+ `Trying to get JWT with delegation for focus ${serviceUrl}...`,
+ );
+ const sfuConfig = await getLiveKitJWTWithDelayDelegation(
membership,
serviceUrl,
roomId,
@@ -135,33 +132,24 @@ export async function getSFUConfigWithOpenID(
opts?.delayEndpointBaseUrl,
opts?.delayId,
);
- logger?.info(`Got JWT from call's active focus URL.`);
+
+ return extractFullConfigFromToken(sfuConfig);
} catch (e) {
logger?.debug(`Failed fetching jwt with matrix 2.0 endpoint:`, e);
- if (e instanceof NotSupportedError) {
- logger?.warn(
- `Failed fetching jwt with matrix 2.0 endpoint (retry with legacy) Not supported`,
- e,
- );
- sfuConfig = undefined;
- } else {
- logger?.warn(
- `Failed fetching jwt with matrix 2.0 endpoint other issues ->`,
- `(not going to try with legacy endpoint: forceOldJwtEndpoint is set to false, we did not get a not supported error from the sfu)`,
- e,
- );
- // Make this throw a hard error in case we force the matrix2.0 endpoint.
- if (forceMatrix2Jwt)
- throw new NoMatrix2AuthorizationService(e as Error);
- // NEVER get bejond this point if we forceMatrix2 and it failed!
+ // Make this throw a hard error in case we force the matrix2.0 endpoint.
+ if (forceMatrix2Jwt) {
+ throw new NoMatrix2AuthorizationService(e as Error);
}
}
}
// DEPRECATED
- // here we either have a sfuConfig or we alredy exited because of `if (forceMatrix2) throw ...`
+ // here we either have a sfuConfig or we already exited because of `if (forceMatrix2) throw ...`
// The only case we can get into this condition is, if `forceMatrix2` is `false`
- if (sfuConfig === undefined) {
+ try {
+ logger?.info(
+ `Trying to get JWT with legacy endpoint for focus ${serviceUrl}...`,
+ );
sfuConfig = await getLiveKitJWT(
membership.deviceId,
serviceUrl,
@@ -169,15 +157,19 @@ export async function getSFUConfigWithOpenID(
openIdToken,
);
logger?.info(`Got JWT from call's active focus URL.`);
+ return extractFullConfigFromToken(sfuConfig);
+ } catch (ex) {
+ throw new FailToGetOpenIdToken(
+ ex instanceof Error ? ex : new Error(`Unknown error ${ex}`),
+ );
}
+}
- if (!sfuConfig) {
- throw new Error("No `sfuConfig` after trying with old and new endpoints");
- }
-
- // Pull the details from the JWT
+function extractFullConfigFromToken(sfuConfig: {
+ url: string;
+ jwt: string;
+}): SFUConfig {
const [, payloadStr] = sfuConfig.jwt.split(".");
- // TODO: Prefer Uint8Array.fromBase64 when widely available
const payload = JSON.parse(global.atob(payloadStr)) as SFUJWTPayload;
return {
jwt: sfuConfig.jwt,
@@ -189,16 +181,15 @@ export async function getSFUConfigWithOpenID(
livekitIdentity: payload.sub,
};
}
-const RETRIES = 4;
+
async function getLiveKitJWT(
deviceId: string,
livekitServiceURL: string,
matrixRoomId: string,
openIDToken: IOpenIDToken,
): Promise<{ url: string; jwt: string }> {
- let res: Response | undefined;
- await retryNetworkOperation(RETRIES, async () => {
- res = await fetch(livekitServiceURL + "/sfu/get", {
+ const res = await doNetworkOperationWithRetry(async () => {
+ return await fetch(livekitServiceURL + "/sfu/get", {
method: "POST",
headers: {
"Content-Type": "application/json",
@@ -211,11 +202,7 @@ async function getLiveKitJWT(
}),
});
});
- if (!res) {
- throw new Error(
- `Network error while connecting to jwt service after ${RETRIES} retries`,
- );
- }
+
if (!res.ok) {
throw new Error("SFU Config fetch failed with status code " + res.status);
}
@@ -262,10 +249,8 @@ export async function getLiveKitJWTWithDelayDelegation(
};
}
- let res: Response | undefined;
-
- await retryNetworkOperation(RETRIES, async () => {
- res = await fetch(livekitServiceURL + "/get_token", {
+ const res = await doNetworkOperationWithRetry(async () => {
+ return await fetch(livekitServiceURL + "/get_token", {
method: "POST",
headers: {
"Content-Type": "application/json",
@@ -274,11 +259,6 @@ export async function getLiveKitJWTWithDelayDelegation(
});
});
- if (!res) {
- throw new Error(
- `Network error while connecting to jwt service after ${RETRIES} retries`,
- );
- }
if (!res.ok) {
const msg = "SFU Config fetch failed with status code " + res.status;
if (res.status === 404) {
diff --git a/src/reactions/useReactionsSender.tsx b/src/reactions/useReactionsSender.tsx
index afb9b789..1b7e099a 100644
--- a/src/reactions/useReactionsSender.tsx
+++ b/src/reactions/useReactionsSender.tsx
@@ -29,7 +29,7 @@ interface ReactionsSenderContextType {
sendReaction: (reaction: ReactionOption) => Promise;
}
-const ReactionsSenderContext = createContext<
+export const ReactionsSenderContext = createContext<
ReactionsSenderContextType | undefined
>(undefined);
diff --git a/src/room/AppSelectionModal.module.css b/src/room/AppSelectionModal.module.css
deleted file mode 100644
index ed510c3c..00000000
--- a/src/room/AppSelectionModal.module.css
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
-Copyright 2023, 2024 New Vector Ltd.
-
-SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
-Please see LICENSE in the repository root for full details.
-*/
-
-.modal p {
- text-align: center;
- margin-block-end: var(--cpd-space-8x);
-}
-
-.modal button,
-.modal a {
- width: 100%;
-}
-
-.modal button {
- margin-block-end: var(--cpd-space-6x);
-}
-
-.modal a {
- box-sizing: border-box;
-}
diff --git a/src/room/AppSelectionModal.tsx b/src/room/AppSelectionModal.tsx
deleted file mode 100644
index c57abfca..00000000
--- a/src/room/AppSelectionModal.tsx
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
-Copyright 2023, 2024 New Vector Ltd.
-
-SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
-Please see LICENSE in the repository root for full details.
-*/
-
-import {
- type FC,
- type MouseEvent,
- useCallback,
- useMemo,
- useState,
-} from "react";
-import { useTranslation } from "react-i18next";
-import { Button, Text } from "@vector-im/compound-web";
-import { PopOutIcon } from "@vector-im/compound-design-tokens/assets/web/icons";
-import { logger } from "matrix-js-sdk/lib/logger";
-
-import { Modal } from "../Modal";
-import { useRoomEncryptionSystem } from "../e2ee/sharedKeyManagement";
-import { getAbsoluteRoomUrl } from "../utils/matrix";
-import styles from "./AppSelectionModal.module.css";
-import { editFragmentQuery } from "../UrlParams";
-import { E2eeType } from "../e2ee/e2eeType";
-
-interface Props {
- roomId: string;
-}
-
-export const AppSelectionModal: FC = ({ roomId }) => {
- const { t } = useTranslation();
-
- const [open, setOpen] = useState(true);
- const onBrowserClick = useCallback(
- (e: MouseEvent) => {
- e.preventDefault();
- e.stopPropagation();
- setOpen(false);
- },
- [setOpen],
- );
- const e2eeSystem = useRoomEncryptionSystem(roomId);
-
- if (e2eeSystem.kind === E2eeType.NONE) {
- logger.error(
- "Generating app redirect URL for encrypted room but don't have key available!",
- );
- }
-
- const appUrl = useMemo(() => {
- // If the room ID is not known, fall back to the URL of the current page
- // Also, we don't really know the room name at this stage as we haven't
- // started a client and synced to get the room details. We could take the one
- // we got in our own URL and use that, but it's not a string that a human
- // ever sees so it's somewhat redundant. We just don't pass a name.
- const url = new URL(
- roomId === null
- ? window.location.href
- : getAbsoluteRoomUrl(roomId, e2eeSystem),
- );
- // Edit the URL to prevent the app selection prompt from appearing a second
- // time within the app, and to keep the user confined to the current room
- url.hash = editFragmentQuery(url.hash, (params) => {
- params.set("appPrompt", "false");
- params.set("confineToRoom", "true");
- return params;
- });
-
- const result = new URL("io.element.call:/");
- result.searchParams.set("url", url.toString());
- return result.toString();
- }, [e2eeSystem, roomId]);
-
- return (
-
-
- {t("app_selection_modal.text")}
-
-
- {t("app_selection_modal.continue_in_browser")}
-
-
- {t("app_selection_modal.open_in_app")}
-
-
- );
-};
diff --git a/src/room/CallEventAudioRenderer.test.tsx b/src/room/CallEventAudioRenderer.test.tsx
index 5d3eff5e..9ab64dfd 100644
--- a/src/room/CallEventAudioRenderer.test.tsx
+++ b/src/room/CallEventAudioRenderer.test.tsx
@@ -123,6 +123,7 @@ test("does not play a sound before the call is successful", () => {
const { vm, rtcMemberships$ } = getBasicCallViewModelEnvironment(
[local, alice],
[localRtcMember],
+ undefined,
{ waitForCallPickup: true },
);
render( );
diff --git a/src/room/GroupCallView.test.tsx b/src/room/GroupCallView.test.tsx
index a3d3a049..6ac08422 100644
--- a/src/room/GroupCallView.test.tsx
+++ b/src/room/GroupCallView.test.tsx
@@ -49,7 +49,6 @@ import { LazyEventEmitter } from "../LazyEventEmitter";
import { MatrixRTCTransportMissingError } from "../utils/errors";
import { ProcessorProvider } from "../livekit/TrackProcessorContext";
import { MediaDevicesContext } from "../MediaDevicesContext";
-import { HeaderStyle } from "../UrlParams";
import { constant } from "../state/Behavior";
import { type MuteStates } from "../state/MuteStates.ts";
@@ -173,7 +172,6 @@ function createGroupCallView(
confineToRoom={false}
preload={false}
skipLobby={false}
- header={HeaderStyle.Standard}
rtcSession={rtcSession.asMockedSession()}
muteStates={muteState}
widget={widget}
diff --git a/src/room/GroupCallView.tsx b/src/room/GroupCallView.tsx
index dfd11ff3..95b77e73 100644
--- a/src/room/GroupCallView.tsx
+++ b/src/room/GroupCallView.tsx
@@ -93,7 +93,6 @@ interface Props {
confineToRoom: boolean;
preload: UrlParams["preload"];
skipLobby: UrlParams["skipLobby"];
- header: HeaderStyle;
rtcSession: MatrixRTCSession;
joined: boolean;
setJoined: (value: boolean) => void;
@@ -107,7 +106,6 @@ export const GroupCallView: FC = ({
confineToRoom,
preload,
skipLobby,
- header,
rtcSession,
joined,
setJoined,
@@ -182,6 +180,7 @@ export const GroupCallView: FC = ({
perParticipantE2EE,
returnToLobby,
password: passwordFromUrl,
+ header,
} = useUrlParams();
const e2eeSystem = useRoomEncryptionSystem(room.roomId);
@@ -437,7 +436,7 @@ export const GroupCallView: FC = ({
muteStates={muteStates}
onEnter={() => setJoined(true)}
confineToRoom={confineToRoom}
- hideHeader={header === HeaderStyle.None}
+ hideHeader={header !== HeaderStyle.Standard}
participantCount={participantCount}
onShareClick={onShareClick}
/>
@@ -463,7 +462,6 @@ export const GroupCallView: FC = ({
rtcSession={rtcSession as MatrixRTCSession}
matrixRoom={room}
onLeft={onLeft}
- header={header}
muteStates={muteStates}
e2eeSystem={e2eeSystem}
//otelGroupCallMembership={otelGroupCallMembership}
diff --git a/src/room/InCallView.module.css b/src/room/InCallView.module.css
index 70f7c73a..390d6058 100644
--- a/src/room/InCallView.module.css
+++ b/src/room/InCallView.module.css
@@ -31,125 +31,12 @@ Please see LICENSE in the repository root for full details.
background: none;
}
-.footer {
- position: sticky;
- inset-block-end: 0;
- z-index: var(--call-view-header-footer-layer);
- display: grid;
- grid-template-columns:
- minmax(0, var(--inline-content-inset))
- 1fr auto 1fr minmax(0, var(--inline-content-inset));
- grid-template-areas: ". logo buttons layout .";
- align-items: center;
- gap: var(--cpd-space-3x);
- padding-block: var(--cpd-space-10x);
- background: linear-gradient(
- 180deg,
- rgba(0, 0, 0, 0) 0%,
- var(--cpd-color-bg-canvas-default) 100%
- );
-}
-
-.footer.hidden {
- display: none;
-}
-
-.footer.overlay {
- position: absolute;
- inset-block-end: 0;
- inset-inline: 0;
- opacity: 1;
- transition: opacity 0.15s;
-}
-
-.footer.overlay.hidden {
- display: grid;
- opacity: 0;
- pointer-events: none;
-}
-
-.footer.overlay:has(:focus-visible) {
- opacity: 1;
- pointer-events: initial;
-}
-
-.logo {
- grid-area: logo;
- justify-self: start;
- display: flex;
- align-items: center;
- gap: var(--cpd-space-2x);
- padding-inline-start: var(--cpd-space-1x);
-}
-
-.buttons {
- grid-area: buttons;
- justify-self: center;
- display: flex;
- gap: var(--cpd-space-3x);
-}
-
-.layout {
- grid-area: layout;
- justify-self: end;
-}
-
-@media (max-width: 660px) {
- .footer {
- grid-template-areas: ". buttons buttons buttons .";
- }
-
- .logo {
- display: none;
- }
-
- .layout {
- display: none !important;
- }
-}
-
-@media (max-height: 800px) {
- .footer {
- padding-block: var(--cpd-space-8x);
- }
-}
-
-@media (max-height: 400px) {
- .footer {
- padding-block: var(--cpd-space-4x);
- }
-}
-
-@media (max-width: 370px) {
- .shareScreen {
- display: none;
- }
-
- /* PIP custom css */
- @media (max-height: 400px) {
- .shareScreen {
- display: flex;
- }
- .footer {
- padding-block-start: var(--cpd-space-3x);
- padding-block-end: var(--cpd-space-2x);
- }
- }
-}
-
@media (max-width: 320px) {
- .invite,
- .raiseHand {
+ .invite {
display: none;
}
}
-@media (min-width: 800px) {
- .buttons {
- gap: var(--cpd-space-4x);
- }
-}
-
.fixedGrid {
position: absolute;
inline-size: 100%;
diff --git a/src/room/InCallView.test.tsx b/src/room/InCallView.test.tsx
index 43a689e0..c23a9dcb 100644
--- a/src/room/InCallView.test.tsx
+++ b/src/room/InCallView.test.tsx
@@ -15,20 +15,17 @@ import {
vi,
} from "vitest";
import { render, type RenderResult } from "@testing-library/react";
-import { type MatrixClient, JoinRule, type RoomState } from "matrix-js-sdk";
-import { type RelationsContainer } from "matrix-js-sdk/lib/models/relations-container";
import { type LocalParticipant } from "livekit-client";
-import { of } from "rxjs";
-import { BrowserRouter } from "react-router-dom";
+import { BehaviorSubject, of } from "rxjs";
+import { BrowserRouter, MemoryRouter } from "react-router-dom";
import { TooltipProvider } from "@vector-im/compound-web";
import { RoomContext, useLocalParticipant } from "@livekit/components-react";
+import userEvent from "@testing-library/user-event";
import { InCallView } from "./InCallView";
import {
mockLivekitRoom,
mockLocalParticipant,
- mockMatrixRoom,
- mockMatrixRoomMember,
mockMediaDevices,
mockMuteStates,
mockRemoteParticipant,
@@ -37,13 +34,17 @@ import {
} from "../utils/test";
import { E2eeType } from "../e2ee/e2eeType";
import { getBasicCallViewModelEnvironment } from "../utils/test-viewmodel";
+import { type CallViewModelOptions } from "../state/CallViewModel/CallViewModel";
import { alice, local } from "../utils/test-fixtures";
import { ReactionsSenderProvider } from "../reactions/useReactionsSender";
import { useRoomEncryptionSystem } from "../e2ee/sharedKeyManagement";
import { LivekitRoomAudioRenderer } from "../livekit/MatrixAudioRenderer";
import { MediaDevicesContext } from "../MediaDevicesContext";
-import { HeaderStyle } from "../UrlParams";
+import { type MediaDevices as ECMediaDevices } from "../state/MediaDevices";
+import { constant } from "../state/Behavior";
+import { AppBar } from "../AppBar";
import { initializeWidget } from "../widget";
+
initializeWidget();
vi.hoisted(
() =>
@@ -71,10 +72,7 @@ const localParticipant = mockLocalParticipant({
const remoteParticipant = mockRemoteParticipant({
identity: "@alice:example.org:AAAAAA",
});
-const carol = mockMatrixRoomMember(localRtcMember);
-const roomMembers = new Map([carol].map((p) => [p.userId, p]));
-const roomId = "!foo:bar";
let useRoomEncryptionSystemMock: MockedFunction;
beforeEach(() => {
@@ -99,36 +97,18 @@ beforeEach(() => {
useRoomEncryptionSystem as typeof useRoomEncryptionSystemMock;
useRoomEncryptionSystemMock.mockReturnValue({ kind: E2eeType.NONE });
});
-
-function createInCallView(): RenderResult & {
+interface CreateInCallViewArgs {
+ mediaDevices?: ECMediaDevices;
+ callViewModelOptions?: Partial;
+ /** If set, uses a MemoryRouter with this as the initial entry instead of BrowserRouter */
+ initialRoute?: string;
+ /** If true, wraps the rendered tree in an AppBar provider */
+ withAppBar?: boolean;
+}
+function createInCallView(args: CreateInCallViewArgs = {}): RenderResult & {
rtcSession: MockRTCSession;
} {
- const client = {
- getUser: () => null,
- getUserId: () => localRtcMember.userId,
- getDeviceId: () => localRtcMember.deviceId,
- getRoom: (rId) => (rId === roomId ? room : null),
- getDomain: () => "example.com",
- } as Partial as MatrixClient;
- const room = mockMatrixRoom({
- relations: {
- getChildEventsForEvent: () =>
- vi.mocked({
- getRelations: () => [],
- }),
- } as unknown as RelationsContainer,
- client,
- roomId,
- // getMember: (userId) => roomMembers.get(userId) ?? null,
- getMembers: () => Array.from(roomMembers.values()),
- getMxcAvatarUrl: () => null,
- hasEncryptionStateEvent: vi.fn().mockReturnValue(true),
- getCanonicalAlias: () => null,
- currentState: {
- getJoinRule: () => JoinRule.Invite,
- } as Partial as RoomState,
- });
-
+ const mediaDevices = args.mediaDevices ?? mockMediaDevices({});
const muteState = mockMuteStates();
const livekitRoom = mockLivekitRoom(
{
@@ -138,44 +118,63 @@ function createInCallView(): RenderResult & {
remoteParticipants$: of([remoteParticipant]),
},
);
- const { vm, rtcSession } = getBasicCallViewModelEnvironment([local, alice]);
+ const { vm, rtcSession } = getBasicCallViewModelEnvironment(
+ [local, alice],
+ undefined,
+ mediaDevices,
+ args.callViewModelOptions,
+ );
rtcSession.joined = true;
+ const room = rtcSession.room;
+ const client = room.client;
+
+ const Router = args.initialRoute
+ ? ({ children }: { children: React.ReactNode }): React.ReactNode => (
+
+ {children}
+
+ )
+ : BrowserRouter;
+
+ const inCallView = (
+
+ );
+
+ const content = args.withAppBar ? {inCallView} : inCallView;
+
const renderResult = render(
-
-
+
+
-
-
-
+ {content}
- ,
+ ,
);
return {
...renderResult,
@@ -190,4 +189,92 @@ describe("InCallView", () => {
expect(container).toMatchSnapshot();
});
});
+ describe("settings button with AppBar header", () => {
+ it("mobile landscape, is accessible when showHeader is false", () => {
+ // windowSize with height <= 600 results in "flat" windowMode,
+ // which means showHeader$ emits false.
+ const { getAllByRole } = createInCallView({
+ initialRoute: "/?header=app_bar",
+ withAppBar: true,
+ callViewModelOptions: {
+ // Set windowMode$ to "flat" (height <= 600)
+ windowSize$: constant({ width: 1000, height: 500 }),
+ },
+ });
+ // When showHeader is false, hideSettingsButton is false,
+ // so the settings button is visible in the footer.
+ const settingsBtn = getAllByRole("button", { name: "Settings" });
+ // here we check for two settings buttons because there are two buttons in the bottom bar. One for the
+ // the narrow layout and another one for the wide layout.
+ // Their visibility uses @media css queries, which cannot be tested in JSDOM,
+ // but we can at least check that both buttons are rendered and have the correct classes.
+ expect(settingsBtn.length).toBe(2);
+ expect(settingsBtn[0]).toHaveAttribute(
+ "data-testid",
+ "settings-bottom-left",
+ );
+ expect(settingsBtn[0]).toBeVisible();
+ });
+
+ it("mobile portrait, is accessible when showHeader is true", () => {
+ // windowSize with height > 600 and width > 600 results in "normal" windowMode,
+ // which means showHeader$ emits true.
+ const { getAllByRole } = createInCallView({
+ initialRoute: "/?header=app_bar",
+ withAppBar: true,
+ callViewModelOptions: {
+ // Set windowMode$ to "normal" (height >= 600)
+ windowSize$: constant({ width: 1000, height: 800 }),
+ },
+ });
+ // When showHeader is true and headerStyle is AppBar,
+ // hideSettingsButton is true in the footer, but the settings
+ // button is rendered in the AppBar via useAppBarSecondaryButton.
+ const settingsBtns = getAllByRole("button", { name: "Settings" });
+
+ expect(settingsBtns.length).toBe(1);
+ expect(settingsBtns[0]).toHaveAttribute(
+ "data-testid",
+ "settings-app-bar",
+ );
+ expect(settingsBtns[0]).toBeVisible();
+ });
+ });
+ describe("audioOutputSwitcher", () => {
+ it("is visible and can be clicked", async () => {
+ const user = userEvent.setup();
+ const switchFn = vi.fn();
+ // Create mediaDevices with a speaker and an earpiece available,
+ // with the speaker currently selected.
+ // This is needed so that the audio switcher button is visible
+ const available$ = new BehaviorSubject(
+ new Map([
+ ["speaker-id", { type: "speaker" }],
+ ["earpiece-id", { type: "earpiece" }],
+ ]),
+ );
+ const selected$ = new BehaviorSubject({
+ id: "speaker-id",
+ virtualEarpiece: false,
+ });
+
+ const mediaDevices = mockMediaDevices({
+ audioOutput: {
+ available$,
+ selected$,
+ select: switchFn,
+ },
+ });
+
+ const { getByRole } = createInCallView({ mediaDevices });
+ // The button should be visible. When current output is "speaker",
+ const audioOutputBtn = getByRole("button", { name: "Loudspeaker" });
+ expect(audioOutputBtn).toBeVisible();
+
+ await user.click(audioOutputBtn);
+
+ // Clicking the button should call select -> switchFn with the earpiece device id
+ expect(switchFn).toHaveBeenCalledWith("earpiece-id");
+ });
+ });
});
diff --git a/src/room/InCallView.tsx b/src/room/InCallView.tsx
index 570d70ff..4940f4d8 100644
--- a/src/room/InCallView.tsx
+++ b/src/room/InCallView.tsx
@@ -5,7 +5,6 @@ SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
Please see LICENSE in the repository root for full details.
*/
-import { IconButton, Tooltip } from "@vector-im/compound-web";
import { type MatrixClient, type Room as MatrixRoom } from "matrix-js-sdk";
import {
type FC,
@@ -25,24 +24,10 @@ import classNames from "classnames";
import { BehaviorSubject, map } from "rxjs";
import { useObservable } from "observable-hooks";
import { logger as rootLogger } from "matrix-js-sdk/lib/logger";
-import {
- VoiceCallSolidIcon,
- VolumeOnSolidIcon,
-} from "@vector-im/compound-design-tokens/assets/web/icons";
import { useTranslation } from "react-i18next";
-import LogoMark from "../icons/LogoMark.svg?react";
-import LogoType from "../icons/LogoType.svg?react";
-import {
- EndCallButton,
- MicButton,
- VideoButton,
- ShareScreenButton,
- SettingsButton,
- ReactionToggleButton,
-} from "../button";
import { Header, LeftNav, RightNav, RoomHeaderInfo } from "../Header";
-import { type HeaderStyle, useUrlParams } from "../UrlParams";
+import { HeaderStyle, useUrlParams } from "../UrlParams";
import { useCallViewKeyboardShortcuts } from "../useCallViewKeyboardShortcuts";
import { widget } from "../widget";
import styles from "./InCallView.module.css";
@@ -55,7 +40,6 @@ import { useMergedRefs } from "../useMergedRefs";
import { type MuteStates } from "../state/MuteStates";
import { type MatrixInfo } from "./VideoPreview";
import { InviteButton } from "../button/InviteButton";
-import { LayoutToggle } from "./LayoutToggle";
import {
type CallViewModel,
createCallViewModel$,
@@ -106,6 +90,8 @@ import { useTrackProcessorObservable$ } from "../livekit/TrackProcessorContext.t
import { type Layout } from "../state/layout-types.ts";
import { ObservableScope } from "../state/ObservableScope.ts";
import { useLatest } from "../useLatest.ts";
+import { CallFooter } from "../components/CallFooter.tsx";
+import { SettingsIconButton } from "../button/Button.tsx";
const logger = rootLogger.getChild("[InCallView]");
@@ -185,7 +171,6 @@ export interface InCallViewProps {
rtcSession: MatrixRTCSession;
matrixRoom: MatrixRoom;
muteStates: MuteStates;
- header: HeaderStyle;
onShareClick: (() => void) | null;
}
@@ -195,8 +180,6 @@ export const InCallView: FC = ({
matrixInfo,
matrixRoom,
muteStates,
-
- header: headerStyle,
onShareClick,
}) => {
const { t } = useTranslation();
@@ -220,7 +203,7 @@ export const InCallView: FC = ({
// Merge the refs so they can attach to the same element
const containerRef = useMergedRefs(containerRef1, containerRef2);
- const { showControls } = useUrlParams();
+ const { showControls, header: headerStyle } = useUrlParams();
const muteAllAudio = useBehavior(muteAllAudio$);
@@ -373,36 +356,16 @@ export const InCallView: FC = ({
[vm],
);
- useAppBarSecondaryButton(
- useMemo(() => {
- if (audioOutputSwitcher === null) return null;
- const isEarpieceTarget = audioOutputSwitcher.targetOutput === "earpiece";
- const Icon = isEarpieceTarget ? VoiceCallSolidIcon : VolumeOnSolidIcon;
- const label = isEarpieceTarget
- ? t("settings.devices.handset")
- : t("settings.devices.loudspeaker");
-
- return (
-
- {
- e.preventDefault();
- audioOutputSwitcher.switch();
- }}
- >
-
-
-
- );
- }, [t, audioOutputSwitcher]),
- );
-
useAppBarHidden(!showHeader);
let header: ReactNode = null;
if (showHeader) {
switch (headerStyle) {
- case "none":
+ case HeaderStyle.AppBar: {
+ // dont build a header here. The AppBar will take care of it.
+ break;
+ }
+ case HeaderStyle.None:
// Cosmetic header to fill out space while still affecting the bounds of
// the grid
header = (
@@ -412,7 +375,7 @@ export const InCallView: FC = ({
/>
);
break;
- case "standard":
+ case HeaderStyle.Standard:
header = (
-
+
{recentsButtonInFooter && recentsButton}
-
-
-
-
- {!confineToRoom && }
-
-
+
{client && (
{
+export const RoomPage: FC = (): ReactNode => {
const urlParams = useUrlParams();
- const { confineToRoom, appPrompt, preload, header, displayName, skipLobby } =
- urlParams;
+ const { confineToRoom, preload, header, displayName, skipLobby } = urlParams;
const { t } = useTranslation();
const { roomAlias, roomId, viaServers } = useRoomIdentifier();
@@ -136,7 +132,6 @@ export const RoomPage: FC = () => {
confineToRoom={confineToRoom}
preload={preload}
skipLobby={skipLobby || wasInWaitForInviteState.current}
- header={header}
muteStates={muteStates}
/>
)
@@ -242,28 +237,10 @@ export const RoomPage: FC = () => {
}
};
- let content: ReactNode;
- if (loading || isRegistering) {
- content = ;
- } else if (error) {
- content = ;
- } else if (!client) {
- content = ;
- } else if (!roomIdOrAlias) {
- // TODO: This doesn't belong here, the app routes need to be reworked
- content = ;
- } else {
- content = groupCallView();
- }
-
- return (
- <>
- {content}
- {/* On Android and iOS, show a prompt to launch the mobile app. */}
- {appPrompt &&
- Config.get().app_prompt &&
- (platform === "android" || platform === "ios") &&
- roomId && }
- >
- );
+ if (loading || isRegistering) return ;
+ if (error) return ;
+ if (!client) return ;
+ // TODO: This doesn't belong here, the app routes need to be reworked
+ if (!roomIdOrAlias) return ;
+ return groupCallView();
};
diff --git a/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap b/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap
index 3f02a49a..0d2d39bc 100644
--- a/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap
+++ b/src/room/__snapshots__/GroupCallErrorBoundary.test.tsx.snap
@@ -108,8 +108,9 @@ exports[`ConnectionLostError: Action handling should reset error state 1`] = `
class="error"
>
diff --git a/src/settings/__snapshots__/DeveloperSettingsTab.test.tsx.snap b/src/settings/__snapshots__/DeveloperSettingsTab.test.tsx.snap
index d8edcfd5..af38685a 100644
--- a/src/settings/__snapshots__/DeveloperSettingsTab.test.tsx.snap
+++ b/src/settings/__snapshots__/DeveloperSettingsTab.test.tsx.snap
@@ -204,7 +204,7 @@ exports[`DeveloperSettingsTab > renders and matches snapshot 1`] = `
>
{
+ test("remote screen sharing activates spotlight layout", () => {
withTestScheduler(({ behavior, schedule, expectObservable }) => {
// Start with no screen shares, then have Alice and Bob share their screens,
// then return to no screen shares, then have just Alice share for a bit
- const participantInputMarbles = " abcda-ba";
+ const aliceSharingInputMarbles = " ny-n--yn";
+ const bobSharingInputMarbles = " n-y-n---";
// While there are no screen shares, switch to spotlight manually, and then
// switch back to grid at the end
const modeInputMarbles = " -----s--g";
@@ -292,13 +286,12 @@ describe.each([
const expectedShowSpeakingMarbles = "y----nyny";
withCallViewModel(
{
- remoteParticipants$: behavior(participantInputMarbles, {
- a: [aliceParticipant, bobParticipant],
- b: [aliceSharingScreen, bobParticipant],
- c: [aliceSharingScreen, bobSharingScreen],
- d: [aliceParticipant, bobSharingScreen],
- }),
+ remoteParticipants$: constant([aliceParticipant, bobParticipant]),
rtcMembers$: constant([localRtcMember, aliceRtcMember, bobRtcMember]),
+ sharingScreen: new Map([
+ [aliceParticipant, behavior(aliceSharingInputMarbles, yesNo)],
+ [bobParticipant, behavior(bobSharingInputMarbles, yesNo)],
+ ]),
},
(vm) => {
schedule(modeInputMarbles, {
@@ -358,6 +351,76 @@ describe.each([
});
});
+ test("local screen sharing stays in grid layout", () => {
+ withTestScheduler(({ behavior, expectObservable }) => {
+ // Local participant shares their screen, then stops sharing
+ const sharingInputMarbles = " nyn";
+ // Layout should show the screen share but stay in type: "grid"
+ const expectedLayoutMarbles = "aba";
+ withCallViewModel(
+ {
+ remoteParticipants$: constant([aliceParticipant, bobParticipant]),
+ rtcMembers$: constant([localRtcMember, aliceRtcMember, bobRtcMember]),
+ sharingScreen: new Map([
+ [localParticipant, behavior(sharingInputMarbles, yesNo)],
+ ]),
+ },
+ (vm) => {
+ expectObservable(summarizeLayout$(vm.layout$)).toBe(
+ expectedLayoutMarbles,
+ {
+ a: {
+ type: "grid",
+ spotlight: undefined,
+ grid: [`${localId}:0`, `${aliceId}:0`, `${bobId}:0`],
+ },
+ b: {
+ type: "grid",
+ spotlight: [`${localId}:0:screen-share`],
+ grid: [`${localId}:0`, `${aliceId}:0`, `${bobId}:0`],
+ },
+ },
+ );
+ },
+ );
+ });
+ });
+
+ test("local screen sharing in one-on-one call activates grid layout", () => {
+ withTestScheduler(({ behavior, expectObservable }) => {
+ // Local participant shares their screen, then stops sharing
+ const sharingInputMarbles = " nyn";
+ // Layout should switch to grid layout then back to one-on-one layout
+ const expectedLayoutMarbles = "aba";
+ withCallViewModel(
+ {
+ remoteParticipants$: constant([aliceParticipant]),
+ rtcMembers$: constant([localRtcMember, aliceRtcMember]),
+ sharingScreen: new Map([
+ [localParticipant, behavior(sharingInputMarbles, yesNo)],
+ ]),
+ },
+ (vm) => {
+ expectObservable(summarizeLayout$(vm.layout$)).toBe(
+ expectedLayoutMarbles,
+ {
+ a: {
+ type: "one-on-one",
+ pip: `${localId}:0`,
+ spotlight: `${aliceId}:0`,
+ },
+ b: {
+ type: "grid",
+ spotlight: [`${localId}:0:screen-share`],
+ grid: [`${localId}:0`, `${aliceId}:0`],
+ },
+ },
+ );
+ },
+ );
+ });
+ });
+
test("participants stay in the same order unless to appear/disappear", () => {
withTestScheduler(({ behavior, schedule, expectObservable }) => {
const visibilityInputMarbles = "a";
@@ -688,7 +751,7 @@ describe.each([
withCallViewModel(
{
remoteParticipants$: constant([
- aliceSharingScreen,
+ aliceParticipant,
bobParticipant,
daveParticipant,
]),
@@ -702,6 +765,7 @@ describe.each([
[bobParticipant, behavior(bSpeakingInputMarbles, yesNo)],
[daveParticipant, behavior(dSpeakingInputMarbles, yesNo)],
]),
+ sharingScreen: new Map([[aliceParticipant, constant(true)]]),
},
(vm) => {
schedule(modeInputMarbles, {
@@ -750,6 +814,53 @@ describe.each([
});
});
+ test("PiP tile in expanded spotlight layout avoids redundantly showing local user", () => {
+ withTestScheduler(({ behavior, schedule, expectObservable }) => {
+ // Switch to spotlight immediately
+ const modeInputMarbles = " s";
+ // And expand the spotlight immediately
+ const expandInputMarbles = " a";
+ // First no one else is in the call, then Alice joins
+ const participantInputMarbles = "ab";
+ // First local user should be in the spotlight, then they appear in PiP
+ // only once Alice has joined
+ const expectedLayoutMarbles = " ab";
+
+ withCallViewModel(
+ {
+ rtcMembers$: behavior(participantInputMarbles, {
+ a: [localRtcMember],
+ b: [localRtcMember, aliceRtcMember],
+ }),
+ },
+ (vm) => {
+ schedule(modeInputMarbles, {
+ s: () => vm.setGridMode("spotlight"),
+ });
+ schedule(expandInputMarbles, {
+ a: () => vm.toggleSpotlightExpanded$.value!(),
+ });
+
+ expectObservable(summarizeLayout$(vm.layout$)).toBe(
+ expectedLayoutMarbles,
+ {
+ a: {
+ type: "spotlight-expanded",
+ spotlight: [`${localId}:0`],
+ pip: undefined,
+ },
+ b: {
+ type: "spotlight-expanded",
+ spotlight: [`${aliceId}:0`],
+ pip: `${localId}:0`,
+ },
+ },
+ );
+ },
+ );
+ });
+ });
+
test("spotlight remembers whether it's expanded", () => {
withTestScheduler(({ schedule, expectObservable }) => {
// Start in spotlight mode, then switch to grid and back to spotlight a
@@ -809,26 +920,30 @@ describe.each([
withTestScheduler(({ behavior, expectObservable }) => {
// iterate through a number of combinations of participants and MatrixRTC memberships
// Bob never has an MatrixRTC membership
- const scenarioInputMarbles = " abcdec";
+ const participantInputMarbles = "abcd-c";
+ // Bob even tries to share his screen at the end
+ const bobSharingInputMarbles = " n---yn";
// Bob should never be visible
- const expectedLayoutMarbles = "a-bc-b";
+ const expectedLayoutMarbles = " a-bc-b";
withCallViewModel(
{
- remoteParticipants$: behavior(scenarioInputMarbles, {
+ remoteParticipants$: behavior(participantInputMarbles, {
a: [],
b: [bobParticipant],
c: [aliceParticipant, bobParticipant],
d: [aliceParticipant, daveParticipant, bobParticipant],
- e: [aliceParticipant, daveParticipant, bobSharingScreen],
}),
- rtcMembers$: behavior(scenarioInputMarbles, {
+ rtcMembers$: behavior(participantInputMarbles, {
a: [localRtcMember],
b: [localRtcMember],
c: [localRtcMember, aliceRtcMember],
d: [localRtcMember, aliceRtcMember, daveRtcMember],
e: [localRtcMember, aliceRtcMember, daveRtcMember],
}),
+ sharingScreen: new Map([
+ [bobParticipant, behavior(bobSharingInputMarbles, yesNo)],
+ ]),
},
(vm) => {
vm.setGridMode("grid");
diff --git a/src/state/CallViewModel/CallViewModel.ts b/src/state/CallViewModel/CallViewModel.ts
index 8b4d19fb..e298bcfd 100644
--- a/src/state/CallViewModel/CallViewModel.ts
+++ b/src/state/CallViewModel/CallViewModel.ts
@@ -82,7 +82,7 @@ import { constant, type Behavior } from "../Behavior";
import { E2eeType } from "../../e2ee/e2eeType";
import { MatrixKeyProvider } from "../../e2ee/matrixKeyProvider";
import { type MuteStates } from "../MuteStates";
-import { getUrlParams } from "../../UrlParams";
+import { getUrlParams, HeaderStyle } from "../../UrlParams";
import { type ProcessorState } from "../../livekit/TrackProcessorContext";
import { ElementWidgetActions, widget } from "../../widget";
import {
@@ -105,12 +105,16 @@ import {
import {
createLocalTransport$,
JwtEndpointVersion,
+ type LocalTransport,
} from "./localMember/LocalTransport.ts";
import {
createMemberships$,
membershipsAndTransports$,
} from "../SessionBehaviors.ts";
-import { ECConnectionFactory } from "./remoteMembers/ConnectionFactory.ts";
+import {
+ type ConnectionFactory,
+ ECConnectionFactory,
+} from "./remoteMembers/ConnectionFactory.ts";
import {
type ConnectionManagerData,
createConnectionManager$,
@@ -170,8 +174,14 @@ export interface CallViewModelOptions {
connectionState$?: Behavior;
/** Optional behavior overriding the computed window size, mainly for testing purposes. */
windowSize$?: Behavior<{ width: number; height: number }>;
+ /** Optional value overriding the local transport, for testing purposes. */
+ localTransport?: LocalTransport;
+ /** Optional value overriding the connection factory, for testing purposes. */
+ connectionFactory?: ConnectionFactory;
/** The version & compatibility mode of MatrixRTC that we should use. */
matrixRTCMode$?: Behavior;
+ /** Optional behavior overriding for the screensharing, for testing */
+ toggleScreensharing?: () => void;
}
// Do not play any sounds if the participant count has exceeded this
@@ -441,6 +451,7 @@ export function createCallViewModel$(
// Re-create LocalTransport whenever the mode changes
(mode) => ({ keys: [mode], data: undefined }),
(scope, _data$, mode) =>
+ options.localTransport ??
createLocalTransport$({
scope: scope,
memberships$: memberships$,
@@ -467,17 +478,19 @@ export function createCallViewModel$(
),
);
- const connectionFactory = new ECConnectionFactory(
- client,
- matrixRoom.roomId,
- mediaDevices,
- trackProcessorState$,
- livekitKeyProvider,
- getUrlParams().controlledAudioDevices,
- options.livekitRoomFactory,
- getUrlParams().echoCancellation,
- getUrlParams().noiseSuppression,
- );
+ const connectionFactory =
+ options.connectionFactory ??
+ new ECConnectionFactory(
+ client,
+ matrixRoom.roomId,
+ mediaDevices,
+ trackProcessorState$,
+ livekitKeyProvider,
+ getUrlParams().controlledAudioDevices,
+ options.livekitRoomFactory,
+ getUrlParams().echoCancellation,
+ getUrlParams().noiseSuppression,
+ );
const connectionManager = createConnectionManager$({
scope: scope,
@@ -546,9 +559,7 @@ export function createCallViewModel$(
},
connectionManager,
matrixRTCSession,
- localTransport$: scope.behavior(
- localTransport$.pipe(switchMap((t) => t.advertised$)),
- ),
+ localTransport$,
logger: logger.getChild(`[${Date.now()}]`),
});
@@ -951,7 +962,7 @@ export function createCallViewModel$(
const spotlightAndPip$ = scope.behavior<{
spotlight: MediaViewModel[];
- pip$: Behavior;
+ pip$: Observable;
}>(
ringingMedia$.pipe(
switchMap((ringingMedia) => {
@@ -966,7 +977,10 @@ export function createCallViewModel$(
return spotlightSpeaker$.pipe(
map((speaker) => ({
spotlight: speaker ? [speaker] : [],
- pip$: localUserMediaForPip$,
+ // Hide PiP if redundant (i.e. if local user is already in spotlight)
+ pip$: localUserMediaForPip$.pipe(
+ map((m) => (m === speaker ? undefined : m)),
+ ),
})),
);
}),
@@ -1077,9 +1091,10 @@ export function createCallViewModel$(
);
const oneOnOneLayoutMedia$: Observable =
- userMedia$.pipe(
- switchMap((userMedia) => {
- if (userMedia.length <= 2) {
+ combineLatest([userMedia$, screenShares$]).pipe(
+ switchMap(([userMedia, screenShares]) => {
+ // One-on-one layout only supports 2 user media, no screen shares
+ if (userMedia.length <= 2 && screenShares.length === 0) {
const local = userMedia.find(
(vm): vm is WrappedUserMediaViewModel & LocalUserMediaViewModel =>
vm.type === "user" && vm.local,
@@ -1313,7 +1328,11 @@ export function createCallViewModel$(
windowMode$.pipe(map((mode) => mode !== "pip" && mode !== "flat")),
);
- const showFooter$ = scope.behavior(
+ const urlParams = getUrlParams();
+ const showFooterUrlParams = !(
+ urlParams.header === HeaderStyle.None && urlParams.showControls === false
+ );
+ const showFooterLayout$ = scope.behavior(
windowMode$.pipe(
switchMap((mode) => {
switch (mode) {
@@ -1367,7 +1386,11 @@ export function createCallViewModel$(
}),
),
);
-
+ const showFooter$ = scope.behavior(
+ showFooterLayout$.pipe(
+ map((showFooter) => showFooter && showFooterUrlParams),
+ ),
+ );
/**
* Whether audio is currently being output through the earpiece.
*/
@@ -1494,7 +1517,8 @@ export function createCallViewModel$(
* Callback to toggle screen sharing. If null, screen sharing is not possible.
*/
// reassigned here to make it publicly accessible
- const toggleScreenSharing = localMembership.toggleScreenSharing;
+ const toggleScreenSharing =
+ options.toggleScreensharing ?? localMembership.toggleScreenSharing;
const errors$ = scope.behavior<{
transportError?: ElementCallError;
diff --git a/src/state/CallViewModel/CallViewModelTestUtils.ts b/src/state/CallViewModel/CallViewModelTestUtils.ts
index b6bf8a9a..9685c709 100644
--- a/src/state/CallViewModel/CallViewModelTestUtils.ts
+++ b/src/state/CallViewModel/CallViewModelTestUtils.ts
@@ -15,7 +15,7 @@ import {
type Room as LivekitRoom,
} from "livekit-client";
import { SyncState } from "matrix-js-sdk/lib/sync";
-import { BehaviorSubject, type Observable, map, of } from "rxjs";
+import { BehaviorSubject, combineLatest, map, of } from "rxjs";
import { onTestFinished, vi } from "vitest";
import { ClientEvent, type RoomMember, type MatrixClient } from "matrix-js-sdk";
import EventEmitter from "events";
@@ -30,7 +30,10 @@ import {
type CallViewModelOptions,
} from "./CallViewModel";
import {
+ exampleSfuConfig,
+ exampleTransport,
mockConfig,
+ MockConnection,
mockLivekitRoom,
mockLocalParticipant,
mockMatrixRoom,
@@ -68,13 +71,14 @@ export interface CallViewModelInputs {
rtcMembers$: Behavior[]>;
roomMembers: RoomMember[];
livekitConnectionState$: Behavior;
- speaking: Map>;
+ speaking: Map>;
+ sharingScreen: Map>;
mediaDevices: MediaDevices;
initialSyncState: SyncState;
windowSize$: Behavior<{ width: number; height: number }>;
}
-const localParticipant = mockLocalParticipant({ identity: "" });
+export const localParticipant = mockLocalParticipant({ identity: "" });
export function withCallViewModel(mode: MatrixRTCMode) {
return (
@@ -94,6 +98,7 @@ export function withCallViewModel(mode: MatrixRTCMode) {
ConnectionState.Connected,
),
speaking = new Map(),
+ sharingScreen = new Map(),
mediaDevices = mockMediaDevices({}),
initialSyncState = SyncState.Syncing,
windowSize$ = constant({ width: 1000, height: 800 }),
@@ -131,6 +136,9 @@ export function withCallViewModel(mode: MatrixRTCMode) {
public getSyncState(): SyncState {
return syncState;
}
+ public getAccessToken(): string | null {
+ return "a-token";
+ }
})() as Partial as MatrixClient,
getMembers: () => roomMembers,
getMembersWithMembership: () => roomMembers,
@@ -151,13 +159,19 @@ export function withCallViewModel(mode: MatrixRTCMode) {
const eventsSpy = vi
.spyOn(ComponentsCore, "observeParticipantEvents")
.mockImplementation((p, ...eventTypes) => {
- if (eventTypes.includes(ParticipantEvent.IsSpeakingChanged)) {
- return (speaking.get(p) ?? of(false)).pipe(
- map((s): Participant => ({ ...p, isSpeaking: s }) as Participant),
- );
- } else {
- return of(p);
- }
+ return combineLatest([
+ (eventTypes.includes(ParticipantEvent.IsSpeakingChanged) &&
+ speaking.get(p)) ||
+ constant(false),
+ (eventTypes.includes(ParticipantEvent.TrackPublished) &&
+ sharingScreen.get(p)) ||
+ constant(false),
+ ]).pipe(
+ map(
+ ([isSpeaking, isScreenShareEnabled]) =>
+ ({ ...p, isSpeaking, isScreenShareEnabled }) as Participant,
+ ),
+ );
});
const roomEventSelectorSpy = vi
@@ -169,6 +183,13 @@ export function withCallViewModel(mode: MatrixRTCMode) {
);
const reactions$ = new BehaviorSubject>({});
+ const livekitRoomFactory = (): LivekitRoom =>
+ mockLivekitRoom({
+ localParticipant,
+ disconnect: async () => Promise.resolve(),
+ setE2EEEnabled: async () => Promise.resolve(),
+ });
+
const vm = createCallViewModel$(
testScope(),
rtcSession.asMockedSession(),
@@ -178,14 +199,38 @@ export function withCallViewModel(mode: MatrixRTCMode) {
{
encryptionSystem: { kind: E2eeType.PER_PARTICIPANT },
autoLeaveWhenOthersLeft: false,
- livekitRoomFactory: (): LivekitRoom =>
- mockLivekitRoom({
- localParticipant,
- disconnect: async () => Promise.resolve(),
- setE2EEEnabled: async () => Promise.resolve(),
- }),
+ livekitRoomFactory,
connectionState$,
windowSize$,
+ localTransport: {
+ active$: constant({
+ transport: exampleTransport,
+ sfuConfig: exampleSfuConfig,
+ }),
+ advertised$: constant(exampleTransport),
+ },
+ connectionFactory: {
+ createConnection(
+ scope,
+ transport,
+ ownMembershipIdentity,
+ logger,
+ sfuConfig,
+ ) {
+ return new MockConnection(
+ {
+ scope,
+ transport,
+ ownMembershipIdentity,
+ existingSFUConfig: sfuConfig,
+ client: room.client,
+ roomId: room.roomId,
+ livekitRoomFactory,
+ },
+ logger,
+ );
+ },
+ },
matrixRTCMode$: constant(mode),
...options,
},
diff --git a/src/state/CallViewModel/localMember/LocalMember.test.ts b/src/state/CallViewModel/localMember/LocalMember.test.ts
index e5e9f327..6eaaa0b0 100644
--- a/src/state/CallViewModel/localMember/LocalMember.test.ts
+++ b/src/state/CallViewModel/localMember/LocalMember.test.ts
@@ -33,13 +33,20 @@ import {
PublishState,
TrackState,
} from "./LocalMember";
-import { MatrixRTCTransportMissingError } from "../../../utils/errors";
+import {
+ FailToGetOpenIdToken,
+ MatrixRTCTransportMissingError,
+} from "../../../utils/errors";
import { Epoch, ObservableScope } from "../../ObservableScope";
import { constant } from "../../Behavior";
import { ConnectionManagerData } from "../remoteMembers/ConnectionManager";
import { ConnectionState, type Connection } from "../remoteMembers/Connection";
import { type Publisher } from "./Publisher";
import { initializeWidget } from "../../../widget";
+import {
+ type LocalTransport,
+ type LocalTransportWithSFUConfig,
+} from "./LocalTransport";
initializeWidget();
@@ -214,7 +221,7 @@ describe("LocalMembership", () => {
};
it("throws error on missing RTC config error", () => {
- withTestScheduler(({ scope, hot, expectObservable }) => {
+ withTestScheduler(({ scope, hot, behavior, expectObservable }) => {
const localTransport$ = scope.behavior(
hot("1ms #", {}, new MatrixRTCTransportMissingError("domain.com")),
null,
@@ -230,11 +237,16 @@ describe("LocalMembership", () => {
),
};
+ const aLocalTransport: LocalTransport = {
+ advertised$: localTransport$,
+ active$: behavior("a", { a: null }),
+ };
+
const localMembership = createLocalMembership$({
scope,
...defaultCreateLocalMemberValues,
connectionManager: mockConnectionManager,
- localTransport$,
+ localTransport$: behavior("a", { a: aLocalTransport }),
});
localMembership.requestJoinAndPublish();
@@ -245,10 +257,62 @@ describe("LocalMembership", () => {
});
});
+ it("Should not publish to active transport if advertised has errors", () => {
+ withTestScheduler(({ scope, hot, behavior, expectObservable }) => {
+ const advertised$ = scope.behavior(
+ hot("--#", {}, new FailToGetOpenIdToken(new Error("foo"))),
+ null,
+ );
+
+ // Populate a connection for active
+ const connectionManagerData = new ConnectionManagerData();
+ connectionManagerData.add(connectionTransportBConnected, []);
+ const mockConnectionManager = {
+ transports$: constant(new Epoch([bTransport])),
+ connectionManagerData$: constant(new Epoch(connectionManagerData)),
+ };
+
+ const aLocalTransport: LocalTransport = {
+ advertised$,
+ active$: behavior("a", { n: null, a: bTransportWithSFUConfig }),
+ };
+
+ defaultCreateLocalMemberValues.createPublisherFactory.mockImplementation(
+ () => {
+ return {} as unknown as Publisher;
+ },
+ );
+ const publisherFactory =
+ defaultCreateLocalMemberValues.createPublisherFactory as ReturnType<
+ typeof vi.fn
+ >;
+
+ const localMembership = createLocalMembership$({
+ scope,
+ ...defaultCreateLocalMemberValues,
+ connectionManager: mockConnectionManager,
+ localTransport$: behavior("a", { a: aLocalTransport }),
+ });
+ localMembership.requestJoinAndPublish();
+
+ expectObservable(localMembership.localMemberState$).toBe("n-e", {
+ n: TransportState.Waiting,
+ e: expect.toSatisfy((e) => e instanceof FailToGetOpenIdToken),
+ });
+
+ // Should not have created any publisher
+ expect(publisherFactory).toHaveBeenCalledTimes(0);
+ });
+ });
+
it("logs if callIntent cannot be updated", async () => {
const scope = new ObservableScope();
- const localTransport$ = new BehaviorSubject(aTransport);
+ const aLocalTransport: LocalTransport = {
+ advertised$: new BehaviorSubject(aTransport),
+ active$: new BehaviorSubject(aTransportWithSFUConfig),
+ };
+
const mockConnectionManager = {
transports$: constant(new Epoch([])),
connectionManagerData$: constant(new Epoch(new ConnectionManagerData())),
@@ -264,7 +328,7 @@ describe("LocalMembership", () => {
leaveRoomSession: vi.fn(),
},
connectionManager: mockConnectionManager,
- localTransport$,
+ localTransport$: new BehaviorSubject(aLocalTransport),
});
const expextedLog =
"'not connected yet' while updating the call intent (this is expected on startup)";
@@ -279,10 +343,31 @@ describe("LocalMembership", () => {
const aTransport = {
livekit_service_url: "a",
} as LivekitTransportConfig;
+
+ const aTransportWithSFUConfig = {
+ transport: aTransport,
+ sfuConfig: {
+ jwt: "foo",
+ livekitAlias: "bar",
+ livekitIdentity: "baz",
+ url: "bro",
+ },
+ } as LocalTransportWithSFUConfig;
+
const bTransport = {
livekit_service_url: "b",
} as LivekitTransportConfig;
+ const bTransportWithSFUConfig = {
+ transport: bTransport,
+ sfuConfig: {
+ jwt: "foo2",
+ livekitAlias: "bar2",
+ livekitIdentity: "baz2",
+ url: "bro2",
+ },
+ } as LocalTransportWithSFUConfig;
+
const connectionTransportAConnected = {
livekitRoom: mockLivekitRoom({
localParticipant: {
@@ -307,7 +392,11 @@ describe("LocalMembership", () => {
it("recreates publisher if new connection is used, always unpublish and end tracks", async () => {
const scope = new ObservableScope();
- const localTransport$ = new BehaviorSubject(aTransport);
+ const activeTransport$ = new BehaviorSubject(aTransportWithSFUConfig);
+ const aLocalTransport: LocalTransport = {
+ advertised$: new BehaviorSubject(aTransport),
+ active$: activeTransport$,
+ };
const publishers: Publisher[] = [];
let seed = 0;
@@ -343,10 +432,13 @@ describe("LocalMembership", () => {
connectionManager: {
connectionManagerData$: constant(new Epoch(connectionManagerData)),
},
- localTransport$,
+ localTransport$: new BehaviorSubject(aLocalTransport),
});
await flushPromises();
- localTransport$.next(bTransport);
+ activeTransport$.next({
+ ...aTransportWithSFUConfig,
+ transport: bTransport,
+ });
await flushPromises();
expect(publisherFactory).toHaveBeenCalledTimes(2);
@@ -368,8 +460,6 @@ describe("LocalMembership", () => {
it("only start tracks if requested", async () => {
const scope = new ObservableScope();
- const localTransport$ = new BehaviorSubject(aTransport);
-
const publishers: Publisher[] = [];
const tracks$ = new BehaviorSubject([]);
@@ -396,6 +486,11 @@ describe("LocalMembership", () => {
typeof vi.fn
>;
+ const aLocalTransport: LocalTransport = {
+ advertised$: new BehaviorSubject(aTransport),
+ active$: new BehaviorSubject(aTransportWithSFUConfig),
+ };
+
const connectionManagerData = new ConnectionManagerData();
connectionManagerData.add(connectionTransportAConnected, []);
// connectionManagerData.add(connectionTransportB, []);
@@ -405,7 +500,7 @@ describe("LocalMembership", () => {
connectionManager: {
connectionManagerData$: constant(new Epoch(connectionManagerData)),
},
- localTransport$,
+ localTransport$: new BehaviorSubject(aLocalTransport),
});
await flushPromises();
expect(publisherFactory).toHaveBeenCalledOnce();
@@ -428,9 +523,15 @@ describe("LocalMembership", () => {
const scope = new ObservableScope();
const connectionManagerData = new ConnectionManagerData();
- const localTransport$ = new BehaviorSubject(
- null,
- );
+
+ const activeTransport$ =
+ new BehaviorSubject(null);
+
+ const aLocalTransport: LocalTransport = {
+ advertised$: new BehaviorSubject(aTransport),
+ active$: activeTransport$,
+ };
+
const connectionManagerData$ = new BehaviorSubject(
new Epoch(connectionManagerData),
);
@@ -470,14 +571,14 @@ describe("LocalMembership", () => {
connectionManager: {
connectionManagerData$,
},
- localTransport$,
+ localTransport$: new BehaviorSubject(aLocalTransport),
});
await flushPromises();
expect(localMembership.localMemberState$.value).toStrictEqual(
TransportState.Waiting,
);
- localTransport$.next(aTransport);
+ activeTransport$.next(aTransportWithSFUConfig);
await flushPromises();
expect(localMembership.localMemberState$.value).toStrictEqual({
matrix: RTCMemberStatus.Connected,
diff --git a/src/state/CallViewModel/localMember/LocalMember.ts b/src/state/CallViewModel/localMember/LocalMember.ts
index eb641ca7..10a00767 100644
--- a/src/state/CallViewModel/localMember/LocalMember.ts
+++ b/src/state/CallViewModel/localMember/LocalMember.ts
@@ -62,6 +62,8 @@ import {
} from "../remoteMembers/Connection.ts";
import { type HomeserverConnected } from "./HomeserverConnected.ts";
import { and$ } from "../../../utils/observable.ts";
+import { type LocalTransport } from "./LocalTransport.ts";
+import { areLivekitTransportsEqual } from "../remoteMembers/MatrixLivekitMembers.ts";
export enum TransportState {
/** Not even a transport is available to the LocalMembership */
@@ -127,7 +129,7 @@ interface Props {
createPublisherFactory: (connection: Connection) => Publisher;
joinMatrixRTC: (transport: LivekitTransportConfig) => void;
homeserverConnected: HomeserverConnected;
- localTransport$: Behavior;
+ localTransport$: Behavior;
matrixRTCSession: Pick<
MatrixRTCSession,
"updateCallIntent" | "leaveRoomSession"
@@ -160,7 +162,7 @@ interface Props {
export const createLocalMembership$ = ({
scope,
connectionManager,
- localTransport$: localTransportCanThrow$,
+ localTransport$,
homeserverConnected,
createPublisherFactory,
joinMatrixRTC,
@@ -205,23 +207,43 @@ export const createLocalMembership$ = ({
const logger = parentLogger.getChild("[LocalMembership]");
logger.debug(`Creating local membership..`);
+ // We consider error on the transport as fatal.
+ // Whether it is the active transport or the preferred transport.
+ const handleTransportError = (e: unknown): Observable => {
+ let error: ElementCallError;
+ if (e instanceof ElementCallError) {
+ error = e;
+ } else {
+ error = new UnknownCallError(
+ e instanceof Error ? e : new Error("Unknown error from localTransport"),
+ );
+ }
+ setTransportError(error);
+ return of(null);
+ };
+
+ // This is the transport that we will advertise in our membership.
+ const advertisedTransport$ = localTransport$.pipe(
+ switchMap((lt) => lt.advertised$),
+ catchError(handleTransportError),
+ distinctUntilChanged(areLivekitTransportsEqual),
+ );
+
// Unwrap the local transport and set the state of the LocalMembership to error in case the transport is an error.
- const localTransport$ = scope.behavior(
- localTransportCanThrow$.pipe(
- catchError((e: unknown) => {
- let error: ElementCallError;
- if (e instanceof ElementCallError) {
- error = e;
- } else {
- error = new UnknownCallError(
- e instanceof Error
- ? e
- : new Error("Unknown error from localTransport"),
- );
- }
- setTransportError(error);
- return of(null);
+ const activeTransport$ = scope.behavior(
+ localTransport$.pipe(
+ switchMap((lt) => {
+ return combineLatest([lt.active$, lt.advertised$]).pipe(
+ map(([active, advertised]) => {
+ // Our policy is to not publish to another transport if our prefered transport is miss-configured
+ if (advertised == null) return null;
+
+ return active?.transport ?? null;
+ }),
+ );
}),
+ catchError(handleTransportError),
+ distinctUntilChanged(areLivekitTransportsEqual),
),
);
@@ -229,7 +251,7 @@ export const createLocalMembership$ = ({
const localConnection$ = scope.behavior(
combineLatest([
connectionManager.connectionManagerData$,
- localTransport$,
+ activeTransport$,
]).pipe(
map(([{ value: connectionData }, localTransport]) => {
if (localTransport === null) {
@@ -398,7 +420,7 @@ export const createLocalMembership$ = ({
const mediaState$: Behavior = scope.behavior(
combineLatest([
localConnectionState$,
- localTransport$,
+ activeTransport$,
joinAndPublishRequested$,
from(trackStartRequested.promise).pipe(
map(() => true),
@@ -537,9 +559,11 @@ export const createLocalMembership$ = ({
});
});
- // Keep matrix rtc session in sync with localTransport$, connectRequested$
+ // Keep matrix rtc session in sync with advertisedTransport$, connectRequested$
scope.reconcile(
- scope.behavior(combineLatest([localTransport$, joinAndPublishRequested$])),
+ scope.behavior(
+ combineLatest([advertisedTransport$, joinAndPublishRequested$]),
+ ),
async ([transport, shouldConnect]) => {
if (!transport) return;
// if shouldConnect=false we will do the disconnect as the cleanup from the previous reconcile iteration.
@@ -638,7 +662,15 @@ export const createLocalMembership$ = ({
) {
toggleScreenSharing = (): void => {
const screenshareSettings: ScreenShareCaptureOptions = {
- audio: true,
+ // Screen share audio shouldn't have any filtering.
+ // "echoCancellation" is purposely excluded, as setting it to
+ // false causes the screen share audio track to include
+ // an echo of the incoming participant's voice
+ audio: {
+ autoGainControl: false,
+ noiseSuppression: false,
+ voiceIsolation: false,
+ },
selfBrowserSurface: "include",
surfaceSwitching: "include",
systemAudio: "include",
@@ -770,7 +802,6 @@ export function enterRTCSession(
makeKeyDelay: matrixRtcSessionConfig?.wait_for_key_rotation_ms,
membershipEventExpiryMs:
matrixRtcSessionConfig?.membership_event_expiry_ms,
- useExperimentalToDeviceTransport: true,
unstableSendStickyEvents: matrixRTCMode === MatrixRTCMode.Matrix_2_0,
},
);
diff --git a/src/state/CallViewModel/localMember/LocalTransport.test.ts b/src/state/CallViewModel/localMember/LocalTransport.test.ts
index f6c00c7f..cf7555fa 100644
--- a/src/state/CallViewModel/localMember/LocalTransport.test.ts
+++ b/src/state/CallViewModel/localMember/LocalTransport.test.ts
@@ -19,7 +19,7 @@ import {
type CallMembership,
type LivekitTransportConfig,
} from "matrix-js-sdk/lib/matrixrtc";
-import { BehaviorSubject, lastValueFrom } from "rxjs";
+import { BehaviorSubject, filter, lastValueFrom } from "rxjs";
import fetchMock from "fetch-mock";
import {
@@ -27,8 +27,13 @@ import {
flushPromises,
ownMemberMock,
mockRtcMembership,
+ testScope,
} from "../../../utils/test";
-import { createLocalTransport$, JwtEndpointVersion } from "./LocalTransport";
+import {
+ createLocalTransport$,
+ JwtEndpointVersion,
+ type LocalTransportWithSFUConfig,
+} from "./LocalTransport";
import { constant } from "../../Behavior";
import { Epoch, ObservableScope, trackEpoch } from "../../ObservableScope";
import {
@@ -47,13 +52,11 @@ describe("LocalTransport", () => {
livekitIdentity: "@lk_user:ABCDEF",
};
- let scope: ObservableScope;
- beforeEach(() => (scope = new ObservableScope()));
- afterEach(() => scope.end());
+ beforeEach(() => vi.clearAllMocks());
it("throws if config is missing", async () => {
const { advertised$, active$ } = createLocalTransport$({
- scope,
+ scope: testScope(),
roomId: "!room:example.org",
useOldestMember: false,
memberships$: constant(new Epoch([])),
@@ -140,7 +143,7 @@ describe("LocalTransport", () => {
);
const { advertised$, active$ } = createLocalTransport$({
- scope,
+ scope: testScope(),
roomId: "!room:example.org",
useOldestMember: false,
memberships$: constant(new Epoch([])),
@@ -211,6 +214,7 @@ describe("LocalTransport", () => {
// Initially, Alice is the only member
const memberships$ = new BehaviorSubject([aliceMembership]);
+ const scope = testScope();
const { advertised$, active$ } = createLocalTransport$({
scope,
roomId: "!example_room_id",
@@ -267,6 +271,7 @@ describe("LocalTransport", () => {
// Initially, there are no members
const memberships$ = new BehaviorSubject([]);
+ const scope = testScope();
const { advertised$, active$ } = createLocalTransport$({
scope,
roomId: "!example_room_id",
@@ -317,7 +322,7 @@ describe("LocalTransport", () => {
customLivekitUrl.setValue(customLivekitUrl.defaultValue);
localTransportOpts = {
ownMembershipIdentity: ownMemberMock,
- scope,
+ scope: testScope(),
roomId: "!example_room_id",
useOldestMember: false,
forceJwtEndpoint: JwtEndpointVersion.Legacy,
@@ -511,7 +516,7 @@ describe("LocalTransport", () => {
it("throws if no options are available", async () => {
const { advertised$, active$ } = createLocalTransport$({
- scope,
+ scope: testScope(),
ownMembershipIdentity: ownMemberMock,
roomId: "!example_room_id",
useOldestMember: false,
@@ -539,4 +544,86 @@ describe("LocalTransport", () => {
);
});
});
+
+ it("should not update advertised/active transport on delayID changes, but delay Id delegation should be called", async () => {
+ // For simplicity, we'll just use the config livekit
+ customLivekitUrl.setValue("https://lk.example.org");
+
+ const authCallSpy = vi
+ .spyOn(openIDSFU, "getSFUConfigWithOpenID")
+ .mockResolvedValue(openIdResponse);
+
+ const delayId$ = new BehaviorSubject(null);
+
+ const { advertised$, active$ } = createLocalTransport$({
+ scope: testScope(),
+ ownMembershipIdentity: ownMemberMock,
+ roomId: "!example_room_id",
+ // We want multi-sdu
+ useOldestMember: false,
+ forceJwtEndpoint: JwtEndpointVersion.Legacy,
+ delayId$: delayId$,
+ memberships$: constant(new Epoch([])),
+ client: {
+ getDomain: () => "",
+ baseUrl: "https://example.org",
+ // eslint-disable-next-line @typescript-eslint/naming-convention
+ _unstable_getRTCTransports: async () => Promise.resolve([]),
+ getAccessToken: vi.fn().mockReturnValue("access_token"),
+ // These won't be called in this error path but satisfy the type
+ getOpenIdToken: vi.fn(),
+ getDeviceId: vi.fn(),
+ },
+ });
+
+ const advertisedValues: LivekitTransportConfig[] = [];
+ const activeValues: LocalTransportWithSFUConfig[] = [];
+ advertised$
+ .pipe(filter((v) => v !== null))
+ .subscribe((t) => advertisedValues.push(t));
+ active$
+ .pipe(filter((v) => v !== null))
+ .subscribe((t) => activeValues.push(t));
+
+ await flushPromises();
+
+ // we have now an active and an advertised
+ expect(advertisedValues.length).toEqual(1);
+ expect(activeValues.length).toEqual(1);
+ expect(advertisedValues[0]!.livekit_service_url).toEqual(
+ "https://lk.example.org",
+ );
+ expect(activeValues[0]!.transport.livekit_service_url).toEqual(
+ "https://lk.example.org",
+ );
+
+ expect(authCallSpy).toHaveBeenCalledTimes(2);
+ // Now emits 3 new delays id
+ delayId$.next("delay_id_1");
+ await flushPromises();
+ delayId$.next("delay_id_2");
+ await flushPromises();
+ delayId$.next("delay_id_3");
+ await flushPromises();
+
+ // No new emissions should've happened, it is the same transport.
+ expect(advertisedValues.length).toEqual(1);
+ expect(activeValues.length).toEqual(1);
+
+ // Still we should have updated the delayID to auth
+ expect(authCallSpy).toHaveBeenCalledTimes(
+ 4 * 2 /* 2 calls for each delayId ?? why */,
+ );
+
+ expect(authCallSpy).toHaveBeenLastCalledWith(
+ expect.anything(),
+ expect.anything(),
+ expect.anything(),
+ expect.anything(),
+ expect.objectContaining({
+ delayId: "delay_id_3",
+ }),
+ expect.anything(),
+ );
+ });
});
diff --git a/src/state/CallViewModel/localMember/LocalTransport.ts b/src/state/CallViewModel/localMember/LocalTransport.ts
index da4fe1dc..10ea79c4 100644
--- a/src/state/CallViewModel/localMember/LocalTransport.ts
+++ b/src/state/CallViewModel/localMember/LocalTransport.ts
@@ -8,16 +8,18 @@ Please see LICENSE in the repository root for full details.
import {
type CallMembership,
isLivekitTransportConfig,
- type Transport,
type LivekitTransportConfig,
} from "matrix-js-sdk/lib/matrixrtc";
-import { MatrixError, type MatrixClient } from "matrix-js-sdk";
+import { type MatrixClient } from "matrix-js-sdk";
import {
+ catchError,
+ combineLatest,
distinctUntilChanged,
first,
from,
map,
merge,
+ type Observable,
of,
startWith,
switchMap,
@@ -42,6 +44,7 @@ import {
} from "../../../livekit/openIDSFU.ts";
import { areLivekitTransportsEqual } from "../remoteMembers/MatrixLivekitMembers.ts";
import { customLivekitUrl } from "../../../settings/settings.ts";
+import { RtcTransportAutoDiscovery } from "./RtcTransportAutoDiscovery.ts";
const logger = rootLogger.getChild("[LocalTransport]");
@@ -103,7 +106,7 @@ export function isLocalTransportWithSFUConfig(
return "transport" in obj && "sfuConfig" in obj;
}
-interface LocalTransport {
+export interface LocalTransport {
/**
* The transport to be advertised in our MatrixRTC membership. `null` when not
* yet fetched/validated.
@@ -137,11 +140,116 @@ export const createLocalTransport$ = ({
forceJwtEndpoint,
delayId$,
}: Props): LocalTransport => {
- /**
- * The LiveKit transport in use by the oldest RTC membership. `null` when the
- * oldest member has no such transport.
- */
- const oldestMemberTransport$ = scope.behavior(
+ // The LiveKit transport in use by the oldest RTC membership. `null` when the
+ // oldest member has no such transport.
+ const oldestMemberTransport$ = observerOldestMembership$(scope, memberships$);
+
+ const transportDiscovery = new RtcTransportAutoDiscovery({
+ client: client,
+ resolvedConfig: Config.get(),
+ wellKnownFetcher: AutoDiscovery.getRawClientConfig.bind(AutoDiscovery),
+ logger: logger,
+ });
+
+ // Get the preferred transport from the current deployment.
+ const discoveredTransport$ = from(
+ transportDiscovery.discoverPreferredTransport(),
+ );
+
+ const preferredConfig$ = customLivekitUrl.value$
+ .pipe(
+ switchMap((customUrl) => {
+ if (customUrl) {
+ return of({
+ type: "livekit",
+ livekit_service_url: customUrl,
+ } as LivekitTransportConfig);
+ } else {
+ return discoveredTransport$;
+ }
+ }),
+ )
+ .pipe(
+ map((config) => {
+ if (!config) {
+ // Bubbled up from the preferredConfig$ observable.
+ throw new MatrixRTCTransportMissingError(client.getDomain() ?? "");
+ }
+ return config;
+ }),
+ distinctUntilChanged(areLivekitTransportsEqual),
+ );
+
+ const preferredTransport$ = combineLatest([preferredConfig$, delayId$]).pipe(
+ switchMap(async ([transport, delayId]) => {
+ try {
+ return await doOpenIdAndJWTFromUrl(
+ transport,
+ forceJwtEndpoint,
+ ownMembershipIdentity,
+ roomId,
+ client,
+ delayId ?? undefined,
+ );
+ } catch (e) {
+ logger.error(
+ `Failed to authenticate to transport ${transport.livekit_service_url}`,
+ e,
+ );
+ throw mapAuthErrorToUserFriendlyError(e);
+ }
+ }),
+ );
+
+ if (useOldestMember) {
+ return observeLocalTransportForOldestMembership(
+ scope,
+ oldestMemberTransport$,
+ preferredTransport$,
+ client,
+ ownMembershipIdentity,
+ roomId,
+ );
+ }
+
+ // --- Multi-SFU mode ---
+ // Always publish on and advertise the preferred transport.
+ return {
+ advertised$: scope.behavior(
+ preferredTransport$.pipe(
+ map((t) => t.transport),
+ distinctUntilChanged(areLivekitTransportsEqual),
+ ),
+ null,
+ ),
+ active$: scope.behavior(
+ preferredTransport$.pipe(
+ // XXX: WORK AROUND due to a reconnection glitch.
+ // To remove when we have a proper way to refresh the delegation event ID without refreshing
+ // the whole credentials.
+ // We deliberately hide any changes to the SFU config because we
+ // do not want the app to reconnect whenever the JWT
+ // token changes due to us delegating a new delayed event. The
+ // initial SFU config for the transport is all the app needs.
+ distinctUntilChanged((prev, next) =>
+ areLivekitTransportsEqual(prev.transport, next.transport),
+ ),
+ ),
+ null,
+ ),
+ };
+};
+
+/**
+ * Observes the oldest member in the room and returns the transport that it uses if it is a livekit transport.
+ * @param scope - The observable scope.
+ * @param memberships$ - The observable of the call's memberships.'
+ */
+function observerOldestMembership$(
+ scope: ObservableScope,
+ memberships$: Behavior>,
+): Behavior {
+ return scope.behavior(
memberships$.pipe(
map((memberships) => {
const oldestMember = memberships.value[0];
@@ -170,317 +278,141 @@ export const createLocalTransport$ = ({
distinctUntilChanged(areLivekitTransportsEqual),
),
);
-
- /**
- * The transport that we would personally prefer to publish on (if not for the
- * transport preferences of others, perhaps). `null` until fetched and
- * validated.
- *
- * @throws MatrixRTCTransportMissingError | FailToGetOpenIdToken
- */
- const preferredTransport$ =
- scope.behavior(
- // preferredTransport$ (used for multi sfu) needs to know if we are using the old or new
- // jwt endpoint (`get_token` vs `sfu/get`) based on that the jwt endpoint will compute the rtcBackendIdentity
- // differently. (sha(`${userId}|${deviceId}|${memberId}`) vs `${userId}|${deviceId}|${memberId}`)
- // When using sticky events (we need to use the new endpoint).
- customLivekitUrl.value$.pipe(
- switchMap((customUrl) =>
- startWith(null)(
- // Fetch the SFU config, and repeat this asynchronously for every
- // change in delay ID.
- delayId$.pipe(
- switchMap(async (delayId) => {
- logger.info(
- "Creating preferred transport based on: ",
- "customUrl: ",
- customUrl,
- "delayId: ",
- delayId,
- "forceJwtEndpoint: ",
- forceJwtEndpoint,
- );
- return makeTransport(
- client,
- ownMembershipIdentity,
- roomId,
- customUrl,
- forceJwtEndpoint,
- delayId ?? undefined,
- );
- }),
- // We deliberately hide any changes to the SFU config because we
- // do not actually want the app to reconnect whenever the JWT
- // token changes due to us delegating a new delayed event. The
- // initial SFU config for the transport is all the app needs.
- distinctUntilChanged((prev, next) =>
- areLivekitTransportsEqual(prev.transport, next.transport),
- ),
- ),
- ),
- ),
- ),
- );
-
- if (useOldestMember) {
- // --- Oldest member mode ---
- return {
- // Never update the transport that we advertise in our membership. Just
- // take the first valid oldest member or preferred transport that we learn
- // about, and stick with that. This avoids unnecessary SFU hops and room
- // state changes.
- advertised$: scope.behavior(
- merge(
- oldestMemberTransport$,
- preferredTransport$.pipe(map((t) => t?.transport ?? null)),
- ).pipe(
- first((t) => t !== null),
- tap((t) =>
- logger.info(`Advertise transport: ${t.livekit_service_url}`),
- ),
- ),
- null,
- ),
- // Publish on the transport used by the oldest member.
- active$: scope.behavior(
- oldestMemberTransport$.pipe(
- switchMap((transport) => {
- // Oldest member not available (or invalid SFU config).
- if (transport === null) return of(null);
- // Oldest member available: fetch the SFU config.
- const fetchOldestMemberTransport =
- async (): Promise => ({
- transport,
- sfuConfig: await getSFUConfigWithOpenID(
- client,
- ownMembershipIdentity,
- transport.livekit_service_url,
- roomId,
- { forceJwtEndpoint: JwtEndpointVersion.Legacy },
- logger,
- ),
- });
- return from(fetchOldestMemberTransport()).pipe(startWith(null));
- }),
- tap((t) =>
- logger.info(
- `Publish on transport: ${t?.transport.livekit_service_url}`,
- ),
- ),
- ),
- ),
- };
- }
-
- // --- Multi-SFU mode ---
- // Always publish on and advertise the preferred transport.
- return {
- advertised$: scope.behavior(
- preferredTransport$.pipe(
- map((t) => t?.transport ?? null),
- distinctUntilChanged(areLivekitTransportsEqual),
- ),
- ),
- active$: preferredTransport$,
- };
-};
-
-const FOCI_WK_KEY = "org.matrix.msc4143.rtc_foci";
+}
/**
- * Determine the correct Transport for the current session, including
- * validating auth against the service to ensure it's correct.
- * Prefers in order:
+ * Utility to ensure the user can authenticate with the SFU.
+ * We will call `getSFUConfigWithOpenID` once per transport here as it's our
+ * only mechanism of validation. This means we will also ask the
+ * homeserver for a OpenID token a few times. Since OpenID tokens are single
+ * use we don't want to risk any issues by re-using a token.
*
-
- * 1. The `urlFromDevSettings` value. If this cannot be validated, the function will throw.
- * 2. The transports returned via the homeserver.
- * 3. The transports returned via .well-known.
- * 4. The transport configured in Element Call's config.
+ * @param transport The transport to authenticate with.
+ * @param forceJwtEndpoint Whether to force the JWT endpoint to be used.
+ * @param membership The identity of the local member.
+ * @param roomId The room ID to use for the JWT.
+ * @param client The client to use for the OpenID token.
+ * @param delayId The delayId to use for the JWT.
*
- * @param client The authenticated Matrix client for the current user
- * @param membership The membership identity of the user.
- * @param roomId The ID of the room to be connected to.
- * @param urlFromDevSettings Override URL provided by the user's local config.
- * @param forceJwtEndpoint Whether to force a specific JWT endpoint
- * - `Legacy` / `Matrix_2_0`
- * - `get_token` / `sfu/get`
- * - not hashing / hashing the backendIdentity
- * @param delayId the delay id passed to the jwt service.
- *
- * @returns A fully validated transport config.
- * @throws MatrixRTCTransportMissingError | FailToGetOpenIdToken
+ * @throws FailToGetOpenIdToken, NoMatrix2AuthorizationService
*/
-async function makeTransport(
+async function doOpenIdAndJWTFromUrl(
+ transport: LivekitTransportConfig,
+ forceJwtEndpoint: JwtEndpointVersion,
+ membership: CallMembershipIdentityParts,
+ roomId: string,
client: Pick<
MatrixClient,
"getDomain" | "baseUrl" | "_unstable_getRTCTransports" | "getAccessToken"
> &
OpenIDClientParts,
- membership: CallMembershipIdentityParts,
- roomId: string,
- urlFromDevSettings: string | null,
- forceJwtEndpoint: JwtEndpointVersion,
delayId?: string,
): Promise {
- logger.trace("Searching for a preferred transport");
-
- async function doOpenIdAndJWTFromUrl(
- url: string,
- ): Promise {
- const sfuConfig = await getSFUConfigWithOpenID(
- client,
- membership,
- url,
- roomId,
- {
- forceJwtEndpoint: forceJwtEndpoint,
- delayEndpointBaseUrl: client.baseUrl,
- delayId,
- },
- logger,
- );
- return {
- transport: {
- type: "livekit",
- livekit_service_url: url,
- },
- sfuConfig,
- };
- }
- // We will call `getSFUConfigWithOpenID` once per transport here as it's our
- // only mechanism of valiation. This means we will also ask the
- // homeserver for a OpenID token a few times. Since OpenID tokens are single
- // use we don't want to risk any issues by re-using a token.
- //
- // If the OpenID request were to fail then it's acceptable for us to fail
- // this function early, as we assume the homeserver has got some problems.
-
- // DEVTOOL: Highest priority: Load from devtool setting
- if (urlFromDevSettings !== null) {
- // Validate that the SFU is up. Otherwise, we want to fail on this
- // as we don't permit other SFUs.
- // This will call the jwt/sfu/get endpoint to pre create the livekit room.
- logger.info("Using LiveKit transport from dev tools: ", urlFromDevSettings);
- return await doOpenIdAndJWTFromUrl(urlFromDevSettings);
- }
-
- async function getFirstUsableTransport(
- transports: Transport[],
- ): Promise {
- for (const potentialTransport of transports) {
- if (isLivekitTransportConfig(potentialTransport)) {
- try {
- logger.info(
- `makeTransport: check transport authentication for "${potentialTransport.livekit_service_url}"`,
- );
- // This will call the jwt/sfu/get endpoint to pre create the livekit room.
- return await doOpenIdAndJWTFromUrl(
- potentialTransport.livekit_service_url,
- );
- } catch (ex) {
- logger.debug(
- `makeTransport: Could not use SFU service "${potentialTransport.livekit_service_url}" as SFU`,
- ex,
- );
- // Explictly throw these
- if (ex instanceof FailToGetOpenIdToken) {
- throw ex;
- }
- if (ex instanceof NoMatrix2AuthorizationService) {
- throw ex;
- }
- }
- } else {
- logger.info(
- `makeTransport: "${potentialTransport.livekit_service_url}" is not a valid livekit transport as SFU`,
- );
- }
- }
- return null;
- }
-
- // MSC4143: Attempt to fetch transports from backend.
- // TODO: Workaround for an issue in the js-sdk RoomWidgetClient that
- // is not yet implementing _unstable_getRTCTransports properly (via widget API new action).
- // For now we just skip this call if we are in a widget.
- // In widget mode the client is a `RoomWidgetClient` which has no access token (it is using the widget API).
- // Could be removed once the js-sdk is fixed (https://github.com/matrix-org/matrix-js-sdk/issues/5245)
- const isSPA = !!client.getAccessToken();
- if (isSPA && "_unstable_getRTCTransports" in client) {
- logger.info(
- "makeTransport: First try to use getRTCTransports end point ...",
- );
- try {
- // TODO This should also check for server support?
- const transportList = await client._unstable_getRTCTransports();
- const selectedTransport = await getFirstUsableTransport(transportList);
- if (selectedTransport) {
- logger.info(
- "makeTransport: ...Using backend-configured (client.getRTCTransports) SFU",
- selectedTransport,
- );
- return selectedTransport;
- }
- } catch (ex) {
- if (ex instanceof MatrixError && ex.httpStatus === 404) {
- // Expected, this is an unstable endpoint and it's not required.
- // There will be expected 404 errors in the console. When we check if synapse supports the endpoint.
- logger.debug(
- "Matrix homeserver does not provide any RTC transports via `/rtc/transports` (will retry with well-known.)",
- );
- } else if (ex instanceof FailToGetOpenIdToken) {
- throw ex;
- } else {
- // We got an error that wasn't just missing support for the feature, so log it loudly.
- logger.error(
- "Unexpected error fetching RTC transports from backend",
- ex,
- );
- }
- }
- }
-
- logger.info(
- `makeTransport: Trying to get transports from .well-known/matrix/client on domain ${client.getDomain()} ...`,
+ const sfuConfig = await getSFUConfigWithOpenID(
+ client,
+ membership,
+ transport.livekit_service_url,
+ roomId,
+ {
+ forceJwtEndpoint: forceJwtEndpoint,
+ delayEndpointBaseUrl: client.baseUrl,
+ delayId,
+ },
+ logger,
+ );
+ return {
+ transport,
+ sfuConfig,
+ };
+}
+
+function observeLocalTransportForOldestMembership(
+ scope: ObservableScope,
+ oldestMemberTransport$: Behavior,
+ preferredTransport$: Observable,
+ client: Pick<
+ MatrixClient,
+ "getDomain" | "baseUrl" | "_unstable_getRTCTransports" | "getAccessToken"
+ > &
+ OpenIDClientParts,
+ ownMembershipIdentity: CallMembershipIdentityParts,
+ roomId: string,
+): LocalTransport {
+ // Ensure we can authenticate with the SFU.
+ const authenticatedOldestMemberTransport$ = oldestMemberTransport$.pipe(
+ switchMap((transport) => {
+ // Oldest member not available -we are first- (or invalid SFU config).
+ if (transport === null) return of(null);
+
+ // Whenever there is transport change we want to revert
+ // to no transport while we do the authentication.
+ // So do a from(promise) here to be able to startWith(null)
+ return from(
+ doOpenIdAndJWTFromUrl(
+ transport,
+ JwtEndpointVersion.Legacy,
+ ownMembershipIdentity,
+ roomId,
+ client,
+ undefined,
+ ),
+ ).pipe(
+ catchError((e: unknown) => {
+ logger.error(
+ `Failed to authenticate to transport ${transport.livekit_service_url}`,
+ e,
+ );
+ throw mapAuthErrorToUserFriendlyError(e);
+ }),
+ startWith(null),
+ );
+ }),
+ );
+
+ // --- Oldest member mode ---
+ return {
+ // Never update the transport that we advertise in our membership. Just
+ // take the first valid oldest member or preferred transport that we learn
+ // about, and stick with that. This avoids unnecessary SFU hops and room
+ // state changes.
+ advertised$: scope.behavior(
+ merge(
+ authenticatedOldestMemberTransport$.pipe(
+ map((t) => t?.transport ?? null),
+ ),
+ preferredTransport$.pipe(map((t) => t.transport)),
+ ).pipe(
+ first((t) => t !== null),
+ tap((t) =>
+ logger.info(`Advertise transport: ${t.livekit_service_url}`),
+ ),
+ ),
+ null,
+ ),
+ // Publish on the transport used by the oldest member.
+ active$: scope.behavior(
+ authenticatedOldestMemberTransport$.pipe(
+ tap((t) =>
+ logger.info(
+ `Publish on transport: ${t?.transport.livekit_service_url}`,
+ ),
+ ),
+ ),
+ null,
+ ),
+ };
+}
+
+function mapAuthErrorToUserFriendlyError(e: unknown): Error {
+ if (
+ e instanceof FailToGetOpenIdToken ||
+ e instanceof NoMatrix2AuthorizationService
+ ) {
+ // rethrow as is
+ return e;
+ }
+ // Catch others and rethrow as FailToGetOpenIdToken that has user friendly message.
+ return new FailToGetOpenIdToken(
+ e instanceof Error ? e : new Error(String(e)),
);
-
- // Legacy MSC4143 (to be removed) WELL_KNOWN: Prioritize the .well-known/matrix/client, if available.
- const domain = client.getDomain();
- if (domain) {
- // we use AutoDiscovery instead of relying on the MatrixClient having already
- // been fully configured and started
- const wellKnownFoci = (await AutoDiscovery.getRawClientConfig(domain))?.[
- FOCI_WK_KEY
- ];
- const selectedTransport = Array.isArray(wellKnownFoci)
- ? await getFirstUsableTransport(wellKnownFoci)
- : null;
- if (selectedTransport) {
- logger.info("Using .well-known SFU", selectedTransport);
- return selectedTransport;
- }
- }
-
- logger.info(
- `makeTransport: No valid transport found via backend or .well-known, falling back to config if available.`,
- );
-
- // CONFIG: Least prioritized; Load from config file
- const urlFromConf = Config.get().livekit?.livekit_service_url;
- if (urlFromConf) {
- try {
- // This will call the jwt/sfu/get endpoint to pre create the livekit room.
- logger.info("Using config SFU", urlFromConf);
- return await doOpenIdAndJWTFromUrl(urlFromConf);
- } catch (ex) {
- if (ex instanceof FailToGetOpenIdToken) {
- throw ex;
- }
- logger.error("Failed to validate config SFU", ex);
- }
- }
-
- // If we do not have returned a transport by now we throw an error
- throw new MatrixRTCTransportMissingError(domain ?? "");
}
diff --git a/src/state/CallViewModel/localMember/Publisher.test.ts b/src/state/CallViewModel/localMember/Publisher.test.ts
index a0eaa2fd..e54e706f 100644
--- a/src/state/CallViewModel/localMember/Publisher.test.ts
+++ b/src/state/CallViewModel/localMember/Publisher.test.ts
@@ -131,6 +131,7 @@ beforeEach(() => {
},
new Map(),
{},
+ {},
);
vi.mocked(localParticipant).createTracks = vi
diff --git a/src/state/CallViewModel/localMember/RtcTransportAutoDiscovery.test.ts b/src/state/CallViewModel/localMember/RtcTransportAutoDiscovery.test.ts
new file mode 100644
index 00000000..9314b993
--- /dev/null
+++ b/src/state/CallViewModel/localMember/RtcTransportAutoDiscovery.test.ts
@@ -0,0 +1,233 @@
+/*
+Copyright 2025 Element Creations Ltd.
+
+SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+
+import {
+ beforeEach,
+ describe,
+ expect,
+ it,
+ type MockedObject,
+ vi,
+} from "vitest";
+import { type IClientWellKnown, MatrixError } from "matrix-js-sdk";
+import { logger as rootLogger } from "matrix-js-sdk/lib/logger";
+import {
+ type LivekitTransportConfig,
+ type Transport,
+} from "matrix-js-sdk/lib/matrixrtc";
+
+import type { ResolvedConfigOptions } from "../../../config/ConfigOptions.ts";
+import {
+ RtcTransportAutoDiscovery,
+ type RtcTransportAutoDiscoveryProps,
+} from "./RtcTransportAutoDiscovery.ts";
+
+type DiscoveryClient = RtcTransportAutoDiscoveryProps["client"];
+
+const backendTransport: LivekitTransportConfig = {
+ type: "livekit",
+ livekit_service_url: "https://backend.example.org",
+};
+
+const wellKnownTransport: LivekitTransportConfig = {
+ type: "livekit",
+ livekit_service_url: "https://well-known.example.org",
+};
+
+function makeClient(): MockedObject {
+ return {
+ getDomain: vi.fn().mockReturnValue("example.org"),
+ baseUrl: "https://matrix.example.org",
+ _unstable_getRTCTransports: vi.fn().mockResolvedValue([]),
+ getAccessToken: vi.fn().mockReturnValue("access_token"),
+ getOpenIdToken: vi.fn(),
+ getDeviceId: vi.fn(),
+ } as unknown as MockedObject;
+}
+
+function makeResolvedConfig(livekitServiceUrl?: string): ResolvedConfigOptions {
+ return {
+ livekit: livekitServiceUrl
+ ? {
+ livekit_service_url: livekitServiceUrl,
+ }
+ : undefined,
+ } as ResolvedConfigOptions;
+}
+
+function makeWellKnown(rtcFoci?: Transport[]): IClientWellKnown {
+ return {
+ "org.matrix.msc4143.rtc_foci": rtcFoci,
+ } as unknown as IClientWellKnown;
+}
+
+describe("RtcTransportAutoDiscovery", () => {
+ beforeEach(() => {
+ vi.clearAllMocks();
+ });
+ const VALID_TEST_CASES: Array<{ transports: Transport[] }> = [
+ { transports: [backendTransport] },
+ // will pick the first livekit transport in the list, even if there are other non-livekit transports
+ { transports: [{ type: "not_livekit" }, backendTransport] },
+ ];
+ it.each(VALID_TEST_CASES)(
+ "prefers backend transport over well-known and app config $transports",
+ async ({ transports }) => {
+ // it("prefers backend transport over well-known and app config", async () => {
+ const client = makeClient();
+ client._unstable_getRTCTransports.mockResolvedValue(transports);
+
+ const wellKnownFetcher = vi
+ .fn<(domain: string) => Promise>()
+ .mockResolvedValue(makeWellKnown([wellKnownTransport]));
+
+ const discovery = new RtcTransportAutoDiscovery({
+ client,
+ resolvedConfig: makeResolvedConfig("https://config.example.org"),
+ wellKnownFetcher,
+ logger: rootLogger,
+ });
+
+ await expect(
+ discovery.discoverPreferredTransport(),
+ ).resolves.toStrictEqual(backendTransport);
+
+ expect(client._unstable_getRTCTransports).toHaveBeenCalledTimes(1);
+ expect(wellKnownFetcher).not.toHaveBeenCalled();
+ },
+ );
+
+ it("Retries limit_exceeded backend transport over well-known", async () => {
+ const client = makeClient();
+ client._unstable_getRTCTransports
+ .mockRejectedValueOnce(
+ new MatrixError(
+ {
+ errcode: "M_LIMIT_EXCEEDED",
+ error: "Too many requests",
+ retry_after_ms: 100,
+ },
+ 429,
+ ),
+ )
+ .mockResolvedValue([backendTransport]);
+
+ const wellKnownFetcher = vi
+ .fn<(domain: string) => Promise>()
+ .mockResolvedValue(makeWellKnown([wellKnownTransport]));
+
+ const discovery = new RtcTransportAutoDiscovery({
+ client,
+ resolvedConfig: makeResolvedConfig("https://config.example.org"),
+ wellKnownFetcher,
+ logger: rootLogger,
+ });
+
+ await expect(discovery.discoverPreferredTransport()).resolves.toStrictEqual(
+ backendTransport,
+ );
+
+ expect(client._unstable_getRTCTransports).toHaveBeenCalledTimes(2);
+ expect(wellKnownFetcher).not.toHaveBeenCalled();
+ });
+
+ const INVALID_TEST_CASES: Array<{ transports: Transport[] }> = [
+ { transports: [] },
+ { transports: [{ type: "not_livekit" }] },
+ ];
+ it.each(INVALID_TEST_CASES)(
+ "falls back to well-known when backend has no (valid) livekit transports $transports",
+ async ({ transports }) => {
+ const client = makeClient();
+ client._unstable_getRTCTransports.mockResolvedValue(transports);
+
+ const wellKnownFetcher = vi
+ .fn<(domain: string) => Promise>()
+ .mockResolvedValue(makeWellKnown([wellKnownTransport]));
+
+ const discovery = new RtcTransportAutoDiscovery({
+ client,
+ resolvedConfig: makeResolvedConfig("https://config.example.org"),
+ wellKnownFetcher,
+ logger: rootLogger,
+ });
+
+ await expect(
+ discovery.discoverPreferredTransport(),
+ ).resolves.toStrictEqual(wellKnownTransport);
+
+ expect(wellKnownFetcher).toHaveBeenCalledWith("example.org");
+ },
+ );
+
+ it("skips backend discovery in widget mode and uses well-known", async () => {
+ const client = makeClient();
+ // widget mode is detected by the absence of an access token
+ client.getAccessToken.mockReturnValue(null);
+
+ const wellKnownFetcher = vi
+ .fn<(domain: string) => Promise>()
+ .mockResolvedValue(makeWellKnown([wellKnownTransport]));
+
+ const discovery = new RtcTransportAutoDiscovery({
+ client,
+ resolvedConfig: makeResolvedConfig("https://config.example.org"),
+ wellKnownFetcher,
+ logger: rootLogger,
+ });
+
+ await expect(discovery.discoverPreferredTransport()).resolves.toStrictEqual(
+ wellKnownTransport,
+ );
+
+ expect(client._unstable_getRTCTransports).not.toHaveBeenCalled();
+ expect(wellKnownFetcher).toHaveBeenCalledWith("example.org");
+ });
+
+ it("falls back to app config when backend fails and well-known has no rtc_foci", async () => {
+ const client = makeClient();
+ client._unstable_getRTCTransports.mockRejectedValue(
+ new MatrixError({ errcode: "M_UNKNOWN" }, 404),
+ );
+
+ const wellKnownFetcher = vi
+ .fn<(domain: string) => Promise>()
+ .mockResolvedValue({} as IClientWellKnown);
+
+ const discovery = new RtcTransportAutoDiscovery({
+ client,
+ resolvedConfig: makeResolvedConfig("https://config.example.org"),
+ wellKnownFetcher,
+ logger: rootLogger,
+ });
+
+ await expect(discovery.discoverPreferredTransport()).resolves.toStrictEqual(
+ {
+ type: "livekit",
+ livekit_service_url: "https://config.example.org",
+ },
+ );
+ });
+
+ it("returns null when backend, well-known and config are all unavailable", async () => {
+ const client = makeClient();
+ client._unstable_getRTCTransports.mockResolvedValue([]);
+
+ const wellKnownFetcher = vi
+ .fn<(domain: string) => Promise>()
+ .mockResolvedValue({} as IClientWellKnown);
+
+ const discovery = new RtcTransportAutoDiscovery({
+ client,
+ resolvedConfig: makeResolvedConfig(undefined),
+ wellKnownFetcher,
+ logger: rootLogger,
+ });
+
+ await expect(discovery.discoverPreferredTransport()).resolves.toBeNull();
+ });
+});
diff --git a/src/state/CallViewModel/localMember/RtcTransportAutoDiscovery.ts b/src/state/CallViewModel/localMember/RtcTransportAutoDiscovery.ts
new file mode 100644
index 00000000..6d2bac46
--- /dev/null
+++ b/src/state/CallViewModel/localMember/RtcTransportAutoDiscovery.ts
@@ -0,0 +1,172 @@
+/*
+Copyright 2026 Element Creations Ltd.
+
+SPDX-License-IdFentifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
+Please see LICENSE in the repository root for full details.
+*/
+import {
+ isLivekitTransportConfig,
+ type LivekitTransportConfig,
+} from "matrix-js-sdk/lib/matrixrtc";
+import { type IClientWellKnown, type MatrixClient } from "matrix-js-sdk";
+import { type Logger } from "matrix-js-sdk/lib/logger";
+
+import type { ResolvedConfigOptions } from "../../../config/ConfigOptions.ts";
+import { doNetworkOperationWithRetry } from "../../../utils/matrix.ts";
+
+type TransportDiscoveryClient = Pick<
+ MatrixClient,
+ "getDomain" | "_unstable_getRTCTransports" | "getAccessToken"
+>;
+
+export interface RtcTransportAutoDiscoveryProps {
+ client: TransportDiscoveryClient;
+ resolvedConfig: ResolvedConfigOptions;
+ wellKnownFetcher: (domain: string) => Promise;
+ logger: Logger;
+}
+
+export class RtcTransportAutoDiscovery {
+ private readonly client: TransportDiscoveryClient;
+ private readonly resolvedConfig: ResolvedConfigOptions;
+ private readonly wellKnownFetcher: (
+ domain: string,
+ ) => Promise;
+ private readonly logger: Logger;
+
+ public constructor({
+ client,
+ resolvedConfig,
+ wellKnownFetcher,
+ logger,
+ }: RtcTransportAutoDiscoveryProps) {
+ this.client = client;
+ this.resolvedConfig = resolvedConfig;
+ this.wellKnownFetcher = wellKnownFetcher;
+ this.logger = logger.getChild("[RtcTransportAutoDiscovery]");
+ }
+
+ public async discoverPreferredTransport(): Promise {
+ // 1) backend transports
+ const backendTransport = await this.tryBackendTransports();
+ if (backendTransport) {
+ this.logger.info(
+ `Found backend transport: ${backendTransport.livekit_service_url}`,
+ );
+ return backendTransport;
+ }
+
+ this.logger.info("No backend transport found, falling back to well-known");
+ // 2) .well-known transports
+ const wellKnownTransport = await this.tryWellKnownTransports();
+ if (wellKnownTransport) {
+ this.logger.info(
+ `Found .well-known transport: ${wellKnownTransport.livekit_service_url}`,
+ );
+ return wellKnownTransport;
+ }
+
+ this.logger.info(
+ "No .well-known transport found, falling back to app config",
+ );
+
+ // 3) app config URL
+ const configTransport = this.tryConfigTransport();
+ if (configTransport) {
+ this.logger.info(
+ `Found app config transport: ${configTransport.livekit_service_url}`,
+ );
+ return configTransport;
+ }
+
+ return null;
+ }
+
+ /**
+ * Fetches the first rtc_foci from the backend.
+ * This will not throw errors, but instead just log them and return null if the expected config is not found or malformed.
+ * @private
+ */
+ private async tryBackendTransports(): Promise {
+ const client = this.client;
+ // MSC4143: Attempt to fetch transports from backend.
+ // TODO: Workaround for an issue in the js-sdk RoomWidgetClient that
+ // is not yet implementing _unstable_getRTCTransports properly (via widget API new action).
+ // For now we just skip this call if we are in a widget.
+ // In widget mode the client is a `RoomWidgetClient` which has no access token (it is using the widget API).
+ // Could be removed once the js-sdk is fixed (https://github.com/matrix-org/matrix-js-sdk/issues/5245)
+ const isSPA = !!client.getAccessToken();
+ if (isSPA && "_unstable_getRTCTransports" in client) {
+ this.logger.info("First try to use getRTCTransports end point ...");
+ try {
+ const transportList = await doNetworkOperationWithRetry(async () =>
+ client._unstable_getRTCTransports(),
+ );
+ const first = transportList.filter(isLivekitTransportConfig)[0];
+ if (first) {
+ return first;
+ } else {
+ this.logger.info(
+ `No livekit transport found in getRTCTransports end point`,
+ transportList,
+ );
+ }
+ } catch (ex) {
+ this.logger.info(`Failed to use getRTCTransports end point: ${ex}`);
+ }
+ } else {
+ this.logger.debug(`getRTCTransports end point not available`);
+ }
+
+ return null;
+ }
+
+ /**
+ * Fetches the first rtc_foci from the .well-known/matrix/client.
+ * This will not throw errors, but instead just log them and return null if the expected config is not found or malformed.
+ * @private
+ */
+ private async tryWellKnownTransports(): Promise {
+ // Legacy MSC4143 (to be removed) WELL_KNOWN: Prioritize the .well-known/matrix/client, if available.
+ const client = this.client;
+ const domain = client.getDomain();
+ if (domain) {
+ // we use AutoDiscovery instead of relying on the MatrixClient having already
+ // been fully configured and started
+
+ const wellKnownFoci = await this.wellKnownFetcher(domain);
+
+ const fociConfig = wellKnownFoci["org.matrix.msc4143.rtc_foci"];
+ if (fociConfig) {
+ if (!Array.isArray(fociConfig)) {
+ this.logger.warn(
+ `org.matrix.msc4143.rtc_foci is not an array in .well-known`,
+ );
+ } else {
+ return fociConfig[0];
+ }
+ } else {
+ this.logger.info(
+ `No .well-known "org.matrix.msc4143.rtc_foci" found for ${domain}`,
+ wellKnownFoci,
+ );
+ }
+ } else {
+ // Should never happen, but just in case
+ this.logger.warn(`No domain configured for client`);
+ }
+
+ return null;
+ }
+
+ private tryConfigTransport(): LivekitTransportConfig | null {
+ const url = this.resolvedConfig.livekit?.livekit_service_url;
+ if (url) {
+ return {
+ type: "livekit",
+ livekit_service_url: url,
+ };
+ }
+ return null;
+ }
+}
diff --git a/src/state/CallViewModel/remoteMembers/Connection.test.ts b/src/state/CallViewModel/remoteMembers/Connection.test.ts
index 2c89eef5..7ad5d775 100644
--- a/src/state/CallViewModel/remoteMembers/Connection.test.ts
+++ b/src/state/CallViewModel/remoteMembers/Connection.test.ts
@@ -8,6 +8,7 @@ Please see LICENSE in the repository root for full details.
import {
afterEach,
+ beforeEach,
describe,
expect,
it,
@@ -151,6 +152,19 @@ afterEach(() => {
});
describe("Start connection states", () => {
+ beforeEach(() => {
+ fetchMock.post(
+ `https://matrix-rtc.example.org/livekit/jwt/get_token`,
+ () => {
+ return {
+ // Return a non-retryable error, if not, the retry logic will
+ // wait and fail the test with a timeout.
+ status: 404,
+ };
+ },
+ );
+ });
+
it("start in initialized state", () => {
setupTest();
diff --git a/src/tile/MediaView.module.css b/src/tile/MediaView.module.css
index 1183f7c5..49199253 100644
--- a/src/tile/MediaView.module.css
+++ b/src/tile/MediaView.module.css
@@ -11,6 +11,9 @@ Please see LICENSE in the repository root for full details.
border-radius: var(--media-view-border-radius);
/*Add spacing for the hover boarder. Otherwise it might get clipped.*/
margin: var(--hover-space-margin);
+ display: grid;
+ grid-template-areas: "content";
+ place-items: stretch;
}
.media video {
@@ -37,6 +40,7 @@ Please see LICENSE in the repository root for full details.
}
.bg {
+ grid-area: content;
background-color: var(--video-tile-background);
inline-size: 100%;
block-size: 100%;
@@ -75,18 +79,19 @@ unconditionally select the container so we can use cqmin units */
}
.fg {
- position: absolute;
+ grid-area: content;
--fg-inset: var(
--media-view-fg-inset,
calc(var(--media-view-border-radius) - var(--cpd-space-3x))
);
- inset: var(--fg-inset);
+ padding: var(--fg-inset);
display: grid;
- grid-template-columns: 30px 1fr 30px;
+ grid-template-columns: 1fr auto;
grid-template-rows: 1fr auto;
- grid-template-areas: "status status reactions" "nameTag nameTag button";
+ grid-template-areas: "status reactions" "nameTag button";
gap: var(--cpd-space-1x);
place-items: start;
+ contain: strict;
}
.nameTag {
@@ -125,6 +130,7 @@ unconditionally select the container so we can use cqmin units */
.reactions {
grid-area: reactions;
+ place-self: start end;
display: flex;
gap: var(--cpd-space-1x);
}
@@ -192,4 +198,5 @@ unconditionally select the container so we can use cqmin units */
.fg > button:first-of-type {
grid-area: button;
+ place-self: end;
}
diff --git a/src/tile/SpotlightTile.module.css b/src/tile/SpotlightTile.module.css
index af0e0add..5448a155 100644
--- a/src/tile/SpotlightTile.module.css
+++ b/src/tile/SpotlightTile.module.css
@@ -153,10 +153,10 @@ Please see LICENSE in the repository root for full details.
}
@media (hover) {
- .tile > div > button {
+ .tile button {
opacity: 0;
}
- .tile:hover > div > button {
+ .tile:hover button {
opacity: 1;
}
}
diff --git a/src/tile/SpotlightTile.tsx b/src/tile/SpotlightTile.tsx
index c5faba40..808773b0 100644
--- a/src/tile/SpotlightTile.tsx
+++ b/src/tile/SpotlightTile.tsx
@@ -562,6 +562,7 @@ export const SpotlightTile: FC = ({
>
{media.map((vm) => (
testAudioContext);`
*/
-export const testAudioContext = {
+export const testAudioContext: Partial
& {
+ gain: ReturnType<
+ typeof vi.mocked<{
+ connect: (node: AudioNode) => AudioNode;
+ gain: { setValueAtTime: ReturnType; value: number };
+ }>
+ >;
+ pan: ReturnType<
+ typeof vi.mocked<{
+ connect: (node: AudioNode) => AudioNode;
+ pan: { setValueAtTime: ReturnType; value: number };
+ }>
+ >;
+ setSinkId: ReturnType;
+ decodeAudioData: ReturnType;
+ createBufferSource: ReturnType;
+ createGain: ReturnType;
+ createStereoPanner: ReturnType;
+ close: ReturnType;
+} = {
gain: gainNode,
pan: panNode,
setSinkId: vi.fn().mockResolvedValue(undefined),
diff --git a/src/useCallViewKeyboardShortcuts.test.tsx b/src/useCallViewKeyboardShortcuts.test.tsx
index e22380d1..5a327f83 100644
--- a/src/useCallViewKeyboardShortcuts.test.tsx
+++ b/src/useCallViewKeyboardShortcuts.test.tsx
@@ -6,7 +6,7 @@ Please see LICENSE in the repository root for full details.
*/
import { render } from "@testing-library/react";
-import { type FC, useRef } from "react";
+import { type FC, useRef, useState } from "react";
import { expect, test, vi } from "vitest";
import { Button } from "@vector-im/compound-web";
import userEvent from "@testing-library/user-event";
@@ -17,6 +17,7 @@ import {
ReactionSet,
ReactionsRowSize,
} from "./reactions";
+import { type Controls } from "./controls";
// Test Explanation:
// - The main objective is to test `useCallViewKeyboardShortcuts`.
@@ -27,6 +28,7 @@ interface TestComponentProps {
onButtonClick?: () => void;
sendReaction?: () => void;
toggleHandRaised?: () => void;
+ initialModalOpen?: boolean;
}
const TestComponent: FC = ({
@@ -34,7 +36,9 @@ const TestComponent: FC = ({
onButtonClick = (): void => {},
sendReaction = (reaction: ReactionOption): void => {},
toggleHandRaised = (): void => {},
+ initialModalOpen = false,
}) => {
+ const [modalOpen, setModalOpen] = useState(initialModalOpen);
const ref = useRef(null);
useCallViewKeyboardShortcuts(
ref,
@@ -47,6 +51,19 @@ const TestComponent: FC = ({
return (
TEST
+ {modalOpen && (
+ {
+ if (e.key === "Escape") {
+ e.preventDefault();
+ setModalOpen(false);
+ }
+ }}
+ >
+ InModalButton
+
+ )}
);
};
@@ -118,6 +135,27 @@ test("raised hand can be sent via keyboard presses", async () => {
expect(toggleHandRaised).toHaveBeenCalledOnce();
});
+test("raised hand cannot be sent via keyboard presses if modal open and focussed", async () => {
+ const user = userEvent.setup();
+ const toggleHandRaised = vi.fn();
+ const { getByRole } = render(
+ ,
+ );
+ getByRole("button", { name: "InModalButton" }).focus();
+ await user.keyboard("h");
+
+ expect(toggleHandRaised).not.toHaveBeenCalledOnce();
+
+ // once we press esc...
+ await user.keyboard("[Escape]");
+ // we can toggle the hand raise...
+ await user.keyboard("h");
+ expect(toggleHandRaised).toHaveBeenCalledOnce();
+});
+
test("unmuting happens in place of the default action", async () => {
const user = userEvent.setup();
const defaultPrevented = vi.fn();
@@ -138,3 +176,35 @@ test("unmuting happens in place of the default action", async () => {
await user.keyboard("[Space]");
expect(defaultPrevented).toBeCalledWith(true);
});
+
+test("escape button triggers the controls back action", async () => {
+ const user = userEvent.setup();
+
+ window.controls = { onBackButtonPressed: vi.fn() } as unknown as Controls;
+ // In the real application, we mostly just want the spacebar shortcut to avoid
+ // scrolling the page. But to test that here in JSDOM, we need some kind of
+ // container element that can be interactive and receive focus / keydown
+ // events. is kind of a weird choice, but it'll do the job.
+ render( {}} />);
+
+ await user.keyboard("[Escape]");
+ expect(window.controls.onBackButtonPressed).toHaveBeenCalled();
+});
+
+test("escape button does not trigger back if sth else is focused", async () => {
+ const user = userEvent.setup();
+
+ window.controls = { onBackButtonPressed: vi.fn() } as unknown as Controls;
+
+ const { getByRole } = render( );
+ getByRole("button", { name: "InModalButton" }).focus();
+
+ // First Escape: the dialog's onKeyDown intercepts it and closes the modal.
+ await user.keyboard("[Escape]");
+ expect(window.controls.onBackButtonPressed).not.toHaveBeenCalled();
+
+ // Second Escape: modal is gone, focus has fallen back to document.body,
+ // which *does* contain the ref div, so the hook fires and back IS triggered.
+ await user.keyboard("[Escape]");
+ expect(window.controls.onBackButtonPressed).toHaveBeenCalled();
+});
diff --git a/src/useCallViewKeyboardShortcuts.ts b/src/useCallViewKeyboardShortcuts.ts
index 728a2614..3d9654be 100644
--- a/src/useCallViewKeyboardShortcuts.ts
+++ b/src/useCallViewKeyboardShortcuts.ts
@@ -68,6 +68,8 @@ export function useCallViewKeyboardShortcuts(
} else if (KeyToReactionMap[event.key]) {
event.preventDefault();
sendReaction(KeyToReactionMap[event.key]);
+ } else if (event.key === "Escape") {
+ window.controls.onBackButtonPressed?.();
}
},
[
diff --git a/src/utils/test-viewmodel.ts b/src/utils/test-viewmodel.ts
index 0745be72..b5438371 100644
--- a/src/utils/test-viewmodel.ts
+++ b/src/utils/test-viewmodel.ts
@@ -34,6 +34,7 @@ import {
MockRTCSession,
testScope,
} from "./test";
+import { type MediaDevices } from "../state/MediaDevices";
import { aliceRtcMember, localRtcMember } from "./test-fixtures";
import { type RaisedHandInfo, type ReactionInfo } from "../reactions";
import { constant } from "../state/Behavior";
@@ -63,6 +64,7 @@ export function getBasicRTCSession(
getDeviceId: () => localRtcMember.deviceId,
getSyncState: () => SyncState.Syncing,
getDomain: () => null,
+ getAccessToken: () => "fake-token",
sendEvent: vitest.fn().mockResolvedValue({ event_id: "$fake:event" }),
redactEvent: vitest.fn().mockResolvedValue({ event_id: "$fake:event" }),
decryptEventIfNeeded: vitest.fn().mockResolvedValue(undefined),
@@ -130,6 +132,7 @@ export function getBasicRTCSession(
export function getBasicCallViewModelEnvironment(
members: RoomMember[],
initialRtcMemberships: CallMembership[] = [localRtcMember, aliceRtcMember],
+ mediaDevicesOverride?: MediaDevices,
callViewModelOptions: Partial = {},
): {
vm: CallViewModel;
@@ -145,13 +148,11 @@ export function getBasicCallViewModelEnvironment(
const handRaisedSubject$ = new BehaviorSubject({});
const reactionsSubject$ = new BehaviorSubject({});
- // const remoteParticipants$ = of([aliceParticipant]);
-
const vm = createCallViewModel$(
testScope(),
rtcSession.asMockedSession(),
matrixRoom,
- mockMediaDevices({}),
+ mediaDevicesOverride ?? mockMediaDevices({}),
mockMuteStates(),
{
encryptionSystem: { kind: E2eeType.PER_PARTICIPANT },
diff --git a/src/utils/test.ts b/src/utils/test.ts
index f8d420cf..695dd046 100644
--- a/src/utils/test.ts
+++ b/src/utils/test.ts
@@ -15,6 +15,7 @@ import {
vitest,
} from "vitest";
import {
+ EventType,
MatrixEvent,
type Room as MatrixRoom,
type Room,
@@ -74,6 +75,8 @@ import {
createRemoteScreenShare,
type RemoteScreenShareViewModel,
} from "../state/media/RemoteScreenShareViewModel";
+import { Connection } from "../state/CallViewModel/remoteMembers/Connection";
+import { type SFUConfig } from "../livekit/openIDSFU";
export function withFakeTimers(continuation: () => void): void {
vi.useFakeTimers();
@@ -210,6 +213,13 @@ export const exampleTransport: LivekitTransport = {
livekit_alias: "!alias:example.org",
};
+export const exampleSfuConfig: SFUConfig = {
+ jwt: "foo",
+ livekitAlias: "bar",
+ livekitIdentity: "baz",
+ url: "bro",
+};
+
export function mockRtcMembership(
user: string | RoomMember,
deviceId: string,
@@ -246,6 +256,7 @@ export function mockRtcMembership(
const event = new MatrixEvent({
sender: userId,
event_id: `$-ev-${randomUUID()}:example.org`,
+ type: EventType.GroupCallMemberPrefix,
content: data,
});
@@ -457,7 +468,9 @@ export class MockRTCSession extends TypedEventEmitter<
counters: {},
};
- public leaveRoomSession = vitest.fn().mockResolvedValue(undefined);
+ public leaveRoomSession: ReturnType = vitest
+ .fn()
+ .mockResolvedValue(undefined);
public constructor(
public readonly room: Room,
@@ -487,7 +500,7 @@ export class MockRTCSession extends TypedEventEmitter<
return this;
}
- public updateCallIntent = vitest
+ public updateCallIntent: ReturnType = vitest
.fn()
.mockImplementation(async () => Promise.resolve());
@@ -564,3 +577,8 @@ export function mockMuteStates(
videoEnabled: false,
});
}
+
+export class MockConnection extends Connection {
+ public async start(): Promise {}
+ public async stop(): Promise {}
+}
diff --git a/src/vitest.setup.ts b/src/vitest.setup.ts
index f3f5928b..bd06310c 100644
--- a/src/vitest.setup.ts
+++ b/src/vitest.setup.ts
@@ -51,3 +51,53 @@ window.matchMedia = global.matchMedia = (): MediaQueryList =>
addEventListener: () => {},
removeEventListener: () => {},
}) as Partial as MediaQueryList;
+
+const storage: Record = {};
+const localStoragePolyfill = {
+ getItem(key: string) {
+ return Object.prototype.hasOwnProperty.call(storage, key)
+ ? storage[key]
+ : null;
+ },
+ setItem(key: string, value: string) {
+ storage[key] = String(value);
+ },
+ removeItem(key: string) {
+ delete storage[key];
+ },
+ clear() {
+ for (const key in storage) {
+ delete storage[key];
+ }
+ },
+ key(index: number) {
+ const keys = Object.keys(storage);
+ return keys[index] ?? null;
+ },
+ get length() {
+ return Object.keys(storage).length;
+ },
+} as unknown as Storage;
+
+if (
+ typeof globalThis.localStorage === "undefined" ||
+ typeof globalThis.localStorage.clear !== "function"
+) {
+ Object.defineProperty(globalThis, "localStorage", {
+ value: localStoragePolyfill,
+ writable: true,
+ configurable: true,
+ });
+}
+
+if (
+ typeof window !== "undefined" &&
+ (typeof window.localStorage === "undefined" ||
+ typeof window.localStorage.clear !== "function")
+) {
+ Object.defineProperty(window, "localStorage", {
+ value: localStoragePolyfill,
+ writable: true,
+ configurable: true,
+ });
+}
diff --git a/tsconfig.json b/tsconfig.json
index 0f9e7c66..7539e850 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -4,6 +4,7 @@
"module": "es2022",
"jsx": "react-jsx",
"lib": ["es2024", "dom", "dom.iterable"],
+ "skipLibCheck": true,
// From Matrix-JS-SDK
"strict": true,
diff --git a/vite.config.ts b/vite.config.ts
index 97d643ec..801ea79a 100644
--- a/vite.config.ts
+++ b/vite.config.ts
@@ -17,6 +17,8 @@ import { createHtmlPlugin } from "vite-plugin-html";
import { codecovVitePlugin } from "@codecov/vite-plugin";
import { sentryVitePlugin } from "@sentry/vite-plugin";
+import { nodePolyfills } from "vite-plugin-node-polyfills";
+import wasm from "vite-plugin-wasm";
import react from "@vitejs/plugin-react";
import { realpathSync } from "fs";
@@ -36,6 +38,11 @@ export default ({
process.env.VITE_PACKAGE = packageType ?? "full";
const plugins: PluginOption[] = [
react(),
+ wasm(),
+ nodePolyfills({
+ // Enables the 'events' module, which is required by the matrix-js-sdk
+ include: ["events"],
+ }),
svgrPlugin({
svgrOptions: {
// This enables ref forwarding on SVGR components, which is needed, for
@@ -43,7 +50,6 @@ export default ({
ref: true,
},
}),
-
codecovVitePlugin({
enableBundleAnalysis: process.env.CODECOV_TOKEN !== undefined,
bundleName: "element-call",
@@ -66,17 +72,19 @@ export default ({
);
}
- plugins.push(
- createHtmlPlugin({
- entry: "src/main.tsx",
- inject: {
- data: {
- brand: env.VITE_PRODUCT_NAME || "Element Call",
- packageType: process.env.VITE_PACKAGE,
+ if (!process.env.STORYBOOK) {
+ plugins.push(
+ createHtmlPlugin({
+ entry: "src/main.tsx",
+ inject: {
+ data: {
+ brand: env.VITE_PRODUCT_NAME || "Element Call",
+ packageType: process.env.VITE_PACKAGE,
+ },
},
- },
- }),
- );
+ }),
+ );
+ }
// The crypto WASM module is imported dynamically. Since it's common
// for developers to use a linked copy of matrix-js-sdk or Rust
@@ -125,10 +133,6 @@ export default ({
// Default naming fallback
return "assets/[name]-[hash][extname]";
},
- manualChunks: {
- // we should be able to remove this one https://github.com/matrix-org/matrix-rust-sdk-crypto-wasm/pull/167 lands
- "matrix-sdk-crypto-wasm": ["@matrix-org/matrix-sdk-crypto-wasm"],
- },
},
},
},
@@ -152,12 +156,5 @@ export default ({
"@radix-ui/react-dismissable-layer",
],
},
- // Vite is using esbuild in development mode, which doesn't work with the wasm loader
- // in matrix-sdk-crypto-wasm, so we need to exclude it here. This doesn't affect the
- // production build (which uses rollup) which still works as expected.
- // https://vite.dev/guide/why.html#why-not-bundle-with-esbuild
- optimizeDeps: {
- exclude: ["@matrix-org/matrix-sdk-crypto-wasm"],
- },
};
};
diff --git a/vitest.config.ts b/vitest.config.ts
index 1c6f746b..90082f58 100644
--- a/vitest.config.ts
+++ b/vitest.config.ts
@@ -17,9 +17,10 @@ export default defineConfig((configEnv) =>
include: ["src/**/*.test.ts", "src/**/*.test.tsx"],
coverage: {
reporter: ["html", "json"],
- include: ["src/"],
+ include: ["src/**/*.{ts,tsx,js,jsx}"],
exclude: [
- "src/**/*.{d,test}.{ts,tsx}",
+ "src/**/*.md",
+ "src/**/*.{d,test,stories}.{ts,tsx}",
"src/utils/test.ts",
"src/utils/test-viewmodel.ts",
"src/utils/test-fixtures.ts",
diff --git a/yarn.lock b/yarn.lock
deleted file mode 100644
index cbbbf32f..00000000
--- a/yarn.lock
+++ /dev/null
@@ -1,15933 +0,0 @@
-# This file is generated by running "yarn install" inside your project.
-# Manual changes might be lost - proceed with caution!
-
-__metadata:
- version: 8
- cacheKey: 10c0
-
-"@actions/core@npm:^1.10.1":
- version: 1.11.1
- resolution: "@actions/core@npm:1.11.1"
- dependencies:
- "@actions/exec": "npm:^1.1.1"
- "@actions/http-client": "npm:^2.0.1"
- checksum: 10c0/9aa30b397d8d0dbc74e69fe46b23fb105cab989beb420c57eacbfc51c6804abe8da0f46973ca9f639d532ea4c096d0f4d37da0223fbe94f304fa3c5f53537c30
- languageName: node
- linkType: hard
-
-"@actions/exec@npm:^1.1.1":
- version: 1.1.1
- resolution: "@actions/exec@npm:1.1.1"
- dependencies:
- "@actions/io": "npm:^1.0.1"
- checksum: 10c0/4a09f6bdbe50ce68b5cf8a7254d176230d6a74bccf6ecc3857feee209a8c950ba9adec87cc5ecceb04110182d1c17117234e45557d72fde6229b7fd3a395322a
- languageName: node
- linkType: hard
-
-"@actions/github@npm:^6.0.0":
- version: 6.0.0
- resolution: "@actions/github@npm:6.0.0"
- dependencies:
- "@actions/http-client": "npm:^2.2.0"
- "@octokit/core": "npm:^5.0.1"
- "@octokit/plugin-paginate-rest": "npm:^9.0.0"
- "@octokit/plugin-rest-endpoint-methods": "npm:^10.0.0"
- checksum: 10c0/6f86f564e6ec5873c69ff23bed308cef5f964dbdb559c5415c1ba479517bf18352713a2a757c27f8f67a3d675fdd78446cf142b27762489f697edf9c58e72378
- languageName: node
- linkType: hard
-
-"@actions/http-client@npm:^2.0.1, @actions/http-client@npm:^2.2.0":
- version: 2.2.3
- resolution: "@actions/http-client@npm:2.2.3"
- dependencies:
- tunnel: "npm:^0.0.6"
- undici: "npm:^5.25.4"
- checksum: 10c0/13141b66a42aa4afd8c50f7479e13a5cdb5084ccb3c73ec48894b8029743389a3d2bf8cdc18e23fb70cd33995740526dd308815613907571e897c3aa1e5eada6
- languageName: node
- linkType: hard
-
-"@actions/io@npm:^1.0.1":
- version: 1.1.3
- resolution: "@actions/io@npm:1.1.3"
- checksum: 10c0/5b8751918e5bf0bebd923ba917fb1c0e294401e7ff0037f32c92a4efa4215550df1f6633c63fd4efb2bdaae8711e69b9e36925857db1f38935ff62a5c92ec29e
- languageName: node
- linkType: hard
-
-"@adobe/css-tools@npm:^4.4.0":
- version: 4.4.1
- resolution: "@adobe/css-tools@npm:4.4.1"
- checksum: 10c0/1a68ad9af490f45fce7b6e50dd2d8ac0c546d74431649c0d42ee4ceb1a9fa057fae0a7ef1e148effa12d84ec00ed71869ebfe0fb1dcdcc80bfcb6048c12abcc0
- languageName: node
- linkType: hard
-
-"@asamuzakjp/css-color@npm:^2.8.2":
- version: 2.8.2
- resolution: "@asamuzakjp/css-color@npm:2.8.2"
- dependencies:
- "@csstools/css-calc": "npm:^2.1.1"
- "@csstools/css-color-parser": "npm:^3.0.7"
- "@csstools/css-parser-algorithms": "npm:^3.0.4"
- "@csstools/css-tokenizer": "npm:^3.0.3"
- lru-cache: "npm:^11.0.2"
- checksum: 10c0/352b91ca7741876e459cd3cb350a969e842da1e532577157d38365a6da89b7d6e6944249489366ee61b8a225ede1b521e7ab305b70ad4c688b01404061eecca8
- languageName: node
- linkType: hard
-
-"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.25.9, @babel/code-frame@npm:^7.26.2":
- version: 7.26.2
- resolution: "@babel/code-frame@npm:7.26.2"
- dependencies:
- "@babel/helper-validator-identifier": "npm:^7.25.9"
- js-tokens: "npm:^4.0.0"
- picocolors: "npm:^1.0.0"
- checksum: 10c0/7d79621a6849183c415486af99b1a20b84737e8c11cd55b6544f688c51ce1fd710e6d869c3dd21232023da272a79b91efb3e83b5bc2dc65c1187c5fcd1b72ea8
- languageName: node
- linkType: hard
-
-"@babel/code-frame@npm:^7.10.4":
- version: 7.24.7
- resolution: "@babel/code-frame@npm:7.24.7"
- dependencies:
- "@babel/highlight": "npm:^7.24.7"
- picocolors: "npm:^1.0.0"
- checksum: 10c0/ab0af539473a9f5aeaac7047e377cb4f4edd255a81d84a76058595f8540784cc3fbe8acf73f1e073981104562490aabfb23008cd66dc677a456a4ed5390fdde6
- languageName: node
- linkType: hard
-
-"@babel/code-frame@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/code-frame@npm:7.27.1"
- dependencies:
- "@babel/helper-validator-identifier": "npm:^7.27.1"
- js-tokens: "npm:^4.0.0"
- picocolors: "npm:^1.1.1"
- checksum: 10c0/5dd9a18baa5fce4741ba729acc3a3272c49c25cb8736c4b18e113099520e7ef7b545a4096a26d600e4416157e63e87d66db46aa3fbf0a5f2286da2705c12da00
- languageName: node
- linkType: hard
-
-"@babel/code-frame@npm:^7.28.6, @babel/code-frame@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/code-frame@npm:7.29.0"
- dependencies:
- "@babel/helper-validator-identifier": "npm:^7.28.5"
- js-tokens: "npm:^4.0.0"
- picocolors: "npm:^1.1.1"
- checksum: 10c0/d34cc504e7765dfb576a663d97067afb614525806b5cad1a5cc1a7183b916fec8ff57fa233585e3926fd5a9e6b31aae6df91aa81ae9775fb7a28f658d3346f0d
- languageName: node
- linkType: hard
-
-"@babel/compat-data@npm:^7.27.2":
- version: 7.27.3
- resolution: "@babel/compat-data@npm:7.27.3"
- checksum: 10c0/5736c42c98e38c788c1c53e9bc7c1aa42cb3dd907f3fa2c26c5a123bc957eb3df69acb2f4e96c2f208eb164410d5beddd8b4249353a7ef6e5d6e6eb4292c3587
- languageName: node
- linkType: hard
-
-"@babel/compat-data@npm:^7.28.6, @babel/compat-data@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/compat-data@npm:7.29.0"
- checksum: 10c0/08f348554989d23aa801bf1405aa34b15e841c0d52d79da7e524285c77a5f9d298e70e11d91cc578d8e2c9542efc586d50c5f5cf8e1915b254a9dcf786913a94
- languageName: node
- linkType: hard
-
-"@babel/core@npm:^7.16.5, @babel/core@npm:^7.18.5, @babel/core@npm:^7.21.3, @babel/core@npm:^7.28.0":
- version: 7.29.0
- resolution: "@babel/core@npm:7.29.0"
- dependencies:
- "@babel/code-frame": "npm:^7.29.0"
- "@babel/generator": "npm:^7.29.0"
- "@babel/helper-compilation-targets": "npm:^7.28.6"
- "@babel/helper-module-transforms": "npm:^7.28.6"
- "@babel/helpers": "npm:^7.28.6"
- "@babel/parser": "npm:^7.29.0"
- "@babel/template": "npm:^7.28.6"
- "@babel/traverse": "npm:^7.29.0"
- "@babel/types": "npm:^7.29.0"
- "@jridgewell/remapping": "npm:^2.3.5"
- convert-source-map: "npm:^2.0.0"
- debug: "npm:^4.1.0"
- gensync: "npm:^1.0.0-beta.2"
- json5: "npm:^2.2.3"
- semver: "npm:^6.3.1"
- checksum: 10c0/5127d2e8e842ae409e11bcbb5c2dff9874abf5415e8026925af7308e903f4f43397341467a130490d1a39884f461bc2b67f3063bce0be44340db89687fd852aa
- languageName: node
- linkType: hard
-
-"@babel/generator@npm:^7.25.9":
- version: 7.26.3
- resolution: "@babel/generator@npm:7.26.3"
- dependencies:
- "@babel/parser": "npm:^7.26.3"
- "@babel/types": "npm:^7.26.3"
- "@jridgewell/gen-mapping": "npm:^0.3.5"
- "@jridgewell/trace-mapping": "npm:^0.3.25"
- jsesc: "npm:^3.0.2"
- checksum: 10c0/54f260558e3e4ec8942da3cde607c35349bb983c3a7c5121243f96893fba3e8cd62e1f1773b2051f936f8c8a10987b758d5c7d76dbf2784e95bb63ab4843fa00
- languageName: node
- linkType: hard
-
-"@babel/generator@npm:^7.27.3":
- version: 7.27.3
- resolution: "@babel/generator@npm:7.27.3"
- dependencies:
- "@babel/parser": "npm:^7.27.3"
- "@babel/types": "npm:^7.27.3"
- "@jridgewell/gen-mapping": "npm:^0.3.5"
- "@jridgewell/trace-mapping": "npm:^0.3.25"
- jsesc: "npm:^3.0.2"
- checksum: 10c0/341622e17c61d008fc746b655ab95ef7febb543df8efb4148f57cf06e60ade1abe091ed7d6811df17b064d04d64f69bb7f35ab0654137116d55c54a73145a61a
- languageName: node
- linkType: hard
-
-"@babel/generator@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/generator@npm:7.28.5"
- dependencies:
- "@babel/parser": "npm:^7.28.5"
- "@babel/types": "npm:^7.28.5"
- "@jridgewell/gen-mapping": "npm:^0.3.12"
- "@jridgewell/trace-mapping": "npm:^0.3.28"
- jsesc: "npm:^3.0.2"
- checksum: 10c0/9f219fe1d5431b6919f1a5c60db8d5d34fe546c0d8f5a8511b32f847569234ffc8032beb9e7404649a143f54e15224ecb53a3d11b6bb85c3203e573d91fca752
- languageName: node
- linkType: hard
-
-"@babel/generator@npm:^7.29.0":
- version: 7.29.1
- resolution: "@babel/generator@npm:7.29.1"
- dependencies:
- "@babel/parser": "npm:^7.29.0"
- "@babel/types": "npm:^7.29.0"
- "@jridgewell/gen-mapping": "npm:^0.3.12"
- "@jridgewell/trace-mapping": "npm:^0.3.28"
- jsesc: "npm:^3.0.2"
- checksum: 10c0/349086e6876258ef3fb2823030fee0f6c0eb9c3ebe35fc572e16997f8c030d765f636ddc6299edae63e760ea6658f8ee9a2edfa6d6b24c9a80c917916b973551
- languageName: node
- linkType: hard
-
-"@babel/helper-annotate-as-pure@npm:^7.25.9":
- version: 7.25.9
- resolution: "@babel/helper-annotate-as-pure@npm:7.25.9"
- dependencies:
- "@babel/types": "npm:^7.25.9"
- checksum: 10c0/095b6ba50489d797733abebc4596a81918316a99e3632755c9f02508882912b00c2ae5e468532a25a5c2108d109ddbe9b7da78333ee7cc13817fc50c00cf06fe
- languageName: node
- linkType: hard
-
-"@babel/helper-annotate-as-pure@npm:^7.27.1, @babel/helper-annotate-as-pure@npm:^7.27.3":
- version: 7.27.3
- resolution: "@babel/helper-annotate-as-pure@npm:7.27.3"
- dependencies:
- "@babel/types": "npm:^7.27.3"
- checksum: 10c0/94996ce0a05b7229f956033e6dcd69393db2b0886d0db6aff41e704390402b8cdcca11f61449cb4f86cfd9e61b5ad3a73e4fa661eeed7846b125bd1c33dbc633
- languageName: node
- linkType: hard
-
-"@babel/helper-compilation-targets@npm:^7.27.1":
- version: 7.27.2
- resolution: "@babel/helper-compilation-targets@npm:7.27.2"
- dependencies:
- "@babel/compat-data": "npm:^7.27.2"
- "@babel/helper-validator-option": "npm:^7.27.1"
- browserslist: "npm:^4.24.0"
- lru-cache: "npm:^5.1.1"
- semver: "npm:^6.3.1"
- checksum: 10c0/f338fa00dcfea931804a7c55d1a1c81b6f0a09787e528ec580d5c21b3ecb3913f6cb0f361368973ce953b824d910d3ac3e8a8ee15192710d3563826447193ad1
- languageName: node
- linkType: hard
-
-"@babel/helper-compilation-targets@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/helper-compilation-targets@npm:7.28.6"
- dependencies:
- "@babel/compat-data": "npm:^7.28.6"
- "@babel/helper-validator-option": "npm:^7.27.1"
- browserslist: "npm:^4.24.0"
- lru-cache: "npm:^5.1.1"
- semver: "npm:^6.3.1"
- checksum: 10c0/3fcdf3b1b857a1578e99d20508859dbd3f22f3c87b8a0f3dc540627b4be539bae7f6e61e49d931542fe5b557545347272bbdacd7f58a5c77025a18b745593a50
- languageName: node
- linkType: hard
-
-"@babel/helper-create-class-features-plugin@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/helper-create-class-features-plugin@npm:7.28.5"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.3"
- "@babel/helper-member-expression-to-functions": "npm:^7.28.5"
- "@babel/helper-optimise-call-expression": "npm:^7.27.1"
- "@babel/helper-replace-supers": "npm:^7.27.1"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.28.5"
- semver: "npm:^6.3.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/786a6514efcf4514aaad85beed419b9184d059f4c9a9a95108f320142764999827252a851f7071de19f29424d369616573ecbaa347f1ce23fb12fc6827d9ff56
- languageName: node
- linkType: hard
-
-"@babel/helper-create-class-features-plugin@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/helper-create-class-features-plugin@npm:7.28.6"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.3"
- "@babel/helper-member-expression-to-functions": "npm:^7.28.5"
- "@babel/helper-optimise-call-expression": "npm:^7.27.1"
- "@babel/helper-replace-supers": "npm:^7.28.6"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.28.6"
- semver: "npm:^6.3.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/0b62b46717891f4366006b88c9b7f277980d4f578c4c3789b7a4f5a2e09e121de4cda9a414ab403986745cd3ad1af3fe2d948c9f78ab80d4dc085afc9602af50
- languageName: node
- linkType: hard
-
-"@babel/helper-create-regexp-features-plugin@npm:^7.18.6":
- version: 7.26.3
- resolution: "@babel/helper-create-regexp-features-plugin@npm:7.26.3"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.25.9"
- regexpu-core: "npm:^6.2.0"
- semver: "npm:^6.3.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/266f30b99af621559467ed67634cb653408a9262930c0627c3d17691a9d477329fb4dabe4b1785cbf0490e892513d247836674271842d6a8da49fd0afae7d435
- languageName: node
- linkType: hard
-
-"@babel/helper-create-regexp-features-plugin@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-create-regexp-features-plugin@npm:7.27.1"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.1"
- regexpu-core: "npm:^6.2.0"
- semver: "npm:^6.3.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/591fe8bd3bb39679cc49588889b83bd628d8c4b99c55bafa81e80b1e605a348b64da955e3fd891c4ba3f36fd015367ba2eadea22af6a7de1610fbb5bcc2d3df0
- languageName: node
- linkType: hard
-
-"@babel/helper-create-regexp-features-plugin@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/helper-create-regexp-features-plugin@npm:7.28.5"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.3"
- regexpu-core: "npm:^6.3.1"
- semver: "npm:^6.3.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/7af3d604cadecdb2b0d2cedd696507f02a53a58be0523281c2d6766211443b55161dde1e6c0d96ab16ddfd82a2607a2f792390caa24797e9733631f8aa86859f
- languageName: node
- linkType: hard
-
-"@babel/helper-define-polyfill-provider@npm:^0.6.6":
- version: 0.6.6
- resolution: "@babel/helper-define-polyfill-provider@npm:0.6.6"
- dependencies:
- "@babel/helper-compilation-targets": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- debug: "npm:^4.4.3"
- lodash.debounce: "npm:^4.0.8"
- resolve: "npm:^1.22.11"
- peerDependencies:
- "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
- checksum: 10c0/1293d6f54d4ebb10c9e947e54de1aaa23b00233e19aca9790072f1893bf143af01442613f7b413300be7016d8e41b550af77acab28e7fa5fb796b2a175c528a1
- languageName: node
- linkType: hard
-
-"@babel/helper-globals@npm:^7.28.0":
- version: 7.28.0
- resolution: "@babel/helper-globals@npm:7.28.0"
- checksum: 10c0/5a0cd0c0e8c764b5f27f2095e4243e8af6fa145daea2b41b53c0c1414fe6ff139e3640f4e2207ae2b3d2153a1abd346f901c26c290ee7cb3881dd922d4ee9232
- languageName: node
- linkType: hard
-
-"@babel/helper-member-expression-to-functions@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-member-expression-to-functions@npm:7.27.1"
- dependencies:
- "@babel/traverse": "npm:^7.27.1"
- "@babel/types": "npm:^7.27.1"
- checksum: 10c0/5762ad009b6a3d8b0e6e79ff6011b3b8fdda0fefad56cfa8bfbe6aa02d5a8a8a9680a45748fe3ac47e735a03d2d88c0a676e3f9f59f20ae9fadcc8d51ccd5a53
- languageName: node
- linkType: hard
-
-"@babel/helper-member-expression-to-functions@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/helper-member-expression-to-functions@npm:7.28.5"
- dependencies:
- "@babel/traverse": "npm:^7.28.5"
- "@babel/types": "npm:^7.28.5"
- checksum: 10c0/4e6e05fbf4dffd0bc3e55e28fcaab008850be6de5a7013994ce874ec2beb90619cda4744b11607a60f8aae0227694502908add6188ceb1b5223596e765b44814
- languageName: node
- linkType: hard
-
-"@babel/helper-module-imports@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-module-imports@npm:7.27.1"
- dependencies:
- "@babel/traverse": "npm:^7.27.1"
- "@babel/types": "npm:^7.27.1"
- checksum: 10c0/e00aace096e4e29290ff8648455c2bc4ed982f0d61dbf2db1b5e750b9b98f318bf5788d75a4f974c151bd318fd549e81dbcab595f46b14b81c12eda3023f51e8
- languageName: node
- linkType: hard
-
-"@babel/helper-module-imports@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/helper-module-imports@npm:7.28.6"
- dependencies:
- "@babel/traverse": "npm:^7.28.6"
- "@babel/types": "npm:^7.28.6"
- checksum: 10c0/b49d8d8f204d9dbfd5ac70c54e533e5269afb3cea966a9d976722b13e9922cc773a653405f53c89acb247d5aebdae4681d631a3ae3df77ec046b58da76eda2ac
- languageName: node
- linkType: hard
-
-"@babel/helper-module-transforms@npm:^7.27.1":
- version: 7.27.3
- resolution: "@babel/helper-module-transforms@npm:7.27.3"
- dependencies:
- "@babel/helper-module-imports": "npm:^7.27.1"
- "@babel/helper-validator-identifier": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.27.3"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/fccb4f512a13b4c069af51e1b56b20f54024bcf1591e31e978a30f3502567f34f90a80da6a19a6148c249216292a8074a0121f9e52602510ef0f32dbce95ca01
- languageName: node
- linkType: hard
-
-"@babel/helper-module-transforms@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/helper-module-transforms@npm:7.28.6"
- dependencies:
- "@babel/helper-module-imports": "npm:^7.28.6"
- "@babel/helper-validator-identifier": "npm:^7.28.5"
- "@babel/traverse": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/6f03e14fc30b287ce0b839474b5f271e72837d0cafe6b172d759184d998fbee3903a035e81e07c2c596449e504f453463d58baa65b6f40a37ded5bec74620b2b
- languageName: node
- linkType: hard
-
-"@babel/helper-optimise-call-expression@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-optimise-call-expression@npm:7.27.1"
- dependencies:
- "@babel/types": "npm:^7.27.1"
- checksum: 10c0/6b861e7fcf6031b9c9fc2de3cd6c005e94a459d6caf3621d93346b52774925800ca29d4f64595a5ceacf4d161eb0d27649ae385110ed69491d9776686fa488e6
- languageName: node
- linkType: hard
-
-"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.18.6":
- version: 7.26.5
- resolution: "@babel/helper-plugin-utils@npm:7.26.5"
- checksum: 10c0/cdaba71d4b891aa6a8dfbe5bac2f94effb13e5fa4c2c487667fdbaa04eae059b78b28d85a885071f45f7205aeb56d16759e1bed9c118b94b16e4720ef1ab0f65
- languageName: node
- linkType: hard
-
-"@babel/helper-plugin-utils@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-plugin-utils@npm:7.27.1"
- checksum: 10c0/94cf22c81a0c11a09b197b41ab488d416ff62254ce13c57e62912c85700dc2e99e555225787a4099ff6bae7a1812d622c80fbaeda824b79baa10a6c5ac4cf69b
- languageName: node
- linkType: hard
-
-"@babel/helper-plugin-utils@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/helper-plugin-utils@npm:7.28.6"
- checksum: 10c0/3f5f8acc152fdbb69a84b8624145ff4f9b9f6e776cb989f9f968f8606eb7185c5c3cfcf3ba08534e37e1e0e1c118ac67080610333f56baa4f7376c99b5f1143d
- languageName: node
- linkType: hard
-
-"@babel/helper-remap-async-to-generator@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-remap-async-to-generator@npm:7.27.1"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.1"
- "@babel/helper-wrap-function": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/5ba6258f4bb57c7c9fa76b55f416b2d18c867b48c1af4f9f2f7cd7cc933fe6da7514811d08ceb4972f1493be46f4b69c40282b811d1397403febae13c2ec57b5
- languageName: node
- linkType: hard
-
-"@babel/helper-replace-supers@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-replace-supers@npm:7.27.1"
- dependencies:
- "@babel/helper-member-expression-to-functions": "npm:^7.27.1"
- "@babel/helper-optimise-call-expression": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/4f2eaaf5fcc196580221a7ccd0f8873447b5d52745ad4096418f6101a1d2e712e9f93722c9a32bc9769a1dc197e001f60d6f5438d4dfde4b9c6a9e4df719354c
- languageName: node
- linkType: hard
-
-"@babel/helper-replace-supers@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/helper-replace-supers@npm:7.28.6"
- dependencies:
- "@babel/helper-member-expression-to-functions": "npm:^7.28.5"
- "@babel/helper-optimise-call-expression": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/04663c6389551b99b8c3e7ba4e2638b8ca2a156418c26771516124c53083aa8e74b6a45abe5dd46360af79709a0e9c6b72c076d0eab9efecdd5aaf836e79d8d5
- languageName: node
- linkType: hard
-
-"@babel/helper-skip-transparent-expression-wrappers@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-skip-transparent-expression-wrappers@npm:7.27.1"
- dependencies:
- "@babel/traverse": "npm:^7.27.1"
- "@babel/types": "npm:^7.27.1"
- checksum: 10c0/f625013bcdea422c470223a2614e90d2c1cc9d832e97f32ca1b4f82b34bb4aa67c3904cb4b116375d3b5b753acfb3951ed50835a1e832e7225295c7b0c24dff7
- languageName: node
- linkType: hard
-
-"@babel/helper-string-parser@npm:^7.25.9":
- version: 7.25.9
- resolution: "@babel/helper-string-parser@npm:7.25.9"
- checksum: 10c0/7244b45d8e65f6b4338a6a68a8556f2cb161b782343e97281a5f2b9b93e420cad0d9f5773a59d79f61d0c448913d06f6a2358a87f2e203cf112e3c5b53522ee6
- languageName: node
- linkType: hard
-
-"@babel/helper-string-parser@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-string-parser@npm:7.27.1"
- checksum: 10c0/8bda3448e07b5583727c103560bcf9c4c24b3c1051a4c516d4050ef69df37bb9a4734a585fe12725b8c2763de0a265aa1e909b485a4e3270b7cfd3e4dbe4b602
- languageName: node
- linkType: hard
-
-"@babel/helper-validator-identifier@npm:^7.24.7, @babel/helper-validator-identifier@npm:^7.25.9":
- version: 7.25.9
- resolution: "@babel/helper-validator-identifier@npm:7.25.9"
- checksum: 10c0/4fc6f830177b7b7e887ad3277ddb3b91d81e6c4a24151540d9d1023e8dc6b1c0505f0f0628ae653601eb4388a8db45c1c14b2c07a9173837aef7e4116456259d
- languageName: node
- linkType: hard
-
-"@babel/helper-validator-identifier@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-validator-identifier@npm:7.27.1"
- checksum: 10c0/c558f11c4871d526498e49d07a84752d1800bf72ac0d3dad100309a2eaba24efbf56ea59af5137ff15e3a00280ebe588560534b0e894a4750f8b1411d8f78b84
- languageName: node
- linkType: hard
-
-"@babel/helper-validator-identifier@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/helper-validator-identifier@npm:7.28.5"
- checksum: 10c0/42aaebed91f739a41f3d80b72752d1f95fd7c72394e8e4bd7cdd88817e0774d80a432451bcba17c2c642c257c483bf1d409dd4548883429ea9493a3bc4ab0847
- languageName: node
- linkType: hard
-
-"@babel/helper-validator-option@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-validator-option@npm:7.27.1"
- checksum: 10c0/6fec5f006eba40001a20f26b1ef5dbbda377b7b68c8ad518c05baa9af3f396e780bdfded24c4eef95d14bb7b8fd56192a6ed38d5d439b97d10efc5f1a191d148
- languageName: node
- linkType: hard
-
-"@babel/helper-wrap-function@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/helper-wrap-function@npm:7.27.1"
- dependencies:
- "@babel/template": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.27.1"
- "@babel/types": "npm:^7.27.1"
- checksum: 10c0/c472f75c0951bc657ab0a117538c7c116566ae7579ed47ac3f572c42dc78bd6f1e18f52ebe80d38300c991c3fcaa06979e2f8864ee919369dabd59072288de30
- languageName: node
- linkType: hard
-
-"@babel/helpers@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/helpers@npm:7.28.6"
- dependencies:
- "@babel/template": "npm:^7.28.6"
- "@babel/types": "npm:^7.28.6"
- checksum: 10c0/c4a779c66396bb0cf619402d92f1610601ff3832db2d3b86b9c9dd10983bf79502270e97ac6d5280cea1b1a37de2f06ecbac561bd2271545270407fbe64027cb
- languageName: node
- linkType: hard
-
-"@babel/highlight@npm:^7.24.7":
- version: 7.24.7
- resolution: "@babel/highlight@npm:7.24.7"
- dependencies:
- "@babel/helper-validator-identifier": "npm:^7.24.7"
- chalk: "npm:^2.4.2"
- js-tokens: "npm:^4.0.0"
- picocolors: "npm:^1.0.0"
- checksum: 10c0/674334c571d2bb9d1c89bdd87566383f59231e16bcdcf5bb7835babdf03c9ae585ca0887a7b25bdf78f303984af028df52831c7989fecebb5101cc132da9393a
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.10.3, @babel/parser@npm:^7.20.7":
- version: 7.26.2
- resolution: "@babel/parser@npm:7.26.2"
- dependencies:
- "@babel/types": "npm:^7.26.0"
- bin:
- parser: ./bin/babel-parser.js
- checksum: 10c0/751a743087b3a9172a7599f1421830d44c38f065ef781588d2bfb1c98f9b461719a226feb13c868d7a284783eee120c88ea522593118f2668f46ebfb1105c4d7
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.25.9, @babel/parser@npm:^7.26.9":
- version: 7.26.9
- resolution: "@babel/parser@npm:7.26.9"
- dependencies:
- "@babel/types": "npm:^7.26.9"
- bin:
- parser: ./bin/babel-parser.js
- checksum: 10c0/4b9ef3c9a0d4c328e5e5544f50fe8932c36f8a2c851e7f14a85401487cd3da75cad72c2e1bcec1eac55599a6bbb2fdc091f274c4fcafa6bdd112d4915ff087fc
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.26.3":
- version: 7.26.5
- resolution: "@babel/parser@npm:7.26.5"
- dependencies:
- "@babel/types": "npm:^7.26.5"
- bin:
- parser: ./bin/babel-parser.js
- checksum: 10c0/2e77dd99ee028ee3c10fa03517ae1169f2432751adf71315e4dc0d90b61639d51760d622f418f6ac665ae4ea65f8485232a112ea0e76f18e5900225d3d19a61e
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.27.2, @babel/parser@npm:^7.27.3":
- version: 7.27.3
- resolution: "@babel/parser@npm:7.27.3"
- dependencies:
- "@babel/types": "npm:^7.27.3"
- bin:
- parser: ./bin/babel-parser.js
- checksum: 10c0/d96363c7548710ab9c28649cee752e2d0713ed25bf910923da45d2fbc67fed5bbdfb867274fec7d72437f4e910577d27c04e160da52d95f1b63fdf0b19035d26
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/parser@npm:7.28.5"
- dependencies:
- "@babel/types": "npm:^7.28.5"
- bin:
- parser: ./bin/babel-parser.js
- checksum: 10c0/5bbe48bf2c79594ac02b490a41ffde7ef5aa22a9a88ad6bcc78432a6ba8a9d638d531d868bd1f104633f1f6bba9905746e15185b8276a3756c42b765d131b1ef
- languageName: node
- linkType: hard
-
-"@babel/parser@npm:^7.28.6, @babel/parser@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/parser@npm:7.29.0"
- dependencies:
- "@babel/types": "npm:^7.29.0"
- bin:
- parser: ./bin/babel-parser.js
- checksum: 10c0/333b2aa761264b91577a74bee86141ef733f9f9f6d4fc52548e4847dc35dfbf821f58c46832c637bfa761a6d9909d6a68f7d1ed59e17e4ffbb958dc510c17b62
- languageName: node
- linkType: hard
-
-"@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/plugin-bugfix-firefox-class-in-computed-class-key@npm:7.28.5"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.28.5"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/844b7c7e9eec6d858262b2f3d5af75d3a6bbd9d3ecc740d95271fbdd84985731674536f5d8ac98f2dc0e8872698b516e406636e4d0cb04b50afe471172095a53
- languageName: node
- linkType: hard
-
-"@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-bugfix-safari-class-field-initializer-scope@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/2cd7a55a856e5e59bbd9484247c092a41e0d9f966778e7019da324d9e0928892d26afc4fbb2ac3d76a3c5a631cd3cf0d72dd2653b44f634f6c663b9e6f80aacd
- languageName: node
- linkType: hard
-
-"@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/cf29835498c4a25bd470908528919729a0799b2ec94e89004929a5532c94a5e4b1a49bc5d6673a22e5afe05d08465873e14ee3b28c42eb3db489cdf5ca47c680
- languageName: node
- linkType: hard
-
-"@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- "@babel/plugin-transform-optional-chaining": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.13.0
- checksum: 10c0/eddcd056f76e198868cbff883eb148acfade8f0890973ab545295df0c08e39573a72e65372bcc0b0bfadba1b043fe1aea6b0907d0b4889453ac154c404194ebc
- languageName: node
- linkType: hard
-
-"@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/traverse": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/f1a9194e8d1742081def7af748e9249eb5082c25d0ced292720a1f054895f99041c764a05f45af669a2c8898aeb79266058aedb0d3e1038963ad49be8288918a
- languageName: node
- linkType: hard
-
-"@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2":
- version: 7.21.0-placeholder-for-preset-env.2
- resolution: "@babel/plugin-proposal-private-property-in-object@npm:7.21.0-placeholder-for-preset-env.2"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/e605e0070da087f6c35579499e65801179a521b6842c15181a1e305c04fded2393f11c1efd09b087be7f8b083d1b75e8f3efcbc1292b4f60d3369e14812cff63
- languageName: node
- linkType: hard
-
-"@babel/plugin-syntax-import-assertions@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-syntax-import-assertions@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/f3b8bdccb9b4d3e3b9226684ca518e055399d05579da97dfe0160a38d65198cfe7dce809e73179d6463a863a040f980de32425a876d88efe4eda933d0d95982c
- languageName: node
- linkType: hard
-
-"@babel/plugin-syntax-import-attributes@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-syntax-import-attributes@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/1be160e2c426faa74e5be2e30e39e8d0d8c543063bd5d06cd804f8751b8fbcb82ce824ca7f9ce4b09c003693f6c06a11ce503b7e34d85e1a259631e4c3f72ad2
- languageName: node
- linkType: hard
-
-"@babel/plugin-syntax-jsx@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-syntax-jsx@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/bc5afe6a458d5f0492c02a54ad98c5756a0c13bd6d20609aae65acd560a9e141b0876da5f358dce34ea136f271c1016df58b461184d7ae9c4321e0f98588bc84
- languageName: node
- linkType: hard
-
-"@babel/plugin-syntax-typescript@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-syntax-typescript@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/11589b4c89c66ef02d57bf56c6246267851ec0c361f58929327dc3e070b0dab644be625bbe7fb4c4df30c3634bfdfe31244e1f517be397d2def1487dbbe3c37d
- languageName: node
- linkType: hard
-
-"@babel/plugin-syntax-unicode-sets-regex@npm:^7.18.6":
- version: 7.18.6
- resolution: "@babel/plugin-syntax-unicode-sets-regex@npm:7.18.6"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.18.6"
- "@babel/helper-plugin-utils": "npm:^7.18.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/9144e5b02a211a4fb9a0ce91063f94fbe1004e80bde3485a0910c9f14897cf83fabd8c21267907cff25db8e224858178df0517f14333cfcf3380ad9a4139cb50
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-arrow-functions@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-arrow-functions@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/19abd7a7d11eef58c9340408a4c2594503f6c4eaea1baa7b0e5fbdda89df097e50663edb3448ad2300170b39efca98a75e5767af05cad3b0facb4944326896a3
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-async-generator-functions@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/plugin-transform-async-generator-functions@npm:7.29.0"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/helper-remap-async-to-generator": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.29.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/4080fc5e7dad7761bfebbb4fbe06bdfeb3a8bf0c027bcb4373e59e6b3dc7c5002eca7cbb1afba801d6439df8f92f7bcb3fb862e8fbbe43a9e59bb5653dcc0568
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-async-to-generator@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-async-to-generator@npm:7.28.6"
- dependencies:
- "@babel/helper-module-imports": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/helper-remap-async-to-generator": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/2eb0826248587df6e50038f36194a138771a7df22581020451c7779edeaf9ef39bf47c5b7a20ae2645af6416e8c896feeca273317329652e84abd79a4ab920ad
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-block-scoped-functions@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-block-scoped-functions@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/3313130ba3bf0699baad0e60da1c8c3c2f0c2c0a7039cd0063e54e72e739c33f1baadfc9d8c73b3fea8c85dd7250c3964fb09c8e1fa62ba0b24a9fefe0a8dbde
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-block-scoping@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-block-scoping@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/2e3e09e1f9770b56cef4dcbffddf262508fd03416072f815ac66b2b224a3a12cd285cfec12fc067f1add414e7db5ce6dafb5164a6e0fb1a728e6a97d0c6f6e9d
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-class-properties@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-class-properties@npm:7.28.6"
- dependencies:
- "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/c4327fcd730c239d9f173f9b695b57b801729e273b4848aef1f75818069dfd31d985d75175db188d947b9b1bbe5353dae298849042026a5e4fcf07582ff3f9f1
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-class-static-block@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-class-static-block@npm:7.28.6"
- dependencies:
- "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.12.0
- checksum: 10c0/dbe9b1fd302ae41b73186e17ac8d8ecf625ebc2416a91f2dc8013977a1bdf21e6ea288a83f084752b412242f3866e789d4fddeb428af323fe35b60e0fae4f98c
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-classes@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-classes@npm:7.28.6"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.3"
- "@babel/helper-compilation-targets": "npm:^7.28.6"
- "@babel/helper-globals": "npm:^7.28.0"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/helper-replace-supers": "npm:^7.28.6"
- "@babel/traverse": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/dc22f1f6eadab17305128fbf9cc5f30e87a51a77dd0a6d5498097994e8a9b9a90ab298c11edf2342acbeaac9edc9c601cad72eedcf4b592cd465a787d7f41490
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-computed-properties@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-computed-properties@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/template": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/1e9893503ae6d651125701cc29450e87c0b873c8febebff19da75da9c40cfb7968c52c28bf948244e461110aeb7b3591f2cc199b7406ff74a24c50c7a5729f39
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-destructuring@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/plugin-transform-destructuring@npm:7.28.5"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.28.5"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/288207f488412b23bb206c7c01ba143714e2506b72a9ec09e993f28366cc8188d121bde714659b3437984a86d2881d9b1b06de3089d5582823ccf2f3b3eaa2c4
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-dotall-regex@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-dotall-regex@npm:7.28.6"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/e2fb76b7ae99087cf4212013a3ca9dee07048f90f98fd6264855080fb6c3f169be11c9b8c9d8b26cf9a407e4d0a5fa6e103f7cef433a542b75cf7127c99d4f97
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-duplicate-keys@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-duplicate-keys@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/22a822e5342b7066f83eaedc4fd9bb044ac6bc68725484690b33ba04a7104980e43ea3229de439286cb8db8e7db4a865733a3f05123ab58a10f189f03553746f
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/plugin-transform-duplicate-named-capturing-groups-regex@npm:7.29.0"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/6f03d9e5e31a05b28555541be6e283407e08447a36be6ddf8068b3efa970411d832e04b1282e2b894baf89a3864ff7e7f1e36346652a8d983170c6d548555167
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-dynamic-import@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-dynamic-import@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/8dcd3087aca134b064fc361d2cc34eec1f900f6be039b6368104afcef10bb75dea726bb18cabd046716b89b0edaa771f50189fa16bc5c5914a38cbcf166350f7
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-explicit-resource-management@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-explicit-resource-management@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/plugin-transform-destructuring": "npm:^7.28.5"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/e6ea28c26e058fe61ada3e70b0def1992dd5a44f5fc14d8e2c6a3a512fb4d4c6dc96a3e1d0b466d83db32a9101e0b02df94051e48d3140da115b8ea9f8a31f37
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-exponentiation-operator@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-exponentiation-operator@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/4572d955a50dbc9a652a19431b4bb822cb479ee6045f4e6df72659c499c13036da0a2adf650b07ca995f2781e80aa868943bea1e7bff1de3169ec3f0a73a902e
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-export-namespace-from@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-export-namespace-from@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/d7165cad11f571a54c8d9263d6c6bf2b817aff4874f747cb51e6e49efb32f2c9b37a6850cdb5e3b81e0b638141bb77dc782a6ec1a94128859fbdf7767581e07c
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-for-of@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-for-of@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/4635763173a23aae24480681f2b0996b4f54a0cb2368880301a1801638242e263132d1e8adbe112ab272913d1d900ee0d6f7dea79443aef9d3325168cd88b3fb
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-function-name@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-function-name@npm:7.27.1"
- dependencies:
- "@babel/helper-compilation-targets": "npm:^7.27.1"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/traverse": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/5abdc7b5945fbd807269dcc6e76e52b69235056023b0b35d311e8f5dfd6c09d9f225839798998fc3b663f50cf701457ddb76517025a0d7a5474f3fe56e567a4c
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-json-strings@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-json-strings@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/ab1091798c58e6c0bb8a864ee2b727c400924592c6ed69797a26b4c205f850a935de77ad516570be0419c279a3d9f7740c2aa448762eb8364ea77a6a357a9653
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-literals@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-literals@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/c40dc3eb2f45a92ee476412314a40e471af51a0f51a24e91b85cef5fc59f4fe06758088f541643f07f949d2c67ee7bdce10e11c5ec56791ae09b15c3b451eeca
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-logical-assignment-operators@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-logical-assignment-operators@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/4632a35453d2131f0be466681d0a33e3db44d868ff51ec46cd87e0ebd1e47c6a39b894f7d1c9b06f931addf6efa9d30e60c4cdedeb4f69d426f683e11f8490cf
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-member-expression-literals@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-member-expression-literals@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/0874ccebbd1c6a155e5f6b3b29729fade1221b73152567c1af1e1a7c12848004dffecbd7eded6dc463955120040ae57c17cb586b53fb5a7a27fcd88177034c30
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-modules-amd@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-modules-amd@npm:7.27.1"
- dependencies:
- "@babel/helper-module-transforms": "npm:^7.27.1"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/76e86cd278b6a3c5b8cca8dfb3428e9cd0c81a5df7096e04c783c506696b916a9561386d610a9d846ef64804640e0bd818ea47455fed0ee89b7f66c555b29537
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-modules-commonjs@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-modules-commonjs@npm:7.27.1"
- dependencies:
- "@babel/helper-module-transforms": "npm:^7.27.1"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/4def972dcd23375a266ea1189115a4ff61744b2c9366fc1de648b3fab2c650faf1a94092de93a33ff18858d2e6c4dddeeee5384cb42ba0129baeab01a5cdf1e2
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-modules-commonjs@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-modules-commonjs@npm:7.28.6"
- dependencies:
- "@babel/helper-module-transforms": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/7c45992797c6150644c8552feff4a016ba7bd6d59ff2b039ed969a9c5b20a6804cd9d21db5045fc8cca8ca7f08262497e354e93f8f2be6a1cdf3fbfa8c31a9b6
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-modules-systemjs@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/plugin-transform-modules-systemjs@npm:7.29.0"
- dependencies:
- "@babel/helper-module-transforms": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/helper-validator-identifier": "npm:^7.28.5"
- "@babel/traverse": "npm:^7.29.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/44ea502f2c990398b7d9adc5b44d9e1810a0a5e86eebc05c92d039458f0b3994fe243efa9353b90f8a648d8a91b79845fb353d8679d7324cc9de0162d732771d
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-modules-umd@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-modules-umd@npm:7.27.1"
- dependencies:
- "@babel/helper-module-transforms": "npm:^7.27.1"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/e5962a8874889da2ab1aa32eb93ec21d419c7423c766e4befb39b4bb512b9ad44b47837b6cd1c8f1065445cbbcc6dc2be10298ac6e734e5ca1059fc23698daed
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-named-capturing-groups-regex@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/plugin-transform-named-capturing-groups-regex@npm:7.29.0"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/1904db22da7f2bc3e380cd2c0786bda330ee1b1b3efa3f5203d980708c4bfeb5daa4dff48d01692193040bcc5f275dbdc0c2eadc8b1eb1b6dfe363564ad6e898
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-new-target@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-new-target@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/9b0581412fcc5ab1b9a2d86a0c5407bd959391f0a1e77a46953fef9f7a57f3f4020d75f71098c5f9e5dcc680a87f9fd99b3205ab12e25ef8c19eed038c1e4b28
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-nullish-coalescing-operator@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-nullish-coalescing-operator@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/6607f2201d66ccb688f0b1db09475ef995837df19f14705da41f693b669f834c206147a854864ab107913d7b4f4748878b0cd9fe9ca8bfd1bee0c206fc027b49
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-numeric-separator@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-numeric-separator@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/191097d8d2753cdd16d1acca65a945d1645ab20b65655c2f5b030a9e38967a52e093dcb21ebf391e342222705c6ffe5dea15dafd6257f7b51b77fb64a830b637
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-object-rest-spread@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-object-rest-spread@npm:7.28.6"
- dependencies:
- "@babel/helper-compilation-targets": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/plugin-transform-destructuring": "npm:^7.28.5"
- "@babel/plugin-transform-parameters": "npm:^7.27.7"
- "@babel/traverse": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/f55334352d4fcde385f2e8a58836687e71ff668c9b6e4c34d52575bf2789cdde92d9d3116edba13647ac0bc3e51fb2a6d1e8fb822dce7e8123334b82600bc4c3
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-object-super@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-object-super@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/helper-replace-supers": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/efa2d092ef55105deb06d30aff4e460c57779b94861188128489b72378bf1f0ab0f06a4a4d68b9ae2a59a79719fbb2d148b9a3dca19ceff9c73b1f1a95e0527c
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-optional-catch-binding@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-optional-catch-binding@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/36e8face000ee65e478a55febf687ce9be7513ad498c60dfe585851555565e0c28e7cb891b3c59709318539ce46f7697d5f42130eb18f385cd47e47cfa297446
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-optional-chaining@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-optional-chaining@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/5b18ff5124e503f0a25d6b195be7351a028b3992d6f2a91fb4037e2a2c386400d66bc1df8f6df0a94c708524f318729e81a95c41906e5a7919a06a43e573a525
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-optional-chaining@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-optional-chaining@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/c159cc74115c2266be21791f192dd079e2aeb65c8731157e53b80fcefa41e8e28ad370021d4dfbdb31f25e5afa0322669a8eb2d032cd96e65ac37e020324c763
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-parameters@npm:^7.27.7":
- version: 7.27.7
- resolution: "@babel/plugin-transform-parameters@npm:7.27.7"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/f2da3804e047d9f1cfb27be6c014e2c7f6cf5e1e38290d1cb3cb2607859e3d6facb4ee8c8c1e336e9fbb440091a174ce95ce156582d7e8bf9c0e735d11681f0f
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-private-methods@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-private-methods@npm:7.28.6"
- dependencies:
- "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/fb504e2bfdcf3f734d2a90ab20d61427c58385f57f950d3de6ff4e6d12dd4aa7d552147312d218367e129b7920dccfc3230ba554de861986cda38921bad84067
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-private-property-in-object@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-private-property-in-object@npm:7.28.6"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.3"
- "@babel/helper-create-class-features-plugin": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/0f6bbc6ec3f93b556d3de7d56bf49335255fc4c43488e51a5025d6ee0286183fd3cf950ffcac1bbeed8a45777f860a49996455c8d3b4a04c3b1a5f28e697fe31
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-property-literals@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-property-literals@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/15713a87edd6db620d6e66eb551b4fbfff5b8232c460c7c76cedf98efdc5cd21080c97040231e19e06594c6d7dfa66e1ab3d0951e29d5814fb25e813f6d6209c
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-react-display-name@npm:^7.28.0":
- version: 7.28.0
- resolution: "@babel/plugin-transform-react-display-name@npm:7.28.0"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/f5f86d2ad92be3e962158f344c2e385e23e2dfae7c8c7dc32138fb2cc46f63f5e50386c9f6c6fc16dbf1792c7bb650ad92c18203d0c2c0bd875bc28b0b80ef30
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-react-jsx-development@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-react-jsx-development@npm:7.27.1"
- dependencies:
- "@babel/plugin-transform-react-jsx": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/eb8c4b6a79dc5c49b41e928e2037e1ee0bbfa722e4fd74c0b7c0d11103c82c2c25c434000e1b051d534c7261ab5c92b6d1e85313bf1b26e37db3f051ae217b58
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-react-jsx-self@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-react-jsx-self@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/00a4f917b70a608f9aca2fb39aabe04a60aa33165a7e0105fd44b3a8531630eb85bf5572e9f242f51e6ad2fa38c2e7e780902176c863556c58b5ba6f6e164031
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-react-jsx-source@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-react-jsx-source@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/5e67b56c39c4d03e59e03ba80692b24c5a921472079b63af711b1d250fc37c1733a17069b63537f750f3e937ec44a42b1ee6a46cd23b1a0df5163b17f741f7f2
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-react-jsx@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-react-jsx@npm:7.27.1"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.1"
- "@babel/helper-module-imports": "npm:^7.27.1"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/plugin-syntax-jsx": "npm:^7.27.1"
- "@babel/types": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/1a08637c39fc78c9760dd4a3ed363fdbc762994bf83ed7872ad5bda0232fcd0fc557332f2ce36b522c0226dfd9cc8faac6b88eddda535f24825198a689e571af
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-react-pure-annotations@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-react-pure-annotations@npm:7.27.1"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.1"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/34bc090f4a7e460d82a851971b4d0f32e4bb519bafb927154f4174506283fe02b0f471fc20655c6050a8bf7b748bfa31c7e8f7d688849476d8266623554fbb28
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-regenerator@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/plugin-transform-regenerator@npm:7.29.0"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/86c7db9b97f85ee47c0fae0528802cbc06e5775e61580ee905335c16bb971270086764a3859873d9adcd7d0f913a5b93eb0dc271aec8fb9e93e090e4ac95e29e
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-regexp-modifiers@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-regexp-modifiers@npm:7.28.6"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/97e36b086800f71694fa406abc00192e3833662f2bdd5f51c018bd0c95eef247c4ae187417c207d03a9c5374342eac0bb65a39112c431a9b23b09b1eda1562e5
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-reserved-words@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-reserved-words@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/e1a87691cce21a644a474d7c9a8107d4486c062957be32042d40f0a3d0cc66e00a3150989655019c255ff020d2640ac16aaf544792717d586f219f3bad295567
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-shorthand-properties@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-shorthand-properties@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/bd5544b89520a22c41a6df5ddac9039821d3334c0ef364d18b0ba9674c5071c223bcc98be5867dc3865cb10796882b7594e2c40dedaff38e1b1273913fe353e1
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-spread@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-spread@npm:7.28.6"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/bcac50e558d6f0c501cbce19ec197af558cef51fe3b3a6eba27276e323e57a5be28109b4264a5425ac12a67bf95d6af9c2a42b05e79c522ce913fb9529259d76
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-sticky-regex@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-sticky-regex@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/5698df2d924f0b1b7bdb7ef370e83f99ed3f0964eb3b9c27d774d021bee7f6d45f9a73e2be369d90b4aff1603ce29827f8743f091789960e7669daf9c3cda850
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-template-literals@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-template-literals@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/c90f403e42ef062b60654d1c122c70f3ec6f00c2f304b0931ebe6d0b432498ef8a5ef9266ddf00debc535f8390842207e44d3900eff1d2bab0cc1a700f03e083
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-typeof-symbol@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-typeof-symbol@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/a13c68015311fefa06a51830bc69d5badd06c881b13d5cf9ba04bf7c73e3fc6311cc889e18d9645ce2a64a79456dc9c7be88476c0b6802f62a686cb6f662ecd6
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-typescript@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/plugin-transform-typescript@npm:7.28.5"
- dependencies:
- "@babel/helper-annotate-as-pure": "npm:^7.27.3"
- "@babel/helper-create-class-features-plugin": "npm:^7.28.5"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/helper-skip-transparent-expression-wrappers": "npm:^7.27.1"
- "@babel/plugin-syntax-typescript": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/09e574ba5462e56452b4ceecae65e53c8e697a2d3559ce5d210bed10ac28a18aa69377e7550c30520eb29b40c417ee61997d5d58112657f22983244b78915a7c
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-unicode-escapes@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-unicode-escapes@npm:7.27.1"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/a6809e0ca69d77ee9804e0c1164e8a2dea5e40718f6dcf234aeddf7292e7414f7ee331d87f17eb6f160823a329d1d6751bd49b35b392ac4a6efc032e4d3038d8
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-unicode-property-regex@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-unicode-property-regex@npm:7.28.6"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/b25f8cde643f4f47e0fa4f7b5c552e2dfbb6ad0ce07cf40f7e8ae40daa9855ad855d76d4d6d010153b74e48c8794685955c92ca637c0da152ce5f0fa9e7c90fa
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-unicode-regex@npm:^7.27.1":
- version: 7.27.1
- resolution: "@babel/plugin-transform-unicode-regex@npm:7.27.1"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.27.1"
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/6abda1bcffb79feba6f5c691859cdbe984cc96481ea65d5af5ba97c2e843154005f0886e25006a37a2d213c0243506a06eaeafd93a040dbe1f79539016a0d17a
- languageName: node
- linkType: hard
-
-"@babel/plugin-transform-unicode-sets-regex@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/plugin-transform-unicode-sets-regex@npm:7.28.6"
- dependencies:
- "@babel/helper-create-regexp-features-plugin": "npm:^7.28.5"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- peerDependencies:
- "@babel/core": ^7.0.0
- checksum: 10c0/c03c8818736b138db73d1f7a96fbfa22d1994639164d743f0f00e6383d3b7b3144d333de960ff4afad0bddd0baaac257295e3316969eba995b1b6a1b4dec933e
- languageName: node
- linkType: hard
-
-"@babel/preset-env@npm:^7.22.20":
- version: 7.29.0
- resolution: "@babel/preset-env@npm:7.29.0"
- dependencies:
- "@babel/compat-data": "npm:^7.29.0"
- "@babel/helper-compilation-targets": "npm:^7.28.6"
- "@babel/helper-plugin-utils": "npm:^7.28.6"
- "@babel/helper-validator-option": "npm:^7.27.1"
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "npm:^7.28.5"
- "@babel/plugin-bugfix-safari-class-field-initializer-scope": "npm:^7.27.1"
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "npm:^7.27.1"
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "npm:^7.27.1"
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "npm:^7.28.6"
- "@babel/plugin-proposal-private-property-in-object": "npm:7.21.0-placeholder-for-preset-env.2"
- "@babel/plugin-syntax-import-assertions": "npm:^7.28.6"
- "@babel/plugin-syntax-import-attributes": "npm:^7.28.6"
- "@babel/plugin-syntax-unicode-sets-regex": "npm:^7.18.6"
- "@babel/plugin-transform-arrow-functions": "npm:^7.27.1"
- "@babel/plugin-transform-async-generator-functions": "npm:^7.29.0"
- "@babel/plugin-transform-async-to-generator": "npm:^7.28.6"
- "@babel/plugin-transform-block-scoped-functions": "npm:^7.27.1"
- "@babel/plugin-transform-block-scoping": "npm:^7.28.6"
- "@babel/plugin-transform-class-properties": "npm:^7.28.6"
- "@babel/plugin-transform-class-static-block": "npm:^7.28.6"
- "@babel/plugin-transform-classes": "npm:^7.28.6"
- "@babel/plugin-transform-computed-properties": "npm:^7.28.6"
- "@babel/plugin-transform-destructuring": "npm:^7.28.5"
- "@babel/plugin-transform-dotall-regex": "npm:^7.28.6"
- "@babel/plugin-transform-duplicate-keys": "npm:^7.27.1"
- "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "npm:^7.29.0"
- "@babel/plugin-transform-dynamic-import": "npm:^7.27.1"
- "@babel/plugin-transform-explicit-resource-management": "npm:^7.28.6"
- "@babel/plugin-transform-exponentiation-operator": "npm:^7.28.6"
- "@babel/plugin-transform-export-namespace-from": "npm:^7.27.1"
- "@babel/plugin-transform-for-of": "npm:^7.27.1"
- "@babel/plugin-transform-function-name": "npm:^7.27.1"
- "@babel/plugin-transform-json-strings": "npm:^7.28.6"
- "@babel/plugin-transform-literals": "npm:^7.27.1"
- "@babel/plugin-transform-logical-assignment-operators": "npm:^7.28.6"
- "@babel/plugin-transform-member-expression-literals": "npm:^7.27.1"
- "@babel/plugin-transform-modules-amd": "npm:^7.27.1"
- "@babel/plugin-transform-modules-commonjs": "npm:^7.28.6"
- "@babel/plugin-transform-modules-systemjs": "npm:^7.29.0"
- "@babel/plugin-transform-modules-umd": "npm:^7.27.1"
- "@babel/plugin-transform-named-capturing-groups-regex": "npm:^7.29.0"
- "@babel/plugin-transform-new-target": "npm:^7.27.1"
- "@babel/plugin-transform-nullish-coalescing-operator": "npm:^7.28.6"
- "@babel/plugin-transform-numeric-separator": "npm:^7.28.6"
- "@babel/plugin-transform-object-rest-spread": "npm:^7.28.6"
- "@babel/plugin-transform-object-super": "npm:^7.27.1"
- "@babel/plugin-transform-optional-catch-binding": "npm:^7.28.6"
- "@babel/plugin-transform-optional-chaining": "npm:^7.28.6"
- "@babel/plugin-transform-parameters": "npm:^7.27.7"
- "@babel/plugin-transform-private-methods": "npm:^7.28.6"
- "@babel/plugin-transform-private-property-in-object": "npm:^7.28.6"
- "@babel/plugin-transform-property-literals": "npm:^7.27.1"
- "@babel/plugin-transform-regenerator": "npm:^7.29.0"
- "@babel/plugin-transform-regexp-modifiers": "npm:^7.28.6"
- "@babel/plugin-transform-reserved-words": "npm:^7.27.1"
- "@babel/plugin-transform-shorthand-properties": "npm:^7.27.1"
- "@babel/plugin-transform-spread": "npm:^7.28.6"
- "@babel/plugin-transform-sticky-regex": "npm:^7.27.1"
- "@babel/plugin-transform-template-literals": "npm:^7.27.1"
- "@babel/plugin-transform-typeof-symbol": "npm:^7.27.1"
- "@babel/plugin-transform-unicode-escapes": "npm:^7.27.1"
- "@babel/plugin-transform-unicode-property-regex": "npm:^7.28.6"
- "@babel/plugin-transform-unicode-regex": "npm:^7.27.1"
- "@babel/plugin-transform-unicode-sets-regex": "npm:^7.28.6"
- "@babel/preset-modules": "npm:0.1.6-no-external-plugins"
- babel-plugin-polyfill-corejs2: "npm:^0.4.15"
- babel-plugin-polyfill-corejs3: "npm:^0.14.0"
- babel-plugin-polyfill-regenerator: "npm:^0.6.6"
- core-js-compat: "npm:^3.48.0"
- semver: "npm:^6.3.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/08737e333a538703ba20e9e93b5bfbc01abbb9d3b2519b5b62ad05d3b6b92d79445b1dac91229b8cfcfb0b681b22b7c6fa88d7c1cc15df1690a23b21287f55b6
- languageName: node
- linkType: hard
-
-"@babel/preset-modules@npm:0.1.6-no-external-plugins":
- version: 0.1.6-no-external-plugins
- resolution: "@babel/preset-modules@npm:0.1.6-no-external-plugins"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.0.0"
- "@babel/types": "npm:^7.4.4"
- esutils: "npm:^2.0.2"
- peerDependencies:
- "@babel/core": ^7.0.0-0 || ^8.0.0-0 <8.0.0
- checksum: 10c0/9d02f70d7052446c5f3a4fb39e6b632695fb6801e46d31d7f7c5001f7c18d31d1ea8369212331ca7ad4e7877b73231f470b0d559162624128f1b80fe591409e6
- languageName: node
- linkType: hard
-
-"@babel/preset-react@npm:^7.22.15":
- version: 7.28.5
- resolution: "@babel/preset-react@npm:7.28.5"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/helper-validator-option": "npm:^7.27.1"
- "@babel/plugin-transform-react-display-name": "npm:^7.28.0"
- "@babel/plugin-transform-react-jsx": "npm:^7.27.1"
- "@babel/plugin-transform-react-jsx-development": "npm:^7.27.1"
- "@babel/plugin-transform-react-pure-annotations": "npm:^7.27.1"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/0d785e708ff301f4102bd4738b77e550e32f981e54dfd3de1191b4d68306bbb934d2d465fc78a6bc22fff0a6b3ce3195a53984f52755c4349e7264c7e01e8c7c
- languageName: node
- linkType: hard
-
-"@babel/preset-typescript@npm:^7.23.0":
- version: 7.28.5
- resolution: "@babel/preset-typescript@npm:7.28.5"
- dependencies:
- "@babel/helper-plugin-utils": "npm:^7.27.1"
- "@babel/helper-validator-option": "npm:^7.27.1"
- "@babel/plugin-syntax-jsx": "npm:^7.27.1"
- "@babel/plugin-transform-modules-commonjs": "npm:^7.27.1"
- "@babel/plugin-transform-typescript": "npm:^7.28.5"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/b3d55548854c105085dd80f638147aa8295bc186d70492289242d6c857cb03a6c61ec15186440ea10ed4a71cdde7d495f5eb3feda46273f36b0ac926e8409629
- languageName: node
- linkType: hard
-
-"@babel/runtime@npm:^7.12.5":
- version: 7.26.0
- resolution: "@babel/runtime@npm:7.26.0"
- dependencies:
- regenerator-runtime: "npm:^0.14.0"
- checksum: 10c0/12c01357e0345f89f4f7e8c0e81921f2a3e3e101f06e8eaa18a382b517376520cd2fa8c237726eb094dab25532855df28a7baaf1c26342b52782f6936b07c287
- languageName: node
- linkType: hard
-
-"@babel/runtime@npm:^7.13.9":
- version: 7.19.4
- resolution: "@babel/runtime@npm:7.19.4"
- dependencies:
- regenerator-runtime: "npm:^0.13.4"
- checksum: 10c0/3ad7f298262cf1f060a3bf2be9f65afa3c034c9c7a2e7c9d3ec41ab58c944c86756d0e0fdfc08d178f983f48d6b5613c15253d83216fbe02b6141c13d28f12e5
- languageName: node
- linkType: hard
-
-"@babel/runtime@npm:^7.23.2, @babel/runtime@npm:^7.25.0":
- version: 7.26.9
- resolution: "@babel/runtime@npm:7.26.9"
- dependencies:
- regenerator-runtime: "npm:^0.14.0"
- checksum: 10c0/e8517131110a6ec3a7360881438b85060e49824e007f4a64b5dfa9192cf2bb5c01e84bfc109f02d822c7edb0db926928dd6b991e3ee460b483fb0fac43152d9b
- languageName: node
- linkType: hard
-
-"@babel/runtime@npm:^7.26.10":
- version: 7.27.4
- resolution: "@babel/runtime@npm:7.27.4"
- checksum: 10c0/ca99e964179c31615e1352e058cc9024df7111c829631c90eec84caba6703cc32acc81503771847c306b3c70b815609fe82dde8682936debe295b0b283b2dc6e
- languageName: node
- linkType: hard
-
-"@babel/runtime@npm:^7.28.4":
- version: 7.28.4
- resolution: "@babel/runtime@npm:7.28.4"
- checksum: 10c0/792ce7af9750fb9b93879cc9d1db175701c4689da890e6ced242ea0207c9da411ccf16dc04e689cc01158b28d7898c40d75598f4559109f761c12ce01e959bf7
- languageName: node
- linkType: hard
-
-"@babel/template@npm:^7.25.9":
- version: 7.26.9
- resolution: "@babel/template@npm:7.26.9"
- dependencies:
- "@babel/code-frame": "npm:^7.26.2"
- "@babel/parser": "npm:^7.26.9"
- "@babel/types": "npm:^7.26.9"
- checksum: 10c0/019b1c4129cc01ad63e17529089c2c559c74709d225f595eee017af227fee11ae8a97a6ab19ae6768b8aa22d8d75dcb60a00b28f52e9fa78140672d928bc1ae9
- languageName: node
- linkType: hard
-
-"@babel/template@npm:^7.27.1, @babel/template@npm:^7.27.2":
- version: 7.27.2
- resolution: "@babel/template@npm:7.27.2"
- dependencies:
- "@babel/code-frame": "npm:^7.27.1"
- "@babel/parser": "npm:^7.27.2"
- "@babel/types": "npm:^7.27.1"
- checksum: 10c0/ed9e9022651e463cc5f2cc21942f0e74544f1754d231add6348ff1b472985a3b3502041c0be62dc99ed2d12cfae0c51394bf827452b98a2f8769c03b87aadc81
- languageName: node
- linkType: hard
-
-"@babel/template@npm:^7.28.6":
- version: 7.28.6
- resolution: "@babel/template@npm:7.28.6"
- dependencies:
- "@babel/code-frame": "npm:^7.28.6"
- "@babel/parser": "npm:^7.28.6"
- "@babel/types": "npm:^7.28.6"
- checksum: 10c0/66d87225ed0bc77f888181ae2d97845021838c619944877f7c4398c6748bcf611f216dfd6be74d39016af502bca876e6ce6873db3c49e4ac354c56d34d57e9f5
- languageName: node
- linkType: hard
-
-"@babel/traverse@npm:^7.10.3":
- version: 7.25.9
- resolution: "@babel/traverse@npm:7.25.9"
- dependencies:
- "@babel/code-frame": "npm:^7.25.9"
- "@babel/generator": "npm:^7.25.9"
- "@babel/parser": "npm:^7.25.9"
- "@babel/template": "npm:^7.25.9"
- "@babel/types": "npm:^7.25.9"
- debug: "npm:^4.3.1"
- globals: "npm:^11.1.0"
- checksum: 10c0/e90be586a714da4adb80e6cb6a3c5cfcaa9b28148abdafb065e34cc109676fc3db22cf98cd2b2fff66ffb9b50c0ef882cab0f466b6844be0f6c637b82719bba1
- languageName: node
- linkType: hard
-
-"@babel/traverse@npm:^7.27.1, @babel/traverse@npm:^7.27.3":
- version: 7.27.3
- resolution: "@babel/traverse@npm:7.27.3"
- dependencies:
- "@babel/code-frame": "npm:^7.27.1"
- "@babel/generator": "npm:^7.27.3"
- "@babel/parser": "npm:^7.27.3"
- "@babel/template": "npm:^7.27.2"
- "@babel/types": "npm:^7.27.3"
- debug: "npm:^4.3.1"
- globals: "npm:^11.1.0"
- checksum: 10c0/63edf0755cc7307470fefeca69c5205b259eaf45df79a4f7be0f28d8937d916bfb090ad9ffbc62edd7e1bbc4309c1f202a9a6904ed3af847504bcefd5ac58c16
- languageName: node
- linkType: hard
-
-"@babel/traverse@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/traverse@npm:7.28.5"
- dependencies:
- "@babel/code-frame": "npm:^7.27.1"
- "@babel/generator": "npm:^7.28.5"
- "@babel/helper-globals": "npm:^7.28.0"
- "@babel/parser": "npm:^7.28.5"
- "@babel/template": "npm:^7.27.2"
- "@babel/types": "npm:^7.28.5"
- debug: "npm:^4.3.1"
- checksum: 10c0/f6c4a595993ae2b73f2d4cd9c062f2e232174d293edd4abe1d715bd6281da8d99e47c65857e8d0917d9384c65972f4acdebc6749a7c40a8fcc38b3c7fb3e706f
- languageName: node
- linkType: hard
-
-"@babel/traverse@npm:^7.28.6, @babel/traverse@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/traverse@npm:7.29.0"
- dependencies:
- "@babel/code-frame": "npm:^7.29.0"
- "@babel/generator": "npm:^7.29.0"
- "@babel/helper-globals": "npm:^7.28.0"
- "@babel/parser": "npm:^7.29.0"
- "@babel/template": "npm:^7.28.6"
- "@babel/types": "npm:^7.29.0"
- debug: "npm:^4.3.1"
- checksum: 10c0/f63ef6e58d02a9fbf3c0e2e5f1c877da3e0bc57f91a19d2223d53e356a76859cbaf51171c9211c71816d94a0e69efa2732fd27ffc0e1bbc84b636e60932333eb
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.0.0, @babel/types@npm:^7.10.3, @babel/types@npm:^7.20.7, @babel/types@npm:^7.21.3":
- version: 7.26.0
- resolution: "@babel/types@npm:7.26.0"
- dependencies:
- "@babel/helper-string-parser": "npm:^7.25.9"
- "@babel/helper-validator-identifier": "npm:^7.25.9"
- checksum: 10c0/b694f41ad1597127e16024d766c33a641508aad037abd08d0d1f73af753e1119fa03b4a107d04b5f92cc19c095a594660547ae9bead1db2299212d644b0a5cb8
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.25.9, @babel/types@npm:^7.26.5, @babel/types@npm:^7.26.9, @babel/types@npm:^7.4.4":
- version: 7.26.9
- resolution: "@babel/types@npm:7.26.9"
- dependencies:
- "@babel/helper-string-parser": "npm:^7.25.9"
- "@babel/helper-validator-identifier": "npm:^7.25.9"
- checksum: 10c0/999c56269ba00e5c57aa711fbe7ff071cd6990bafd1b978341ea7572cc78919986e2aa6ee51dacf4b6a7a6fa63ba4eb3f1a03cf55eee31b896a56d068b895964
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.26.0, @babel/types@npm:^7.26.3":
- version: 7.26.5
- resolution: "@babel/types@npm:7.26.5"
- dependencies:
- "@babel/helper-string-parser": "npm:^7.25.9"
- "@babel/helper-validator-identifier": "npm:^7.25.9"
- checksum: 10c0/0278053b69d7c2b8573aa36dc5242cad95f0d965e1c0ed21ccacac6330092e59ba5949753448f6d6eccf6ad59baaef270295cc05218352e060ea8c68388638c4
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.27.1, @babel/types@npm:^7.27.3":
- version: 7.27.3
- resolution: "@babel/types@npm:7.27.3"
- dependencies:
- "@babel/helper-string-parser": "npm:^7.27.1"
- "@babel/helper-validator-identifier": "npm:^7.27.1"
- checksum: 10c0/bafdfc98e722a6b91a783b6f24388f478fd775f0c0652e92220e08be2cc33e02d42088542f1953ac5e5ece2ac052172b3dadedf12bec9aae57899e92fb9a9757
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.28.5":
- version: 7.28.5
- resolution: "@babel/types@npm:7.28.5"
- dependencies:
- "@babel/helper-string-parser": "npm:^7.27.1"
- "@babel/helper-validator-identifier": "npm:^7.28.5"
- checksum: 10c0/a5a483d2100befbf125793640dec26b90b95fd233a94c19573325898a5ce1e52cdfa96e495c7dcc31b5eca5b66ce3e6d4a0f5a4a62daec271455959f208ab08a
- languageName: node
- linkType: hard
-
-"@babel/types@npm:^7.28.6, @babel/types@npm:^7.29.0":
- version: 7.29.0
- resolution: "@babel/types@npm:7.29.0"
- dependencies:
- "@babel/helper-string-parser": "npm:^7.27.1"
- "@babel/helper-validator-identifier": "npm:^7.28.5"
- checksum: 10c0/23cc3466e83bcbfab8b9bd0edaafdb5d4efdb88b82b3be6728bbade5ba2f0996f84f63b1c5f7a8c0d67efded28300898a5f930b171bb40b311bca2029c4e9b4f
- languageName: node
- linkType: hard
-
-"@bcoe/v8-coverage@npm:^1.0.2":
- version: 1.0.2
- resolution: "@bcoe/v8-coverage@npm:1.0.2"
- checksum: 10c0/1eb1dc93cc17fb7abdcef21a6e7b867d6aa99a7ec88ec8207402b23d9083ab22a8011213f04b2cf26d535f1d22dc26139b7929e6c2134c254bd1e14ba5e678c3
- languageName: node
- linkType: hard
-
-"@bufbuild/protobuf@npm:^1.10.0":
- version: 1.10.0
- resolution: "@bufbuild/protobuf@npm:1.10.0"
- checksum: 10c0/5487b9c2e63846d0e3bde4d025cc77ae44a22166a5d6c184df0da5581e1ab6d66dd115af0ccad814576dcd011bb1b93989fb0ac1eb4ae452979bb8b186693ba0
- languageName: node
- linkType: hard
-
-"@codecov/bundler-plugin-core@npm:^1.9.1":
- version: 1.9.1
- resolution: "@codecov/bundler-plugin-core@npm:1.9.1"
- dependencies:
- "@actions/core": "npm:^1.10.1"
- "@actions/github": "npm:^6.0.0"
- chalk: "npm:4.1.2"
- semver: "npm:^7.5.4"
- unplugin: "npm:^1.10.1"
- zod: "npm:^3.22.4"
- checksum: 10c0/82366e6a0c7ee1c1c810b71c1773ea12ba3c395d812d3172f3155cf2930eae1bb8d2fe660be3d0c2e60eb0f6db2bbf4b5d327344d846523d3e54848549b55aee
- languageName: node
- linkType: hard
-
-"@codecov/vite-plugin@npm:^1.3.0":
- version: 1.9.1
- resolution: "@codecov/vite-plugin@npm:1.9.1"
- dependencies:
- "@codecov/bundler-plugin-core": "npm:^1.9.1"
- unplugin: "npm:^1.10.1"
- peerDependencies:
- vite: 4.x || 5.x || 6.x
- checksum: 10c0/b4e640a23f4af4a140038a68a1fbc8d4de555d7064c68d8f5dbd0d99c983a66113f9262035f98f4fd8ecadf93f4d7daf1aafd1f138f947edf4f6c24c26475571
- languageName: node
- linkType: hard
-
-"@csstools/cascade-layer-name-parser@npm:^2.0.5":
- version: 2.0.5
- resolution: "@csstools/cascade-layer-name-parser@npm:2.0.5"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^3.0.5
- "@csstools/css-tokenizer": ^3.0.4
- checksum: 10c0/b6c73d5c8132f922edc88b9df5272c93c9753945f1e1077b80d03b314076ffe03c2cc9bf6cbc85501ee7c7f27e477263df96997c9125fd2fd0cfe82fe2d7c141
- languageName: node
- linkType: hard
-
-"@csstools/color-helpers@npm:^5.0.1":
- version: 5.0.1
- resolution: "@csstools/color-helpers@npm:5.0.1"
- checksum: 10c0/77fa3b7236eaa3f36dea24708ac0d5e53168903624ac5aed54615752a0730cd20773fda50e742ce868012eca8c000cc39688e05869e79f34714230ab6968d1e6
- languageName: node
- linkType: hard
-
-"@csstools/color-helpers@npm:^5.1.0":
- version: 5.1.0
- resolution: "@csstools/color-helpers@npm:5.1.0"
- checksum: 10c0/b7f99d2e455cf1c9b41a67a5327d5d02888cd5c8802a68b1887dffef537d9d4bc66b3c10c1e62b40bbed638b6c1d60b85a232f904ed7b39809c4029cb36567db
- languageName: node
- linkType: hard
-
-"@csstools/css-calc@npm:^2.1.1":
- version: 2.1.1
- resolution: "@csstools/css-calc@npm:2.1.1"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^3.0.4
- "@csstools/css-tokenizer": ^3.0.3
- checksum: 10c0/857c8dac40eb6ba8810408dad141bbcad060b28bce69dfd3bcf095a060fcaa23d5c4dbf52be88fcb57e12ce32c666e855dc68de1d8020851f6b432e3f9b29950
- languageName: node
- linkType: hard
-
-"@csstools/css-calc@npm:^2.1.4":
- version: 2.1.4
- resolution: "@csstools/css-calc@npm:2.1.4"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^3.0.5
- "@csstools/css-tokenizer": ^3.0.4
- checksum: 10c0/42ce5793e55ec4d772083808a11e9fb2dfe36db3ec168713069a276b4c3882205b3507c4680224c28a5d35fe0bc2d308c77f8f2c39c7c09aad8747708eb8ddd8
- languageName: node
- linkType: hard
-
-"@csstools/css-color-parser@npm:^3.0.7":
- version: 3.0.7
- resolution: "@csstools/css-color-parser@npm:3.0.7"
- dependencies:
- "@csstools/color-helpers": "npm:^5.0.1"
- "@csstools/css-calc": "npm:^2.1.1"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^3.0.4
- "@csstools/css-tokenizer": ^3.0.3
- checksum: 10c0/b81780e6c50f0b0605776bd39bbd6203780231a561601853a9835cc70788560e7a281d0fbfe47ebe8affcb07dd64b0b1dcd4b67552520cfbe0e5088df158f12c
- languageName: node
- linkType: hard
-
-"@csstools/css-color-parser@npm:^3.1.0":
- version: 3.1.0
- resolution: "@csstools/css-color-parser@npm:3.1.0"
- dependencies:
- "@csstools/color-helpers": "npm:^5.1.0"
- "@csstools/css-calc": "npm:^2.1.4"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^3.0.5
- "@csstools/css-tokenizer": ^3.0.4
- checksum: 10c0/0e0c670ad54ec8ec4d9b07568b80defd83b9482191f5e8ca84ab546b7be6db5d7cc2ba7ac9fae54488b129a4be235d6183d3aab4416fec5e89351f73af4222c5
- languageName: node
- linkType: hard
-
-"@csstools/css-parser-algorithms@npm:^3.0.4":
- version: 3.0.4
- resolution: "@csstools/css-parser-algorithms@npm:3.0.4"
- peerDependencies:
- "@csstools/css-tokenizer": ^3.0.3
- checksum: 10c0/d411f07765e14eede17bccc6bd4f90ff303694df09aabfede3fd104b2dfacfd4fe3697cd25ddad14684c850328f3f9420ebfa9f78380892492974db24ae47dbd
- languageName: node
- linkType: hard
-
-"@csstools/css-parser-algorithms@npm:^3.0.5":
- version: 3.0.5
- resolution: "@csstools/css-parser-algorithms@npm:3.0.5"
- peerDependencies:
- "@csstools/css-tokenizer": ^3.0.4
- checksum: 10c0/d9a1c888bd43849ae3437ca39251d5c95d2c8fd6b5ccdb7c45491dfd2c1cbdc3075645e80901d120e4d2c1993db9a5b2d83793b779dbbabcfb132adb142eb7f7
- languageName: node
- linkType: hard
-
-"@csstools/css-tokenizer@npm:^3.0.3":
- version: 3.0.3
- resolution: "@csstools/css-tokenizer@npm:3.0.3"
- checksum: 10c0/c31bf410e1244b942e71798e37c54639d040cb59e0121b21712b40015fced2b0fb1ffe588434c5f8923c9cd0017cfc1c1c8f3921abc94c96edf471aac2eba5e5
- languageName: node
- linkType: hard
-
-"@csstools/css-tokenizer@npm:^3.0.4":
- version: 3.0.4
- resolution: "@csstools/css-tokenizer@npm:3.0.4"
- checksum: 10c0/3b589f8e9942075a642213b389bab75a2d50d05d203727fcdac6827648a5572674caff07907eff3f9a2389d86a4ee47308fafe4f8588f4a77b7167c588d2559f
- languageName: node
- linkType: hard
-
-"@csstools/media-query-list-parser@npm:^4.0.3":
- version: 4.0.3
- resolution: "@csstools/media-query-list-parser@npm:4.0.3"
- peerDependencies:
- "@csstools/css-parser-algorithms": ^3.0.5
- "@csstools/css-tokenizer": ^3.0.4
- checksum: 10c0/e29d856d57e9a036694662163179fc061a99579f05e7c3c35438b3e063790ae8a9ee9f1fb4b4693d8fc7672ae0801764fe83762ab7b9df2921fcc6172cfd5584
- languageName: node
- linkType: hard
-
-"@csstools/postcss-alpha-function@npm:^1.0.1":
- version: 1.0.1
- resolution: "@csstools/postcss-alpha-function@npm:1.0.1"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/35ca209e572534ade21ac5c18aad702aa492eb39e2d0e475f441371063418fe9650554e6a59b1318d3a615da83ef54d9a588faa27063ecc0a568ef7290a6b488
- languageName: node
- linkType: hard
-
-"@csstools/postcss-cascade-layers@npm:^5.0.2":
- version: 5.0.2
- resolution: "@csstools/postcss-cascade-layers@npm:5.0.2"
- dependencies:
- "@csstools/selector-specificity": "npm:^5.0.0"
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/dd8e29cfd3a93932fa35e3a59aa62fd2e720772d450f40f38f65ce1e736e2fe839635eb6f033abcc8ee8bc2856161a297f4458b352b26d2216856feb03176612
- languageName: node
- linkType: hard
-
-"@csstools/postcss-color-function-display-p3-linear@npm:^1.0.1":
- version: 1.0.1
- resolution: "@csstools/postcss-color-function-display-p3-linear@npm:1.0.1"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/d02d45410c9257f5620c766f861f8fa3762b74ef01fdba8060b33a4c98f929e2219cd476b25bd4181ac186158a4d99a0da555c0b6ba45a7ac4a3a5885baad1f5
- languageName: node
- linkType: hard
-
-"@csstools/postcss-color-function@npm:^4.0.12":
- version: 4.0.12
- resolution: "@csstools/postcss-color-function@npm:4.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/a355b04d90f89c8e37a4a23543151558060acc68fb2e7d1c3549bebeeae2b147eec26af1fbc6ee690f0ba4830263f2d181f5331d16d3483b5542be46996fa755
- languageName: node
- linkType: hard
-
-"@csstools/postcss-color-mix-function@npm:^3.0.12":
- version: 3.0.12
- resolution: "@csstools/postcss-color-mix-function@npm:3.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/3e98a5118852083d1f87a3f842f78088192b1f9f08fdf1f3b3ef1e8969e18fdadc1e3bcac3d113a07c8917a7e8fa65fdec55a31df9a1b726c8d7ae89db86e8e5
- languageName: node
- linkType: hard
-
-"@csstools/postcss-color-mix-variadic-function-arguments@npm:^1.0.2":
- version: 1.0.2
- resolution: "@csstools/postcss-color-mix-variadic-function-arguments@npm:1.0.2"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/34073f0f0d33e4958f90763e692955a8e8c678b74284234497c4aa0d2143756e1b3616e0c09832caad498870e227ca0a681316afe3a71224fc40ade0ead1bdd9
- languageName: node
- linkType: hard
-
-"@csstools/postcss-content-alt-text@npm:^2.0.8":
- version: 2.0.8
- resolution: "@csstools/postcss-content-alt-text@npm:2.0.8"
- dependencies:
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/4c330cc2a1e434688a62613ecceb1434cd725ce024c1ad8d4a4c76b9839d1f3ea8566a8c6494921e2b46ec7feef6af8ed6548c216dcb8f0feab4b1d52c96228e
- languageName: node
- linkType: hard
-
-"@csstools/postcss-contrast-color-function@npm:^2.0.12":
- version: 2.0.12
- resolution: "@csstools/postcss-contrast-color-function@npm:2.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/b783ce948cdf1513ee238e9115b42881a8d3e5d13c16038601b1c470d661cfaeeece4eea29904fb9fcae878bad86f766810fa798a703ab9ad4b0cf276b173f8f
- languageName: node
- linkType: hard
-
-"@csstools/postcss-exponential-functions@npm:^2.0.9":
- version: 2.0.9
- resolution: "@csstools/postcss-exponential-functions@npm:2.0.9"
- dependencies:
- "@csstools/css-calc": "npm:^2.1.4"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/78ea627a87fb23e12616c4e54150363b0e8793064634983dbe0368a0aca1ff73206c2d1f29845773daaf42787e7d1f180ce1b57c43e2b0d10da450101f9f34b6
- languageName: node
- linkType: hard
-
-"@csstools/postcss-font-format-keywords@npm:^4.0.0":
- version: 4.0.0
- resolution: "@csstools/postcss-font-format-keywords@npm:4.0.0"
- dependencies:
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/eb794fb95fefcac75e606d185255e601636af177866a317b0c6b6c375055e7240be53918229fd8d4bba00df01bedd2256bdac2b0ad4a4c2ec64f9d27cd6ff639
- languageName: node
- linkType: hard
-
-"@csstools/postcss-gamut-mapping@npm:^2.0.11":
- version: 2.0.11
- resolution: "@csstools/postcss-gamut-mapping@npm:2.0.11"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/490b8ccf10e30879a4415afbdd3646e1cdac3671586b7916855cf47a536f3be75eed014396056bde6528e0cb76d904e79bad78afc0b499e837264cf22519d145
- languageName: node
- linkType: hard
-
-"@csstools/postcss-gradients-interpolation-method@npm:^5.0.12":
- version: 5.0.12
- resolution: "@csstools/postcss-gradients-interpolation-method@npm:5.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/70b3d6c7050ce882ed2281e71eb4493531ae8d55d21899920eeeb6c205d90aaf430419a66235484ccce3a1a1891367dfc0ef772f3866ae3a9d8ec5ddd0cfe894
- languageName: node
- linkType: hard
-
-"@csstools/postcss-hwb-function@npm:^4.0.12":
- version: 4.0.12
- resolution: "@csstools/postcss-hwb-function@npm:4.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/d0dac34da9d7ac654060b6b27690a419718e990b21ff3e63266ea59934a865bc6aeae8eb8e1ca3e227a8b2a208657e3ab70ccdf0437f1f09d21ab848bbffcaa2
- languageName: node
- linkType: hard
-
-"@csstools/postcss-ic-unit@npm:^4.0.4":
- version: 4.0.4
- resolution: "@csstools/postcss-ic-unit@npm:4.0.4"
- dependencies:
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/20168e70ecb4abf7a69e407d653b6c7c9c82f2c7b1da0920e1d035f62b5ef8552cc7f1b62e0dca318df13c348e79fba862e1a4bb0e9432119a82b10aeb511752
- languageName: node
- linkType: hard
-
-"@csstools/postcss-initial@npm:^2.0.1":
- version: 2.0.1
- resolution: "@csstools/postcss-initial@npm:2.0.1"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/dbff7084ef4f1c4647efe2b147001daf172003c15b5e22689f0540d03c8d362f2a332cd9cf136e6c8dcda7564ee30492a4267ea188f72cb9c1000fb9bcfbfef8
- languageName: node
- linkType: hard
-
-"@csstools/postcss-is-pseudo-class@npm:^5.0.3":
- version: 5.0.3
- resolution: "@csstools/postcss-is-pseudo-class@npm:5.0.3"
- dependencies:
- "@csstools/selector-specificity": "npm:^5.0.0"
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/7980f1cabf32850bac72552e4e9de47412359e36e259a92b9b9af25dae4cce42bbcc5fdca8f384a589565bf383ecb23dec3af9f084d8df18b82552318b2841b6
- languageName: node
- linkType: hard
-
-"@csstools/postcss-light-dark-function@npm:^2.0.11":
- version: 2.0.11
- resolution: "@csstools/postcss-light-dark-function@npm:2.0.11"
- dependencies:
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/0175be41bb0044a48bc98d5c55cce41ed6b9ada88253c5f20d0ca17287cba4b429742b458ac5744675b9a286109e13ac51d64e226ab16040d7b051ba64c0c77b
- languageName: node
- linkType: hard
-
-"@csstools/postcss-logical-float-and-clear@npm:^3.0.0":
- version: 3.0.0
- resolution: "@csstools/postcss-logical-float-and-clear@npm:3.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/71a20e8c37877bf68ae615d7bb93fc11b4f8da8be8b1dc1a6e0fc69e27f189712ed71436b8ed51fa69fdb98b8e6718df2b5f42f246c4d39badaf0e43020fcfd4
- languageName: node
- linkType: hard
-
-"@csstools/postcss-logical-overflow@npm:^2.0.0":
- version: 2.0.0
- resolution: "@csstools/postcss-logical-overflow@npm:2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/0e103343d3ff8b34eef01b02355c5e010d272fd12d149a242026bb13ab1577b7f3a11fd4514be9342d96f73d61dac1f093a9bd36ece591753ed09a84eb7fca0a
- languageName: node
- linkType: hard
-
-"@csstools/postcss-logical-overscroll-behavior@npm:^2.0.0":
- version: 2.0.0
- resolution: "@csstools/postcss-logical-overscroll-behavior@npm:2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/1649601bb26f04d760fb5ebc42cdf414fa2a380b8ec22fe1c117f664c286665a786bd7bbda01b7e7567eaf3cc018a4f36a5c9805f6751cc497da223e0ffe9524
- languageName: node
- linkType: hard
-
-"@csstools/postcss-logical-resize@npm:^3.0.0":
- version: 3.0.0
- resolution: "@csstools/postcss-logical-resize@npm:3.0.0"
- dependencies:
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/4f12efcaf5468ff359bb3f32f0f66034b9acc9b3ac21fcd2f30a1c8998fc653ebac0091f35c8b7e8dbfe6ccf595aee67f9b06a67adf45a8844e49a82d98b4386
- languageName: node
- linkType: hard
-
-"@csstools/postcss-logical-viewport-units@npm:^3.0.4":
- version: 3.0.4
- resolution: "@csstools/postcss-logical-viewport-units@npm:3.0.4"
- dependencies:
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/f0b5ba38acde3bf0ca880c6e0a883950c99fa9919b0e6290c894d5716569663590f26aa1170fd9483ce14544e46afac006ab3b02781410d5e7c8dd1467c674ce
- languageName: node
- linkType: hard
-
-"@csstools/postcss-media-minmax@npm:^2.0.9":
- version: 2.0.9
- resolution: "@csstools/postcss-media-minmax@npm:2.0.9"
- dependencies:
- "@csstools/css-calc": "npm:^2.1.4"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/media-query-list-parser": "npm:^4.0.3"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/d82622ee9de6eacba1abbf31718cd58759d158ed8a575f36f08e982d07a7d83e51fb184178b96c6f7b76cb333bb33cac04d06a750b6b9c5c43ae1c56232880f9
- languageName: node
- linkType: hard
-
-"@csstools/postcss-media-queries-aspect-ratio-number-values@npm:^3.0.5":
- version: 3.0.5
- resolution: "@csstools/postcss-media-queries-aspect-ratio-number-values@npm:3.0.5"
- dependencies:
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/media-query-list-parser": "npm:^4.0.3"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/a47abdaa7f4b26596bd9d6bb77aed872a232fc12bd144d2c062d9da626e8dfd8336e2fff67617dba61a1666c2b8027145b390d70d5cd4d4f608604e077cfb04e
- languageName: node
- linkType: hard
-
-"@csstools/postcss-nested-calc@npm:^4.0.0":
- version: 4.0.0
- resolution: "@csstools/postcss-nested-calc@npm:4.0.0"
- dependencies:
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/fb61512fa4909bdf0ee32a23e771145086c445f2208a737b52093c8adfab7362c56d3aeaf2a6e33ffcec067e99a07219775465d2fbb1a3ac30cdcfb278b218b7
- languageName: node
- linkType: hard
-
-"@csstools/postcss-normalize-display-values@npm:^4.0.1":
- version: 4.0.1
- resolution: "@csstools/postcss-normalize-display-values@npm:4.0.1"
- dependencies:
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/5d19364bad8554b047cebd94ad7e203723ed76abaf690e4b92c74e6fc7c3642cb8858ade3263da61aff26d97bb258af567b1036e97865b7aa3b17522241fd1e1
- languageName: node
- linkType: hard
-
-"@csstools/postcss-oklab-function@npm:^4.0.12":
- version: 4.0.12
- resolution: "@csstools/postcss-oklab-function@npm:4.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/40d4f51b568c8299c054f8971d0e85fa7da609ba23ce6c84dc17e16bc3838640ed6da75c3886dc9a96a11005773c6e23cba13a5510c781b2d633d07ad7bda6b7
- languageName: node
- linkType: hard
-
-"@csstools/postcss-position-area-property@npm:^1.0.0":
- version: 1.0.0
- resolution: "@csstools/postcss-position-area-property@npm:1.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/38f770454d46bfed01d43a3f5e7ac07d3111399b374a7198ae6503cdb6288e410c7b4199f5a7af8f16aeb688216445ade97be417c084313d6c56f55e50d34559
- languageName: node
- linkType: hard
-
-"@csstools/postcss-progressive-custom-properties@npm:^4.2.1":
- version: 4.2.1
- resolution: "@csstools/postcss-progressive-custom-properties@npm:4.2.1"
- dependencies:
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/56e9a147799719fd5c550c035437693dd50cdfef46d66a4f2ce8f196e1006a096aa47d412710a89c3dc9808068a0a101c7f607a507ed68e925580c6f921e84d5
- languageName: node
- linkType: hard
-
-"@csstools/postcss-property-rule-prelude-list@npm:^1.0.0":
- version: 1.0.0
- resolution: "@csstools/postcss-property-rule-prelude-list@npm:1.0.0"
- dependencies:
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/ae8bbca3a77ca59c21c11899a904f9d9417a19a3359d01dee042e0489b7ddfe7cea13ae275b7e7936d9b0b99c0a13f7f685f962cd63ca3d3d2b6e5eacc293a0d
- languageName: node
- linkType: hard
-
-"@csstools/postcss-random-function@npm:^2.0.1":
- version: 2.0.1
- resolution: "@csstools/postcss-random-function@npm:2.0.1"
- dependencies:
- "@csstools/css-calc": "npm:^2.1.4"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/475bacf685b8bb82942d388e9e3b95f4156800f370299f19f5acc490475dc2813100de81a5a6bf48b696b4d83247622005b616af3166a668556b4b1aceded70d
- languageName: node
- linkType: hard
-
-"@csstools/postcss-relative-color-syntax@npm:^3.0.12":
- version: 3.0.12
- resolution: "@csstools/postcss-relative-color-syntax@npm:3.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/11af386c8193e22c148ac034eee94c56da3060bdbde3196d2d641b088e12de35bef187bcd7d421f9e4d49c4f1cfc28b24e136e62107e02ed7007a3a28f635d06
- languageName: node
- linkType: hard
-
-"@csstools/postcss-scope-pseudo-class@npm:^4.0.1":
- version: 4.0.1
- resolution: "@csstools/postcss-scope-pseudo-class@npm:4.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/6a0ca50fae655f4498200d1ce298ca794c85fbe2e3fd5d6419843254f055df5007a973e09b5f1e78e376c02b54278e411516c8d824300c68b265d3e5b311d7ee
- languageName: node
- linkType: hard
-
-"@csstools/postcss-sign-functions@npm:^1.1.4":
- version: 1.1.4
- resolution: "@csstools/postcss-sign-functions@npm:1.1.4"
- dependencies:
- "@csstools/css-calc": "npm:^2.1.4"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/ff58108b2527832a84c571a1f40224b5c8d2afa8db2fe3b1e3599ff6f3469d9f4c528a70eb3c25c5d7801e30474fabfec04e7c23bfdad8572ad492053cd4f899
- languageName: node
- linkType: hard
-
-"@csstools/postcss-stepped-value-functions@npm:^4.0.9":
- version: 4.0.9
- resolution: "@csstools/postcss-stepped-value-functions@npm:4.0.9"
- dependencies:
- "@csstools/css-calc": "npm:^2.1.4"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/f143ca06338c30abb2aa37adc3d7e43a78f3b4493093160cb5babe3ec8cf6b86d83876746ee8e162db87b5e9af6e0066958d89fe8b4a503a29568e5c57c1bf8a
- languageName: node
- linkType: hard
-
-"@csstools/postcss-syntax-descriptor-syntax-production@npm:^1.0.1":
- version: 1.0.1
- resolution: "@csstools/postcss-syntax-descriptor-syntax-production@npm:1.0.1"
- dependencies:
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/b9b3d84a50b86b1af1b8b7e56a64d5eebc1c89c323a5263306c5c69ddb05a4d468d7072a7786b0ea6601629035df0089565e9d98d55d0f4eb7201cf7ed1bb3e9
- languageName: node
- linkType: hard
-
-"@csstools/postcss-system-ui-font-family@npm:^1.0.0":
- version: 1.0.0
- resolution: "@csstools/postcss-system-ui-font-family@npm:1.0.0"
- dependencies:
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/6a81761ae3cae643659b1416a7a892cf1505474896193b8abc26cff319cb6b1a20b64c5330d64019fba458e058da3abc9407d0ebf0c102289c0b79ef99b4c6d6
- languageName: node
- linkType: hard
-
-"@csstools/postcss-text-decoration-shorthand@npm:^4.0.3":
- version: 4.0.3
- resolution: "@csstools/postcss-text-decoration-shorthand@npm:4.0.3"
- dependencies:
- "@csstools/color-helpers": "npm:^5.1.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/f6af7d5dcf599edcf76c5e396ef2d372bbe1c1f3fbaaccd91e91049e64b6ff68b44f459277aef0a8110baca3eaa21275012adc52ccb8c0fc526a4c35577f8fce
- languageName: node
- linkType: hard
-
-"@csstools/postcss-trigonometric-functions@npm:^4.0.9":
- version: 4.0.9
- resolution: "@csstools/postcss-trigonometric-functions@npm:4.0.9"
- dependencies:
- "@csstools/css-calc": "npm:^2.1.4"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/6ba3d381c977c224f01d47a36f78c9b99d3b89d060a357a9f8840537fdf497d9587a28165dc74e96abdf02f8db0a277d3558646355085a74c8915ee73c6780d1
- languageName: node
- linkType: hard
-
-"@csstools/postcss-unset-value@npm:^4.0.0":
- version: 4.0.0
- resolution: "@csstools/postcss-unset-value@npm:4.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/8424ac700ded5bf59d49310335896f10c069e2c3fc6a676b5d13ca5a6fb78689b948f50494df875da284c4c76651deb005eafba70d87e693274628c5a685abfa
- languageName: node
- linkType: hard
-
-"@csstools/selector-resolve-nested@npm:^3.1.0":
- version: 3.1.0
- resolution: "@csstools/selector-resolve-nested@npm:3.1.0"
- peerDependencies:
- postcss-selector-parser: ^7.0.0
- checksum: 10c0/c2b1a930ad03c1427ab90b28c4940424fb39e8175130148f16209be3a3937f7a146d5483ca1da1dfc100aa7ae86df713f0ee82d4bbaa9b986e7f47f35cb67cca
- languageName: node
- linkType: hard
-
-"@csstools/selector-specificity@npm:^5.0.0":
- version: 5.0.0
- resolution: "@csstools/selector-specificity@npm:5.0.0"
- peerDependencies:
- postcss-selector-parser: ^7.0.0
- checksum: 10c0/186b444cabcdcdeb553bfe021f80c58bfe9ef38dcc444f2b1f34a5aab9be063ab4e753022b2d5792049c041c28cfbb78e4b707ec398459300e402030d35c07eb
- languageName: node
- linkType: hard
-
-"@csstools/utilities@npm:^2.0.0":
- version: 2.0.0
- resolution: "@csstools/utilities@npm:2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/be5c31437b726928f64cd4bb3e47f5b90bfd2e2a69a8eaabd8e89cc6c0977e4f0f7ee48de50c8ed8b07e04e3956a02293247e0da3236d521fb2e836f88f65822
- languageName: node
- linkType: hard
-
-"@emnapi/core@npm:^1.7.1":
- version: 1.8.0
- resolution: "@emnapi/core@npm:1.8.0"
- dependencies:
- "@emnapi/wasi-threads": "npm:1.1.0"
- tslib: "npm:^2.4.0"
- checksum: 10c0/4bb07df0a6ba6478bd4bee2a3609df1f9ef835588227261e9d8ef40f25a9e7596d837f663a4b2c2193d7e8a130370cab5a8063255d81c30903a8c167435d2687
- languageName: node
- linkType: hard
-
-"@emnapi/runtime@npm:^1.7.1":
- version: 1.8.0
- resolution: "@emnapi/runtime@npm:1.8.0"
- dependencies:
- tslib: "npm:^2.4.0"
- checksum: 10c0/25330ade92c48d19f4dc896ecfe906a45c95bd2d3d4155fcf4934e796703f90f23c8f2e7466be44ec734b68ea3e50f64831647d75e1bd44aebbbe1ca870f932a
- languageName: node
- linkType: hard
-
-"@emnapi/wasi-threads@npm:1.1.0":
- version: 1.1.0
- resolution: "@emnapi/wasi-threads@npm:1.1.0"
- dependencies:
- tslib: "npm:^2.4.0"
- checksum: 10c0/e6d54bf2b1e64cdd83d2916411e44e579b6ae35d5def0dea61a3c452d9921373044dff32a8b8473ae60c80692bdc39323e98b96a3f3d87ba6886b24dd0ef7ca1
- languageName: node
- linkType: hard
-
-"@es-joy/jsdoccomment@npm:~0.78.0":
- version: 0.78.0
- resolution: "@es-joy/jsdoccomment@npm:0.78.0"
- dependencies:
- "@types/estree": "npm:^1.0.8"
- "@typescript-eslint/types": "npm:^8.46.4"
- comment-parser: "npm:1.4.1"
- esquery: "npm:^1.6.0"
- jsdoc-type-pratt-parser: "npm:~7.0.0"
- checksum: 10c0/be18b8149303e8e7c9414b0b0453a0fa959c1c8db6f721b75178336e01b65a9f251db98ecfedfb1b3cfa5e717f3e2abdb06a0f8dbe45d3330a62262c5331c327
- languageName: node
- linkType: hard
-
-"@es-joy/resolve.exports@npm:1.2.0":
- version: 1.2.0
- resolution: "@es-joy/resolve.exports@npm:1.2.0"
- checksum: 10c0/7e4713471f5eccb17a925a12415a2d9e372a42376813a19f6abd9c35e8d01ab1403777265817da67c6150cffd4f558d9ad51e26a8de6911dad89d9cb7eedacd8
- languageName: node
- linkType: hard
-
-"@esbuild/aix-ppc64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/aix-ppc64@npm:0.25.1"
- conditions: os=aix & cpu=ppc64
- languageName: node
- linkType: hard
-
-"@esbuild/aix-ppc64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/aix-ppc64@npm:0.27.2"
- conditions: os=aix & cpu=ppc64
- languageName: node
- linkType: hard
-
-"@esbuild/android-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/android-arm64@npm:0.25.1"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/android-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/android-arm64@npm:0.27.2"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/android-arm@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/android-arm@npm:0.25.1"
- conditions: os=android & cpu=arm
- languageName: node
- linkType: hard
-
-"@esbuild/android-arm@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/android-arm@npm:0.27.2"
- conditions: os=android & cpu=arm
- languageName: node
- linkType: hard
-
-"@esbuild/android-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/android-x64@npm:0.25.1"
- conditions: os=android & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/android-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/android-x64@npm:0.27.2"
- conditions: os=android & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/darwin-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/darwin-arm64@npm:0.25.1"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/darwin-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/darwin-arm64@npm:0.27.2"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/darwin-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/darwin-x64@npm:0.25.1"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/darwin-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/darwin-x64@npm:0.27.2"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/freebsd-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/freebsd-arm64@npm:0.25.1"
- conditions: os=freebsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/freebsd-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/freebsd-arm64@npm:0.27.2"
- conditions: os=freebsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/freebsd-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/freebsd-x64@npm:0.25.1"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/freebsd-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/freebsd-x64@npm:0.27.2"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-arm64@npm:0.25.1"
- conditions: os=linux & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-arm64@npm:0.27.2"
- conditions: os=linux & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-arm@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-arm@npm:0.25.1"
- conditions: os=linux & cpu=arm
- languageName: node
- linkType: hard
-
-"@esbuild/linux-arm@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-arm@npm:0.27.2"
- conditions: os=linux & cpu=arm
- languageName: node
- linkType: hard
-
-"@esbuild/linux-ia32@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-ia32@npm:0.25.1"
- conditions: os=linux & cpu=ia32
- languageName: node
- linkType: hard
-
-"@esbuild/linux-ia32@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-ia32@npm:0.27.2"
- conditions: os=linux & cpu=ia32
- languageName: node
- linkType: hard
-
-"@esbuild/linux-loong64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-loong64@npm:0.25.1"
- conditions: os=linux & cpu=loong64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-loong64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-loong64@npm:0.27.2"
- conditions: os=linux & cpu=loong64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-mips64el@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-mips64el@npm:0.25.1"
- conditions: os=linux & cpu=mips64el
- languageName: node
- linkType: hard
-
-"@esbuild/linux-mips64el@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-mips64el@npm:0.27.2"
- conditions: os=linux & cpu=mips64el
- languageName: node
- linkType: hard
-
-"@esbuild/linux-ppc64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-ppc64@npm:0.25.1"
- conditions: os=linux & cpu=ppc64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-ppc64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-ppc64@npm:0.27.2"
- conditions: os=linux & cpu=ppc64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-riscv64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-riscv64@npm:0.25.1"
- conditions: os=linux & cpu=riscv64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-riscv64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-riscv64@npm:0.27.2"
- conditions: os=linux & cpu=riscv64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-s390x@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-s390x@npm:0.25.1"
- conditions: os=linux & cpu=s390x
- languageName: node
- linkType: hard
-
-"@esbuild/linux-s390x@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-s390x@npm:0.27.2"
- conditions: os=linux & cpu=s390x
- languageName: node
- linkType: hard
-
-"@esbuild/linux-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/linux-x64@npm:0.25.1"
- conditions: os=linux & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/linux-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/linux-x64@npm:0.27.2"
- conditions: os=linux & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/netbsd-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/netbsd-arm64@npm:0.25.1"
- conditions: os=netbsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/netbsd-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/netbsd-arm64@npm:0.27.2"
- conditions: os=netbsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/netbsd-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/netbsd-x64@npm:0.25.1"
- conditions: os=netbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/netbsd-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/netbsd-x64@npm:0.27.2"
- conditions: os=netbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/openbsd-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/openbsd-arm64@npm:0.25.1"
- conditions: os=openbsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/openbsd-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/openbsd-arm64@npm:0.27.2"
- conditions: os=openbsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/openbsd-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/openbsd-x64@npm:0.25.1"
- conditions: os=openbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/openbsd-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/openbsd-x64@npm:0.27.2"
- conditions: os=openbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/openharmony-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/openharmony-arm64@npm:0.27.2"
- conditions: os=openharmony & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/sunos-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/sunos-x64@npm:0.25.1"
- conditions: os=sunos & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/sunos-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/sunos-x64@npm:0.27.2"
- conditions: os=sunos & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/win32-arm64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/win32-arm64@npm:0.25.1"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/win32-arm64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/win32-arm64@npm:0.27.2"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"@esbuild/win32-ia32@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/win32-ia32@npm:0.25.1"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
-"@esbuild/win32-ia32@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/win32-ia32@npm:0.27.2"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
-"@esbuild/win32-x64@npm:0.25.1":
- version: 0.25.1
- resolution: "@esbuild/win32-x64@npm:0.25.1"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"@esbuild/win32-x64@npm:0.27.2":
- version: 0.27.2
- resolution: "@esbuild/win32-x64@npm:0.27.2"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"@eslint-community/eslint-utils@npm:^4.2.0":
- version: 4.4.0
- resolution: "@eslint-community/eslint-utils@npm:4.4.0"
- dependencies:
- eslint-visitor-keys: "npm:^3.3.0"
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
- checksum: 10c0/7e559c4ce59cd3a06b1b5a517b593912e680a7f981ae7affab0d01d709e99cd5647019be8fafa38c350305bc32f1f7d42c7073edde2ab536c745e365f37b607e
- languageName: node
- linkType: hard
-
-"@eslint-community/eslint-utils@npm:^4.4.0":
- version: 4.4.1
- resolution: "@eslint-community/eslint-utils@npm:4.4.1"
- dependencies:
- eslint-visitor-keys: "npm:^3.4.3"
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
- checksum: 10c0/2aa0ac2fc50ff3f234408b10900ed4f1a0b19352f21346ad4cc3d83a1271481bdda11097baa45d484dd564c895e0762a27a8240be7a256b3ad47129e96528252
- languageName: node
- linkType: hard
-
-"@eslint-community/eslint-utils@npm:^4.9.1":
- version: 4.9.1
- resolution: "@eslint-community/eslint-utils@npm:4.9.1"
- dependencies:
- eslint-visitor-keys: "npm:^3.4.3"
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
- checksum: 10c0/dc4ab5e3e364ef27e33666b11f4b86e1a6c1d7cbf16f0c6ff87b1619b3562335e9201a3d6ce806221887ff780ec9d828962a290bb910759fd40a674686503f02
- languageName: node
- linkType: hard
-
-"@eslint-community/regexpp@npm:^4.12.2, @eslint-community/regexpp@npm:^4.6.1":
- version: 4.12.2
- resolution: "@eslint-community/regexpp@npm:4.12.2"
- checksum: 10c0/fddcbc66851b308478d04e302a4d771d6917a0b3740dc351513c0da9ca2eab8a1adf99f5e0aa7ab8b13fa0df005c81adeee7e63a92f3effd7d367a163b721c2d
- languageName: node
- linkType: hard
-
-"@eslint/eslintrc@npm:^2.1.4":
- version: 2.1.4
- resolution: "@eslint/eslintrc@npm:2.1.4"
- dependencies:
- ajv: "npm:^6.12.4"
- debug: "npm:^4.3.2"
- espree: "npm:^9.6.0"
- globals: "npm:^13.19.0"
- ignore: "npm:^5.2.0"
- import-fresh: "npm:^3.2.1"
- js-yaml: "npm:^4.1.0"
- minimatch: "npm:^3.1.2"
- strip-json-comments: "npm:^3.1.1"
- checksum: 10c0/32f67052b81768ae876c84569ffd562491ec5a5091b0c1e1ca1e0f3c24fb42f804952fdd0a137873bc64303ba368a71ba079a6f691cee25beee9722d94cc8573
- languageName: node
- linkType: hard
-
-"@eslint/js@npm:8.57.1":
- version: 8.57.1
- resolution: "@eslint/js@npm:8.57.1"
- checksum: 10c0/b489c474a3b5b54381c62e82b3f7f65f4b8a5eaaed126546520bf2fede5532a8ed53212919fed1e9048dcf7f37167c8561d58d0ba4492a4244004e7793805223
- languageName: node
- linkType: hard
-
-"@fastify/busboy@npm:^2.0.0":
- version: 2.1.1
- resolution: "@fastify/busboy@npm:2.1.1"
- checksum: 10c0/6f8027a8cba7f8f7b736718b013f5a38c0476eea67034c94a0d3c375e2b114366ad4419e6a6fa7ffc2ef9c6d3e0435d76dd584a7a1cbac23962fda7650b579e3
- languageName: node
- linkType: hard
-
-"@floating-ui/core@npm:^1.6.0":
- version: 1.6.9
- resolution: "@floating-ui/core@npm:1.6.9"
- dependencies:
- "@floating-ui/utils": "npm:^0.2.9"
- checksum: 10c0/77debdfc26bc36c6f5ae1f26ab3c15468215738b3f5682af4e1915602fa21ba33ad210273f31c9d2da1c531409929e1afb1138b1608c6b54a0f5853ee84c340d
- languageName: node
- linkType: hard
-
-"@floating-ui/core@npm:^1.7.3":
- version: 1.7.3
- resolution: "@floating-ui/core@npm:1.7.3"
- dependencies:
- "@floating-ui/utils": "npm:^0.2.10"
- checksum: 10c0/edfc23800122d81df0df0fb780b7328ae6c5f00efbb55bd48ea340f4af8c5b3b121ceb4bb81220966ab0f87b443204d37105abdd93d94846468be3243984144c
- languageName: node
- linkType: hard
-
-"@floating-ui/dom@npm:1.7.4":
- version: 1.7.4
- resolution: "@floating-ui/dom@npm:1.7.4"
- dependencies:
- "@floating-ui/core": "npm:^1.7.3"
- "@floating-ui/utils": "npm:^0.2.10"
- checksum: 10c0/da6166c25f9b0729caa9f498685a73a0e28251613b35d27db8de8014bc9d045158a23c092b405321a3d67c2064909b6e2a7e6c1c9cc0f62967dca5779f5aef30
- languageName: node
- linkType: hard
-
-"@floating-ui/dom@npm:^1.0.0":
- version: 1.6.13
- resolution: "@floating-ui/dom@npm:1.6.13"
- dependencies:
- "@floating-ui/core": "npm:^1.6.0"
- "@floating-ui/utils": "npm:^0.2.9"
- checksum: 10c0/272242d2eb6238ffcee0cb1f3c66e0eafae804d5d7b449db5ecf904bc37d31ad96cf575a9e650b93c1190f64f49a684b1559d10e05ed3ec210628b19116991a9
- languageName: node
- linkType: hard
-
-"@floating-ui/react-dom@npm:^2.0.0, @floating-ui/react-dom@npm:^2.1.2":
- version: 2.1.2
- resolution: "@floating-ui/react-dom@npm:2.1.2"
- dependencies:
- "@floating-ui/dom": "npm:^1.0.0"
- peerDependencies:
- react: ">=16.8.0"
- react-dom: ">=16.8.0"
- checksum: 10c0/e855131c74e68cab505f7f44f92cd4e2efab1c125796db3116c54c0859323adae4bf697bf292ee83ac77b9335a41ad67852193d7aeace90aa2e1c4a640cafa60
- languageName: node
- linkType: hard
-
-"@floating-ui/react@npm:^0.27.0":
- version: 0.27.3
- resolution: "@floating-ui/react@npm:0.27.3"
- dependencies:
- "@floating-ui/react-dom": "npm:^2.1.2"
- "@floating-ui/utils": "npm:^0.2.9"
- tabbable: "npm:^6.0.0"
- peerDependencies:
- react: ">=17.0.0"
- react-dom: ">=17.0.0"
- checksum: 10c0/9ebc4e82af905cfafeb5cde1dfbc15a2541d4eaaf1e13fb6b8acbb9f0c3535a7c331b8dee3ab5bb03acb21716ee2ab155629a6c14c3227cf959bf8ad92594539
- languageName: node
- linkType: hard
-
-"@floating-ui/utils@npm:^0.2.10":
- version: 0.2.10
- resolution: "@floating-ui/utils@npm:0.2.10"
- checksum: 10c0/e9bc2a1730ede1ee25843937e911ab6e846a733a4488623cd353f94721b05ec2c9ec6437613a2ac9379a94c2fd40c797a2ba6fa1df2716f5ce4aa6ddb1cf9ea4
- languageName: node
- linkType: hard
-
-"@floating-ui/utils@npm:^0.2.9":
- version: 0.2.9
- resolution: "@floating-ui/utils@npm:0.2.9"
- checksum: 10c0/48bbed10f91cb7863a796cc0d0e917c78d11aeb89f98d03fc38d79e7eb792224a79f538ed8a2d5d5584511d4ca6354ef35f1712659fd569868e342df4398ad6f
- languageName: node
- linkType: hard
-
-"@fontsource/inconsolata@npm:^5.1.0":
- version: 5.2.8
- resolution: "@fontsource/inconsolata@npm:5.2.8"
- checksum: 10c0/2d5788a41bc60d7d00e5ba75689241a5146a4f60a3ec79d14dd2a0a5aa1ec2e697aa6aed3d1c0564208d32916aea588535f16a57f7a775b554d7f9adb03ad64a
- languageName: node
- linkType: hard
-
-"@fontsource/inter@npm:^5.1.0":
- version: 5.2.8
- resolution: "@fontsource/inter@npm:5.2.8"
- checksum: 10c0/f737dd50005e4809887ba55ae0c9b7174216d6d14875d17a4fbb9a0ad75dec4265928b805a43fe16a23f14a878f1974a398bbfc84ad65c79fc4d4b9c3ea154e1
- languageName: node
- linkType: hard
-
-"@formatjs/ecma402-abstract@npm:2.3.6":
- version: 2.3.6
- resolution: "@formatjs/ecma402-abstract@npm:2.3.6"
- dependencies:
- "@formatjs/fast-memoize": "npm:2.2.7"
- "@formatjs/intl-localematcher": "npm:0.6.2"
- decimal.js: "npm:^10.4.3"
- tslib: "npm:^2.8.0"
- checksum: 10c0/63be2a73d3168bf45ab5d50db58376e852db5652d89511ae6e44f1fa03ad96ebbfe9b06a1dfaa743db06e40eb7f33bd77530b9388289855cca79a0e3fc29eacf
- languageName: node
- linkType: hard
-
-"@formatjs/ecma402-abstract@npm:3.1.1":
- version: 3.1.1
- resolution: "@formatjs/ecma402-abstract@npm:3.1.1"
- dependencies:
- "@formatjs/fast-memoize": "npm:3.1.0"
- "@formatjs/intl-localematcher": "npm:0.8.1"
- decimal.js: "npm:^10.6.0"
- tslib: "npm:^2.8.1"
- checksum: 10c0/0b4aad9d3917e385d5b090dd1bf6c0a4600851d87149b6a2b552b4f7d31cdf348fcd19ec534cc79efb375997747ae17f9d09633121f4282fac3c5b1cce90ae98
- languageName: node
- linkType: hard
-
-"@formatjs/fast-memoize@npm:2.2.7":
- version: 2.2.7
- resolution: "@formatjs/fast-memoize@npm:2.2.7"
- dependencies:
- tslib: "npm:^2.8.0"
- checksum: 10c0/f5eabb0e4ab7162297df8252b4cfde194b23248120d9df267592eae2be2d2f7c4f670b5a70523d91b4ecdc35d40e65823bb8eeba8dd79fbf8601a972bf3b8866
- languageName: node
- linkType: hard
-
-"@formatjs/fast-memoize@npm:3.1.0":
- version: 3.1.0
- resolution: "@formatjs/fast-memoize@npm:3.1.0"
- dependencies:
- tslib: "npm:^2.8.1"
- checksum: 10c0/367cf8b2816117a3870224a56a3127f2fa5fb854f696102e1cb6229c2f6dec35ccb433fa5343cda76ee5a0a21bff977fad1e4a15f9fba06bcb11f5d4e76d8919
- languageName: node
- linkType: hard
-
-"@formatjs/intl-durationformat@npm:^0.10.0":
- version: 0.10.1
- resolution: "@formatjs/intl-durationformat@npm:0.10.1"
- dependencies:
- "@formatjs/ecma402-abstract": "npm:3.1.1"
- "@formatjs/intl-localematcher": "npm:0.8.1"
- tslib: "npm:^2.8.1"
- checksum: 10c0/9b0863ba7dd1abc64bbbd15afd24b3bc5ccabe39ab13db97bdfe4d78de7861bd9b0b4a060d6087f1817184328f97b64bfb69ca119071d20dab8f3b5ad8cf9231
- languageName: node
- linkType: hard
-
-"@formatjs/intl-localematcher@npm:0.6.2":
- version: 0.6.2
- resolution: "@formatjs/intl-localematcher@npm:0.6.2"
- dependencies:
- tslib: "npm:^2.8.0"
- checksum: 10c0/22a17a4c67160b6c9f52667914acfb7b79cd6d80630d4ac6d4599ce447cb89d2a64f7d58fa35c3145ddb37fef893f0a45b9a55e663a4eb1f2ae8b10a89fac235
- languageName: node
- linkType: hard
-
-"@formatjs/intl-localematcher@npm:0.8.1":
- version: 0.8.1
- resolution: "@formatjs/intl-localematcher@npm:0.8.1"
- dependencies:
- "@formatjs/fast-memoize": "npm:3.1.0"
- tslib: "npm:^2.8.1"
- checksum: 10c0/c1ecd407891dec31bc5e9cab7ac4294bfb8c9eb11a5e624d9ae81627fb4dbb27ce38b0efafcfd8b26981b3ea43d765de34238a50474d07fd9556d1e79cfbcc6b
- languageName: node
- linkType: hard
-
-"@formatjs/intl-segmenter@npm:^11.7.3":
- version: 11.7.12
- resolution: "@formatjs/intl-segmenter@npm:11.7.12"
- dependencies:
- "@formatjs/ecma402-abstract": "npm:2.3.6"
- "@formatjs/intl-localematcher": "npm:0.6.2"
- tslib: "npm:^2.8.0"
- checksum: 10c0/5ab30a9b9e9a63b9c29c3b90a94e7e5eef958829ed0b03a0117998fe0c1e213546eeebe0636b4559d27db86868bffc5311e3619248a2416045c99de6982fa46a
- languageName: node
- linkType: hard
-
-"@gulpjs/to-absolute-glob@npm:^4.0.0":
- version: 4.0.0
- resolution: "@gulpjs/to-absolute-glob@npm:4.0.0"
- dependencies:
- is-negated-glob: "npm:^1.0.0"
- checksum: 10c0/acddf10466bfff672e7d09d5b7d9fb2d9d50dff3bcf6d4cc3b3df364ea0ccad6e7a8d8ba0f474f880ff18a76ebbcc09b3f4d6d12d2913e3469361d5539a72110
- languageName: node
- linkType: hard
-
-"@humanwhocodes/config-array@npm:^0.13.0":
- version: 0.13.0
- resolution: "@humanwhocodes/config-array@npm:0.13.0"
- dependencies:
- "@humanwhocodes/object-schema": "npm:^2.0.3"
- debug: "npm:^4.3.1"
- minimatch: "npm:^3.0.5"
- checksum: 10c0/205c99e756b759f92e1f44a3dc6292b37db199beacba8f26c2165d4051fe73a4ae52fdcfd08ffa93e7e5cb63da7c88648f0e84e197d154bbbbe137b2e0dd332e
- languageName: node
- linkType: hard
-
-"@humanwhocodes/module-importer@npm:^1.0.1":
- version: 1.0.1
- resolution: "@humanwhocodes/module-importer@npm:1.0.1"
- checksum: 10c0/909b69c3b86d482c26b3359db16e46a32e0fb30bd306a3c176b8313b9e7313dba0f37f519de6aa8b0a1921349e505f259d19475e123182416a506d7f87e7f529
- languageName: node
- linkType: hard
-
-"@humanwhocodes/object-schema@npm:^2.0.3":
- version: 2.0.3
- resolution: "@humanwhocodes/object-schema@npm:2.0.3"
- checksum: 10c0/80520eabbfc2d32fe195a93557cef50dfe8c8905de447f022675aaf66abc33ae54098f5ea78548d925aa671cd4ab7c7daa5ad704fe42358c9b5e7db60f80696c
- languageName: node
- linkType: hard
-
-"@isaacs/cliui@npm:^8.0.2":
- version: 8.0.2
- resolution: "@isaacs/cliui@npm:8.0.2"
- dependencies:
- string-width: "npm:^5.1.2"
- string-width-cjs: "npm:string-width@^4.2.0"
- strip-ansi: "npm:^7.0.1"
- strip-ansi-cjs: "npm:strip-ansi@^6.0.1"
- wrap-ansi: "npm:^8.1.0"
- wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0"
- checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e
- languageName: node
- linkType: hard
-
-"@isaacs/fs-minipass@npm:^4.0.0":
- version: 4.0.1
- resolution: "@isaacs/fs-minipass@npm:4.0.1"
- dependencies:
- minipass: "npm:^7.0.4"
- checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2
- languageName: node
- linkType: hard
-
-"@jridgewell/gen-mapping@npm:^0.3.12":
- version: 0.3.12
- resolution: "@jridgewell/gen-mapping@npm:0.3.12"
- dependencies:
- "@jridgewell/sourcemap-codec": "npm:^1.5.0"
- "@jridgewell/trace-mapping": "npm:^0.3.24"
- checksum: 10c0/32f771ae2467e4d440be609581f7338d786d3d621bac3469e943b9d6d116c23c4becb36f84898a92bbf2f3c0511365c54a945a3b86a83141547a2a360a5ec0c7
- languageName: node
- linkType: hard
-
-"@jridgewell/gen-mapping@npm:^0.3.5":
- version: 0.3.8
- resolution: "@jridgewell/gen-mapping@npm:0.3.8"
- dependencies:
- "@jridgewell/set-array": "npm:^1.2.1"
- "@jridgewell/sourcemap-codec": "npm:^1.4.10"
- "@jridgewell/trace-mapping": "npm:^0.3.24"
- checksum: 10c0/c668feaf86c501d7c804904a61c23c67447b2137b813b9ce03eca82cb9d65ac7006d766c218685d76e3d72828279b6ee26c347aa1119dab23fbaf36aed51585a
- languageName: node
- linkType: hard
-
-"@jridgewell/remapping@npm:^2.3.5":
- version: 2.3.5
- resolution: "@jridgewell/remapping@npm:2.3.5"
- dependencies:
- "@jridgewell/gen-mapping": "npm:^0.3.5"
- "@jridgewell/trace-mapping": "npm:^0.3.24"
- checksum: 10c0/3de494219ffeb2c5c38711d0d7bb128097edf91893090a2dbc8ee0b55d092bb7347b1fd0f478486c5eab010e855c73927b1666f2107516d472d24a73017d1194
- languageName: node
- linkType: hard
-
-"@jridgewell/resolve-uri@npm:^3.1.0":
- version: 3.1.2
- resolution: "@jridgewell/resolve-uri@npm:3.1.2"
- checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e
- languageName: node
- linkType: hard
-
-"@jridgewell/set-array@npm:^1.2.1":
- version: 1.2.1
- resolution: "@jridgewell/set-array@npm:1.2.1"
- checksum: 10c0/2a5aa7b4b5c3464c895c802d8ae3f3d2b92fcbe84ad12f8d0bfbb1f5ad006717e7577ee1fd2eac00c088abe486c7adb27976f45d2941ff6b0b92b2c3302c60f4
- languageName: node
- linkType: hard
-
-"@jridgewell/source-map@npm:^0.3.3":
- version: 0.3.6
- resolution: "@jridgewell/source-map@npm:0.3.6"
- dependencies:
- "@jridgewell/gen-mapping": "npm:^0.3.5"
- "@jridgewell/trace-mapping": "npm:^0.3.25"
- checksum: 10c0/6a4ecc713ed246ff8e5bdcc1ef7c49aaa93f7463d948ba5054dda18b02dcc6a055e2828c577bcceee058f302ce1fc95595713d44f5c45e43d459f88d267f2f04
- languageName: node
- linkType: hard
-
-"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.15, @jridgewell/sourcemap-codec@npm:^1.5.0":
- version: 1.5.0
- resolution: "@jridgewell/sourcemap-codec@npm:1.5.0"
- checksum: 10c0/2eb864f276eb1096c3c11da3e9bb518f6d9fc0023c78344cdc037abadc725172c70314bdb360f2d4b7bffec7f5d657ce006816bc5d4ecb35e61b66132db00c18
- languageName: node
- linkType: hard
-
-"@jridgewell/sourcemap-codec@npm:^1.5.5":
- version: 1.5.5
- resolution: "@jridgewell/sourcemap-codec@npm:1.5.5"
- checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0
- languageName: node
- linkType: hard
-
-"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25":
- version: 0.3.25
- resolution: "@jridgewell/trace-mapping@npm:0.3.25"
- dependencies:
- "@jridgewell/resolve-uri": "npm:^3.1.0"
- "@jridgewell/sourcemap-codec": "npm:^1.4.14"
- checksum: 10c0/3d1ce6ebc69df9682a5a8896b414c6537e428a1d68b02fcc8363b04284a8ca0df04d0ee3013132252ab14f2527bc13bea6526a912ecb5658f0e39fd2860b4df4
- languageName: node
- linkType: hard
-
-"@jridgewell/trace-mapping@npm:^0.3.28":
- version: 0.3.29
- resolution: "@jridgewell/trace-mapping@npm:0.3.29"
- dependencies:
- "@jridgewell/resolve-uri": "npm:^3.1.0"
- "@jridgewell/sourcemap-codec": "npm:^1.4.14"
- checksum: 10c0/fb547ba31658c4d74eb17e7389f4908bf7c44cef47acb4c5baa57289daf68e6fe53c639f41f751b3923aca67010501264f70e7b49978ad1f040294b22c37b333
- languageName: node
- linkType: hard
-
-"@jridgewell/trace-mapping@npm:^0.3.31":
- version: 0.3.31
- resolution: "@jridgewell/trace-mapping@npm:0.3.31"
- dependencies:
- "@jridgewell/resolve-uri": "npm:^3.1.0"
- "@jridgewell/sourcemap-codec": "npm:^1.4.14"
- checksum: 10c0/4b30ec8cd56c5fd9a661f088230af01e0c1a3888d11ffb6b47639700f71225be21d1f7e168048d6d4f9449207b978a235c07c8f15c07705685d16dc06280e9d9
- languageName: node
- linkType: hard
-
-"@livekit/components-core@npm:0.12.12, @livekit/components-core@npm:^0.12.0":
- version: 0.12.12
- resolution: "@livekit/components-core@npm:0.12.12"
- dependencies:
- "@floating-ui/dom": "npm:1.7.4"
- loglevel: "npm:1.9.1"
- rxjs: "npm:7.8.2"
- peerDependencies:
- livekit-client: ^2.15.14
- tslib: ^2.6.2
- checksum: 10c0/788ae01fa6c58a0edbd629f4195f2f3a7bc94660d2fb729af8b27cab2b151abe36cd0a666989811c6187e51d32c847119853010a82be55844750ab3978079c38
- languageName: node
- linkType: hard
-
-"@livekit/components-react@npm:^2.0.0":
- version: 2.9.17
- resolution: "@livekit/components-react@npm:2.9.17"
- dependencies:
- "@livekit/components-core": "npm:0.12.12"
- clsx: "npm:2.1.1"
- events: "npm:^3.3.0"
- jose: "npm:^6.0.12"
- usehooks-ts: "npm:3.1.1"
- peerDependencies:
- "@livekit/krisp-noise-filter": ^0.2.12 || ^0.3.0
- livekit-client: ^2.15.14
- react: ">=18"
- react-dom: ">=18"
- tslib: ^2.6.2
- peerDependenciesMeta:
- "@livekit/krisp-noise-filter":
- optional: true
- checksum: 10c0/ba64ada37d4b3ce4d5ee7c5b2a6bddbffc17c2e641e95881aac9f02b4ff7428105e0a372d364e50ff124e988b7426d322d94caabdb55b634aebf0144d7e37f99
- languageName: node
- linkType: hard
-
-"@livekit/mutex@npm:1.1.1":
- version: 1.1.1
- resolution: "@livekit/mutex@npm:1.1.1"
- checksum: 10c0/d4bb1bd34e20939dfc8af0ae10b86918f3944336d0236d219e80a8c554207e8bfaf21e86794f0c56d2c28b43d74ca966111172a95eacb0e12b72133dd184d49a
- languageName: node
- linkType: hard
-
-"@livekit/protocol@npm:1.42.2":
- version: 1.42.2
- resolution: "@livekit/protocol@npm:1.42.2"
- dependencies:
- "@bufbuild/protobuf": "npm:^1.10.0"
- checksum: 10c0/73e77e0975d4d8ca0baa23ad03cb9ac3a844e8d89e9cefbd17343131a774c7aeb4d190fd0397152fcf5a396d921af3eb83e83e660a4aa12215d9ac4e52bf037a
- languageName: node
- linkType: hard
-
-"@livekit/protocol@npm:^1.42.2":
- version: 1.44.0
- resolution: "@livekit/protocol@npm:1.44.0"
- dependencies:
- "@bufbuild/protobuf": "npm:^1.10.0"
- checksum: 10c0/f547a5ee586cae002ed2834f0a823573e38887562dbc793e261791b0572472c6732262a5466c96082464575a3248a4c6cb0428420418e834cdbef1b202cddedf
- languageName: node
- linkType: hard
-
-"@livekit/track-processors@npm:^0.7.1":
- version: 0.7.2
- resolution: "@livekit/track-processors@npm:0.7.2"
- dependencies:
- "@mediapipe/tasks-vision": "npm:0.10.14"
- peerDependencies:
- "@types/dom-mediacapture-transform": ^0.1.9
- livekit-client: ^1.12.0 || ^2.1.0
- checksum: 10c0/d5638942205ea05a507254f61157696881332b866ff538d1e93bd2267c31ce80c9a81dfc4f8c4b7c96910452b13511ee06be1ae7ab30c299b73fe04baf80a673
- languageName: node
- linkType: hard
-
-"@matrix-org/matrix-sdk-crypto-wasm@npm:^17.0.0":
- version: 17.0.0
- resolution: "@matrix-org/matrix-sdk-crypto-wasm@npm:17.0.0"
- checksum: 10c0/fa97e3111099057e0953e7550d6556b6e7553f3badd5b25a6988d2fcc94d22288a27e63cb204771b74ff24388d770c83f2cf5aec583f05c6ecf46509b8020570
- languageName: node
- linkType: hard
-
-"@mediapipe/tasks-vision@npm:^0.10.18":
- version: 0.10.32
- resolution: "@mediapipe/tasks-vision@npm:0.10.32"
- checksum: 10c0/734d472ece8f10e8ba6bdcda7adfc46ddd4da737797e3699aabdb857a4ec5ae87de064b0d7ed41bd96fe49bb8a9420afd1fcc337eea38cd536e7b41bed9f88b7
- languageName: node
- linkType: hard
-
-"@napi-rs/wasm-runtime@npm:^1.1.1":
- version: 1.1.1
- resolution: "@napi-rs/wasm-runtime@npm:1.1.1"
- dependencies:
- "@emnapi/core": "npm:^1.7.1"
- "@emnapi/runtime": "npm:^1.7.1"
- "@tybys/wasm-util": "npm:^0.10.1"
- checksum: 10c0/04d57b67e80736e41fe44674a011878db0a8ad893f4d44abb9d3608debb7c174224cba2796ed5b0c1d367368159f3ca6be45f1c59222f70e32ddc880f803d447
- languageName: node
- linkType: hard
-
-"@nodelib/fs.scandir@npm:2.1.5":
- version: 2.1.5
- resolution: "@nodelib/fs.scandir@npm:2.1.5"
- dependencies:
- "@nodelib/fs.stat": "npm:2.0.5"
- run-parallel: "npm:^1.1.9"
- checksum: 10c0/732c3b6d1b1e967440e65f284bd06e5821fedf10a1bea9ed2bb75956ea1f30e08c44d3def9d6a230666574edbaf136f8cfd319c14fd1f87c66e6a44449afb2eb
- languageName: node
- linkType: hard
-
-"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2":
- version: 2.0.5
- resolution: "@nodelib/fs.stat@npm:2.0.5"
- checksum: 10c0/88dafe5e3e29a388b07264680dc996c17f4bda48d163a9d4f5c1112979f0ce8ec72aa7116122c350b4e7976bc5566dc3ddb579be1ceaacc727872eb4ed93926d
- languageName: node
- linkType: hard
-
-"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8":
- version: 1.2.8
- resolution: "@nodelib/fs.walk@npm:1.2.8"
- dependencies:
- "@nodelib/fs.scandir": "npm:2.1.5"
- fastq: "npm:^1.6.0"
- checksum: 10c0/db9de047c3bb9b51f9335a7bb46f4fcfb6829fb628318c12115fbaf7d369bfce71c15b103d1fc3b464812d936220ee9bc1c8f762d032c9f6be9acc99249095b1
- languageName: node
- linkType: hard
-
-"@npmcli/agent@npm:^3.0.0":
- version: 3.0.0
- resolution: "@npmcli/agent@npm:3.0.0"
- dependencies:
- agent-base: "npm:^7.1.0"
- http-proxy-agent: "npm:^7.0.0"
- https-proxy-agent: "npm:^7.0.1"
- lru-cache: "npm:^10.0.1"
- socks-proxy-agent: "npm:^8.0.3"
- checksum: 10c0/efe37b982f30740ee77696a80c196912c274ecd2cb243bc6ae7053a50c733ce0f6c09fda085145f33ecf453be19654acca74b69e81eaad4c90f00ccffe2f9271
- languageName: node
- linkType: hard
-
-"@npmcli/fs@npm:^4.0.0":
- version: 4.0.0
- resolution: "@npmcli/fs@npm:4.0.0"
- dependencies:
- semver: "npm:^7.3.5"
- checksum: 10c0/c90935d5ce670c87b6b14fab04a965a3b8137e585f8b2a6257263bd7f97756dd736cb165bb470e5156a9e718ecd99413dccc54b1138c1a46d6ec7cf325982fe5
- languageName: node
- linkType: hard
-
-"@octokit/auth-token@npm:^4.0.0":
- version: 4.0.0
- resolution: "@octokit/auth-token@npm:4.0.0"
- checksum: 10c0/57acaa6c394c5abab2f74e8e1dcf4e7a16b236f713c77a54b8f08e2d14114de94b37946259e33ec2aab0566b26f724c2b71d2602352b59e541a9854897618f3c
- languageName: node
- linkType: hard
-
-"@octokit/core@npm:^5.0.1":
- version: 5.2.0
- resolution: "@octokit/core@npm:5.2.0"
- dependencies:
- "@octokit/auth-token": "npm:^4.0.0"
- "@octokit/graphql": "npm:^7.1.0"
- "@octokit/request": "npm:^8.3.1"
- "@octokit/request-error": "npm:^5.1.0"
- "@octokit/types": "npm:^13.0.0"
- before-after-hook: "npm:^2.2.0"
- universal-user-agent: "npm:^6.0.0"
- checksum: 10c0/9dc5cf55b335da382f340ef74c8009c06a1f7157b0530d3ff6cacf179887811352dcd405448e37849d73f17b28970b7817995be2260ce902dad52b91905542f0
- languageName: node
- linkType: hard
-
-"@octokit/endpoint@npm:^9.0.6":
- version: 9.0.6
- resolution: "@octokit/endpoint@npm:9.0.6"
- dependencies:
- "@octokit/types": "npm:^13.1.0"
- universal-user-agent: "npm:^6.0.0"
- checksum: 10c0/8e06197b21869aeb498e0315093ca6fbee12bd1bdcfc1667fcd7d79d827d84f2c5a30702ffd28bba7879780e367d14c30df5b20d47fcaed5de5fdc05f5d4e013
- languageName: node
- linkType: hard
-
-"@octokit/graphql@npm:^7.1.0":
- version: 7.1.1
- resolution: "@octokit/graphql@npm:7.1.1"
- dependencies:
- "@octokit/request": "npm:^8.4.1"
- "@octokit/types": "npm:^13.0.0"
- universal-user-agent: "npm:^6.0.0"
- checksum: 10c0/c27216200f3f4ce7ce2a694fb7ea43f8ea4a807fbee3a423c41ed137dd7948dfc0bbf6ea1656f029a7625c84b583acdef740a7032266d0eff55305c91c3a1ed6
- languageName: node
- linkType: hard
-
-"@octokit/openapi-types@npm:^20.0.0":
- version: 20.0.0
- resolution: "@octokit/openapi-types@npm:20.0.0"
- checksum: 10c0/5176dcc3b9d182ede3d446750cfa5cf31139624785a73fcf3511e3102a802b4d7cc45e999c27ed91d73fe8b7d718c8c406facb48688926921a71fe603b7db95d
- languageName: node
- linkType: hard
-
-"@octokit/openapi-types@npm:^23.0.1":
- version: 23.0.1
- resolution: "@octokit/openapi-types@npm:23.0.1"
- checksum: 10c0/ab734ceb26343d9f051a59503b8cb5bdc7fec9ca044b60511b227179bec73141dd9144a6b2d68bcd737741881b136c1b7d5392da89ae2e35e39acc489e5eb4c1
- languageName: node
- linkType: hard
-
-"@octokit/plugin-paginate-rest@npm:^9.0.0":
- version: 9.2.2
- resolution: "@octokit/plugin-paginate-rest@npm:9.2.2"
- dependencies:
- "@octokit/types": "npm:^12.6.0"
- peerDependencies:
- "@octokit/core": 5
- checksum: 10c0/e9c85b17064fe6b62f9af88dba008f3daef456b1195340ea0831990e9c4dbabe89be950b6e5dc924ebcca18ad1aaa0cf6df7d824dc8be26ce9a55f20336ff815
- languageName: node
- linkType: hard
-
-"@octokit/plugin-rest-endpoint-methods@npm:^10.0.0":
- version: 10.4.1
- resolution: "@octokit/plugin-rest-endpoint-methods@npm:10.4.1"
- dependencies:
- "@octokit/types": "npm:^12.6.0"
- peerDependencies:
- "@octokit/core": 5
- checksum: 10c0/4b8f64c0f7fa12464546ad312a5289c2a799967e01e90e2c4923ec6e9604cf212dcb50d9795c9a688867f973c9c529c5950368564c560406c652bcd298f090af
- languageName: node
- linkType: hard
-
-"@octokit/request-error@npm:^5.1.0, @octokit/request-error@npm:^5.1.1":
- version: 5.1.1
- resolution: "@octokit/request-error@npm:5.1.1"
- dependencies:
- "@octokit/types": "npm:^13.1.0"
- deprecation: "npm:^2.0.0"
- once: "npm:^1.4.0"
- checksum: 10c0/dc9fc76ea5e4199273e4665ce9ddf345fe8f25578d9999c9a16f276298e61ee6fe0e6f5a6147b91ba3b34fdf5b9e6b7af6ae13d6333175e95b30c574088f7a2d
- languageName: node
- linkType: hard
-
-"@octokit/request@npm:^8.3.1, @octokit/request@npm:^8.4.1":
- version: 8.4.1
- resolution: "@octokit/request@npm:8.4.1"
- dependencies:
- "@octokit/endpoint": "npm:^9.0.6"
- "@octokit/request-error": "npm:^5.1.1"
- "@octokit/types": "npm:^13.1.0"
- universal-user-agent: "npm:^6.0.0"
- checksum: 10c0/1a69dcb7336de708a296db9e9a58040e5b284a87495a63112f80eb0007da3fc96a9fadecb9e875fc63cf179c23a0f81031fbef2a6f610a219e45805ead03fcf3
- languageName: node
- linkType: hard
-
-"@octokit/types@npm:^12.6.0":
- version: 12.6.0
- resolution: "@octokit/types@npm:12.6.0"
- dependencies:
- "@octokit/openapi-types": "npm:^20.0.0"
- checksum: 10c0/0bea58bda46c93287f5a80a0e52bc60e7dc7136b8a38c3569d63d073fb9df4a56acdb9d9bdba9978f37c374a4a6e3e52886ef5b08cace048adb0012cacef942c
- languageName: node
- linkType: hard
-
-"@octokit/types@npm:^13.0.0, @octokit/types@npm:^13.1.0":
- version: 13.8.0
- resolution: "@octokit/types@npm:13.8.0"
- dependencies:
- "@octokit/openapi-types": "npm:^23.0.1"
- checksum: 10c0/e08c2fcf10e374f18e4c9fa12a6ada33a40f112d1209012a39f0ce40ae7aa9dcf0598b6007b467f63cc4a97e7b1388d6eed34ddef61494655e08b5a95afaad97
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-android-arm-eabi@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-android-arm-eabi@npm:11.19.1"
- conditions: os=android & cpu=arm
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-android-arm64@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-android-arm64@npm:11.19.1"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-darwin-arm64@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-darwin-arm64@npm:11.19.1"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-darwin-x64@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-darwin-x64@npm:11.19.1"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-freebsd-x64@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-freebsd-x64@npm:11.19.1"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-arm-gnueabihf@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-arm-gnueabihf@npm:11.19.1"
- conditions: os=linux & cpu=arm
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-arm-musleabihf@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-arm-musleabihf@npm:11.19.1"
- conditions: os=linux & cpu=arm
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-arm64-gnu@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-arm64-gnu@npm:11.19.1"
- conditions: os=linux & cpu=arm64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-arm64-musl@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-arm64-musl@npm:11.19.1"
- conditions: os=linux & cpu=arm64 & libc=musl
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-ppc64-gnu@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-ppc64-gnu@npm:11.19.1"
- conditions: os=linux & cpu=ppc64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-riscv64-gnu@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-riscv64-gnu@npm:11.19.1"
- conditions: os=linux & cpu=riscv64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-riscv64-musl@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-riscv64-musl@npm:11.19.1"
- conditions: os=linux & cpu=riscv64 & libc=musl
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-s390x-gnu@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-s390x-gnu@npm:11.19.1"
- conditions: os=linux & cpu=s390x & libc=glibc
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-x64-gnu@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-x64-gnu@npm:11.19.1"
- conditions: os=linux & cpu=x64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-linux-x64-musl@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-linux-x64-musl@npm:11.19.1"
- conditions: os=linux & cpu=x64 & libc=musl
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-openharmony-arm64@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-openharmony-arm64@npm:11.19.1"
- conditions: os=openharmony & cpu=arm64
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-wasm32-wasi@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-wasm32-wasi@npm:11.19.1"
- dependencies:
- "@napi-rs/wasm-runtime": "npm:^1.1.1"
- conditions: cpu=wasm32
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-win32-arm64-msvc@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-win32-arm64-msvc@npm:11.19.1"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-win32-ia32-msvc@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-win32-ia32-msvc@npm:11.19.1"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
-"@oxc-resolver/binding-win32-x64-msvc@npm:11.19.1":
- version: 11.19.1
- resolution: "@oxc-resolver/binding-win32-x64-msvc@npm:11.19.1"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"@parcel/watcher-android-arm64@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-android-arm64@npm:2.5.1"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
-"@parcel/watcher-darwin-arm64@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-darwin-arm64@npm:2.5.1"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
-"@parcel/watcher-darwin-x64@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-darwin-x64@npm:2.5.1"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
-"@parcel/watcher-freebsd-x64@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-freebsd-x64@npm:2.5.1"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@parcel/watcher-linux-arm-glibc@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-linux-arm-glibc@npm:2.5.1"
- conditions: os=linux & cpu=arm & libc=glibc
- languageName: node
- linkType: hard
-
-"@parcel/watcher-linux-arm-musl@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-linux-arm-musl@npm:2.5.1"
- conditions: os=linux & cpu=arm & libc=musl
- languageName: node
- linkType: hard
-
-"@parcel/watcher-linux-arm64-glibc@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-linux-arm64-glibc@npm:2.5.1"
- conditions: os=linux & cpu=arm64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@parcel/watcher-linux-arm64-musl@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-linux-arm64-musl@npm:2.5.1"
- conditions: os=linux & cpu=arm64 & libc=musl
- languageName: node
- linkType: hard
-
-"@parcel/watcher-linux-x64-glibc@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-linux-x64-glibc@npm:2.5.1"
- conditions: os=linux & cpu=x64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@parcel/watcher-linux-x64-musl@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-linux-x64-musl@npm:2.5.1"
- conditions: os=linux & cpu=x64 & libc=musl
- languageName: node
- linkType: hard
-
-"@parcel/watcher-win32-arm64@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-win32-arm64@npm:2.5.1"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"@parcel/watcher-win32-ia32@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-win32-ia32@npm:2.5.1"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
-"@parcel/watcher-win32-x64@npm:2.5.1":
- version: 2.5.1
- resolution: "@parcel/watcher-win32-x64@npm:2.5.1"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"@parcel/watcher@npm:^2.4.1":
- version: 2.5.1
- resolution: "@parcel/watcher@npm:2.5.1"
- dependencies:
- "@parcel/watcher-android-arm64": "npm:2.5.1"
- "@parcel/watcher-darwin-arm64": "npm:2.5.1"
- "@parcel/watcher-darwin-x64": "npm:2.5.1"
- "@parcel/watcher-freebsd-x64": "npm:2.5.1"
- "@parcel/watcher-linux-arm-glibc": "npm:2.5.1"
- "@parcel/watcher-linux-arm-musl": "npm:2.5.1"
- "@parcel/watcher-linux-arm64-glibc": "npm:2.5.1"
- "@parcel/watcher-linux-arm64-musl": "npm:2.5.1"
- "@parcel/watcher-linux-x64-glibc": "npm:2.5.1"
- "@parcel/watcher-linux-x64-musl": "npm:2.5.1"
- "@parcel/watcher-win32-arm64": "npm:2.5.1"
- "@parcel/watcher-win32-ia32": "npm:2.5.1"
- "@parcel/watcher-win32-x64": "npm:2.5.1"
- detect-libc: "npm:^1.0.3"
- is-glob: "npm:^4.0.3"
- micromatch: "npm:^4.0.5"
- node-addon-api: "npm:^7.0.0"
- node-gyp: "npm:latest"
- dependenciesMeta:
- "@parcel/watcher-android-arm64":
- optional: true
- "@parcel/watcher-darwin-arm64":
- optional: true
- "@parcel/watcher-darwin-x64":
- optional: true
- "@parcel/watcher-freebsd-x64":
- optional: true
- "@parcel/watcher-linux-arm-glibc":
- optional: true
- "@parcel/watcher-linux-arm-musl":
- optional: true
- "@parcel/watcher-linux-arm64-glibc":
- optional: true
- "@parcel/watcher-linux-arm64-musl":
- optional: true
- "@parcel/watcher-linux-x64-glibc":
- optional: true
- "@parcel/watcher-linux-x64-musl":
- optional: true
- "@parcel/watcher-win32-arm64":
- optional: true
- "@parcel/watcher-win32-ia32":
- optional: true
- "@parcel/watcher-win32-x64":
- optional: true
- checksum: 10c0/8f35073d0c0b34a63d4c8d2213482f0ebc6a25de7b2cdd415d19cb929964a793cb285b68d1d50bfb732b070b3c82a2fdb4eb9c250eab709a1cd9d63345455a82
- languageName: node
- linkType: hard
-
-"@pkgjs/parseargs@npm:^0.11.0":
- version: 0.11.0
- resolution: "@pkgjs/parseargs@npm:0.11.0"
- checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd
- languageName: node
- linkType: hard
-
-"@playwright/test@npm:^1.57.0":
- version: 1.58.2
- resolution: "@playwright/test@npm:1.58.2"
- dependencies:
- playwright: "npm:1.58.2"
- bin:
- playwright: cli.js
- checksum: 10c0/2164c03ad97c3653ff02e8818a71f3b2bbc344ac07924c9d8e31cd57505d6d37596015a41f51396b3ed8de6840f59143eaa9c21bf65515963da20740119811da
- languageName: node
- linkType: hard
-
-"@radix-ui/number@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/number@npm:1.1.1"
- checksum: 10c0/0570ad92287398e8a7910786d7cee0a998174cdd6637ba61571992897c13204adf70b9ed02d0da2af554119411128e701d9c6b893420612897b438dc91db712b
- languageName: node
- linkType: hard
-
-"@radix-ui/primitive@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/primitive@npm:1.1.1"
- checksum: 10c0/6457bd8d1aa4ecb948e5d2a2484fc570698b2ab472db6d915a8f1eec04823f80423efa60b5ba840f0693bec2ca380333cc5f3b52586b40f407d9f572f9261f8d
- languageName: node
- linkType: hard
-
-"@radix-ui/primitive@npm:1.1.3":
- version: 1.1.3
- resolution: "@radix-ui/primitive@npm:1.1.3"
- checksum: 10c0/88860165ee7066fa2c179f32ffcd3ee6d527d9dcdc0e8be85e9cb0e2c84834be8e3c1a976c74ba44b193f709544e12f54455d892b28e32f0708d89deda6b9f1d
- languageName: node
- linkType: hard
-
-"@radix-ui/react-arrow@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-arrow@npm:1.1.1"
- dependencies:
- "@radix-ui/react-primitive": "npm:2.0.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/714c8420ee4497775a1119ceba1391a9e4fed07185ba903ade571251400fd25cedb7bebf2292ce778e74956dfa079078b2afbb67d12001c6ea5080997bcf3612
- languageName: node
- linkType: hard
-
-"@radix-ui/react-arrow@npm:1.1.7":
- version: 1.1.7
- resolution: "@radix-ui/react-arrow@npm:1.1.7"
- dependencies:
- "@radix-ui/react-primitive": "npm:2.1.3"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/c3b46766238b3ee2a394d8806a5141432361bf1425110c9f0dcf480bda4ebd304453a53f294b5399c6ee3ccfcae6fd544921fd01ddc379cf5942acdd7168664b
- languageName: node
- linkType: hard
-
-"@radix-ui/react-collection@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-collection@npm:1.1.1"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-context": "npm:1.1.1"
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-slot": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/f01bba02e11944fa98f588a0c8dc7657228c9e7dd32ef66acdec6a540385c1e9471ef9e7dfa6184b524fdf923cf5a08892ffda3fe6d60cee34c690d9914373ce
- languageName: node
- linkType: hard
-
-"@radix-ui/react-collection@npm:1.1.7":
- version: 1.1.7
- resolution: "@radix-ui/react-collection@npm:1.1.7"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-context": "npm:1.1.2"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-slot": "npm:1.2.3"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/fa321a7300095508491f75414f02b243f0c3f179dc0728cfd115e2ea9f6f48f1516532b59f526d9ac81bbab63cd98a052074b4703ec0b9428fac945ebabec5fd
- languageName: node
- linkType: hard
-
-"@radix-ui/react-compose-refs@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-compose-refs@npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/3e84580024e66e3cc5b9ae79355e787815c1d2a3c7d46e7f47900a29c33751ca24cf4ac8903314957ab1f7788aebe1687e2258641c188cf94653f7ddf8f70627
- languageName: node
- linkType: hard
-
-"@radix-ui/react-compose-refs@npm:1.1.2":
- version: 1.1.2
- resolution: "@radix-ui/react-compose-refs@npm:1.1.2"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/d36a9c589eb75d634b9b139c80f916aadaf8a68a7c1c4b8c6c6b88755af1a92f2e343457042089f04cc3f23073619d08bb65419ced1402e9d4e299576d970771
- languageName: node
- linkType: hard
-
-"@radix-ui/react-context-menu@npm:^2.2.16":
- version: 2.2.16
- resolution: "@radix-ui/react-context-menu@npm:2.2.16"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.3"
- "@radix-ui/react-context": "npm:1.1.2"
- "@radix-ui/react-menu": "npm:2.1.16"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-use-callback-ref": "npm:1.1.1"
- "@radix-ui/react-use-controllable-state": "npm:1.2.2"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/950f7559e65474a19145238cf44d744cb1e49be2221ff18436ba49b496b05ccf93bd3906aaa2c7ab76bc77daf694911a78442801e0053f57d2e57ebbfd281c49
- languageName: node
- linkType: hard
-
-"@radix-ui/react-context@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-context@npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/fc4ace9d79d7954c715ade765e06c95d7e1b12a63a536bcbe842fb904f03f88fc5bd6e38d44bd23243d37a270b4c44380fedddaeeae2d274f0b898a20665aba2
- languageName: node
- linkType: hard
-
-"@radix-ui/react-context@npm:1.1.2":
- version: 1.1.2
- resolution: "@radix-ui/react-context@npm:1.1.2"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/cece731f8cc25d494c6589cc681e5c01a93867d895c75889973afa1a255f163c286e390baa7bc028858eaabe9f6b57270d0ca6377356f652c5557c1c7a41ccce
- languageName: node
- linkType: hard
-
-"@radix-ui/react-dialog@npm:^1.0.4, @radix-ui/react-dialog@npm:^1.1.1":
- version: 1.1.15
- resolution: "@radix-ui/react-dialog@npm:1.1.15"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.3"
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-context": "npm:1.1.2"
- "@radix-ui/react-dismissable-layer": "npm:1.1.11"
- "@radix-ui/react-focus-guards": "npm:1.1.3"
- "@radix-ui/react-focus-scope": "npm:1.1.7"
- "@radix-ui/react-id": "npm:1.1.1"
- "@radix-ui/react-portal": "npm:1.1.9"
- "@radix-ui/react-presence": "npm:1.1.5"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-slot": "npm:1.2.3"
- "@radix-ui/react-use-controllable-state": "npm:1.2.2"
- aria-hidden: "npm:^1.2.4"
- react-remove-scroll: "npm:^2.6.3"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/2f2c88e3c281acaea2fd9b96fa82132d59177d3aa5da2e7c045596fd4028e84e44ac52ac28f4f236910605dd7d9338c2858ba44a9ced2af2e3e523abbfd33014
- languageName: node
- linkType: hard
-
-"@radix-ui/react-direction@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-direction@npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/eb07d8cc3ae2388b824e0a11ae0e3b71fb0c49972b506e249cec9f27a5b7ef4305ee668c98b674833c92e842163549a83beb0a197dec1ec65774bdeeb61f932c
- languageName: node
- linkType: hard
-
-"@radix-ui/react-direction@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-direction@npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/7a89d9291f846a3105e45f4df98d6b7a08f8d7b30acdcd253005dc9db107ee83cbbebc9e47a9af1e400bcd47697f1511ceab23a399b0da854488fc7220482ac9
- languageName: node
- linkType: hard
-
-"@radix-ui/react-dismissable-layer@npm:1.1.11":
- version: 1.1.11
- resolution: "@radix-ui/react-dismissable-layer@npm:1.1.11"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.3"
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-use-callback-ref": "npm:1.1.1"
- "@radix-ui/react-use-escape-keydown": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/c825572a64073c4d3853702029979f6658770ffd6a98eabc4984e1dee1b226b4078a2a4dc7003f96475b438985e9b21a58e75f51db74dd06848dcae1f2d395dc
- languageName: node
- linkType: hard
-
-"@radix-ui/react-dismissable-layer@npm:1.1.3":
- version: 1.1.3
- resolution: "@radix-ui/react-dismissable-layer@npm:1.1.3"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.1"
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-use-callback-ref": "npm:1.1.0"
- "@radix-ui/react-use-escape-keydown": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/1ab2ebddf3d450bf4efb1e846894824a0056d3fa3deec0858206bc7547857fe5fe37e42f0a34918072702ead6dedc388a5770c060b2596cd408e20db86c54253
- languageName: node
- linkType: hard
-
-"@radix-ui/react-dropdown-menu@npm:^2.1.1":
- version: 2.1.4
- resolution: "@radix-ui/react-dropdown-menu@npm:2.1.4"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.1"
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-context": "npm:1.1.1"
- "@radix-ui/react-id": "npm:1.1.0"
- "@radix-ui/react-menu": "npm:2.1.4"
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-use-controllable-state": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/90ff1f27288b73d000be904773705bbbe4c31204380d4bee55fcd24d82da7638fe29f9577e4cd5d962607927eba4aad6e5600a9bd5e0ee7924a5a1b5e542b437
- languageName: node
- linkType: hard
-
-"@radix-ui/react-focus-guards@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-focus-guards@npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/2e99750ca593083a530542a185d656b45b100752353a7a193a67566e3c256414a76fa9171d152f8c0167b8d6c1fdf62b2e07750d7af2974bf8ef39eb204aa537
- languageName: node
- linkType: hard
-
-"@radix-ui/react-focus-guards@npm:1.1.3":
- version: 1.1.3
- resolution: "@radix-ui/react-focus-guards@npm:1.1.3"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/0bab65eb8d7e4f72f685d63de7fbba2450e3cb15ad6a20a16b42195e9d335c576356f5a47cb58d1ffc115393e46d7b14b12c5d4b10029b0ec090861255866985
- languageName: node
- linkType: hard
-
-"@radix-ui/react-focus-scope@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-focus-scope@npm:1.1.1"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-use-callback-ref": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/a430264a32e358c05dfa1c3abcf6c3d0481cbcbb2547532324c6d69fa7f9e3ed77b5eb2dd64d42808ec62c8d69abb573d6076907764af126d14ea18febf45d7b
- languageName: node
- linkType: hard
-
-"@radix-ui/react-focus-scope@npm:1.1.7":
- version: 1.1.7
- resolution: "@radix-ui/react-focus-scope@npm:1.1.7"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-use-callback-ref": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/8a6071331bdeeb79b223463de75caf759b8ad19339cab838e537b8dbb2db236891a1f4df252445c854d375d43d9d315dfcce0a6b01553a2984ec372bb8f1300e
- languageName: node
- linkType: hard
-
-"@radix-ui/react-form@npm:^0.1.0":
- version: 0.1.1
- resolution: "@radix-ui/react-form@npm:0.1.1"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.1"
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-context": "npm:1.1.1"
- "@radix-ui/react-id": "npm:1.1.0"
- "@radix-ui/react-label": "npm:2.1.1"
- "@radix-ui/react-primitive": "npm:2.0.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/78c41d03abab2744fd4026c1b365b8977b00749b86085db5579eed3a57c91748b344d64014a4437204f3eecd334e8284b25f85b24192c9100178559bf3797d05
- languageName: node
- linkType: hard
-
-"@radix-ui/react-id@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-id@npm:1.1.0"
- dependencies:
- "@radix-ui/react-use-layout-effect": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/acf13e29e51ee96336837fc0cfecc306328b20b0e0070f6f0f7aa7a621ded4a1ee5537cfad58456f64bae76caa7f8769231e88dc7dc106197347ee433c275a79
- languageName: node
- linkType: hard
-
-"@radix-ui/react-id@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-id@npm:1.1.1"
- dependencies:
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/7d12e76818763d592c331277ef62b197e2e64945307e650bd058f0090e5ae48bbd07691b23b7e9e977901ef4eadcb3e2d5eaeb17a13859083384be83fc1292c7
- languageName: node
- linkType: hard
-
-"@radix-ui/react-label@npm:2.1.1":
- version: 2.1.1
- resolution: "@radix-ui/react-label@npm:2.1.1"
- dependencies:
- "@radix-ui/react-primitive": "npm:2.0.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/902628dc2c05610462a264feedc8c548d7ecad7f000efb9a4190e365ee2b7f75eccf98b43925fac6e1fa940c437abbce03ecc6868e06e0a197c779973ccc839d
- languageName: node
- linkType: hard
-
-"@radix-ui/react-menu@npm:2.1.16":
- version: 2.1.16
- resolution: "@radix-ui/react-menu@npm:2.1.16"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.3"
- "@radix-ui/react-collection": "npm:1.1.7"
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-context": "npm:1.1.2"
- "@radix-ui/react-direction": "npm:1.1.1"
- "@radix-ui/react-dismissable-layer": "npm:1.1.11"
- "@radix-ui/react-focus-guards": "npm:1.1.3"
- "@radix-ui/react-focus-scope": "npm:1.1.7"
- "@radix-ui/react-id": "npm:1.1.1"
- "@radix-ui/react-popper": "npm:1.2.8"
- "@radix-ui/react-portal": "npm:1.1.9"
- "@radix-ui/react-presence": "npm:1.1.5"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-roving-focus": "npm:1.1.11"
- "@radix-ui/react-slot": "npm:1.2.3"
- "@radix-ui/react-use-callback-ref": "npm:1.1.1"
- aria-hidden: "npm:^1.2.4"
- react-remove-scroll: "npm:^2.6.3"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/27516b2b987fa9181c4da8645000af8f60691866a349d7a46b9505fa7d2e9d92b9e364db4f7305d08e9e57d0e1afc8df8354f8ee3c12aa05c0100c16b0e76c27
- languageName: node
- linkType: hard
-
-"@radix-ui/react-menu@npm:2.1.4":
- version: 2.1.4
- resolution: "@radix-ui/react-menu@npm:2.1.4"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.1"
- "@radix-ui/react-collection": "npm:1.1.1"
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-context": "npm:1.1.1"
- "@radix-ui/react-direction": "npm:1.1.0"
- "@radix-ui/react-dismissable-layer": "npm:1.1.3"
- "@radix-ui/react-focus-guards": "npm:1.1.1"
- "@radix-ui/react-focus-scope": "npm:1.1.1"
- "@radix-ui/react-id": "npm:1.1.0"
- "@radix-ui/react-popper": "npm:1.2.1"
- "@radix-ui/react-portal": "npm:1.1.3"
- "@radix-ui/react-presence": "npm:1.1.2"
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-roving-focus": "npm:1.1.1"
- "@radix-ui/react-slot": "npm:1.1.1"
- "@radix-ui/react-use-callback-ref": "npm:1.1.0"
- aria-hidden: "npm:^1.1.1"
- react-remove-scroll: "npm:^2.6.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/617b167d110a6866184a562cecd052eef9de3e6f9bfa0780d954629f6a1d09c9dd43cb3f803e3987214f79031a67410fd4d6036c4a4581909edd4bb224ec0f7f
- languageName: node
- linkType: hard
-
-"@radix-ui/react-popper@npm:1.2.1":
- version: 1.2.1
- resolution: "@radix-ui/react-popper@npm:1.2.1"
- dependencies:
- "@floating-ui/react-dom": "npm:^2.0.0"
- "@radix-ui/react-arrow": "npm:1.1.1"
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-context": "npm:1.1.1"
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-use-callback-ref": "npm:1.1.0"
- "@radix-ui/react-use-layout-effect": "npm:1.1.0"
- "@radix-ui/react-use-rect": "npm:1.1.0"
- "@radix-ui/react-use-size": "npm:1.1.0"
- "@radix-ui/rect": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/514468b51e66ff2da3400fa782f4b52f9bad60517e3047cccf56488aa17a3c3f62ff2650b0216be31345dc3be6035999c7160788c92e35c7f8d53ddde2fb92f1
- languageName: node
- linkType: hard
-
-"@radix-ui/react-popper@npm:1.2.8":
- version: 1.2.8
- resolution: "@radix-ui/react-popper@npm:1.2.8"
- dependencies:
- "@floating-ui/react-dom": "npm:^2.0.0"
- "@radix-ui/react-arrow": "npm:1.1.7"
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-context": "npm:1.1.2"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-use-callback-ref": "npm:1.1.1"
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- "@radix-ui/react-use-rect": "npm:1.1.1"
- "@radix-ui/react-use-size": "npm:1.1.1"
- "@radix-ui/rect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/48e3f13eac3b8c13aca8ded37d74db17e1bb294da8d69f142ab6b8719a06c3f90051668bed64520bf9f3abdd77b382ce7ce209d056bb56137cecc949b69b421c
- languageName: node
- linkType: hard
-
-"@radix-ui/react-portal@npm:1.1.3":
- version: 1.1.3
- resolution: "@radix-ui/react-portal@npm:1.1.3"
- dependencies:
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-use-layout-effect": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/b3cd1a81513e528d261599cffda8d7d6094a8598750eaa32bac0d64dbc9a3b4d4e1c10f5bdadf7051b5fd77033b759dbeb4838dae325b94bf8251804c61508c5
- languageName: node
- linkType: hard
-
-"@radix-ui/react-portal@npm:1.1.9":
- version: 1.1.9
- resolution: "@radix-ui/react-portal@npm:1.1.9"
- dependencies:
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/45b432497c722720c72c493a29ef6085bc84b50eafe79d48b45c553121b63e94f9cdb77a3a74b9c49126f8feb3feee009fe400d48b7759d3552396356b192cd7
- languageName: node
- linkType: hard
-
-"@radix-ui/react-presence@npm:1.1.2":
- version: 1.1.2
- resolution: "@radix-ui/react-presence@npm:1.1.2"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-use-layout-effect": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/0c6fa281368636308044df3be4c1f02733094b5e35ba04f26e610dd1c4315a245ffc758e0e176c444742a7a46f4328af1a9d8181e860175ec39338d06525a78d
- languageName: node
- linkType: hard
-
-"@radix-ui/react-presence@npm:1.1.5":
- version: 1.1.5
- resolution: "@radix-ui/react-presence@npm:1.1.5"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/d0e61d314250eeaef5369983cb790701d667f51734bafd98cf759072755562018052c594e6cdc5389789f4543cb0a4d98f03ff4e8f37338d6b5bf51a1700c1d1
- languageName: node
- linkType: hard
-
-"@radix-ui/react-primitive@npm:2.0.1":
- version: 2.0.1
- resolution: "@radix-ui/react-primitive@npm:2.0.1"
- dependencies:
- "@radix-ui/react-slot": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/6a562bec14f8e9fbfe0012d6c2932b0e54518fed898fa0622300c463611e77a4ca28a969f0cd484efd6570c01c5665dd6151f736262317d01715bc4da1a7dea6
- languageName: node
- linkType: hard
-
-"@radix-ui/react-primitive@npm:2.1.3":
- version: 2.1.3
- resolution: "@radix-ui/react-primitive@npm:2.1.3"
- dependencies:
- "@radix-ui/react-slot": "npm:1.2.3"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/fdff9b84913bb4172ef6d3af7442fca5f9bba5f2709cba08950071f819d7057aec3a4a2d9ef44cf9cbfb8014d02573c6884a04cff175895823aaef809ebdb034
- languageName: node
- linkType: hard
-
-"@radix-ui/react-primitive@npm:2.1.4":
- version: 2.1.4
- resolution: "@radix-ui/react-primitive@npm:2.1.4"
- dependencies:
- "@radix-ui/react-slot": "npm:1.2.4"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/90d687b222a25975371ed1f9f08648d75237214b8dec4cbaf09ec9ac951339b17421278f1aff2fb7c5672ba8bd03774a94904efdba73805dd5cc947ce5be8c4a
- languageName: node
- linkType: hard
-
-"@radix-ui/react-progress@npm:^1.1.0":
- version: 1.1.1
- resolution: "@radix-ui/react-progress@npm:1.1.1"
- dependencies:
- "@radix-ui/react-context": "npm:1.1.1"
- "@radix-ui/react-primitive": "npm:2.0.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/dcf4ab20ff3a19a4be5a6e2502c42cd2c2770c6356b86301a548f725d33b8054dafe411b3c0f2b0b9465b225a31e8eb9f6bcc338d1936fb89312b517e1e7f2ec
- languageName: node
- linkType: hard
-
-"@radix-ui/react-roving-focus@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-roving-focus@npm:1.1.1"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.1"
- "@radix-ui/react-collection": "npm:1.1.1"
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- "@radix-ui/react-context": "npm:1.1.1"
- "@radix-ui/react-direction": "npm:1.1.0"
- "@radix-ui/react-id": "npm:1.1.0"
- "@radix-ui/react-primitive": "npm:2.0.1"
- "@radix-ui/react-use-callback-ref": "npm:1.1.0"
- "@radix-ui/react-use-controllable-state": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/ee41eb60b0c300ef3bb130f7ca6c7333148669f2a50b841027910158c06be215967880da932ac14b83d130a9ca5ffb33d6a1a0f067d5048f8db2c3884bbd9b85
- languageName: node
- linkType: hard
-
-"@radix-ui/react-roving-focus@npm:1.1.11":
- version: 1.1.11
- resolution: "@radix-ui/react-roving-focus@npm:1.1.11"
- dependencies:
- "@radix-ui/primitive": "npm:1.1.3"
- "@radix-ui/react-collection": "npm:1.1.7"
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-context": "npm:1.1.2"
- "@radix-ui/react-direction": "npm:1.1.1"
- "@radix-ui/react-id": "npm:1.1.1"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-use-callback-ref": "npm:1.1.1"
- "@radix-ui/react-use-controllable-state": "npm:1.2.2"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/2cd43339c36e89a3bf1db8aab34b939113dfbde56bf3a33df2d74757c78c9489b847b1962f1e2441c67e41817d120cb6177943e0f655f47bc1ff8e44fd55b1a2
- languageName: node
- linkType: hard
-
-"@radix-ui/react-separator@npm:^1.1.0":
- version: 1.1.1
- resolution: "@radix-ui/react-separator@npm:1.1.1"
- dependencies:
- "@radix-ui/react-primitive": "npm:2.0.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/4b0dc0db4e31d4d71a2a688581707dedb19a9e13378e86dbbab467970c5b271afc189ebba0e340495e15ce0fbbc42445d0be43ff8104de5f5c96cf3b822e801d
- languageName: node
- linkType: hard
-
-"@radix-ui/react-slider@npm:^1.1.2":
- version: 1.3.6
- resolution: "@radix-ui/react-slider@npm:1.3.6"
- dependencies:
- "@radix-ui/number": "npm:1.1.1"
- "@radix-ui/primitive": "npm:1.1.3"
- "@radix-ui/react-collection": "npm:1.1.7"
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- "@radix-ui/react-context": "npm:1.1.2"
- "@radix-ui/react-direction": "npm:1.1.1"
- "@radix-ui/react-primitive": "npm:2.1.3"
- "@radix-ui/react-use-controllable-state": "npm:1.2.2"
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- "@radix-ui/react-use-previous": "npm:1.1.1"
- "@radix-ui/react-use-size": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/a53d7854e28c5ef3d29b76c8d04cc3c723b982b643152cd5a8fefc7a8359180f8fd21753e5a08302a290bc837e7be04f2efad9d308b7a4a23326df6a6b1ac882
- languageName: node
- linkType: hard
-
-"@radix-ui/react-slot@npm:1.1.1, @radix-ui/react-slot@npm:^1.1.0":
- version: 1.1.1
- resolution: "@radix-ui/react-slot@npm:1.1.1"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/f3cc71c16529c67a8407a89e0ac13a868cafa0cd05ca185b464db609aa5996a3f00588695518e420bd47ffdb4cc2f76c14cc12ea5a38fc2ca3578a30d2ca58b9
- languageName: node
- linkType: hard
-
-"@radix-ui/react-slot@npm:1.2.3":
- version: 1.2.3
- resolution: "@radix-ui/react-slot@npm:1.2.3"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/5913aa0d760f505905779515e4b1f0f71a422350f077cc8d26d1aafe53c97f177fec0e6d7fbbb50d8b5e498aa9df9f707ca75ae3801540c283b26b0136138eef
- languageName: node
- linkType: hard
-
-"@radix-ui/react-slot@npm:1.2.4":
- version: 1.2.4
- resolution: "@radix-ui/react-slot@npm:1.2.4"
- dependencies:
- "@radix-ui/react-compose-refs": "npm:1.1.2"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/8b719bb934f1ae5ac0e37214783085c17c2f1080217caf514c1c6cc3d9ca56c7e19d25470b26da79aa6e605ab36589edaade149b76f5fc0666f1063e2fc0a0dc
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-callback-ref@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-use-callback-ref@npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/e954863f3baa151faf89ac052a5468b42650efca924417470efd1bd254b411a94c69c30de2fdbb90187b38cb984795978e12e30423dc41e4309d93d53b66d819
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-callback-ref@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-use-callback-ref@npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/5f6aff8592dea6a7e46589808912aba3fb3b626cf6edd2b14f01638b61dbbe49eeb9f67cd5601f4c15b2fb547b9a7e825f7c4961acd4dd70176c969ae405f8d8
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-controllable-state@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-use-controllable-state@npm:1.1.0"
- dependencies:
- "@radix-ui/react-use-callback-ref": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/2af883b5b25822ac226e60a6bfde647c0123a76345052a90219026059b3f7225844b2c13a9a16fba859c1cda5fb3d057f2a04503f71780e607516492db4eb3a1
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-controllable-state@npm:1.2.2":
- version: 1.2.2
- resolution: "@radix-ui/react-use-controllable-state@npm:1.2.2"
- dependencies:
- "@radix-ui/react-use-effect-event": "npm:0.0.2"
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/f55c4b06e895293aed4b44c9ef26fb24432539f5346fcd6519c7745800535b571058685314e83486a45bf61dc83887e24826490d3068acc317fb0a9010516e63
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-effect-event@npm:0.0.2":
- version: 0.0.2
- resolution: "@radix-ui/react-use-effect-event@npm:0.0.2"
- dependencies:
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/e84ff72a3e76c5ae9c94941028bb4b6472f17d4104481b9eab773deab3da640ecea035e54da9d6f4df8d84c18ef6913baf92b7511bee06930dc58bd0c0add417
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-escape-keydown@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-use-escape-keydown@npm:1.1.0"
- dependencies:
- "@radix-ui/react-use-callback-ref": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/910fd696e5a0994b0e06b9cb68def8a865f47951a013ec240c77db2a9e1e726105602700ef5e5f01af49f2f18fe0e73164f9a9651021f28538ef8a30d91f3fbb
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-escape-keydown@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-use-escape-keydown@npm:1.1.1"
- dependencies:
- "@radix-ui/react-use-callback-ref": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/bff53be99e940fef1d3c4df7d560e1d9133182e5a98336255d3063327d1d3dd4ec54a95dc5afe15cca4fb6c184f0a956c70de2815578c318cf995a7f9beabaa1
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-layout-effect@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-use-layout-effect@npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/9bf87ece1845c038ed95863cfccf9d75f557c2400d606343bab0ab3192b9806b9840e6aa0a0333fdf3e83cf9982632852192f3e68d7d8367bc8c788dfdf8e62b
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-layout-effect@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-use-layout-effect@npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/9f98fdaba008dfc58050de60a77670b885792df473cf82c1cef8daee919a5dd5a77d270209f5f0b0abfaac78cb1627396e3ff56c81b735be550409426fe8b040
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-previous@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-use-previous@npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/52f1089d941491cd59b7f52a5679a14e9381711419a0557ce0f3bc9a4c117078224efec54dcced41a3653a13a386a7b6ec75435d61a273e8b9f5d00235f2b182
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-rect@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-use-rect@npm:1.1.0"
- dependencies:
- "@radix-ui/rect": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/c2e30150ab49e2cec238cda306fd748c3d47fb96dcff69a3b08e1d19108d80bac239d48f1747a25dadca614e3e967267d43b91e60ea59db2befbc7bea913ff84
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-rect@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-use-rect@npm:1.1.1"
- dependencies:
- "@radix-ui/rect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/271711404c05c589c8dbdaa748749e7daf44bcc6bffc9ecd910821c3ebca0ee245616cf5b39653ce690f53f875c3836fd3f36f51ab1c628273b6db599eee4864
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-size@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/react-use-size@npm:1.1.0"
- dependencies:
- "@radix-ui/react-use-layout-effect": "npm:1.1.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/4c8b89037597fdc1824d009e0c941b510c7c6c30f83024cc02c934edd748886786e7d9f36f57323b02ad29833e7fa7e8974d81969b4ab33d8f41661afa4f30a6
- languageName: node
- linkType: hard
-
-"@radix-ui/react-use-size@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/react-use-size@npm:1.1.1"
- dependencies:
- "@radix-ui/react-use-layout-effect": "npm:1.1.1"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/851d09a816f44282e0e9e2147b1b571410174cc048703a50c4fa54d672de994fd1dfff1da9d480ecfd12c77ae8f48d74f01adaf668f074156b8cd0043c6c21d8
- languageName: node
- linkType: hard
-
-"@radix-ui/react-visually-hidden@npm:^1.0.3":
- version: 1.2.4
- resolution: "@radix-ui/react-visually-hidden@npm:1.2.4"
- dependencies:
- "@radix-ui/react-primitive": "npm:2.1.4"
- peerDependencies:
- "@types/react": "*"
- "@types/react-dom": "*"
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/cca313cd3268f483612da1ab91c4cca55a54d24963dd543154f2d043bfdca21a96ab0582152ae473de44769474867d5433dbadae799a42932e6204fd2d5fa889
- languageName: node
- linkType: hard
-
-"@radix-ui/rect@npm:1.1.0":
- version: 1.1.0
- resolution: "@radix-ui/rect@npm:1.1.0"
- checksum: 10c0/a26ff7f8708fb5f2f7949baad70a6b2a597d761ee4dd4aadaf1c1a33ea82ea23dfef6ce6366a08310c5d008cdd60b2e626e4ee03fa342bd5f246ddd9d427f6be
- languageName: node
- linkType: hard
-
-"@radix-ui/rect@npm:1.1.1":
- version: 1.1.1
- resolution: "@radix-ui/rect@npm:1.1.1"
- checksum: 10c0/0dac4f0f15691199abe6a0e067821ddd9d0349c0c05f39834e4eafc8403caf724106884035ae91bbc826e10367e6a5672e7bec4d4243860fa7649de246b1f60b
- languageName: node
- linkType: hard
-
-"@react-spring/animated@npm:~10.0.3":
- version: 10.0.3
- resolution: "@react-spring/animated@npm:10.0.3"
- dependencies:
- "@react-spring/shared": "npm:~10.0.3"
- "@react-spring/types": "npm:~10.0.3"
- peerDependencies:
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- checksum: 10c0/6142522f310926729a92009a108ec1bd0d1fe3dca7e9aa0c49692c82fbed28f70c0ea9808fc7452f04bb688ae34333e780f794495906fa4b0efbfc7d53a19b6b
- languageName: node
- linkType: hard
-
-"@react-spring/core@npm:~10.0.3":
- version: 10.0.3
- resolution: "@react-spring/core@npm:10.0.3"
- dependencies:
- "@react-spring/animated": "npm:~10.0.3"
- "@react-spring/shared": "npm:~10.0.3"
- "@react-spring/types": "npm:~10.0.3"
- peerDependencies:
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- checksum: 10c0/d941541d4a40a5229f488e78b414149d54238065178fdd14db307a851d285d521ab1914c0d426b102e0190651dbe752aeb743cee4cd497f5c066be937f2d1790
- languageName: node
- linkType: hard
-
-"@react-spring/rafz@npm:~10.0.3":
- version: 10.0.3
- resolution: "@react-spring/rafz@npm:10.0.3"
- checksum: 10c0/4cf6f710e2be64a3d94e90a20a24a93c68a89b618538d32aaf0079217f9fbed610395051a181d2d010c7ed6898cb7239a3f2ced1d91dd93e4138563ffd2d44ce
- languageName: node
- linkType: hard
-
-"@react-spring/shared@npm:~10.0.3":
- version: 10.0.3
- resolution: "@react-spring/shared@npm:10.0.3"
- dependencies:
- "@react-spring/rafz": "npm:~10.0.3"
- "@react-spring/types": "npm:~10.0.3"
- peerDependencies:
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- checksum: 10c0/d8b33b2390792924d0ff2b57b3098d1c6b688a788fc67e83b168928659aad7435dd2c399925a765ffa5080182634dde8f9f76c919f2c259a33af15319187f72f
- languageName: node
- linkType: hard
-
-"@react-spring/types@npm:~10.0.3":
- version: 10.0.3
- resolution: "@react-spring/types@npm:10.0.3"
- checksum: 10c0/f9bc2619dc9997fe93ebab90fd98118106e53bc45c9c279caaa7081b69d3ed0186d603d5ed445e56bb8ad0075553d15908a2a54e3a0a36ef7cd43a03c1650b02
- languageName: node
- linkType: hard
-
-"@react-spring/web@npm:^10.0.0":
- version: 10.0.3
- resolution: "@react-spring/web@npm:10.0.3"
- dependencies:
- "@react-spring/animated": "npm:~10.0.3"
- "@react-spring/core": "npm:~10.0.3"
- "@react-spring/shared": "npm:~10.0.3"
- "@react-spring/types": "npm:~10.0.3"
- peerDependencies:
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- checksum: 10c0/cafbf55991d68920e94419b5b081cfb0aea2ddfa193e984861ab53306365bf81152bce2861370f9b26d4027dd714e8acc0dfbd57bd2eda99e827c3212e22a51c
- languageName: node
- linkType: hard
-
-"@rolldown/pluginutils@npm:1.0.0-beta.27":
- version: 1.0.0-beta.27
- resolution: "@rolldown/pluginutils@npm:1.0.0-beta.27"
- checksum: 10c0/9658f235b345201d4f6bfb1f32da9754ca164f892d1cb68154fe5f53c1df42bd675ecd409836dff46884a7847d6c00bdc38af870f7c81e05bba5c2645eb4ab9c
- languageName: node
- linkType: hard
-
-"@rollup/plugin-inject@npm:^5.0.3":
- version: 5.0.5
- resolution: "@rollup/plugin-inject@npm:5.0.5"
- dependencies:
- "@rollup/pluginutils": "npm:^5.0.1"
- estree-walker: "npm:^2.0.2"
- magic-string: "npm:^0.30.3"
- peerDependencies:
- rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
- peerDependenciesMeta:
- rollup:
- optional: true
- checksum: 10c0/22d10cf44fa56a6683d5ac4df24a9003379b3dcaae9897f5c30c844afc2ebca83cfaa5557f13a1399b1c8a0d312c3217bcacd508b7ebc4b2cbee401bd1ec8be2
- languageName: node
- linkType: hard
-
-"@rollup/pluginutils@npm:^4.2.0":
- version: 4.2.1
- resolution: "@rollup/pluginutils@npm:4.2.1"
- dependencies:
- estree-walker: "npm:^2.0.1"
- picomatch: "npm:^2.2.2"
- checksum: 10c0/3ee56b2c8f1ed8dfd0a92631da1af3a2dfdd0321948f089b3752b4de1b54dc5076701eadd0e5fc18bd191b77af594ac1db6279e83951238ba16bf8a414c64c48
- languageName: node
- linkType: hard
-
-"@rollup/pluginutils@npm:^5.0.1, @rollup/pluginutils@npm:^5.2.0":
- version: 5.3.0
- resolution: "@rollup/pluginutils@npm:5.3.0"
- dependencies:
- "@types/estree": "npm:^1.0.0"
- estree-walker: "npm:^2.0.2"
- picomatch: "npm:^4.0.2"
- peerDependencies:
- rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
- peerDependenciesMeta:
- rollup:
- optional: true
- checksum: 10c0/001834bf62d7cf5bac424d2617c113f7f7d3b2bf3c1778cbcccb72cdc957b68989f8e7747c782c2b911f1dde8257f56f8ac1e779e29e74e638e3f1e2cac2bcd0
- languageName: node
- linkType: hard
-
-"@rollup/rollup-android-arm-eabi@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-android-arm-eabi@npm:4.59.0"
- conditions: os=android & cpu=arm
- languageName: node
- linkType: hard
-
-"@rollup/rollup-android-arm64@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-android-arm64@npm:4.59.0"
- conditions: os=android & cpu=arm64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-darwin-arm64@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-darwin-arm64@npm:4.59.0"
- conditions: os=darwin & cpu=arm64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-darwin-x64@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-darwin-x64@npm:4.59.0"
- conditions: os=darwin & cpu=x64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-freebsd-arm64@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-freebsd-arm64@npm:4.59.0"
- conditions: os=freebsd & cpu=arm64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-freebsd-x64@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-freebsd-x64@npm:4.59.0"
- conditions: os=freebsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-arm-gnueabihf@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.59.0"
- conditions: os=linux & cpu=arm & libc=glibc
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-arm-musleabihf@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.59.0"
- conditions: os=linux & cpu=arm & libc=musl
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-arm64-gnu@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.59.0"
- conditions: os=linux & cpu=arm64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-arm64-musl@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-arm64-musl@npm:4.59.0"
- conditions: os=linux & cpu=arm64 & libc=musl
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-loong64-gnu@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-loong64-gnu@npm:4.59.0"
- conditions: os=linux & cpu=loong64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-loong64-musl@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-loong64-musl@npm:4.59.0"
- conditions: os=linux & cpu=loong64 & libc=musl
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-ppc64-gnu@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-ppc64-gnu@npm:4.59.0"
- conditions: os=linux & cpu=ppc64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-ppc64-musl@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-ppc64-musl@npm:4.59.0"
- conditions: os=linux & cpu=ppc64 & libc=musl
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-riscv64-gnu@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.59.0"
- conditions: os=linux & cpu=riscv64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-riscv64-musl@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-riscv64-musl@npm:4.59.0"
- conditions: os=linux & cpu=riscv64 & libc=musl
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-s390x-gnu@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.59.0"
- conditions: os=linux & cpu=s390x & libc=glibc
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-x64-gnu@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-x64-gnu@npm:4.59.0"
- conditions: os=linux & cpu=x64 & libc=glibc
- languageName: node
- linkType: hard
-
-"@rollup/rollup-linux-x64-musl@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-linux-x64-musl@npm:4.59.0"
- conditions: os=linux & cpu=x64 & libc=musl
- languageName: node
- linkType: hard
-
-"@rollup/rollup-openbsd-x64@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-openbsd-x64@npm:4.59.0"
- conditions: os=openbsd & cpu=x64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-openharmony-arm64@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-openharmony-arm64@npm:4.59.0"
- conditions: os=openharmony & cpu=arm64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-win32-arm64-msvc@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.59.0"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-win32-ia32-msvc@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.59.0"
- conditions: os=win32 & cpu=ia32
- languageName: node
- linkType: hard
-
-"@rollup/rollup-win32-x64-gnu@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-win32-x64-gnu@npm:4.59.0"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"@rollup/rollup-win32-x64-msvc@npm:4.59.0":
- version: 4.59.0
- resolution: "@rollup/rollup-win32-x64-msvc@npm:4.59.0"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"@rtsao/scc@npm:^1.1.0":
- version: 1.1.0
- resolution: "@rtsao/scc@npm:1.1.0"
- checksum: 10c0/b5bcfb0d87f7d1c1c7c0f7693f53b07866ed9fec4c34a97a8c948fb9a7c0082e416ce4d3b60beb4f5e167cbe04cdeefbf6771320f3ede059b9ce91188c409a5b
- languageName: node
- linkType: hard
-
-"@sentry-internal/browser-utils@npm:8.55.0":
- version: 8.55.0
- resolution: "@sentry-internal/browser-utils@npm:8.55.0"
- dependencies:
- "@sentry/core": "npm:8.55.0"
- checksum: 10c0/201eb94ee64a4dab058153c64dd4ce0af082f3c3bc84a5441cdadf344d9554a0a67c9d9dfdff720eb42de214d67d734d5bda25a050c2efd59c03f60562bb139a
- languageName: node
- linkType: hard
-
-"@sentry-internal/feedback@npm:8.55.0":
- version: 8.55.0
- resolution: "@sentry-internal/feedback@npm:8.55.0"
- dependencies:
- "@sentry/core": "npm:8.55.0"
- checksum: 10c0/2515c4eca6226e3df28a498f7f3771d7820556887bf8c06f2d5469c92474cf72ed81eaa0079f6bcf46905c54315e2631bb7b9ed7ed6741cf9b7f73a3f4875acc
- languageName: node
- linkType: hard
-
-"@sentry-internal/replay-canvas@npm:8.55.0":
- version: 8.55.0
- resolution: "@sentry-internal/replay-canvas@npm:8.55.0"
- dependencies:
- "@sentry-internal/replay": "npm:8.55.0"
- "@sentry/core": "npm:8.55.0"
- checksum: 10c0/6f3c619ede1de47635035f74477dd5a11e5c2cac9d0906448a7fffb6dad1c5bd9a49a594fbc2a51ba3b1859a91f60e08ab6de2d9961ccbaa343af580f1d13fb1
- languageName: node
- linkType: hard
-
-"@sentry-internal/replay@npm:8.55.0":
- version: 8.55.0
- resolution: "@sentry-internal/replay@npm:8.55.0"
- dependencies:
- "@sentry-internal/browser-utils": "npm:8.55.0"
- "@sentry/core": "npm:8.55.0"
- checksum: 10c0/320fd5685c1e84c5feebaa88fc72afd0bd5189b95d690f8c24301cd8b13789431b2c1d28e3e5a93f669ca3b80cdc830e672723aa7a28ff8f0b901674ce0c0529
- languageName: node
- linkType: hard
-
-"@sentry/babel-plugin-component-annotate@npm:3.6.1":
- version: 3.6.1
- resolution: "@sentry/babel-plugin-component-annotate@npm:3.6.1"
- checksum: 10c0/e8876cd4c370ad24d148bbce4f2bda53f35a7a4bd4209c543e9448f0d2577245fb1fa20a7742e50c6171dbc78158fc36fbc53e23939d492abad4e7c8752a962f
- languageName: node
- linkType: hard
-
-"@sentry/browser@npm:8.55.0":
- version: 8.55.0
- resolution: "@sentry/browser@npm:8.55.0"
- dependencies:
- "@sentry-internal/browser-utils": "npm:8.55.0"
- "@sentry-internal/feedback": "npm:8.55.0"
- "@sentry-internal/replay": "npm:8.55.0"
- "@sentry-internal/replay-canvas": "npm:8.55.0"
- "@sentry/core": "npm:8.55.0"
- checksum: 10c0/a485de7385851c96ed4c2291d065594aeea2076b11b3b113f4866fdbff1522524abd97664f0d0b011e0eff6c4986a556f080bccfa1b770466c6afcb6122dfbaf
- languageName: node
- linkType: hard
-
-"@sentry/bundler-plugin-core@npm:3.6.1":
- version: 3.6.1
- resolution: "@sentry/bundler-plugin-core@npm:3.6.1"
- dependencies:
- "@babel/core": "npm:^7.18.5"
- "@sentry/babel-plugin-component-annotate": "npm:3.6.1"
- "@sentry/cli": "npm:^2.49.0"
- dotenv: "npm:^16.3.1"
- find-up: "npm:^5.0.0"
- glob: "npm:^9.3.2"
- magic-string: "npm:0.30.8"
- unplugin: "npm:1.0.1"
- checksum: 10c0/64db0123db0c6e4f31be09cc7fb4b5b8ef4721d693f40d852d3e8e9f1e1e1c4289491a1c3d656603c0b422da836161a3ca2042ee7ee96f284cef52e1c4d407ae
- languageName: node
- linkType: hard
-
-"@sentry/cli-darwin@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-darwin@npm:2.50.2"
- conditions: os=darwin
- languageName: node
- linkType: hard
-
-"@sentry/cli-linux-arm64@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-linux-arm64@npm:2.50.2"
- conditions: (os=linux | os=freebsd | os=android) & cpu=arm64
- languageName: node
- linkType: hard
-
-"@sentry/cli-linux-arm@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-linux-arm@npm:2.50.2"
- conditions: (os=linux | os=freebsd | os=android) & cpu=arm
- languageName: node
- linkType: hard
-
-"@sentry/cli-linux-i686@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-linux-i686@npm:2.50.2"
- conditions: (os=linux | os=freebsd | os=android) & (cpu=x86 | cpu=ia32)
- languageName: node
- linkType: hard
-
-"@sentry/cli-linux-x64@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-linux-x64@npm:2.50.2"
- conditions: (os=linux | os=freebsd | os=android) & cpu=x64
- languageName: node
- linkType: hard
-
-"@sentry/cli-win32-arm64@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-win32-arm64@npm:2.50.2"
- conditions: os=win32 & cpu=arm64
- languageName: node
- linkType: hard
-
-"@sentry/cli-win32-i686@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-win32-i686@npm:2.50.2"
- conditions: os=win32 & (cpu=x86 | cpu=ia32)
- languageName: node
- linkType: hard
-
-"@sentry/cli-win32-x64@npm:2.50.2":
- version: 2.50.2
- resolution: "@sentry/cli-win32-x64@npm:2.50.2"
- conditions: os=win32 & cpu=x64
- languageName: node
- linkType: hard
-
-"@sentry/cli@npm:^2.49.0":
- version: 2.50.2
- resolution: "@sentry/cli@npm:2.50.2"
- dependencies:
- "@sentry/cli-darwin": "npm:2.50.2"
- "@sentry/cli-linux-arm": "npm:2.50.2"
- "@sentry/cli-linux-arm64": "npm:2.50.2"
- "@sentry/cli-linux-i686": "npm:2.50.2"
- "@sentry/cli-linux-x64": "npm:2.50.2"
- "@sentry/cli-win32-arm64": "npm:2.50.2"
- "@sentry/cli-win32-i686": "npm:2.50.2"
- "@sentry/cli-win32-x64": "npm:2.50.2"
- https-proxy-agent: "npm:^5.0.0"
- node-fetch: "npm:^2.6.7"
- progress: "npm:^2.0.3"
- proxy-from-env: "npm:^1.1.0"
- which: "npm:^2.0.2"
- dependenciesMeta:
- "@sentry/cli-darwin":
- optional: true
- "@sentry/cli-linux-arm":
- optional: true
- "@sentry/cli-linux-arm64":
- optional: true
- "@sentry/cli-linux-i686":
- optional: true
- "@sentry/cli-linux-x64":
- optional: true
- "@sentry/cli-win32-arm64":
- optional: true
- "@sentry/cli-win32-i686":
- optional: true
- "@sentry/cli-win32-x64":
- optional: true
- bin:
- sentry-cli: bin/sentry-cli
- checksum: 10c0/10e834e58f655ba27462ac80bc847f31c9ef37b0e82e872475397bca10f35dcb85978877da007d65b2e6977a5852dd1d7d05eef9951ec526ff1d85c162fed119
- languageName: node
- linkType: hard
-
-"@sentry/core@npm:8.55.0":
- version: 8.55.0
- resolution: "@sentry/core@npm:8.55.0"
- checksum: 10c0/51c1768f0bd940a060787b402dba9df3347c918ea4c0fdc300d45c37703ebbf6f7adee9fff332cfd6b23372b33c46e6d2f31a04227762d490aaddc14773894a0
- languageName: node
- linkType: hard
-
-"@sentry/react@npm:^8.0.0":
- version: 8.55.0
- resolution: "@sentry/react@npm:8.55.0"
- dependencies:
- "@sentry/browser": "npm:8.55.0"
- "@sentry/core": "npm:8.55.0"
- hoist-non-react-statics: "npm:^3.3.2"
- peerDependencies:
- react: ^16.14.0 || 17.x || 18.x || 19.x
- checksum: 10c0/09dafee92cb62d3aea5c4503b6d1ad79e293c0e4ad59a60b7700b9d99b18e8e8d6a47e18ed26278d7aa64adbf64c0797c2d096287eeb122a379f5b23b35f597e
- languageName: node
- linkType: hard
-
-"@sentry/vite-plugin@npm:^3.0.0":
- version: 3.6.1
- resolution: "@sentry/vite-plugin@npm:3.6.1"
- dependencies:
- "@sentry/bundler-plugin-core": "npm:3.6.1"
- unplugin: "npm:1.0.1"
- checksum: 10c0/407c5d4fab3bb118e39c4068e3c16fbda0c94e06b3a0df8cbbe8a474771adabbf5f97a46774108b9df142d56b34f5dfc1d6292df03375ab0b29210b8b402d83a
- languageName: node
- linkType: hard
-
-"@sindresorhus/base62@npm:^1.0.0":
- version: 1.0.0
- resolution: "@sindresorhus/base62@npm:1.0.0"
- checksum: 10c0/9a14df0f058fdf4731c30f0f05728a4822144ee42236030039d7fa5a1a1072c2879feba8091fd4a17c8922d1056bc07bada77c31fddc3e15836fc05a266fd918
- languageName: node
- linkType: hard
-
-"@standard-schema/spec@npm:^1.0.0":
- version: 1.1.0
- resolution: "@standard-schema/spec@npm:1.1.0"
- checksum: 10c0/d90f55acde4b2deb983529c87e8025fa693de1a5e8b49ecc6eb84d1fd96328add0e03d7d551442156c7432fd78165b2c26ff561b970a9a881f046abb78d6a526
- languageName: node
- linkType: hard
-
-"@stylistic/eslint-plugin@npm:^3.0.0":
- version: 3.1.0
- resolution: "@stylistic/eslint-plugin@npm:3.1.0"
- dependencies:
- "@typescript-eslint/utils": "npm:^8.13.0"
- eslint-visitor-keys: "npm:^4.2.0"
- espree: "npm:^10.3.0"
- estraverse: "npm:^5.3.0"
- picomatch: "npm:^4.0.2"
- peerDependencies:
- eslint: ">=8.40.0"
- checksum: 10c0/e593d78103a89e0555c119625c0ba8c80c8d2c7add0e85215f6be9929002207067df53714785c2c75b8b9e6df774d25c7dead211aed89a57cb45b5cec902a19e
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-add-jsx-attribute@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/babel-plugin-add-jsx-attribute@npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/a50bd0baa34faf16bcba712091f94c7f0e230431fe99a9dfc3401fa92823ad3f68495b86ab9bf9044b53839e8c416cfbb37eb3f246ff33f261e0fa9ee1779c5b
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-remove-jsx-attribute@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/babel-plugin-remove-jsx-attribute@npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/8a98e59bd9971e066815b4129409932f7a4db4866834fe75677ea6d517972fb40b380a69a4413189f20e7947411f9ab1b0f029dd5e8068686a5a0188d3ccd4c7
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-remove-jsx-empty-expression@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/babel-plugin-remove-jsx-empty-expression@npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/517dcca75223bd05d3f056a8514dbba3031278bea4eadf0842c576d84f4651e7a4e0e7082d3ee4ef42456de0f9c4531d8a1917c04876ca64b014b859ca8f1bde
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-replace-jsx-attribute-value@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/babel-plugin-replace-jsx-attribute-value@npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/004bd1892053b7e9c1b0bb14acc44e77634ec393722b87b1e4fae53e2c35122a2dd0d5c15e9070dbeec274e22e7693a2b8b48506733a8009ee92b12946fcb10a
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-svg-dynamic-title@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/babel-plugin-svg-dynamic-title@npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/80e0a7fcf902f984c705051ca5c82ea6050ccbb70b651a8fea6d0eb5809e4dac274b49ea6be2d87f1eb9dfc0e2d6cdfffe1669ec2117f44b67a60a07d4c0b8b8
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-svg-em-dimensions@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/babel-plugin-svg-em-dimensions@npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/73e92c8277a89279745c0c500f59f083279a8dc30cd552b22981fade2a77628fb2bd2819ee505725fcd2e93f923e3790b52efcff409a159e657b46604a0b9a21
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-transform-react-native-svg@npm:8.1.0":
- version: 8.1.0
- resolution: "@svgr/babel-plugin-transform-react-native-svg@npm:8.1.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/655ed6bc7a208ceaa4ecff0a54ccc36008c3cb31efa90d11e171cab325ebbb21aa78f09c7b65f9b3ddeda3a85f348c0c862902c48be13c14b4de165c847974e3
- languageName: node
- linkType: hard
-
-"@svgr/babel-plugin-transform-svg-component@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/babel-plugin-transform-svg-component@npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/4ac00bb99a3db4ef05e4362f116a3c608ee365a2d26cf7318d8d41a4a5b30a02c80455cce0e62c65b60ed815b5d632bedabac2ccd4b56f998fadef5286e3ded4
- languageName: node
- linkType: hard
-
-"@svgr/babel-preset@npm:8.1.0":
- version: 8.1.0
- resolution: "@svgr/babel-preset@npm:8.1.0"
- dependencies:
- "@svgr/babel-plugin-add-jsx-attribute": "npm:8.0.0"
- "@svgr/babel-plugin-remove-jsx-attribute": "npm:8.0.0"
- "@svgr/babel-plugin-remove-jsx-empty-expression": "npm:8.0.0"
- "@svgr/babel-plugin-replace-jsx-attribute-value": "npm:8.0.0"
- "@svgr/babel-plugin-svg-dynamic-title": "npm:8.0.0"
- "@svgr/babel-plugin-svg-em-dimensions": "npm:8.0.0"
- "@svgr/babel-plugin-transform-react-native-svg": "npm:8.1.0"
- "@svgr/babel-plugin-transform-svg-component": "npm:8.0.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: 10c0/49367d3ad0831f79b1056871b91766246f449d4d1168623af5e283fbaefce4a01d77ab00de6b045b55e956f9aae27895823198493cd232d88d3435ea4517ffc5
- languageName: node
- linkType: hard
-
-"@svgr/core@npm:^8.1.0":
- version: 8.1.0
- resolution: "@svgr/core@npm:8.1.0"
- dependencies:
- "@babel/core": "npm:^7.21.3"
- "@svgr/babel-preset": "npm:8.1.0"
- camelcase: "npm:^6.2.0"
- cosmiconfig: "npm:^8.1.3"
- snake-case: "npm:^3.0.4"
- checksum: 10c0/6a2f6b1bc79bce39f66f088d468985d518005fc5147ebf4f108570a933818b5951c2cb7da230ddff4b7c8028b5a672b2d33aa2acce012b8b9770073aa5a2d041
- languageName: node
- linkType: hard
-
-"@svgr/hast-util-to-babel-ast@npm:8.0.0":
- version: 8.0.0
- resolution: "@svgr/hast-util-to-babel-ast@npm:8.0.0"
- dependencies:
- "@babel/types": "npm:^7.21.3"
- entities: "npm:^4.4.0"
- checksum: 10c0/f4165b583ba9eaf6719e598977a7b3ed182f177983e55f9eb55a6a73982d81277510e9eb7ab41f255151fb9ed4edd11ac4bef95dd872f04ed64966d8c85e0f79
- languageName: node
- linkType: hard
-
-"@svgr/plugin-jsx@npm:^8.1.0":
- version: 8.1.0
- resolution: "@svgr/plugin-jsx@npm:8.1.0"
- dependencies:
- "@babel/core": "npm:^7.21.3"
- "@svgr/babel-preset": "npm:8.1.0"
- "@svgr/hast-util-to-babel-ast": "npm:8.0.0"
- svg-parser: "npm:^2.0.4"
- peerDependencies:
- "@svgr/core": "*"
- checksum: 10c0/07b4d9e00de795540bf70556fa2cc258774d01e97a12a26234c6fdf42b309beb7c10f31ee24d1a71137239347b1547b8bb5587d3a6de10669f95dcfe99cddc56
- languageName: node
- linkType: hard
-
-"@testing-library/dom@npm:^10.1.0":
- version: 10.4.1
- resolution: "@testing-library/dom@npm:10.4.1"
- dependencies:
- "@babel/code-frame": "npm:^7.10.4"
- "@babel/runtime": "npm:^7.12.5"
- "@types/aria-query": "npm:^5.0.1"
- aria-query: "npm:5.3.0"
- dom-accessibility-api: "npm:^0.5.9"
- lz-string: "npm:^1.5.0"
- picocolors: "npm:1.1.1"
- pretty-format: "npm:^27.0.2"
- checksum: 10c0/19ce048012d395ad0468b0dbcc4d0911f6f9e39464d7a8464a587b29707eed5482000dad728f5acc4ed314d2f4d54f34982999a114d2404f36d048278db815b1
- languageName: node
- linkType: hard
-
-"@testing-library/jest-dom@npm:^6.6.3":
- version: 6.9.1
- resolution: "@testing-library/jest-dom@npm:6.9.1"
- dependencies:
- "@adobe/css-tools": "npm:^4.4.0"
- aria-query: "npm:^5.0.0"
- css.escape: "npm:^1.5.1"
- dom-accessibility-api: "npm:^0.6.3"
- picocolors: "npm:^1.1.1"
- redent: "npm:^3.0.0"
- checksum: 10c0/4291ebd2f0f38d14cefac142c56c337941775a5807e2a3d6f1a14c2fbd6be76a18e498ed189e95bedc97d9e8cf1738049bc76c85b5bc5e23fae7c9e10f7b3a12
- languageName: node
- linkType: hard
-
-"@testing-library/react@npm:^16.0.0":
- version: 16.3.2
- resolution: "@testing-library/react@npm:16.3.2"
- dependencies:
- "@babel/runtime": "npm:^7.12.5"
- peerDependencies:
- "@testing-library/dom": ^10.0.0
- "@types/react": ^18.0.0 || ^19.0.0
- "@types/react-dom": ^18.0.0 || ^19.0.0
- react: ^18.0.0 || ^19.0.0
- react-dom: ^18.0.0 || ^19.0.0
- peerDependenciesMeta:
- "@types/react":
- optional: true
- "@types/react-dom":
- optional: true
- checksum: 10c0/f9c7f0915e1b5f7b750e6c7d8b51f091b8ae7ea99bacb761d7b8505ba25de9cfcb749a0f779f1650fb268b499dd79165dc7e1ee0b8b4cb63430d3ddc81ffe044
- languageName: node
- linkType: hard
-
-"@testing-library/user-event@npm:^14.5.1":
- version: 14.6.1
- resolution: "@testing-library/user-event@npm:14.6.1"
- peerDependencies:
- "@testing-library/dom": ">=7.21.4"
- checksum: 10c0/75fea130a52bf320d35d46ed54f3eec77e71a56911b8b69a3fe29497b0b9947b2dc80d30f04054ad4ce7f577856ae3e5397ea7dff0ef14944d3909784c7a93fe
- languageName: node
- linkType: hard
-
-"@tybys/wasm-util@npm:^0.10.1":
- version: 0.10.1
- resolution: "@tybys/wasm-util@npm:0.10.1"
- dependencies:
- tslib: "npm:^2.4.0"
- checksum: 10c0/b255094f293794c6d2289300c5fbcafbb5532a3aed3a5ffd2f8dc1828e639b88d75f6a376dd8f94347a44813fd7a7149d8463477a9a49525c8b2dcaa38c2d1e8
- languageName: node
- linkType: hard
-
-"@types/aria-query@npm:^5.0.1":
- version: 5.0.4
- resolution: "@types/aria-query@npm:5.0.4"
- checksum: 10c0/dc667bc6a3acc7bba2bccf8c23d56cb1f2f4defaa704cfef595437107efaa972d3b3db9ec1d66bc2711bfc35086821edd32c302bffab36f2e79b97f312069f08
- languageName: node
- linkType: hard
-
-"@types/babel__core@npm:^7.1.12, @types/babel__core@npm:^7.20.5":
- version: 7.20.5
- resolution: "@types/babel__core@npm:7.20.5"
- dependencies:
- "@babel/parser": "npm:^7.20.7"
- "@babel/types": "npm:^7.20.7"
- "@types/babel__generator": "npm:*"
- "@types/babel__template": "npm:*"
- "@types/babel__traverse": "npm:*"
- checksum: 10c0/bdee3bb69951e833a4b811b8ee9356b69a61ed5b7a23e1a081ec9249769117fa83aaaf023bb06562a038eb5845155ff663e2d5c75dd95c1d5ccc91db012868ff
- languageName: node
- linkType: hard
-
-"@types/babel__generator@npm:*":
- version: 7.6.8
- resolution: "@types/babel__generator@npm:7.6.8"
- dependencies:
- "@babel/types": "npm:^7.0.0"
- checksum: 10c0/f0ba105e7d2296bf367d6e055bb22996886c114261e2cb70bf9359556d0076c7a57239d019dee42bb063f565bade5ccb46009bce2044b2952d964bf9a454d6d2
- languageName: node
- linkType: hard
-
-"@types/babel__template@npm:*":
- version: 7.4.4
- resolution: "@types/babel__template@npm:7.4.4"
- dependencies:
- "@babel/parser": "npm:^7.1.0"
- "@babel/types": "npm:^7.0.0"
- checksum: 10c0/cc84f6c6ab1eab1427e90dd2b76ccee65ce940b778a9a67be2c8c39e1994e6f5bbc8efa309f6cea8dc6754994524cd4d2896558df76d92e7a1f46ecffee7112b
- languageName: node
- linkType: hard
-
-"@types/babel__traverse@npm:*":
- version: 7.20.6
- resolution: "@types/babel__traverse@npm:7.20.6"
- dependencies:
- "@babel/types": "npm:^7.20.7"
- checksum: 10c0/7ba7db61a53e28cac955aa99af280d2600f15a8c056619c05b6fc911cbe02c61aa4f2823299221b23ce0cce00b294c0e5f618ec772aa3f247523c2e48cf7b888
- languageName: node
- linkType: hard
-
-"@types/chai@npm:^5.2.2":
- version: 5.2.2
- resolution: "@types/chai@npm:5.2.2"
- dependencies:
- "@types/deep-eql": "npm:*"
- checksum: 10c0/49282bf0e8246800ebb36f17256f97bd3a8c4fb31f92ad3c0eaa7623518d7e87f1eaad4ad206960fcaf7175854bdff4cb167e4fe96811e0081b4ada83dd533ec
- languageName: node
- linkType: hard
-
-"@types/content-type@npm:^1.1.5":
- version: 1.1.9
- resolution: "@types/content-type@npm:1.1.9"
- checksum: 10c0/d8b198257862991880d38985ad9871241db18b21ec728bddc78e4c61e0f987cc037dae6c5f9bd2bcc08f41de74ad371180af2fcdefeafe25d0ccae0c3fceb7fd
- languageName: node
- linkType: hard
-
-"@types/deep-eql@npm:*":
- version: 4.0.2
- resolution: "@types/deep-eql@npm:4.0.2"
- checksum: 10c0/bf3f811843117900d7084b9d0c852da9a044d12eb40e6de73b552598a6843c21291a8a381b0532644574beecd5e3491c5ff3a0365ab86b15d59862c025384844
- languageName: node
- linkType: hard
-
-"@types/estree@npm:1.0.8, @types/estree@npm:^1.0.8":
- version: 1.0.8
- resolution: "@types/estree@npm:1.0.8"
- checksum: 10c0/39d34d1afaa338ab9763f37ad6066e3f349444f9052b9676a7cc0252ef9485a41c6d81c9c4e0d26e9077993354edf25efc853f3224dd4b447175ef62bdcc86a5
- languageName: node
- linkType: hard
-
-"@types/estree@npm:^1.0.0":
- version: 1.0.6
- resolution: "@types/estree@npm:1.0.6"
- checksum: 10c0/cdfd751f6f9065442cd40957c07fd80361c962869aa853c1c2fd03e101af8b9389d8ff4955a43a6fcfa223dd387a089937f95be0f3eec21ca527039fd2d9859a
- languageName: node
- linkType: hard
-
-"@types/events@npm:^3.0.0":
- version: 3.0.3
- resolution: "@types/events@npm:3.0.3"
- checksum: 10c0/3a56f8c51eb4ebc0d05dcadca0c6636c816acc10216ce36c976fad11e54a01f4bb979a07211355686015884753b37f17d74bfdc7aaf4ebb027c1e8a501c7b21d
- languageName: node
- linkType: hard
-
-"@types/glob-to-regexp@npm:^0.4.4":
- version: 0.4.4
- resolution: "@types/glob-to-regexp@npm:0.4.4"
- checksum: 10c0/7288ff853850d8302a8770a3698b187fc3970ad12ee6427f0b3758a3e7a0ebb0bd993abc6ebaaa979d09695b4194157d2bfaa7601b0fb9ed72c688b4c1298b88
- languageName: node
- linkType: hard
-
-"@types/grecaptcha@npm:^3.0.9":
- version: 3.0.9
- resolution: "@types/grecaptcha@npm:3.0.9"
- checksum: 10c0/65986cd1d060309ca0eaa1ab5a758ba0203f09c20941534d05b5dfe0fb6fd258ea0e20fa77980d5abf741ba98846e874fd7d2f883aead65dedfa56b278a811e9
- languageName: node
- linkType: hard
-
-"@types/jsdom@npm:^21.1.7":
- version: 21.1.7
- resolution: "@types/jsdom@npm:21.1.7"
- dependencies:
- "@types/node": "npm:*"
- "@types/tough-cookie": "npm:*"
- parse5: "npm:^7.0.0"
- checksum: 10c0/c0c0025adc2b193e85453eeeea168bb909f0ebad08d6552be7474a407e9c163db8f696dcf1e3cbe8cb9c9d970ba45f4386171794509c1a0fe5d1fed72c91679d
- languageName: node
- linkType: hard
-
-"@types/json-schema@npm:^7.0.9":
- version: 7.0.15
- resolution: "@types/json-schema@npm:7.0.15"
- checksum: 10c0/a996a745e6c5d60292f36731dd41341339d4eeed8180bb09226e5c8d23759067692b1d88e5d91d72ee83dfc00d3aca8e7bd43ea120516c17922cbcb7c3e252db
- languageName: node
- linkType: hard
-
-"@types/json5@npm:^0.0.29":
- version: 0.0.29
- resolution: "@types/json5@npm:0.0.29"
- checksum: 10c0/6bf5337bc447b706bb5b4431d37686aa2ea6d07cfd6f79cc31de80170d6ff9b1c7384a9c0ccbc45b3f512bae9e9f75c2e12109806a15331dc94e8a8db6dbb4ac
- languageName: node
- linkType: hard
-
-"@types/lodash-es@npm:^4.17.12":
- version: 4.17.12
- resolution: "@types/lodash-es@npm:4.17.12"
- dependencies:
- "@types/lodash": "npm:*"
- checksum: 10c0/5d12d2cede07f07ab067541371ed1b838a33edb3c35cb81b73284e93c6fd0c4bbeaefee984e69294bffb53f62d7272c5d679fdba8e595ff71e11d00f2601dde0
- languageName: node
- linkType: hard
-
-"@types/lodash@npm:*":
- version: 4.17.13
- resolution: "@types/lodash@npm:4.17.13"
- checksum: 10c0/c3d0b7efe7933ac0369b99f2f7bff9240d960680fdb74b41ed4bd1b3ca60cca1e31fe4046d9abbde778f941a41bc2a75eb629abf8659fa6c27b66efbbb0802a9
- languageName: node
- linkType: hard
-
-"@types/minimatch@npm:^3.0.3":
- version: 3.0.5
- resolution: "@types/minimatch@npm:3.0.5"
- checksum: 10c0/a1a19ba342d6f39b569510f621ae4bbe972dc9378d15e9a5e47904c440ee60744f5b09225bc73be1c6490e3a9c938eee69eb53debf55ce1f15761201aa965f97
- languageName: node
- linkType: hard
-
-"@types/node@npm:*":
- version: 25.3.0
- resolution: "@types/node@npm:25.3.0"
- dependencies:
- undici-types: "npm:~7.18.0"
- checksum: 10c0/7b2b18c9d68047157367fc2f786d4f166d22dc0ad9f82331ca02fb16f2f391854123dbe604dcb938cda119c87051e4bb71dcb9ece44a579f483a6f96d4bd41de
- languageName: node
- linkType: hard
-
-"@types/node@npm:^24.0.0":
- version: 24.10.13
- resolution: "@types/node@npm:24.10.13"
- dependencies:
- undici-types: "npm:~7.16.0"
- checksum: 10c0/4ff0b9b060b5477c0fec5b11a176f294be588104ab546295db65b17a92ba0a6077b52ad92dd3c0d2154198c7f9d0021e6c1d42b00c9ac7ebfd85632afbcc48a4
- languageName: node
- linkType: hard
-
-"@types/normalize-package-data@npm:^2.4.0":
- version: 2.4.4
- resolution: "@types/normalize-package-data@npm:2.4.4"
- checksum: 10c0/aef7bb9b015883d6f4119c423dd28c4bdc17b0e8a0ccf112c78b4fe0e91fbc4af7c6204b04bba0e199a57d2f3fbbd5b4a14bf8739bf9d2a39b2a0aad545e0f86
- languageName: node
- linkType: hard
-
-"@types/pako@npm:^2.0.3":
- version: 2.0.4
- resolution: "@types/pako@npm:2.0.4"
- checksum: 10c0/5765bf8bc7e77ee141c454118f03e544b8f6cb51eb257d82dc5830feeab8cd00818af3a1eabefdfbe8dd3ae9916ed5403937bf1031a0ee51deea27fdf4dccdfb
- languageName: node
- linkType: hard
-
-"@types/qrcode@npm:^1.5.5":
- version: 1.5.6
- resolution: "@types/qrcode@npm:1.5.6"
- dependencies:
- "@types/node": "npm:*"
- checksum: 10c0/84844ca63e5f32bc47d44dda0f8a6f7cdcc7ce44e7b24f10f19d50796f31d12c058f702a8f7d352c9e82a023a9abc36fa1ad01ddf0a209dd8ed4562ea76481fc
- languageName: node
- linkType: hard
-
-"@types/react-dom@npm:^19.0.0":
- version: 19.2.3
- resolution: "@types/react-dom@npm:19.2.3"
- peerDependencies:
- "@types/react": ^19.2.0
- checksum: 10c0/b486ebe0f4e2fb35e2e108df1d8fc0927ca5d6002d5771e8a739de11239fe62d0e207c50886185253c99eb9dedfeeb956ea7429e5ba17f6693c7acb4c02f8cd1
- languageName: node
- linkType: hard
-
-"@types/react@npm:^19.0.0":
- version: 19.2.14
- resolution: "@types/react@npm:19.2.14"
- dependencies:
- csstype: "npm:^3.2.2"
- checksum: 10c0/7d25bf41b57719452d86d2ac0570b659210402707313a36ee612666bf11275a1c69824f8c3ee1fdca077ccfe15452f6da8f1224529b917050eb2d861e52b59b7
- languageName: node
- linkType: hard
-
-"@types/sdp-transform@npm:^2.4.5":
- version: 2.15.0
- resolution: "@types/sdp-transform@npm:2.15.0"
- checksum: 10c0/8740a51ef3478dcc560952d815edb650680f924e00fcb19eea74a8422640e9a1e18a63d9dda750576598cb1c15b8bb6a68bd5076a9e9ac170d828cb97fa1ff26
- languageName: node
- linkType: hard
-
-"@types/semver@npm:^7.3.12":
- version: 7.5.8
- resolution: "@types/semver@npm:7.5.8"
- checksum: 10c0/8663ff927234d1c5fcc04b33062cb2b9fcfbe0f5f351ed26c4d1e1581657deebd506b41ff7fdf89e787e3d33ce05854bc01686379b89e9c49b564c4cfa988efa
- languageName: node
- linkType: hard
-
-"@types/symlink-or-copy@npm:^1.2.0":
- version: 1.2.2
- resolution: "@types/symlink-or-copy@npm:1.2.2"
- checksum: 10c0/09ee39bd319f39c775c4e2049fc4018212b9b6043736bd2046537acbb59c98af7aa725c539f32672cd2ca27144073fa1f1101b4c0ed7db3fbddb305b638895b2
- languageName: node
- linkType: hard
-
-"@types/tough-cookie@npm:*":
- version: 4.0.5
- resolution: "@types/tough-cookie@npm:4.0.5"
- checksum: 10c0/68c6921721a3dcb40451543db2174a145ef915bc8bcbe7ad4e59194a0238e776e782b896c7a59f4b93ac6acefca9161fccb31d1ce3b3445cb6faa467297fb473
- languageName: node
- linkType: hard
-
-"@types/uuid@npm:10":
- version: 10.0.0
- resolution: "@types/uuid@npm:10.0.0"
- checksum: 10c0/9a1404bf287164481cb9b97f6bb638f78f955be57c40c6513b7655160beb29df6f84c915aaf4089a1559c216557dc4d2f79b48d978742d3ae10b937420ddac60
- languageName: node
- linkType: hard
-
-"@types/yargs-parser@npm:*":
- version: 21.0.3
- resolution: "@types/yargs-parser@npm:21.0.3"
- checksum: 10c0/e71c3bd9d0b73ca82e10bee2064c384ab70f61034bbfb78e74f5206283fc16a6d85267b606b5c22cb2a3338373586786fed595b2009825d6a9115afba36560a0
- languageName: node
- linkType: hard
-
-"@types/yargs@npm:^17.0.0":
- version: 17.0.33
- resolution: "@types/yargs@npm:17.0.33"
- dependencies:
- "@types/yargs-parser": "npm:*"
- checksum: 10c0/d16937d7ac30dff697801c3d6f235be2166df42e4a88bf730fa6dc09201de3727c0a9500c59a672122313341de5f24e45ee0ff579c08ce91928e519090b7906b
- languageName: node
- linkType: hard
-
-"@typescript-eslint/eslint-plugin@npm:^8.31.0":
- version: 8.56.1
- resolution: "@typescript-eslint/eslint-plugin@npm:8.56.1"
- dependencies:
- "@eslint-community/regexpp": "npm:^4.12.2"
- "@typescript-eslint/scope-manager": "npm:8.56.1"
- "@typescript-eslint/type-utils": "npm:8.56.1"
- "@typescript-eslint/utils": "npm:8.56.1"
- "@typescript-eslint/visitor-keys": "npm:8.56.1"
- ignore: "npm:^7.0.5"
- natural-compare: "npm:^1.4.0"
- ts-api-utils: "npm:^2.4.0"
- peerDependencies:
- "@typescript-eslint/parser": ^8.56.1
- eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
- typescript: ">=4.8.4 <6.0.0"
- checksum: 10c0/8a97e777792ee3e25078884ba0a04f6732367779c9487abcdc5a2d65b224515fa6a0cf1fac1aafc52fb30f3af97f2e1c9949aadbd6ca74a0165691f95494a721
- languageName: node
- linkType: hard
-
-"@typescript-eslint/experimental-utils@npm:^5.0.0":
- version: 5.62.0
- resolution: "@typescript-eslint/experimental-utils@npm:5.62.0"
- dependencies:
- "@typescript-eslint/utils": "npm:5.62.0"
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
- checksum: 10c0/f7037977e00849cd8c03677a88b0659a4f0e0b1e0151aebb47c49c92b8e57408578142df598eac08b364623d926343c724f42494f87662e437b1c89f0b2e815b
- languageName: node
- linkType: hard
-
-"@typescript-eslint/parser@npm:^8.31.0":
- version: 8.56.1
- resolution: "@typescript-eslint/parser@npm:8.56.1"
- dependencies:
- "@typescript-eslint/scope-manager": "npm:8.56.1"
- "@typescript-eslint/types": "npm:8.56.1"
- "@typescript-eslint/typescript-estree": "npm:8.56.1"
- "@typescript-eslint/visitor-keys": "npm:8.56.1"
- debug: "npm:^4.4.3"
- peerDependencies:
- eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
- typescript: ">=4.8.4 <6.0.0"
- checksum: 10c0/61c9dab481e795b01835c00c9c7c845f1d7ea7faf3b8657fccee0f8658a65390cb5fe2b5230ae8c4241bd6e0c32aa9455a91989a492bd3bd6fec7c7d9339377a
- languageName: node
- linkType: hard
-
-"@typescript-eslint/project-service@npm:8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/project-service@npm:8.56.1"
- dependencies:
- "@typescript-eslint/tsconfig-utils": "npm:^8.56.1"
- "@typescript-eslint/types": "npm:^8.56.1"
- debug: "npm:^4.4.3"
- peerDependencies:
- typescript: ">=4.8.4 <6.0.0"
- checksum: 10c0/ca61cde575233bc79046d73ddd330d183fb3cbb941fddc31919336317cda39885c59296e2e5401b03d9325a64a629e842fd66865705ff0d85d83ee3ee40871e8
- languageName: node
- linkType: hard
-
-"@typescript-eslint/scope-manager@npm:5.62.0":
- version: 5.62.0
- resolution: "@typescript-eslint/scope-manager@npm:5.62.0"
- dependencies:
- "@typescript-eslint/types": "npm:5.62.0"
- "@typescript-eslint/visitor-keys": "npm:5.62.0"
- checksum: 10c0/861253235576c1c5c1772d23cdce1418c2da2618a479a7de4f6114a12a7ca853011a1e530525d0931c355a8fd237b9cd828fac560f85f9623e24054fd024726f
- languageName: node
- linkType: hard
-
-"@typescript-eslint/scope-manager@npm:8.25.0":
- version: 8.25.0
- resolution: "@typescript-eslint/scope-manager@npm:8.25.0"
- dependencies:
- "@typescript-eslint/types": "npm:8.25.0"
- "@typescript-eslint/visitor-keys": "npm:8.25.0"
- checksum: 10c0/0a53a07873bdb569be38053ec006009cc8ba6b12c538b6df0935afd18e431cb17da1eb15b0c9cd267ac211c47aaa44fbc8d7ff3b7b44ff711621ff305fa3b355
- languageName: node
- linkType: hard
-
-"@typescript-eslint/scope-manager@npm:8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/scope-manager@npm:8.56.1"
- dependencies:
- "@typescript-eslint/types": "npm:8.56.1"
- "@typescript-eslint/visitor-keys": "npm:8.56.1"
- checksum: 10c0/89cc1af2635eee23f2aa2ff87c08f88f3ad972ebf67eaacdc604a4ef4178535682bad73fd086e6f3c542e4e5d874253349af10d58291d079cc29c6c7e9831de4
- languageName: node
- linkType: hard
-
-"@typescript-eslint/tsconfig-utils@npm:8.56.1, @typescript-eslint/tsconfig-utils@npm:^8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/tsconfig-utils@npm:8.56.1"
- peerDependencies:
- typescript: ">=4.8.4 <6.0.0"
- checksum: 10c0/d03b64d7ff19020beeefa493ae667c2e67a4547d25a3ecb9210a3a52afe980c093d772a91014bae699ee148bfb60cc659479e02bfc2946ea06954a8478ef1fe1
- languageName: node
- linkType: hard
-
-"@typescript-eslint/type-utils@npm:8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/type-utils@npm:8.56.1"
- dependencies:
- "@typescript-eslint/types": "npm:8.56.1"
- "@typescript-eslint/typescript-estree": "npm:8.56.1"
- "@typescript-eslint/utils": "npm:8.56.1"
- debug: "npm:^4.4.3"
- ts-api-utils: "npm:^2.4.0"
- peerDependencies:
- eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
- typescript: ">=4.8.4 <6.0.0"
- checksum: 10c0/66517aed5059ef4a29605d06a510582f934d5789ae40ad673f1f0421f8aa13ec9ba7b8caab57ae9f270afacbf13ec5359cedfe74f21ae77e9a2364929f7e7cee
- languageName: node
- linkType: hard
-
-"@typescript-eslint/types@npm:5.62.0":
- version: 5.62.0
- resolution: "@typescript-eslint/types@npm:5.62.0"
- checksum: 10c0/7febd3a7f0701c0b927e094f02e82d8ee2cada2b186fcb938bc2b94ff6fbad88237afc304cbaf33e82797078bbbb1baf91475f6400912f8b64c89be79bfa4ddf
- languageName: node
- linkType: hard
-
-"@typescript-eslint/types@npm:8.25.0":
- version: 8.25.0
- resolution: "@typescript-eslint/types@npm:8.25.0"
- checksum: 10c0/b39addbee4be4d66e3089c2d01f9f1d69cedc13bff20e4fa9ed0ca5a0e7591d7c6e41ab3763c8c35404f971bc0fbf9f7867dbc2832740e5b63ee0049d60289f5
- languageName: node
- linkType: hard
-
-"@typescript-eslint/types@npm:8.56.1, @typescript-eslint/types@npm:^8.46.4, @typescript-eslint/types@npm:^8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/types@npm:8.56.1"
- checksum: 10c0/e5a0318abddf0c4f98da3039cb10b3c0601c8601f7a9f7043630f0d622dabfe83a4cd833545ad3531fc846e46ca2874377277b392c2490dffec279d9242d827b
- languageName: node
- linkType: hard
-
-"@typescript-eslint/typescript-estree@npm:5.62.0":
- version: 5.62.0
- resolution: "@typescript-eslint/typescript-estree@npm:5.62.0"
- dependencies:
- "@typescript-eslint/types": "npm:5.62.0"
- "@typescript-eslint/visitor-keys": "npm:5.62.0"
- debug: "npm:^4.3.4"
- globby: "npm:^11.1.0"
- is-glob: "npm:^4.0.3"
- semver: "npm:^7.3.7"
- tsutils: "npm:^3.21.0"
- peerDependenciesMeta:
- typescript:
- optional: true
- checksum: 10c0/d7984a3e9d56897b2481940ec803cb8e7ead03df8d9cfd9797350be82ff765dfcf3cfec04e7355e1779e948da8f02bc5e11719d07a596eb1cb995c48a95e38cf
- languageName: node
- linkType: hard
-
-"@typescript-eslint/typescript-estree@npm:8.25.0":
- version: 8.25.0
- resolution: "@typescript-eslint/typescript-estree@npm:8.25.0"
- dependencies:
- "@typescript-eslint/types": "npm:8.25.0"
- "@typescript-eslint/visitor-keys": "npm:8.25.0"
- debug: "npm:^4.3.4"
- fast-glob: "npm:^3.3.2"
- is-glob: "npm:^4.0.3"
- minimatch: "npm:^9.0.4"
- semver: "npm:^7.6.0"
- ts-api-utils: "npm:^2.0.1"
- peerDependencies:
- typescript: ">=4.8.4 <5.8.0"
- checksum: 10c0/fc9de1c4f6ab81fb80b632dedef84d1ecf4c0abdc5f5246698deb6d86d5c6b5d582ef8a44fdef445bf7fbfa6658db516fe875c9d7c984bf4802e3a508b061856
- languageName: node
- linkType: hard
-
-"@typescript-eslint/typescript-estree@npm:8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/typescript-estree@npm:8.56.1"
- dependencies:
- "@typescript-eslint/project-service": "npm:8.56.1"
- "@typescript-eslint/tsconfig-utils": "npm:8.56.1"
- "@typescript-eslint/types": "npm:8.56.1"
- "@typescript-eslint/visitor-keys": "npm:8.56.1"
- debug: "npm:^4.4.3"
- minimatch: "npm:^10.2.2"
- semver: "npm:^7.7.3"
- tinyglobby: "npm:^0.2.15"
- ts-api-utils: "npm:^2.4.0"
- peerDependencies:
- typescript: ">=4.8.4 <6.0.0"
- checksum: 10c0/92f4421dac41be289761200dc2ed85974fa451deacb09490ae1870a25b71b97218e609a90d4addba9ded5b2abdebc265c9db7f6e9ce6d29ed20e89b8487e9618
- languageName: node
- linkType: hard
-
-"@typescript-eslint/utils@npm:5.62.0":
- version: 5.62.0
- resolution: "@typescript-eslint/utils@npm:5.62.0"
- dependencies:
- "@eslint-community/eslint-utils": "npm:^4.2.0"
- "@types/json-schema": "npm:^7.0.9"
- "@types/semver": "npm:^7.3.12"
- "@typescript-eslint/scope-manager": "npm:5.62.0"
- "@typescript-eslint/types": "npm:5.62.0"
- "@typescript-eslint/typescript-estree": "npm:5.62.0"
- eslint-scope: "npm:^5.1.1"
- semver: "npm:^7.3.7"
- peerDependencies:
- eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
- checksum: 10c0/f09b7d9952e4a205eb1ced31d7684dd55cee40bf8c2d78e923aa8a255318d97279825733902742c09d8690f37a50243f4c4d383ab16bd7aefaf9c4b438f785e1
- languageName: node
- linkType: hard
-
-"@typescript-eslint/utils@npm:8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/utils@npm:8.56.1"
- dependencies:
- "@eslint-community/eslint-utils": "npm:^4.9.1"
- "@typescript-eslint/scope-manager": "npm:8.56.1"
- "@typescript-eslint/types": "npm:8.56.1"
- "@typescript-eslint/typescript-estree": "npm:8.56.1"
- peerDependencies:
- eslint: ^8.57.0 || ^9.0.0 || ^10.0.0
- typescript: ">=4.8.4 <6.0.0"
- checksum: 10c0/d9ffd9b2944a2c425e0532f71dc61e61d0a923d1a17733cf2777c2a4ae638307d12d44f63b33b6b3dc62f02f47db93ec49344ecefe17b76ee3e4fb0833325be3
- languageName: node
- linkType: hard
-
-"@typescript-eslint/utils@npm:^8.13.0":
- version: 8.25.0
- resolution: "@typescript-eslint/utils@npm:8.25.0"
- dependencies:
- "@eslint-community/eslint-utils": "npm:^4.4.0"
- "@typescript-eslint/scope-manager": "npm:8.25.0"
- "@typescript-eslint/types": "npm:8.25.0"
- "@typescript-eslint/typescript-estree": "npm:8.25.0"
- peerDependencies:
- eslint: ^8.57.0 || ^9.0.0
- typescript: ">=4.8.4 <5.8.0"
- checksum: 10c0/cd15c4919f02899fd3975049a0a051a1455332a108c085a3e90ae9872e2cddac7f20a9a2c616f1366fca84274649e836ad6a437c9c5ead0bdabf5a123d12403f
- languageName: node
- linkType: hard
-
-"@typescript-eslint/visitor-keys@npm:5.62.0":
- version: 5.62.0
- resolution: "@typescript-eslint/visitor-keys@npm:5.62.0"
- dependencies:
- "@typescript-eslint/types": "npm:5.62.0"
- eslint-visitor-keys: "npm:^3.3.0"
- checksum: 10c0/7c3b8e4148e9b94d9b7162a596a1260d7a3efc4e65199693b8025c71c4652b8042501c0bc9f57654c1e2943c26da98c0f77884a746c6ae81389fcb0b513d995d
- languageName: node
- linkType: hard
-
-"@typescript-eslint/visitor-keys@npm:8.25.0":
- version: 8.25.0
- resolution: "@typescript-eslint/visitor-keys@npm:8.25.0"
- dependencies:
- "@typescript-eslint/types": "npm:8.25.0"
- eslint-visitor-keys: "npm:^4.2.0"
- checksum: 10c0/7eb84c5899a25b1eb89d3c3f4be3ff18171f934669c57e2530b6dfa5fdd6eaae60629f3c89d06f4c8075fd1c701de76c0b9194e2922895c661ab6091e48f7db9
- languageName: node
- linkType: hard
-
-"@typescript-eslint/visitor-keys@npm:8.56.1":
- version: 8.56.1
- resolution: "@typescript-eslint/visitor-keys@npm:8.56.1"
- dependencies:
- "@typescript-eslint/types": "npm:8.56.1"
- eslint-visitor-keys: "npm:^5.0.0"
- checksum: 10c0/86d97905dec1af964cc177c185933d040449acf6006096497f2e0093c6a53eb92b3ac1db9eb40a5a2e8d91160f558c9734331a9280797f09f284c38978b22190
- languageName: node
- linkType: hard
-
-"@ungap/structured-clone@npm:^1.2.0":
- version: 1.3.0
- resolution: "@ungap/structured-clone@npm:1.3.0"
- checksum: 10c0/0fc3097c2540ada1fc340ee56d58d96b5b536a2a0dab6e3ec17d4bfc8c4c86db345f61a375a8185f9da96f01c69678f836a2b57eeaa9e4b8eeafd26428e57b0a
- languageName: node
- linkType: hard
-
-"@use-gesture/core@npm:10.3.1":
- version: 10.3.1
- resolution: "@use-gesture/core@npm:10.3.1"
- checksum: 10c0/2e3b5c0f7fe26cdb47be3a9c2a58a6a9edafc5b2895b07d2898eda9ab5a2b29fb0098b15597baa0856907b593075cd44cc69bba4785c9cfb7b6fabaa3b52cd3e
- languageName: node
- linkType: hard
-
-"@use-gesture/react@npm:^10.2.11":
- version: 10.3.1
- resolution: "@use-gesture/react@npm:10.3.1"
- dependencies:
- "@use-gesture/core": "npm:10.3.1"
- peerDependencies:
- react: ">= 16.8.0"
- checksum: 10c0/978da66e4e7c424866ad52eba8fdf0ce93a4c8fc44f8837c7043e68c6a6107cd67e817fffb27f7db2ae871ef2f6addb0c8ddf1586f24c67b7e6aef1646c668cf
- languageName: node
- linkType: hard
-
-"@vector-im/compound-design-tokens@npm:^6.0.0":
- version: 6.10.2
- resolution: "@vector-im/compound-design-tokens@npm:6.10.2"
- peerDependencies:
- "@types/react": "*"
- react: ^17 || ^18 || ^19.0.0
- peerDependenciesMeta:
- "@types/react":
- optional: true
- react:
- optional: true
- checksum: 10c0/bcac6d79fcfb8cc1356d65dff576bdad217edd0df189a5dea032b0fd57cef335b73ad6d8e395709245bc1c6a8c672a83144ecea48550ca560544d2399af8f2d3
- languageName: node
- linkType: hard
-
-"@vector-im/compound-web@npm:^8.0.0":
- version: 8.4.0
- resolution: "@vector-im/compound-web@npm:8.4.0"
- dependencies:
- "@floating-ui/react": "npm:^0.27.0"
- "@radix-ui/react-context-menu": "npm:^2.2.16"
- "@radix-ui/react-dropdown-menu": "npm:^2.1.1"
- "@radix-ui/react-form": "npm:^0.1.0"
- "@radix-ui/react-progress": "npm:^1.1.0"
- "@radix-ui/react-separator": "npm:^1.1.0"
- "@radix-ui/react-slot": "npm:^1.1.0"
- classnames: "npm:^2.5.1"
- vaul: "npm:^1.0.0"
- peerDependencies:
- "@fontsource/inconsolata": ^5
- "@fontsource/inter": ^5
- "@types/react": "*"
- "@vector-im/compound-design-tokens": ">=1.6.1 <7.0.0"
- react: ^18 || ^19.0.0
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/31b73555c47b373d4250872bfe863a030b487197bf1198e3cf3a1ec344f2b02f0c72c1513bb598c1cbd7a91d3c6a334d0c8ae37bd7c90d4859c864fc223e059a
- languageName: node
- linkType: hard
-
-"@vitejs/plugin-react@npm:^4.0.1":
- version: 4.7.0
- resolution: "@vitejs/plugin-react@npm:4.7.0"
- dependencies:
- "@babel/core": "npm:^7.28.0"
- "@babel/plugin-transform-react-jsx-self": "npm:^7.27.1"
- "@babel/plugin-transform-react-jsx-source": "npm:^7.27.1"
- "@rolldown/pluginutils": "npm:1.0.0-beta.27"
- "@types/babel__core": "npm:^7.20.5"
- react-refresh: "npm:^0.17.0"
- peerDependencies:
- vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0
- checksum: 10c0/692f23960972879485d647713663ec299c478222c96567d60285acf7c7dc5c178e71abfe9d2eefddef1eeb01514dacbc2ed68aad84628debf9c7116134734253
- languageName: node
- linkType: hard
-
-"@vitest/coverage-v8@npm:^4.0.18":
- version: 4.0.18
- resolution: "@vitest/coverage-v8@npm:4.0.18"
- dependencies:
- "@bcoe/v8-coverage": "npm:^1.0.2"
- "@vitest/utils": "npm:4.0.18"
- ast-v8-to-istanbul: "npm:^0.3.10"
- istanbul-lib-coverage: "npm:^3.2.2"
- istanbul-lib-report: "npm:^3.0.1"
- istanbul-reports: "npm:^3.2.0"
- magicast: "npm:^0.5.1"
- obug: "npm:^2.1.1"
- std-env: "npm:^3.10.0"
- tinyrainbow: "npm:^3.0.3"
- peerDependencies:
- "@vitest/browser": 4.0.18
- vitest: 4.0.18
- peerDependenciesMeta:
- "@vitest/browser":
- optional: true
- checksum: 10c0/e23e0da86f0b2a020c51562bc40ebdc7fc7553c24f8071dfb39a6df0161badbd5eaf2eebbf8ceaef18933a18c1934ff52d1c0c4bde77bb87e0c1feb0c8cbee4d
- languageName: node
- linkType: hard
-
-"@vitest/expect@npm:4.0.18":
- version: 4.0.18
- resolution: "@vitest/expect@npm:4.0.18"
- dependencies:
- "@standard-schema/spec": "npm:^1.0.0"
- "@types/chai": "npm:^5.2.2"
- "@vitest/spy": "npm:4.0.18"
- "@vitest/utils": "npm:4.0.18"
- chai: "npm:^6.2.1"
- tinyrainbow: "npm:^3.0.3"
- checksum: 10c0/123b0aa111682e82ec5289186df18037b1a1768700e468ee0f9879709aaa320cf790463c15c0d8ee10df92b402f4394baf5d27797e604d78e674766d87bcaadc
- languageName: node
- linkType: hard
-
-"@vitest/mocker@npm:4.0.18":
- version: 4.0.18
- resolution: "@vitest/mocker@npm:4.0.18"
- dependencies:
- "@vitest/spy": "npm:4.0.18"
- estree-walker: "npm:^3.0.3"
- magic-string: "npm:^0.30.21"
- peerDependencies:
- msw: ^2.4.9
- vite: ^6.0.0 || ^7.0.0-0
- peerDependenciesMeta:
- msw:
- optional: true
- vite:
- optional: true
- checksum: 10c0/fb0a257e7e167759d4ad228d53fa7bad2267586459c4a62188f2043dd7163b4b02e1e496dc3c227837f776e7d73d6c4343613e89e7da379d9d30de8260f1ee4b
- languageName: node
- linkType: hard
-
-"@vitest/pretty-format@npm:4.0.18":
- version: 4.0.18
- resolution: "@vitest/pretty-format@npm:4.0.18"
- dependencies:
- tinyrainbow: "npm:^3.0.3"
- checksum: 10c0/0086b8c88eeca896d8e4b98fcdef452c8041a1b63eb9e85d3e0bcc96c8aa76d8e9e0b6990ebb0bb0a697c4ebab347e7735888b24f507dbff2742ddce7723fd94
- languageName: node
- linkType: hard
-
-"@vitest/pretty-format@npm:^3.0.3":
- version: 3.0.3
- resolution: "@vitest/pretty-format@npm:3.0.3"
- dependencies:
- tinyrainbow: "npm:^2.0.0"
- checksum: 10c0/f69a95bda27dc5428fffc42e99188d08107b862093b066989b601d15e5a37e065f1c978d3fd6cb4713b2537104ecb3d29916598c92a86ee76f6dda684c8612df
- languageName: node
- linkType: hard
-
-"@vitest/runner@npm:4.0.18":
- version: 4.0.18
- resolution: "@vitest/runner@npm:4.0.18"
- dependencies:
- "@vitest/utils": "npm:4.0.18"
- pathe: "npm:^2.0.3"
- checksum: 10c0/fdb4afa411475133c05ba266c8092eaf1e56cbd5fb601f92ec6ccb9bab7ca52e06733ee8626599355cba4ee71cb3a8f28c84d3b69dc972e41047edc50229bc01
- languageName: node
- linkType: hard
-
-"@vitest/snapshot@npm:4.0.18":
- version: 4.0.18
- resolution: "@vitest/snapshot@npm:4.0.18"
- dependencies:
- "@vitest/pretty-format": "npm:4.0.18"
- magic-string: "npm:^0.30.21"
- pathe: "npm:^2.0.3"
- checksum: 10c0/d3bfefa558db9a69a66886ace6575eb96903a5ba59f4d9a5d0fecb4acc2bb8dbb443ef409f5ac1475f2e1add30bd1d71280f98912da35e89c75829df9e84ea43
- languageName: node
- linkType: hard
-
-"@vitest/spy@npm:4.0.18":
- version: 4.0.18
- resolution: "@vitest/spy@npm:4.0.18"
- checksum: 10c0/6de537890b3994fcadb8e8d8ac05942320ae184f071ec395d978a5fba7fa928cbb0c5de85af86a1c165706c466e840de8779eaff8c93450c511c7abaeb9b8a4e
- languageName: node
- linkType: hard
-
-"@vitest/utils@npm:4.0.18":
- version: 4.0.18
- resolution: "@vitest/utils@npm:4.0.18"
- dependencies:
- "@vitest/pretty-format": "npm:4.0.18"
- tinyrainbow: "npm:^3.0.3"
- checksum: 10c0/4a3c43c1421eb90f38576926496f6c80056167ba111e63f77cf118983902673737a1a38880b890d7c06ec0a12475024587344ee502b3c43093781533022f2aeb
- languageName: node
- linkType: hard
-
-"abbrev@npm:^3.0.0":
- version: 3.0.0
- resolution: "abbrev@npm:3.0.0"
- checksum: 10c0/049704186396f571650eb7b22ed3627b77a5aedf98bb83caf2eac81ca2a3e25e795394b0464cfb2d6076df3db6a5312139eac5b6a126ca296ac53c5008069c28
- languageName: node
- linkType: hard
-
-"acorn-jsx@npm:^5.3.2":
- version: 5.3.2
- resolution: "acorn-jsx@npm:5.3.2"
- peerDependencies:
- acorn: ^6.0.0 || ^7.0.0 || ^8.0.0
- checksum: 10c0/4c54868fbef3b8d58927d5e33f0a4de35f59012fe7b12cf9dfbb345fb8f46607709e1c4431be869a23fb63c151033d84c4198fa9f79385cec34fcb1dd53974c1
- languageName: node
- linkType: hard
-
-"acorn@npm:^8.14.0, acorn@npm:^8.8.1, acorn@npm:^8.8.2":
- version: 8.14.0
- resolution: "acorn@npm:8.14.0"
- bin:
- acorn: bin/acorn
- checksum: 10c0/6d4ee461a7734b2f48836ee0fbb752903606e576cc100eb49340295129ca0b452f3ba91ddd4424a1d4406a98adfb2ebb6bd0ff4c49d7a0930c10e462719bbfd7
- languageName: node
- linkType: hard
-
-"acorn@npm:^8.16.0, acorn@npm:^8.9.0":
- version: 8.16.0
- resolution: "acorn@npm:8.16.0"
- bin:
- acorn: bin/acorn
- checksum: 10c0/c9c52697227661b68d0debaf972222d4f622aa06b185824164e153438afa7b08273432ca43ea792cadb24dada1d46f6f6bb1ef8de9956979288cc1b96bf9914e
- languageName: node
- linkType: hard
-
-"agent-base@npm:6":
- version: 6.0.2
- resolution: "agent-base@npm:6.0.2"
- dependencies:
- debug: "npm:4"
- checksum: 10c0/dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261
- languageName: node
- linkType: hard
-
-"agent-base@npm:^7.1.0":
- version: 7.1.1
- resolution: "agent-base@npm:7.1.1"
- dependencies:
- debug: "npm:^4.3.4"
- checksum: 10c0/e59ce7bed9c63bf071a30cc471f2933862044c97fd9958967bfe22521d7a0f601ce4ed5a8c011799d0c726ca70312142ae193bbebb60f576b52be19d4a363b50
- languageName: node
- linkType: hard
-
-"agent-base@npm:^7.1.2":
- version: 7.1.3
- resolution: "agent-base@npm:7.1.3"
- checksum: 10c0/6192b580c5b1d8fb399b9c62bf8343d76654c2dd62afcb9a52b2cf44a8b6ace1e3b704d3fe3547d91555c857d3df02603341ff2cb961b9cfe2b12f9f3c38ee11
- languageName: node
- linkType: hard
-
-"ajv@npm:^6.12.4":
- version: 6.14.0
- resolution: "ajv@npm:6.14.0"
- dependencies:
- fast-deep-equal: "npm:^3.1.1"
- fast-json-stable-stringify: "npm:^2.0.0"
- json-schema-traverse: "npm:^0.4.1"
- uri-js: "npm:^4.2.2"
- checksum: 10c0/a2bc39b0555dc9802c899f86990eb8eed6e366cddbf65be43d5aa7e4f3c4e1a199d5460fd7ca4fb3d864000dbbc049253b72faa83b3b30e641ca52cb29a68c22
- languageName: node
- linkType: hard
-
-"another-json@npm:^0.2.0":
- version: 0.2.0
- resolution: "another-json@npm:0.2.0"
- checksum: 10c0/c13a8fcb3b692c998fa81f88053971c9019766d6ab95f0fb2e03462de56ceffa63b08d85944662f9d490c51cfd1abb4eb71abb72a003f4c4b9ae4b58339aa397
- languageName: node
- linkType: hard
-
-"ansi-regex@npm:^5.0.1":
- version: 5.0.1
- resolution: "ansi-regex@npm:5.0.1"
- checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737
- languageName: node
- linkType: hard
-
-"ansi-regex@npm:^6.0.1":
- version: 6.1.0
- resolution: "ansi-regex@npm:6.1.0"
- checksum: 10c0/a91daeddd54746338478eef88af3439a7edf30f8e23196e2d6ed182da9add559c601266dbef01c2efa46a958ad6f1f8b176799657616c702b5b02e799e7fd8dc
- languageName: node
- linkType: hard
-
-"ansi-styles@npm:^3.2.1":
- version: 3.2.1
- resolution: "ansi-styles@npm:3.2.1"
- dependencies:
- color-convert: "npm:^1.9.0"
- checksum: 10c0/ece5a8ef069fcc5298f67e3f4771a663129abd174ea2dfa87923a2be2abf6cd367ef72ac87942da00ce85bd1d651d4cd8595aebdb1b385889b89b205860e977b
- languageName: node
- linkType: hard
-
-"ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0":
- version: 4.3.0
- resolution: "ansi-styles@npm:4.3.0"
- dependencies:
- color-convert: "npm:^2.0.1"
- checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041
- languageName: node
- linkType: hard
-
-"ansi-styles@npm:^5.0.0":
- version: 5.2.0
- resolution: "ansi-styles@npm:5.2.0"
- checksum: 10c0/9c4ca80eb3c2fb7b33841c210d2f20807f40865d27008d7c3f707b7f95cab7d67462a565e2388ac3285b71cb3d9bb2173de8da37c57692a362885ec34d6e27df
- languageName: node
- linkType: hard
-
-"ansi-styles@npm:^6.1.0":
- version: 6.2.1
- resolution: "ansi-styles@npm:6.2.1"
- checksum: 10c0/5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c
- languageName: node
- linkType: hard
-
-"anymatch@npm:^3.1.3, anymatch@npm:~3.1.2":
- version: 3.1.3
- resolution: "anymatch@npm:3.1.3"
- dependencies:
- normalize-path: "npm:^3.0.0"
- picomatch: "npm:^2.0.4"
- checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac
- languageName: node
- linkType: hard
-
-"are-docs-informative@npm:^0.0.2":
- version: 0.0.2
- resolution: "are-docs-informative@npm:0.0.2"
- checksum: 10c0/f0326981bd699c372d268b526b170a28f2e1aec2cf99d7de0686083528427ecdf6ae41fef5d9988e224a5616298af747ad8a76e7306b0a7c97cc085a99636d60
- languageName: node
- linkType: hard
-
-"argparse@npm:^2.0.1":
- version: 2.0.1
- resolution: "argparse@npm:2.0.1"
- checksum: 10c0/c5640c2d89045371c7cedd6a70212a04e360fd34d6edeae32f6952c63949e3525ea77dbec0289d8213a99bbaeab5abfa860b5c12cf88a2e6cf8106e90dd27a7e
- languageName: node
- linkType: hard
-
-"aria-hidden@npm:^1.1.1, aria-hidden@npm:^1.2.4":
- version: 1.2.4
- resolution: "aria-hidden@npm:1.2.4"
- dependencies:
- tslib: "npm:^2.0.0"
- checksum: 10c0/8abcab2e1432efc4db415e97cb3959649ddf52c8fc815d7384f43f3d3abf56f1c12852575d00df9a8927f421d7e0712652dd5f8db244ea57634344e29ecfc74a
- languageName: node
- linkType: hard
-
-"aria-query@npm:5.3.0":
- version: 5.3.0
- resolution: "aria-query@npm:5.3.0"
- dependencies:
- dequal: "npm:^2.0.3"
- checksum: 10c0/2bff0d4eba5852a9dd578ecf47eaef0e82cc52569b48469b0aac2db5145db0b17b7a58d9e01237706d1e14b7a1b0ac9b78e9c97027ad97679dd8f91b85da1469
- languageName: node
- linkType: hard
-
-"aria-query@npm:^5.0.0, aria-query@npm:^5.3.2":
- version: 5.3.2
- resolution: "aria-query@npm:5.3.2"
- checksum: 10c0/003c7e3e2cff5540bf7a7893775fc614de82b0c5dde8ae823d47b7a28a9d4da1f7ed85f340bdb93d5649caa927755f0e31ecc7ab63edfdfc00c8ef07e505e03e
- languageName: node
- linkType: hard
-
-"array-buffer-byte-length@npm:^1.0.1, array-buffer-byte-length@npm:^1.0.2":
- version: 1.0.2
- resolution: "array-buffer-byte-length@npm:1.0.2"
- dependencies:
- call-bound: "npm:^1.0.3"
- is-array-buffer: "npm:^3.0.5"
- checksum: 10c0/74e1d2d996941c7a1badda9cabb7caab8c449db9086407cad8a1b71d2604cc8abf105db8ca4e02c04579ec58b7be40279ddb09aea4784832984485499f48432d
- languageName: node
- linkType: hard
-
-"array-includes@npm:^3.1.6, array-includes@npm:^3.1.8":
- version: 3.1.8
- resolution: "array-includes@npm:3.1.8"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.2"
- es-object-atoms: "npm:^1.0.0"
- get-intrinsic: "npm:^1.2.4"
- is-string: "npm:^1.0.7"
- checksum: 10c0/5b1004d203e85873b96ddc493f090c9672fd6c80d7a60b798da8a14bff8a670ff95db5aafc9abc14a211943f05220dacf8ea17638ae0af1a6a47b8c0b48ce370
- languageName: node
- linkType: hard
-
-"array-includes@npm:^3.1.9":
- version: 3.1.9
- resolution: "array-includes@npm:3.1.9"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.4"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.24.0"
- es-object-atoms: "npm:^1.1.1"
- get-intrinsic: "npm:^1.3.0"
- is-string: "npm:^1.1.1"
- math-intrinsics: "npm:^1.1.0"
- checksum: 10c0/0235fa69078abeac05ac4250699c44996bc6f774a9cbe45db48674ce6bd142f09b327d31482ff75cf03344db4ea03eae23edb862d59378b484b47ed842574856
- languageName: node
- linkType: hard
-
-"array-union@npm:^2.1.0":
- version: 2.1.0
- resolution: "array-union@npm:2.1.0"
- checksum: 10c0/429897e68110374f39b771ec47a7161fc6a8fc33e196857c0a396dc75df0b5f65e4d046674db764330b6bb66b39ef48dd7c53b6a2ee75cfb0681e0c1a7033962
- languageName: node
- linkType: hard
-
-"array.prototype.findlast@npm:^1.2.5":
- version: 1.2.5
- resolution: "array.prototype.findlast@npm:1.2.5"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.2"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.0.0"
- es-shim-unscopables: "npm:^1.0.2"
- checksum: 10c0/ddc952b829145ab45411b9d6adcb51a8c17c76bf89c9dd64b52d5dffa65d033da8c076ed2e17091779e83bc892b9848188d7b4b33453c5565e65a92863cb2775
- languageName: node
- linkType: hard
-
-"array.prototype.findlastindex@npm:^1.2.6":
- version: 1.2.6
- resolution: "array.prototype.findlastindex@npm:1.2.6"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.4"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.9"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.1.1"
- es-shim-unscopables: "npm:^1.1.0"
- checksum: 10c0/82559310d2e57ec5f8fc53d7df420e3abf0ba497935de0a5570586035478ba7d07618cb18e2d4ada2da514c8fb98a034aaf5c06caa0a57e2f7f4c4adedef5956
- languageName: node
- linkType: hard
-
-"array.prototype.flat@npm:^1.3.1, array.prototype.flat@npm:^1.3.3":
- version: 1.3.3
- resolution: "array.prototype.flat@npm:1.3.3"
- dependencies:
- call-bind: "npm:^1.0.8"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.5"
- es-shim-unscopables: "npm:^1.0.2"
- checksum: 10c0/d90e04dfbc43bb96b3d2248576753d1fb2298d2d972e29ca7ad5ec621f0d9e16ff8074dae647eac4f31f4fb7d3f561a7ac005fb01a71f51705a13b5af06a7d8a
- languageName: node
- linkType: hard
-
-"array.prototype.flatmap@npm:^1.3.2":
- version: 1.3.2
- resolution: "array.prototype.flatmap@npm:1.3.2"
- dependencies:
- call-bind: "npm:^1.0.2"
- define-properties: "npm:^1.2.0"
- es-abstract: "npm:^1.22.1"
- es-shim-unscopables: "npm:^1.0.0"
- checksum: 10c0/67b3f1d602bb73713265145853128b1ad77cc0f9b833c7e1e056b323fbeac41a4ff1c9c99c7b9445903caea924d9ca2450578d9011913191aa88cc3c3a4b54f4
- languageName: node
- linkType: hard
-
-"array.prototype.flatmap@npm:^1.3.3":
- version: 1.3.3
- resolution: "array.prototype.flatmap@npm:1.3.3"
- dependencies:
- call-bind: "npm:^1.0.8"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.5"
- es-shim-unscopables: "npm:^1.0.2"
- checksum: 10c0/ba899ea22b9dc9bf276e773e98ac84638ed5e0236de06f13d63a90b18ca9e0ec7c97d622d899796e3773930b946cd2413d098656c0c5d8cc58c6f25c21e6bd54
- languageName: node
- linkType: hard
-
-"array.prototype.tosorted@npm:^1.1.4":
- version: 1.1.4
- resolution: "array.prototype.tosorted@npm:1.1.4"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.3"
- es-errors: "npm:^1.3.0"
- es-shim-unscopables: "npm:^1.0.2"
- checksum: 10c0/eb3c4c4fc0381b0bf6dba2ea4d48d367c2827a0d4236a5718d97caaccc6b78f11f4cadf090736e86301d295a6aa4967ed45568f92ced51be8cbbacd9ca410943
- languageName: node
- linkType: hard
-
-"arraybuffer.prototype.slice@npm:^1.0.4":
- version: 1.0.4
- resolution: "arraybuffer.prototype.slice@npm:1.0.4"
- dependencies:
- array-buffer-byte-length: "npm:^1.0.1"
- call-bind: "npm:^1.0.8"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.5"
- es-errors: "npm:^1.3.0"
- get-intrinsic: "npm:^1.2.6"
- is-array-buffer: "npm:^3.0.4"
- checksum: 10c0/2f2459caa06ae0f7f615003f9104b01f6435cc803e11bd2a655107d52a1781dc040532dc44d93026b694cc18793993246237423e13a5337e86b43ed604932c06
- languageName: node
- linkType: hard
-
-"asn1.js@npm:^4.10.1":
- version: 4.10.1
- resolution: "asn1.js@npm:4.10.1"
- dependencies:
- bn.js: "npm:^4.0.0"
- inherits: "npm:^2.0.1"
- minimalistic-assert: "npm:^1.0.0"
- checksum: 10c0/afa7f3ab9e31566c80175a75b182e5dba50589dcc738aa485be42bdd787e2a07246a4b034d481861123cbe646a7656f318f4f1cad2e9e5e808a210d5d6feaa88
- languageName: node
- linkType: hard
-
-"assert@npm:^2.0.0":
- version: 2.1.0
- resolution: "assert@npm:2.1.0"
- dependencies:
- call-bind: "npm:^1.0.2"
- is-nan: "npm:^1.3.2"
- object-is: "npm:^1.1.5"
- object.assign: "npm:^4.1.4"
- util: "npm:^0.12.5"
- checksum: 10c0/7271a5da883c256a1fa690677bf1dd9d6aa882139f2bed1cd15da4f9e7459683e1da8e32a203d6cc6767e5e0f730c77a9532a87b896b4b0af0dd535f668775f0
- languageName: node
- linkType: hard
-
-"ast-types-flow@npm:^0.0.8":
- version: 0.0.8
- resolution: "ast-types-flow@npm:0.0.8"
- checksum: 10c0/f2a0ba8055353b743c41431974521e5e852a9824870cd6fce2db0e538ac7bf4da406bbd018d109af29ff3f8f0993f6a730c9eddbd0abd031fbcb29ca75c1014e
- languageName: node
- linkType: hard
-
-"ast-v8-to-istanbul@npm:^0.3.10":
- version: 0.3.12
- resolution: "ast-v8-to-istanbul@npm:0.3.12"
- dependencies:
- "@jridgewell/trace-mapping": "npm:^0.3.31"
- estree-walker: "npm:^3.0.3"
- js-tokens: "npm:^10.0.0"
- checksum: 10c0/bad6ba222b1073c165c8d65dbf366193d4a90536dabe37f93a3df162269b1c9473975756e4c048f708c235efccc26f8e5321c547b7e9563b64b21b2e0f27cbc9
- languageName: node
- linkType: hard
-
-"async@npm:^3.2.3":
- version: 3.2.6
- resolution: "async@npm:3.2.6"
- checksum: 10c0/36484bb15ceddf07078688d95e27076379cc2f87b10c03b6dd8a83e89475a3c8df5848859dd06a4c95af1e4c16fc973de0171a77f18ea00be899aca2a4f85e70
- languageName: node
- linkType: hard
-
-"autoprefixer@npm:^10.4.23":
- version: 10.4.23
- resolution: "autoprefixer@npm:10.4.23"
- dependencies:
- browserslist: "npm:^4.28.1"
- caniuse-lite: "npm:^1.0.30001760"
- fraction.js: "npm:^5.3.4"
- picocolors: "npm:^1.1.1"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.1.0
- bin:
- autoprefixer: bin/autoprefixer
- checksum: 10c0/3765c5d0fa3e95fb2ebe9d5a6d4da0156f5d346c7ec9ac0fbf5c97c8139d0ca1e8743bf5dc1b4aa954467be6929fddf8498a3b6202d468d70b5f359f3b6af90f
- languageName: node
- linkType: hard
-
-"available-typed-arrays@npm:^1.0.7":
- version: 1.0.7
- resolution: "available-typed-arrays@npm:1.0.7"
- dependencies:
- possible-typed-array-names: "npm:^1.0.0"
- checksum: 10c0/d07226ef4f87daa01bd0fe80f8f310982e345f372926da2e5296aecc25c41cab440916bbaa4c5e1034b453af3392f67df5961124e4b586df1e99793a1374bdb2
- languageName: node
- linkType: hard
-
-"axe-core@npm:^4.10.0, axe-core@npm:^4.10.2":
- version: 4.10.2
- resolution: "axe-core@npm:4.10.2"
- checksum: 10c0/0e20169077de96946a547fce0df39d9aeebe0077f9d3eeff4896518b96fde857f80b98f0d4279274a7178791744dd5a54bb4f322de45b4f561ffa2586ff9a09d
- languageName: node
- linkType: hard
-
-"axobject-query@npm:^4.1.0":
- version: 4.1.0
- resolution: "axobject-query@npm:4.1.0"
- checksum: 10c0/c470e4f95008f232eadd755b018cb55f16c03ccf39c027b941cd8820ac6b68707ce5d7368a46756db4256fbc91bb4ead368f84f7fb034b2b7932f082f6dc0775
- languageName: node
- linkType: hard
-
-"b4a@npm:^1.6.4":
- version: 1.6.7
- resolution: "b4a@npm:1.6.7"
- checksum: 10c0/ec2f004d1daae04be8c5a1f8aeb7fea213c34025e279db4958eb0b82c1729ee25f7c6e89f92a5f65c8a9cf2d017ce27e3dda912403341d1781bd74528a4849d4
- languageName: node
- linkType: hard
-
-"babel-plugin-polyfill-corejs2@npm:^0.4.15":
- version: 0.4.15
- resolution: "babel-plugin-polyfill-corejs2@npm:0.4.15"
- dependencies:
- "@babel/compat-data": "npm:^7.28.6"
- "@babel/helper-define-polyfill-provider": "npm:^0.6.6"
- semver: "npm:^6.3.1"
- peerDependencies:
- "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
- checksum: 10c0/5e3ff853a5056bdc0816320523057b45d52c9ea01c847fd07886a4202b0c1324dc97eda4b777c98387927ff02d913fedbe9ba9943c0d4030714048e0b9e61682
- languageName: node
- linkType: hard
-
-"babel-plugin-polyfill-corejs3@npm:^0.14.0":
- version: 0.14.0
- resolution: "babel-plugin-polyfill-corejs3@npm:0.14.0"
- dependencies:
- "@babel/helper-define-polyfill-provider": "npm:^0.6.6"
- core-js-compat: "npm:^3.48.0"
- peerDependencies:
- "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
- checksum: 10c0/db7f530752a2bcb891c0dc80c3d025a48d49c78d41b0ad91cc853669460cd9e3107857a3667f645f0e25c2af9fc3d1e38d5b1c4e3e60aa22e7df9d68550712a4
- languageName: node
- linkType: hard
-
-"babel-plugin-polyfill-regenerator@npm:^0.6.6":
- version: 0.6.6
- resolution: "babel-plugin-polyfill-regenerator@npm:0.6.6"
- dependencies:
- "@babel/helper-define-polyfill-provider": "npm:^0.6.6"
- peerDependencies:
- "@babel/core": ^7.4.0 || ^8.0.0-0 <8.0.0
- checksum: 10c0/0ef91d8361c118e7b16d8592c053707325b8168638ea4636b76530c8bc6a1b5aac5c6ca5140e8f3fcdb634a7a2e636133e6b9ef70a75e6417a258a7fddc04bd7
- languageName: node
- linkType: hard
-
-"babel-plugin-transform-vite-meta-env@npm:^1.0.3":
- version: 1.0.3
- resolution: "babel-plugin-transform-vite-meta-env@npm:1.0.3"
- dependencies:
- "@babel/runtime": "npm:^7.13.9"
- "@types/babel__core": "npm:^7.1.12"
- checksum: 10c0/fd602e8e9b64b06c93106b295a75f41a89a527d825ac3984baafab428108d3b1a12b6280e0bf19a58bda25e65e839a67f71bf1d916424fc81201dc14de241b64
- languageName: node
- linkType: hard
-
-"balanced-match@npm:^4.0.2":
- version: 4.0.4
- resolution: "balanced-match@npm:4.0.4"
- checksum: 10c0/07e86102a3eb2ee2a6a1a89164f29d0dbaebd28f2ca3f5ca786f36b8b23d9e417eb3be45a4acf754f837be5ac0a2317de90d3fcb7f4f4dc95720a1f36b26a17b
- languageName: node
- linkType: hard
-
-"bare-events@npm:^2.2.0":
- version: 2.5.4
- resolution: "bare-events@npm:2.5.4"
- checksum: 10c0/877a9cea73d545e2588cdbd6fd01653e27dac48ad6b44985cdbae73e1f57f292d4ba52e25d1fba53674c1053c463d159f3d5c7bc36a2e6e192e389b499ddd627
- languageName: node
- linkType: hard
-
-"base-x@npm:^5.0.0":
- version: 5.0.1
- resolution: "base-x@npm:5.0.1"
- checksum: 10c0/4ab6b02262b4fd499b147656f63ce7328bd5f895450401ce58a2f9e87828aea507cf0c320a6d8725389f86e8a48397562661c0bca28ef3276a22821b30f7a713
- languageName: node
- linkType: hard
-
-"base64-js@npm:^1.3.1":
- version: 1.5.1
- resolution: "base64-js@npm:1.5.1"
- checksum: 10c0/f23823513b63173a001030fae4f2dabe283b99a9d324ade3ad3d148e218134676f1ee8568c877cd79ec1c53158dcf2d2ba527a97c606618928ba99dd930102bf
- languageName: node
- linkType: hard
-
-"baseline-browser-mapping@npm:^2.9.0":
- version: 2.9.11
- resolution: "baseline-browser-mapping@npm:2.9.11"
- bin:
- baseline-browser-mapping: dist/cli.js
- checksum: 10c0/eba49fcc1b33ab994aeeb73a4848f2670e06a0886dd5b903689ae6f60d47e7f1bea9262dbb2548c48179e858f7eda2b82ddf941ae783b862f4dcc51085a246f2
- languageName: node
- linkType: hard
-
-"before-after-hook@npm:^2.2.0":
- version: 2.2.3
- resolution: "before-after-hook@npm:2.2.3"
- checksum: 10c0/0488c4ae12df758ca9d49b3bb27b47fd559677965c52cae7b335784724fb8bf96c42b6e5ba7d7afcbc31facb0e294c3ef717cc41c5bc2f7bd9e76f8b90acd31c
- languageName: node
- linkType: hard
-
-"bent@npm:~7.3.6":
- version: 7.3.12
- resolution: "bent@npm:7.3.12"
- dependencies:
- bytesish: "npm:^0.4.1"
- caseless: "npm:~0.12.0"
- is-stream: "npm:^2.0.0"
- checksum: 10c0/20f77364bcb462a6eb0ea7322442a1125ca6181ea6b94ad498b8348c678a2adf56c231a653bcac016c5d017aee91ff55b2169b69d8263a4b3c710f4121cbe615
- languageName: node
- linkType: hard
-
-"binary-extensions@npm:^2.0.0":
- version: 2.3.0
- resolution: "binary-extensions@npm:2.3.0"
- checksum: 10c0/75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5
- languageName: node
- linkType: hard
-
-"bl@npm:^5.0.0":
- version: 5.1.0
- resolution: "bl@npm:5.1.0"
- dependencies:
- buffer: "npm:^6.0.3"
- inherits: "npm:^2.0.4"
- readable-stream: "npm:^3.4.0"
- checksum: 10c0/528a9c3d7d6b87af98c46f10a887654d027c28c503c7f7de87440e643f0056d7a2319a967762b8ec18150c64799d2825a277147a752a0570a7407c0b705b0d01
- languageName: node
- linkType: hard
-
-"bn.js@npm:^4.0.0, bn.js@npm:^4.1.0, bn.js@npm:^4.11.9":
- version: 4.12.2
- resolution: "bn.js@npm:4.12.2"
- checksum: 10c0/09a249faa416a9a1ce68b5f5ec8bbca87fe54e5dd4ef8b1cc8a4969147b80035592bddcb1e9cc814c3ba79e573503d5c5178664b722b509fb36d93620dba9b57
- languageName: node
- linkType: hard
-
-"bn.js@npm:^5.2.1, bn.js@npm:^5.2.2":
- version: 5.2.2
- resolution: "bn.js@npm:5.2.2"
- checksum: 10c0/cb97827d476aab1a0194df33cd84624952480d92da46e6b4a19c32964aa01553a4a613502396712704da2ec8f831cf98d02e74ca03398404bd78a037ba93f2ab
- languageName: node
- linkType: hard
-
-"boolbase@npm:^1.0.0":
- version: 1.0.0
- resolution: "boolbase@npm:1.0.0"
- checksum: 10c0/e4b53deb4f2b85c52be0e21a273f2045c7b6a6ea002b0e139c744cb6f95e9ec044439a52883b0d74dedd1ff3da55ed140cfdddfed7fb0cccbed373de5dce1bcf
- languageName: node
- linkType: hard
-
-"brace-expansion@npm:^5.0.2":
- version: 5.0.3
- resolution: "brace-expansion@npm:5.0.3"
- dependencies:
- balanced-match: "npm:^4.0.2"
- checksum: 10c0/e474d300e581ec56851b3863ff1cf18573170c6d06deb199ccbd03b2119c36975f6ce2abc7b770f5bebddc1ab022661a9fea9b4d56f33315d7bef54d8793869e
- languageName: node
- linkType: hard
-
-"braces@npm:^3.0.3, braces@npm:~3.0.2":
- version: 3.0.3
- resolution: "braces@npm:3.0.3"
- dependencies:
- fill-range: "npm:^7.1.1"
- checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04
- languageName: node
- linkType: hard
-
-"broccoli-node-api@npm:^1.7.0":
- version: 1.7.0
- resolution: "broccoli-node-api@npm:1.7.0"
- checksum: 10c0/7ea3e32847c32c9017f7e9def8d80e02070b80dad3608a37d8472c0f535a768b9b1fe71afd2153a7c927fe59a724bc688e591b17666f86a8fc2bc4ec74a50532
- languageName: node
- linkType: hard
-
-"broccoli-node-info@npm:^2.1.0":
- version: 2.2.0
- resolution: "broccoli-node-info@npm:2.2.0"
- checksum: 10c0/d904e31772e4f7a2af442dd3edc2232753d97ab68be5bd1b4f3b11f39e80b6f21e2b89204717a6d8815b530883a2c9054a6ce2c96a6e16f9aba9b0cb4eb2af7a
- languageName: node
- linkType: hard
-
-"broccoli-output-wrapper@npm:^3.2.5":
- version: 3.2.5
- resolution: "broccoli-output-wrapper@npm:3.2.5"
- dependencies:
- fs-extra: "npm:^8.1.0"
- heimdalljs-logger: "npm:^0.1.10"
- symlink-or-copy: "npm:^1.2.0"
- checksum: 10c0/7e17524277cc9d1349967d329c2d7ec4a05eca5164e566948cf36043f5332581c7c76466b43d36b46e404403558f02930e89a7586f27e6312814e5ec4d130154
- languageName: node
- linkType: hard
-
-"broccoli-plugin@npm:^4.0.7":
- version: 4.0.7
- resolution: "broccoli-plugin@npm:4.0.7"
- dependencies:
- broccoli-node-api: "npm:^1.7.0"
- broccoli-output-wrapper: "npm:^3.2.5"
- fs-merger: "npm:^3.2.1"
- promise-map-series: "npm:^0.3.0"
- quick-temp: "npm:^0.1.8"
- rimraf: "npm:^3.0.2"
- symlink-or-copy: "npm:^1.3.1"
- checksum: 10c0/5599a53ca43c18f2c763d05d8feda3fe0cb1f24194c6309fa316a53b67001d6215b7f99611011bb92843d2ff792345cec7b9a1947bfd728a4196a8057e3fe051
- languageName: node
- linkType: hard
-
-"brorand@npm:^1.0.1, brorand@npm:^1.1.0":
- version: 1.1.0
- resolution: "brorand@npm:1.1.0"
- checksum: 10c0/6f366d7c4990f82c366e3878492ba9a372a73163c09871e80d82fb4ae0d23f9f8924cb8a662330308206e6b3b76ba1d528b4601c9ef73c2166b440b2ea3b7571
- languageName: node
- linkType: hard
-
-"browser-resolve@npm:^2.0.0":
- version: 2.0.0
- resolution: "browser-resolve@npm:2.0.0"
- dependencies:
- resolve: "npm:^1.17.0"
- checksum: 10c0/06c43adf3cb1939825ab9a4ac355b23272820ee421a20d04f62e0dabd9ea305e497b97f3ac027f87d53c366483aafe8673bbe1aaa5e41cd69eeafa65ac5fda6e
- languageName: node
- linkType: hard
-
-"browserify-aes@npm:^1.0.4, browserify-aes@npm:^1.2.0":
- version: 1.2.0
- resolution: "browserify-aes@npm:1.2.0"
- dependencies:
- buffer-xor: "npm:^1.0.3"
- cipher-base: "npm:^1.0.0"
- create-hash: "npm:^1.1.0"
- evp_bytestokey: "npm:^1.0.3"
- inherits: "npm:^2.0.1"
- safe-buffer: "npm:^5.0.1"
- checksum: 10c0/967f2ae60d610b7b252a4cbb55a7a3331c78293c94b4dd9c264d384ca93354c089b3af9c0dd023534efdc74ffbc82510f7ad4399cf82bc37bc07052eea485f18
- languageName: node
- linkType: hard
-
-"browserify-cipher@npm:^1.0.1":
- version: 1.0.1
- resolution: "browserify-cipher@npm:1.0.1"
- dependencies:
- browserify-aes: "npm:^1.0.4"
- browserify-des: "npm:^1.0.0"
- evp_bytestokey: "npm:^1.0.0"
- checksum: 10c0/aa256dcb42bc53a67168bbc94ab85d243b0a3b56109dee3b51230b7d010d9b78985ffc1fb36e145c6e4db151f888076c1cfc207baf1525d3e375cbe8187fe27d
- languageName: node
- linkType: hard
-
-"browserify-des@npm:^1.0.0":
- version: 1.0.2
- resolution: "browserify-des@npm:1.0.2"
- dependencies:
- cipher-base: "npm:^1.0.1"
- des.js: "npm:^1.0.0"
- inherits: "npm:^2.0.1"
- safe-buffer: "npm:^5.1.2"
- checksum: 10c0/943eb5d4045eff80a6cde5be4e5fbb1f2d5002126b5a4789c3c1aae3cdddb1eb92b00fb92277f512288e5c6af330730b1dbabcf7ce0923e749e151fcee5a074d
- languageName: node
- linkType: hard
-
-"browserify-rsa@npm:^4.0.0, browserify-rsa@npm:^4.1.1":
- version: 4.1.1
- resolution: "browserify-rsa@npm:4.1.1"
- dependencies:
- bn.js: "npm:^5.2.1"
- randombytes: "npm:^2.1.0"
- safe-buffer: "npm:^5.2.1"
- checksum: 10c0/b650ee1192e3d7f3d779edc06dd96ed8720362e72ac310c367b9d7fe35f7e8dbb983c1829142b2b3215458be8bf17c38adc7224920843024ed8cf39e19c513c0
- languageName: node
- linkType: hard
-
-"browserify-sign@npm:^4.2.3":
- version: 4.2.5
- resolution: "browserify-sign@npm:4.2.5"
- dependencies:
- bn.js: "npm:^5.2.2"
- browserify-rsa: "npm:^4.1.1"
- create-hash: "npm:^1.2.0"
- create-hmac: "npm:^1.1.7"
- elliptic: "npm:^6.6.1"
- inherits: "npm:^2.0.4"
- parse-asn1: "npm:^5.1.9"
- readable-stream: "npm:^2.3.8"
- safe-buffer: "npm:^5.2.1"
- checksum: 10c0/6192f9696934bbba58932d098face34c2ab9cac09feed826618b86b8c00a897dab7324cd9aa7d6cb1597064f197264ad72fa5418d4d52bf3c8f9b9e0e124655e
- languageName: node
- linkType: hard
-
-"browserify-zlib@npm:^0.2.0":
- version: 0.2.0
- resolution: "browserify-zlib@npm:0.2.0"
- dependencies:
- pako: "npm:~1.0.5"
- checksum: 10c0/9ab10b6dc732c6c5ec8ebcbe5cb7fe1467f97402c9b2140113f47b5f187b9438f93a8e065d8baf8b929323c18324fbf1105af479ee86d9d36cab7d7ef3424ad9
- languageName: node
- linkType: hard
-
-"browserslist@npm:^4.24.0, browserslist@npm:^4.24.3":
- version: 4.24.4
- resolution: "browserslist@npm:4.24.4"
- dependencies:
- caniuse-lite: "npm:^1.0.30001688"
- electron-to-chromium: "npm:^1.5.73"
- node-releases: "npm:^2.0.19"
- update-browserslist-db: "npm:^1.1.1"
- bin:
- browserslist: cli.js
- checksum: 10c0/db7ebc1733cf471e0b490b4f47e3e2ea2947ce417192c9246644e92c667dd56a71406cc58f62ca7587caf828364892e9952904a02b7aead752bc65b62a37cfe9
- languageName: node
- linkType: hard
-
-"browserslist@npm:^4.28.1":
- version: 4.28.1
- resolution: "browserslist@npm:4.28.1"
- dependencies:
- baseline-browser-mapping: "npm:^2.9.0"
- caniuse-lite: "npm:^1.0.30001759"
- electron-to-chromium: "npm:^1.5.263"
- node-releases: "npm:^2.0.27"
- update-browserslist-db: "npm:^1.2.0"
- bin:
- browserslist: cli.js
- checksum: 10c0/545a5fa9d7234e3777a7177ec1e9134bb2ba60a69e6b95683f6982b1473aad347c77c1264ccf2ac5dea609a9731fbfbda6b85782bdca70f80f86e28a402504bd
- languageName: node
- linkType: hard
-
-"bs58@npm:^6.0.0":
- version: 6.0.0
- resolution: "bs58@npm:6.0.0"
- dependencies:
- base-x: "npm:^5.0.0"
- checksum: 10c0/61910839746625ee4f69369f80e2634e2123726caaa1da6b3bcefcf7efcd9bdca86603360fed9664ffdabe0038c51e542c02581c72ca8d44f60329fe1a6bc8f4
- languageName: node
- linkType: hard
-
-"buffer-from@npm:^1.0.0":
- version: 1.1.2
- resolution: "buffer-from@npm:1.1.2"
- checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34
- languageName: node
- linkType: hard
-
-"buffer-xor@npm:^1.0.3":
- version: 1.0.3
- resolution: "buffer-xor@npm:1.0.3"
- checksum: 10c0/fd269d0e0bf71ecac3146187cfc79edc9dbb054e2ee69b4d97dfb857c6d997c33de391696d04bdd669272751fa48e7872a22f3a6c7b07d6c0bc31dbe02a4075c
- languageName: node
- linkType: hard
-
-"buffer@npm:^5.7.1":
- version: 5.7.1
- resolution: "buffer@npm:5.7.1"
- dependencies:
- base64-js: "npm:^1.3.1"
- ieee754: "npm:^1.1.13"
- checksum: 10c0/27cac81cff434ed2876058d72e7c4789d11ff1120ef32c9de48f59eab58179b66710c488987d295ae89a228f835fc66d088652dffeb8e3ba8659f80eb091d55e
- languageName: node
- linkType: hard
-
-"buffer@npm:^6.0.3":
- version: 6.0.3
- resolution: "buffer@npm:6.0.3"
- dependencies:
- base64-js: "npm:^1.3.1"
- ieee754: "npm:^1.2.1"
- checksum: 10c0/2a905fbbcde73cc5d8bd18d1caa23715d5f83a5935867c2329f0ac06104204ba7947be098fe1317fbd8830e26090ff8e764f08cd14fefc977bb248c3487bcbd0
- languageName: node
- linkType: hard
-
-"builtin-modules@npm:^3.3.0":
- version: 3.3.0
- resolution: "builtin-modules@npm:3.3.0"
- checksum: 10c0/2cb3448b4f7306dc853632a4fcddc95e8d4e4b9868c139400027b71938fc6806d4ff44007deffb362ac85724bd40c2c6452fb6a0aa4531650eeddb98d8e5ee8a
- languageName: node
- linkType: hard
-
-"builtin-status-codes@npm:^3.0.0":
- version: 3.0.0
- resolution: "builtin-status-codes@npm:3.0.0"
- checksum: 10c0/c37bbba11a34c4431e56bd681b175512e99147defbe2358318d8152b3a01df7bf25e0305873947e5b350073d5ef41a364a22b37e48f1fb6d2fe6d5286a0f348c
- languageName: node
- linkType: hard
-
-"bytesish@npm:^0.4.1":
- version: 0.4.4
- resolution: "bytesish@npm:0.4.4"
- checksum: 10c0/469088f0020797dfbb61b6ce3972c91d95d79df8aacca55841ea93ac59ef3209bb04be8212b6265dfbafb7583a58dd73ca2f14e4feae36d3333a4f1509dd2eef
- languageName: node
- linkType: hard
-
-"cacache@npm:^19.0.1":
- version: 19.0.1
- resolution: "cacache@npm:19.0.1"
- dependencies:
- "@npmcli/fs": "npm:^4.0.0"
- fs-minipass: "npm:^3.0.0"
- glob: "npm:^10.2.2"
- lru-cache: "npm:^10.0.1"
- minipass: "npm:^7.0.3"
- minipass-collect: "npm:^2.0.1"
- minipass-flush: "npm:^1.0.5"
- minipass-pipeline: "npm:^1.2.4"
- p-map: "npm:^7.0.2"
- ssri: "npm:^12.0.0"
- tar: "npm:^7.4.3"
- unique-filename: "npm:^4.0.0"
- checksum: 10c0/01f2134e1bd7d3ab68be851df96c8d63b492b1853b67f2eecb2c37bb682d37cb70bb858a16f2f0554d3c0071be6dfe21456a1ff6fa4b7eed996570d6a25ffe9c
- languageName: node
- linkType: hard
-
-"call-bind-apply-helpers@npm:^1.0.0, call-bind-apply-helpers@npm:^1.0.1":
- version: 1.0.1
- resolution: "call-bind-apply-helpers@npm:1.0.1"
- dependencies:
- es-errors: "npm:^1.3.0"
- function-bind: "npm:^1.1.2"
- checksum: 10c0/acb2ab68bf2718e68a3e895f0d0b73ccc9e45b9b6f210f163512ba76f91dab409eb8792f6dae188356f9095747512a3101646b3dea9d37fb8c7c6bf37796d18c
- languageName: node
- linkType: hard
-
-"call-bind-apply-helpers@npm:^1.0.2":
- version: 1.0.2
- resolution: "call-bind-apply-helpers@npm:1.0.2"
- dependencies:
- es-errors: "npm:^1.3.0"
- function-bind: "npm:^1.1.2"
- checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938
- languageName: node
- linkType: hard
-
-"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2, call-bind@npm:^1.0.7, call-bind@npm:^1.0.8":
- version: 1.0.8
- resolution: "call-bind@npm:1.0.8"
- dependencies:
- call-bind-apply-helpers: "npm:^1.0.0"
- es-define-property: "npm:^1.0.0"
- get-intrinsic: "npm:^1.2.4"
- set-function-length: "npm:^1.2.2"
- checksum: 10c0/a13819be0681d915144467741b69875ae5f4eba8961eb0bf322aab63ec87f8250eb6d6b0dcbb2e1349876412a56129ca338592b3829ef4343527f5f18a0752d4
- languageName: node
- linkType: hard
-
-"call-bound@npm:^1.0.2, call-bound@npm:^1.0.3":
- version: 1.0.3
- resolution: "call-bound@npm:1.0.3"
- dependencies:
- call-bind-apply-helpers: "npm:^1.0.1"
- get-intrinsic: "npm:^1.2.6"
- checksum: 10c0/45257b8e7621067304b30dbd638e856cac913d31e8e00a80d6cf172911acd057846572d0b256b45e652d515db6601e2974a1b1a040e91b4fc36fb3dd86fa69cf
- languageName: node
- linkType: hard
-
-"call-bound@npm:^1.0.4":
- version: 1.0.4
- resolution: "call-bound@npm:1.0.4"
- dependencies:
- call-bind-apply-helpers: "npm:^1.0.2"
- get-intrinsic: "npm:^1.3.0"
- checksum: 10c0/f4796a6a0941e71c766aea672f63b72bc61234c4f4964dc6d7606e3664c307e7d77845328a8f3359ce39ddb377fed67318f9ee203dea1d47e46165dcf2917644
- languageName: node
- linkType: hard
-
-"callsites@npm:^3.0.0":
- version: 3.1.0
- resolution: "callsites@npm:3.1.0"
- checksum: 10c0/fff92277400eb06c3079f9e74f3af120db9f8ea03bad0e84d9aede54bbe2d44a56cccb5f6cf12211f93f52306df87077ecec5b712794c5a9b5dac6d615a3f301
- languageName: node
- linkType: hard
-
-"camel-case@npm:^4.1.2":
- version: 4.1.2
- resolution: "camel-case@npm:4.1.2"
- dependencies:
- pascal-case: "npm:^3.1.2"
- tslib: "npm:^2.0.3"
- checksum: 10c0/bf9eefaee1f20edbed2e9a442a226793bc72336e2b99e5e48c6b7252b6f70b080fc46d8246ab91939e2af91c36cdd422e0af35161e58dd089590f302f8f64c8a
- languageName: node
- linkType: hard
-
-"camelcase@npm:^5.0.0":
- version: 5.3.1
- resolution: "camelcase@npm:5.3.1"
- checksum: 10c0/92ff9b443bfe8abb15f2b1513ca182d16126359ad4f955ebc83dc4ddcc4ef3fdd2c078bc223f2673dc223488e75c99b16cc4d056624374b799e6a1555cf61b23
- languageName: node
- linkType: hard
-
-"camelcase@npm:^6.2.0":
- version: 6.3.0
- resolution: "camelcase@npm:6.3.0"
- checksum: 10c0/0d701658219bd3116d12da3eab31acddb3f9440790c0792e0d398f0a520a6a4058018e546862b6fba89d7ae990efaeb97da71e1913e9ebf5a8b5621a3d55c710
- languageName: node
- linkType: hard
-
-"caniuse-lite@npm:^1.0.30001688":
- version: 1.0.30001757
- resolution: "caniuse-lite@npm:1.0.30001757"
- checksum: 10c0/3ccb71fa2bf1f8c96ff1bf9b918b08806fed33307e20a3ce3259155fda131eaf96cfcd88d3d309c8fd7f8285cc71d89a3b93648a1c04814da31c301f98508d42
- languageName: node
- linkType: hard
-
-"caniuse-lite@npm:^1.0.30001759, caniuse-lite@npm:^1.0.30001760":
- version: 1.0.30001762
- resolution: "caniuse-lite@npm:1.0.30001762"
- checksum: 10c0/93707eac5b0240af3f2ce6e2d7ab504a6fefcf9c2f9cd8fb9d488e496a333c61e557dab0472c1b00c17bc386a5dbb792aa4c778cda2d768e17f986617d7aec53
- languageName: node
- linkType: hard
-
-"caseless@npm:~0.12.0":
- version: 0.12.0
- resolution: "caseless@npm:0.12.0"
- checksum: 10c0/ccf64bcb6c0232cdc5b7bd91ddd06e23a4b541f138336d4725233ac538041fb2f29c2e86c3c4a7a61ef990b665348db23a047060b9414c3a6603e9fa61ad4626
- languageName: node
- linkType: hard
-
-"chai@npm:^6.2.1":
- version: 6.2.2
- resolution: "chai@npm:6.2.2"
- checksum: 10c0/e6c69e5f0c11dffe6ea13d0290936ebb68fcc1ad688b8e952e131df6a6d5797d5e860bc55cef1aca2e950c3e1f96daf79e9d5a70fb7dbaab4e46355e2635ed53
- languageName: node
- linkType: hard
-
-"chalk@npm:4.1.2, chalk@npm:^4.0.0, chalk@npm:^4.0.2, chalk@npm:~4.1.0":
- version: 4.1.2
- resolution: "chalk@npm:4.1.2"
- dependencies:
- ansi-styles: "npm:^4.1.0"
- supports-color: "npm:^7.1.0"
- checksum: 10c0/4a3fef5cc34975c898ffe77141450f679721df9dde00f6c304353fa9c8b571929123b26a0e4617bde5018977eb655b31970c297b91b63ee83bb82aeb04666880
- languageName: node
- linkType: hard
-
-"chalk@npm:^2.4.2":
- version: 2.4.2
- resolution: "chalk@npm:2.4.2"
- dependencies:
- ansi-styles: "npm:^3.2.1"
- escape-string-regexp: "npm:^1.0.5"
- supports-color: "npm:^5.3.0"
- checksum: 10c0/e6543f02ec877732e3a2d1c3c3323ddb4d39fbab687c23f526e25bd4c6a9bf3b83a696e8c769d078e04e5754921648f7821b2a2acfd16c550435fd630026e073
- languageName: node
- linkType: hard
-
-"chalk@npm:^5.4.1":
- version: 5.4.1
- resolution: "chalk@npm:5.4.1"
- checksum: 10c0/b23e88132c702f4855ca6d25cb5538b1114343e41472d5263ee8a37cccfccd9c4216d111e1097c6a27830407a1dc81fecdf2a56f2c63033d4dbbd88c10b0dcef
- languageName: node
- linkType: hard
-
-"cheerio-select@npm:^2.1.0":
- version: 2.1.0
- resolution: "cheerio-select@npm:2.1.0"
- dependencies:
- boolbase: "npm:^1.0.0"
- css-select: "npm:^5.1.0"
- css-what: "npm:^6.1.0"
- domelementtype: "npm:^2.3.0"
- domhandler: "npm:^5.0.3"
- domutils: "npm:^3.0.1"
- checksum: 10c0/2242097e593919dba4aacb97d7b8275def8b9ec70b00aa1f43335456870cfc9e284eae2080bdc832ed232dabb9eefcf56c722d152da4a154813fb8814a55d282
- languageName: node
- linkType: hard
-
-"cheerio@npm:^1.0.0":
- version: 1.0.0
- resolution: "cheerio@npm:1.0.0"
- dependencies:
- cheerio-select: "npm:^2.1.0"
- dom-serializer: "npm:^2.0.0"
- domhandler: "npm:^5.0.3"
- domutils: "npm:^3.1.0"
- encoding-sniffer: "npm:^0.2.0"
- htmlparser2: "npm:^9.1.0"
- parse5: "npm:^7.1.2"
- parse5-htmlparser2-tree-adapter: "npm:^7.0.0"
- parse5-parser-stream: "npm:^7.1.2"
- undici: "npm:^6.19.5"
- whatwg-mimetype: "npm:^4.0.0"
- checksum: 10c0/d0e16925d9c36c879edfaef1c0244c866375a4c7b8d6ccd7ae0ad42da7d26263ea1a3c17b9a1aa5965918deeff2d40ac2e7223824f8e6eca972df3b81316a09f
- languageName: node
- linkType: hard
-
-"chokidar@npm:^3.5.3":
- version: 3.6.0
- resolution: "chokidar@npm:3.6.0"
- dependencies:
- anymatch: "npm:~3.1.2"
- braces: "npm:~3.0.2"
- fsevents: "npm:~2.3.2"
- glob-parent: "npm:~5.1.2"
- is-binary-path: "npm:~2.1.0"
- is-glob: "npm:~4.0.1"
- normalize-path: "npm:~3.0.0"
- readdirp: "npm:~3.6.0"
- dependenciesMeta:
- fsevents:
- optional: true
- checksum: 10c0/8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462
- languageName: node
- linkType: hard
-
-"chokidar@npm:^4.0.0":
- version: 4.0.3
- resolution: "chokidar@npm:4.0.3"
- dependencies:
- readdirp: "npm:^4.0.1"
- checksum: 10c0/a58b9df05bb452f7d105d9e7229ac82fa873741c0c40ddcc7bb82f8a909fbe3f7814c9ebe9bc9a2bef9b737c0ec6e2d699d179048ef06ad3ec46315df0ebe6ad
- languageName: node
- linkType: hard
-
-"chownr@npm:^3.0.0":
- version: 3.0.0
- resolution: "chownr@npm:3.0.0"
- checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10
- languageName: node
- linkType: hard
-
-"ci-info@npm:^4.0.0":
- version: 4.1.0
- resolution: "ci-info@npm:4.1.0"
- checksum: 10c0/0f969ce32a974c542bc8abe4454b220d9d9323bb9415054c92a900faa5fdda0bb222eda68c490127c1d78503510d46b6aca614ecaba5a60515b8ac7e170119e6
- languageName: node
- linkType: hard
-
-"cipher-base@npm:^1.0.0, cipher-base@npm:^1.0.1, cipher-base@npm:^1.0.3":
- version: 1.0.7
- resolution: "cipher-base@npm:1.0.7"
- dependencies:
- inherits: "npm:^2.0.4"
- safe-buffer: "npm:^5.2.1"
- to-buffer: "npm:^1.2.2"
- checksum: 10c0/53c5046a9d9b60c586479b8f13fde263c3f905e13f11e8e04c7a311ce399c91d9c3ec96642332e0de077d356e1014ee12bba96f74fbaad0de750f49122258836
- languageName: node
- linkType: hard
-
-"classnames@npm:^2.3.1, classnames@npm:^2.5.1":
- version: 2.5.1
- resolution: "classnames@npm:2.5.1"
- checksum: 10c0/afff4f77e62cea2d79c39962980bf316bacb0d7c49e13a21adaadb9221e1c6b9d3cdb829d8bb1b23c406f4e740507f37e1dcf506f7e3b7113d17c5bab787aa69
- languageName: node
- linkType: hard
-
-"clean-css@npm:^5.2.2":
- version: 5.3.3
- resolution: "clean-css@npm:5.3.3"
- dependencies:
- source-map: "npm:~0.6.0"
- checksum: 10c0/381de7523e23f3762eb180e327dcc0cedafaf8cb1cd8c26b7cc1fc56e0829a92e734729c4f955394d65ed72fb62f82d8baf78af34b33b8a7d41ebad2accdd6fb
- languageName: node
- linkType: hard
-
-"clean-regexp@npm:^1.0.0":
- version: 1.0.0
- resolution: "clean-regexp@npm:1.0.0"
- dependencies:
- escape-string-regexp: "npm:^1.0.5"
- checksum: 10c0/fd9c7446551b8fc536f95e8a286d431017cd4ba1ec2e53997ec9159385e9c317672f6dfc4d49fdb97449fdb53b0bacd0a8bab9343b8fdd2e46c7ddf6173d0db7
- languageName: node
- linkType: hard
-
-"cliui@npm:^6.0.0":
- version: 6.0.0
- resolution: "cliui@npm:6.0.0"
- dependencies:
- string-width: "npm:^4.2.0"
- strip-ansi: "npm:^6.0.0"
- wrap-ansi: "npm:^6.2.0"
- checksum: 10c0/35229b1bb48647e882104cac374c9a18e34bbf0bace0e2cf03000326b6ca3050d6b59545d91e17bfe3705f4a0e2988787aa5cde6331bf5cbbf0164732cef6492
- languageName: node
- linkType: hard
-
-"cliui@npm:^8.0.1":
- version: 8.0.1
- resolution: "cliui@npm:8.0.1"
- dependencies:
- string-width: "npm:^4.2.0"
- strip-ansi: "npm:^6.0.1"
- wrap-ansi: "npm:^7.0.0"
- checksum: 10c0/4bda0f09c340cbb6dfdc1ed508b3ca080f12992c18d68c6be4d9cf51756033d5266e61ec57529e610dacbf4da1c634423b0c1b11037709cc6b09045cbd815df5
- languageName: node
- linkType: hard
-
-"clone-stats@npm:^1.0.0":
- version: 1.0.0
- resolution: "clone-stats@npm:1.0.0"
- checksum: 10c0/bb1e05991e034e1eb104173c25bb652ea5b2b4dad5a49057a857e00f8d1da39de3bd689128a25bab8cbdfbea8ae8f6066030d106ed5c299a7d92be7967c50217
- languageName: node
- linkType: hard
-
-"clone@npm:^2.1.2":
- version: 2.1.2
- resolution: "clone@npm:2.1.2"
- checksum: 10c0/ed0601cd0b1606bc7d82ee7175b97e68d1dd9b91fd1250a3617b38d34a095f8ee0431d40a1a611122dcccb4f93295b4fdb94942aa763392b5fe44effa50c2d5e
- languageName: node
- linkType: hard
-
-"clsx@npm:2.1.1":
- version: 2.1.1
- resolution: "clsx@npm:2.1.1"
- checksum: 10c0/c4c8eb865f8c82baab07e71bfa8897c73454881c4f99d6bc81585aecd7c441746c1399d08363dc096c550cceaf97bd4ce1e8854e1771e9998d9f94c4fe075839
- languageName: node
- linkType: hard
-
-"color-convert@npm:^1.9.0":
- version: 1.9.3
- resolution: "color-convert@npm:1.9.3"
- dependencies:
- color-name: "npm:1.1.3"
- checksum: 10c0/5ad3c534949a8c68fca8fbc6f09068f435f0ad290ab8b2f76841b9e6af7e0bb57b98cb05b0e19fe33f5d91e5a8611ad457e5f69e0a484caad1f7487fd0e8253c
- languageName: node
- linkType: hard
-
-"color-convert@npm:^2.0.1":
- version: 2.0.1
- resolution: "color-convert@npm:2.0.1"
- dependencies:
- color-name: "npm:~1.1.4"
- checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7
- languageName: node
- linkType: hard
-
-"color-name@npm:1.1.3":
- version: 1.1.3
- resolution: "color-name@npm:1.1.3"
- checksum: 10c0/566a3d42cca25b9b3cd5528cd7754b8e89c0eb646b7f214e8e2eaddb69994ac5f0557d9c175eb5d8f0ad73531140d9c47525085ee752a91a2ab15ab459caf6d6
- languageName: node
- linkType: hard
-
-"color-name@npm:~1.1.4":
- version: 1.1.4
- resolution: "color-name@npm:1.1.4"
- checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95
- languageName: node
- linkType: hard
-
-"colorette@npm:^2.0.16":
- version: 2.0.20
- resolution: "colorette@npm:2.0.20"
- checksum: 10c0/e94116ff33b0ff56f3b83b9ace895e5bf87c2a7a47b3401b8c3f3226e050d5ef76cf4072fb3325f9dc24d1698f9b730baf4e05eeaf861d74a1883073f4c98a40
- languageName: node
- linkType: hard
-
-"colors@npm:^1.4.0":
- version: 1.4.0
- resolution: "colors@npm:1.4.0"
- checksum: 10c0/9af357c019da3c5a098a301cf64e3799d27549d8f185d86f79af23069e4f4303110d115da98483519331f6fb71c8568d5688fa1c6523600044fd4a54e97c4efb
- languageName: node
- linkType: hard
-
-"commander@npm:^12.1.0":
- version: 12.1.0
- resolution: "commander@npm:12.1.0"
- checksum: 10c0/6e1996680c083b3b897bfc1cfe1c58dfbcd9842fd43e1aaf8a795fbc237f65efcc860a3ef457b318e73f29a4f4a28f6403c3d653d021d960e4632dd45bde54a9
- languageName: node
- linkType: hard
-
-"commander@npm:^2.20.0":
- version: 2.20.3
- resolution: "commander@npm:2.20.3"
- checksum: 10c0/74c781a5248c2402a0a3e966a0a2bba3c054aad144f5c023364be83265e796b20565aa9feff624132ff629aa64e16999fa40a743c10c12f7c61e96a794b99288
- languageName: node
- linkType: hard
-
-"commander@npm:^8.3.0":
- version: 8.3.0
- resolution: "commander@npm:8.3.0"
- checksum: 10c0/8b043bb8322ea1c39664a1598a95e0495bfe4ca2fad0d84a92d7d1d8d213e2a155b441d2470c8e08de7c4a28cf2bc6e169211c49e1b21d9f7edc6ae4d9356060
- languageName: node
- linkType: hard
-
-"comment-parser@npm:1.4.1":
- version: 1.4.1
- resolution: "comment-parser@npm:1.4.1"
- checksum: 10c0/d6c4be3f5be058f98b24f2d557f745d8fe1cc9eb75bebbdccabd404a0e1ed41563171b16285f593011f8b6a5ec81f564fb1f2121418ac5cbf0f49255bf0840dd
- languageName: node
- linkType: hard
-
-"common-tags@npm:^1.8.0":
- version: 1.8.2
- resolution: "common-tags@npm:1.8.2"
- checksum: 10c0/23efe47ff0a1a7c91489271b3a1e1d2a171c12ec7f9b35b29b2fce51270124aff0ec890087e2bc2182c1cb746e232ab7561aaafe05f1e7452aea733d2bfe3f63
- languageName: node
- linkType: hard
-
-"connect-history-api-fallback@npm:^1.6.0":
- version: 1.6.0
- resolution: "connect-history-api-fallback@npm:1.6.0"
- checksum: 10c0/6d59c68070fcb2f6d981992f88d050d7544e8e1af6600c23ad680d955e316216794a742a1669d1f14ed5171fc628b916f8a4e15c5a1e55bffc8ccc60bfeb0b2c
- languageName: node
- linkType: hard
-
-"consola@npm:^2.15.3":
- version: 2.15.3
- resolution: "consola@npm:2.15.3"
- checksum: 10c0/34a337e6b4a1349ee4d7b4c568484344418da8fdb829d7d71bfefcd724f608f273987633b6eef465e8de510929907a092e13cb7a28a5d3acb3be446fcc79fd5e
- languageName: node
- linkType: hard
-
-"console-browserify@npm:^1.1.0":
- version: 1.2.0
- resolution: "console-browserify@npm:1.2.0"
- checksum: 10c0/89b99a53b7d6cee54e1e64fa6b1f7ac24b844b4019c5d39db298637e55c1f4ffa5c165457ad984864de1379df2c8e1886cbbdac85d9dbb6876a9f26c3106f226
- languageName: node
- linkType: hard
-
-"constants-browserify@npm:^1.0.0":
- version: 1.0.0
- resolution: "constants-browserify@npm:1.0.0"
- checksum: 10c0/ab49b1d59a433ed77c964d90d19e08b2f77213fb823da4729c0baead55e3c597f8f97ebccfdfc47bd896d43854a117d114c849a6f659d9986420e97da0f83ac5
- languageName: node
- linkType: hard
-
-"content-type@npm:^1.0.4":
- version: 1.0.5
- resolution: "content-type@npm:1.0.5"
- checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af
- languageName: node
- linkType: hard
-
-"convert-source-map@npm:^2.0.0":
- version: 2.0.0
- resolution: "convert-source-map@npm:2.0.0"
- checksum: 10c0/8f2f7a27a1a011cc6cc88cc4da2d7d0cfa5ee0369508baae3d98c260bb3ac520691464e5bbe4ae7cdf09860c1d69ecc6f70c63c6e7c7f7e3f18ec08484dc7d9b
- languageName: node
- linkType: hard
-
-"cookie@npm:^1.0.1":
- version: 1.0.2
- resolution: "cookie@npm:1.0.2"
- checksum: 10c0/fd25fe79e8fbcfcaf6aa61cd081c55d144eeeba755206c058682257cb38c4bd6795c6620de3f064c740695bb65b7949ebb1db7a95e4636efb8357a335ad3f54b
- languageName: node
- linkType: hard
-
-"copy-to-clipboard@npm:^3.3.3":
- version: 3.3.3
- resolution: "copy-to-clipboard@npm:3.3.3"
- dependencies:
- toggle-selection: "npm:^1.0.6"
- checksum: 10c0/3ebf5e8ee00601f8c440b83ec08d838e8eabb068c1fae94a9cda6b42f288f7e1b552f3463635f419af44bf7675afc8d0390d30876cf5c2d5d35f86d9c56a3e5f
- languageName: node
- linkType: hard
-
-"core-js-compat@npm:^3.38.1":
- version: 3.40.0
- resolution: "core-js-compat@npm:3.40.0"
- dependencies:
- browserslist: "npm:^4.24.3"
- checksum: 10c0/44f6e88726fe266a5be9581a79766800478a8d5c492885f2d4c2a4e2babd9b06bc1689d5340d3a61ae7332f990aff2e83b6203ff8773137a627cfedfbeefabeb
- languageName: node
- linkType: hard
-
-"core-js-compat@npm:^3.48.0":
- version: 3.48.0
- resolution: "core-js-compat@npm:3.48.0"
- dependencies:
- browserslist: "npm:^4.28.1"
- checksum: 10c0/7bb6522127928fff5d56c7050f379a034de85fe2d5c6e6925308090d4b51fb0cb88e0db99619c932ee84d8756d531bf851232948fe1ad18598cb1e7278e8db13
- languageName: node
- linkType: hard
-
-"core-util-is@npm:~1.0.0":
- version: 1.0.3
- resolution: "core-util-is@npm:1.0.3"
- checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9
- languageName: node
- linkType: hard
-
-"cosmiconfig@npm:^8.1.3":
- version: 8.3.6
- resolution: "cosmiconfig@npm:8.3.6"
- dependencies:
- import-fresh: "npm:^3.3.0"
- js-yaml: "npm:^4.1.0"
- parse-json: "npm:^5.2.0"
- path-type: "npm:^4.0.0"
- peerDependencies:
- typescript: ">=4.9.5"
- peerDependenciesMeta:
- typescript:
- optional: true
- checksum: 10c0/0382a9ed13208f8bfc22ca2f62b364855207dffdb73dc26e150ade78c3093f1cf56172df2dd460c8caf2afa91c0ed4ec8a88c62f8f9cd1cf423d26506aa8797a
- languageName: node
- linkType: hard
-
-"create-ecdh@npm:^4.0.4":
- version: 4.0.4
- resolution: "create-ecdh@npm:4.0.4"
- dependencies:
- bn.js: "npm:^4.1.0"
- elliptic: "npm:^6.5.3"
- checksum: 10c0/77b11a51360fec9c3bce7a76288fc0deba4b9c838d5fb354b3e40c59194d23d66efe6355fd4b81df7580da0661e1334a235a2a5c040b7569ba97db428d466e7f
- languageName: node
- linkType: hard
-
-"create-hash@npm:^1.1.0, create-hash@npm:^1.2.0":
- version: 1.2.0
- resolution: "create-hash@npm:1.2.0"
- dependencies:
- cipher-base: "npm:^1.0.1"
- inherits: "npm:^2.0.1"
- md5.js: "npm:^1.3.4"
- ripemd160: "npm:^2.0.1"
- sha.js: "npm:^2.4.0"
- checksum: 10c0/d402e60e65e70e5083cb57af96d89567954d0669e90550d7cec58b56d49c4b193d35c43cec8338bc72358198b8cbf2f0cac14775b651e99238e1cf411490f915
- languageName: node
- linkType: hard
-
-"create-hmac@npm:^1.1.7":
- version: 1.1.7
- resolution: "create-hmac@npm:1.1.7"
- dependencies:
- cipher-base: "npm:^1.0.3"
- create-hash: "npm:^1.1.0"
- inherits: "npm:^2.0.1"
- ripemd160: "npm:^2.0.0"
- safe-buffer: "npm:^5.0.1"
- sha.js: "npm:^2.4.8"
- checksum: 10c0/24332bab51011652a9a0a6d160eed1e8caa091b802335324ae056b0dcb5acbc9fcf173cf10d128eba8548c3ce98dfa4eadaa01bd02f44a34414baee26b651835
- languageName: node
- linkType: hard
-
-"create-require@npm:^1.1.1":
- version: 1.1.1
- resolution: "create-require@npm:1.1.1"
- checksum: 10c0/157cbc59b2430ae9a90034a5f3a1b398b6738bf510f713edc4d4e45e169bc514d3d99dd34d8d01ca7ae7830b5b8b537e46ae8f3c8f932371b0875c0151d7ec91
- languageName: node
- linkType: hard
-
-"cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.6":
- version: 7.0.6
- resolution: "cross-spawn@npm:7.0.6"
- dependencies:
- path-key: "npm:^3.1.0"
- shebang-command: "npm:^2.0.0"
- which: "npm:^2.0.1"
- checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1
- languageName: node
- linkType: hard
-
-"crypto-browserify@npm:^3.12.1":
- version: 3.12.1
- resolution: "crypto-browserify@npm:3.12.1"
- dependencies:
- browserify-cipher: "npm:^1.0.1"
- browserify-sign: "npm:^4.2.3"
- create-ecdh: "npm:^4.0.4"
- create-hash: "npm:^1.2.0"
- create-hmac: "npm:^1.1.7"
- diffie-hellman: "npm:^5.0.3"
- hash-base: "npm:~3.0.4"
- inherits: "npm:^2.0.4"
- pbkdf2: "npm:^3.1.2"
- public-encrypt: "npm:^4.0.3"
- randombytes: "npm:^2.1.0"
- randomfill: "npm:^1.0.4"
- checksum: 10c0/184a2def7b16628e79841243232ab5497f18d8e158ac21b7ce90ab172427d0a892a561280adc08f9d4d517bce8db2a5b335dc21abb970f787f8e874bd7b9db7d
- languageName: node
- linkType: hard
-
-"css-blank-pseudo@npm:^7.0.1":
- version: 7.0.1
- resolution: "css-blank-pseudo@npm:7.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/46c3d3a611972fdb0c264db7c0b34fe437bc4300961d11945145cf04962f52a545a6ef55bc8ff4afd82b605bd692b4970f2b54582616dea00441105e725d4618
- languageName: node
- linkType: hard
-
-"css-has-pseudo@npm:^7.0.3":
- version: 7.0.3
- resolution: "css-has-pseudo@npm:7.0.3"
- dependencies:
- "@csstools/selector-specificity": "npm:^5.0.0"
- postcss-selector-parser: "npm:^7.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/c89f68e17bed229e9a3e98da5032e1360c83d45d974bc3fb8d6b5358399bca80cce7929e4a621a516a75536edb78678dc486eb41841eeed28cca79e3be4bdc27
- languageName: node
- linkType: hard
-
-"css-prefers-color-scheme@npm:^10.0.0":
- version: 10.0.0
- resolution: "css-prefers-color-scheme@npm:10.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/a66c727bb2455328b18862f720819fc98ff5c1486b69f758bdb5c66f46cc6d484f9fc0bfa4f00f2693c5da6707ad136ca789496982f713ade693f08af624930e
- languageName: node
- linkType: hard
-
-"css-select@npm:^4.2.1":
- version: 4.3.0
- resolution: "css-select@npm:4.3.0"
- dependencies:
- boolbase: "npm:^1.0.0"
- css-what: "npm:^6.0.1"
- domhandler: "npm:^4.3.1"
- domutils: "npm:^2.8.0"
- nth-check: "npm:^2.0.1"
- checksum: 10c0/a489d8e5628e61063d5a8fe0fa1cc7ae2478cb334a388a354e91cf2908154be97eac9fa7ed4dffe87a3e06cf6fcaa6016553115335c4fd3377e13dac7bd5a8e1
- languageName: node
- linkType: hard
-
-"css-select@npm:^5.1.0":
- version: 5.1.0
- resolution: "css-select@npm:5.1.0"
- dependencies:
- boolbase: "npm:^1.0.0"
- css-what: "npm:^6.1.0"
- domhandler: "npm:^5.0.2"
- domutils: "npm:^3.0.1"
- nth-check: "npm:^2.0.1"
- checksum: 10c0/551c60dba5b54054741032c1793b5734f6ba45e23ae9e82761a3c0ed1acbb8cfedfa443aaba3a3c1a54cac12b456d2012a09d2cd5f0e82e430454c1b9d84d500
- languageName: node
- linkType: hard
-
-"css-what@npm:^6.0.1, css-what@npm:^6.1.0":
- version: 6.1.0
- resolution: "css-what@npm:6.1.0"
- checksum: 10c0/a09f5a6b14ba8dcf57ae9a59474722e80f20406c53a61e9aedb0eedc693b135113ffe2983f4efc4b5065ae639442e9ae88df24941ef159c218b231011d733746
- languageName: node
- linkType: hard
-
-"css.escape@npm:^1.5.1":
- version: 1.5.1
- resolution: "css.escape@npm:1.5.1"
- checksum: 10c0/5e09035e5bf6c2c422b40c6df2eb1529657a17df37fda5d0433d722609527ab98090baf25b13970ca754079a0f3161dd3dfc0e743563ded8cfa0749d861c1525
- languageName: node
- linkType: hard
-
-"cssdb@npm:^8.6.0":
- version: 8.6.0
- resolution: "cssdb@npm:8.6.0"
- checksum: 10c0/4bb7b77ba24902e8d481e9514ec0be56e205186a2b7d9f5027fedfe718952c559c62acfd2859f92869f8090da7c2170f83d68170db5058a6ba8d9d5e8ded3b3e
- languageName: node
- linkType: hard
-
-"cssesc@npm:^3.0.0":
- version: 3.0.0
- resolution: "cssesc@npm:3.0.0"
- bin:
- cssesc: bin/cssesc
- checksum: 10c0/6bcfd898662671be15ae7827120472c5667afb3d7429f1f917737f3bf84c4176003228131b643ae74543f17a394446247df090c597bb9a728cce298606ed0aa7
- languageName: node
- linkType: hard
-
-"cssstyle@npm:^4.2.1":
- version: 4.2.1
- resolution: "cssstyle@npm:4.2.1"
- dependencies:
- "@asamuzakjp/css-color": "npm:^2.8.2"
- rrweb-cssom: "npm:^0.8.0"
- checksum: 10c0/02ba8c47c0caaab57acadacb3eb6c0f5f009000f55d61f6563670e07d389b26edefeed497e6c1847fcd2e6bbe0b6974c2d4291f97fa0c6ec6add13a7fa926d84
- languageName: node
- linkType: hard
-
-"csstype@npm:^3.2.2":
- version: 3.2.3
- resolution: "csstype@npm:3.2.3"
- checksum: 10c0/cd29c51e70fa822f1cecd8641a1445bed7063697469d35633b516e60fe8c1bde04b08f6c5b6022136bb669b64c63d4173af54864510fbb4ee23281801841a3ce
- languageName: node
- linkType: hard
-
-"damerau-levenshtein@npm:^1.0.8":
- version: 1.0.8
- resolution: "damerau-levenshtein@npm:1.0.8"
- checksum: 10c0/4c2647e0f42acaee7d068756c1d396e296c3556f9c8314bac1ac63ffb236217ef0e7e58602b18bb2173deec7ec8e0cac8e27cccf8f5526666b4ff11a13ad54a3
- languageName: node
- linkType: hard
-
-"data-urls@npm:^5.0.0":
- version: 5.0.0
- resolution: "data-urls@npm:5.0.0"
- dependencies:
- whatwg-mimetype: "npm:^4.0.0"
- whatwg-url: "npm:^14.0.0"
- checksum: 10c0/1b894d7d41c861f3a4ed2ae9b1c3f0909d4575ada02e36d3d3bc584bdd84278e20709070c79c3b3bff7ac98598cb191eb3e86a89a79ea4ee1ef360e1694f92ad
- languageName: node
- linkType: hard
-
-"data-view-buffer@npm:^1.0.2":
- version: 1.0.2
- resolution: "data-view-buffer@npm:1.0.2"
- dependencies:
- call-bound: "npm:^1.0.3"
- es-errors: "npm:^1.3.0"
- is-data-view: "npm:^1.0.2"
- checksum: 10c0/7986d40fc7979e9e6241f85db8d17060dd9a71bd53c894fa29d126061715e322a4cd47a00b0b8c710394854183d4120462b980b8554012acc1c0fa49df7ad38c
- languageName: node
- linkType: hard
-
-"data-view-byte-length@npm:^1.0.2":
- version: 1.0.2
- resolution: "data-view-byte-length@npm:1.0.2"
- dependencies:
- call-bound: "npm:^1.0.3"
- es-errors: "npm:^1.3.0"
- is-data-view: "npm:^1.0.2"
- checksum: 10c0/f8a4534b5c69384d95ac18137d381f18a5cfae1f0fc1df0ef6feef51ef0d568606d970b69e02ea186c6c0f0eac77fe4e6ad96fec2569cc86c3afcc7475068c55
- languageName: node
- linkType: hard
-
-"data-view-byte-offset@npm:^1.0.1":
- version: 1.0.1
- resolution: "data-view-byte-offset@npm:1.0.1"
- dependencies:
- call-bound: "npm:^1.0.2"
- es-errors: "npm:^1.3.0"
- is-data-view: "npm:^1.0.1"
- checksum: 10c0/fa7aa40078025b7810dcffc16df02c480573b7b53ef1205aa6a61533011005c1890e5ba17018c692ce7c900212b547262d33279fde801ad9843edc0863bf78c4
- languageName: node
- linkType: hard
-
-"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.3.1, debug@npm:^4.3.4":
- version: 4.4.0
- resolution: "debug@npm:4.4.0"
- dependencies:
- ms: "npm:^2.1.3"
- peerDependenciesMeta:
- supports-color:
- optional: true
- checksum: 10c0/db94f1a182bf886f57b4755f85b3a74c39b5114b9377b7ab375dc2cfa3454f09490cc6c30f829df3fc8042bc8b8995f6567ce5cd96f3bc3688bd24027197d9de
- languageName: node
- linkType: hard
-
-"debug@npm:^2.2.0":
- version: 2.6.9
- resolution: "debug@npm:2.6.9"
- dependencies:
- ms: "npm:2.0.0"
- checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589
- languageName: node
- linkType: hard
-
-"debug@npm:^3.2.7":
- version: 3.2.7
- resolution: "debug@npm:3.2.7"
- dependencies:
- ms: "npm:^2.1.1"
- checksum: 10c0/37d96ae42cbc71c14844d2ae3ba55adf462ec89fd3a999459dec3833944cd999af6007ff29c780f1c61153bcaaf2c842d1e4ce1ec621e4fc4923244942e4a02a
- languageName: node
- linkType: hard
-
-"debug@npm:^4.3.2":
- version: 4.3.7
- resolution: "debug@npm:4.3.7"
- dependencies:
- ms: "npm:^2.1.3"
- peerDependenciesMeta:
- supports-color:
- optional: true
- checksum: 10c0/1471db19c3b06d485a622d62f65947a19a23fbd0dd73f7fd3eafb697eec5360cde447fb075919987899b1a2096e85d35d4eb5a4de09a57600ac9cf7e6c8e768b
- languageName: node
- linkType: hard
-
-"debug@npm:^4.4.3":
- version: 4.4.3
- resolution: "debug@npm:4.4.3"
- dependencies:
- ms: "npm:^2.1.3"
- peerDependenciesMeta:
- supports-color:
- optional: true
- checksum: 10c0/d79136ec6c83ecbefd0f6a5593da6a9c91ec4d7ddc4b54c883d6e71ec9accb5f67a1a5e96d00a328196b5b5c86d365e98d8a3a70856aaf16b4e7b1985e67f5a6
- languageName: node
- linkType: hard
-
-"decamelize@npm:^1.2.0":
- version: 1.2.0
- resolution: "decamelize@npm:1.2.0"
- checksum: 10c0/85c39fe8fbf0482d4a1e224ef0119db5c1897f8503bcef8b826adff7a1b11414972f6fef2d7dec2ee0b4be3863cf64ac1439137ae9e6af23a3d8dcbe26a5b4b2
- languageName: node
- linkType: hard
-
-"decamelize@npm:^5.0.0":
- version: 5.0.1
- resolution: "decamelize@npm:5.0.1"
- checksum: 10c0/3da71022bc1e85487810fa0833138effb599fa331ca21e179650e93a765d0c4dabeb1ecdd6ad1474fa0bacd2457953c63ea335afb6e53b35f2b4bf779514e2a3
- languageName: node
- linkType: hard
-
-"decimal.js@npm:^10.4.3":
- version: 10.4.3
- resolution: "decimal.js@npm:10.4.3"
- checksum: 10c0/6d60206689ff0911f0ce968d40f163304a6c1bc739927758e6efc7921cfa630130388966f16bf6ef6b838cb33679fbe8e7a78a2f3c478afce841fd55ac8fb8ee
- languageName: node
- linkType: hard
-
-"decimal.js@npm:^10.5.0":
- version: 10.5.0
- resolution: "decimal.js@npm:10.5.0"
- checksum: 10c0/785c35279df32762143914668df35948920b6c1c259b933e0519a69b7003fc0a5ed2a766b1e1dda02574450c566b21738a45f15e274b47c2ac02072c0d1f3ac3
- languageName: node
- linkType: hard
-
-"decimal.js@npm:^10.6.0":
- version: 10.6.0
- resolution: "decimal.js@npm:10.6.0"
- checksum: 10c0/07d69fbcc54167a340d2d97de95f546f9ff1f69d2b45a02fd7a5292412df3cd9eb7e23065e532a318f5474a2e1bccf8392fdf0443ef467f97f3bf8cb0477e5aa
- languageName: node
- linkType: hard
-
-"deep-is@npm:^0.1.3":
- version: 0.1.4
- resolution: "deep-is@npm:0.1.4"
- checksum: 10c0/7f0ee496e0dff14a573dc6127f14c95061b448b87b995fc96c017ce0a1e66af1675e73f1d6064407975bc4ea6ab679497a29fff7b5b9c4e99cb10797c1ad0b4c
- languageName: node
- linkType: hard
-
-"define-data-property@npm:^1.0.1, define-data-property@npm:^1.1.4":
- version: 1.1.4
- resolution: "define-data-property@npm:1.1.4"
- dependencies:
- es-define-property: "npm:^1.0.0"
- es-errors: "npm:^1.3.0"
- gopd: "npm:^1.0.1"
- checksum: 10c0/dea0606d1483eb9db8d930d4eac62ca0fa16738b0b3e07046cddfacf7d8c868bbe13fa0cb263eb91c7d0d527960dc3f2f2471a69ed7816210307f6744fe62e37
- languageName: node
- linkType: hard
-
-"define-properties@npm:^1.1.3, define-properties@npm:^1.2.0, define-properties@npm:^1.2.1":
- version: 1.2.1
- resolution: "define-properties@npm:1.2.1"
- dependencies:
- define-data-property: "npm:^1.0.1"
- has-property-descriptors: "npm:^1.0.0"
- object-keys: "npm:^1.1.1"
- checksum: 10c0/88a152319ffe1396ccc6ded510a3896e77efac7a1bfbaa174a7b00414a1747377e0bb525d303794a47cf30e805c2ec84e575758512c6e44a993076d29fd4e6c3
- languageName: node
- linkType: hard
-
-"deprecation@npm:^2.0.0":
- version: 2.3.1
- resolution: "deprecation@npm:2.3.1"
- checksum: 10c0/23d688ba66b74d09b908c40a76179418acbeeb0bfdf218c8075c58ad8d0c315130cb91aa3dffb623aa3a411a3569ce56c6460de6c8d69071c17fe6dd2442f032
- languageName: node
- linkType: hard
-
-"dequal@npm:^2.0.3":
- version: 2.0.3
- resolution: "dequal@npm:2.0.3"
- checksum: 10c0/f98860cdf58b64991ae10205137c0e97d384c3a4edc7f807603887b7c4b850af1224a33d88012009f150861cbee4fa2d322c4cc04b9313bee312e47f6ecaa888
- languageName: node
- linkType: hard
-
-"des.js@npm:^1.0.0":
- version: 1.1.0
- resolution: "des.js@npm:1.1.0"
- dependencies:
- inherits: "npm:^2.0.1"
- minimalistic-assert: "npm:^1.0.0"
- checksum: 10c0/671354943ad67493e49eb4c555480ab153edd7cee3a51c658082fcde539d2690ed2a4a0b5d1f401f9cde822edf3939a6afb2585f32c091f2d3a1b1665cd45236
- languageName: node
- linkType: hard
-
-"detect-libc@npm:^1.0.3":
- version: 1.0.3
- resolution: "detect-libc@npm:1.0.3"
- bin:
- detect-libc: ./bin/detect-libc.js
- checksum: 10c0/4da0deae9f69e13bc37a0902d78bf7169480004b1fed3c19722d56cff578d16f0e11633b7fbf5fb6249181236c72e90024cbd68f0b9558ae06e281f47326d50d
- languageName: node
- linkType: hard
-
-"detect-node-es@npm:^1.1.0":
- version: 1.1.0
- resolution: "detect-node-es@npm:1.1.0"
- checksum: 10c0/e562f00de23f10c27d7119e1af0e7388407eb4b06596a25f6d79a360094a109ff285de317f02b090faae093d314cf6e73ac3214f8a5bb3a0def5bece94557fbe
- languageName: node
- linkType: hard
-
-"diffie-hellman@npm:^5.0.3":
- version: 5.0.3
- resolution: "diffie-hellman@npm:5.0.3"
- dependencies:
- bn.js: "npm:^4.1.0"
- miller-rabin: "npm:^4.0.0"
- randombytes: "npm:^2.0.0"
- checksum: 10c0/ce53ccafa9ca544b7fc29b08a626e23a9b6562efc2a98559a0c97b4718937cebaa9b5d7d0a05032cc9c1435e9b3c1532b9e9bf2e0ede868525922807ad6e1ecf
- languageName: node
- linkType: hard
-
-"dijkstrajs@npm:^1.0.1":
- version: 1.0.3
- resolution: "dijkstrajs@npm:1.0.3"
- checksum: 10c0/2183d61ac1f25062f3c3773f3ea8d9f45ba164a00e77e07faf8cc5750da966222d1e2ce6299c875a80f969190c71a0973042192c5624d5223e4ed196ff584c99
- languageName: node
- linkType: hard
-
-"dir-glob@npm:^3.0.1":
- version: 3.0.1
- resolution: "dir-glob@npm:3.0.1"
- dependencies:
- path-type: "npm:^4.0.0"
- checksum: 10c0/dcac00920a4d503e38bb64001acb19df4efc14536ada475725e12f52c16777afdee4db827f55f13a908ee7efc0cb282e2e3dbaeeb98c0993dd93d1802d3bf00c
- languageName: node
- linkType: hard
-
-"doctrine@npm:^2.1.0":
- version: 2.1.0
- resolution: "doctrine@npm:2.1.0"
- dependencies:
- esutils: "npm:^2.0.2"
- checksum: 10c0/b6416aaff1f380bf56c3b552f31fdf7a69b45689368deca72d28636f41c16bb28ec3ebc40ace97db4c1afc0ceeb8120e8492fe0046841c94c2933b2e30a7d5ac
- languageName: node
- linkType: hard
-
-"doctrine@npm:^3.0.0":
- version: 3.0.0
- resolution: "doctrine@npm:3.0.0"
- dependencies:
- esutils: "npm:^2.0.2"
- checksum: 10c0/c96bdccabe9d62ab6fea9399fdff04a66e6563c1d6fb3a3a063e8d53c3bb136ba63e84250bbf63d00086a769ad53aef92d2bd483f03f837fc97b71cbee6b2520
- languageName: node
- linkType: hard
-
-"dom-accessibility-api@npm:^0.5.9":
- version: 0.5.16
- resolution: "dom-accessibility-api@npm:0.5.16"
- checksum: 10c0/b2c2eda4fae568977cdac27a9f0c001edf4f95a6a6191dfa611e3721db2478d1badc01db5bb4fa8a848aeee13e442a6c2a4386d65ec65a1436f24715a2f8d053
- languageName: node
- linkType: hard
-
-"dom-accessibility-api@npm:^0.6.3":
- version: 0.6.3
- resolution: "dom-accessibility-api@npm:0.6.3"
- checksum: 10c0/10bee5aa514b2a9a37c87cd81268db607a2e933a050074abc2f6fa3da9080ebed206a320cbc123567f2c3087d22292853bdfdceaffdd4334ffe2af9510b29360
- languageName: node
- linkType: hard
-
-"dom-serializer@npm:^1.0.1":
- version: 1.4.1
- resolution: "dom-serializer@npm:1.4.1"
- dependencies:
- domelementtype: "npm:^2.0.1"
- domhandler: "npm:^4.2.0"
- entities: "npm:^2.0.0"
- checksum: 10c0/67d775fa1ea3de52035c98168ddcd59418356943b5eccb80e3c8b3da53adb8e37edb2cc2f885802b7b1765bf5022aec21dfc32910d7f9e6de4c3148f095ab5e0
- languageName: node
- linkType: hard
-
-"dom-serializer@npm:^2.0.0":
- version: 2.0.0
- resolution: "dom-serializer@npm:2.0.0"
- dependencies:
- domelementtype: "npm:^2.3.0"
- domhandler: "npm:^5.0.2"
- entities: "npm:^4.2.0"
- checksum: 10c0/d5ae2b7110ca3746b3643d3ef60ef823f5f078667baf530cec096433f1627ec4b6fa8c072f09d079d7cda915fd2c7bc1b7b935681e9b09e591e1e15f4040b8e2
- languageName: node
- linkType: hard
-
-"domain-browser@npm:4.22.0":
- version: 4.22.0
- resolution: "domain-browser@npm:4.22.0"
- checksum: 10c0/2ef7eda6d2161038fda0c9aa4c9e18cc7a0baa89ea6be975d449527c2eefd4b608425db88508e2859acc472f46f402079274b24bd75e3fb506f28c5dba203129
- languageName: node
- linkType: hard
-
-"domelementtype@npm:^2.0.1, domelementtype@npm:^2.2.0, domelementtype@npm:^2.3.0":
- version: 2.3.0
- resolution: "domelementtype@npm:2.3.0"
- checksum: 10c0/686f5a9ef0fff078c1412c05db73a0dce096190036f33e400a07e2a4518e9f56b1e324f5c576a0a747ef0e75b5d985c040b0d51945ce780c0dd3c625a18cd8c9
- languageName: node
- linkType: hard
-
-"domhandler@npm:^4.2.0, domhandler@npm:^4.3.1":
- version: 4.3.1
- resolution: "domhandler@npm:4.3.1"
- dependencies:
- domelementtype: "npm:^2.2.0"
- checksum: 10c0/5c199c7468cb052a8b5ab80b13528f0db3d794c64fc050ba793b574e158e67c93f8336e87fd81e9d5ee43b0e04aea4d8b93ed7be4899cb726a1601b3ba18538b
- languageName: node
- linkType: hard
-
-"domhandler@npm:^5.0.2, domhandler@npm:^5.0.3":
- version: 5.0.3
- resolution: "domhandler@npm:5.0.3"
- dependencies:
- domelementtype: "npm:^2.3.0"
- checksum: 10c0/bba1e5932b3e196ad6862286d76adc89a0dbf0c773e5ced1eb01f9af930c50093a084eff14b8de5ea60b895c56a04d5de8bbc4930c5543d029091916770b2d2a
- languageName: node
- linkType: hard
-
-"domutils@npm:^2.8.0":
- version: 2.8.0
- resolution: "domutils@npm:2.8.0"
- dependencies:
- dom-serializer: "npm:^1.0.1"
- domelementtype: "npm:^2.2.0"
- domhandler: "npm:^4.2.0"
- checksum: 10c0/d58e2ae01922f0dd55894e61d18119924d88091837887bf1438f2327f32c65eb76426bd9384f81e7d6dcfb048e0f83c19b222ad7101176ad68cdc9c695b563db
- languageName: node
- linkType: hard
-
-"domutils@npm:^3.0.1, domutils@npm:^3.1.0":
- version: 3.2.2
- resolution: "domutils@npm:3.2.2"
- dependencies:
- dom-serializer: "npm:^2.0.0"
- domelementtype: "npm:^2.3.0"
- domhandler: "npm:^5.0.3"
- checksum: 10c0/47938f473b987ea71cd59e59626eb8666d3aa8feba5266e45527f3b636c7883cca7e582d901531961f742c519d7514636b7973353b648762b2e3bedbf235fada
- languageName: node
- linkType: hard
-
-"dot-case@npm:^3.0.4":
- version: 3.0.4
- resolution: "dot-case@npm:3.0.4"
- dependencies:
- no-case: "npm:^3.0.4"
- tslib: "npm:^2.0.3"
- checksum: 10c0/5b859ea65097a7ea870e2c91b5768b72ddf7fa947223fd29e167bcdff58fe731d941c48e47a38ec8aa8e43044c8fbd15cd8fa21689a526bc34b6548197cd5b05
- languageName: node
- linkType: hard
-
-"dotenv-expand@npm:^8.0.2":
- version: 8.0.3
- resolution: "dotenv-expand@npm:8.0.3"
- checksum: 10c0/bf928bdd75ec632918e41fc5822d507dcf4081ae1d07b47aaee086141f6bbdc202add9f214b4064e118db1ca343b59f3924b0721327954a7af46897069271672
- languageName: node
- linkType: hard
-
-"dotenv@npm:^16.0.0, dotenv@npm:^16.3.1":
- version: 16.4.7
- resolution: "dotenv@npm:16.4.7"
- checksum: 10c0/be9f597e36a8daf834452daa1f4cc30e5375a5968f98f46d89b16b983c567398a330580c88395069a77473943c06b877d1ca25b4afafcdd6d4adb549e8293462
- languageName: node
- linkType: hard
-
-"dunder-proto@npm:^1.0.0, dunder-proto@npm:^1.0.1":
- version: 1.0.1
- resolution: "dunder-proto@npm:1.0.1"
- dependencies:
- call-bind-apply-helpers: "npm:^1.0.1"
- es-errors: "npm:^1.3.0"
- gopd: "npm:^1.2.0"
- checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031
- languageName: node
- linkType: hard
-
-"eastasianwidth@npm:^0.2.0":
- version: 0.2.0
- resolution: "eastasianwidth@npm:0.2.0"
- checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39
- languageName: node
- linkType: hard
-
-"ejs@npm:^3.1.6, ejs@npm:^3.1.9":
- version: 3.1.10
- resolution: "ejs@npm:3.1.10"
- dependencies:
- jake: "npm:^10.8.5"
- bin:
- ejs: bin/cli.js
- checksum: 10c0/52eade9e68416ed04f7f92c492183340582a36482836b11eab97b159fcdcfdedc62233a1bf0bf5e5e1851c501f2dca0e2e9afd111db2599e4e7f53ee29429ae1
- languageName: node
- linkType: hard
-
-"electron-to-chromium@npm:^1.5.263":
- version: 1.5.267
- resolution: "electron-to-chromium@npm:1.5.267"
- checksum: 10c0/0732bdb891b657f2e43266a3db8cf86fff6cecdcc8d693a92beff214e136cb5c2ee7dc5945ed75fa1db16e16bad0c38695527a020d15f39e79084e0b2e447621
- languageName: node
- linkType: hard
-
-"electron-to-chromium@npm:^1.5.73":
- version: 1.5.109
- resolution: "electron-to-chromium@npm:1.5.109"
- checksum: 10c0/19d86b95b1288b2e73d9d6084f64b14d4ef2c51d8551d85697ea68da690542d26e6d07878ff053f137e561e3e6c8c2b062d0353bc159930569831f7960bb6ed7
- languageName: node
- linkType: hard
-
-"element-call@workspace:.":
- version: 0.0.0-use.local
- resolution: "element-call@workspace:."
- dependencies:
- "@babel/core": "npm:^7.16.5"
- "@babel/preset-env": "npm:^7.22.20"
- "@babel/preset-react": "npm:^7.22.15"
- "@babel/preset-typescript": "npm:^7.23.0"
- "@codecov/vite-plugin": "npm:^1.3.0"
- "@fontsource/inconsolata": "npm:^5.1.0"
- "@fontsource/inter": "npm:^5.1.0"
- "@formatjs/intl-durationformat": "npm:^0.10.0"
- "@formatjs/intl-segmenter": "npm:^11.7.3"
- "@livekit/components-core": "npm:^0.12.0"
- "@livekit/components-react": "npm:^2.0.0"
- "@livekit/protocol": "npm:^1.42.2"
- "@livekit/track-processors": "npm:^0.7.1"
- "@mediapipe/tasks-vision": "npm:^0.10.18"
- "@playwright/test": "npm:^1.57.0"
- "@radix-ui/react-dialog": "npm:^1.0.4"
- "@radix-ui/react-slider": "npm:^1.1.2"
- "@radix-ui/react-visually-hidden": "npm:^1.0.3"
- "@react-spring/web": "npm:^10.0.0"
- "@sentry/react": "npm:^8.0.0"
- "@sentry/vite-plugin": "npm:^3.0.0"
- "@stylistic/eslint-plugin": "npm:^3.0.0"
- "@testing-library/dom": "npm:^10.1.0"
- "@testing-library/jest-dom": "npm:^6.6.3"
- "@testing-library/react": "npm:^16.0.0"
- "@testing-library/user-event": "npm:^14.5.1"
- "@types/content-type": "npm:^1.1.5"
- "@types/grecaptcha": "npm:^3.0.9"
- "@types/jsdom": "npm:^21.1.7"
- "@types/lodash-es": "npm:^4.17.12"
- "@types/node": "npm:^24.0.0"
- "@types/pako": "npm:^2.0.3"
- "@types/qrcode": "npm:^1.5.5"
- "@types/react": "npm:^19.0.0"
- "@types/react-dom": "npm:^19.0.0"
- "@types/sdp-transform": "npm:^2.4.5"
- "@types/uuid": "npm:10"
- "@typescript-eslint/eslint-plugin": "npm:^8.31.0"
- "@typescript-eslint/parser": "npm:^8.31.0"
- "@use-gesture/react": "npm:^10.2.11"
- "@vector-im/compound-design-tokens": "npm:^6.0.0"
- "@vector-im/compound-web": "npm:^8.0.0"
- "@vitejs/plugin-react": "npm:^4.0.1"
- "@vitest/coverage-v8": "npm:^4.0.18"
- babel-plugin-transform-vite-meta-env: "npm:^1.0.3"
- classnames: "npm:^2.3.1"
- copy-to-clipboard: "npm:^3.3.3"
- eslint: "npm:^8.14.0"
- eslint-config-google: "npm:^0.14.0"
- eslint-config-prettier: "npm:^10.0.0"
- eslint-plugin-deprecate: "npm:^0.8.2"
- eslint-plugin-import: "npm:^2.26.0"
- eslint-plugin-jsdoc: "npm:^61.5.0"
- eslint-plugin-jsx-a11y: "npm:^6.5.1"
- eslint-plugin-matrix-org: "npm:2.1.0"
- eslint-plugin-react: "npm:^7.29.4"
- eslint-plugin-react-hooks: "npm:^5.0.0"
- eslint-plugin-rxjs: "npm:^5.0.3"
- eslint-plugin-unicorn: "npm:^56.0.0"
- fetch-mock: "npm:11.1.5"
- global-jsdom: "npm:^26.0.0"
- i18next: "npm:^25.0.0"
- i18next-browser-languagedetector: "npm:^8.0.0"
- i18next-parser: "npm:^9.1.0"
- jsdom: "npm:^26.0.0"
- knip: "npm:^5.86.0"
- livekit-client: "npm:^2.13.0"
- lodash-es: "npm:^4.17.21"
- loglevel: "npm:^1.9.1"
- matrix-js-sdk: "matrix-org/matrix-js-sdk#6e3efef0c5f660df47cf00874927dec1c75cc3cf"
- matrix-widget-api: "npm:^1.16.1"
- node-stdlib-browser: "npm:^1.3.1"
- normalize.css: "npm:^8.0.1"
- observable-hooks: "npm:^4.2.3"
- pako: "npm:^2.0.4"
- postcss: "npm:^8.4.41"
- postcss-preset-env: "npm:^10.0.0"
- posthog-js: "npm:1.160.3"
- prettier: "npm:^3.0.0"
- qrcode: "npm:^1.5.4"
- react: "npm:19"
- react-dom: "npm:19"
- react-i18next: "npm:^16.0.0 <16.6.0"
- react-router-dom: "npm:^7.0.0"
- react-use-measure: "npm:^2.1.1"
- rxjs: "npm:^7.8.1"
- sass: "npm:^1.42.1"
- typescript: "npm:^5.8.3"
- typescript-eslint-language-service: "npm:^5.0.5"
- unique-names-generator: "npm:^4.6.0"
- uuid: "npm:^13.0.0"
- vaul: "npm:^1.0.0"
- vite: "npm:^7.3.0"
- vite-plugin-generate-file: "npm:^0.3.0"
- vite-plugin-html: "npm:^3.2.2"
- vite-plugin-node-stdlib-browser: "npm:^0.2.1"
- vite-plugin-svgr: "npm:^4.0.0"
- vitest: "npm:^4.0.18"
- vitest-axe: "npm:^1.0.0-pre.3"
- languageName: unknown
- linkType: soft
-
-"elliptic@npm:^6.5.3, elliptic@npm:^6.6.1":
- version: 6.6.1
- resolution: "elliptic@npm:6.6.1"
- dependencies:
- bn.js: "npm:^4.11.9"
- brorand: "npm:^1.1.0"
- hash.js: "npm:^1.0.0"
- hmac-drbg: "npm:^1.0.1"
- inherits: "npm:^2.0.4"
- minimalistic-assert: "npm:^1.0.1"
- minimalistic-crypto-utils: "npm:^1.0.1"
- checksum: 10c0/8b24ef782eec8b472053793ea1e91ae6bee41afffdfcb78a81c0a53b191e715cbe1292aa07165958a9bbe675bd0955142560b1a007ffce7d6c765bcaf951a867
- languageName: node
- linkType: hard
-
-"emoji-regex@npm:^8.0.0":
- version: 8.0.0
- resolution: "emoji-regex@npm:8.0.0"
- checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010
- languageName: node
- linkType: hard
-
-"emoji-regex@npm:^9.2.2":
- version: 9.2.2
- resolution: "emoji-regex@npm:9.2.2"
- checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639
- languageName: node
- linkType: hard
-
-"encoding-sniffer@npm:^0.2.0":
- version: 0.2.0
- resolution: "encoding-sniffer@npm:0.2.0"
- dependencies:
- iconv-lite: "npm:^0.6.3"
- whatwg-encoding: "npm:^3.1.1"
- checksum: 10c0/b312e0d67f339bec44e021e5210ee8ee90d7b8f9975eb2c79a36fd467eb07709e88dcf62ee20f62ee0d74a13874307d99557852a2de9b448f1e3fb991fc68257
- languageName: node
- linkType: hard
-
-"encoding@npm:^0.1.13":
- version: 0.1.13
- resolution: "encoding@npm:0.1.13"
- dependencies:
- iconv-lite: "npm:^0.6.2"
- checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039
- languageName: node
- linkType: hard
-
-"ensure-posix-path@npm:^1.1.0":
- version: 1.1.1
- resolution: "ensure-posix-path@npm:1.1.1"
- checksum: 10c0/17133fad88bac9b76e5a0690192d5c7bd6f08bdef618e2c1c0c1fcd3b0960f298a4226af5fe6401e729fc09534d0bb68b9e6f388e92d8a140a9d4a61a97e9641
- languageName: node
- linkType: hard
-
-"entities@npm:^2.0.0":
- version: 2.2.0
- resolution: "entities@npm:2.2.0"
- checksum: 10c0/7fba6af1f116300d2ba1c5673fc218af1961b20908638391b4e1e6d5850314ee2ac3ec22d741b3a8060479911c99305164aed19b6254bde75e7e6b1b2c3f3aa3
- languageName: node
- linkType: hard
-
-"entities@npm:^4.2.0, entities@npm:^4.4.0, entities@npm:^4.5.0":
- version: 4.5.0
- resolution: "entities@npm:4.5.0"
- checksum: 10c0/5b039739f7621f5d1ad996715e53d964035f75ad3b9a4d38c6b3804bb226e282ffeae2443624d8fdd9c47d8e926ae9ac009c54671243f0c3294c26af7cc85250
- languageName: node
- linkType: hard
-
-"env-paths@npm:^2.2.0":
- version: 2.2.1
- resolution: "env-paths@npm:2.2.1"
- checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4
- languageName: node
- linkType: hard
-
-"eol@npm:^0.9.1":
- version: 0.9.1
- resolution: "eol@npm:0.9.1"
- checksum: 10c0/5a6654ca1961529429f4eab4473e6d9351969f25baa30de7232e862c6c5f9037fc0ff044a526fe9cdd6ae65bb1b0db7775bf1d4f342f485c10c34b1444bfb7ab
- languageName: node
- linkType: hard
-
-"err-code@npm:^2.0.2":
- version: 2.0.3
- resolution: "err-code@npm:2.0.3"
- checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66
- languageName: node
- linkType: hard
-
-"error-ex@npm:^1.3.1":
- version: 1.3.2
- resolution: "error-ex@npm:1.3.2"
- dependencies:
- is-arrayish: "npm:^0.2.1"
- checksum: 10c0/ba827f89369b4c93382cfca5a264d059dfefdaa56ecc5e338ffa58a6471f5ed93b71a20add1d52290a4873d92381174382658c885ac1a2305f7baca363ce9cce
- languageName: node
- linkType: hard
-
-"es-abstract@npm:^1.17.5, es-abstract@npm:^1.22.1, es-abstract@npm:^1.23.2, es-abstract@npm:^1.23.3, es-abstract@npm:^1.23.5, es-abstract@npm:^1.23.6, es-abstract@npm:^1.23.9":
- version: 1.23.9
- resolution: "es-abstract@npm:1.23.9"
- dependencies:
- array-buffer-byte-length: "npm:^1.0.2"
- arraybuffer.prototype.slice: "npm:^1.0.4"
- available-typed-arrays: "npm:^1.0.7"
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- data-view-buffer: "npm:^1.0.2"
- data-view-byte-length: "npm:^1.0.2"
- data-view-byte-offset: "npm:^1.0.1"
- es-define-property: "npm:^1.0.1"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.0.0"
- es-set-tostringtag: "npm:^2.1.0"
- es-to-primitive: "npm:^1.3.0"
- function.prototype.name: "npm:^1.1.8"
- get-intrinsic: "npm:^1.2.7"
- get-proto: "npm:^1.0.0"
- get-symbol-description: "npm:^1.1.0"
- globalthis: "npm:^1.0.4"
- gopd: "npm:^1.2.0"
- has-property-descriptors: "npm:^1.0.2"
- has-proto: "npm:^1.2.0"
- has-symbols: "npm:^1.1.0"
- hasown: "npm:^2.0.2"
- internal-slot: "npm:^1.1.0"
- is-array-buffer: "npm:^3.0.5"
- is-callable: "npm:^1.2.7"
- is-data-view: "npm:^1.0.2"
- is-regex: "npm:^1.2.1"
- is-shared-array-buffer: "npm:^1.0.4"
- is-string: "npm:^1.1.1"
- is-typed-array: "npm:^1.1.15"
- is-weakref: "npm:^1.1.0"
- math-intrinsics: "npm:^1.1.0"
- object-inspect: "npm:^1.13.3"
- object-keys: "npm:^1.1.1"
- object.assign: "npm:^4.1.7"
- own-keys: "npm:^1.0.1"
- regexp.prototype.flags: "npm:^1.5.3"
- safe-array-concat: "npm:^1.1.3"
- safe-push-apply: "npm:^1.0.0"
- safe-regex-test: "npm:^1.1.0"
- set-proto: "npm:^1.0.0"
- string.prototype.trim: "npm:^1.2.10"
- string.prototype.trimend: "npm:^1.0.9"
- string.prototype.trimstart: "npm:^1.0.8"
- typed-array-buffer: "npm:^1.0.3"
- typed-array-byte-length: "npm:^1.0.3"
- typed-array-byte-offset: "npm:^1.0.4"
- typed-array-length: "npm:^1.0.7"
- unbox-primitive: "npm:^1.1.0"
- which-typed-array: "npm:^1.1.18"
- checksum: 10c0/1de229c9e08fe13c17fe5abaec8221545dfcd57e51f64909599a6ae896df84b8fd2f7d16c60cb00d7bf495b9298ca3581aded19939d4b7276854a4b066f8422b
- languageName: node
- linkType: hard
-
-"es-abstract@npm:^1.24.0":
- version: 1.24.0
- resolution: "es-abstract@npm:1.24.0"
- dependencies:
- array-buffer-byte-length: "npm:^1.0.2"
- arraybuffer.prototype.slice: "npm:^1.0.4"
- available-typed-arrays: "npm:^1.0.7"
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.4"
- data-view-buffer: "npm:^1.0.2"
- data-view-byte-length: "npm:^1.0.2"
- data-view-byte-offset: "npm:^1.0.1"
- es-define-property: "npm:^1.0.1"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.1.1"
- es-set-tostringtag: "npm:^2.1.0"
- es-to-primitive: "npm:^1.3.0"
- function.prototype.name: "npm:^1.1.8"
- get-intrinsic: "npm:^1.3.0"
- get-proto: "npm:^1.0.1"
- get-symbol-description: "npm:^1.1.0"
- globalthis: "npm:^1.0.4"
- gopd: "npm:^1.2.0"
- has-property-descriptors: "npm:^1.0.2"
- has-proto: "npm:^1.2.0"
- has-symbols: "npm:^1.1.0"
- hasown: "npm:^2.0.2"
- internal-slot: "npm:^1.1.0"
- is-array-buffer: "npm:^3.0.5"
- is-callable: "npm:^1.2.7"
- is-data-view: "npm:^1.0.2"
- is-negative-zero: "npm:^2.0.3"
- is-regex: "npm:^1.2.1"
- is-set: "npm:^2.0.3"
- is-shared-array-buffer: "npm:^1.0.4"
- is-string: "npm:^1.1.1"
- is-typed-array: "npm:^1.1.15"
- is-weakref: "npm:^1.1.1"
- math-intrinsics: "npm:^1.1.0"
- object-inspect: "npm:^1.13.4"
- object-keys: "npm:^1.1.1"
- object.assign: "npm:^4.1.7"
- own-keys: "npm:^1.0.1"
- regexp.prototype.flags: "npm:^1.5.4"
- safe-array-concat: "npm:^1.1.3"
- safe-push-apply: "npm:^1.0.0"
- safe-regex-test: "npm:^1.1.0"
- set-proto: "npm:^1.0.0"
- stop-iteration-iterator: "npm:^1.1.0"
- string.prototype.trim: "npm:^1.2.10"
- string.prototype.trimend: "npm:^1.0.9"
- string.prototype.trimstart: "npm:^1.0.8"
- typed-array-buffer: "npm:^1.0.3"
- typed-array-byte-length: "npm:^1.0.3"
- typed-array-byte-offset: "npm:^1.0.4"
- typed-array-length: "npm:^1.0.7"
- unbox-primitive: "npm:^1.1.0"
- which-typed-array: "npm:^1.1.19"
- checksum: 10c0/b256e897be32df5d382786ce8cce29a1dd8c97efbab77a26609bd70f2ed29fbcfc7a31758cb07488d532e7ccccdfca76c1118f2afe5a424cdc05ca007867c318
- languageName: node
- linkType: hard
-
-"es-define-property@npm:^1.0.0, es-define-property@npm:^1.0.1":
- version: 1.0.1
- resolution: "es-define-property@npm:1.0.1"
- checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c
- languageName: node
- linkType: hard
-
-"es-errors@npm:^1.3.0":
- version: 1.3.0
- resolution: "es-errors@npm:1.3.0"
- checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85
- languageName: node
- linkType: hard
-
-"es-iterator-helpers@npm:^1.2.1":
- version: 1.2.1
- resolution: "es-iterator-helpers@npm:1.2.1"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.6"
- es-errors: "npm:^1.3.0"
- es-set-tostringtag: "npm:^2.0.3"
- function-bind: "npm:^1.1.2"
- get-intrinsic: "npm:^1.2.6"
- globalthis: "npm:^1.0.4"
- gopd: "npm:^1.2.0"
- has-property-descriptors: "npm:^1.0.2"
- has-proto: "npm:^1.2.0"
- has-symbols: "npm:^1.1.0"
- internal-slot: "npm:^1.1.0"
- iterator.prototype: "npm:^1.1.4"
- safe-array-concat: "npm:^1.1.3"
- checksum: 10c0/97e3125ca472d82d8aceea11b790397648b52c26d8768ea1c1ee6309ef45a8755bb63225a43f3150c7591cffc17caf5752459f1e70d583b4184370a8f04ebd2f
- languageName: node
- linkType: hard
-
-"es-module-lexer@npm:^1.7.0":
- version: 1.7.0
- resolution: "es-module-lexer@npm:1.7.0"
- checksum: 10c0/4c935affcbfeba7fb4533e1da10fa8568043df1e3574b869385980de9e2d475ddc36769891936dbb07036edb3c3786a8b78ccf44964cd130dedc1f2c984b6c7b
- languageName: node
- linkType: hard
-
-"es-object-atoms@npm:^1.0.0":
- version: 1.0.0
- resolution: "es-object-atoms@npm:1.0.0"
- dependencies:
- es-errors: "npm:^1.3.0"
- checksum: 10c0/1fed3d102eb27ab8d983337bb7c8b159dd2a1e63ff833ec54eea1311c96d5b08223b433060ba240541ca8adba9eee6b0a60cdbf2f80634b784febc9cc8b687b4
- languageName: node
- linkType: hard
-
-"es-object-atoms@npm:^1.1.1":
- version: 1.1.1
- resolution: "es-object-atoms@npm:1.1.1"
- dependencies:
- es-errors: "npm:^1.3.0"
- checksum: 10c0/65364812ca4daf48eb76e2a3b7a89b3f6a2e62a1c420766ce9f692665a29d94fe41fe88b65f24106f449859549711e4b40d9fb8002d862dfd7eb1c512d10be0c
- languageName: node
- linkType: hard
-
-"es-set-tostringtag@npm:^2.0.3, es-set-tostringtag@npm:^2.1.0":
- version: 2.1.0
- resolution: "es-set-tostringtag@npm:2.1.0"
- dependencies:
- es-errors: "npm:^1.3.0"
- get-intrinsic: "npm:^1.2.6"
- has-tostringtag: "npm:^1.0.2"
- hasown: "npm:^2.0.2"
- checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af
- languageName: node
- linkType: hard
-
-"es-shim-unscopables@npm:^1.0.0, es-shim-unscopables@npm:^1.0.2":
- version: 1.0.2
- resolution: "es-shim-unscopables@npm:1.0.2"
- dependencies:
- hasown: "npm:^2.0.0"
- checksum: 10c0/f495af7b4b7601a4c0cfb893581c352636e5c08654d129590386a33a0432cf13a7bdc7b6493801cadd990d838e2839b9013d1de3b880440cb537825e834fe783
- languageName: node
- linkType: hard
-
-"es-shim-unscopables@npm:^1.1.0":
- version: 1.1.0
- resolution: "es-shim-unscopables@npm:1.1.0"
- dependencies:
- hasown: "npm:^2.0.2"
- checksum: 10c0/1b9702c8a1823fc3ef39035a4e958802cf294dd21e917397c561d0b3e195f383b978359816b1732d02b255ccf63e1e4815da0065b95db8d7c992037be3bbbcdb
- languageName: node
- linkType: hard
-
-"es-to-primitive@npm:^1.3.0":
- version: 1.3.0
- resolution: "es-to-primitive@npm:1.3.0"
- dependencies:
- is-callable: "npm:^1.2.7"
- is-date-object: "npm:^1.0.5"
- is-symbol: "npm:^1.0.4"
- checksum: 10c0/c7e87467abb0b438639baa8139f701a06537d2b9bc758f23e8622c3b42fd0fdb5bde0f535686119e446dd9d5e4c0f238af4e14960f4771877cf818d023f6730b
- languageName: node
- linkType: hard
-
-"esbuild@npm:^0.25.0":
- version: 0.25.1
- resolution: "esbuild@npm:0.25.1"
- dependencies:
- "@esbuild/aix-ppc64": "npm:0.25.1"
- "@esbuild/android-arm": "npm:0.25.1"
- "@esbuild/android-arm64": "npm:0.25.1"
- "@esbuild/android-x64": "npm:0.25.1"
- "@esbuild/darwin-arm64": "npm:0.25.1"
- "@esbuild/darwin-x64": "npm:0.25.1"
- "@esbuild/freebsd-arm64": "npm:0.25.1"
- "@esbuild/freebsd-x64": "npm:0.25.1"
- "@esbuild/linux-arm": "npm:0.25.1"
- "@esbuild/linux-arm64": "npm:0.25.1"
- "@esbuild/linux-ia32": "npm:0.25.1"
- "@esbuild/linux-loong64": "npm:0.25.1"
- "@esbuild/linux-mips64el": "npm:0.25.1"
- "@esbuild/linux-ppc64": "npm:0.25.1"
- "@esbuild/linux-riscv64": "npm:0.25.1"
- "@esbuild/linux-s390x": "npm:0.25.1"
- "@esbuild/linux-x64": "npm:0.25.1"
- "@esbuild/netbsd-arm64": "npm:0.25.1"
- "@esbuild/netbsd-x64": "npm:0.25.1"
- "@esbuild/openbsd-arm64": "npm:0.25.1"
- "@esbuild/openbsd-x64": "npm:0.25.1"
- "@esbuild/sunos-x64": "npm:0.25.1"
- "@esbuild/win32-arm64": "npm:0.25.1"
- "@esbuild/win32-ia32": "npm:0.25.1"
- "@esbuild/win32-x64": "npm:0.25.1"
- dependenciesMeta:
- "@esbuild/aix-ppc64":
- optional: true
- "@esbuild/android-arm":
- optional: true
- "@esbuild/android-arm64":
- optional: true
- "@esbuild/android-x64":
- optional: true
- "@esbuild/darwin-arm64":
- optional: true
- "@esbuild/darwin-x64":
- optional: true
- "@esbuild/freebsd-arm64":
- optional: true
- "@esbuild/freebsd-x64":
- optional: true
- "@esbuild/linux-arm":
- optional: true
- "@esbuild/linux-arm64":
- optional: true
- "@esbuild/linux-ia32":
- optional: true
- "@esbuild/linux-loong64":
- optional: true
- "@esbuild/linux-mips64el":
- optional: true
- "@esbuild/linux-ppc64":
- optional: true
- "@esbuild/linux-riscv64":
- optional: true
- "@esbuild/linux-s390x":
- optional: true
- "@esbuild/linux-x64":
- optional: true
- "@esbuild/netbsd-arm64":
- optional: true
- "@esbuild/netbsd-x64":
- optional: true
- "@esbuild/openbsd-arm64":
- optional: true
- "@esbuild/openbsd-x64":
- optional: true
- "@esbuild/sunos-x64":
- optional: true
- "@esbuild/win32-arm64":
- optional: true
- "@esbuild/win32-ia32":
- optional: true
- "@esbuild/win32-x64":
- optional: true
- bin:
- esbuild: bin/esbuild
- checksum: 10c0/80fca30dd0f21aec23fdfab34f0a8d5f55df5097dd7f475f2ab561d45662c32ee306f5649071cd1a0ba0614b164c48ca3dc3ee1551a4daf204b8af90e4d893f5
- languageName: node
- linkType: hard
-
-"esbuild@npm:^0.27.0":
- version: 0.27.2
- resolution: "esbuild@npm:0.27.2"
- dependencies:
- "@esbuild/aix-ppc64": "npm:0.27.2"
- "@esbuild/android-arm": "npm:0.27.2"
- "@esbuild/android-arm64": "npm:0.27.2"
- "@esbuild/android-x64": "npm:0.27.2"
- "@esbuild/darwin-arm64": "npm:0.27.2"
- "@esbuild/darwin-x64": "npm:0.27.2"
- "@esbuild/freebsd-arm64": "npm:0.27.2"
- "@esbuild/freebsd-x64": "npm:0.27.2"
- "@esbuild/linux-arm": "npm:0.27.2"
- "@esbuild/linux-arm64": "npm:0.27.2"
- "@esbuild/linux-ia32": "npm:0.27.2"
- "@esbuild/linux-loong64": "npm:0.27.2"
- "@esbuild/linux-mips64el": "npm:0.27.2"
- "@esbuild/linux-ppc64": "npm:0.27.2"
- "@esbuild/linux-riscv64": "npm:0.27.2"
- "@esbuild/linux-s390x": "npm:0.27.2"
- "@esbuild/linux-x64": "npm:0.27.2"
- "@esbuild/netbsd-arm64": "npm:0.27.2"
- "@esbuild/netbsd-x64": "npm:0.27.2"
- "@esbuild/openbsd-arm64": "npm:0.27.2"
- "@esbuild/openbsd-x64": "npm:0.27.2"
- "@esbuild/openharmony-arm64": "npm:0.27.2"
- "@esbuild/sunos-x64": "npm:0.27.2"
- "@esbuild/win32-arm64": "npm:0.27.2"
- "@esbuild/win32-ia32": "npm:0.27.2"
- "@esbuild/win32-x64": "npm:0.27.2"
- dependenciesMeta:
- "@esbuild/aix-ppc64":
- optional: true
- "@esbuild/android-arm":
- optional: true
- "@esbuild/android-arm64":
- optional: true
- "@esbuild/android-x64":
- optional: true
- "@esbuild/darwin-arm64":
- optional: true
- "@esbuild/darwin-x64":
- optional: true
- "@esbuild/freebsd-arm64":
- optional: true
- "@esbuild/freebsd-x64":
- optional: true
- "@esbuild/linux-arm":
- optional: true
- "@esbuild/linux-arm64":
- optional: true
- "@esbuild/linux-ia32":
- optional: true
- "@esbuild/linux-loong64":
- optional: true
- "@esbuild/linux-mips64el":
- optional: true
- "@esbuild/linux-ppc64":
- optional: true
- "@esbuild/linux-riscv64":
- optional: true
- "@esbuild/linux-s390x":
- optional: true
- "@esbuild/linux-x64":
- optional: true
- "@esbuild/netbsd-arm64":
- optional: true
- "@esbuild/netbsd-x64":
- optional: true
- "@esbuild/openbsd-arm64":
- optional: true
- "@esbuild/openbsd-x64":
- optional: true
- "@esbuild/openharmony-arm64":
- optional: true
- "@esbuild/sunos-x64":
- optional: true
- "@esbuild/win32-arm64":
- optional: true
- "@esbuild/win32-ia32":
- optional: true
- "@esbuild/win32-x64":
- optional: true
- bin:
- esbuild: bin/esbuild
- checksum: 10c0/cf83f626f55500f521d5fe7f4bc5871bec240d3deb2a01fbd379edc43b3664d1167428738a5aad8794b35d1cca985c44c375b1cd38a2ca613c77ced2c83aafcd
- languageName: node
- linkType: hard
-
-"escalade@npm:^3.1.1, escalade@npm:^3.2.0":
- version: 3.2.0
- resolution: "escalade@npm:3.2.0"
- checksum: 10c0/ced4dd3a78e15897ed3be74e635110bbf3b08877b0a41be50dcb325ee0e0b5f65fc2d50e9845194d7c4633f327e2e1c6cce00a71b617c5673df0374201d67f65
- languageName: node
- linkType: hard
-
-"escape-string-regexp@npm:^1.0.5":
- version: 1.0.5
- resolution: "escape-string-regexp@npm:1.0.5"
- checksum: 10c0/a968ad453dd0c2724e14a4f20e177aaf32bb384ab41b674a8454afe9a41c5e6fe8903323e0a1052f56289d04bd600f81278edf140b0fcc02f5cac98d0f5b5371
- languageName: node
- linkType: hard
-
-"escape-string-regexp@npm:^4.0.0":
- version: 4.0.0
- resolution: "escape-string-regexp@npm:4.0.0"
- checksum: 10c0/9497d4dd307d845bd7f75180d8188bb17ea8c151c1edbf6b6717c100e104d629dc2dfb687686181b0f4b7d732c7dfdc4d5e7a8ff72de1b0ca283a75bbb3a9cd9
- languageName: node
- linkType: hard
-
-"eslint-config-google@npm:^0.14.0":
- version: 0.14.0
- resolution: "eslint-config-google@npm:0.14.0"
- peerDependencies:
- eslint: ">=5.16.0"
- checksum: 10c0/b714c8c45ab1743002f69aa419ad5b39bab00e89484f4e30c33f79f9de031349613f73c9dd4c3a10f40b89a3a43618d4be29df15ab3b96e761f2b705e7293345
- languageName: node
- linkType: hard
-
-"eslint-config-prettier@npm:^10.0.0":
- version: 10.1.8
- resolution: "eslint-config-prettier@npm:10.1.8"
- peerDependencies:
- eslint: ">=7.0.0"
- bin:
- eslint-config-prettier: bin/cli.js
- checksum: 10c0/e1bcfadc9eccd526c240056b1e59c5cd26544fe59feb85f38f4f1f116caed96aea0b3b87868e68b3099e55caaac3f2e5b9f58110f85db893e83a332751192682
- languageName: node
- linkType: hard
-
-"eslint-etc@npm:^5.1.0":
- version: 5.2.1
- resolution: "eslint-etc@npm:5.2.1"
- dependencies:
- "@typescript-eslint/experimental-utils": "npm:^5.0.0"
- tsutils: "npm:^3.17.1"
- tsutils-etc: "npm:^1.4.1"
- peerDependencies:
- eslint: ^8.0.0
- typescript: ">=4.0.0"
- checksum: 10c0/628f9d65e16f7c7d06c663256d39f5e72f508a515d2712b0bcb329dbb9e7a1a4f175292c3477c83be9cc8a75deea5f050a00c3dc9b084af6b651d46ee8360a9e
- languageName: node
- linkType: hard
-
-"eslint-import-resolver-node@npm:^0.3.9":
- version: 0.3.9
- resolution: "eslint-import-resolver-node@npm:0.3.9"
- dependencies:
- debug: "npm:^3.2.7"
- is-core-module: "npm:^2.13.0"
- resolve: "npm:^1.22.4"
- checksum: 10c0/0ea8a24a72328a51fd95aa8f660dcca74c1429806737cf10261ab90cfcaaf62fd1eff664b76a44270868e0a932711a81b250053942595bcd00a93b1c1575dd61
- languageName: node
- linkType: hard
-
-"eslint-module-utils@npm:^2.12.1":
- version: 2.12.1
- resolution: "eslint-module-utils@npm:2.12.1"
- dependencies:
- debug: "npm:^3.2.7"
- peerDependenciesMeta:
- eslint:
- optional: true
- checksum: 10c0/6f4efbe7a91ae49bf67b4ab3644cb60bc5bd7db4cb5521de1b65be0847ffd3fb6bce0dd68f0995e1b312d137f768e2a1f842ee26fe73621afa05f850628fdc40
- languageName: node
- linkType: hard
-
-"eslint-plugin-deprecate@npm:^0.8.2":
- version: 0.8.7
- resolution: "eslint-plugin-deprecate@npm:0.8.7"
- peerDependencies:
- eslint: ">=2.x"
- checksum: 10c0/7f40cd7dab8ae62b1ce75f8c71de3858c1e10cb1a8fbfddc4c16474f2ca7b125d33897fd78b272c61c693849761da6a7fef039d34454dcaeba757b774f14bb23
- languageName: node
- linkType: hard
-
-"eslint-plugin-import@npm:^2.26.0":
- version: 2.32.0
- resolution: "eslint-plugin-import@npm:2.32.0"
- dependencies:
- "@rtsao/scc": "npm:^1.1.0"
- array-includes: "npm:^3.1.9"
- array.prototype.findlastindex: "npm:^1.2.6"
- array.prototype.flat: "npm:^1.3.3"
- array.prototype.flatmap: "npm:^1.3.3"
- debug: "npm:^3.2.7"
- doctrine: "npm:^2.1.0"
- eslint-import-resolver-node: "npm:^0.3.9"
- eslint-module-utils: "npm:^2.12.1"
- hasown: "npm:^2.0.2"
- is-core-module: "npm:^2.16.1"
- is-glob: "npm:^4.0.3"
- minimatch: "npm:^3.1.2"
- object.fromentries: "npm:^2.0.8"
- object.groupby: "npm:^1.0.3"
- object.values: "npm:^1.2.1"
- semver: "npm:^6.3.1"
- string.prototype.trimend: "npm:^1.0.9"
- tsconfig-paths: "npm:^3.15.0"
- peerDependencies:
- eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9
- checksum: 10c0/bfb1b8fc8800398e62ddfefbf3638d185286edfed26dfe00875cc2846d954491b4f5112457831588b757fa789384e1ae585f812614c4797f0499fa234fd4a48b
- languageName: node
- linkType: hard
-
-"eslint-plugin-jsdoc@npm:^61.5.0":
- version: 61.7.1
- resolution: "eslint-plugin-jsdoc@npm:61.7.1"
- dependencies:
- "@es-joy/jsdoccomment": "npm:~0.78.0"
- "@es-joy/resolve.exports": "npm:1.2.0"
- are-docs-informative: "npm:^0.0.2"
- comment-parser: "npm:1.4.1"
- debug: "npm:^4.4.3"
- escape-string-regexp: "npm:^4.0.0"
- espree: "npm:^11.0.0"
- esquery: "npm:^1.7.0"
- html-entities: "npm:^2.6.0"
- object-deep-merge: "npm:^2.0.0"
- parse-imports-exports: "npm:^0.2.4"
- semver: "npm:^7.7.3"
- spdx-expression-parse: "npm:^4.0.0"
- to-valid-identifier: "npm:^1.0.0"
- peerDependencies:
- eslint: ^7.0.0 || ^8.0.0 || ^9.0.0
- checksum: 10c0/d0904b923f68a4e9e6da156316a4e2a972445bf79118bde9618ad80b4ef5927fc2c9dd597b22b776742ef548d65914e75fca190ab3be942385f268a3b83c1087
- languageName: node
- linkType: hard
-
-"eslint-plugin-jsx-a11y@npm:^6.5.1":
- version: 6.10.2
- resolution: "eslint-plugin-jsx-a11y@npm:6.10.2"
- dependencies:
- aria-query: "npm:^5.3.2"
- array-includes: "npm:^3.1.8"
- array.prototype.flatmap: "npm:^1.3.2"
- ast-types-flow: "npm:^0.0.8"
- axe-core: "npm:^4.10.0"
- axobject-query: "npm:^4.1.0"
- damerau-levenshtein: "npm:^1.0.8"
- emoji-regex: "npm:^9.2.2"
- hasown: "npm:^2.0.2"
- jsx-ast-utils: "npm:^3.3.5"
- language-tags: "npm:^1.0.9"
- minimatch: "npm:^3.1.2"
- object.fromentries: "npm:^2.0.8"
- safe-regex-test: "npm:^1.0.3"
- string.prototype.includes: "npm:^2.0.1"
- peerDependencies:
- eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9
- checksum: 10c0/d93354e03b0cf66f018d5c50964e074dffe4ddf1f9b535fa020d19c4ae45f89c1a16e9391ca61ac3b19f7042c751ac0d361a056a65cbd1de24718a53ff8daa6e
- languageName: node
- linkType: hard
-
-"eslint-plugin-matrix-org@npm:2.1.0":
- version: 2.1.0
- resolution: "eslint-plugin-matrix-org@npm:2.1.0"
- peerDependencies:
- "@babel/core": "*"
- "@babel/eslint-parser": "*"
- "@babel/eslint-plugin": "*"
- "@stylistic/eslint-plugin": "*"
- "@typescript-eslint/eslint-plugin": "*"
- "@typescript-eslint/parser": "*"
- eslint: "*"
- eslint-config-google: "*"
- eslint-config-prettier: "*"
- eslint-plugin-deprecate: "*"
- eslint-plugin-import: "*"
- eslint-plugin-jest: "*"
- eslint-plugin-jsx-a11y: "*"
- eslint-plugin-react: "*"
- eslint-plugin-react-hooks: "*"
- eslint-plugin-unicorn: "*"
- prettier: "*"
- typescript: "*"
- checksum: 10c0/ca3c727a12829bd58455ab32894118625fd0d208314aebc95b319aef9fa2881e53178853132327664fa1e62e0f9a0946295e195d21c3fa5235a240852f2a070a
- languageName: node
- linkType: hard
-
-"eslint-plugin-react-hooks@npm:^5.0.0":
- version: 5.2.0
- resolution: "eslint-plugin-react-hooks@npm:5.2.0"
- peerDependencies:
- eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0
- checksum: 10c0/1c8d50fa5984c6dea32470651807d2922cc3934cf3425e78f84a24c2dfd972e7f019bee84aefb27e0cf2c13fea0ac1d4473267727408feeb1c56333ca1489385
- languageName: node
- linkType: hard
-
-"eslint-plugin-react@npm:^7.29.4":
- version: 7.37.5
- resolution: "eslint-plugin-react@npm:7.37.5"
- dependencies:
- array-includes: "npm:^3.1.8"
- array.prototype.findlast: "npm:^1.2.5"
- array.prototype.flatmap: "npm:^1.3.3"
- array.prototype.tosorted: "npm:^1.1.4"
- doctrine: "npm:^2.1.0"
- es-iterator-helpers: "npm:^1.2.1"
- estraverse: "npm:^5.3.0"
- hasown: "npm:^2.0.2"
- jsx-ast-utils: "npm:^2.4.1 || ^3.0.0"
- minimatch: "npm:^3.1.2"
- object.entries: "npm:^1.1.9"
- object.fromentries: "npm:^2.0.8"
- object.values: "npm:^1.2.1"
- prop-types: "npm:^15.8.1"
- resolve: "npm:^2.0.0-next.5"
- semver: "npm:^6.3.1"
- string.prototype.matchall: "npm:^4.0.12"
- string.prototype.repeat: "npm:^1.0.0"
- peerDependencies:
- eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7
- checksum: 10c0/c850bfd556291d4d9234f5ca38db1436924a1013627c8ab1853f77cac73ec19b020e861e6c7b783436a48b6ffcdfba4547598235a37ad4611b6739f65fd8ad57
- languageName: node
- linkType: hard
-
-"eslint-plugin-rxjs@npm:^5.0.3":
- version: 5.0.3
- resolution: "eslint-plugin-rxjs@npm:5.0.3"
- dependencies:
- "@typescript-eslint/experimental-utils": "npm:^5.0.0"
- common-tags: "npm:^1.8.0"
- decamelize: "npm:^5.0.0"
- eslint-etc: "npm:^5.1.0"
- requireindex: "npm:~1.2.0"
- rxjs-report-usage: "npm:^1.0.4"
- tslib: "npm:^2.0.0"
- tsutils: "npm:^3.0.0"
- tsutils-etc: "npm:^1.4.1"
- peerDependencies:
- eslint: ^8.0.0
- typescript: ">=4.0.0"
- checksum: 10c0/bba2048a6772ec017e63c9201642c90043365308f2d386b448a28b91f7195a7f65ebb39705bb886f89bcc4fe1ffbd18bd2b25bf8f389bc5cae592828dbfe9d58
- languageName: node
- linkType: hard
-
-"eslint-plugin-unicorn@npm:^56.0.0":
- version: 56.0.1
- resolution: "eslint-plugin-unicorn@npm:56.0.1"
- dependencies:
- "@babel/helper-validator-identifier": "npm:^7.24.7"
- "@eslint-community/eslint-utils": "npm:^4.4.0"
- ci-info: "npm:^4.0.0"
- clean-regexp: "npm:^1.0.0"
- core-js-compat: "npm:^3.38.1"
- esquery: "npm:^1.6.0"
- globals: "npm:^15.9.0"
- indent-string: "npm:^4.0.0"
- is-builtin-module: "npm:^3.2.1"
- jsesc: "npm:^3.0.2"
- pluralize: "npm:^8.0.0"
- read-pkg-up: "npm:^7.0.1"
- regexp-tree: "npm:^0.1.27"
- regjsparser: "npm:^0.10.0"
- semver: "npm:^7.6.3"
- strip-indent: "npm:^3.0.0"
- peerDependencies:
- eslint: ">=8.56.0"
- checksum: 10c0/3b853ecde6ab597b12e28b962ba6ad7d3594f7f066d90135db2d3366ac13361c72500119163e13e1c38ca6fbdd331b1cc31dce9e8673880bff050fe51d6c64db
- languageName: node
- linkType: hard
-
-"eslint-scope@npm:^5.1.1":
- version: 5.1.1
- resolution: "eslint-scope@npm:5.1.1"
- dependencies:
- esrecurse: "npm:^4.3.0"
- estraverse: "npm:^4.1.1"
- checksum: 10c0/d30ef9dc1c1cbdece34db1539a4933fe3f9b14e1ffb27ecc85987902ee663ad7c9473bbd49a9a03195a373741e62e2f807c4938992e019b511993d163450e70a
- languageName: node
- linkType: hard
-
-"eslint-scope@npm:^7.2.2":
- version: 7.2.2
- resolution: "eslint-scope@npm:7.2.2"
- dependencies:
- esrecurse: "npm:^4.3.0"
- estraverse: "npm:^5.2.0"
- checksum: 10c0/613c267aea34b5a6d6c00514e8545ef1f1433108097e857225fed40d397dd6b1809dffd11c2fde23b37ca53d7bf935fe04d2a18e6fc932b31837b6ad67e1c116
- languageName: node
- linkType: hard
-
-"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3":
- version: 3.4.3
- resolution: "eslint-visitor-keys@npm:3.4.3"
- checksum: 10c0/92708e882c0a5ffd88c23c0b404ac1628cf20104a108c745f240a13c332a11aac54f49a22d5762efbffc18ecbc9a580d1b7ad034bf5f3cc3307e5cbff2ec9820
- languageName: node
- linkType: hard
-
-"eslint-visitor-keys@npm:^4.2.0":
- version: 4.2.0
- resolution: "eslint-visitor-keys@npm:4.2.0"
- checksum: 10c0/2ed81c663b147ca6f578312919483eb040295bbab759e5a371953456c636c5b49a559883e2677112453728d66293c0a4c90ab11cab3428cf02a0236d2e738269
- languageName: node
- linkType: hard
-
-"eslint-visitor-keys@npm:^5.0.0, eslint-visitor-keys@npm:^5.0.1":
- version: 5.0.1
- resolution: "eslint-visitor-keys@npm:5.0.1"
- checksum: 10c0/16190bdf2cbae40a1109384c94450c526a79b0b9c3cb21e544256ed85ac48a4b84db66b74a6561d20fe6ab77447f150d711c2ad5ad74df4fcc133736bce99678
- languageName: node
- linkType: hard
-
-"eslint@npm:^8.14.0":
- version: 8.57.1
- resolution: "eslint@npm:8.57.1"
- dependencies:
- "@eslint-community/eslint-utils": "npm:^4.2.0"
- "@eslint-community/regexpp": "npm:^4.6.1"
- "@eslint/eslintrc": "npm:^2.1.4"
- "@eslint/js": "npm:8.57.1"
- "@humanwhocodes/config-array": "npm:^0.13.0"
- "@humanwhocodes/module-importer": "npm:^1.0.1"
- "@nodelib/fs.walk": "npm:^1.2.8"
- "@ungap/structured-clone": "npm:^1.2.0"
- ajv: "npm:^6.12.4"
- chalk: "npm:^4.0.0"
- cross-spawn: "npm:^7.0.2"
- debug: "npm:^4.3.2"
- doctrine: "npm:^3.0.0"
- escape-string-regexp: "npm:^4.0.0"
- eslint-scope: "npm:^7.2.2"
- eslint-visitor-keys: "npm:^3.4.3"
- espree: "npm:^9.6.1"
- esquery: "npm:^1.4.2"
- esutils: "npm:^2.0.2"
- fast-deep-equal: "npm:^3.1.3"
- file-entry-cache: "npm:^6.0.1"
- find-up: "npm:^5.0.0"
- glob-parent: "npm:^6.0.2"
- globals: "npm:^13.19.0"
- graphemer: "npm:^1.4.0"
- ignore: "npm:^5.2.0"
- imurmurhash: "npm:^0.1.4"
- is-glob: "npm:^4.0.0"
- is-path-inside: "npm:^3.0.3"
- js-yaml: "npm:^4.1.0"
- json-stable-stringify-without-jsonify: "npm:^1.0.1"
- levn: "npm:^0.4.1"
- lodash.merge: "npm:^4.6.2"
- minimatch: "npm:^3.1.2"
- natural-compare: "npm:^1.4.0"
- optionator: "npm:^0.9.3"
- strip-ansi: "npm:^6.0.1"
- text-table: "npm:^0.2.0"
- bin:
- eslint: bin/eslint.js
- checksum: 10c0/1fd31533086c1b72f86770a4d9d7058ee8b4643fd1cfd10c7aac1ecb8725698e88352a87805cf4b2ce890aa35947df4b4da9655fb7fdfa60dbb448a43f6ebcf1
- languageName: node
- linkType: hard
-
-"espree@npm:^10.3.0":
- version: 10.3.0
- resolution: "espree@npm:10.3.0"
- dependencies:
- acorn: "npm:^8.14.0"
- acorn-jsx: "npm:^5.3.2"
- eslint-visitor-keys: "npm:^4.2.0"
- checksum: 10c0/272beeaca70d0a1a047d61baff64db04664a33d7cfb5d144f84bc8a5c6194c6c8ebe9cc594093ca53add88baa23e59b01e69e8a0160ab32eac570482e165c462
- languageName: node
- linkType: hard
-
-"espree@npm:^11.0.0":
- version: 11.1.1
- resolution: "espree@npm:11.1.1"
- dependencies:
- acorn: "npm:^8.16.0"
- acorn-jsx: "npm:^5.3.2"
- eslint-visitor-keys: "npm:^5.0.1"
- checksum: 10c0/2feae74efdfb037b9e9fcb30506799845cf20900de5e441ed03e5c51aaa249f85ea5818ff177682acc0c9bfb4ac97e1965c238ee44ac7c305aab8747177bab69
- languageName: node
- linkType: hard
-
-"espree@npm:^9.6.0, espree@npm:^9.6.1":
- version: 9.6.1
- resolution: "espree@npm:9.6.1"
- dependencies:
- acorn: "npm:^8.9.0"
- acorn-jsx: "npm:^5.3.2"
- eslint-visitor-keys: "npm:^3.4.1"
- checksum: 10c0/1a2e9b4699b715347f62330bcc76aee224390c28bb02b31a3752e9d07549c473f5f986720483c6469cf3cfb3c9d05df612ffc69eb1ee94b54b739e67de9bb460
- languageName: node
- linkType: hard
-
-"esquery@npm:^1.4.2, esquery@npm:^1.7.0":
- version: 1.7.0
- resolution: "esquery@npm:1.7.0"
- dependencies:
- estraverse: "npm:^5.1.0"
- checksum: 10c0/77d5173db450b66f3bc685d11af4c90cffeedb340f34a39af96d43509a335ce39c894fd79233df32d38f5e4e219fa0f7076f6ec90bae8320170ba082c0db4793
- languageName: node
- linkType: hard
-
-"esquery@npm:^1.6.0":
- version: 1.6.0
- resolution: "esquery@npm:1.6.0"
- dependencies:
- estraverse: "npm:^5.1.0"
- checksum: 10c0/cb9065ec605f9da7a76ca6dadb0619dfb611e37a81e318732977d90fab50a256b95fee2d925fba7c2f3f0523aa16f91587246693bc09bc34d5a59575fe6e93d2
- languageName: node
- linkType: hard
-
-"esrecurse@npm:^4.3.0":
- version: 4.3.0
- resolution: "esrecurse@npm:4.3.0"
- dependencies:
- estraverse: "npm:^5.2.0"
- checksum: 10c0/81a37116d1408ded88ada45b9fb16dbd26fba3aadc369ce50fcaf82a0bac12772ebd7b24cd7b91fc66786bf2c1ac7b5f196bc990a473efff972f5cb338877cf5
- languageName: node
- linkType: hard
-
-"estraverse@npm:^4.1.1":
- version: 4.3.0
- resolution: "estraverse@npm:4.3.0"
- checksum: 10c0/9cb46463ef8a8a4905d3708a652d60122a0c20bb58dec7e0e12ab0e7235123d74214fc0141d743c381813e1b992767e2708194f6f6e0f9fd00c1b4e0887b8b6d
- languageName: node
- linkType: hard
-
-"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0":
- version: 5.3.0
- resolution: "estraverse@npm:5.3.0"
- checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107
- languageName: node
- linkType: hard
-
-"estree-walker@npm:^2.0.1, estree-walker@npm:^2.0.2":
- version: 2.0.2
- resolution: "estree-walker@npm:2.0.2"
- checksum: 10c0/53a6c54e2019b8c914dc395890153ffdc2322781acf4bd7d1a32d7aedc1710807bdcd866ac133903d5629ec601fbb50abe8c2e5553c7f5a0afdd9b6af6c945af
- languageName: node
- linkType: hard
-
-"estree-walker@npm:^3.0.3":
- version: 3.0.3
- resolution: "estree-walker@npm:3.0.3"
- dependencies:
- "@types/estree": "npm:^1.0.0"
- checksum: 10c0/c12e3c2b2642d2bcae7d5aa495c60fa2f299160946535763969a1c83fc74518ffa9c2cd3a8b69ac56aea547df6a8aac25f729a342992ef0bbac5f1c73e78995d
- languageName: node
- linkType: hard
-
-"esutils@npm:^2.0.2":
- version: 2.0.3
- resolution: "esutils@npm:2.0.3"
- checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7
- languageName: node
- linkType: hard
-
-"events@npm:^3.0.0, events@npm:^3.2.0, events@npm:^3.3.0":
- version: 3.3.0
- resolution: "events@npm:3.3.0"
- checksum: 10c0/d6b6f2adbccbcda74ddbab52ed07db727ef52e31a61ed26db9feb7dc62af7fc8e060defa65e5f8af9449b86b52cc1a1f6a79f2eafcf4e62add2b7a1fa4a432f6
- languageName: node
- linkType: hard
-
-"evp_bytestokey@npm:^1.0.0, evp_bytestokey@npm:^1.0.3":
- version: 1.0.3
- resolution: "evp_bytestokey@npm:1.0.3"
- dependencies:
- md5.js: "npm:^1.3.4"
- node-gyp: "npm:latest"
- safe-buffer: "npm:^5.1.1"
- checksum: 10c0/77fbe2d94a902a80e9b8f5a73dcd695d9c14899c5e82967a61b1fc6cbbb28c46552d9b127cff47c45fcf684748bdbcfa0a50410349109de87ceb4b199ef6ee99
- languageName: node
- linkType: hard
-
-"expect-type@npm:^1.2.2":
- version: 1.3.0
- resolution: "expect-type@npm:1.3.0"
- checksum: 10c0/8412b3fe4f392c420ab41dae220b09700e4e47c639a29ba7ba2e83cc6cffd2b4926f7ac9e47d7e277e8f4f02acda76fd6931cb81fd2b382fa9477ef9ada953fd
- languageName: node
- linkType: hard
-
-"exponential-backoff@npm:^3.1.1":
- version: 3.1.2
- resolution: "exponential-backoff@npm:3.1.2"
- checksum: 10c0/d9d3e1eafa21b78464297df91f1776f7fbaa3d5e3f7f0995648ca5b89c069d17055033817348d9f4a43d1c20b0eab84f75af6991751e839df53e4dfd6f22e844
- 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"
- checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0
- languageName: node
- linkType: hard
-
-"fast-fifo@npm:^1.3.2":
- version: 1.3.2
- resolution: "fast-fifo@npm:1.3.2"
- checksum: 10c0/d53f6f786875e8b0529f784b59b4b05d4b5c31c651710496440006a398389a579c8dbcd2081311478b5bf77f4b0b21de69109c5a4eabea9d8e8783d1eb864e4c
- languageName: node
- linkType: hard
-
-"fast-glob@npm:^3.2.11, fast-glob@npm:^3.3.2, fast-glob@npm:^3.3.3":
- version: 3.3.3
- resolution: "fast-glob@npm:3.3.3"
- dependencies:
- "@nodelib/fs.stat": "npm:^2.0.2"
- "@nodelib/fs.walk": "npm:^1.2.3"
- glob-parent: "npm:^5.1.2"
- merge2: "npm:^1.3.0"
- micromatch: "npm:^4.0.8"
- checksum: 10c0/f6aaa141d0d3384cf73cbcdfc52f475ed293f6d5b65bfc5def368b09163a9f7e5ec2b3014d80f733c405f58e470ee0cc451c2937685045cddcdeaa24199c43fe
- languageName: node
- linkType: hard
-
-"fast-glob@npm:^3.2.9":
- version: 3.3.2
- resolution: "fast-glob@npm:3.3.2"
- dependencies:
- "@nodelib/fs.stat": "npm:^2.0.2"
- "@nodelib/fs.walk": "npm:^1.2.3"
- glob-parent: "npm:^5.1.2"
- merge2: "npm:^1.3.0"
- micromatch: "npm:^4.0.4"
- checksum: 10c0/42baad7b9cd40b63e42039132bde27ca2cb3a4950d0a0f9abe4639ea1aa9d3e3b40f98b1fe31cbc0cc17b664c9ea7447d911a152fa34ec5b72977b125a6fc845
- languageName: node
- linkType: hard
-
-"fast-json-stable-stringify@npm:^2.0.0":
- version: 2.1.0
- resolution: "fast-json-stable-stringify@npm:2.1.0"
- checksum: 10c0/7f081eb0b8a64e0057b3bb03f974b3ef00135fbf36c1c710895cd9300f13c94ba809bb3a81cf4e1b03f6e5285610a61abbd7602d0652de423144dfee5a389c9b
- languageName: node
- linkType: hard
-
-"fast-levenshtein@npm:^2.0.6":
- version: 2.0.6
- resolution: "fast-levenshtein@npm:2.0.6"
- checksum: 10c0/111972b37338bcb88f7d9e2c5907862c280ebf4234433b95bc611e518d192ccb2d38119c4ac86e26b668d75f7f3894f4ff5c4982899afced7ca78633b08287c4
- languageName: node
- linkType: hard
-
-"fastq@npm:^1.13.0, fastq@npm:^1.6.0":
- version: 1.19.1
- resolution: "fastq@npm:1.19.1"
- dependencies:
- reusify: "npm:^1.0.4"
- checksum: 10c0/ebc6e50ac7048daaeb8e64522a1ea7a26e92b3cee5cd1c7f2316cdca81ba543aa40a136b53891446ea5c3a67ec215fbaca87ad405f102dd97012f62916905630
- languageName: node
- linkType: hard
-
-"fd-package-json@npm:^2.0.0":
- version: 2.0.0
- resolution: "fd-package-json@npm:2.0.0"
- dependencies:
- walk-up-path: "npm:^4.0.0"
- checksum: 10c0/a0a48745257bc09c939486608dad9f2ced238f0c64266222cc881618ed4c8f6aa0ccfe45a1e6d4f9ce828509e8d617cec60e2a114851bebb1ff4886dc5ed5112
- languageName: node
- linkType: hard
-
-"fdir@npm:^6.5.0":
- version: 6.5.0
- resolution: "fdir@npm:6.5.0"
- peerDependencies:
- picomatch: ^3 || ^4
- peerDependenciesMeta:
- picomatch:
- optional: true
- checksum: 10c0/e345083c4306b3aed6cb8ec551e26c36bab5c511e99ea4576a16750ddc8d3240e63826cc624f5ae17ad4dc82e68a253213b60d556c11bfad064b7607847ed07f
- languageName: node
- linkType: hard
-
-"fetch-mock@npm:11.1.5":
- version: 11.1.5
- resolution: "fetch-mock@npm:11.1.5"
- dependencies:
- "@types/glob-to-regexp": "npm:^0.4.4"
- dequal: "npm:^2.0.3"
- glob-to-regexp: "npm:^0.4.1"
- is-subset: "npm:^0.1.1"
- regexparam: "npm:^3.0.0"
- peerDependenciesMeta:
- node-fetch:
- optional: true
- checksum: 10c0/f32f1d7879b654a3fab7c3576901193ddd4c63cb9aeae2ed66ff42062400c0937d4696b1a5171e739d5f62470e6554e190f14816789f5e3b2bf1ad90208222e6
- languageName: node
- linkType: hard
-
-"fflate@npm:^0.4.8":
- version: 0.4.8
- resolution: "fflate@npm:0.4.8"
- checksum: 10c0/29d1eddaaa5deab61b1c6b0d21282adacadbc4d2c01e94d8b1ee784398151673b9c563e53f97a801bc410a1ae55e8de5378114a743430e643e7a0644ba8e5a42
- languageName: node
- linkType: hard
-
-"file-entry-cache@npm:^6.0.1":
- version: 6.0.1
- resolution: "file-entry-cache@npm:6.0.1"
- dependencies:
- flat-cache: "npm:^3.0.4"
- checksum: 10c0/58473e8a82794d01b38e5e435f6feaf648e3f36fdb3a56e98f417f4efae71ad1c0d4ebd8a9a7c50c3ad085820a93fc7494ad721e0e4ebc1da3573f4e1c3c7cdd
- languageName: node
- linkType: hard
-
-"filelist@npm:^1.0.4":
- version: 1.0.4
- resolution: "filelist@npm:1.0.4"
- dependencies:
- minimatch: "npm:^5.0.1"
- checksum: 10c0/426b1de3944a3d153b053f1c0ebfd02dccd0308a4f9e832ad220707a6d1f1b3c9784d6cadf6b2f68f09a57565f63ebc7bcdc913ccf8012d834f472c46e596f41
- languageName: node
- linkType: hard
-
-"fill-range@npm:^7.1.1":
- version: 7.1.1
- resolution: "fill-range@npm:7.1.1"
- dependencies:
- to-regex-range: "npm:^5.0.1"
- checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018
- languageName: node
- linkType: hard
-
-"find-up@npm:^4.1.0":
- version: 4.1.0
- resolution: "find-up@npm:4.1.0"
- dependencies:
- locate-path: "npm:^5.0.0"
- path-exists: "npm:^4.0.0"
- checksum: 10c0/0406ee89ebeefa2d507feb07ec366bebd8a6167ae74aa4e34fb4c4abd06cf782a3ce26ae4194d70706f72182841733f00551c209fe575cb00bd92104056e78c1
- languageName: node
- linkType: hard
-
-"find-up@npm:^5.0.0":
- version: 5.0.0
- resolution: "find-up@npm:5.0.0"
- dependencies:
- locate-path: "npm:^6.0.0"
- path-exists: "npm:^4.0.0"
- checksum: 10c0/062c5a83a9c02f53cdd6d175a37ecf8f87ea5bbff1fdfb828f04bfa021441bc7583e8ebc0872a4c1baab96221fb8a8a275a19809fb93fbc40bd69ec35634069a
- languageName: node
- linkType: hard
-
-"flat-cache@npm:^3.0.4":
- version: 3.2.0
- resolution: "flat-cache@npm:3.2.0"
- dependencies:
- flatted: "npm:^3.2.9"
- keyv: "npm:^4.5.3"
- rimraf: "npm:^3.0.2"
- checksum: 10c0/b76f611bd5f5d68f7ae632e3ae503e678d205cf97a17c6ab5b12f6ca61188b5f1f7464503efae6dc18683ed8f0b41460beb48ac4b9ac63fe6201296a91ba2f75
- languageName: node
- linkType: hard
-
-"flatted@npm:^3.2.9":
- version: 3.3.1
- resolution: "flatted@npm:3.3.1"
- checksum: 10c0/324166b125ee07d4ca9bcf3a5f98d915d5db4f39d711fba640a3178b959919aae1f7cfd8aabcfef5826ed8aa8a2aa14cc85b2d7d18ff638ddf4ae3df39573eaf
- languageName: node
- linkType: hard
-
-"for-each@npm:^0.3.3":
- version: 0.3.3
- resolution: "for-each@npm:0.3.3"
- dependencies:
- is-callable: "npm:^1.1.3"
- checksum: 10c0/22330d8a2db728dbf003ec9182c2d421fbcd2969b02b4f97ec288721cda63eb28f2c08585ddccd0f77cb2930af8d958005c9e72f47141dc51816127a118f39aa
- languageName: node
- linkType: hard
-
-"for-each@npm:^0.3.5":
- version: 0.3.5
- resolution: "for-each@npm:0.3.5"
- dependencies:
- is-callable: "npm:^1.2.7"
- checksum: 10c0/0e0b50f6a843a282637d43674d1fb278dda1dd85f4f99b640024cfb10b85058aac0cc781bf689d5fe50b4b7f638e91e548560723a4e76e04fe96ae35ef039cee
- languageName: node
- linkType: hard
-
-"foreground-child@npm:^3.1.0":
- version: 3.3.1
- resolution: "foreground-child@npm:3.3.1"
- dependencies:
- cross-spawn: "npm:^7.0.6"
- signal-exit: "npm:^4.0.1"
- checksum: 10c0/8986e4af2430896e65bc2788d6679067294d6aee9545daefc84923a0a4b399ad9c7a3ea7bd8c0b2b80fdf4a92de4c69df3f628233ff3224260e9c1541a9e9ed3
- languageName: node
- linkType: hard
-
-"formatly@npm:^0.3.0":
- version: 0.3.0
- resolution: "formatly@npm:0.3.0"
- dependencies:
- fd-package-json: "npm:^2.0.0"
- bin:
- formatly: bin/index.mjs
- checksum: 10c0/ef9dbd3cdaee649e9604ea060d8d62d8131eb81117634336592ee2193fc7c98a3f1f1b5d09a045dbd36287ba88edf868ef179d39fbda2f34fbe2be70c42dd014
- languageName: node
- linkType: hard
-
-"fraction.js@npm:^5.3.4":
- version: 5.3.4
- resolution: "fraction.js@npm:5.3.4"
- checksum: 10c0/f90079fe9bfc665e0a07079938e8ff71115bce9462f17b32fc283f163b0540ec34dc33df8ed41bb56f028316b04361b9a9995b9ee9258617f8338e0b05c5f95a
- languageName: node
- linkType: hard
-
-"fs-extra@npm:^10.0.1":
- version: 10.1.0
- resolution: "fs-extra@npm:10.1.0"
- dependencies:
- graceful-fs: "npm:^4.2.0"
- jsonfile: "npm:^6.0.1"
- universalify: "npm:^2.0.0"
- checksum: 10c0/5f579466e7109719d162a9249abbeffe7f426eb133ea486e020b89bc6d67a741134076bf439983f2eb79276ceaf6bd7b7c1e43c3fd67fe889863e69072fb0a5e
- languageName: node
- linkType: hard
-
-"fs-extra@npm:^11.2.0":
- version: 11.3.0
- resolution: "fs-extra@npm:11.3.0"
- dependencies:
- graceful-fs: "npm:^4.2.0"
- jsonfile: "npm:^6.0.1"
- universalify: "npm:^2.0.0"
- checksum: 10c0/5f95e996186ff45463059feb115a22fb048bdaf7e487ecee8a8646c78ed8fdca63630e3077d4c16ce677051f5e60d3355a06f3cd61f3ca43f48cc58822a44d0a
- languageName: node
- linkType: hard
-
-"fs-extra@npm:^8.0.1, fs-extra@npm:^8.1.0":
- version: 8.1.0
- resolution: "fs-extra@npm:8.1.0"
- dependencies:
- graceful-fs: "npm:^4.2.0"
- jsonfile: "npm:^4.0.0"
- universalify: "npm:^0.1.0"
- checksum: 10c0/259f7b814d9e50d686899550c4f9ded85c46c643f7fe19be69504888e007fcbc08f306fae8ec495b8b998635e997c9e3e175ff2eeed230524ef1c1684cc96423
- languageName: node
- linkType: hard
-
-"fs-merger@npm:^3.2.1":
- version: 3.2.1
- resolution: "fs-merger@npm:3.2.1"
- dependencies:
- broccoli-node-api: "npm:^1.7.0"
- broccoli-node-info: "npm:^2.1.0"
- fs-extra: "npm:^8.0.1"
- fs-tree-diff: "npm:^2.0.1"
- walk-sync: "npm:^2.2.0"
- checksum: 10c0/54a2a5ebf5cecaadff329752a9f67c1025f9f12afcdea97bf44b1625283ead2379bcefadab9d4ee96e15eb5870c97ac34e60eba2982c91e4bc508ed35a31d154
- languageName: node
- linkType: hard
-
-"fs-minipass@npm:^3.0.0":
- version: 3.0.3
- resolution: "fs-minipass@npm:3.0.3"
- dependencies:
- minipass: "npm:^7.0.3"
- checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94
- languageName: node
- linkType: hard
-
-"fs-mkdirp-stream@npm:^2.0.1":
- version: 2.0.1
- resolution: "fs-mkdirp-stream@npm:2.0.1"
- dependencies:
- graceful-fs: "npm:^4.2.8"
- streamx: "npm:^2.12.0"
- checksum: 10c0/57d25f59a15acd7a1c5d0c9fc0fee08f9e1224a3010e21eecedf1e6d42672b3e377d10ea41cf8fc86ceb2651601648156af615fd18216318435be48031001ec8
- languageName: node
- linkType: hard
-
-"fs-tree-diff@npm:^2.0.1":
- version: 2.0.1
- resolution: "fs-tree-diff@npm:2.0.1"
- dependencies:
- "@types/symlink-or-copy": "npm:^1.2.0"
- heimdalljs-logger: "npm:^0.1.7"
- object-assign: "npm:^4.1.0"
- path-posix: "npm:^1.0.0"
- symlink-or-copy: "npm:^1.1.8"
- checksum: 10c0/3e5dd4007a24b90a135a1f58be63b03e6c265f15ce2b9f987bf966d04bac3697931aa0329a575ebe5e57ddb44112644b581ce82ef1183fa1e914cee410e8e9ef
- languageName: node
- linkType: hard
-
-"fsevents@npm:2.3.2":
- version: 2.3.2
- resolution: "fsevents@npm:2.3.2"
- dependencies:
- node-gyp: "npm:latest"
- checksum: 10c0/be78a3efa3e181cda3cf7a4637cb527bcebb0bd0ea0440105a3bb45b86f9245b307dc10a2507e8f4498a7d4ec349d1910f4d73e4d4495b16103106e07eee735b
- conditions: os=darwin
- languageName: node
- linkType: hard
-
-"fsevents@npm:~2.3.2, fsevents@npm:~2.3.3":
- version: 2.3.3
- resolution: "fsevents@npm:2.3.3"
- dependencies:
- node-gyp: "npm:latest"
- checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60
- conditions: os=darwin
- languageName: node
- linkType: hard
-
-"fsevents@patch:fsevents@npm%3A2.3.2#optional!builtin":
- version: 2.3.2
- resolution: "fsevents@patch:fsevents@npm%3A2.3.2#optional!builtin::version=2.3.2&hash=df0bf1"
- dependencies:
- node-gyp: "npm:latest"
- conditions: os=darwin
- languageName: node
- linkType: hard
-
-"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin, fsevents@patch:fsevents@npm%3A~2.3.3#optional!builtin":
- version: 2.3.3
- resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1"
- dependencies:
- node-gyp: "npm:latest"
- conditions: os=darwin
- languageName: node
- linkType: hard
-
-"function-bind@npm:^1.1.2":
- version: 1.1.2
- resolution: "function-bind@npm:1.1.2"
- checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5
- languageName: node
- linkType: hard
-
-"function.prototype.name@npm:^1.1.6, function.prototype.name@npm:^1.1.8":
- version: 1.1.8
- resolution: "function.prototype.name@npm:1.1.8"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- define-properties: "npm:^1.2.1"
- functions-have-names: "npm:^1.2.3"
- hasown: "npm:^2.0.2"
- is-callable: "npm:^1.2.7"
- checksum: 10c0/e920a2ab52663005f3cbe7ee3373e3c71c1fb5558b0b0548648cdf3e51961085032458e26c71ff1a8c8c20e7ee7caeb03d43a5d1fa8610c459333323a2e71253
- languageName: node
- linkType: hard
-
-"functions-have-names@npm:^1.2.3":
- version: 1.2.3
- resolution: "functions-have-names@npm:1.2.3"
- checksum: 10c0/33e77fd29bddc2d9bb78ab3eb854c165909201f88c75faa8272e35899e2d35a8a642a15e7420ef945e1f64a9670d6aa3ec744106b2aa42be68ca5114025954ca
- languageName: node
- linkType: hard
-
-"generator-function@npm:^2.0.0":
- version: 2.0.1
- resolution: "generator-function@npm:2.0.1"
- checksum: 10c0/8a9f59df0f01cfefafdb3b451b80555e5cf6d76487095db91ac461a0e682e4ff7a9dbce15f4ecec191e53586d59eece01949e05a4b4492879600bbbe8e28d6b8
- languageName: node
- linkType: hard
-
-"gensync@npm:^1.0.0-beta.2":
- version: 1.0.0-beta.2
- resolution: "gensync@npm:1.0.0-beta.2"
- checksum: 10c0/782aba6cba65b1bb5af3b095d96249d20edbe8df32dbf4696fd49be2583faf676173bf4809386588828e4dd76a3354fcbeb577bab1c833ccd9fc4577f26103f8
- languageName: node
- linkType: hard
-
-"get-caller-file@npm:^2.0.1, get-caller-file@npm:^2.0.5":
- version: 2.0.5
- resolution: "get-caller-file@npm:2.0.5"
- checksum: 10c0/c6c7b60271931fa752aeb92f2b47e355eac1af3a2673f47c9589e8f8a41adc74d45551c1bc57b5e66a80609f10ffb72b6f575e4370d61cc3f7f3aaff01757cde
- languageName: node
- linkType: hard
-
-"get-intrinsic@npm:^1.2.4, get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.2.7":
- version: 1.2.7
- resolution: "get-intrinsic@npm:1.2.7"
- dependencies:
- call-bind-apply-helpers: "npm:^1.0.1"
- es-define-property: "npm:^1.0.1"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.0.0"
- function-bind: "npm:^1.1.2"
- get-proto: "npm:^1.0.0"
- gopd: "npm:^1.2.0"
- has-symbols: "npm:^1.1.0"
- hasown: "npm:^2.0.2"
- math-intrinsics: "npm:^1.1.0"
- checksum: 10c0/b475dec9f8bff6f7422f51ff4b7b8d0b68e6776ee83a753c1d627e3008c3442090992788038b37eff72e93e43dceed8c1acbdf2d6751672687ec22127933080d
- languageName: node
- linkType: hard
-
-"get-intrinsic@npm:^1.3.0":
- version: 1.3.0
- resolution: "get-intrinsic@npm:1.3.0"
- dependencies:
- call-bind-apply-helpers: "npm:^1.0.2"
- es-define-property: "npm:^1.0.1"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.1.1"
- function-bind: "npm:^1.1.2"
- get-proto: "npm:^1.0.1"
- gopd: "npm:^1.2.0"
- has-symbols: "npm:^1.1.0"
- hasown: "npm:^2.0.2"
- math-intrinsics: "npm:^1.1.0"
- checksum: 10c0/52c81808af9a8130f581e6a6a83e1ba4a9f703359e7a438d1369a5267a25412322f03dcbd7c549edaef0b6214a0630a28511d7df0130c93cfd380f4fa0b5b66a
- languageName: node
- linkType: hard
-
-"get-nonce@npm:^1.0.0":
- version: 1.0.1
- resolution: "get-nonce@npm:1.0.1"
- checksum: 10c0/2d7df55279060bf0568549e1ffc9b84bc32a32b7541675ca092dce56317cdd1a59a98dcc4072c9f6a980779440139a3221d7486f52c488e69dc0fd27b1efb162
- languageName: node
- linkType: hard
-
-"get-proto@npm:^1.0.0, get-proto@npm:^1.0.1":
- version: 1.0.1
- resolution: "get-proto@npm:1.0.1"
- dependencies:
- dunder-proto: "npm:^1.0.1"
- es-object-atoms: "npm:^1.0.0"
- checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c
- languageName: node
- linkType: hard
-
-"get-symbol-description@npm:^1.1.0":
- version: 1.1.0
- resolution: "get-symbol-description@npm:1.1.0"
- dependencies:
- call-bound: "npm:^1.0.3"
- es-errors: "npm:^1.3.0"
- get-intrinsic: "npm:^1.2.6"
- checksum: 10c0/d6a7d6afca375779a4b307738c9e80dbf7afc0bdbe5948768d54ab9653c865523d8920e670991a925936eb524b7cb6a6361d199a760b21d0ca7620194455aa4b
- languageName: node
- linkType: hard
-
-"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2":
- version: 5.1.2
- resolution: "glob-parent@npm:5.1.2"
- dependencies:
- is-glob: "npm:^4.0.1"
- checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee
- languageName: node
- linkType: hard
-
-"glob-parent@npm:^6.0.2":
- version: 6.0.2
- resolution: "glob-parent@npm:6.0.2"
- dependencies:
- is-glob: "npm:^4.0.3"
- checksum: 10c0/317034d88654730230b3f43bb7ad4f7c90257a426e872ea0bf157473ac61c99bf5d205fad8f0185f989be8d2fa6d3c7dce1645d99d545b6ea9089c39f838e7f8
- languageName: node
- linkType: hard
-
-"glob-stream@npm:^8.0.0":
- version: 8.0.2
- resolution: "glob-stream@npm:8.0.2"
- dependencies:
- "@gulpjs/to-absolute-glob": "npm:^4.0.0"
- anymatch: "npm:^3.1.3"
- fastq: "npm:^1.13.0"
- glob-parent: "npm:^6.0.2"
- is-glob: "npm:^4.0.3"
- is-negated-glob: "npm:^1.0.0"
- normalize-path: "npm:^3.0.0"
- streamx: "npm:^2.12.5"
- checksum: 10c0/ba93be61b85d2143d2b21f35caaf5cb8450c5b72fa377353afabb4922862368be2366c45a998662eaa0098957bf1cc599e546a975767a32758c259093f5b069e
- languageName: node
- linkType: hard
-
-"glob-to-regexp@npm:^0.4.1":
- version: 0.4.1
- resolution: "glob-to-regexp@npm:0.4.1"
- checksum: 10c0/0486925072d7a916f052842772b61c3e86247f0a80cc0deb9b5a3e8a1a9faad5b04fb6f58986a09f34d3e96cd2a22a24b7e9882fb1cf904c31e9a310de96c429
- languageName: node
- linkType: hard
-
-"glob@npm:^10.5.0":
- version: 10.5.0
- resolution: "glob@npm:10.5.0"
- dependencies:
- foreground-child: "npm:^3.1.0"
- jackspeak: "npm:^3.1.2"
- minimatch: "npm:^9.0.4"
- minipass: "npm:^7.1.2"
- package-json-from-dist: "npm:^1.0.0"
- path-scurry: "npm:^1.11.1"
- bin:
- glob: dist/esm/bin.mjs
- checksum: 10c0/100705eddbde6323e7b35e1d1ac28bcb58322095bd8e63a7d0bef1a2cdafe0d0f7922a981b2b48369a4f8c1b077be5c171804534c3509dfe950dde15fbe6d828
- languageName: node
- linkType: hard
-
-"global-jsdom@npm:^26.0.0":
- version: 26.0.0
- resolution: "global-jsdom@npm:26.0.0"
- peerDependencies:
- jsdom: ">=26 <27"
- checksum: 10c0/96b2069eb13e81d3cfe6049b4aabbf84839a171b695bec100cb770fb7196f957578e2068b10d9fd381a0db2a5ac22c37dd5c7a9cf29bd806e843e107b00fba36
- languageName: node
- linkType: hard
-
-"globals@npm:^11.1.0":
- version: 11.12.0
- resolution: "globals@npm:11.12.0"
- checksum: 10c0/758f9f258e7b19226bd8d4af5d3b0dcf7038780fb23d82e6f98932c44e239f884847f1766e8fa9cc5635ccb3204f7fa7314d4408dd4002a5e8ea827b4018f0a1
- languageName: node
- linkType: hard
-
-"globals@npm:^13.19.0":
- version: 13.24.0
- resolution: "globals@npm:13.24.0"
- dependencies:
- type-fest: "npm:^0.20.2"
- checksum: 10c0/d3c11aeea898eb83d5ec7a99508600fbe8f83d2cf00cbb77f873dbf2bcb39428eff1b538e4915c993d8a3b3473fa71eeebfe22c9bb3a3003d1e26b1f2c8a42cd
- languageName: node
- linkType: hard
-
-"globals@npm:^15.9.0":
- version: 15.12.0
- resolution: "globals@npm:15.12.0"
- checksum: 10c0/f34e0a1845b694f45188331742af9f488b07ba7440a06e9d2039fce0386fbbfc24afdbb9846ebdccd4092d03644e43081c49eb27b30f4b88e43af156e1c1dc34
- languageName: node
- linkType: hard
-
-"globalthis@npm:^1.0.4":
- version: 1.0.4
- resolution: "globalthis@npm:1.0.4"
- dependencies:
- define-properties: "npm:^1.2.1"
- gopd: "npm:^1.0.1"
- checksum: 10c0/9d156f313af79d80b1566b93e19285f481c591ad6d0d319b4be5e03750d004dde40a39a0f26f7e635f9007a3600802f53ecd85a759b86f109e80a5f705e01846
- languageName: node
- linkType: hard
-
-"globby@npm:^11.1.0":
- version: 11.1.0
- resolution: "globby@npm:11.1.0"
- dependencies:
- array-union: "npm:^2.1.0"
- dir-glob: "npm:^3.0.1"
- fast-glob: "npm:^3.2.9"
- ignore: "npm:^5.2.0"
- merge2: "npm:^1.4.1"
- slash: "npm:^3.0.0"
- checksum: 10c0/b39511b4afe4bd8a7aead3a27c4ade2b9968649abab0a6c28b1a90141b96ca68ca5db1302f7c7bd29eab66bf51e13916b8e0a3d0ac08f75e1e84a39b35691189
- languageName: node
- linkType: hard
-
-"gopd@npm:^1.0.1, gopd@npm:^1.2.0":
- version: 1.2.0
- resolution: "gopd@npm:1.2.0"
- checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead
- languageName: node
- linkType: hard
-
-"graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0, graceful-fs@npm:^4.2.10, graceful-fs@npm:^4.2.11, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.8":
- version: 4.2.11
- resolution: "graceful-fs@npm:4.2.11"
- checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2
- languageName: node
- linkType: hard
-
-"graphemer@npm:^1.4.0":
- version: 1.4.0
- resolution: "graphemer@npm:1.4.0"
- checksum: 10c0/e951259d8cd2e0d196c72ec711add7115d42eb9a8146c8eeda5b8d3ac91e5dd816b9cd68920726d9fd4490368e7ed86e9c423f40db87e2d8dfafa00fa17c3a31
- languageName: node
- linkType: hard
-
-"gulp-sort@npm:^2.0.0":
- version: 2.0.0
- resolution: "gulp-sort@npm:2.0.0"
- dependencies:
- through2: "npm:^2.0.1"
- checksum: 10c0/86aeb1d4222c0bec79a1cb4579a56ad18e507f708d13bba58e8497bd2341ffc9e0deed4d2f0ddc132b4d0a23f0e78e5673477ded6ea7e85c4974ef0447606e58
- languageName: node
- linkType: hard
-
-"has-bigints@npm:^1.0.2":
- version: 1.1.0
- resolution: "has-bigints@npm:1.1.0"
- checksum: 10c0/2de0cdc4a1ccf7a1e75ffede1876994525ac03cc6f5ae7392d3415dd475cd9eee5bceec63669ab61aa997ff6cceebb50ef75561c7002bed8988de2b9d1b40788
- languageName: node
- linkType: hard
-
-"has-flag@npm:^3.0.0":
- version: 3.0.0
- resolution: "has-flag@npm:3.0.0"
- checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473
- languageName: node
- linkType: hard
-
-"has-flag@npm:^4.0.0":
- version: 4.0.0
- resolution: "has-flag@npm:4.0.0"
- checksum: 10c0/2e789c61b7888d66993e14e8331449e525ef42aac53c627cc53d1c3334e768bcb6abdc4f5f0de1478a25beec6f0bd62c7549058b7ac53e924040d4f301f02fd1
- languageName: node
- linkType: hard
-
-"has-property-descriptors@npm:^1.0.0, has-property-descriptors@npm:^1.0.2":
- version: 1.0.2
- resolution: "has-property-descriptors@npm:1.0.2"
- dependencies:
- es-define-property: "npm:^1.0.0"
- checksum: 10c0/253c1f59e80bb476cf0dde8ff5284505d90c3bdb762983c3514d36414290475fe3fd6f574929d84de2a8eec00d35cf07cb6776205ff32efd7c50719125f00236
- languageName: node
- linkType: hard
-
-"has-proto@npm:^1.2.0":
- version: 1.2.0
- resolution: "has-proto@npm:1.2.0"
- dependencies:
- dunder-proto: "npm:^1.0.0"
- checksum: 10c0/46538dddab297ec2f43923c3d35237df45d8c55a6fc1067031e04c13ed8a9a8f94954460632fd4da84c31a1721eefee16d901cbb1ae9602bab93bb6e08f93b95
- languageName: node
- linkType: hard
-
-"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0":
- version: 1.1.0
- resolution: "has-symbols@npm:1.1.0"
- checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e
- languageName: node
- linkType: hard
-
-"has-tostringtag@npm:^1.0.2":
- version: 1.0.2
- resolution: "has-tostringtag@npm:1.0.2"
- dependencies:
- has-symbols: "npm:^1.0.3"
- checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c
- languageName: node
- linkType: hard
-
-"hash-base@npm:^3.0.0, hash-base@npm:^3.1.2":
- version: 3.1.2
- resolution: "hash-base@npm:3.1.2"
- dependencies:
- inherits: "npm:^2.0.4"
- readable-stream: "npm:^2.3.8"
- safe-buffer: "npm:^5.2.1"
- to-buffer: "npm:^1.2.1"
- checksum: 10c0/f3b7fae1853b31340048dd659f40f5260ca6f3ff53b932f807f4ab701ee09039f6e9dbe1841723ff61e20f3f69d6387a352e4ccc5f997dedb0d375c7d88bc15e
- languageName: node
- linkType: hard
-
-"hash-base@npm:~3.0.4":
- version: 3.0.5
- resolution: "hash-base@npm:3.0.5"
- dependencies:
- inherits: "npm:^2.0.4"
- safe-buffer: "npm:^5.2.1"
- checksum: 10c0/6dc185b79bad9b6d525cd132a588e4215380fdc36fec6f7a8a58c5db8e3b642557d02ad9c367f5e476c7c3ad3ccffa3607f308b124e1ed80e3b80a1b254db61e
- languageName: node
- linkType: hard
-
-"hash.js@npm:^1.0.0, hash.js@npm:^1.0.3":
- version: 1.1.7
- resolution: "hash.js@npm:1.1.7"
- dependencies:
- inherits: "npm:^2.0.3"
- minimalistic-assert: "npm:^1.0.1"
- checksum: 10c0/41ada59494eac5332cfc1ce6b7ebdd7b88a3864a6d6b08a3ea8ef261332ed60f37f10877e0c825aaa4bddebf164fbffa618286aeeec5296675e2671cbfa746c4
- languageName: node
- linkType: hard
-
-"hasown@npm:^2.0.0, hasown@npm:^2.0.2":
- version: 2.0.2
- resolution: "hasown@npm:2.0.2"
- dependencies:
- function-bind: "npm:^1.1.2"
- checksum: 10c0/3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9
- languageName: node
- linkType: hard
-
-"he@npm:1.2.0, he@npm:^1.2.0":
- version: 1.2.0
- resolution: "he@npm:1.2.0"
- bin:
- he: bin/he
- checksum: 10c0/a27d478befe3c8192f006cdd0639a66798979dfa6e2125c6ac582a19a5ebfec62ad83e8382e6036170d873f46e4536a7e795bf8b95bf7c247f4cc0825ccc8c17
- languageName: node
- linkType: hard
-
-"heimdalljs-logger@npm:^0.1.10, heimdalljs-logger@npm:^0.1.7":
- version: 0.1.10
- resolution: "heimdalljs-logger@npm:0.1.10"
- dependencies:
- debug: "npm:^2.2.0"
- heimdalljs: "npm:^0.2.6"
- checksum: 10c0/f67da38fde8a399f826f1327c735133eea752e1626c9668694624c321eb715d97b39b244bf420a6dca595f78609f1bd604b33d6d39446a8c985dd02131a22645
- languageName: node
- linkType: hard
-
-"heimdalljs@npm:^0.2.6":
- version: 0.2.6
- resolution: "heimdalljs@npm:0.2.6"
- dependencies:
- rsvp: "npm:~3.2.1"
- checksum: 10c0/20c9d9cce7983683a6423720387af0701de8c50660734899bf68a2d862535414e463ac69fd6423875ab3ace8f83ae4b490f18e047c5b3db8e5ab64da1b7aedc3
- languageName: node
- linkType: hard
-
-"hmac-drbg@npm:^1.0.1":
- version: 1.0.1
- resolution: "hmac-drbg@npm:1.0.1"
- dependencies:
- hash.js: "npm:^1.0.3"
- minimalistic-assert: "npm:^1.0.0"
- minimalistic-crypto-utils: "npm:^1.0.1"
- checksum: 10c0/f3d9ba31b40257a573f162176ac5930109816036c59a09f901eb2ffd7e5e705c6832bedfff507957125f2086a0ab8f853c0df225642a88bf1fcaea945f20600d
- languageName: node
- linkType: hard
-
-"hoist-non-react-statics@npm:^3.3.2":
- version: 3.3.2
- resolution: "hoist-non-react-statics@npm:3.3.2"
- dependencies:
- react-is: "npm:^16.7.0"
- checksum: 10c0/fe0889169e845d738b59b64badf5e55fa3cf20454f9203d1eb088df322d49d4318df774828e789898dcb280e8a5521bb59b3203385662ca5e9218a6ca5820e74
- languageName: node
- linkType: hard
-
-"hosted-git-info@npm:^2.1.4":
- version: 2.8.9
- resolution: "hosted-git-info@npm:2.8.9"
- checksum: 10c0/317cbc6b1bbbe23c2a40ae23f3dafe9fa349ce42a89a36f930e3f9c0530c179a3882d2ef1e4141a4c3674d6faaea862138ec55b43ad6f75e387fda2483a13c70
- languageName: node
- linkType: hard
-
-"html-encoding-sniffer@npm:^4.0.0":
- version: 4.0.0
- resolution: "html-encoding-sniffer@npm:4.0.0"
- dependencies:
- whatwg-encoding: "npm:^3.1.1"
- checksum: 10c0/523398055dc61ac9b34718a719cb4aa691e4166f29187e211e1607de63dc25ac7af52ca7c9aead0c4b3c0415ffecb17326396e1202e2e86ff4bca4c0ee4c6140
- languageName: node
- linkType: hard
-
-"html-entities@npm:^2.6.0":
- version: 2.6.0
- resolution: "html-entities@npm:2.6.0"
- checksum: 10c0/7c8b15d9ea0cd00dc9279f61bab002ba6ca8a7a0f3c36ed2db3530a67a9621c017830d1d2c1c65beb9b8e3436ea663e9cf8b230472e0e413359399413b27c8b7
- languageName: node
- linkType: hard
-
-"html-escaper@npm:^2.0.0":
- version: 2.0.2
- resolution: "html-escaper@npm:2.0.2"
- checksum: 10c0/208e8a12de1a6569edbb14544f4567e6ce8ecc30b9394fcaa4e7bb1e60c12a7c9a1ed27e31290817157e8626f3a4f29e76c8747030822eb84a6abb15c255f0a0
- languageName: node
- linkType: hard
-
-"html-minifier-terser@npm:^6.1.0":
- version: 6.1.0
- resolution: "html-minifier-terser@npm:6.1.0"
- dependencies:
- camel-case: "npm:^4.1.2"
- clean-css: "npm:^5.2.2"
- commander: "npm:^8.3.0"
- he: "npm:^1.2.0"
- param-case: "npm:^3.0.4"
- relateurl: "npm:^0.2.7"
- terser: "npm:^5.10.0"
- bin:
- html-minifier-terser: cli.js
- checksum: 10c0/1aa4e4f01cf7149e3ac5ea84fb7a1adab86da40d38d77a6fff42852b5ee3daccb78b615df97264e3a6a5c33e57f0c77f471d607ca1e1debd1dab9b58286f4b5a
- languageName: node
- linkType: hard
-
-"html-parse-stringify@npm:^3.0.1":
- version: 3.0.1
- resolution: "html-parse-stringify@npm:3.0.1"
- dependencies:
- void-elements: "npm:3.1.0"
- checksum: 10c0/159292753d48b84d216d61121054ae5a33466b3db5b446e2ffc093ac077a411a99ce6cbe0d18e55b87cf25fa3c5a86c4d8b130b9719ec9b66623259000c72c15
- languageName: node
- linkType: hard
-
-"htmlparser2@npm:^9.1.0":
- version: 9.1.0
- resolution: "htmlparser2@npm:9.1.0"
- dependencies:
- domelementtype: "npm:^2.3.0"
- domhandler: "npm:^5.0.3"
- domutils: "npm:^3.1.0"
- entities: "npm:^4.5.0"
- checksum: 10c0/394f6323efc265bbc791d8c0d96bfe95984e0407565248521ab92e2dc7668e5ceeca7bc6ed18d408b9ee3b25032c5743368a4280d280332d782821d5d467ad8f
- languageName: node
- linkType: hard
-
-"http-cache-semantics@npm:^4.1.1":
- version: 4.1.1
- resolution: "http-cache-semantics@npm:4.1.1"
- checksum: 10c0/ce1319b8a382eb3cbb4a37c19f6bfe14e5bb5be3d09079e885e8c513ab2d3cd9214902f8a31c9dc4e37022633ceabfc2d697405deeaf1b8f3552bb4ed996fdfc
- languageName: node
- linkType: hard
-
-"http-proxy-agent@npm:^7.0.0, http-proxy-agent@npm:^7.0.2":
- version: 7.0.2
- resolution: "http-proxy-agent@npm:7.0.2"
- dependencies:
- agent-base: "npm:^7.1.0"
- debug: "npm:^4.3.4"
- checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921
- languageName: node
- linkType: hard
-
-"https-browserify@npm:^1.0.0":
- version: 1.0.0
- resolution: "https-browserify@npm:1.0.0"
- checksum: 10c0/e17b6943bc24ea9b9a7da5714645d808670af75a425f29baffc3284962626efdc1eb3aa9bbffaa6e64028a6ad98af5b09fabcb454a8f918fb686abfdc9e9b8ae
- languageName: node
- linkType: hard
-
-"https-proxy-agent@npm:^5.0.0":
- version: 5.0.1
- resolution: "https-proxy-agent@npm:5.0.1"
- dependencies:
- agent-base: "npm:6"
- debug: "npm:4"
- checksum: 10c0/6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1
- languageName: node
- linkType: hard
-
-"https-proxy-agent@npm:^7.0.1, https-proxy-agent@npm:^7.0.6":
- version: 7.0.6
- resolution: "https-proxy-agent@npm:7.0.6"
- dependencies:
- agent-base: "npm:^7.1.2"
- debug: "npm:4"
- checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac
- languageName: node
- linkType: hard
-
-"i18next-browser-languagedetector@npm:^8.0.0":
- version: 8.2.1
- resolution: "i18next-browser-languagedetector@npm:8.2.1"
- dependencies:
- "@babel/runtime": "npm:^7.23.2"
- checksum: 10c0/d200847a79b4cb2764ef59b33e5399085d4d56b2b038e884bb54fffe17953b467899142a6ef6e985592234f10049d14d06b80f2c56441ae80648c5a6717704f3
- languageName: node
- linkType: hard
-
-"i18next-parser@npm:^9.1.0":
- version: 9.3.0
- resolution: "i18next-parser@npm:9.3.0"
- dependencies:
- "@babel/runtime": "npm:^7.25.0"
- broccoli-plugin: "npm:^4.0.7"
- cheerio: "npm:^1.0.0"
- colors: "npm:^1.4.0"
- commander: "npm:^12.1.0"
- eol: "npm:^0.9.1"
- esbuild: "npm:^0.25.0"
- fs-extra: "npm:^11.2.0"
- gulp-sort: "npm:^2.0.0"
- i18next: "npm:^23.5.1 || ^24.2.0"
- js-yaml: "npm:^4.1.0"
- lilconfig: "npm:^3.1.3"
- rsvp: "npm:^4.8.5"
- sort-keys: "npm:^5.0.0"
- typescript: "npm:^5.0.4"
- vinyl: "npm:^3.0.0"
- vinyl-fs: "npm:^4.0.0"
- bin:
- i18next: bin/cli.js
- checksum: 10c0/dd9de4d6812da662eaefafcaf6dae9c88d7e98c9907f784257056408bb22ac5ae23659bbfdf975452bfc35595914e280de0ef7c9f313cbd1e4cdb12dd0dadc1e
- languageName: node
- linkType: hard
-
-"i18next@npm:^23.5.1 || ^24.2.0":
- version: 24.2.3
- resolution: "i18next@npm:24.2.3"
- dependencies:
- "@babel/runtime": "npm:^7.26.10"
- peerDependencies:
- typescript: ^5
- peerDependenciesMeta:
- typescript:
- optional: true
- checksum: 10c0/7ac11a67d618ec714beef303aa497c1249bf5f1977dd3ebe9ca2673dfa6cadbba9e2d39ec1337688903ae3866ce9c1bc22cd6b265e66cce54c5db3a9bbedd390
- languageName: node
- linkType: hard
-
-"i18next@npm:^25.0.0":
- version: 25.8.13
- resolution: "i18next@npm:25.8.13"
- dependencies:
- "@babel/runtime": "npm:^7.28.4"
- peerDependencies:
- typescript: ^5
- peerDependenciesMeta:
- typescript:
- optional: true
- checksum: 10c0/12c661c2b58fe70445f8491b72f937eef28a5f9413f76bd178bbca92d4378d8436003c3bea1d5d760b8a69f809cbcef2ce389beffd9bc0434651134c6b37fecc
- languageName: node
- linkType: hard
-
-"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2, iconv-lite@npm:^0.6.3":
- version: 0.6.3
- resolution: "iconv-lite@npm:0.6.3"
- dependencies:
- safer-buffer: "npm:>= 2.1.2 < 3.0.0"
- checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1
- languageName: node
- linkType: hard
-
-"ieee754@npm:^1.1.13, ieee754@npm:^1.2.1":
- version: 1.2.1
- resolution: "ieee754@npm:1.2.1"
- checksum: 10c0/b0782ef5e0935b9f12883a2e2aa37baa75da6e66ce6515c168697b42160807d9330de9a32ec1ed73149aea02e0d822e572bca6f1e22bdcbd2149e13b050b17bb
- languageName: node
- linkType: hard
-
-"ignore@npm:^5.2.0":
- version: 5.3.2
- resolution: "ignore@npm:5.3.2"
- checksum: 10c0/f9f652c957983634ded1e7f02da3b559a0d4cc210fca3792cb67f1b153623c9c42efdc1c4121af171e295444459fc4a9201101fb041b1104a3c000bccb188337
- languageName: node
- linkType: hard
-
-"ignore@npm:^7.0.5":
- version: 7.0.5
- resolution: "ignore@npm:7.0.5"
- checksum: 10c0/ae00db89fe873064a093b8999fe4cc284b13ef2a178636211842cceb650b9c3e390d3339191acb145d81ed5379d2074840cf0c33a20bdbd6f32821f79eb4ad5d
- languageName: node
- linkType: hard
-
-"immutable@npm:^5.0.2":
- version: 5.1.5
- resolution: "immutable@npm:5.1.5"
- checksum: 10c0/8017ece1578e3c5939ba3305176aee059def1b8a90c7fa2a347ef583ebbd38cbe77ce1bbd786a5fab57e2da00bbcb0493b92e4332cdc4e1fe5cfb09a4688df31
- languageName: node
- linkType: hard
-
-"import-fresh@npm:^3.2.1":
- version: 3.3.1
- resolution: "import-fresh@npm:3.3.1"
- dependencies:
- parent-module: "npm:^1.0.0"
- resolve-from: "npm:^4.0.0"
- checksum: 10c0/bf8cc494872fef783249709385ae883b447e3eb09db0ebd15dcead7d9afe7224dad7bd7591c6b73b0b19b3c0f9640eb8ee884f01cfaf2887ab995b0b36a0cbec
- languageName: node
- linkType: hard
-
-"import-fresh@npm:^3.3.0":
- version: 3.3.0
- resolution: "import-fresh@npm:3.3.0"
- dependencies:
- parent-module: "npm:^1.0.0"
- resolve-from: "npm:^4.0.0"
- checksum: 10c0/7f882953aa6b740d1f0e384d0547158bc86efbf2eea0f1483b8900a6f65c5a5123c2cf09b0d542cc419d0b98a759ecaeb394237e97ea427f2da221dc3cd80cc3
- languageName: node
- linkType: hard
-
-"imurmurhash@npm:^0.1.4":
- version: 0.1.4
- resolution: "imurmurhash@npm:0.1.4"
- checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6
- languageName: node
- linkType: hard
-
-"indent-string@npm:^4.0.0":
- version: 4.0.0
- resolution: "indent-string@npm:4.0.0"
- checksum: 10c0/1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f
- languageName: node
- linkType: hard
-
-"inherits@npm:^2.0.1, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3, inherits@npm:~2.0.4":
- version: 2.0.4
- resolution: "inherits@npm:2.0.4"
- checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2
- languageName: node
- linkType: hard
-
-"internal-slot@npm:^1.1.0":
- version: 1.1.0
- resolution: "internal-slot@npm:1.1.0"
- dependencies:
- es-errors: "npm:^1.3.0"
- hasown: "npm:^2.0.2"
- side-channel: "npm:^1.1.0"
- checksum: 10c0/03966f5e259b009a9bf1a78d60da920df198af4318ec004f57b8aef1dd3fe377fbc8cce63a96e8c810010302654de89f9e19de1cd8ad0061d15be28a695465c7
- languageName: node
- linkType: hard
-
-"ip-address@npm:^9.0.5":
- version: 9.0.5
- resolution: "ip-address@npm:9.0.5"
- dependencies:
- jsbn: "npm:1.1.0"
- sprintf-js: "npm:^1.1.3"
- checksum: 10c0/331cd07fafcb3b24100613e4b53e1a2b4feab11e671e655d46dc09ee233da5011284d09ca40c4ecbdfe1d0004f462958675c224a804259f2f78d2465a87824bc
- languageName: node
- linkType: hard
-
-"is-arguments@npm:^1.0.4":
- version: 1.2.0
- resolution: "is-arguments@npm:1.2.0"
- dependencies:
- call-bound: "npm:^1.0.2"
- has-tostringtag: "npm:^1.0.2"
- checksum: 10c0/6377344b31e9fcb707c6751ee89b11f132f32338e6a782ec2eac9393b0cbd32235dad93052998cda778ee058754860738341d8114910d50ada5615912bb929fc
- languageName: node
- linkType: hard
-
-"is-array-buffer@npm:^3.0.4, is-array-buffer@npm:^3.0.5":
- version: 3.0.5
- resolution: "is-array-buffer@npm:3.0.5"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- get-intrinsic: "npm:^1.2.6"
- checksum: 10c0/c5c9f25606e86dbb12e756694afbbff64bc8b348d1bc989324c037e1068695131930199d6ad381952715dad3a9569333817f0b1a72ce5af7f883ce802e49c83d
- languageName: node
- linkType: hard
-
-"is-arrayish@npm:^0.2.1":
- version: 0.2.1
- resolution: "is-arrayish@npm:0.2.1"
- checksum: 10c0/e7fb686a739068bb70f860b39b67afc62acc62e36bb61c5f965768abce1873b379c563e61dd2adad96ebb7edf6651111b385e490cf508378959b0ed4cac4e729
- languageName: node
- linkType: hard
-
-"is-async-function@npm:^2.0.0":
- version: 2.1.0
- resolution: "is-async-function@npm:2.1.0"
- dependencies:
- call-bound: "npm:^1.0.3"
- get-proto: "npm:^1.0.1"
- has-tostringtag: "npm:^1.0.2"
- safe-regex-test: "npm:^1.1.0"
- checksum: 10c0/5209b858c6d18d88a9fb56dea202a050d53d4b722448cc439fdca859b36e23edf27ee8c18958ba49330f1a71b8846576273f4581e1c0bb9d403738129d852fdb
- languageName: node
- linkType: hard
-
-"is-bigint@npm:^1.1.0":
- version: 1.1.0
- resolution: "is-bigint@npm:1.1.0"
- dependencies:
- has-bigints: "npm:^1.0.2"
- checksum: 10c0/f4f4b905ceb195be90a6ea7f34323bf1c18e3793f18922e3e9a73c684c29eeeeff5175605c3a3a74cc38185fe27758f07efba3dbae812e5c5afbc0d2316b40e4
- languageName: node
- linkType: hard
-
-"is-binary-path@npm:~2.1.0":
- version: 2.1.0
- resolution: "is-binary-path@npm:2.1.0"
- dependencies:
- binary-extensions: "npm:^2.0.0"
- checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38
- languageName: node
- linkType: hard
-
-"is-boolean-object@npm:^1.2.1":
- version: 1.2.1
- resolution: "is-boolean-object@npm:1.2.1"
- dependencies:
- call-bound: "npm:^1.0.2"
- has-tostringtag: "npm:^1.0.2"
- checksum: 10c0/2ef601d255a39fdbde79cfe6be80c27b47430ed6712407f29b17d002e20f64c1e3d6692f1d842ba16bf1e9d8ddf1c4f13cac3ed7d9a4a21290f44879ebb4e8f5
- languageName: node
- linkType: hard
-
-"is-builtin-module@npm:^3.2.1":
- version: 3.2.1
- resolution: "is-builtin-module@npm:3.2.1"
- dependencies:
- builtin-modules: "npm:^3.3.0"
- checksum: 10c0/5a66937a03f3b18803381518f0ef679752ac18cdb7dd53b5e23ee8df8d440558737bd8dcc04d2aae555909d2ecb4a81b5c0d334d119402584b61e6a003e31af1
- languageName: node
- linkType: hard
-
-"is-callable@npm:^1.1.3, is-callable@npm:^1.2.7":
- version: 1.2.7
- resolution: "is-callable@npm:1.2.7"
- checksum: 10c0/ceebaeb9d92e8adee604076971dd6000d38d6afc40bb843ea8e45c5579b57671c3f3b50d7f04869618242c6cee08d1b67806a8cb8edaaaf7c0748b3720d6066f
- languageName: node
- linkType: hard
-
-"is-core-module@npm:^2.13.0, is-core-module@npm:^2.16.1":
- version: 2.16.1
- resolution: "is-core-module@npm:2.16.1"
- dependencies:
- hasown: "npm:^2.0.2"
- checksum: 10c0/898443c14780a577e807618aaae2b6f745c8538eca5c7bc11388a3f2dc6de82b9902bcc7eb74f07be672b11bbe82dd6a6edded44a00cb3d8f933d0459905eedd
- languageName: node
- linkType: hard
-
-"is-data-view@npm:^1.0.1, is-data-view@npm:^1.0.2":
- version: 1.0.2
- resolution: "is-data-view@npm:1.0.2"
- dependencies:
- call-bound: "npm:^1.0.2"
- get-intrinsic: "npm:^1.2.6"
- is-typed-array: "npm:^1.1.13"
- checksum: 10c0/ef3548a99d7e7f1370ce21006baca6d40c73e9f15c941f89f0049c79714c873d03b02dae1c64b3f861f55163ecc16da06506c5b8a1d4f16650b3d9351c380153
- languageName: node
- linkType: hard
-
-"is-date-object@npm:^1.0.5, is-date-object@npm:^1.1.0":
- version: 1.1.0
- resolution: "is-date-object@npm:1.1.0"
- dependencies:
- call-bound: "npm:^1.0.2"
- has-tostringtag: "npm:^1.0.2"
- checksum: 10c0/1a4d199c8e9e9cac5128d32e6626fa7805175af9df015620ac0d5d45854ccf348ba494679d872d37301032e35a54fc7978fba1687e8721b2139aea7870cafa2f
- languageName: node
- linkType: hard
-
-"is-extglob@npm:^2.1.1":
- version: 2.1.1
- resolution: "is-extglob@npm:2.1.1"
- checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912
- languageName: node
- linkType: hard
-
-"is-finalizationregistry@npm:^1.1.0":
- version: 1.1.1
- resolution: "is-finalizationregistry@npm:1.1.1"
- dependencies:
- call-bound: "npm:^1.0.3"
- checksum: 10c0/818dff679b64f19e228a8205a1e2d09989a98e98def3a817f889208cfcbf918d321b251aadf2c05918194803ebd2eb01b14fc9d0b2bea53d984f4137bfca5e97
- languageName: node
- linkType: hard
-
-"is-fullwidth-code-point@npm:^3.0.0":
- version: 3.0.0
- resolution: "is-fullwidth-code-point@npm:3.0.0"
- checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc
- languageName: node
- linkType: hard
-
-"is-generator-function@npm:^1.0.10":
- version: 1.1.0
- resolution: "is-generator-function@npm:1.1.0"
- dependencies:
- call-bound: "npm:^1.0.3"
- get-proto: "npm:^1.0.0"
- has-tostringtag: "npm:^1.0.2"
- safe-regex-test: "npm:^1.1.0"
- checksum: 10c0/fdfa96c8087bf36fc4cd514b474ba2ff404219a4dd4cfa6cf5426404a1eed259bdcdb98f082a71029a48d01f27733e3436ecc6690129a7ec09cb0434bee03a2a
- languageName: node
- linkType: hard
-
-"is-generator-function@npm:^1.0.7":
- version: 1.1.2
- resolution: "is-generator-function@npm:1.1.2"
- dependencies:
- call-bound: "npm:^1.0.4"
- generator-function: "npm:^2.0.0"
- get-proto: "npm:^1.0.1"
- has-tostringtag: "npm:^1.0.2"
- safe-regex-test: "npm:^1.1.0"
- checksum: 10c0/83da102e89c3e3b71d67b51d47c9f9bc862bceb58f87201727e27f7fa19d1d90b0ab223644ecaee6fc6e3d2d622bb25c966fbdaf87c59158b01ce7c0fe2fa372
- languageName: node
- linkType: hard
-
-"is-glob@npm:^4.0.0, is-glob@npm:^4.0.1, is-glob@npm:^4.0.3, is-glob@npm:~4.0.1":
- version: 4.0.3
- resolution: "is-glob@npm:4.0.3"
- dependencies:
- is-extglob: "npm:^2.1.1"
- checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a
- languageName: node
- linkType: hard
-
-"is-map@npm:^2.0.3":
- version: 2.0.3
- resolution: "is-map@npm:2.0.3"
- checksum: 10c0/2c4d431b74e00fdda7162cd8e4b763d6f6f217edf97d4f8538b94b8702b150610e2c64961340015fe8df5b1fcee33ccd2e9b62619c4a8a3a155f8de6d6d355fc
- languageName: node
- linkType: hard
-
-"is-nan@npm:^1.3.2":
- version: 1.3.2
- resolution: "is-nan@npm:1.3.2"
- dependencies:
- call-bind: "npm:^1.0.0"
- define-properties: "npm:^1.1.3"
- checksum: 10c0/8bfb286f85763f9c2e28ea32e9127702fe980ffd15fa5d63ade3be7786559e6e21355d3625dd364c769c033c5aedf0a2ed3d4025d336abf1b9241e3d9eddc5b0
- languageName: node
- linkType: hard
-
-"is-negated-glob@npm:^1.0.0":
- version: 1.0.0
- resolution: "is-negated-glob@npm:1.0.0"
- checksum: 10c0/f9d4fb2effd7a6d0e4770463e4cf708fbff2d5b660ab2043e5703e21e3234dfbe9974fdd8c08eb80f9898d5dd3d21b020e8d07fce387cd394a79991f01cd8d1c
- languageName: node
- linkType: hard
-
-"is-negative-zero@npm:^2.0.3":
- version: 2.0.3
- resolution: "is-negative-zero@npm:2.0.3"
- checksum: 10c0/bcdcf6b8b9714063ffcfa9929c575ac69bfdabb8f4574ff557dfc086df2836cf07e3906f5bbc4f2a5c12f8f3ba56af640c843cdfc74da8caed86c7c7d66fd08e
- languageName: node
- linkType: hard
-
-"is-network-error@npm:^1.1.0":
- version: 1.3.0
- resolution: "is-network-error@npm:1.3.0"
- checksum: 10c0/3e85a69e957988db66d5af5412efdd531a5a63e150d1bdd5647cfd4dc54fd89b1dbdd472621f8915233c3176ba1e6922afa8a51a9e363ba4693edf96a294f898
- languageName: node
- linkType: hard
-
-"is-number-object@npm:^1.1.1":
- version: 1.1.1
- resolution: "is-number-object@npm:1.1.1"
- dependencies:
- call-bound: "npm:^1.0.3"
- has-tostringtag: "npm:^1.0.2"
- checksum: 10c0/97b451b41f25135ff021d85c436ff0100d84a039bb87ffd799cbcdbea81ef30c464ced38258cdd34f080be08fc3b076ca1f472086286d2aa43521d6ec6a79f53
- languageName: node
- linkType: hard
-
-"is-number@npm:^7.0.0":
- version: 7.0.0
- resolution: "is-number@npm:7.0.0"
- checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811
- languageName: node
- linkType: hard
-
-"is-path-inside@npm:^3.0.3":
- version: 3.0.3
- resolution: "is-path-inside@npm:3.0.3"
- checksum: 10c0/cf7d4ac35fb96bab6a1d2c3598fe5ebb29aafb52c0aaa482b5a3ed9d8ba3edc11631e3ec2637660c44b3ce0e61a08d54946e8af30dec0b60a7c27296c68ffd05
- languageName: node
- linkType: hard
-
-"is-plain-obj@npm:^4.0.0":
- version: 4.1.0
- resolution: "is-plain-obj@npm:4.1.0"
- checksum: 10c0/32130d651d71d9564dc88ba7e6fda0e91a1010a3694648e9f4f47bb6080438140696d3e3e15c741411d712e47ac9edc1a8a9de1fe76f3487b0d90be06ac9975e
- languageName: node
- linkType: hard
-
-"is-potential-custom-element-name@npm:^1.0.1":
- version: 1.0.1
- resolution: "is-potential-custom-element-name@npm:1.0.1"
- checksum: 10c0/b73e2f22bc863b0939941d369486d308b43d7aef1f9439705e3582bfccaa4516406865e32c968a35f97a99396dac84e2624e67b0a16b0a15086a785e16ce7db9
- languageName: node
- linkType: hard
-
-"is-regex@npm:^1.2.1":
- version: 1.2.1
- resolution: "is-regex@npm:1.2.1"
- dependencies:
- call-bound: "npm:^1.0.2"
- gopd: "npm:^1.2.0"
- has-tostringtag: "npm:^1.0.2"
- hasown: "npm:^2.0.2"
- checksum: 10c0/1d3715d2b7889932349241680032e85d0b492cfcb045acb75ffc2c3085e8d561184f1f7e84b6f8321935b4aea39bc9c6ba74ed595b57ce4881a51dfdbc214e04
- languageName: node
- linkType: hard
-
-"is-set@npm:^2.0.3":
- version: 2.0.3
- resolution: "is-set@npm:2.0.3"
- checksum: 10c0/f73732e13f099b2dc879c2a12341cfc22ccaca8dd504e6edae26484bd5707a35d503fba5b4daad530a9b088ced1ae6c9d8200fd92e09b428fe14ea79ce8080b7
- languageName: node
- linkType: hard
-
-"is-shared-array-buffer@npm:^1.0.4":
- version: 1.0.4
- resolution: "is-shared-array-buffer@npm:1.0.4"
- dependencies:
- call-bound: "npm:^1.0.3"
- checksum: 10c0/65158c2feb41ff1edd6bbd6fd8403a69861cf273ff36077982b5d4d68e1d59278c71691216a4a64632bd76d4792d4d1d2553901b6666d84ade13bba5ea7bc7db
- languageName: node
- linkType: hard
-
-"is-stream@npm:^2.0.0":
- version: 2.0.1
- resolution: "is-stream@npm:2.0.1"
- checksum: 10c0/7c284241313fc6efc329b8d7f08e16c0efeb6baab1b4cd0ba579eb78e5af1aa5da11e68559896a2067cd6c526bd29241dda4eb1225e627d5aa1a89a76d4635a5
- languageName: node
- linkType: hard
-
-"is-string@npm:^1.0.7, is-string@npm:^1.1.1":
- version: 1.1.1
- resolution: "is-string@npm:1.1.1"
- dependencies:
- call-bound: "npm:^1.0.3"
- has-tostringtag: "npm:^1.0.2"
- checksum: 10c0/2f518b4e47886bb81567faba6ffd0d8a8333cf84336e2e78bf160693972e32ad00fe84b0926491cc598dee576fdc55642c92e62d0cbe96bf36f643b6f956f94d
- languageName: node
- linkType: hard
-
-"is-subset@npm:^0.1.1":
- version: 0.1.1
- resolution: "is-subset@npm:0.1.1"
- checksum: 10c0/d8125598ab9077a76684e18726fb915f5cea7a7358ed0c6ff723f4484d71a0a9981ee5aae06c44de99cfdef0fefce37438c6257ab129e53c82045ea0c2acdebf
- languageName: node
- linkType: hard
-
-"is-symbol@npm:^1.0.4, is-symbol@npm:^1.1.1":
- version: 1.1.1
- resolution: "is-symbol@npm:1.1.1"
- dependencies:
- call-bound: "npm:^1.0.2"
- has-symbols: "npm:^1.1.0"
- safe-regex-test: "npm:^1.1.0"
- checksum: 10c0/f08f3e255c12442e833f75a9e2b84b2d4882fdfd920513cf2a4a2324f0a5b076c8fd913778e3ea5d258d5183e9d92c0cd20e04b03ab3df05316b049b2670af1e
- languageName: node
- linkType: hard
-
-"is-typed-array@npm:^1.1.13, is-typed-array@npm:^1.1.14, is-typed-array@npm:^1.1.15, is-typed-array@npm:^1.1.3":
- version: 1.1.15
- resolution: "is-typed-array@npm:1.1.15"
- dependencies:
- which-typed-array: "npm:^1.1.16"
- checksum: 10c0/415511da3669e36e002820584e264997ffe277ff136643a3126cc949197e6ca3334d0f12d084e83b1994af2e9c8141275c741cf2b7da5a2ff62dd0cac26f76c4
- languageName: node
- linkType: hard
-
-"is-valid-glob@npm:^1.0.0":
- version: 1.0.0
- resolution: "is-valid-glob@npm:1.0.0"
- checksum: 10c0/73aef3a2dc218b677362c876d1bc69699e10cfb50ecae6ac5fa946d7f5bb783721e81d9383bd120e4fb7bcfaa7ebe1edab0b707fd93051cc6e04f90f02d689b6
- languageName: node
- linkType: hard
-
-"is-weakmap@npm:^2.0.2":
- version: 2.0.2
- resolution: "is-weakmap@npm:2.0.2"
- checksum: 10c0/443c35bb86d5e6cc5929cd9c75a4024bb0fff9586ed50b092f94e700b89c43a33b186b76dbc6d54f3d3d09ece689ab38dcdc1af6a482cbe79c0f2da0a17f1299
- languageName: node
- linkType: hard
-
-"is-weakref@npm:^1.0.2, is-weakref@npm:^1.1.0":
- version: 1.1.0
- resolution: "is-weakref@npm:1.1.0"
- dependencies:
- call-bound: "npm:^1.0.2"
- checksum: 10c0/aa835f62e29cb60132ecb3ec7d11bd0f39ec7322325abe8412b805aef47153ec2daefdb21759b049711c674f49b13202a31d8d126bcdff7d8671c78babd4ae5b
- languageName: node
- linkType: hard
-
-"is-weakref@npm:^1.1.1":
- version: 1.1.1
- resolution: "is-weakref@npm:1.1.1"
- dependencies:
- call-bound: "npm:^1.0.3"
- checksum: 10c0/8e0a9c07b0c780949a100e2cab2b5560a48ecd4c61726923c1a9b77b6ab0aa0046c9e7fb2206042296817045376dee2c8ab1dabe08c7c3dfbf195b01275a085b
- languageName: node
- linkType: hard
-
-"is-weakset@npm:^2.0.3":
- version: 2.0.4
- resolution: "is-weakset@npm:2.0.4"
- dependencies:
- call-bound: "npm:^1.0.3"
- get-intrinsic: "npm:^1.2.6"
- checksum: 10c0/6491eba08acb8dc9532da23cb226b7d0192ede0b88f16199e592e4769db0a077119c1f5d2283d1e0d16d739115f70046e887e477eb0e66cd90e1bb29f28ba647
- languageName: node
- linkType: hard
-
-"isarray@npm:^2.0.5":
- version: 2.0.5
- resolution: "isarray@npm:2.0.5"
- checksum: 10c0/4199f14a7a13da2177c66c31080008b7124331956f47bca57dd0b6ea9f11687aa25e565a2c7a2b519bc86988d10398e3049a1f5df13c9f6b7664154690ae79fd
- languageName: node
- linkType: hard
-
-"isarray@npm:~1.0.0":
- version: 1.0.0
- resolution: "isarray@npm:1.0.0"
- checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d
- languageName: node
- linkType: hard
-
-"isexe@npm:^2.0.0":
- version: 2.0.0
- resolution: "isexe@npm:2.0.0"
- checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d
- languageName: node
- linkType: hard
-
-"isexe@npm:^3.1.1":
- version: 3.1.1
- resolution: "isexe@npm:3.1.1"
- checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7
- languageName: node
- linkType: hard
-
-"isomorphic-timers-promises@npm:^1.0.1":
- version: 1.0.1
- resolution: "isomorphic-timers-promises@npm:1.0.1"
- checksum: 10c0/3b4761d0012ebe6b6382246079fc667f3513f36fe4042638f2bfb7db1557e4f1acd33a9c9907706c04270890ec6434120f132f3f300161a42a7dd8628926c8a4
- languageName: node
- linkType: hard
-
-"istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.2":
- version: 3.2.2
- resolution: "istanbul-lib-coverage@npm:3.2.2"
- checksum: 10c0/6c7ff2106769e5f592ded1fb418f9f73b4411fd5a084387a5410538332b6567cd1763ff6b6cadca9b9eb2c443cce2f7ea7d7f1b8d315f9ce58539793b1e0922b
- languageName: node
- linkType: hard
-
-"istanbul-lib-report@npm:^3.0.0, istanbul-lib-report@npm:^3.0.1":
- version: 3.0.1
- resolution: "istanbul-lib-report@npm:3.0.1"
- dependencies:
- istanbul-lib-coverage: "npm:^3.0.0"
- make-dir: "npm:^4.0.0"
- supports-color: "npm:^7.1.0"
- checksum: 10c0/84323afb14392de8b6a5714bd7e9af845cfbd56cfe71ed276cda2f5f1201aea673c7111901227ee33e68e4364e288d73861eb2ed48f6679d1e69a43b6d9b3ba7
- languageName: node
- linkType: hard
-
-"istanbul-reports@npm:^3.2.0":
- version: 3.2.0
- resolution: "istanbul-reports@npm:3.2.0"
- dependencies:
- html-escaper: "npm:^2.0.0"
- istanbul-lib-report: "npm:^3.0.0"
- checksum: 10c0/d596317cfd9c22e1394f22a8d8ba0303d2074fe2e971887b32d870e4b33f8464b10f8ccbe6847808f7db485f084eba09e6c2ed706b3a978e4b52f07085b8f9bc
- languageName: node
- linkType: hard
-
-"iterator.prototype@npm:^1.1.4":
- version: 1.1.5
- resolution: "iterator.prototype@npm:1.1.5"
- dependencies:
- define-data-property: "npm:^1.1.4"
- es-object-atoms: "npm:^1.0.0"
- get-intrinsic: "npm:^1.2.6"
- get-proto: "npm:^1.0.0"
- has-symbols: "npm:^1.1.0"
- set-function-name: "npm:^2.0.2"
- checksum: 10c0/f7a262808e1b41049ab55f1e9c29af7ec1025a000d243b83edf34ce2416eedd56079b117fa59376bb4a724110690f13aa8427f2ee29a09eec63a7e72367626d0
- languageName: node
- linkType: hard
-
-"jackspeak@npm:^3.1.2":
- version: 3.4.3
- resolution: "jackspeak@npm:3.4.3"
- dependencies:
- "@isaacs/cliui": "npm:^8.0.2"
- "@pkgjs/parseargs": "npm:^0.11.0"
- dependenciesMeta:
- "@pkgjs/parseargs":
- optional: true
- checksum: 10c0/6acc10d139eaefdbe04d2f679e6191b3abf073f111edf10b1de5302c97ec93fffeb2fdd8681ed17f16268aa9dd4f8c588ed9d1d3bffbbfa6e8bf897cbb3149b9
- languageName: node
- linkType: hard
-
-"jake@npm:^10.8.5":
- version: 10.9.2
- resolution: "jake@npm:10.9.2"
- dependencies:
- async: "npm:^3.2.3"
- chalk: "npm:^4.0.2"
- filelist: "npm:^1.0.4"
- minimatch: "npm:^3.1.2"
- bin:
- jake: bin/cli.js
- checksum: 10c0/c4597b5ed9b6a908252feab296485a4f87cba9e26d6c20e0ca144fb69e0c40203d34a2efddb33b3d297b8bd59605e6c1f44f6221ca1e10e69175ecbf3ff5fe31
- languageName: node
- linkType: hard
-
-"jiti@npm:^2.6.0":
- version: 2.6.1
- resolution: "jiti@npm:2.6.1"
- bin:
- jiti: lib/jiti-cli.mjs
- checksum: 10c0/79b2e96a8e623f66c1b703b98ec1b8be4500e1d217e09b09e343471bbb9c105381b83edbb979d01cef18318cc45ce6e153571b6c83122170eefa531c64b6789b
- languageName: node
- linkType: hard
-
-"jose@npm:^6.0.12":
- version: 6.1.2
- resolution: "jose@npm:6.1.2"
- checksum: 10c0/55f79426f43e652ed6d5de938d50f66bb0a10dcae078db81a23f8d3303e889ce226f000e815f3211f9956bb84badce10da892d130d40fe2eca658045a6f1778e
- languageName: node
- linkType: hard
-
-"jose@npm:^6.1.0":
- version: 6.1.0
- resolution: "jose@npm:6.1.0"
- checksum: 10c0/f4518579e907317e144facd15c7627acd06097bbea17735097437217498aa419564c039dd4020f6af5f2d024a7cee6b7be4648ccbbdc238aedb80a47c061217d
- languageName: node
- linkType: hard
-
-"js-tokens@npm:^10.0.0":
- version: 10.0.0
- resolution: "js-tokens@npm:10.0.0"
- checksum: 10c0/a93498747812ba3e0c8626f95f75ab29319f2a13613a0de9e610700405760931624433a0de59eb7c27ff8836e526768fb20783861b86ef89be96676f2c996b64
- languageName: node
- linkType: hard
-
-"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0":
- version: 4.0.0
- resolution: "js-tokens@npm:4.0.0"
- checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed
- languageName: node
- linkType: hard
-
-"js-yaml@npm:^4.1.1":
- version: 4.1.1
- resolution: "js-yaml@npm:4.1.1"
- dependencies:
- argparse: "npm:^2.0.1"
- bin:
- js-yaml: bin/js-yaml.js
- checksum: 10c0/561c7d7088c40a9bb53cc75becbfb1df6ae49b34b5e6e5a81744b14ae8667ec564ad2527709d1a6e7d5e5fa6d483aa0f373a50ad98d42fde368ec4a190d4fae7
- languageName: node
- linkType: hard
-
-"jsbn@npm:1.1.0":
- version: 1.1.0
- resolution: "jsbn@npm:1.1.0"
- checksum: 10c0/4f907fb78d7b712e11dea8c165fe0921f81a657d3443dde75359ed52eb2b5d33ce6773d97985a089f09a65edd80b11cb75c767b57ba47391fee4c969f7215c96
- languageName: node
- linkType: hard
-
-"jsdoc-type-pratt-parser@npm:~7.0.0":
- version: 7.0.0
- resolution: "jsdoc-type-pratt-parser@npm:7.0.0"
- checksum: 10c0/3ede53c80dddf940a51dcdc79e3923537650f6fb6e9001fc76023c2d5cb0195cc8b24b7eebf9b3f20a7bc00d5e6b7f70318f0b8cb5972f6aff884152e6698014
- languageName: node
- linkType: hard
-
-"jsdom@npm:^26.0.0":
- version: 26.1.0
- resolution: "jsdom@npm:26.1.0"
- dependencies:
- cssstyle: "npm:^4.2.1"
- data-urls: "npm:^5.0.0"
- decimal.js: "npm:^10.5.0"
- html-encoding-sniffer: "npm:^4.0.0"
- http-proxy-agent: "npm:^7.0.2"
- https-proxy-agent: "npm:^7.0.6"
- is-potential-custom-element-name: "npm:^1.0.1"
- nwsapi: "npm:^2.2.16"
- parse5: "npm:^7.2.1"
- rrweb-cssom: "npm:^0.8.0"
- saxes: "npm:^6.0.0"
- symbol-tree: "npm:^3.2.4"
- tough-cookie: "npm:^5.1.1"
- w3c-xmlserializer: "npm:^5.0.0"
- webidl-conversions: "npm:^7.0.0"
- whatwg-encoding: "npm:^3.1.1"
- whatwg-mimetype: "npm:^4.0.0"
- whatwg-url: "npm:^14.1.1"
- ws: "npm:^8.18.0"
- xml-name-validator: "npm:^5.0.0"
- peerDependencies:
- canvas: ^3.0.0
- peerDependenciesMeta:
- canvas:
- optional: true
- checksum: 10c0/5b14a5bc32ce077a06fb42d1ab95b1191afa5cbbce8859e3b96831c5143becbbcbf0511d4d4934e922d2901443ced2cdc3b734c1cf30b5f73b3e067ce457d0f4
- languageName: node
- linkType: hard
-
-"jsesc@npm:^3.0.2, jsesc@npm:~3.1.0":
- version: 3.1.0
- resolution: "jsesc@npm:3.1.0"
- bin:
- jsesc: bin/jsesc
- checksum: 10c0/531779df5ec94f47e462da26b4cbf05eb88a83d9f08aac2ba04206508fc598527a153d08bd462bae82fc78b3eaa1a908e1a4a79f886e9238641c4cdefaf118b1
- languageName: node
- linkType: hard
-
-"jsesc@npm:~0.5.0":
- version: 0.5.0
- resolution: "jsesc@npm:0.5.0"
- bin:
- jsesc: bin/jsesc
- checksum: 10c0/f93792440ae1d80f091b65f8ceddf8e55c4bb7f1a09dee5dcbdb0db5612c55c0f6045625aa6b7e8edb2e0a4feabd80ee48616dbe2d37055573a84db3d24f96d9
- languageName: node
- linkType: hard
-
-"jsesc@npm:~3.0.2":
- version: 3.0.2
- resolution: "jsesc@npm:3.0.2"
- bin:
- jsesc: bin/jsesc
- checksum: 10c0/ef22148f9e793180b14d8a145ee6f9f60f301abf443288117b4b6c53d0ecd58354898dc506ccbb553a5f7827965cd38bc5fb726575aae93c5e8915e2de8290e1
- languageName: node
- linkType: hard
-
-"json-buffer@npm:3.0.1":
- version: 3.0.1
- resolution: "json-buffer@npm:3.0.1"
- checksum: 10c0/0d1c91569d9588e7eef2b49b59851f297f3ab93c7b35c7c221e288099322be6b562767d11e4821da500f3219542b9afd2e54c5dc573107c1126ed1080f8e96d7
- languageName: node
- linkType: hard
-
-"json-parse-even-better-errors@npm:^2.3.0":
- version: 2.3.1
- resolution: "json-parse-even-better-errors@npm:2.3.1"
- checksum: 10c0/140932564c8f0b88455432e0f33c4cb4086b8868e37524e07e723f4eaedb9425bdc2bafd71bd1d9765bd15fd1e2d126972bc83990f55c467168c228c24d665f3
- languageName: node
- linkType: hard
-
-"json-schema-traverse@npm:^0.4.1":
- version: 0.4.1
- resolution: "json-schema-traverse@npm:0.4.1"
- checksum: 10c0/108fa90d4cc6f08243aedc6da16c408daf81793bf903e9fd5ab21983cda433d5d2da49e40711da016289465ec2e62e0324dcdfbc06275a607fe3233fde4942ce
- languageName: node
- linkType: hard
-
-"json-stable-stringify-without-jsonify@npm:^1.0.1":
- version: 1.0.1
- resolution: "json-stable-stringify-without-jsonify@npm:1.0.1"
- checksum: 10c0/cb168b61fd4de83e58d09aaa6425ef71001bae30d260e2c57e7d09a5fd82223e2f22a042dedaab8db23b7d9ae46854b08bb1f91675a8be11c5cffebef5fb66a5
- languageName: node
- linkType: hard
-
-"json5@npm:^1.0.2":
- version: 1.0.2
- resolution: "json5@npm:1.0.2"
- dependencies:
- minimist: "npm:^1.2.0"
- bin:
- json5: lib/cli.js
- checksum: 10c0/9ee316bf21f000b00752e6c2a3b79ecf5324515a5c60ee88983a1910a45426b643a4f3461657586e8aeca87aaf96f0a519b0516d2ae527a6c3e7eed80f68717f
- languageName: node
- linkType: hard
-
-"json5@npm:^2.2.3":
- version: 2.2.3
- resolution: "json5@npm:2.2.3"
- bin:
- json5: lib/cli.js
- checksum: 10c0/5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c
- languageName: node
- linkType: hard
-
-"jsonfile@npm:^4.0.0":
- version: 4.0.0
- resolution: "jsonfile@npm:4.0.0"
- dependencies:
- graceful-fs: "npm:^4.1.6"
- dependenciesMeta:
- graceful-fs:
- optional: true
- checksum: 10c0/7dc94b628d57a66b71fb1b79510d460d662eb975b5f876d723f81549c2e9cd316d58a2ddf742b2b93a4fa6b17b2accaf1a738a0e2ea114bdfb13a32e5377e480
- languageName: node
- linkType: hard
-
-"jsonfile@npm:^6.0.1":
- version: 6.1.0
- resolution: "jsonfile@npm:6.1.0"
- dependencies:
- graceful-fs: "npm:^4.1.6"
- universalify: "npm:^2.0.0"
- dependenciesMeta:
- graceful-fs:
- optional: true
- checksum: 10c0/4f95b5e8a5622b1e9e8f33c96b7ef3158122f595998114d1e7f03985649ea99cb3cd99ce1ed1831ae94c8c8543ab45ebd044207612f31a56fd08462140e46865
- languageName: node
- linkType: hard
-
-"jsx-ast-utils@npm:^2.4.1 || ^3.0.0, jsx-ast-utils@npm:^3.3.5":
- version: 3.3.5
- resolution: "jsx-ast-utils@npm:3.3.5"
- dependencies:
- array-includes: "npm:^3.1.6"
- array.prototype.flat: "npm:^1.3.1"
- object.assign: "npm:^4.1.4"
- object.values: "npm:^1.1.6"
- checksum: 10c0/a32679e9cb55469cb6d8bbc863f7d631b2c98b7fc7bf172629261751a6e7bc8da6ae374ddb74d5fbd8b06cf0eb4572287b259813d92b36e384024ed35e4c13e1
- languageName: node
- linkType: hard
-
-"jwt-decode@npm:^4.0.0":
- version: 4.0.0
- resolution: "jwt-decode@npm:4.0.0"
- checksum: 10c0/de75bbf89220746c388cf6a7b71e56080437b77d2edb29bae1c2155048b02c6b8c59a3e5e8d6ccdfd54f0b8bda25226e491a4f1b55ac5f8da04cfbadec4e546c
- languageName: node
- linkType: hard
-
-"keyv@npm:^4.5.3":
- version: 4.5.4
- resolution: "keyv@npm:4.5.4"
- dependencies:
- json-buffer: "npm:3.0.1"
- checksum: 10c0/aa52f3c5e18e16bb6324876bb8b59dd02acf782a4b789c7b2ae21107fab95fab3890ed448d4f8dba80ce05391eeac4bfabb4f02a20221342982f806fa2cf271e
- languageName: node
- linkType: hard
-
-"kleur@npm:^3.0.3":
- version: 3.0.3
- resolution: "kleur@npm:3.0.3"
- checksum: 10c0/cd3a0b8878e7d6d3799e54340efe3591ca787d9f95f109f28129bdd2915e37807bf8918bb295ab86afb8c82196beec5a1adcaf29042ce3f2bd932b038fe3aa4b
- languageName: node
- linkType: hard
-
-"knip@npm:^5.86.0":
- version: 5.86.0
- resolution: "knip@npm:5.86.0"
- dependencies:
- "@nodelib/fs.walk": "npm:^1.2.3"
- fast-glob: "npm:^3.3.3"
- formatly: "npm:^0.3.0"
- jiti: "npm:^2.6.0"
- minimist: "npm:^1.2.8"
- oxc-resolver: "npm:^11.19.1"
- picocolors: "npm:^1.1.1"
- picomatch: "npm:^4.0.1"
- smol-toml: "npm:^1.5.2"
- strip-json-comments: "npm:5.0.3"
- unbash: "npm:^2.2.0"
- yaml: "npm:^2.8.2"
- zod: "npm:^4.1.11"
- peerDependencies:
- "@types/node": ">=18"
- typescript: ">=5.0.4 <7"
- bin:
- knip: bin/knip.js
- knip-bun: bin/knip-bun.js
- checksum: 10c0/6905c3c2bd21b1f5d51bf83568d1eff67d9d74dd9547c428f810b0dbc3624225a0c41b8e8caccbb111df2db175933aa853345798a05f91f9344ce3aca26898ff
- languageName: node
- linkType: hard
-
-"language-subtag-registry@npm:^0.3.20":
- version: 0.3.23
- resolution: "language-subtag-registry@npm:0.3.23"
- checksum: 10c0/e9b05190421d2cd36dd6c95c28673019c927947cb6d94f40ba7e77a838629ee9675c94accf897fbebb07923187deb843b8fbb8935762df6edafe6c28dcb0b86c
- languageName: node
- linkType: hard
-
-"language-tags@npm:^1.0.9":
- version: 1.0.9
- resolution: "language-tags@npm:1.0.9"
- dependencies:
- language-subtag-registry: "npm:^0.3.20"
- checksum: 10c0/9ab911213c4bd8bd583c850201c17794e52cb0660d1ab6e32558aadc8324abebf6844e46f92b80a5d600d0fbba7eface2c207bfaf270a1c7fd539e4c3a880bff
- languageName: node
- linkType: hard
-
-"lead@npm:^4.0.0":
- version: 4.0.0
- resolution: "lead@npm:4.0.0"
- checksum: 10c0/71d2509b3c921dc74c47561a3c7bf0b76ecb530af178c3e0f469f3bdf20940ca08bcb4f18bbcfde0619706c1e550d3ba67ea187407722304db8fd3bc13a4405d
- languageName: node
- linkType: hard
-
-"levn@npm:^0.4.1":
- version: 0.4.1
- resolution: "levn@npm:0.4.1"
- dependencies:
- prelude-ls: "npm:^1.2.1"
- type-check: "npm:~0.4.0"
- checksum: 10c0/effb03cad7c89dfa5bd4f6989364bfc79994c2042ec5966cb9b95990e2edee5cd8969ddf42616a0373ac49fac1403437deaf6e9050fbbaa3546093a59b9ac94e
- languageName: node
- linkType: hard
-
-"lilconfig@npm:^3.1.3":
- version: 3.1.3
- resolution: "lilconfig@npm:3.1.3"
- checksum: 10c0/f5604e7240c5c275743561442fbc5abf2a84ad94da0f5adc71d25e31fa8483048de3dcedcb7a44112a942fed305fd75841cdf6c9681c7f640c63f1049e9a5dcc
- languageName: node
- linkType: hard
-
-"lines-and-columns@npm:^1.1.6":
- version: 1.2.4
- resolution: "lines-and-columns@npm:1.2.4"
- checksum: 10c0/3da6ee62d4cd9f03f5dc90b4df2540fb85b352081bee77fe4bbcd12c9000ead7f35e0a38b8d09a9bb99b13223446dd8689ff3c4959807620726d788701a83d2d
- languageName: node
- linkType: hard
-
-"livekit-client@npm:^2.13.0":
- version: 2.16.0
- resolution: "livekit-client@npm:2.16.0"
- dependencies:
- "@livekit/mutex": "npm:1.1.1"
- "@livekit/protocol": "npm:1.42.2"
- events: "npm:^3.3.0"
- jose: "npm:^6.1.0"
- loglevel: "npm:^1.9.2"
- sdp-transform: "npm:^2.15.0"
- ts-debounce: "npm:^4.0.0"
- tslib: "npm:2.8.1"
- typed-emitter: "npm:^2.1.0"
- webrtc-adapter: "npm:^9.0.1"
- peerDependencies:
- "@types/dom-mediacapture-record": ^1
- checksum: 10c0/5d03adc5d09efde343ab894db397529dff26117598e773b23a5df90a4fb166bde12c6bb1f2cfd1d28dbaf93fe9f275026d7abb75f2ffd2ba816393a2d58e6c7e
- languageName: node
- linkType: hard
-
-"locate-path@npm:^5.0.0":
- version: 5.0.0
- resolution: "locate-path@npm:5.0.0"
- dependencies:
- p-locate: "npm:^4.1.0"
- checksum: 10c0/33a1c5247e87e022f9713e6213a744557a3e9ec32c5d0b5efb10aa3a38177615bf90221a5592674857039c1a0fd2063b82f285702d37b792d973e9e72ace6c59
- languageName: node
- linkType: hard
-
-"locate-path@npm:^6.0.0":
- version: 6.0.0
- resolution: "locate-path@npm:6.0.0"
- dependencies:
- p-locate: "npm:^5.0.0"
- checksum: 10c0/d3972ab70dfe58ce620e64265f90162d247e87159b6126b01314dd67be43d50e96a50b517bce2d9452a79409c7614054c277b5232377de50416564a77ac7aad3
- languageName: node
- linkType: hard
-
-"lodash-es@npm:^4.17.21":
- version: 4.17.23
- resolution: "lodash-es@npm:4.17.23"
- checksum: 10c0/3150fb6660c14c7a6b5f23bd11597d884b140c0e862a17fdb415aaa5ef7741523182904a6b7929f04e5f60a11edb5a79499eb448734381c99ffb3c4734beeddd
- languageName: node
- linkType: hard
-
-"lodash.debounce@npm:^4.0.8":
- version: 4.0.8
- resolution: "lodash.debounce@npm:4.0.8"
- checksum: 10c0/762998a63e095412b6099b8290903e0a8ddcb353ac6e2e0f2d7e7d03abd4275fe3c689d88960eb90b0dde4f177554d51a690f22a343932ecbc50a5d111849987
- languageName: node
- linkType: hard
-
-"lodash.merge@npm:^4.6.2":
- version: 4.6.2
- resolution: "lodash.merge@npm:4.6.2"
- checksum: 10c0/402fa16a1edd7538de5b5903a90228aa48eb5533986ba7fa26606a49db2572bf414ff73a2c9f5d5fd36b31c46a5d5c7e1527749c07cbcf965ccff5fbdf32c506
- languageName: node
- linkType: hard
-
-"loglevel@npm:1.9.1":
- version: 1.9.1
- resolution: "loglevel@npm:1.9.1"
- checksum: 10c0/152f0501cea367cf998c844a38b19f0b5af555756ad7d8650214a1f8c6a5b045e31b8cf5dae27d28339a061624ce3f618aadb333aed386cac041d6ddc5101a39
- languageName: node
- linkType: hard
-
-"loglevel@npm:^1.9.1, loglevel@npm:^1.9.2":
- version: 1.9.2
- resolution: "loglevel@npm:1.9.2"
- checksum: 10c0/1e317fa4648fe0b4a4cffef6de037340592cee8547b07d4ce97a487abe9153e704b98451100c799b032c72bb89c9366d71c9fb8192ada8703269263ae77acdc7
- languageName: node
- linkType: hard
-
-"loose-envify@npm:^1.4.0":
- version: 1.4.0
- resolution: "loose-envify@npm:1.4.0"
- dependencies:
- js-tokens: "npm:^3.0.0 || ^4.0.0"
- bin:
- loose-envify: cli.js
- checksum: 10c0/655d110220983c1a4b9c0c679a2e8016d4b67f6e9c7b5435ff5979ecdb20d0813f4dec0a08674fcbdd4846a3f07edbb50a36811fd37930b94aaa0d9daceb017e
- languageName: node
- linkType: hard
-
-"lower-case@npm:^2.0.2":
- version: 2.0.2
- resolution: "lower-case@npm:2.0.2"
- dependencies:
- tslib: "npm:^2.0.3"
- checksum: 10c0/3d925e090315cf7dc1caa358e0477e186ffa23947740e4314a7429b6e62d72742e0bbe7536a5ae56d19d7618ce998aba05caca53c2902bd5742fdca5fc57fd7b
- languageName: node
- linkType: hard
-
-"lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0":
- version: 10.4.3
- resolution: "lru-cache@npm:10.4.3"
- checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb
- languageName: node
- linkType: hard
-
-"lru-cache@npm:^11.0.2":
- version: 11.0.2
- resolution: "lru-cache@npm:11.0.2"
- checksum: 10c0/c993b8e06ead0b24b969c1dbb5b301716aed66e320e9014a80012f5febe280b438f28ff50046b2c55ff404e889351ccb332ff91f8dd175a21f5eae80e3fb155f
- languageName: node
- linkType: hard
-
-"lru-cache@npm:^5.1.1":
- version: 5.1.1
- resolution: "lru-cache@npm:5.1.1"
- dependencies:
- yallist: "npm:^3.0.2"
- checksum: 10c0/89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482
- languageName: node
- linkType: hard
-
-"lz-string@npm:^1.5.0":
- version: 1.5.0
- resolution: "lz-string@npm:1.5.0"
- bin:
- lz-string: bin/bin.js
- checksum: 10c0/36128e4de34791838abe979b19927c26e67201ca5acf00880377af7d765b38d1c60847e01c5ec61b1a260c48029084ab3893a3925fd6e48a04011364b089991b
- languageName: node
- linkType: hard
-
-"magic-string@npm:0.30.8":
- version: 0.30.8
- resolution: "magic-string@npm:0.30.8"
- dependencies:
- "@jridgewell/sourcemap-codec": "npm:^1.4.15"
- checksum: 10c0/51a1f06f678c082aceddfb5943de9b6bdb88f2ea1385a1c2adf116deb73dfcfa50df6c222901d691b529455222d4d68d0b28be5689ac6f69b3baa3462861f922
- languageName: node
- linkType: hard
-
-"magic-string@npm:^0.30.21, magic-string@npm:^0.30.3":
- version: 0.30.21
- resolution: "magic-string@npm:0.30.21"
- dependencies:
- "@jridgewell/sourcemap-codec": "npm:^1.5.5"
- checksum: 10c0/299378e38f9a270069fc62358522ddfb44e94244baa0d6a8980ab2a9b2490a1d03b236b447eee309e17eb3bddfa482c61259d47960eb018a904f0ded52780c4a
- languageName: node
- linkType: hard
-
-"magicast@npm:^0.5.1":
- version: 0.5.2
- resolution: "magicast@npm:0.5.2"
- dependencies:
- "@babel/parser": "npm:^7.29.0"
- "@babel/types": "npm:^7.29.0"
- source-map-js: "npm:^1.2.1"
- checksum: 10c0/924af677643c5a0a7d6cdb3247c0eb96fa7611b2ba6a5e720d35d81c503d3d9f5948eb5227f80f90f82ea3e7d38cffd10bb988f3fc09020db428e14f26e960d7
- languageName: node
- linkType: hard
-
-"make-dir@npm:^4.0.0":
- version: 4.0.0
- resolution: "make-dir@npm:4.0.0"
- dependencies:
- semver: "npm:^7.5.3"
- checksum: 10c0/69b98a6c0b8e5c4fe9acb61608a9fbcfca1756d910f51e5dbe7a9e5cfb74fca9b8a0c8a0ffdf1294a740826c1ab4871d5bf3f62f72a3049e5eac6541ddffed68
- languageName: node
- linkType: hard
-
-"make-fetch-happen@npm:^14.0.3":
- version: 14.0.3
- resolution: "make-fetch-happen@npm:14.0.3"
- dependencies:
- "@npmcli/agent": "npm:^3.0.0"
- cacache: "npm:^19.0.1"
- http-cache-semantics: "npm:^4.1.1"
- minipass: "npm:^7.0.2"
- minipass-fetch: "npm:^4.0.0"
- minipass-flush: "npm:^1.0.5"
- minipass-pipeline: "npm:^1.2.4"
- negotiator: "npm:^1.0.0"
- proc-log: "npm:^5.0.0"
- promise-retry: "npm:^2.0.1"
- ssri: "npm:^12.0.0"
- checksum: 10c0/c40efb5e5296e7feb8e37155bde8eb70bc57d731b1f7d90e35a092fde403d7697c56fb49334d92d330d6f1ca29a98142036d6480a12681133a0a1453164cb2f0
- languageName: node
- linkType: hard
-
-"matcher-collection@npm:^2.0.0":
- version: 2.0.1
- resolution: "matcher-collection@npm:2.0.1"
- dependencies:
- "@types/minimatch": "npm:^3.0.3"
- minimatch: "npm:^3.0.2"
- checksum: 10c0/409aad220000e2041672f900883ec66ffdd04814b133b428a8d35e055495fc09bb9024ca6ad7a63ebe6ed9e480e01db02c3edf3587ae1ba2627727a3d896ff96
- languageName: node
- linkType: hard
-
-"math-intrinsics@npm:^1.1.0":
- version: 1.1.0
- resolution: "math-intrinsics@npm:1.1.0"
- checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f
- languageName: node
- linkType: hard
-
-"matrix-events-sdk@npm:0.0.1":
- version: 0.0.1
- resolution: "matrix-events-sdk@npm:0.0.1"
- checksum: 10c0/b2a248b669f88426e08e19ad105ba7f8ae404fae0e1c6d778e7c95e80aa4b29a77ef76d55513765b0ec7cf3942380cd03604618816f625469ea07661ceca1292
- languageName: node
- linkType: hard
-
-"matrix-js-sdk@matrix-org/matrix-js-sdk#6e3efef0c5f660df47cf00874927dec1c75cc3cf":
- version: 40.1.0
- resolution: "matrix-js-sdk@https://github.com/matrix-org/matrix-js-sdk.git#commit=6e3efef0c5f660df47cf00874927dec1c75cc3cf"
- dependencies:
- "@babel/runtime": "npm:^7.12.5"
- "@matrix-org/matrix-sdk-crypto-wasm": "npm:^17.0.0"
- another-json: "npm:^0.2.0"
- bs58: "npm:^6.0.0"
- content-type: "npm:^1.0.4"
- jwt-decode: "npm:^4.0.0"
- loglevel: "npm:^1.9.2"
- matrix-events-sdk: "npm:0.0.1"
- matrix-widget-api: "npm:^1.16.1"
- oidc-client-ts: "npm:^3.0.1"
- p-retry: "npm:7"
- sdp-transform: "npm:^3.0.0"
- unhomoglyph: "npm:^1.0.6"
- uuid: "npm:13"
- checksum: 10c0/2c4db56fd0164d801c2f125ab2a442e3659314d4cc2fd640ea152b829d0db8b05ff808020e387a761afde4ff7a07b271c25431337de9f7c765c523c8cd837e36
- languageName: node
- linkType: hard
-
-"matrix-widget-api@npm:^1.16.1":
- version: 1.17.0
- resolution: "matrix-widget-api@npm:1.17.0"
- dependencies:
- "@types/events": "npm:^3.0.0"
- events: "npm:^3.2.0"
- checksum: 10c0/3651c860900149ecc2fe74640b47687bab8a347eb718a522085189e2b84efe462c9d81c1e8caff08d122f0b3e9cef8303a5802837673e5c9b465f7624c56a8f3
- languageName: node
- linkType: hard
-
-"md5.js@npm:^1.3.4":
- version: 1.3.5
- resolution: "md5.js@npm:1.3.5"
- dependencies:
- hash-base: "npm:^3.0.0"
- inherits: "npm:^2.0.1"
- safe-buffer: "npm:^5.1.2"
- checksum: 10c0/b7bd75077f419c8e013fc4d4dada48be71882e37d69a44af65a2f2804b91e253441eb43a0614423a1c91bb830b8140b0dc906bc797245e2e275759584f4efcc5
- languageName: node
- linkType: hard
-
-"merge2@npm:^1.3.0, merge2@npm:^1.4.1":
- version: 1.4.1
- resolution: "merge2@npm:1.4.1"
- checksum: 10c0/254a8a4605b58f450308fc474c82ac9a094848081bf4c06778200207820e5193726dc563a0d2c16468810516a5c97d9d3ea0ca6585d23c58ccfff2403e8dbbeb
- languageName: node
- linkType: hard
-
-"micromatch@npm:^4.0.4, micromatch@npm:^4.0.5, micromatch@npm:^4.0.8":
- version: 4.0.8
- resolution: "micromatch@npm:4.0.8"
- dependencies:
- braces: "npm:^3.0.3"
- picomatch: "npm:^2.3.1"
- checksum: 10c0/166fa6eb926b9553f32ef81f5f531d27b4ce7da60e5baf8c021d043b27a388fb95e46a8038d5045877881e673f8134122b59624d5cecbd16eb50a42e7a6b5ca8
- languageName: node
- linkType: hard
-
-"miller-rabin@npm:^4.0.0":
- version: 4.0.1
- resolution: "miller-rabin@npm:4.0.1"
- dependencies:
- bn.js: "npm:^4.0.0"
- brorand: "npm:^1.0.1"
- bin:
- miller-rabin: bin/miller-rabin
- checksum: 10c0/26b2b96f6e49dbcff7faebb78708ed2f5f9ae27ac8cbbf1d7c08f83cf39bed3d418c0c11034dce997da70d135cc0ff6f3a4c15dc452f8e114c11986388a64346
- languageName: node
- linkType: hard
-
-"mime-db@npm:1.52.0":
- version: 1.52.0
- resolution: "mime-db@npm:1.52.0"
- checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa
- languageName: node
- linkType: hard
-
-"mime-types@npm:^2.1.35":
- version: 2.1.35
- resolution: "mime-types@npm:2.1.35"
- dependencies:
- mime-db: "npm:1.52.0"
- checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2
- languageName: node
- linkType: hard
-
-"min-indent@npm:^1.0.0":
- version: 1.0.1
- resolution: "min-indent@npm:1.0.1"
- checksum: 10c0/7e207bd5c20401b292de291f02913230cb1163abca162044f7db1d951fa245b174dc00869d40dd9a9f32a885ad6a5f3e767ee104cf278f399cb4e92d3f582d5c
- languageName: node
- linkType: hard
-
-"minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1":
- version: 1.0.1
- resolution: "minimalistic-assert@npm:1.0.1"
- checksum: 10c0/96730e5601cd31457f81a296f521eb56036e6f69133c0b18c13fe941109d53ad23a4204d946a0d638d7f3099482a0cec8c9bb6d642604612ce43ee536be3dddd
- languageName: node
- linkType: hard
-
-"minimalistic-crypto-utils@npm:^1.0.1":
- version: 1.0.1
- resolution: "minimalistic-crypto-utils@npm:1.0.1"
- checksum: 10c0/790ecec8c5c73973a4fbf2c663d911033e8494d5fb0960a4500634766ab05d6107d20af896ca2132e7031741f19888154d44b2408ada0852446705441383e9f8
- languageName: node
- linkType: hard
-
-"minimatch@npm:^10.2.3":
- version: 10.2.4
- resolution: "minimatch@npm:10.2.4"
- dependencies:
- brace-expansion: "npm:^5.0.2"
- checksum: 10c0/35f3dfb7b99b51efd46afd378486889f590e7efb10e0f6a10ba6800428cf65c9a8dedb74427d0570b318d749b543dc4e85f06d46d2858bc8cac7e1eb49a95945
- languageName: node
- linkType: hard
-
-"minimist@npm:^1.2.0, minimist@npm:^1.2.6, minimist@npm:^1.2.8":
- version: 1.2.8
- resolution: "minimist@npm:1.2.8"
- checksum: 10c0/19d3fcdca050087b84c2029841a093691a91259a47def2f18222f41e7645a0b7c44ef4b40e88a1e58a40c84d2ef0ee6047c55594d298146d0eb3f6b737c20ce6
- languageName: node
- linkType: hard
-
-"minipass-collect@npm:^2.0.1":
- version: 2.0.1
- resolution: "minipass-collect@npm:2.0.1"
- dependencies:
- minipass: "npm:^7.0.3"
- checksum: 10c0/5167e73f62bb74cc5019594709c77e6a742051a647fe9499abf03c71dca75515b7959d67a764bdc4f8b361cf897fbf25e2d9869ee039203ed45240f48b9aa06e
- languageName: node
- linkType: hard
-
-"minipass-fetch@npm:^4.0.0":
- version: 4.0.1
- resolution: "minipass-fetch@npm:4.0.1"
- dependencies:
- encoding: "npm:^0.1.13"
- minipass: "npm:^7.0.3"
- minipass-sized: "npm:^1.0.3"
- minizlib: "npm:^3.0.1"
- dependenciesMeta:
- encoding:
- optional: true
- checksum: 10c0/a3147b2efe8e078c9bf9d024a0059339c5a09c5b1dded6900a219c218cc8b1b78510b62dae556b507304af226b18c3f1aeb1d48660283602d5b6586c399eed5c
- languageName: node
- linkType: hard
-
-"minipass-flush@npm:^1.0.5":
- version: 1.0.5
- resolution: "minipass-flush@npm:1.0.5"
- dependencies:
- minipass: "npm:^3.0.0"
- checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd
- languageName: node
- linkType: hard
-
-"minipass-pipeline@npm:^1.2.4":
- version: 1.2.4
- resolution: "minipass-pipeline@npm:1.2.4"
- dependencies:
- minipass: "npm:^3.0.0"
- checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2
- languageName: node
- linkType: hard
-
-"minipass-sized@npm:^1.0.3":
- version: 1.0.3
- resolution: "minipass-sized@npm:1.0.3"
- dependencies:
- minipass: "npm:^3.0.0"
- checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb
- languageName: node
- linkType: hard
-
-"minipass@npm:^3.0.0":
- version: 3.3.6
- resolution: "minipass@npm:3.3.6"
- dependencies:
- yallist: "npm:^4.0.0"
- checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c
- languageName: node
- linkType: hard
-
-"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2":
- version: 7.1.2
- resolution: "minipass@npm:7.1.2"
- checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557
- languageName: node
- linkType: hard
-
-"minizlib@npm:^3.0.1":
- version: 3.0.1
- resolution: "minizlib@npm:3.0.1"
- dependencies:
- minipass: "npm:^7.0.4"
- rimraf: "npm:^5.0.5"
- checksum: 10c0/82f8bf70da8af656909a8ee299d7ed3b3372636749d29e105f97f20e88971be31f5ed7642f2e898f00283b68b701cc01307401cdc209b0efc5dd3818220e5093
- languageName: node
- linkType: hard
-
-"minizlib@npm:^3.1.0":
- version: 3.1.0
- resolution: "minizlib@npm:3.1.0"
- dependencies:
- minipass: "npm:^7.1.2"
- checksum: 10c0/5aad75ab0090b8266069c9aabe582c021ae53eb33c6c691054a13a45db3b4f91a7fb1bd79151e6b4e9e9a86727b522527c0a06ec7d45206b745d54cd3097bcec
- languageName: node
- linkType: hard
-
-"mktemp@npm:~0.4.0":
- version: 0.4.0
- resolution: "mktemp@npm:0.4.0"
- checksum: 10c0/c3777c23492673668a82838f41485531b7b3c9a4430e9daef469371092f9a8d4df84cab05af07c8ab08a407466baf348566c5fd9da702d6f9d917526a6c02809
- languageName: node
- linkType: hard
-
-"ms@npm:2.0.0":
- version: 2.0.0
- resolution: "ms@npm:2.0.0"
- checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d
- languageName: node
- linkType: hard
-
-"ms@npm:^2.1.1, ms@npm:^2.1.3":
- version: 2.1.3
- resolution: "ms@npm:2.1.3"
- checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48
- languageName: node
- linkType: hard
-
-"nanoid@npm:^3.3.11":
- version: 3.3.11
- resolution: "nanoid@npm:3.3.11"
- bin:
- nanoid: bin/nanoid.cjs
- checksum: 10c0/40e7f70b3d15f725ca072dfc4f74e81fcf1fbb02e491cf58ac0c79093adc9b0a73b152bcde57df4b79cd097e13023d7504acb38404a4da7bc1cd8e887b82fe0b
- languageName: node
- linkType: hard
-
-"natural-compare@npm:^1.4.0":
- version: 1.4.0
- resolution: "natural-compare@npm:1.4.0"
- checksum: 10c0/f5f9a7974bfb28a91afafa254b197f0f22c684d4a1731763dda960d2c8e375b36c7d690e0d9dc8fba774c537af14a7e979129bca23d88d052fbeb9466955e447
- languageName: node
- linkType: hard
-
-"negotiator@npm:^1.0.0":
- version: 1.0.0
- resolution: "negotiator@npm:1.0.0"
- checksum: 10c0/4c559dd52669ea48e1914f9d634227c561221dd54734070791f999c52ed0ff36e437b2e07d5c1f6e32909fc625fe46491c16e4a8f0572567d4dd15c3a4fda04b
- languageName: node
- linkType: hard
-
-"no-case@npm:^3.0.4":
- version: 3.0.4
- resolution: "no-case@npm:3.0.4"
- dependencies:
- lower-case: "npm:^2.0.2"
- tslib: "npm:^2.0.3"
- checksum: 10c0/8ef545f0b3f8677c848f86ecbd42ca0ff3cd9dd71c158527b344c69ba14710d816d8489c746b6ca225e7b615108938a0bda0a54706f8c255933703ac1cf8e703
- languageName: node
- linkType: hard
-
-"node-addon-api@npm:^7.0.0":
- version: 7.1.1
- resolution: "node-addon-api@npm:7.1.1"
- dependencies:
- node-gyp: "npm:latest"
- checksum: 10c0/fb32a206276d608037fa1bcd7e9921e177fe992fc610d098aa3128baca3c0050fc1e014fa007e9b3874cf865ddb4f5bd9f43ccb7cbbbe4efaff6a83e920b17e9
- languageName: node
- linkType: hard
-
-"node-fetch@npm:^2.6.7":
- version: 2.7.0
- resolution: "node-fetch@npm:2.7.0"
- dependencies:
- whatwg-url: "npm:^5.0.0"
- peerDependencies:
- encoding: ^0.1.0
- peerDependenciesMeta:
- encoding:
- optional: true
- checksum: 10c0/b55786b6028208e6fbe594ccccc213cab67a72899c9234eb59dba51062a299ea853210fcf526998eaa2867b0963ad72338824450905679ff0fa304b8c5093ae8
- languageName: node
- linkType: hard
-
-"node-gyp@npm:latest":
- version: 11.1.0
- resolution: "node-gyp@npm:11.1.0"
- dependencies:
- env-paths: "npm:^2.2.0"
- exponential-backoff: "npm:^3.1.1"
- glob: "npm:^10.3.10"
- graceful-fs: "npm:^4.2.6"
- make-fetch-happen: "npm:^14.0.3"
- nopt: "npm:^8.0.0"
- proc-log: "npm:^5.0.0"
- semver: "npm:^7.3.5"
- tar: "npm:^7.4.3"
- which: "npm:^5.0.0"
- bin:
- node-gyp: bin/node-gyp.js
- checksum: 10c0/c38977ce502f1ea41ba2b8721bd5b49bc3d5b3f813eabfac8414082faf0620ccb5211e15c4daecc23ed9f5e3e9cc4da00e575a0bcfc2a95a069294f2afa1e0cd
- languageName: node
- linkType: hard
-
-"node-html-parser@npm:^5.3.3":
- version: 5.4.2
- resolution: "node-html-parser@npm:5.4.2"
- dependencies:
- css-select: "npm:^4.2.1"
- he: "npm:1.2.0"
- checksum: 10c0/5a46ce4dc29dcb656067a977ef977d09328b21d1e26e6105176230bb151970cf7deb2db0dd084abeb98106ac79a83102232ad0d9a45d0a686f3eb6931a048663
- languageName: node
- linkType: hard
-
-"node-releases@npm:^2.0.19":
- version: 2.0.19
- resolution: "node-releases@npm:2.0.19"
- checksum: 10c0/52a0dbd25ccf545892670d1551690fe0facb6a471e15f2cfa1b20142a5b255b3aa254af5f59d6ecb69c2bec7390bc643c43aa63b13bf5e64b6075952e716b1aa
- languageName: node
- linkType: hard
-
-"node-releases@npm:^2.0.27":
- version: 2.0.27
- resolution: "node-releases@npm:2.0.27"
- checksum: 10c0/f1e6583b7833ea81880627748d28a3a7ff5703d5409328c216ae57befbced10ce2c991bea86434e8ec39003bd017f70481e2e5f8c1f7e0a7663241f81d6e00e2
- languageName: node
- linkType: hard
-
-"node-stdlib-browser@npm:^1.3.1":
- version: 1.3.1
- resolution: "node-stdlib-browser@npm:1.3.1"
- dependencies:
- assert: "npm:^2.0.0"
- browser-resolve: "npm:^2.0.0"
- browserify-zlib: "npm:^0.2.0"
- buffer: "npm:^5.7.1"
- console-browserify: "npm:^1.1.0"
- constants-browserify: "npm:^1.0.0"
- create-require: "npm:^1.1.1"
- crypto-browserify: "npm:^3.12.1"
- domain-browser: "npm:4.22.0"
- events: "npm:^3.0.0"
- https-browserify: "npm:^1.0.0"
- isomorphic-timers-promises: "npm:^1.0.1"
- os-browserify: "npm:^0.3.0"
- path-browserify: "npm:^1.0.1"
- pkg-dir: "npm:^5.0.0"
- process: "npm:^0.11.10"
- punycode: "npm:^1.4.1"
- querystring-es3: "npm:^0.2.1"
- readable-stream: "npm:^3.6.0"
- stream-browserify: "npm:^3.0.0"
- stream-http: "npm:^3.2.0"
- string_decoder: "npm:^1.0.0"
- timers-browserify: "npm:^2.0.4"
- tty-browserify: "npm:0.0.1"
- url: "npm:^0.11.4"
- util: "npm:^0.12.4"
- vm-browserify: "npm:^1.0.1"
- checksum: 10c0/5b0cb5d4499b1b1c73f54db3e9e69b2a3a8aebe2ead2e356b0a03c1dfca6b5c5d2f6516e24301e76dc7b68999b9d0ae3da6c3f1dec421eed80ad6cb9eec0f356
- languageName: node
- linkType: hard
-
-"nopt@npm:^8.0.0":
- version: 8.1.0
- resolution: "nopt@npm:8.1.0"
- dependencies:
- abbrev: "npm:^3.0.0"
- bin:
- nopt: bin/nopt.js
- checksum: 10c0/62e9ea70c7a3eb91d162d2c706b6606c041e4e7b547cbbb48f8b3695af457dd6479904d7ace600856bf923dd8d1ed0696f06195c8c20f02ac87c1da0e1d315ef
- languageName: node
- linkType: hard
-
-"normalize-package-data@npm:^2.5.0":
- version: 2.5.0
- resolution: "normalize-package-data@npm:2.5.0"
- dependencies:
- hosted-git-info: "npm:^2.1.4"
- resolve: "npm:^1.10.0"
- semver: "npm:2 || 3 || 4 || 5"
- validate-npm-package-license: "npm:^3.0.1"
- checksum: 10c0/357cb1646deb42f8eb4c7d42c4edf0eec312f3628c2ef98501963cc4bbe7277021b2b1d977f982b2edce78f5a1014613ce9cf38085c3df2d76730481357ca504
- languageName: node
- linkType: hard
-
-"normalize-path@npm:3.0.0, normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0":
- version: 3.0.0
- resolution: "normalize-path@npm:3.0.0"
- checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046
- languageName: node
- linkType: hard
-
-"normalize.css@npm:^8.0.1":
- version: 8.0.1
- resolution: "normalize.css@npm:8.0.1"
- checksum: 10c0/4ddf56d1af5ca755fa5e692e718316d8758ecb792aa96e1ad206824b5810a043763d681d6f7697d46573515f5e9690038b4c91a95c1997567128815545fb8cd7
- languageName: node
- linkType: hard
-
-"now-and-later@npm:^3.0.0":
- version: 3.0.0
- resolution: "now-and-later@npm:3.0.0"
- dependencies:
- once: "npm:^1.4.0"
- checksum: 10c0/9ed96bae9f4bf66c01704a59aa5b6a8aa26bd65445133a08a2b867470c1705ae746f7261e4676b2ae6fc9dce0dc778055b816218bdeb1efbf610e0c95a83711b
- languageName: node
- linkType: hard
-
-"nth-check@npm:^2.0.1":
- version: 2.1.1
- resolution: "nth-check@npm:2.1.1"
- dependencies:
- boolbase: "npm:^1.0.0"
- checksum: 10c0/5fee7ff309727763689cfad844d979aedd2204a817fbaaf0e1603794a7c20db28548d7b024692f953557df6ce4a0ee4ae46cd8ebd9b36cfb300b9226b567c479
- languageName: node
- linkType: hard
-
-"nwsapi@npm:^2.2.16":
- version: 2.2.16
- resolution: "nwsapi@npm:2.2.16"
- checksum: 10c0/0aa0637f4d51043d0183d994e08336bae996b03b42984381bf09ebdf3ff4909c018eda6b2a8aba0a08f3ea8303db8a0dad0608b38dc0bff15fd87017286ae21a
- languageName: node
- linkType: hard
-
-"object-assign@npm:^4.1.0, object-assign@npm:^4.1.1":
- version: 4.1.1
- resolution: "object-assign@npm:4.1.1"
- checksum: 10c0/1f4df9945120325d041ccf7b86f31e8bcc14e73d29171e37a7903050e96b81323784ec59f93f102ec635bcf6fa8034ba3ea0a8c7e69fa202b87ae3b6cec5a414
- languageName: node
- linkType: hard
-
-"object-deep-merge@npm:^2.0.0":
- version: 2.0.0
- resolution: "object-deep-merge@npm:2.0.0"
- checksum: 10c0/69e8741131ad49fa8720fb96007a3c82dca1119b5d874151d2ecbcc3b44ccd46e8553c7a30b0abcba752c099ba361bbba97f33a68c9ae54c57eed7be116ffc97
- languageName: node
- linkType: hard
-
-"object-inspect@npm:^1.13.3":
- version: 1.13.3
- resolution: "object-inspect@npm:1.13.3"
- checksum: 10c0/cc3f15213406be89ffdc54b525e115156086796a515410a8d390215915db9f23c8eab485a06f1297402f440a33715fe8f71a528c1dcbad6e1a3bcaf5a46921d4
- languageName: node
- linkType: hard
-
-"object-inspect@npm:^1.13.4":
- version: 1.13.4
- resolution: "object-inspect@npm:1.13.4"
- checksum: 10c0/d7f8711e803b96ea3191c745d6f8056ce1f2496e530e6a19a0e92d89b0fa3c76d910c31f0aa270432db6bd3b2f85500a376a83aaba849a8d518c8845b3211692
- languageName: node
- linkType: hard
-
-"object-is@npm:^1.1.5":
- version: 1.1.6
- resolution: "object-is@npm:1.1.6"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- checksum: 10c0/506af444c4dce7f8e31f34fc549e2fb8152d6b9c4a30c6e62852badd7f520b579c679af433e7a072f9d78eb7808d230dc12e1cf58da9154dfbf8813099ea0fe0
- languageName: node
- linkType: hard
-
-"object-keys@npm:^1.1.1":
- version: 1.1.1
- resolution: "object-keys@npm:1.1.1"
- checksum: 10c0/b11f7ccdbc6d406d1f186cdadb9d54738e347b2692a14439ca5ac70c225fa6db46db809711b78589866d47b25fc3e8dee0b4c722ac751e11180f9380e3d8601d
- languageName: node
- linkType: hard
-
-"object.assign@npm:^4.1.4, object.assign@npm:^4.1.7":
- version: 4.1.7
- resolution: "object.assign@npm:4.1.7"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- define-properties: "npm:^1.2.1"
- es-object-atoms: "npm:^1.0.0"
- has-symbols: "npm:^1.1.0"
- object-keys: "npm:^1.1.1"
- checksum: 10c0/3b2732bd860567ea2579d1567525168de925a8d852638612846bd8082b3a1602b7b89b67b09913cbb5b9bd6e95923b2ae73580baa9d99cb4e990564e8cbf5ddc
- languageName: node
- linkType: hard
-
-"object.entries@npm:^1.1.9":
- version: 1.1.9
- resolution: "object.entries@npm:1.1.9"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.4"
- define-properties: "npm:^1.2.1"
- es-object-atoms: "npm:^1.1.1"
- checksum: 10c0/d4b8c1e586650407da03370845f029aa14076caca4e4d4afadbc69cfb5b78035fd3ee7be417141abdb0258fa142e59b11923b4c44d8b1255b28f5ffcc50da7db
- languageName: node
- linkType: hard
-
-"object.fromentries@npm:^2.0.8":
- version: 2.0.8
- resolution: "object.fromentries@npm:2.0.8"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.2"
- es-object-atoms: "npm:^1.0.0"
- checksum: 10c0/cd4327e6c3369cfa805deb4cbbe919bfb7d3aeebf0bcaba291bb568ea7169f8f8cdbcabe2f00b40db0c20cd20f08e11b5f3a5a36fb7dd3fe04850c50db3bf83b
- languageName: node
- linkType: hard
-
-"object.groupby@npm:^1.0.3":
- version: 1.0.3
- resolution: "object.groupby@npm:1.0.3"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.2"
- checksum: 10c0/60d0455c85c736fbfeda0217d1a77525956f76f7b2495edeca9e9bbf8168a45783199e77b894d30638837c654d0cc410e0e02cbfcf445bc8de71c3da1ede6a9c
- languageName: node
- linkType: hard
-
-"object.values@npm:^1.1.6, object.values@npm:^1.2.1":
- version: 1.2.1
- resolution: "object.values@npm:1.2.1"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- define-properties: "npm:^1.2.1"
- es-object-atoms: "npm:^1.0.0"
- checksum: 10c0/3c47814fdc64842ae3d5a74bc9d06bdd8d21563c04d9939bf6716a9c00596a4ebc342552f8934013d1ec991c74e3671b26710a0c51815f0b603795605ab6b2c9
- languageName: node
- linkType: hard
-
-"observable-hooks@npm:^4.2.3":
- version: 4.2.4
- resolution: "observable-hooks@npm:4.2.4"
- peerDependencies:
- react: ">=16.8.0"
- react-dom: ">=16.8.0"
- rxjs: ">=6.0.0"
- checksum: 10c0/2b2d4f2197c835fc175d110d3397a037c9dcbede7b31ceed383deccf717035d849652e376c24ea1185d244ad2b098c332efa6e4c04025ee89d1a63f790b7df60
- languageName: node
- linkType: hard
-
-"obug@npm:^2.1.1":
- version: 2.1.1
- resolution: "obug@npm:2.1.1"
- checksum: 10c0/59dccd7de72a047e08f8649e94c1015ec72f94eefb6ddb57fb4812c4b425a813bc7e7cd30c9aca20db3c59abc3c85cc7a62bb656a968741d770f4e8e02bc2e78
- languageName: node
- linkType: hard
-
-"oidc-client-ts@npm:^3.0.1":
- version: 3.1.0
- resolution: "oidc-client-ts@npm:3.1.0"
- dependencies:
- jwt-decode: "npm:^4.0.0"
- checksum: 10c0/302442a8c5456a6127887c86009548b59394c25e9b6e75ef7c8743c64e951e8efa3f967b481dc5013900c48827a46fbbd5c328be50ae7b9fa5f3aceb528ec2b2
- languageName: node
- linkType: hard
-
-"once@npm:^1.4.0":
- version: 1.4.0
- resolution: "once@npm:1.4.0"
- dependencies:
- wrappy: "npm:1"
- checksum: 10c0/5d48aca287dfefabd756621c5dfce5c91a549a93e9fdb7b8246bc4c4790aa2ec17b34a260530474635147aeb631a2dcc8b32c613df0675f96041cbb8244517d0
- languageName: node
- linkType: hard
-
-"optionator@npm:^0.9.3":
- version: 0.9.4
- resolution: "optionator@npm:0.9.4"
- dependencies:
- deep-is: "npm:^0.1.3"
- fast-levenshtein: "npm:^2.0.6"
- levn: "npm:^0.4.1"
- prelude-ls: "npm:^1.2.1"
- type-check: "npm:^0.4.0"
- word-wrap: "npm:^1.2.5"
- checksum: 10c0/4afb687a059ee65b61df74dfe87d8d6815cd6883cb8b3d5883a910df72d0f5d029821f37025e4bccf4048873dbdb09acc6d303d27b8f76b1a80dd5a7d5334675
- languageName: node
- linkType: hard
-
-"os-browserify@npm:^0.3.0":
- version: 0.3.0
- resolution: "os-browserify@npm:0.3.0"
- checksum: 10c0/6ff32cb1efe2bc6930ad0fd4c50e30c38010aee909eba8d65be60af55efd6cbb48f0287e3649b4e3f3a63dce5a667b23c187c4293a75e557f0d5489d735bcf52
- languageName: node
- linkType: hard
-
-"own-keys@npm:^1.0.1":
- version: 1.0.1
- resolution: "own-keys@npm:1.0.1"
- dependencies:
- get-intrinsic: "npm:^1.2.6"
- object-keys: "npm:^1.1.1"
- safe-push-apply: "npm:^1.0.0"
- checksum: 10c0/6dfeb3455bff92ec3f16a982d4e3e65676345f6902d9f5ded1d8265a6318d0200ce461956d6d1c70053c7fe9f9fe65e552faac03f8140d37ef0fdd108e67013a
- languageName: node
- linkType: hard
-
-"oxc-resolver@npm:^11.19.1":
- version: 11.19.1
- resolution: "oxc-resolver@npm:11.19.1"
- dependencies:
- "@oxc-resolver/binding-android-arm-eabi": "npm:11.19.1"
- "@oxc-resolver/binding-android-arm64": "npm:11.19.1"
- "@oxc-resolver/binding-darwin-arm64": "npm:11.19.1"
- "@oxc-resolver/binding-darwin-x64": "npm:11.19.1"
- "@oxc-resolver/binding-freebsd-x64": "npm:11.19.1"
- "@oxc-resolver/binding-linux-arm-gnueabihf": "npm:11.19.1"
- "@oxc-resolver/binding-linux-arm-musleabihf": "npm:11.19.1"
- "@oxc-resolver/binding-linux-arm64-gnu": "npm:11.19.1"
- "@oxc-resolver/binding-linux-arm64-musl": "npm:11.19.1"
- "@oxc-resolver/binding-linux-ppc64-gnu": "npm:11.19.1"
- "@oxc-resolver/binding-linux-riscv64-gnu": "npm:11.19.1"
- "@oxc-resolver/binding-linux-riscv64-musl": "npm:11.19.1"
- "@oxc-resolver/binding-linux-s390x-gnu": "npm:11.19.1"
- "@oxc-resolver/binding-linux-x64-gnu": "npm:11.19.1"
- "@oxc-resolver/binding-linux-x64-musl": "npm:11.19.1"
- "@oxc-resolver/binding-openharmony-arm64": "npm:11.19.1"
- "@oxc-resolver/binding-wasm32-wasi": "npm:11.19.1"
- "@oxc-resolver/binding-win32-arm64-msvc": "npm:11.19.1"
- "@oxc-resolver/binding-win32-ia32-msvc": "npm:11.19.1"
- "@oxc-resolver/binding-win32-x64-msvc": "npm:11.19.1"
- dependenciesMeta:
- "@oxc-resolver/binding-android-arm-eabi":
- optional: true
- "@oxc-resolver/binding-android-arm64":
- optional: true
- "@oxc-resolver/binding-darwin-arm64":
- optional: true
- "@oxc-resolver/binding-darwin-x64":
- optional: true
- "@oxc-resolver/binding-freebsd-x64":
- optional: true
- "@oxc-resolver/binding-linux-arm-gnueabihf":
- optional: true
- "@oxc-resolver/binding-linux-arm-musleabihf":
- optional: true
- "@oxc-resolver/binding-linux-arm64-gnu":
- optional: true
- "@oxc-resolver/binding-linux-arm64-musl":
- optional: true
- "@oxc-resolver/binding-linux-ppc64-gnu":
- optional: true
- "@oxc-resolver/binding-linux-riscv64-gnu":
- optional: true
- "@oxc-resolver/binding-linux-riscv64-musl":
- optional: true
- "@oxc-resolver/binding-linux-s390x-gnu":
- optional: true
- "@oxc-resolver/binding-linux-x64-gnu":
- optional: true
- "@oxc-resolver/binding-linux-x64-musl":
- optional: true
- "@oxc-resolver/binding-openharmony-arm64":
- optional: true
- "@oxc-resolver/binding-wasm32-wasi":
- optional: true
- "@oxc-resolver/binding-win32-arm64-msvc":
- optional: true
- "@oxc-resolver/binding-win32-ia32-msvc":
- optional: true
- "@oxc-resolver/binding-win32-x64-msvc":
- optional: true
- checksum: 10c0/8ac4eaffa9c0bcbb9f4f4a2b43786457ec5a68684d8776cb78b5a15ce3d1a79d3e67262aa3c635f98a0c1cd6cd56a31fcb05bffb9a286100056e4ab06b928833
- languageName: node
- linkType: hard
-
-"p-limit@npm:^2.2.0":
- version: 2.3.0
- resolution: "p-limit@npm:2.3.0"
- dependencies:
- p-try: "npm:^2.0.0"
- checksum: 10c0/8da01ac53efe6a627080fafc127c873da40c18d87b3f5d5492d465bb85ec7207e153948df6b9cbaeb130be70152f874229b8242ee2be84c0794082510af97f12
- languageName: node
- linkType: hard
-
-"p-limit@npm:^3.0.2":
- version: 3.1.0
- resolution: "p-limit@npm:3.1.0"
- dependencies:
- yocto-queue: "npm:^0.1.0"
- checksum: 10c0/9db675949dbdc9c3763c89e748d0ef8bdad0afbb24d49ceaf4c46c02c77d30db4e0652ed36d0a0a7a95154335fab810d95c86153105bb73b3a90448e2bb14e1a
- languageName: node
- linkType: hard
-
-"p-locate@npm:^4.1.0":
- version: 4.1.0
- resolution: "p-locate@npm:4.1.0"
- dependencies:
- p-limit: "npm:^2.2.0"
- checksum: 10c0/1b476ad69ad7f6059744f343b26d51ce091508935c1dbb80c4e0a2f397ffce0ca3a1f9f5cd3c7ce19d7929a09719d5c65fe70d8ee289c3f267cd36f2881813e9
- languageName: node
- linkType: hard
-
-"p-locate@npm:^5.0.0":
- version: 5.0.0
- resolution: "p-locate@npm:5.0.0"
- dependencies:
- p-limit: "npm:^3.0.2"
- checksum: 10c0/2290d627ab7903b8b70d11d384fee714b797f6040d9278932754a6860845c4d3190603a0772a663c8cb5a7b21d1b16acb3a6487ebcafa9773094edc3dfe6009a
- languageName: node
- linkType: hard
-
-"p-map@npm:^7.0.2":
- version: 7.0.3
- resolution: "p-map@npm:7.0.3"
- checksum: 10c0/46091610da2b38ce47bcd1d8b4835a6fa4e832848a6682cf1652bc93915770f4617afc844c10a77d1b3e56d2472bb2d5622353fa3ead01a7f42b04fc8e744a5c
- languageName: node
- linkType: hard
-
-"p-retry@npm:7":
- version: 7.0.0
- resolution: "p-retry@npm:7.0.0"
- dependencies:
- is-network-error: "npm:^1.1.0"
- checksum: 10c0/3c090ac72bbe00fd2f062ee6178c44f7302f298936ab2290a458575e73650e7834b556beb2b09fa9fbebedab2ec3358cb474c09710cf828972b670c3c0cb89e4
- languageName: node
- linkType: hard
-
-"p-try@npm:^2.0.0":
- version: 2.2.0
- resolution: "p-try@npm:2.2.0"
- checksum: 10c0/c36c19907734c904b16994e6535b02c36c2224d433e01a2f1ab777237f4d86e6289fd5fd464850491e940379d4606ed850c03e0f9ab600b0ebddb511312e177f
- languageName: node
- linkType: hard
-
-"package-json-from-dist@npm:^1.0.0":
- version: 1.0.1
- resolution: "package-json-from-dist@npm:1.0.1"
- checksum: 10c0/62ba2785eb655fec084a257af34dbe24292ab74516d6aecef97ef72d4897310bc6898f6c85b5cd22770eaa1ce60d55a0230e150fb6a966e3ecd6c511e23d164b
- languageName: node
- linkType: hard
-
-"pako@npm:^2.0.4":
- version: 2.1.0
- resolution: "pako@npm:2.1.0"
- checksum: 10c0/8e8646581410654b50eb22a5dfd71159cae98145bd5086c9a7a816ec0370b5f72b4648d08674624b3870a521e6a3daffd6c2f7bc00fdefc7063c9d8232ff5116
- languageName: node
- linkType: hard
-
-"pako@npm:~1.0.5":
- version: 1.0.11
- resolution: "pako@npm:1.0.11"
- checksum: 10c0/86dd99d8b34c3930345b8bbeb5e1cd8a05f608eeb40967b293f72fe469d0e9c88b783a8777e4cc7dc7c91ce54c5e93d88ff4b4f060e6ff18408fd21030d9ffbe
- languageName: node
- linkType: hard
-
-"param-case@npm:^3.0.4":
- version: 3.0.4
- resolution: "param-case@npm:3.0.4"
- dependencies:
- dot-case: "npm:^3.0.4"
- tslib: "npm:^2.0.3"
- checksum: 10c0/ccc053f3019f878eca10e70ec546d92f51a592f762917dafab11c8b532715dcff58356118a6f350976e4ab109e321756f05739643ed0ca94298e82291e6f9e76
- languageName: node
- linkType: hard
-
-"parent-module@npm:^1.0.0":
- version: 1.0.1
- resolution: "parent-module@npm:1.0.1"
- dependencies:
- callsites: "npm:^3.0.0"
- checksum: 10c0/c63d6e80000d4babd11978e0d3fee386ca7752a02b035fd2435960ffaa7219dc42146f07069fb65e6e8bf1caef89daf9af7535a39bddf354d78bf50d8294f556
- languageName: node
- linkType: hard
-
-"parse-asn1@npm:^5.0.0, parse-asn1@npm:^5.1.9":
- version: 5.1.9
- resolution: "parse-asn1@npm:5.1.9"
- dependencies:
- asn1.js: "npm:^4.10.1"
- browserify-aes: "npm:^1.2.0"
- evp_bytestokey: "npm:^1.0.3"
- pbkdf2: "npm:^3.1.5"
- safe-buffer: "npm:^5.2.1"
- checksum: 10c0/6dfe27c121be3d63ebbf95f03d2ae0a07dd716d44b70b0bd3458790a822a80de05361c62147271fd7b845dcc2d37755d9c9c393064a3438fe633779df0bc07e7
- languageName: node
- linkType: hard
-
-"parse-imports-exports@npm:^0.2.4":
- version: 0.2.4
- resolution: "parse-imports-exports@npm:0.2.4"
- dependencies:
- parse-statements: "npm:1.0.11"
- checksum: 10c0/51b729037208abdf65c4a1f8e9ed06f4e7ccd907c17c668a64db54b37d95bb9e92081f8b16e4133e14102af3cb4e89870975b6ad661b4d654e9ec8f4fb5c77d6
- languageName: node
- linkType: hard
-
-"parse-json@npm:^5.0.0, parse-json@npm:^5.2.0":
- version: 5.2.0
- resolution: "parse-json@npm:5.2.0"
- dependencies:
- "@babel/code-frame": "npm:^7.0.0"
- error-ex: "npm:^1.3.1"
- json-parse-even-better-errors: "npm:^2.3.0"
- lines-and-columns: "npm:^1.1.6"
- checksum: 10c0/77947f2253005be7a12d858aedbafa09c9ae39eb4863adf330f7b416ca4f4a08132e453e08de2db46459256fb66afaac5ee758b44fe6541b7cdaf9d252e59585
- languageName: node
- linkType: hard
-
-"parse-statements@npm:1.0.11":
- version: 1.0.11
- resolution: "parse-statements@npm:1.0.11"
- checksum: 10c0/48960e085019068a5f5242e875fd9d21ec87df2e291acf5ad4e4887b40eab6929a8c8d59542acb85a6497e870c5c6a24f5ab7f980ef5f907c14cc5f7984a93f3
- languageName: node
- linkType: hard
-
-"parse5-htmlparser2-tree-adapter@npm:^7.0.0":
- version: 7.1.0
- resolution: "parse5-htmlparser2-tree-adapter@npm:7.1.0"
- dependencies:
- domhandler: "npm:^5.0.3"
- parse5: "npm:^7.0.0"
- checksum: 10c0/e5a4e0b834c84c9e244b5749f8d007f4baaeafac7a1da2c54be3421ffd9ef8fdec4f198bf55cda22e88e6ba95e9943f6ed5aa3ae5900b39972ebf5dc8c3f4722
- languageName: node
- linkType: hard
-
-"parse5-parser-stream@npm:^7.1.2":
- version: 7.1.2
- resolution: "parse5-parser-stream@npm:7.1.2"
- dependencies:
- parse5: "npm:^7.0.0"
- checksum: 10c0/e236c61000d38ecad369e725a48506b051cebad8abb00e6d4e8bff7aa85c183820fcb45db1559cc90955bdbbdbd665ea94c41259594e74566fff411478dc7fcb
- languageName: node
- linkType: hard
-
-"parse5@npm:^7.0.0, parse5@npm:^7.1.2, parse5@npm:^7.2.1":
- version: 7.2.1
- resolution: "parse5@npm:7.2.1"
- dependencies:
- entities: "npm:^4.5.0"
- checksum: 10c0/829d37a0c709215a887e410a7118d754f8e1afd7edb529db95bc7bbf8045fb0266a7b67801331d8e8d9d073ea75793624ec27ce9ff3b96862c3b9008f4d68e80
- languageName: node
- linkType: hard
-
-"pascal-case@npm:^3.1.2":
- version: 3.1.2
- resolution: "pascal-case@npm:3.1.2"
- dependencies:
- no-case: "npm:^3.0.4"
- tslib: "npm:^2.0.3"
- checksum: 10c0/05ff7c344809fd272fc5030ae0ee3da8e4e63f36d47a1e0a4855ca59736254192c5a27b5822ed4bae96e54048eec5f6907713cfcfff7cdf7a464eaf7490786d8
- languageName: node
- linkType: hard
-
-"path-browserify@npm:^1.0.1":
- version: 1.0.1
- resolution: "path-browserify@npm:1.0.1"
- checksum: 10c0/8b8c3fd5c66bd340272180590ae4ff139769e9ab79522e2eb82e3d571a89b8117c04147f65ad066dccfb42fcad902e5b7d794b3d35e0fd840491a8ddbedf8c66
- languageName: node
- linkType: hard
-
-"path-exists@npm:^4.0.0":
- version: 4.0.0
- resolution: "path-exists@npm:4.0.0"
- checksum: 10c0/8c0bd3f5238188197dc78dced15207a4716c51cc4e3624c44fc97acf69558f5ebb9a2afff486fe1b4ee148e0c133e96c5e11a9aa5c48a3006e3467da070e5e1b
- languageName: node
- linkType: hard
-
-"path-key@npm:^3.1.0":
- version: 3.1.1
- resolution: "path-key@npm:3.1.1"
- checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c
- languageName: node
- linkType: hard
-
-"path-parse@npm:^1.0.7":
- version: 1.0.7
- resolution: "path-parse@npm:1.0.7"
- checksum: 10c0/11ce261f9d294cc7a58d6a574b7f1b935842355ec66fba3c3fd79e0f036462eaf07d0aa95bb74ff432f9afef97ce1926c720988c6a7451d8a584930ae7de86e1
- languageName: node
- linkType: hard
-
-"path-posix@npm:^1.0.0":
- version: 1.0.0
- resolution: "path-posix@npm:1.0.0"
- checksum: 10c0/00fbadb9b60fb513f316f92e0b5535e55d832f4f20067586d151f6d7bed57178dec31b1a0f514694500a9a1f2b69798c066a3cdcf0b0289cfee63e39845bfd02
- languageName: node
- linkType: hard
-
-"path-scurry@npm:^1.11.1":
- version: 1.11.1
- resolution: "path-scurry@npm:1.11.1"
- dependencies:
- lru-cache: "npm:^10.2.0"
- minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0"
- checksum: 10c0/32a13711a2a505616ae1cc1b5076801e453e7aae6ac40ab55b388bb91b9d0547a52f5aaceff710ea400205f18691120d4431e520afbe4266b836fadede15872d
- languageName: node
- linkType: hard
-
-"path-type@npm:^4.0.0":
- version: 4.0.0
- resolution: "path-type@npm:4.0.0"
- checksum: 10c0/666f6973f332f27581371efaf303fd6c272cc43c2057b37aa99e3643158c7e4b2626549555d88626e99ea9e046f82f32e41bbde5f1508547e9a11b149b52387c
- languageName: node
- linkType: hard
-
-"pathe@npm:^0.2.0":
- version: 0.2.0
- resolution: "pathe@npm:0.2.0"
- checksum: 10c0/4ea3bc19d421926d1e6b767ca5dc62fd8d053791f5f93b806ef64ea9c7c21071385429e12c0b1838129ae53904bfc6a243ac6890d3189fa5f45c417db49507cf
- languageName: node
- linkType: hard
-
-"pathe@npm:^2.0.3":
- version: 2.0.3
- resolution: "pathe@npm:2.0.3"
- checksum: 10c0/c118dc5a8b5c4166011b2b70608762e260085180bb9e33e80a50dcdb1e78c010b1624f4280c492c92b05fc276715a4c357d1f9edc570f8f1b3d90b6839ebaca1
- languageName: node
- linkType: hard
-
-"pbkdf2@npm:^3.1.2, pbkdf2@npm:^3.1.5":
- version: 3.1.5
- resolution: "pbkdf2@npm:3.1.5"
- dependencies:
- create-hash: "npm:^1.2.0"
- create-hmac: "npm:^1.1.7"
- ripemd160: "npm:^2.0.3"
- safe-buffer: "npm:^5.2.1"
- sha.js: "npm:^2.4.12"
- to-buffer: "npm:^1.2.1"
- checksum: 10c0/ea42e8695e49417eefabb19a08ab19a602cc6cc72d2df3f109c39309600230dee3083a6f678d5d42fe035d6ae780038b80ace0e68f9792ee2839bf081fe386f3
- languageName: node
- linkType: hard
-
-"picocolors@npm:1.1.1, picocolors@npm:^1.0.0, picocolors@npm:^1.1.1":
- version: 1.1.1
- resolution: "picocolors@npm:1.1.1"
- checksum: 10c0/e2e3e8170ab9d7c7421969adaa7e1b31434f789afb9b3f115f6b96d91945041ac3ceb02e9ec6fe6510ff036bcc0bf91e69a1772edc0b707e12b19c0f2d6bcf58
- languageName: node
- linkType: hard
-
-"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1, picomatch@npm:^2.2.2, picomatch@npm:^2.3.1":
- version: 2.3.1
- resolution: "picomatch@npm:2.3.1"
- checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be
- languageName: node
- linkType: hard
-
-"picomatch@npm:^4.0.1, picomatch@npm:^4.0.2":
- version: 4.0.2
- resolution: "picomatch@npm:4.0.2"
- checksum: 10c0/7c51f3ad2bb42c776f49ebf964c644958158be30d0a510efd5a395e8d49cb5acfed5b82c0c5b365523ce18e6ab85013c9ebe574f60305892ec3fa8eee8304ccc
- languageName: node
- linkType: hard
-
-"picomatch@npm:^4.0.3":
- version: 4.0.3
- resolution: "picomatch@npm:4.0.3"
- checksum: 10c0/9582c951e95eebee5434f59e426cddd228a7b97a0161a375aed4be244bd3fe8e3a31b846808ea14ef2c8a2527a6eeab7b3946a67d5979e81694654f939473ae2
- languageName: node
- linkType: hard
-
-"pkg-dir@npm:^5.0.0":
- version: 5.0.0
- resolution: "pkg-dir@npm:5.0.0"
- dependencies:
- find-up: "npm:^5.0.0"
- checksum: 10c0/793a496d685dc55bbbdbbb22d884535c3b29241e48e3e8d37e448113a71b9e42f5481a61fdc672d7322de12fbb2c584dd3a68bf89b18fffce5c48a390f911bc5
- languageName: node
- linkType: hard
-
-"playwright-core@npm:1.58.2":
- version: 1.58.2
- resolution: "playwright-core@npm:1.58.2"
- bin:
- playwright-core: cli.js
- checksum: 10c0/5aa15b2b764e6ffe738293a09081a6f7023847a0dbf4cd05fe10eed2e25450d321baf7482f938f2d2eb330291e197fa23e57b29a5b552b89927ceb791266225b
- languageName: node
- linkType: hard
-
-"playwright@npm:1.58.2":
- version: 1.58.2
- resolution: "playwright@npm:1.58.2"
- dependencies:
- fsevents: "npm:2.3.2"
- playwright-core: "npm:1.58.2"
- dependenciesMeta:
- fsevents:
- optional: true
- bin:
- playwright: cli.js
- checksum: 10c0/d060d9b7cc124bd8b5dffebaab5e84f6b34654a553758fe7b19cc598dfbee93f6ecfbdc1832b40a6380ae04eade86ef3285ba03aa0b136799e83402246dc0727
- languageName: node
- linkType: hard
-
-"pluralize@npm:^8.0.0":
- version: 8.0.0
- resolution: "pluralize@npm:8.0.0"
- checksum: 10c0/2044cfc34b2e8c88b73379ea4a36fc577db04f651c2909041b054c981cd863dd5373ebd030123ab058d194ae615d3a97cfdac653991e499d10caf592e8b3dc33
- languageName: node
- linkType: hard
-
-"pngjs@npm:^5.0.0":
- version: 5.0.0
- resolution: "pngjs@npm:5.0.0"
- checksum: 10c0/c074d8a94fb75e2defa8021e85356bf7849688af7d8ce9995b7394d57cd1a777b272cfb7c4bce08b8d10e71e708e7717c81fd553a413f21840c548ec9d4893c6
- languageName: node
- linkType: hard
-
-"possible-typed-array-names@npm:^1.0.0":
- version: 1.0.0
- resolution: "possible-typed-array-names@npm:1.0.0"
- checksum: 10c0/d9aa22d31f4f7680e20269db76791b41c3a32c01a373e25f8a4813b4d45f7456bfc2b6d68f752dc4aab0e0bb0721cb3d76fb678c9101cb7a16316664bc2c73fd
- languageName: node
- linkType: hard
-
-"postcss-attribute-case-insensitive@npm:^7.0.1":
- version: 7.0.1
- resolution: "postcss-attribute-case-insensitive@npm:7.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/48945abe2024e2d2e4c37d30b8c1aaf37af720f24f6a996f7ea7e7ed33621f5c22cf247ed22028c0c922de040c58c0802729bc39b903cb1693f4b63c0b49da34
- languageName: node
- linkType: hard
-
-"postcss-clamp@npm:^4.1.0":
- version: 4.1.0
- resolution: "postcss-clamp@npm:4.1.0"
- dependencies:
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4.6
- checksum: 10c0/701261026b38a4c27b3c3711635fac96005f36d3270adb76dbdb1eebc950fc841db45283ee66068a7121565592e9d7967d5534e15b6e4dd266afcabf9eafa905
- languageName: node
- linkType: hard
-
-"postcss-color-functional-notation@npm:^7.0.12":
- version: 7.0.12
- resolution: "postcss-color-functional-notation@npm:7.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/dc80ba1a956ae9b396596bda72d9bdb92de96874378a38ba4e2177ffa35339dc76d894920bb013b6f10c9b75cfb41778e09956a438c2e9ea41b684f766c55f4a
- languageName: node
- linkType: hard
-
-"postcss-color-hex-alpha@npm:^10.0.0":
- version: 10.0.0
- resolution: "postcss-color-hex-alpha@npm:10.0.0"
- dependencies:
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/8a6dcb27403d04b55d6de88bf3074622bcea537fc4436bbcb346e92289c4d17059444e2e6c3554c325e7a777bb4cdc711e764a83123b4000aec211052e957d5b
- languageName: node
- linkType: hard
-
-"postcss-color-rebeccapurple@npm:^10.0.0":
- version: 10.0.0
- resolution: "postcss-color-rebeccapurple@npm:10.0.0"
- dependencies:
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/308e33f76f2b48c1c2121d4502fc053e869f3415898de7d30314353df680e79b37497e7b628e3447edc1049091da3672f7d891e45604f238598e846e06b893ed
- languageName: node
- linkType: hard
-
-"postcss-custom-media@npm:^11.0.6":
- version: 11.0.6
- resolution: "postcss-custom-media@npm:11.0.6"
- dependencies:
- "@csstools/cascade-layer-name-parser": "npm:^2.0.5"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/media-query-list-parser": "npm:^4.0.3"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/62dcb2858fd490d90aab32062621d58892a7b2a54948ee63af81a2cd61807a11815d28d4ef6bc800c5e142ac73098f7e56822c7cc63192eb20d5b16071543a73
- languageName: node
- linkType: hard
-
-"postcss-custom-properties@npm:^14.0.6":
- version: 14.0.6
- resolution: "postcss-custom-properties@npm:14.0.6"
- dependencies:
- "@csstools/cascade-layer-name-parser": "npm:^2.0.5"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/0eeef77bc713551f5cb8fa5982d24da4e854075f3af020f1c94366c47a23a4cc225ebfecc978bdb17f00ee0bdee9d2c784e0d01adc64a447321e408abbe2c83b
- languageName: node
- linkType: hard
-
-"postcss-custom-selectors@npm:^8.0.5":
- version: 8.0.5
- resolution: "postcss-custom-selectors@npm:8.0.5"
- dependencies:
- "@csstools/cascade-layer-name-parser": "npm:^2.0.5"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/bd8f2f85bbec4bd56ff408cb699d9fe649e2af0db82d5752eee05481ae522f06f5a47950ca22fcb4c8601071c03346df67cf20b0b0bcade32ce58d07ebaf9b32
- languageName: node
- linkType: hard
-
-"postcss-dir-pseudo-class@npm:^9.0.1":
- version: 9.0.1
- resolution: "postcss-dir-pseudo-class@npm:9.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/da9d3387648c5c3161a653d354c8f3e70a299108df3977e8aa65cf10793e4dd58a2711b3426cd63716245b13584ca8d95adcd6e10e3c9adbc61d08743e2d8690
- languageName: node
- linkType: hard
-
-"postcss-double-position-gradients@npm:^6.0.4":
- version: 6.0.4
- resolution: "postcss-double-position-gradients@npm:6.0.4"
- dependencies:
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/6dbbe7a3855e84a9319df434e210225f6dfa7262e5959611355f1769c2c9d30d37a19737712f20eac6354876fff4ba556d8d0b12a90c78d8ab97c9a8da534a7c
- languageName: node
- linkType: hard
-
-"postcss-focus-visible@npm:^10.0.1":
- version: 10.0.1
- resolution: "postcss-focus-visible@npm:10.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/c5ecc8536a708a49a99d0abd68a88a160664e6c832c808db8edd9f0221e7017a258daa87e49daf2cb098cb037005d46cf492403c8c9c92ad8835d30adaccf665
- languageName: node
- linkType: hard
-
-"postcss-focus-within@npm:^9.0.1":
- version: 9.0.1
- resolution: "postcss-focus-within@npm:9.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/d6ab49d2a7f33485a9e137dc77ec92c5619a3ec92e1e672734fc604853ff1f3c0c189085c12461614be4fcb03ea0347d91791a45986a18d50b5228d161eda57a
- languageName: node
- linkType: hard
-
-"postcss-font-variant@npm:^5.0.0":
- version: 5.0.0
- resolution: "postcss-font-variant@npm:5.0.0"
- peerDependencies:
- postcss: ^8.1.0
- checksum: 10c0/ccc96460cf6a52b5439c26c9a5ea0589882e46161e3c2331d4353de7574448f5feef667d1a68f7f39b9fe3ee75d85957383ae82bbfcf87c3162c7345df4a444e
- languageName: node
- linkType: hard
-
-"postcss-gap-properties@npm:^6.0.0":
- version: 6.0.0
- resolution: "postcss-gap-properties@npm:6.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/4e07e0d3927d0e65d67eaf047ac39e08d39cb1bf74e16e10c7df7f0d01b184a77ea59f63fd5691b5ed6df159970b972db28cb784d883e26e981137696460897d
- languageName: node
- linkType: hard
-
-"postcss-image-set-function@npm:^7.0.0":
- version: 7.0.0
- resolution: "postcss-image-set-function@npm:7.0.0"
- dependencies:
- "@csstools/utilities": "npm:^2.0.0"
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/913fd9492f00122aa0c2550fb0d72130428cbe1e6465bc65e8fe71e9deb10ac0c01d7caceb68b560da759139e8cbc6c90ed22dfe6cf34949af49bb86bcbf4d3a
- languageName: node
- linkType: hard
-
-"postcss-lab-function@npm:^7.0.12":
- version: 7.0.12
- resolution: "postcss-lab-function@npm:7.0.12"
- dependencies:
- "@csstools/css-color-parser": "npm:^3.1.0"
- "@csstools/css-parser-algorithms": "npm:^3.0.5"
- "@csstools/css-tokenizer": "npm:^3.0.4"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/utilities": "npm:^2.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/de39b59da3b97c18d055d81fba68993e93253184ed76f103c888273584f868c551d047814dd54445980a1bdc5987e8f8af141383d84ecc641e5a6ee7bd901095
- languageName: node
- linkType: hard
-
-"postcss-logical@npm:^8.1.0":
- version: 8.1.0
- resolution: "postcss-logical@npm:8.1.0"
- dependencies:
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/0e2e9e901d8a550db7f682d46b1f7e4f363c1ada061dc8e4548e2b563c5e39f3684a2d7c3f11fe061188782bca37874e34967fc6179fa6d98a49ff66a0076d27
- languageName: node
- linkType: hard
-
-"postcss-nesting@npm:^13.0.2":
- version: 13.0.2
- resolution: "postcss-nesting@npm:13.0.2"
- dependencies:
- "@csstools/selector-resolve-nested": "npm:^3.1.0"
- "@csstools/selector-specificity": "npm:^5.0.0"
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/bfa0578b3b686c6374f5a7b2f6ef955cb7e13400de95a919975a982ae43c1e25db37385618f210715ff15393dc7ff8c26c7b156f06b8fb3118a426099cf7f1f2
- languageName: node
- linkType: hard
-
-"postcss-opacity-percentage@npm:^3.0.0":
- version: 3.0.0
- resolution: "postcss-opacity-percentage@npm:3.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/15c7d66036fa966d265c8737196646b3f93deb83d4eea0b17ed5033460599afc31d3a989345e4d7c472963b2a2bb75c83d06979d5d30d6a60fcc7f74cb6d8d40
- languageName: node
- linkType: hard
-
-"postcss-overflow-shorthand@npm:^6.0.0":
- version: 6.0.0
- resolution: "postcss-overflow-shorthand@npm:6.0.0"
- dependencies:
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/6598321b2ed0b68461135395bba9c7f76a4672617770df1e8487f459bc975f4ded6c3d37b6f72a44f4f77f7b6789e0c6f927e66dbbf1bcde1537167dbea39968
- languageName: node
- linkType: hard
-
-"postcss-page-break@npm:^3.0.4":
- version: 3.0.4
- resolution: "postcss-page-break@npm:3.0.4"
- peerDependencies:
- postcss: ^8
- checksum: 10c0/eaaf4d8922b35f2acd637eb059f7e2510b24d65eb8f31424799dd5a98447b6ef010b41880c26e78f818e00f842295638ec75f89d5d489067f53e3dd3db74a00f
- languageName: node
- linkType: hard
-
-"postcss-place@npm:^10.0.0":
- version: 10.0.0
- resolution: "postcss-place@npm:10.0.0"
- dependencies:
- postcss-value-parser: "npm:^4.2.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/ebb13deaac7648ba6042622375a31f78fbcc5209b7d196e478debbdf94525963fe621c932f4737a5b6b3d487af3b5ed6d059ed6193fdcbff6d3d5b150886ccc1
- languageName: node
- linkType: hard
-
-"postcss-preset-env@npm:^10.0.0":
- version: 10.6.1
- resolution: "postcss-preset-env@npm:10.6.1"
- dependencies:
- "@csstools/postcss-alpha-function": "npm:^1.0.1"
- "@csstools/postcss-cascade-layers": "npm:^5.0.2"
- "@csstools/postcss-color-function": "npm:^4.0.12"
- "@csstools/postcss-color-function-display-p3-linear": "npm:^1.0.1"
- "@csstools/postcss-color-mix-function": "npm:^3.0.12"
- "@csstools/postcss-color-mix-variadic-function-arguments": "npm:^1.0.2"
- "@csstools/postcss-content-alt-text": "npm:^2.0.8"
- "@csstools/postcss-contrast-color-function": "npm:^2.0.12"
- "@csstools/postcss-exponential-functions": "npm:^2.0.9"
- "@csstools/postcss-font-format-keywords": "npm:^4.0.0"
- "@csstools/postcss-gamut-mapping": "npm:^2.0.11"
- "@csstools/postcss-gradients-interpolation-method": "npm:^5.0.12"
- "@csstools/postcss-hwb-function": "npm:^4.0.12"
- "@csstools/postcss-ic-unit": "npm:^4.0.4"
- "@csstools/postcss-initial": "npm:^2.0.1"
- "@csstools/postcss-is-pseudo-class": "npm:^5.0.3"
- "@csstools/postcss-light-dark-function": "npm:^2.0.11"
- "@csstools/postcss-logical-float-and-clear": "npm:^3.0.0"
- "@csstools/postcss-logical-overflow": "npm:^2.0.0"
- "@csstools/postcss-logical-overscroll-behavior": "npm:^2.0.0"
- "@csstools/postcss-logical-resize": "npm:^3.0.0"
- "@csstools/postcss-logical-viewport-units": "npm:^3.0.4"
- "@csstools/postcss-media-minmax": "npm:^2.0.9"
- "@csstools/postcss-media-queries-aspect-ratio-number-values": "npm:^3.0.5"
- "@csstools/postcss-nested-calc": "npm:^4.0.0"
- "@csstools/postcss-normalize-display-values": "npm:^4.0.1"
- "@csstools/postcss-oklab-function": "npm:^4.0.12"
- "@csstools/postcss-position-area-property": "npm:^1.0.0"
- "@csstools/postcss-progressive-custom-properties": "npm:^4.2.1"
- "@csstools/postcss-property-rule-prelude-list": "npm:^1.0.0"
- "@csstools/postcss-random-function": "npm:^2.0.1"
- "@csstools/postcss-relative-color-syntax": "npm:^3.0.12"
- "@csstools/postcss-scope-pseudo-class": "npm:^4.0.1"
- "@csstools/postcss-sign-functions": "npm:^1.1.4"
- "@csstools/postcss-stepped-value-functions": "npm:^4.0.9"
- "@csstools/postcss-syntax-descriptor-syntax-production": "npm:^1.0.1"
- "@csstools/postcss-system-ui-font-family": "npm:^1.0.0"
- "@csstools/postcss-text-decoration-shorthand": "npm:^4.0.3"
- "@csstools/postcss-trigonometric-functions": "npm:^4.0.9"
- "@csstools/postcss-unset-value": "npm:^4.0.0"
- autoprefixer: "npm:^10.4.23"
- browserslist: "npm:^4.28.1"
- css-blank-pseudo: "npm:^7.0.1"
- css-has-pseudo: "npm:^7.0.3"
- css-prefers-color-scheme: "npm:^10.0.0"
- cssdb: "npm:^8.6.0"
- postcss-attribute-case-insensitive: "npm:^7.0.1"
- postcss-clamp: "npm:^4.1.0"
- postcss-color-functional-notation: "npm:^7.0.12"
- postcss-color-hex-alpha: "npm:^10.0.0"
- postcss-color-rebeccapurple: "npm:^10.0.0"
- postcss-custom-media: "npm:^11.0.6"
- postcss-custom-properties: "npm:^14.0.6"
- postcss-custom-selectors: "npm:^8.0.5"
- postcss-dir-pseudo-class: "npm:^9.0.1"
- postcss-double-position-gradients: "npm:^6.0.4"
- postcss-focus-visible: "npm:^10.0.1"
- postcss-focus-within: "npm:^9.0.1"
- postcss-font-variant: "npm:^5.0.0"
- postcss-gap-properties: "npm:^6.0.0"
- postcss-image-set-function: "npm:^7.0.0"
- postcss-lab-function: "npm:^7.0.12"
- postcss-logical: "npm:^8.1.0"
- postcss-nesting: "npm:^13.0.2"
- postcss-opacity-percentage: "npm:^3.0.0"
- postcss-overflow-shorthand: "npm:^6.0.0"
- postcss-page-break: "npm:^3.0.4"
- postcss-place: "npm:^10.0.0"
- postcss-pseudo-class-any-link: "npm:^10.0.1"
- postcss-replace-overflow-wrap: "npm:^4.0.0"
- postcss-selector-not: "npm:^8.0.1"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/e8da96f208918ebc0dc9acc8ba8961a92569f1d130b29abe25adaf7dbd56ef29fc6f778b75964c80fe7f3469012c763ea9447e5c2f559a002a155bc0462cce35
- languageName: node
- linkType: hard
-
-"postcss-pseudo-class-any-link@npm:^10.0.1":
- version: 10.0.1
- resolution: "postcss-pseudo-class-any-link@npm:10.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/95e883996e87baf14fc09d25f9a763a2e9d599eb3b9c6b736e83a8c3d0b55841bcb886bccdf51b5b7fefc128cbd0187ad8841f59878f85bd1613642e592d7673
- languageName: node
- linkType: hard
-
-"postcss-replace-overflow-wrap@npm:^4.0.0":
- version: 4.0.0
- resolution: "postcss-replace-overflow-wrap@npm:4.0.0"
- peerDependencies:
- postcss: ^8.0.3
- checksum: 10c0/451361b714528cd3632951256ef073769cde725a46cda642a6864f666fb144921fa55e614aec1bcf5946f37d6ffdcca3b932b76f3d997c07b076e8db152b128d
- languageName: node
- linkType: hard
-
-"postcss-selector-not@npm:^8.0.1":
- version: 8.0.1
- resolution: "postcss-selector-not@npm:8.0.1"
- dependencies:
- postcss-selector-parser: "npm:^7.0.0"
- peerDependencies:
- postcss: ^8.4
- checksum: 10c0/491ea3dcc421cd90135be786078521605e2062fb93624ea8813cfd5ba0d35143f931e2e608d5f20effd5ea7d3f4786d2afea2afa42d117779a0288e135f132b6
- languageName: node
- linkType: hard
-
-"postcss-selector-parser@npm:^7.0.0":
- version: 7.1.0
- resolution: "postcss-selector-parser@npm:7.1.0"
- dependencies:
- cssesc: "npm:^3.0.0"
- util-deprecate: "npm:^1.0.2"
- checksum: 10c0/0fef257cfd1c0fe93c18a3f8a6e739b4438b527054fd77e9a62730a89b2d0ded1b59314a7e4aaa55bc256204f40830fecd2eb50f20f8cb7ab3a10b52aa06c8aa
- languageName: node
- linkType: hard
-
-"postcss-value-parser@npm:^4.2.0":
- version: 4.2.0
- resolution: "postcss-value-parser@npm:4.2.0"
- checksum: 10c0/f4142a4f56565f77c1831168e04e3effd9ffcc5aebaf0f538eee4b2d465adfd4b85a44257bb48418202a63806a7da7fe9f56c330aebb3cac898e46b4cbf49161
- languageName: node
- linkType: hard
-
-"postcss@npm:^8.4.41, postcss@npm:^8.5.6":
- version: 8.5.6
- resolution: "postcss@npm:8.5.6"
- dependencies:
- nanoid: "npm:^3.3.11"
- picocolors: "npm:^1.1.1"
- source-map-js: "npm:^1.2.1"
- checksum: 10c0/5127cc7c91ed7a133a1b7318012d8bfa112da9ef092dddf369ae699a1f10ebbd89b1b9f25f3228795b84585c72aabd5ced5fc11f2ba467eedf7b081a66fad024
- languageName: node
- linkType: hard
-
-"posthog-js@npm:1.160.3":
- version: 1.160.3
- resolution: "posthog-js@npm:1.160.3"
- dependencies:
- fflate: "npm:^0.4.8"
- preact: "npm:^10.19.3"
- web-vitals: "npm:^4.0.1"
- checksum: 10c0/88865776ee8fbdf71ae045181a8bdfc811bdc57cb66daae2eda9605102d4ec05bd41f85479ab23ae59e84c24a8e8ff2600b238033cee6fe18701c24a3e3ee712
- languageName: node
- linkType: hard
-
-"preact@npm:^10.19.3":
- version: 10.24.1
- resolution: "preact@npm:10.24.1"
- checksum: 10c0/f9bc8b2f88d340f1b8f854208889244059c46916449b8f8f2174fcacbc0904c445c5870896fb0cfeaf442eeade975857e8e03f0785135c41d63cd32d9414c9c6
- languageName: node
- linkType: hard
-
-"prelude-ls@npm:^1.2.1":
- version: 1.2.1
- resolution: "prelude-ls@npm:1.2.1"
- checksum: 10c0/b00d617431e7886c520a6f498a2e14c75ec58f6d93ba48c3b639cf241b54232d90daa05d83a9e9b9fef6baa63cb7e1e4602c2372fea5bc169668401eb127d0cd
- languageName: node
- linkType: hard
-
-"prettier@npm:^3.0.0":
- version: 3.8.1
- resolution: "prettier@npm:3.8.1"
- bin:
- prettier: bin/prettier.cjs
- checksum: 10c0/33169b594009e48f570471271be7eac7cdcf88a209eed39ac3b8d6d78984039bfa9132f82b7e6ba3b06711f3bfe0222a62a1bfb87c43f50c25a83df1b78a2c42
- languageName: node
- linkType: hard
-
-"pretty-format@npm:^27.0.2":
- version: 27.5.1
- resolution: "pretty-format@npm:27.5.1"
- dependencies:
- ansi-regex: "npm:^5.0.1"
- ansi-styles: "npm:^5.0.0"
- react-is: "npm:^17.0.1"
- checksum: 10c0/0cbda1031aa30c659e10921fa94e0dd3f903ecbbbe7184a729ad66f2b6e7f17891e8c7d7654c458fa4ccb1a411ffb695b4f17bbcd3fe075fabe181027c4040ed
- languageName: node
- linkType: hard
-
-"proc-log@npm:^5.0.0":
- version: 5.0.0
- resolution: "proc-log@npm:5.0.0"
- checksum: 10c0/bbe5edb944b0ad63387a1d5b1911ae93e05ce8d0f60de1035b218cdcceedfe39dbd2c697853355b70f1a090f8f58fe90da487c85216bf9671f9499d1a897e9e3
- languageName: node
- linkType: hard
-
-"process-nextick-args@npm:~2.0.0":
- version: 2.0.1
- resolution: "process-nextick-args@npm:2.0.1"
- checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367
- languageName: node
- linkType: hard
-
-"process@npm:^0.11.10":
- version: 0.11.10
- resolution: "process@npm:0.11.10"
- checksum: 10c0/40c3ce4b7e6d4b8c3355479df77aeed46f81b279818ccdc500124e6a5ab882c0cc81ff7ea16384873a95a74c4570b01b120f287abbdd4c877931460eca6084b3
- languageName: node
- linkType: hard
-
-"progress@npm:^2.0.3":
- version: 2.0.3
- resolution: "progress@npm:2.0.3"
- checksum: 10c0/1697e07cb1068055dbe9fe858d242368ff5d2073639e652b75a7eb1f2a1a8d4afd404d719de23c7b48481a6aa0040686310e2dac2f53d776daa2176d3f96369c
- languageName: node
- linkType: hard
-
-"promise-map-series@npm:^0.3.0":
- version: 0.3.0
- resolution: "promise-map-series@npm:0.3.0"
- checksum: 10c0/dc69dc6efc26f0325a42df873552fc5d6007a4738ec23af8e84432e581ff77d4b26345fe028faba5a8f153c8ba47a37ba33a58e329c6d04cafb3c397fbc09aab
- languageName: node
- linkType: hard
-
-"promise-retry@npm:^2.0.1":
- version: 2.0.1
- resolution: "promise-retry@npm:2.0.1"
- dependencies:
- err-code: "npm:^2.0.2"
- retry: "npm:^0.12.0"
- checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96
- languageName: node
- linkType: hard
-
-"prompts@npm:~2.4.2":
- version: 2.4.2
- resolution: "prompts@npm:2.4.2"
- dependencies:
- kleur: "npm:^3.0.3"
- sisteransi: "npm:^1.0.5"
- checksum: 10c0/16f1ac2977b19fe2cf53f8411cc98db7a3c8b115c479b2ca5c82b5527cd937aa405fa04f9a5960abeb9daef53191b53b4d13e35c1f5d50e8718c76917c5f1ea4
- languageName: node
- linkType: hard
-
-"prop-types@npm:^15.8.1":
- version: 15.8.1
- resolution: "prop-types@npm:15.8.1"
- dependencies:
- loose-envify: "npm:^1.4.0"
- object-assign: "npm:^4.1.1"
- react-is: "npm:^16.13.1"
- checksum: 10c0/59ece7ca2fb9838031d73a48d4becb9a7cc1ed10e610517c7d8f19a1e02fa47f7c27d557d8a5702bec3cfeccddc853579832b43f449e54635803f277b1c78077
- languageName: node
- linkType: hard
-
-"proxy-from-env@npm:^1.1.0":
- version: 1.1.0
- resolution: "proxy-from-env@npm:1.1.0"
- checksum: 10c0/fe7dd8b1bdbbbea18d1459107729c3e4a2243ca870d26d34c2c1bcd3e4425b7bcc5112362df2d93cc7fb9746f6142b5e272fd1cc5c86ddf8580175186f6ad42b
- languageName: node
- linkType: hard
-
-"public-encrypt@npm:^4.0.3":
- version: 4.0.3
- resolution: "public-encrypt@npm:4.0.3"
- dependencies:
- bn.js: "npm:^4.1.0"
- browserify-rsa: "npm:^4.0.0"
- create-hash: "npm:^1.1.0"
- parse-asn1: "npm:^5.0.0"
- randombytes: "npm:^2.0.1"
- safe-buffer: "npm:^5.1.2"
- checksum: 10c0/6c2cc19fbb554449e47f2175065d6b32f828f9b3badbee4c76585ac28ae8641aafb9bb107afc430c33c5edd6b05dbe318df4f7d6d7712b1093407b11c4280700
- languageName: node
- linkType: hard
-
-"punycode@npm:^1.4.1":
- version: 1.4.1
- resolution: "punycode@npm:1.4.1"
- checksum: 10c0/354b743320518aef36f77013be6e15da4db24c2b4f62c5f1eb0529a6ed02fbaf1cb52925785f6ab85a962f2b590d9cd5ad730b70da72b5f180e2556b8bd3ca08
- languageName: node
- linkType: hard
-
-"punycode@npm:^2.1.0, punycode@npm:^2.3.1":
- version: 2.3.1
- resolution: "punycode@npm:2.3.1"
- checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9
- languageName: node
- linkType: hard
-
-"qrcode@npm:^1.5.4":
- version: 1.5.4
- resolution: "qrcode@npm:1.5.4"
- dependencies:
- dijkstrajs: "npm:^1.0.1"
- pngjs: "npm:^5.0.0"
- yargs: "npm:^15.3.1"
- bin:
- qrcode: bin/qrcode
- checksum: 10c0/ae1d57c9cff6099639a590b432c71b15e3bd3905ce4353e6d00c95dee6bb769a8f773f6a7575ecc1b8ed476bf79c5138a4a65cb380c682de3b926d7205d34d10
- languageName: node
- linkType: hard
-
-"qs@npm:^6.14.1":
- version: 6.15.0
- resolution: "qs@npm:6.15.0"
- dependencies:
- side-channel: "npm:^1.1.0"
- checksum: 10c0/ff341078a78a991d8a48b4524d52949211447b4b1ad907f489cac0770cbc346a28e47304455c0320e5fb000f8762d64b03331e3b71865f663bf351bcba8cdb4b
- languageName: node
- linkType: hard
-
-"querystring-es3@npm:^0.2.1":
- version: 0.2.1
- resolution: "querystring-es3@npm:0.2.1"
- checksum: 10c0/476938c1adb45c141f024fccd2ffd919a3746e79ed444d00e670aad68532977b793889648980e7ca7ff5ffc7bfece623118d0fbadcaf217495eeb7059ae51580
- languageName: node
- linkType: hard
-
-"queue-microtask@npm:^1.2.2":
- version: 1.2.3
- resolution: "queue-microtask@npm:1.2.3"
- checksum: 10c0/900a93d3cdae3acd7d16f642c29a642aea32c2026446151f0778c62ac089d4b8e6c986811076e1ae180a694cedf077d453a11b58ff0a865629a4f82ab558e102
- languageName: node
- linkType: hard
-
-"quick-temp@npm:^0.1.8":
- version: 0.1.8
- resolution: "quick-temp@npm:0.1.8"
- dependencies:
- mktemp: "npm:~0.4.0"
- rimraf: "npm:^2.5.4"
- underscore.string: "npm:~3.3.4"
- checksum: 10c0/3e8277a2e37db8e101fdefd59dc62050681b46d82f0c617eb700e2ef54f1c4985eff79985a24ef61834fd4c758050dbecfec7f34ed7caa6717f96de03ed9063c
- languageName: node
- linkType: hard
-
-"randombytes@npm:^2.0.0, randombytes@npm:^2.0.1, randombytes@npm:^2.0.5, randombytes@npm:^2.1.0":
- version: 2.1.0
- resolution: "randombytes@npm:2.1.0"
- dependencies:
- safe-buffer: "npm:^5.1.0"
- checksum: 10c0/50395efda7a8c94f5dffab564f9ff89736064d32addf0cc7e8bf5e4166f09f8ded7a0849ca6c2d2a59478f7d90f78f20d8048bca3cdf8be09d8e8a10790388f3
- languageName: node
- linkType: hard
-
-"randomfill@npm:^1.0.4":
- version: 1.0.4
- resolution: "randomfill@npm:1.0.4"
- dependencies:
- randombytes: "npm:^2.0.5"
- safe-buffer: "npm:^5.1.0"
- checksum: 10c0/11aeed35515872e8f8a2edec306734e6b74c39c46653607f03c68385ab8030e2adcc4215f76b5e4598e028c4750d820afd5c65202527d831d2a5f207fe2bc87c
- languageName: node
- linkType: hard
-
-"react-dom@npm:19":
- version: 19.2.4
- resolution: "react-dom@npm:19.2.4"
- dependencies:
- scheduler: "npm:^0.27.0"
- peerDependencies:
- react: ^19.2.4
- checksum: 10c0/f0c63f1794dedb154136d4d0f59af00b41907f4859571c155940296808f4b94bf9c0c20633db75b5b2112ec13d8d7dd4f9bf57362ed48782f317b11d05a44f35
- languageName: node
- linkType: hard
-
-"react-i18next@npm:^16.0.0 <16.6.0":
- version: 16.5.4
- resolution: "react-i18next@npm:16.5.4"
- dependencies:
- "@babel/runtime": "npm:^7.28.4"
- html-parse-stringify: "npm:^3.0.1"
- use-sync-external-store: "npm:^1.6.0"
- peerDependencies:
- i18next: ">= 25.6.2"
- react: ">= 16.8.0"
- typescript: ^5
- peerDependenciesMeta:
- react-dom:
- optional: true
- react-native:
- optional: true
- typescript:
- optional: true
- checksum: 10c0/41d0b76873addfa3abe0c6b8a10a796e01f205f3636bc2d090d0078b42222f2949c4303f18d7a80cc26cf1298918cb6220d96e39ae2b8644abfdbec3bb504b37
- languageName: node
- linkType: hard
-
-"react-is@npm:^16.13.1, react-is@npm:^16.7.0":
- version: 16.13.1
- resolution: "react-is@npm:16.13.1"
- checksum: 10c0/33977da7a5f1a287936a0c85639fec6ca74f4f15ef1e59a6bc20338fc73dc69555381e211f7a3529b8150a1f71e4225525b41b60b52965bda53ce7d47377ada1
- languageName: node
- linkType: hard
-
-"react-is@npm:^17.0.1":
- version: 17.0.2
- resolution: "react-is@npm:17.0.2"
- checksum: 10c0/2bdb6b93fbb1820b024b496042cce405c57e2f85e777c9aabd55f9b26d145408f9f74f5934676ffdc46f3dcff656d78413a6e43968e7b3f92eea35b3052e9053
- languageName: node
- linkType: hard
-
-"react-refresh@npm:^0.17.0":
- version: 0.17.0
- resolution: "react-refresh@npm:0.17.0"
- checksum: 10c0/002cba940384c9930008c0bce26cac97a9d5682bc623112c2268ba0c155127d9c178a9a5cc2212d560088d60dfd503edd808669a25f9b377f316a32361d0b23c
- languageName: node
- linkType: hard
-
-"react-remove-scroll-bar@npm:^2.3.7":
- version: 2.3.8
- resolution: "react-remove-scroll-bar@npm:2.3.8"
- dependencies:
- react-style-singleton: "npm:^2.2.2"
- tslib: "npm:^2.0.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/9a0675c66cbb52c325bdbfaed80987a829c4504cefd8ff2dd3b6b3afc9a1500b8ec57b212e92c1fb654396d07bbe18830a8146fe77677d2a29ce40b5e1f78654
- languageName: node
- linkType: hard
-
-"react-remove-scroll@npm:^2.6.1":
- version: 2.6.2
- resolution: "react-remove-scroll@npm:2.6.2"
- dependencies:
- react-remove-scroll-bar: "npm:^2.3.7"
- react-style-singleton: "npm:^2.2.1"
- tslib: "npm:^2.1.0"
- use-callback-ref: "npm:^1.3.3"
- use-sidecar: "npm:^1.1.2"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/8273e3f67a460af84b3387c93459b33920d48be15091c5ea10e8c1c4f514ad41f71dad028ee13df25370e5de16cadf02697fe28adaacbdacdf8b57bbf03ee559
- languageName: node
- linkType: hard
-
-"react-remove-scroll@npm:^2.6.3":
- version: 2.6.3
- resolution: "react-remove-scroll@npm:2.6.3"
- dependencies:
- react-remove-scroll-bar: "npm:^2.3.7"
- react-style-singleton: "npm:^2.2.3"
- tslib: "npm:^2.1.0"
- use-callback-ref: "npm:^1.3.3"
- use-sidecar: "npm:^1.1.3"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/068e9704ff26816fffc4c8903e2c6c8df7291ee08615d7c1ab0cf8751f7080e2c5a5d78ef5d908b11b9cfc189f176d312e44cb02ea291ca0466d8283b479b438
- languageName: node
- linkType: hard
-
-"react-router-dom@npm:^7.0.0":
- version: 7.13.1
- resolution: "react-router-dom@npm:7.13.1"
- dependencies:
- react-router: "npm:7.13.1"
- peerDependencies:
- react: ">=18"
- react-dom: ">=18"
- checksum: 10c0/2b8ed9dc753f1f7be599a53a00900df04e2b4d1186b0a4d63004eebb2250cd78cd6837ff15fcada5f88d53ad127fff0d1de31468715dcd6dd79dad8cfa8414e9
- languageName: node
- linkType: hard
-
-"react-router@npm:7.13.1":
- version: 7.13.1
- resolution: "react-router@npm:7.13.1"
- dependencies:
- cookie: "npm:^1.0.1"
- set-cookie-parser: "npm:^2.6.0"
- peerDependencies:
- react: ">=18"
- react-dom: ">=18"
- peerDependenciesMeta:
- react-dom:
- optional: true
- checksum: 10c0/a64c645cede74251f21483fbfad740b36dc5133522d6f53f12317a873a22865fce659d4c2377d5e19c912f85c7b12b88224a2c70d8f70c082496b569cc4abc31
- languageName: node
- linkType: hard
-
-"react-style-singleton@npm:^2.2.1, react-style-singleton@npm:^2.2.2, react-style-singleton@npm:^2.2.3":
- version: 2.2.3
- resolution: "react-style-singleton@npm:2.2.3"
- dependencies:
- get-nonce: "npm:^1.0.0"
- tslib: "npm:^2.0.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/841938ff16d16a6b76895f4cb2e1fea957e5fe3b30febbf03a54892dae1c9153f2383e231dea0b3ba41192ad2f2849448fa859caccd288943bce32639e971bee
- languageName: node
- linkType: hard
-
-"react-use-measure@npm:^2.1.1":
- version: 2.1.7
- resolution: "react-use-measure@npm:2.1.7"
- peerDependencies:
- react: ">=16.13"
- react-dom: ">=16.13"
- peerDependenciesMeta:
- react-dom:
- optional: true
- checksum: 10c0/ff24130e6f95e853feb6892fb74af08dbc5aae3574b701169e3bc3adb392c3162f51a58ddfe39bb7337db13ae609bbec0bb51a9de8b5fae5420f9d17e1f8b542
- languageName: node
- linkType: hard
-
-"react@npm:19":
- version: 19.2.4
- resolution: "react@npm:19.2.4"
- checksum: 10c0/cd2c9ff67a720799cc3b38a516009986f7fc4cb8d3e15716c6211cf098d1357ee3e348ab05ad0600042bbb0fd888530ba92e329198c92eafa0994f5213396596
- languageName: node
- linkType: hard
-
-"read-pkg-up@npm:^7.0.1":
- version: 7.0.1
- resolution: "read-pkg-up@npm:7.0.1"
- dependencies:
- find-up: "npm:^4.1.0"
- read-pkg: "npm:^5.2.0"
- type-fest: "npm:^0.8.1"
- checksum: 10c0/82b3ac9fd7c6ca1bdc1d7253eb1091a98ff3d195ee0a45386582ce3e69f90266163c34121e6a0a02f1630073a6c0585f7880b3865efcae9c452fa667f02ca385
- languageName: node
- linkType: hard
-
-"read-pkg@npm:^5.2.0":
- version: 5.2.0
- resolution: "read-pkg@npm:5.2.0"
- dependencies:
- "@types/normalize-package-data": "npm:^2.4.0"
- normalize-package-data: "npm:^2.5.0"
- parse-json: "npm:^5.0.0"
- type-fest: "npm:^0.6.0"
- checksum: 10c0/b51a17d4b51418e777029e3a7694c9bd6c578a5ab99db544764a0b0f2c7c0f58f8a6bc101f86a6fceb8ba6d237d67c89acf6170f6b98695d0420ddc86cf109fb
- languageName: node
- linkType: hard
-
-"readable-stream@npm:^2.3.8, readable-stream@npm:~2.3.6":
- version: 2.3.8
- resolution: "readable-stream@npm:2.3.8"
- dependencies:
- core-util-is: "npm:~1.0.0"
- inherits: "npm:~2.0.3"
- isarray: "npm:~1.0.0"
- process-nextick-args: "npm:~2.0.0"
- safe-buffer: "npm:~5.1.1"
- string_decoder: "npm:~1.1.1"
- util-deprecate: "npm:~1.0.1"
- checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa
- languageName: node
- linkType: hard
-
-"readable-stream@npm:^3.4.0, readable-stream@npm:^3.5.0, readable-stream@npm:^3.6.0":
- version: 3.6.2
- resolution: "readable-stream@npm:3.6.2"
- dependencies:
- inherits: "npm:^2.0.3"
- string_decoder: "npm:^1.1.1"
- util-deprecate: "npm:^1.0.1"
- checksum: 10c0/e37be5c79c376fdd088a45fa31ea2e423e5d48854be7a22a58869b4e84d25047b193f6acb54f1012331e1bcd667ffb569c01b99d36b0bd59658fb33f513511b7
- languageName: node
- linkType: hard
-
-"readdirp@npm:^4.0.1":
- version: 4.1.2
- resolution: "readdirp@npm:4.1.2"
- checksum: 10c0/60a14f7619dec48c9c850255cd523e2717001b0e179dc7037cfa0895da7b9e9ab07532d324bfb118d73a710887d1e35f79c495fa91582784493e085d18c72c62
- languageName: node
- linkType: hard
-
-"readdirp@npm:~3.6.0":
- version: 3.6.0
- resolution: "readdirp@npm:3.6.0"
- dependencies:
- picomatch: "npm:^2.2.1"
- checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b
- languageName: node
- linkType: hard
-
-"redent@npm:^3.0.0":
- version: 3.0.0
- resolution: "redent@npm:3.0.0"
- dependencies:
- indent-string: "npm:^4.0.0"
- strip-indent: "npm:^3.0.0"
- checksum: 10c0/d64a6b5c0b50eb3ddce3ab770f866658a2b9998c678f797919ceb1b586bab9259b311407280bd80b804e2a7c7539b19238ae6a2a20c843f1a7fcff21d48c2eae
- languageName: node
- linkType: hard
-
-"reflect.getprototypeof@npm:^1.0.6, reflect.getprototypeof@npm:^1.0.9":
- version: 1.0.10
- resolution: "reflect.getprototypeof@npm:1.0.10"
- dependencies:
- call-bind: "npm:^1.0.8"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.9"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.0.0"
- get-intrinsic: "npm:^1.2.7"
- get-proto: "npm:^1.0.1"
- which-builtin-type: "npm:^1.2.1"
- checksum: 10c0/7facec28c8008876f8ab98e80b7b9cb4b1e9224353fd4756dda5f2a4ab0d30fa0a5074777c6df24e1e0af463a2697513b0a11e548d99cf52f21f7bc6ba48d3ac
- languageName: node
- linkType: hard
-
-"regenerate-unicode-properties@npm:^10.2.0":
- version: 10.2.0
- resolution: "regenerate-unicode-properties@npm:10.2.0"
- dependencies:
- regenerate: "npm:^1.4.2"
- checksum: 10c0/5510785eeaf56bbfdf4e663d6753f125c08d2a372d4107bc1b756b7bf142e2ed80c2733a8b54e68fb309ba37690e66a0362699b0e21d5c1f0255dea1b00e6460
- languageName: node
- linkType: hard
-
-"regenerate-unicode-properties@npm:^10.2.2":
- version: 10.2.2
- resolution: "regenerate-unicode-properties@npm:10.2.2"
- dependencies:
- regenerate: "npm:^1.4.2"
- checksum: 10c0/66a1d6a1dbacdfc49afd88f20b2319a4c33cee56d245163e4d8f5f283e0f45d1085a78f7f7406dd19ea3a5dd7a7799cd020cd817c97464a7507f9d10fbdce87c
- languageName: node
- linkType: hard
-
-"regenerate@npm:^1.4.2":
- version: 1.4.2
- resolution: "regenerate@npm:1.4.2"
- checksum: 10c0/f73c9eba5d398c818edc71d1c6979eaa05af7a808682749dd079f8df2a6d91a9b913db216c2c9b03e0a8ba2bba8701244a93f45211afbff691c32c7b275db1b8
- languageName: node
- linkType: hard
-
-"regenerator-runtime@npm:^0.13.4":
- version: 0.13.11
- resolution: "regenerator-runtime@npm:0.13.11"
- checksum: 10c0/12b069dc774001fbb0014f6a28f11c09ebfe3c0d984d88c9bced77fdb6fedbacbca434d24da9ae9371bfbf23f754869307fb51a4c98a8b8b18e5ef748677ca24
- languageName: node
- linkType: hard
-
-"regenerator-runtime@npm:^0.14.0":
- version: 0.14.1
- resolution: "regenerator-runtime@npm:0.14.1"
- checksum: 10c0/1b16eb2c4bceb1665c89de70dcb64126a22bc8eb958feef3cd68fe11ac6d2a4899b5cd1b80b0774c7c03591dc57d16631a7f69d2daa2ec98100e2f29f7ec4cc4
- languageName: node
- linkType: hard
-
-"regexp-tree@npm:^0.1.27":
- version: 0.1.27
- resolution: "regexp-tree@npm:0.1.27"
- bin:
- regexp-tree: bin/regexp-tree
- checksum: 10c0/f636f44b4a0d93d7d6926585ecd81f63e4ce2ac895bc417b2ead0874cd36b337dcc3d0fedc63f69bf5aaeaa4340f36ca7e750c9687cceaf8087374e5284e843c
- languageName: node
- linkType: hard
-
-"regexp.prototype.flags@npm:^1.5.3, regexp.prototype.flags@npm:^1.5.4":
- version: 1.5.4
- resolution: "regexp.prototype.flags@npm:1.5.4"
- dependencies:
- call-bind: "npm:^1.0.8"
- define-properties: "npm:^1.2.1"
- es-errors: "npm:^1.3.0"
- get-proto: "npm:^1.0.1"
- gopd: "npm:^1.2.0"
- set-function-name: "npm:^2.0.2"
- checksum: 10c0/83b88e6115b4af1c537f8dabf5c3744032cb875d63bc05c288b1b8c0ef37cbe55353f95d8ca817e8843806e3e150b118bc624e4279b24b4776b4198232735a77
- languageName: node
- linkType: hard
-
-"regexparam@npm:^3.0.0":
- version: 3.0.0
- resolution: "regexparam@npm:3.0.0"
- checksum: 10c0/a6430d7b97d5a7d5518f37a850b6b73aab479029d02f46af4fa0e8e4a1d7aad05b7a0d2d10c86ded21a14d5f0fa4c68525f873a5fca2efeefcccd93c36627459
- languageName: node
- linkType: hard
-
-"regexpu-core@npm:^6.2.0":
- version: 6.2.0
- resolution: "regexpu-core@npm:6.2.0"
- dependencies:
- regenerate: "npm:^1.4.2"
- regenerate-unicode-properties: "npm:^10.2.0"
- regjsgen: "npm:^0.8.0"
- regjsparser: "npm:^0.12.0"
- unicode-match-property-ecmascript: "npm:^2.0.0"
- unicode-match-property-value-ecmascript: "npm:^2.1.0"
- checksum: 10c0/bbcb83a854bf96ce4005ee4e4618b71c889cda72674ce6092432f0039b47890c2d0dfeb9057d08d440999d9ea03879ebbb7f26ca005ccf94390e55c348859b98
- languageName: node
- linkType: hard
-
-"regexpu-core@npm:^6.3.1":
- version: 6.4.0
- resolution: "regexpu-core@npm:6.4.0"
- dependencies:
- regenerate: "npm:^1.4.2"
- regenerate-unicode-properties: "npm:^10.2.2"
- regjsgen: "npm:^0.8.0"
- regjsparser: "npm:^0.13.0"
- unicode-match-property-ecmascript: "npm:^2.0.0"
- unicode-match-property-value-ecmascript: "npm:^2.2.1"
- checksum: 10c0/1eed9783c023dd06fb1f3ce4b6e3fdf0bc1e30cb036f30aeb2019b351e5e0b74355b40462282ea5db092c79a79331c374c7e9897e44a5ca4509e9f0b570263de
- languageName: node
- linkType: hard
-
-"regjsgen@npm:^0.8.0":
- version: 0.8.0
- resolution: "regjsgen@npm:0.8.0"
- checksum: 10c0/44f526c4fdbf0b29286101a282189e4dbb303f4013cf3fea058668d96d113b9180d3d03d1e13f6d4cbde38b7728bf951aecd9dc199938c080093a9a6f0d7a6bd
- languageName: node
- linkType: hard
-
-"regjsparser@npm:^0.10.0":
- version: 0.10.0
- resolution: "regjsparser@npm:0.10.0"
- dependencies:
- jsesc: "npm:~0.5.0"
- bin:
- regjsparser: bin/parser
- checksum: 10c0/0f0508c142eddbceae55dab9715e714305c19e1e130db53168e8fa5f9f7ff9a4901f674cf6f71e04a0973b2f883882ba05808c80778b2d52b053d925050010f4
- languageName: node
- linkType: hard
-
-"regjsparser@npm:^0.12.0":
- version: 0.12.0
- resolution: "regjsparser@npm:0.12.0"
- dependencies:
- jsesc: "npm:~3.0.2"
- bin:
- regjsparser: bin/parser
- checksum: 10c0/99d3e4e10c8c7732eb7aa843b8da2fd8b647fe144d3711b480e4647dc3bff4b1e96691ccf17f3ace24aa866a50b064236177cb25e6e4fbbb18285d99edaed83b
- languageName: node
- linkType: hard
-
-"regjsparser@npm:^0.13.0":
- version: 0.13.0
- resolution: "regjsparser@npm:0.13.0"
- dependencies:
- jsesc: "npm:~3.1.0"
- bin:
- regjsparser: bin/parser
- checksum: 10c0/4702f85cda09f67747c1b2fb673a0f0e5d1ba39d55f177632265a0be471ba59e3f320623f411649141f752b126b8126eac3ff4c62d317921e430b0472bfc6071
- languageName: node
- linkType: hard
-
-"relateurl@npm:^0.2.7":
- version: 0.2.7
- resolution: "relateurl@npm:0.2.7"
- checksum: 10c0/c248b4e3b32474f116a804b537fa6343d731b80056fb506dffd91e737eef4cac6be47a65aae39b522b0db9d0b1011d1a12e288d82a109ecd94a5299d82f6573a
- languageName: node
- linkType: hard
-
-"remove-trailing-separator@npm:^1.1.0":
- version: 1.1.0
- resolution: "remove-trailing-separator@npm:1.1.0"
- checksum: 10c0/3568f9f8f5af3737b4aee9e6e1e8ec4be65a92da9cb27f989e0893714d50aa95ed2ff02d40d1fa35e1b1a234dc9c2437050ef356704a3999feaca6667d9e9bfc
- languageName: node
- linkType: hard
-
-"replace-ext@npm:^2.0.0":
- version: 2.0.0
- resolution: "replace-ext@npm:2.0.0"
- checksum: 10c0/52cb1006f83c5f07ef2c76b070c58bdeca1b67beded57d60593d1af8cd8ee731501d0433645cea8e9a4bf57a7018f47c9a3928c0463496cad1946fa85907aa47
- languageName: node
- linkType: hard
-
-"require-directory@npm:^2.1.1":
- version: 2.1.1
- resolution: "require-directory@npm:2.1.1"
- checksum: 10c0/83aa76a7bc1531f68d92c75a2ca2f54f1b01463cb566cf3fbc787d0de8be30c9dbc211d1d46be3497dac5785fe296f2dd11d531945ac29730643357978966e99
- languageName: node
- linkType: hard
-
-"require-main-filename@npm:^2.0.0":
- version: 2.0.0
- resolution: "require-main-filename@npm:2.0.0"
- checksum: 10c0/db91467d9ead311b4111cbd73a4e67fa7820daed2989a32f7023785a2659008c6d119752d9c4ac011ae07e537eb86523adff99804c5fdb39cd3a017f9b401bb6
- languageName: node
- linkType: hard
-
-"requireindex@npm:~1.2.0":
- version: 1.2.0
- resolution: "requireindex@npm:1.2.0"
- checksum: 10c0/7fb42aed73bf8de9acc4d6716cf07acc7fbe180e58729433bafcf702e76e7bb10e54f8266c06bfec62d752e0ac14d50e8758833de539e6f4e2cd642077866153
- languageName: node
- linkType: hard
-
-"reserved-identifiers@npm:^1.0.0":
- version: 1.2.0
- resolution: "reserved-identifiers@npm:1.2.0"
- checksum: 10c0/b82651b12e6c608e80463c3753d275bc20fd89294d0415f04e670aeec3611ae3582ddc19e8fedd497e7d0bcbfaddab6a12823ec86e855b1e6a245e0a734eb43d
- languageName: node
- linkType: hard
-
-"resolve-from@npm:^4.0.0":
- version: 4.0.0
- resolution: "resolve-from@npm:4.0.0"
- checksum: 10c0/8408eec31a3112ef96e3746c37be7d64020cda07c03a920f5024e77290a218ea758b26ca9529fd7b1ad283947f34b2291c1c0f6aa0ed34acfdda9c6014c8d190
- languageName: node
- linkType: hard
-
-"resolve-options@npm:^2.0.0":
- version: 2.0.0
- resolution: "resolve-options@npm:2.0.0"
- dependencies:
- value-or-function: "npm:^4.0.0"
- checksum: 10c0/108f22186cad8748f1f0263944702a9949a12074e49442827845a52048f9156290781ceab8aee3e26ad868347266746704ee59a83a8f2fe2ce35228d054e325e
- languageName: node
- linkType: hard
-
-"resolve@npm:^1.10.0, resolve@npm:^1.22.4":
- version: 1.22.8
- resolution: "resolve@npm:1.22.8"
- dependencies:
- is-core-module: "npm:^2.13.0"
- path-parse: "npm:^1.0.7"
- supports-preserve-symlinks-flag: "npm:^1.0.0"
- bin:
- resolve: bin/resolve
- checksum: 10c0/07e179f4375e1fd072cfb72ad66d78547f86e6196c4014b31cb0b8bb1db5f7ca871f922d08da0fbc05b94e9fd42206f819648fa3b5b873ebbc8e1dc68fec433a
- languageName: node
- linkType: hard
-
-"resolve@npm:^1.17.0, resolve@npm:^1.22.11":
- version: 1.22.11
- resolution: "resolve@npm:1.22.11"
- dependencies:
- is-core-module: "npm:^2.16.1"
- path-parse: "npm:^1.0.7"
- supports-preserve-symlinks-flag: "npm:^1.0.0"
- bin:
- resolve: bin/resolve
- checksum: 10c0/f657191507530f2cbecb5815b1ee99b20741ea6ee02a59c57028e9ec4c2c8d7681afcc35febbd554ac0ded459db6f2d8153382c53a2f266cee2575e512674409
- languageName: node
- linkType: hard
-
-"resolve@npm:^2.0.0-next.5":
- version: 2.0.0-next.5
- resolution: "resolve@npm:2.0.0-next.5"
- dependencies:
- is-core-module: "npm:^2.13.0"
- path-parse: "npm:^1.0.7"
- supports-preserve-symlinks-flag: "npm:^1.0.0"
- bin:
- resolve: bin/resolve
- checksum: 10c0/a6c33555e3482ea2ec4c6e3d3bf0d78128abf69dca99ae468e64f1e30acaa318fd267fb66c8836b04d558d3e2d6ed875fe388067e7d8e0de647d3c21af21c43a
- languageName: node
- linkType: hard
-
-"resolve@patch:resolve@npm%3A^1.10.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.4#optional!builtin":
- version: 1.22.8
- resolution: "resolve@patch:resolve@npm%3A1.22.8#optional!builtin::version=1.22.8&hash=c3c19d"
- dependencies:
- is-core-module: "npm:^2.13.0"
- path-parse: "npm:^1.0.7"
- supports-preserve-symlinks-flag: "npm:^1.0.0"
- bin:
- resolve: bin/resolve
- checksum: 10c0/0446f024439cd2e50c6c8fa8ba77eaa8370b4180f401a96abf3d1ebc770ac51c1955e12764cde449fde3fff480a61f84388e3505ecdbab778f4bef5f8212c729
- languageName: node
- linkType: hard
-
-"resolve@patch:resolve@npm%3A^1.17.0#optional!builtin, resolve@patch:resolve@npm%3A^1.22.11#optional!builtin":
- version: 1.22.11
- resolution: "resolve@patch:resolve@npm%3A1.22.11#optional!builtin::version=1.22.11&hash=c3c19d"
- dependencies:
- is-core-module: "npm:^2.16.1"
- path-parse: "npm:^1.0.7"
- supports-preserve-symlinks-flag: "npm:^1.0.0"
- bin:
- resolve: bin/resolve
- checksum: 10c0/ee5b182f2e37cb1165465e58c6abc797fec0a80b5ba3231607beb4677db0c9291ac010c47cf092b6daa2b7f518d69a0e21888e7e2b633f68d501a874212a8c63
- languageName: node
- linkType: hard
-
-"resolve@patch:resolve@npm%3A^2.0.0-next.5#optional!builtin":
- version: 2.0.0-next.5
- resolution: "resolve@patch:resolve@npm%3A2.0.0-next.5#optional!builtin::version=2.0.0-next.5&hash=c3c19d"
- dependencies:
- is-core-module: "npm:^2.13.0"
- path-parse: "npm:^1.0.7"
- supports-preserve-symlinks-flag: "npm:^1.0.0"
- bin:
- resolve: bin/resolve
- checksum: 10c0/78ad6edb8309a2bfb720c2c1898f7907a37f858866ce11a5974643af1203a6a6e05b2fa9c53d8064a673a447b83d42569260c306d43628bff5bb101969708355
- languageName: node
- linkType: hard
-
-"retry@npm:^0.12.0":
- version: 0.12.0
- resolution: "retry@npm:0.12.0"
- checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe
- languageName: node
- linkType: hard
-
-"reusify@npm:^1.0.4":
- version: 1.1.0
- resolution: "reusify@npm:1.1.0"
- checksum: 10c0/4eff0d4a5f9383566c7d7ec437b671cc51b25963bd61bf127c3f3d3f68e44a026d99b8d2f1ad344afff8d278a8fe70a8ea092650a716d22287e8bef7126bb2fa
- languageName: node
- linkType: hard
-
-"rimraf@npm:^2.5.4":
- version: 2.7.1
- resolution: "rimraf@npm:2.7.1"
- dependencies:
- glob: "npm:^7.1.3"
- bin:
- rimraf: ./bin.js
- checksum: 10c0/4eef73d406c6940927479a3a9dee551e14a54faf54b31ef861250ac815172bade86cc6f7d64a4dc5e98b65e4b18a2e1c9ff3b68d296be0c748413f092bb0dd40
- languageName: node
- linkType: hard
-
-"rimraf@npm:^3.0.2":
- version: 3.0.2
- resolution: "rimraf@npm:3.0.2"
- dependencies:
- glob: "npm:^7.1.3"
- bin:
- rimraf: bin.js
- checksum: 10c0/9cb7757acb489bd83757ba1a274ab545eafd75598a9d817e0c3f8b164238dd90eba50d6b848bd4dcc5f3040912e882dc7ba71653e35af660d77b25c381d402e8
- languageName: node
- linkType: hard
-
-"rimraf@npm:^5.0.5":
- version: 5.0.10
- resolution: "rimraf@npm:5.0.10"
- dependencies:
- glob: "npm:^10.3.7"
- bin:
- rimraf: dist/esm/bin.mjs
- checksum: 10c0/7da4fd0e15118ee05b918359462cfa1e7fe4b1228c7765195a45b55576e8c15b95db513b8466ec89129666f4af45ad978a3057a02139afba1a63512a2d9644cc
- languageName: node
- linkType: hard
-
-"ripemd160@npm:^2.0.0, ripemd160@npm:^2.0.1, ripemd160@npm:^2.0.3":
- version: 2.0.3
- resolution: "ripemd160@npm:2.0.3"
- dependencies:
- hash-base: "npm:^3.1.2"
- inherits: "npm:^2.0.4"
- checksum: 10c0/3f472fb453241cfe692a77349accafca38dbcdc9d96d5848c088b2932ba41eb968630ecff7b175d291c7487a4945aee5a81e30c064d1f94e36070f7e0c37ed6c
- languageName: node
- linkType: hard
-
-"rollup@npm:^4.43.0":
- version: 4.59.0
- resolution: "rollup@npm:4.59.0"
- dependencies:
- "@rollup/rollup-android-arm-eabi": "npm:4.59.0"
- "@rollup/rollup-android-arm64": "npm:4.59.0"
- "@rollup/rollup-darwin-arm64": "npm:4.59.0"
- "@rollup/rollup-darwin-x64": "npm:4.59.0"
- "@rollup/rollup-freebsd-arm64": "npm:4.59.0"
- "@rollup/rollup-freebsd-x64": "npm:4.59.0"
- "@rollup/rollup-linux-arm-gnueabihf": "npm:4.59.0"
- "@rollup/rollup-linux-arm-musleabihf": "npm:4.59.0"
- "@rollup/rollup-linux-arm64-gnu": "npm:4.59.0"
- "@rollup/rollup-linux-arm64-musl": "npm:4.59.0"
- "@rollup/rollup-linux-loong64-gnu": "npm:4.59.0"
- "@rollup/rollup-linux-loong64-musl": "npm:4.59.0"
- "@rollup/rollup-linux-ppc64-gnu": "npm:4.59.0"
- "@rollup/rollup-linux-ppc64-musl": "npm:4.59.0"
- "@rollup/rollup-linux-riscv64-gnu": "npm:4.59.0"
- "@rollup/rollup-linux-riscv64-musl": "npm:4.59.0"
- "@rollup/rollup-linux-s390x-gnu": "npm:4.59.0"
- "@rollup/rollup-linux-x64-gnu": "npm:4.59.0"
- "@rollup/rollup-linux-x64-musl": "npm:4.59.0"
- "@rollup/rollup-openbsd-x64": "npm:4.59.0"
- "@rollup/rollup-openharmony-arm64": "npm:4.59.0"
- "@rollup/rollup-win32-arm64-msvc": "npm:4.59.0"
- "@rollup/rollup-win32-ia32-msvc": "npm:4.59.0"
- "@rollup/rollup-win32-x64-gnu": "npm:4.59.0"
- "@rollup/rollup-win32-x64-msvc": "npm:4.59.0"
- "@types/estree": "npm:1.0.8"
- fsevents: "npm:~2.3.2"
- dependenciesMeta:
- "@rollup/rollup-android-arm-eabi":
- optional: true
- "@rollup/rollup-android-arm64":
- optional: true
- "@rollup/rollup-darwin-arm64":
- optional: true
- "@rollup/rollup-darwin-x64":
- optional: true
- "@rollup/rollup-freebsd-arm64":
- optional: true
- "@rollup/rollup-freebsd-x64":
- optional: true
- "@rollup/rollup-linux-arm-gnueabihf":
- optional: true
- "@rollup/rollup-linux-arm-musleabihf":
- optional: true
- "@rollup/rollup-linux-arm64-gnu":
- optional: true
- "@rollup/rollup-linux-arm64-musl":
- optional: true
- "@rollup/rollup-linux-loong64-gnu":
- optional: true
- "@rollup/rollup-linux-loong64-musl":
- optional: true
- "@rollup/rollup-linux-ppc64-gnu":
- optional: true
- "@rollup/rollup-linux-ppc64-musl":
- optional: true
- "@rollup/rollup-linux-riscv64-gnu":
- optional: true
- "@rollup/rollup-linux-riscv64-musl":
- optional: true
- "@rollup/rollup-linux-s390x-gnu":
- optional: true
- "@rollup/rollup-linux-x64-gnu":
- optional: true
- "@rollup/rollup-linux-x64-musl":
- optional: true
- "@rollup/rollup-openbsd-x64":
- optional: true
- "@rollup/rollup-openharmony-arm64":
- optional: true
- "@rollup/rollup-win32-arm64-msvc":
- optional: true
- "@rollup/rollup-win32-ia32-msvc":
- optional: true
- "@rollup/rollup-win32-x64-gnu":
- optional: true
- "@rollup/rollup-win32-x64-msvc":
- optional: true
- fsevents:
- optional: true
- bin:
- rollup: dist/bin/rollup
- checksum: 10c0/f38742da34cfee5e899302615fa157aa77cb6a2a1495e5e3ce4cc9c540d3262e235bbe60caa31562bbfe492b01fdb3e7a8c43c39d842d3293bcf843123b766fc
- languageName: node
- linkType: hard
-
-"rrweb-cssom@npm:^0.8.0":
- version: 0.8.0
- resolution: "rrweb-cssom@npm:0.8.0"
- checksum: 10c0/56f2bfd56733adb92c0b56e274c43f864b8dd48784d6fe946ef5ff8d438234015e59ad837fc2ad54714b6421384141c1add4eb569e72054e350d1f8a50b8ac7b
- languageName: node
- linkType: hard
-
-"rsvp@npm:^4.8.5":
- version: 4.8.5
- resolution: "rsvp@npm:4.8.5"
- checksum: 10c0/7978f01060a48204506a8ebe15cdbd468498f5ae538b1d7ee3e7630375ba7cb2f98df2f596c12d3f4d5d5c21badc1c6ca8009f5142baded8511609a28eabd19a
- languageName: node
- linkType: hard
-
-"rsvp@npm:~3.2.1":
- version: 3.2.1
- resolution: "rsvp@npm:3.2.1"
- checksum: 10c0/7c075134976d0e95710ed62f87eaf01fa7dc1068357c9988f224e53509ac152ddeb1781cfd7784f13e2cc084c8dee71ad12317b758687b7ea107af2f8588704d
- languageName: node
- linkType: hard
-
-"run-parallel@npm:^1.1.9":
- version: 1.2.0
- resolution: "run-parallel@npm:1.2.0"
- dependencies:
- queue-microtask: "npm:^1.2.2"
- checksum: 10c0/200b5ab25b5b8b7113f9901bfe3afc347e19bb7475b267d55ad0eb86a62a46d77510cb0f232507c9e5d497ebda569a08a9867d0d14f57a82ad5564d991588b39
- languageName: node
- linkType: hard
-
-"rxjs-report-usage@npm:^1.0.4":
- version: 1.0.6
- resolution: "rxjs-report-usage@npm:1.0.6"
- dependencies:
- "@babel/parser": "npm:^7.10.3"
- "@babel/traverse": "npm:^7.10.3"
- "@babel/types": "npm:^7.10.3"
- bent: "npm:~7.3.6"
- chalk: "npm:~4.1.0"
- glob: "npm:~7.2.0"
- prompts: "npm:~2.4.2"
- bin:
- rxjs-report-usage: bin/rxjs-report-usage
- checksum: 10c0/f87af567fcce83644cd028de6aaba5ee7555c85fc5b7f075068c4e48088b220721548c1b0cef9e8452def26257a098e732e062e82e494f236cf9ed5748bd8e5b
- languageName: node
- linkType: hard
-
-"rxjs@npm:*, rxjs@npm:^7.8.1":
- version: 7.8.2
- resolution: "rxjs@npm:7.8.2"
- dependencies:
- tslib: "npm:^2.1.0"
- checksum: 10c0/1fcd33d2066ada98ba8f21fcbbcaee9f0b271de1d38dc7f4e256bfbc6ffcdde68c8bfb69093de7eeb46f24b1fb820620bf0223706cff26b4ab99a7ff7b2e2c45
- languageName: node
- linkType: hard
-
-"safe-array-concat@npm:^1.1.3":
- version: 1.1.3
- resolution: "safe-array-concat@npm:1.1.3"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.2"
- get-intrinsic: "npm:^1.2.6"
- has-symbols: "npm:^1.1.0"
- isarray: "npm:^2.0.5"
- checksum: 10c0/43c86ffdddc461fb17ff8a17c5324f392f4868f3c7dd2c6a5d9f5971713bc5fd755667212c80eab9567595f9a7509cc2f83e590ddaebd1bd19b780f9c79f9a8d
- languageName: node
- linkType: hard
-
-"safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.0, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:^5.2.1, safe-buffer@npm:~5.2.0":
- version: 5.2.1
- resolution: "safe-buffer@npm:5.2.1"
- checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3
- languageName: node
- linkType: hard
-
-"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1":
- version: 5.1.2
- resolution: "safe-buffer@npm:5.1.2"
- checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21
- languageName: node
- linkType: hard
-
-"safe-push-apply@npm:^1.0.0":
- version: 1.0.0
- resolution: "safe-push-apply@npm:1.0.0"
- dependencies:
- es-errors: "npm:^1.3.0"
- isarray: "npm:^2.0.5"
- checksum: 10c0/831f1c9aae7436429e7862c7e46f847dfe490afac20d0ee61bae06108dbf5c745a0de3568ada30ccdd3eeb0864ca8331b2eef703abd69bfea0745b21fd320750
- languageName: node
- linkType: hard
-
-"safe-regex-test@npm:^1.0.3, safe-regex-test@npm:^1.1.0":
- version: 1.1.0
- resolution: "safe-regex-test@npm:1.1.0"
- dependencies:
- call-bound: "npm:^1.0.2"
- es-errors: "npm:^1.3.0"
- is-regex: "npm:^1.2.1"
- checksum: 10c0/f2c25281bbe5d39cddbbce7f86fca5ea9b3ce3354ea6cd7c81c31b006a5a9fff4286acc5450a3b9122c56c33eba69c56b9131ad751457b2b4a585825e6a10665
- languageName: node
- linkType: hard
-
-"safer-buffer@npm:>= 2.1.2 < 3.0.0":
- version: 2.1.2
- resolution: "safer-buffer@npm:2.1.2"
- checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4
- languageName: node
- linkType: hard
-
-"sass@npm:^1.42.1":
- version: 1.97.3
- resolution: "sass@npm:1.97.3"
- dependencies:
- "@parcel/watcher": "npm:^2.4.1"
- chokidar: "npm:^4.0.0"
- immutable: "npm:^5.0.2"
- source-map-js: "npm:>=0.6.2 <2.0.0"
- dependenciesMeta:
- "@parcel/watcher":
- optional: true
- bin:
- sass: sass.js
- checksum: 10c0/67f6b5d220f20c1c23a8b16dda5fd1c5d119ad5caf8195b185d553b5b239fb188a3787f04fc00171c62515f2c4e5e0eb5ad4992a80f8543428556883c1240ba3
- languageName: node
- linkType: hard
-
-"saxes@npm:^6.0.0":
- version: 6.0.0
- resolution: "saxes@npm:6.0.0"
- dependencies:
- xmlchars: "npm:^2.2.0"
- checksum: 10c0/3847b839f060ef3476eb8623d099aa502ad658f5c40fd60c105ebce86d244389b0d76fcae30f4d0c728d7705ceb2f7e9b34bb54717b6a7dbedaf5dad2d9a4b74
- languageName: node
- linkType: hard
-
-"scheduler@npm:^0.27.0":
- version: 0.27.0
- resolution: "scheduler@npm:0.27.0"
- checksum: 10c0/4f03048cb05a3c8fddc45813052251eca00688f413a3cee236d984a161da28db28ba71bd11e7a3dd02f7af84ab28d39fb311431d3b3772fed557945beb00c452
- languageName: node
- linkType: hard
-
-"sdp-transform@npm:^2.15.0":
- version: 2.15.0
- resolution: "sdp-transform@npm:2.15.0"
- bin:
- sdp-verify: checker.js
- checksum: 10c0/96c060f113a3d5418defa168db609f7e23e5bd7954fa1cf7784f103dbe702e24d667e5310d2ac6d88abdb32322af83d6ebd0df08e07f4f172d5ed5888f921386
- languageName: node
- linkType: hard
-
-"sdp-transform@npm:^3.0.0":
- version: 3.0.0
- resolution: "sdp-transform@npm:3.0.0"
- bin:
- sdp-verify: checker.js
- checksum: 10c0/828a4595041ba64c86b29075aa4007ab384519b1fa29882db59ccb83b54b2b2a33b60848293f8da537fe151c52f5844fc17c8325396cac309fb19e2e81ec5bf4
- languageName: node
- linkType: hard
-
-"sdp@npm:^3.2.0":
- version: 3.2.0
- resolution: "sdp@npm:3.2.0"
- checksum: 10c0/fa0146132b4c9185f276b80e09f52259b103e609565ac40c560250dbe7fc47723d30530c0db9cac6217c83153944a71af81fa70dc0367f195aabcf110f8185fd
- languageName: node
- linkType: hard
-
-"semver@npm:2 || 3 || 4 || 5":
- version: 5.7.2
- resolution: "semver@npm:5.7.2"
- bin:
- semver: bin/semver
- checksum: 10c0/e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25
- languageName: node
- linkType: hard
-
-"semver@npm:^6.3.1":
- version: 6.3.1
- resolution: "semver@npm:6.3.1"
- bin:
- semver: bin/semver.js
- checksum: 10c0/e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d
- languageName: node
- linkType: hard
-
-"semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0":
- version: 7.7.1
- resolution: "semver@npm:7.7.1"
- bin:
- semver: bin/semver.js
- checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958
- languageName: node
- linkType: hard
-
-"semver@npm:^7.3.7, semver@npm:^7.6.3":
- version: 7.6.3
- resolution: "semver@npm:7.6.3"
- bin:
- semver: bin/semver.js
- checksum: 10c0/88f33e148b210c153873cb08cfe1e281d518aaa9a666d4d148add6560db5cd3c582f3a08ccb91f38d5f379ead256da9931234ed122057f40bb5766e65e58adaf
- languageName: node
- linkType: hard
-
-"semver@npm:^7.7.3":
- version: 7.7.3
- resolution: "semver@npm:7.7.3"
- bin:
- semver: bin/semver.js
- checksum: 10c0/4afe5c986567db82f44c8c6faef8fe9df2a9b1d98098fc1721f57c696c4c21cebd572f297fc21002f81889492345b8470473bc6f4aff5fb032a6ea59ea2bc45e
- languageName: node
- linkType: hard
-
-"set-blocking@npm:^2.0.0":
- version: 2.0.0
- resolution: "set-blocking@npm:2.0.0"
- checksum: 10c0/9f8c1b2d800800d0b589de1477c753492de5c1548d4ade52f57f1d1f5e04af5481554d75ce5e5c43d4004b80a3eb714398d6907027dc0534177b7539119f4454
- languageName: node
- linkType: hard
-
-"set-cookie-parser@npm:^2.6.0":
- version: 2.7.1
- resolution: "set-cookie-parser@npm:2.7.1"
- checksum: 10c0/060c198c4c92547ac15988256f445eae523f57f2ceefeccf52d30d75dedf6bff22b9c26f756bd44e8e560d44ff4ab2130b178bd2e52ef5571bf7be3bd7632d9a
- languageName: node
- linkType: hard
-
-"set-function-length@npm:^1.2.2":
- version: 1.2.2
- resolution: "set-function-length@npm:1.2.2"
- dependencies:
- define-data-property: "npm:^1.1.4"
- es-errors: "npm:^1.3.0"
- function-bind: "npm:^1.1.2"
- get-intrinsic: "npm:^1.2.4"
- gopd: "npm:^1.0.1"
- has-property-descriptors: "npm:^1.0.2"
- checksum: 10c0/82850e62f412a258b71e123d4ed3873fa9377c216809551192bb6769329340176f109c2eeae8c22a8d386c76739855f78e8716515c818bcaef384b51110f0f3c
- languageName: node
- linkType: hard
-
-"set-function-name@npm:^2.0.2":
- version: 2.0.2
- resolution: "set-function-name@npm:2.0.2"
- dependencies:
- define-data-property: "npm:^1.1.4"
- es-errors: "npm:^1.3.0"
- functions-have-names: "npm:^1.2.3"
- has-property-descriptors: "npm:^1.0.2"
- checksum: 10c0/fce59f90696c450a8523e754abb305e2b8c73586452619c2bad5f7bf38c7b6b4651895c9db895679c5bef9554339cf3ef1c329b66ece3eda7255785fbe299316
- languageName: node
- linkType: hard
-
-"set-proto@npm:^1.0.0":
- version: 1.0.0
- resolution: "set-proto@npm:1.0.0"
- dependencies:
- dunder-proto: "npm:^1.0.1"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.0.0"
- checksum: 10c0/ca5c3ccbba479d07c30460e367e66337cec825560b11e8ba9c5ebe13a2a0d6021ae34eddf94ff3dfe17a3104dc1f191519cb6c48378b503e5c3f36393938776a
- languageName: node
- linkType: hard
-
-"setimmediate@npm:^1.0.4":
- version: 1.0.5
- resolution: "setimmediate@npm:1.0.5"
- checksum: 10c0/5bae81bfdbfbd0ce992893286d49c9693c82b1bcc00dcaaf3a09c8f428fdeacf4190c013598b81875dfac2b08a572422db7df779a99332d0fce186d15a3e4d49
- languageName: node
- linkType: hard
-
-"sha.js@npm:^2.4.0, sha.js@npm:^2.4.12, sha.js@npm:^2.4.8":
- version: 2.4.12
- resolution: "sha.js@npm:2.4.12"
- dependencies:
- inherits: "npm:^2.0.4"
- safe-buffer: "npm:^5.2.1"
- to-buffer: "npm:^1.2.0"
- bin:
- sha.js: bin.js
- checksum: 10c0/9d36bdd76202c8116abbe152a00055ccd8a0099cb28fc17c01fa7bb2c8cffb9ca60e2ab0fe5f274ed6c45dc2633d8c39cf7ab050306c231904512ba9da4d8ab1
- languageName: node
- linkType: hard
-
-"shebang-command@npm:^2.0.0":
- version: 2.0.0
- resolution: "shebang-command@npm:2.0.0"
- dependencies:
- shebang-regex: "npm:^3.0.0"
- checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e
- languageName: node
- linkType: hard
-
-"shebang-regex@npm:^3.0.0":
- version: 3.0.0
- resolution: "shebang-regex@npm:3.0.0"
- checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690
- languageName: node
- linkType: hard
-
-"side-channel-list@npm:^1.0.0":
- version: 1.0.0
- resolution: "side-channel-list@npm:1.0.0"
- dependencies:
- es-errors: "npm:^1.3.0"
- object-inspect: "npm:^1.13.3"
- checksum: 10c0/644f4ac893456c9490ff388bf78aea9d333d5e5bfc64cfb84be8f04bf31ddc111a8d4b83b85d7e7e8a7b845bc185a9ad02c052d20e086983cf59f0be517d9b3d
- languageName: node
- linkType: hard
-
-"side-channel-map@npm:^1.0.1":
- version: 1.0.1
- resolution: "side-channel-map@npm:1.0.1"
- dependencies:
- call-bound: "npm:^1.0.2"
- es-errors: "npm:^1.3.0"
- get-intrinsic: "npm:^1.2.5"
- object-inspect: "npm:^1.13.3"
- checksum: 10c0/010584e6444dd8a20b85bc926d934424bd809e1a3af941cace229f7fdcb751aada0fb7164f60c2e22292b7fa3c0ff0bce237081fd4cdbc80de1dc68e95430672
- languageName: node
- linkType: hard
-
-"side-channel-weakmap@npm:^1.0.2":
- version: 1.0.2
- resolution: "side-channel-weakmap@npm:1.0.2"
- dependencies:
- call-bound: "npm:^1.0.2"
- es-errors: "npm:^1.3.0"
- get-intrinsic: "npm:^1.2.5"
- object-inspect: "npm:^1.13.3"
- side-channel-map: "npm:^1.0.1"
- checksum: 10c0/71362709ac233e08807ccd980101c3e2d7efe849edc51455030327b059f6c4d292c237f94dc0685031dd11c07dd17a68afde235d6cf2102d949567f98ab58185
- languageName: node
- linkType: hard
-
-"side-channel@npm:^1.1.0":
- version: 1.1.0
- resolution: "side-channel@npm:1.1.0"
- dependencies:
- es-errors: "npm:^1.3.0"
- object-inspect: "npm:^1.13.3"
- side-channel-list: "npm:^1.0.0"
- side-channel-map: "npm:^1.0.1"
- side-channel-weakmap: "npm:^1.0.2"
- checksum: 10c0/cb20dad41eb032e6c24c0982e1e5a24963a28aa6122b4f05b3f3d6bf8ae7fd5474ef382c8f54a6a3ab86e0cac4d41a23bd64ede3970e5bfb50326ba02a7996e6
- languageName: node
- linkType: hard
-
-"siginfo@npm:^2.0.0":
- version: 2.0.0
- resolution: "siginfo@npm:2.0.0"
- checksum: 10c0/3def8f8e516fbb34cb6ae415b07ccc5d9c018d85b4b8611e3dc6f8be6d1899f693a4382913c9ed51a06babb5201639d76453ab297d1c54a456544acf5c892e34
- languageName: node
- linkType: hard
-
-"signal-exit@npm:^4.0.1":
- version: 4.1.0
- resolution: "signal-exit@npm:4.1.0"
- checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83
- languageName: node
- linkType: hard
-
-"sisteransi@npm:^1.0.5":
- version: 1.0.5
- resolution: "sisteransi@npm:1.0.5"
- checksum: 10c0/230ac975cca485b7f6fe2b96a711aa62a6a26ead3e6fb8ba17c5a00d61b8bed0d7adc21f5626b70d7c33c62ff4e63933017a6462942c719d1980bb0b1207ad46
- languageName: node
- linkType: hard
-
-"slash@npm:^3.0.0":
- version: 3.0.0
- resolution: "slash@npm:3.0.0"
- checksum: 10c0/e18488c6a42bdfd4ac5be85b2ced3ccd0224773baae6ad42cfbb9ec74fc07f9fa8396bd35ee638084ead7a2a0818eb5e7151111544d4731ce843019dab4be47b
- languageName: node
- linkType: hard
-
-"smart-buffer@npm:^4.2.0":
- version: 4.2.0
- resolution: "smart-buffer@npm:4.2.0"
- checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539
- languageName: node
- linkType: hard
-
-"smol-toml@npm:^1.5.2":
- version: 1.6.0
- resolution: "smol-toml@npm:1.6.0"
- checksum: 10c0/baf33bb6cd914d481329e31998a12829cd126541458ba400791212c80f1245d5b27dac04a56a52c02b287d2a494f1628c05fc19643286b258b2e0bb9fe67747c
- languageName: node
- linkType: hard
-
-"snake-case@npm:^3.0.4":
- version: 3.0.4
- resolution: "snake-case@npm:3.0.4"
- dependencies:
- dot-case: "npm:^3.0.4"
- tslib: "npm:^2.0.3"
- checksum: 10c0/ab19a913969f58f4474fe9f6e8a026c8a2142a01f40b52b79368068343177f818cdfef0b0c6b9558f298782441d5ca8ed5932eb57822439fad791d866e62cecd
- languageName: node
- linkType: hard
-
-"socks-proxy-agent@npm:^8.0.3":
- version: 8.0.5
- resolution: "socks-proxy-agent@npm:8.0.5"
- dependencies:
- agent-base: "npm:^7.1.2"
- debug: "npm:^4.3.4"
- socks: "npm:^2.8.3"
- checksum: 10c0/5d2c6cecba6821389aabf18728325730504bf9bb1d9e342e7987a5d13badd7a98838cc9a55b8ed3cb866ad37cc23e1086f09c4d72d93105ce9dfe76330e9d2a6
- languageName: node
- linkType: hard
-
-"socks@npm:^2.8.3":
- version: 2.8.4
- resolution: "socks@npm:2.8.4"
- dependencies:
- ip-address: "npm:^9.0.5"
- smart-buffer: "npm:^4.2.0"
- checksum: 10c0/00c3271e233ccf1fb83a3dd2060b94cc37817e0f797a93c560b9a7a86c4a0ec2961fb31263bdd24a3c28945e24868b5f063cd98744171d9e942c513454b50ae5
- languageName: node
- linkType: hard
-
-"sort-keys@npm:^5.0.0":
- version: 5.1.0
- resolution: "sort-keys@npm:5.1.0"
- dependencies:
- is-plain-obj: "npm:^4.0.0"
- checksum: 10c0/fdb7aeb02368ad91b2ea947b59f3c95d80f8c71bbcb5741ebd55852994f54a129af3b3663b280951566fe5897de056428810dbb58c61db831e588c0ac110f2b0
- languageName: node
- linkType: hard
-
-"source-map-js@npm:>=0.6.2 <2.0.0, source-map-js@npm:^1.2.1":
- version: 1.2.1
- resolution: "source-map-js@npm:1.2.1"
- checksum: 10c0/7bda1fc4c197e3c6ff17de1b8b2c20e60af81b63a52cb32ec5a5d67a20a7d42651e2cb34ebe93833c5a2a084377e17455854fee3e21e7925c64a51b6a52b0faf
- languageName: node
- linkType: hard
-
-"source-map-support@npm:~0.5.20":
- version: 0.5.21
- resolution: "source-map-support@npm:0.5.21"
- dependencies:
- buffer-from: "npm:^1.0.0"
- source-map: "npm:^0.6.0"
- checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d
- languageName: node
- linkType: hard
-
-"source-map@npm:^0.6.0, source-map@npm:~0.6.0":
- version: 0.6.1
- resolution: "source-map@npm:0.6.1"
- checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011
- languageName: node
- linkType: hard
-
-"spdx-correct@npm:^3.0.0":
- version: 3.2.0
- resolution: "spdx-correct@npm:3.2.0"
- dependencies:
- spdx-expression-parse: "npm:^3.0.0"
- spdx-license-ids: "npm:^3.0.0"
- checksum: 10c0/49208f008618b9119208b0dadc9208a3a55053f4fd6a0ae8116861bd22696fc50f4142a35ebfdb389e05ccf2de8ad142573fefc9e26f670522d899f7b2fe7386
- languageName: node
- linkType: hard
-
-"spdx-exceptions@npm:^2.1.0":
- version: 2.5.0
- resolution: "spdx-exceptions@npm:2.5.0"
- checksum: 10c0/37217b7762ee0ea0d8b7d0c29fd48b7e4dfb94096b109d6255b589c561f57da93bf4e328c0290046115961b9209a8051ad9f525e48d433082fc79f496a4ea940
- languageName: node
- linkType: hard
-
-"spdx-expression-parse@npm:^3.0.0":
- version: 3.0.1
- resolution: "spdx-expression-parse@npm:3.0.1"
- dependencies:
- spdx-exceptions: "npm:^2.1.0"
- spdx-license-ids: "npm:^3.0.0"
- checksum: 10c0/6f8a41c87759fa184a58713b86c6a8b028250f158159f1d03ed9d1b6ee4d9eefdc74181c8ddc581a341aa971c3e7b79e30b59c23b05d2436d5de1c30bdef7171
- languageName: node
- linkType: hard
-
-"spdx-expression-parse@npm:^4.0.0":
- version: 4.0.0
- resolution: "spdx-expression-parse@npm:4.0.0"
- dependencies:
- spdx-exceptions: "npm:^2.1.0"
- spdx-license-ids: "npm:^3.0.0"
- checksum: 10c0/965c487e77f4fb173f1c471f3eef4eb44b9f0321adc7f93d95e7620da31faa67d29356eb02523cd7df8a7fc1ec8238773cdbf9e45bd050329d2b26492771b736
- languageName: node
- linkType: hard
-
-"spdx-license-ids@npm:^3.0.0":
- version: 3.0.20
- resolution: "spdx-license-ids@npm:3.0.20"
- checksum: 10c0/bdff7534fad6ef59be49becda1edc3fb7f5b3d6f296a715516ab9d972b8ad59af2c34b2003e01db8970d4c673d185ff696ba74c6b61d3bf327e2b3eac22c297c
- languageName: node
- linkType: hard
-
-"sprintf-js@npm:^1.1.1, sprintf-js@npm:^1.1.3":
- version: 1.1.3
- resolution: "sprintf-js@npm:1.1.3"
- checksum: 10c0/09270dc4f30d479e666aee820eacd9e464215cdff53848b443964202bf4051490538e5dd1b42e1a65cf7296916ca17640aebf63dae9812749c7542ee5f288dec
- languageName: node
- linkType: hard
-
-"ssri@npm:^12.0.0":
- version: 12.0.0
- resolution: "ssri@npm:12.0.0"
- dependencies:
- minipass: "npm:^7.0.3"
- checksum: 10c0/caddd5f544b2006e88fa6b0124d8d7b28208b83c72d7672d5ade44d794525d23b540f3396108c4eb9280dcb7c01f0bef50682f5b4b2c34291f7c5e211fd1417d
- languageName: node
- linkType: hard
-
-"stackback@npm:0.0.2":
- version: 0.0.2
- resolution: "stackback@npm:0.0.2"
- checksum: 10c0/89a1416668f950236dd5ac9f9a6b2588e1b9b62b1b6ad8dff1bfc5d1a15dbf0aafc9b52d2226d00c28dffff212da464eaeebfc6b7578b9d180cef3e3782c5983
- languageName: node
- linkType: hard
-
-"std-env@npm:^3.10.0":
- version: 3.10.0
- resolution: "std-env@npm:3.10.0"
- checksum: 10c0/1814927a45004d36dde6707eaf17552a546769bc79a6421be2c16ce77d238158dfe5de30910b78ec30d95135cc1c59ea73ee22d2ca170f8b9753f84da34c427f
- languageName: node
- linkType: hard
-
-"stop-iteration-iterator@npm:^1.1.0":
- version: 1.1.0
- resolution: "stop-iteration-iterator@npm:1.1.0"
- dependencies:
- es-errors: "npm:^1.3.0"
- internal-slot: "npm:^1.1.0"
- checksum: 10c0/de4e45706bb4c0354a4b1122a2b8cc45a639e86206807ce0baf390ee9218d3ef181923fa4d2b67443367c491aa255c5fbaa64bb74648e3c5b48299928af86c09
- languageName: node
- linkType: hard
-
-"stream-browserify@npm:^3.0.0":
- version: 3.0.0
- resolution: "stream-browserify@npm:3.0.0"
- dependencies:
- inherits: "npm:~2.0.4"
- readable-stream: "npm:^3.5.0"
- checksum: 10c0/ec3b975a4e0aa4b3dc5e70ffae3fc8fd29ac725353a14e72f213dff477b00330140ad014b163a8cbb9922dfe90803f81a5ea2b269e1bbfd8bd71511b88f889ad
- languageName: node
- linkType: hard
-
-"stream-composer@npm:^1.0.2":
- version: 1.0.2
- resolution: "stream-composer@npm:1.0.2"
- dependencies:
- streamx: "npm:^2.13.2"
- checksum: 10c0/00b7c63e67dffa1f7d7149f47072e61e3e788aa1221a6116cac0186f387650816927e41b0934e615f47fec6d8d9c5b93cc85952748ed0238975090dfabf17fa7
- languageName: node
- linkType: hard
-
-"stream-http@npm:^3.2.0":
- version: 3.2.0
- resolution: "stream-http@npm:3.2.0"
- dependencies:
- builtin-status-codes: "npm:^3.0.0"
- inherits: "npm:^2.0.4"
- readable-stream: "npm:^3.6.0"
- xtend: "npm:^4.0.2"
- checksum: 10c0/f128fb8076d60cd548f229554b6a1a70c08a04b7b2afd4dbe7811d20f27f7d4112562eb8bce86d72a8691df3b50573228afcf1271e55e81f981536c67498bc41
- languageName: node
- linkType: hard
-
-"streamx@npm:^2.12.0, streamx@npm:^2.12.5, streamx@npm:^2.13.2, streamx@npm:^2.14.0":
- version: 2.22.0
- resolution: "streamx@npm:2.22.0"
- dependencies:
- bare-events: "npm:^2.2.0"
- fast-fifo: "npm:^1.3.2"
- text-decoder: "npm:^1.1.0"
- dependenciesMeta:
- bare-events:
- optional: true
- checksum: 10c0/f5017998a5b6360ba652599d20ef308c8c8ab0e26c8e5f624f0706f0ea12624e94fdf1ec18318124498529a1b106a1ab1c94a1b1e1ad6c2eec7cb9c8ac1b9198
- languageName: node
- linkType: hard
-
-"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3":
- version: 4.2.3
- resolution: "string-width@npm:4.2.3"
- dependencies:
- emoji-regex: "npm:^8.0.0"
- is-fullwidth-code-point: "npm:^3.0.0"
- strip-ansi: "npm:^6.0.1"
- checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b
- languageName: node
- linkType: hard
-
-"string-width@npm:^5.0.1, string-width@npm:^5.1.2":
- version: 5.1.2
- resolution: "string-width@npm:5.1.2"
- dependencies:
- eastasianwidth: "npm:^0.2.0"
- emoji-regex: "npm:^9.2.2"
- strip-ansi: "npm:^7.0.1"
- checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca
- languageName: node
- linkType: hard
-
-"string.prototype.includes@npm:^2.0.1":
- version: 2.0.1
- resolution: "string.prototype.includes@npm:2.0.1"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.3"
- checksum: 10c0/25ce9c9b49128352a2618fbe8758b46f945817a58a4420f4799419e40a8d28f116e176c7590d767d5327a61e75c8f32c86171063f48e389b9fdd325f1bd04ee5
- languageName: node
- linkType: hard
-
-"string.prototype.matchall@npm:^4.0.12":
- version: 4.0.12
- resolution: "string.prototype.matchall@npm:4.0.12"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.6"
- es-errors: "npm:^1.3.0"
- es-object-atoms: "npm:^1.0.0"
- get-intrinsic: "npm:^1.2.6"
- gopd: "npm:^1.2.0"
- has-symbols: "npm:^1.1.0"
- internal-slot: "npm:^1.1.0"
- regexp.prototype.flags: "npm:^1.5.3"
- set-function-name: "npm:^2.0.2"
- side-channel: "npm:^1.1.0"
- checksum: 10c0/1a53328ada73f4a77f1fdf1c79414700cf718d0a8ef6672af5603e709d26a24f2181208144aed7e858b1bcc1a0d08567a570abfb45567db4ae47637ed2c2f85c
- languageName: node
- linkType: hard
-
-"string.prototype.repeat@npm:^1.0.0":
- version: 1.0.0
- resolution: "string.prototype.repeat@npm:1.0.0"
- dependencies:
- define-properties: "npm:^1.1.3"
- es-abstract: "npm:^1.17.5"
- checksum: 10c0/94c7978566cffa1327d470fd924366438af9b04b497c43a9805e476e2e908aa37a1fd34cc0911156c17556dab62159d12c7b92b3cc304c3e1281fe4c8e668f40
- languageName: node
- linkType: hard
-
-"string.prototype.trim@npm:^1.2.10":
- version: 1.2.10
- resolution: "string.prototype.trim@npm:1.2.10"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.2"
- define-data-property: "npm:^1.1.4"
- define-properties: "npm:^1.2.1"
- es-abstract: "npm:^1.23.5"
- es-object-atoms: "npm:^1.0.0"
- has-property-descriptors: "npm:^1.0.2"
- checksum: 10c0/8a8854241c4b54a948e992eb7dd6b8b3a97185112deb0037a134f5ba57541d8248dd610c966311887b6c2fd1181a3877bffb14d873ce937a344535dabcc648f8
- languageName: node
- linkType: hard
-
-"string.prototype.trimend@npm:^1.0.9":
- version: 1.0.9
- resolution: "string.prototype.trimend@npm:1.0.9"
- dependencies:
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.2"
- define-properties: "npm:^1.2.1"
- es-object-atoms: "npm:^1.0.0"
- checksum: 10c0/59e1a70bf9414cb4c536a6e31bef5553c8ceb0cf44d8b4d0ed65c9653358d1c64dd0ec203b100df83d0413bbcde38b8c5d49e14bc4b86737d74adc593a0d35b6
- languageName: node
- linkType: hard
-
-"string.prototype.trimstart@npm:^1.0.8":
- version: 1.0.8
- resolution: "string.prototype.trimstart@npm:1.0.8"
- dependencies:
- call-bind: "npm:^1.0.7"
- define-properties: "npm:^1.2.1"
- es-object-atoms: "npm:^1.0.0"
- checksum: 10c0/d53af1899959e53c83b64a5fd120be93e067da740e7e75acb433849aa640782fb6c7d4cd5b84c954c84413745a3764df135a8afeb22908b86a835290788d8366
- languageName: node
- linkType: hard
-
-"string_decoder@npm:^1.0.0, string_decoder@npm:^1.1.1":
- version: 1.3.0
- resolution: "string_decoder@npm:1.3.0"
- dependencies:
- safe-buffer: "npm:~5.2.0"
- checksum: 10c0/810614ddb030e271cd591935dcd5956b2410dd079d64ff92a1844d6b7588bf992b3e1b69b0f4d34a3e06e0bd73046ac646b5264c1987b20d0601f81ef35d731d
- languageName: node
- linkType: hard
-
-"string_decoder@npm:~1.1.1":
- version: 1.1.1
- resolution: "string_decoder@npm:1.1.1"
- dependencies:
- safe-buffer: "npm:~5.1.0"
- checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e
- languageName: node
- linkType: hard
-
-"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1":
- version: 6.0.1
- resolution: "strip-ansi@npm:6.0.1"
- dependencies:
- ansi-regex: "npm:^5.0.1"
- checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952
- languageName: node
- linkType: hard
-
-"strip-ansi@npm:^7.0.1":
- version: 7.1.0
- resolution: "strip-ansi@npm:7.1.0"
- dependencies:
- ansi-regex: "npm:^6.0.1"
- checksum: 10c0/a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4
- languageName: node
- linkType: hard
-
-"strip-bom@npm:^3.0.0":
- version: 3.0.0
- resolution: "strip-bom@npm:3.0.0"
- checksum: 10c0/51201f50e021ef16672593d7434ca239441b7b760e905d9f33df6e4f3954ff54ec0e0a06f100d028af0982d6f25c35cd5cda2ce34eaebccd0250b8befb90d8f1
- languageName: node
- linkType: hard
-
-"strip-indent@npm:^3.0.0":
- version: 3.0.0
- resolution: "strip-indent@npm:3.0.0"
- dependencies:
- min-indent: "npm:^1.0.0"
- checksum: 10c0/ae0deaf41c8d1001c5d4fbe16cb553865c1863da4fae036683b474fa926af9fc121e155cb3fc57a68262b2ae7d5b8420aa752c97a6428c315d00efe2a3875679
- languageName: node
- linkType: hard
-
-"strip-json-comments@npm:5.0.3":
- version: 5.0.3
- resolution: "strip-json-comments@npm:5.0.3"
- checksum: 10c0/daaf20b29f69fb51112698f4a9a662490dbb78d5baf6127c75a0a83c2ac6c078a8c0f74b389ad5e0519d6fc359c4a57cb9971b1ae201aef62ce45a13247791e0
- languageName: node
- linkType: hard
-
-"strip-json-comments@npm:^3.1.1":
- version: 3.1.1
- resolution: "strip-json-comments@npm:3.1.1"
- checksum: 10c0/9681a6257b925a7fa0f285851c0e613cc934a50661fa7bb41ca9cbbff89686bb4a0ee366e6ecedc4daafd01e83eee0720111ab294366fe7c185e935475ebcecd
- languageName: node
- linkType: hard
-
-"supports-color@npm:^5.3.0":
- version: 5.5.0
- resolution: "supports-color@npm:5.5.0"
- dependencies:
- has-flag: "npm:^3.0.0"
- checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05
- languageName: node
- linkType: hard
-
-"supports-color@npm:^7.1.0":
- version: 7.2.0
- resolution: "supports-color@npm:7.2.0"
- dependencies:
- has-flag: "npm:^4.0.0"
- checksum: 10c0/afb4c88521b8b136b5f5f95160c98dee7243dc79d5432db7efc27efb219385bbc7d9427398e43dd6cc730a0f87d5085ce1652af7efbe391327bc0a7d0f7fc124
- languageName: node
- linkType: hard
-
-"supports-preserve-symlinks-flag@npm:^1.0.0":
- version: 1.0.0
- resolution: "supports-preserve-symlinks-flag@npm:1.0.0"
- checksum: 10c0/6c4032340701a9950865f7ae8ef38578d8d7053f5e10518076e6554a9381fa91bd9c6850193695c141f32b21f979c985db07265a758867bac95de05f7d8aeb39
- languageName: node
- linkType: hard
-
-"svg-parser@npm:^2.0.4":
- version: 2.0.4
- resolution: "svg-parser@npm:2.0.4"
- checksum: 10c0/02f6cb155dd7b63ebc2f44f36365bc294543bebb81b614b7628f1af3c54ab64f7e1cec20f06e252bf95bdde78441ae295a412c68ad1678f16a6907d924512b7a
- languageName: node
- linkType: hard
-
-"symbol-tree@npm:^3.2.4":
- version: 3.2.4
- resolution: "symbol-tree@npm:3.2.4"
- checksum: 10c0/dfbe201ae09ac6053d163578778c53aa860a784147ecf95705de0cd23f42c851e1be7889241495e95c37cabb058edb1052f141387bef68f705afc8f9dd358509
- languageName: node
- linkType: hard
-
-"symlink-or-copy@npm:^1.1.8, symlink-or-copy@npm:^1.2.0, symlink-or-copy@npm:^1.3.1":
- version: 1.3.1
- resolution: "symlink-or-copy@npm:1.3.1"
- checksum: 10c0/0d3842c359ce56991e912623fb75e76843e71a828c72f16024d717c842954c84086d90776738a6f0d5a4314f14b56580cfa48facba6b26b4da06aa7e80595931
- languageName: node
- linkType: hard
-
-"tabbable@npm:^6.0.0":
- version: 6.2.0
- resolution: "tabbable@npm:6.2.0"
- checksum: 10c0/ced8b38f05f2de62cd46836d77c2646c42b8c9713f5bd265daf0e78ff5ac73d3ba48a7ca45f348bafeef29b23da7187c72250742d37627883ef89cbd7fa76898
- languageName: node
- linkType: hard
-
-"tar@npm:^7.5.11":
- version: 7.5.11
- resolution: "tar@npm:7.5.11"
- dependencies:
- "@isaacs/fs-minipass": "npm:^4.0.0"
- chownr: "npm:^3.0.0"
- minipass: "npm:^7.1.2"
- minizlib: "npm:^3.1.0"
- yallist: "npm:^5.0.0"
- checksum: 10c0/b6bb420550ef50ef23356018155e956cd83282c97b6128d8d5cfe5740c57582d806a244b2ef0bf686a74ce526babe8b8b9061527623e935e850008d86d838929
- languageName: node
- linkType: hard
-
-"teex@npm:^1.0.1":
- version: 1.0.1
- resolution: "teex@npm:1.0.1"
- dependencies:
- streamx: "npm:^2.12.5"
- checksum: 10c0/8df9166c037ba694b49d32a49858e314c60e513d55ac5e084dbf1ddbb827c5fa43cc389a81e87684419c21283308e9d68bb068798189c767ec4c252f890b8a77
- languageName: node
- linkType: hard
-
-"terser@npm:^5.10.0":
- version: 5.39.0
- resolution: "terser@npm:5.39.0"
- dependencies:
- "@jridgewell/source-map": "npm:^0.3.3"
- acorn: "npm:^8.8.2"
- commander: "npm:^2.20.0"
- source-map-support: "npm:~0.5.20"
- bin:
- terser: bin/terser
- checksum: 10c0/83326545ea1aecd6261030568b6191ccfa4cb6aa61d9ea41746a52479f50017a78b77e4725fbbc207c5df841ffa66a773c5ac33636e95c7ab94fe7e0379ae5c7
- languageName: node
- linkType: hard
-
-"text-decoder@npm:^1.1.0":
- version: 1.2.3
- resolution: "text-decoder@npm:1.2.3"
- dependencies:
- b4a: "npm:^1.6.4"
- checksum: 10c0/569d776b9250158681c83656ef2c3e0a5d5c660c27ca69f87eedef921749a4fbf02095e5f9a0f862a25cf35258379b06e31dee9c125c9f72e273b7ca1a6d1977
- languageName: node
- linkType: hard
-
-"text-table@npm:^0.2.0":
- version: 0.2.0
- resolution: "text-table@npm:0.2.0"
- checksum: 10c0/02805740c12851ea5982686810702e2f14369a5f4c5c40a836821e3eefc65ffeec3131ba324692a37608294b0fd8c1e55a2dd571ffed4909822787668ddbee5c
- languageName: node
- linkType: hard
-
-"through2@npm:^2.0.1":
- version: 2.0.5
- resolution: "through2@npm:2.0.5"
- dependencies:
- readable-stream: "npm:~2.3.6"
- xtend: "npm:~4.0.1"
- checksum: 10c0/cbfe5b57943fa12b4f8c043658c2a00476216d79c014895cef1ac7a1d9a8b31f6b438d0e53eecbb81054b93128324a82ecd59ec1a4f91f01f7ac113dcb14eade
- languageName: node
- linkType: hard
-
-"timers-browserify@npm:^2.0.4":
- version: 2.0.12
- resolution: "timers-browserify@npm:2.0.12"
- dependencies:
- setimmediate: "npm:^1.0.4"
- checksum: 10c0/98e84db1a685bc8827c117a8bc62aac811ad56a995d07938fc7ed8cdc5bf3777bfe2d4e5da868847194e771aac3749a20f6cdd22091300fe889a76fe214a4641
- languageName: node
- linkType: hard
-
-"tinybench@npm:^2.9.0":
- version: 2.9.0
- resolution: "tinybench@npm:2.9.0"
- checksum: 10c0/c3500b0f60d2eb8db65250afe750b66d51623057ee88720b7f064894a6cb7eb93360ca824a60a31ab16dab30c7b1f06efe0795b352e37914a9d4bad86386a20c
- languageName: node
- linkType: hard
-
-"tinyexec@npm:^1.0.2":
- version: 1.0.2
- resolution: "tinyexec@npm:1.0.2"
- checksum: 10c0/1261a8e34c9b539a9aae3b7f0bb5372045ff28ee1eba035a2a059e532198fe1a182ec61ac60fa0b4a4129f0c4c4b1d2d57355b5cb9aa2d17ac9454ecace502ee
- languageName: node
- linkType: hard
-
-"tinyglobby@npm:^0.2.15":
- version: 0.2.15
- resolution: "tinyglobby@npm:0.2.15"
- dependencies:
- fdir: "npm:^6.5.0"
- picomatch: "npm:^4.0.3"
- checksum: 10c0/869c31490d0d88eedb8305d178d4c75e7463e820df5a9b9d388291daf93e8b1eb5de1dad1c1e139767e4269fe75f3b10d5009b2cc14db96ff98986920a186844
- languageName: node
- linkType: hard
-
-"tinyrainbow@npm:^2.0.0":
- version: 2.0.0
- resolution: "tinyrainbow@npm:2.0.0"
- checksum: 10c0/c83c52bef4e0ae7fb8ec6a722f70b5b6fa8d8be1c85792e829f56c0e1be94ab70b293c032dc5048d4d37cfe678f1f5babb04bdc65fd123098800148ca989184f
- languageName: node
- linkType: hard
-
-"tinyrainbow@npm:^3.0.3":
- version: 3.1.0
- resolution: "tinyrainbow@npm:3.1.0"
- checksum: 10c0/f11cf387a26c5c9255bec141a90ac511b26172981b10c3e50053bc6700ea7d2336edcc4a3a21dbb8412fe7c013477d2ba4d7e4877800f3f8107be5105aad6511
- languageName: node
- linkType: hard
-
-"tldts-core@npm:^6.1.48":
- version: 6.1.48
- resolution: "tldts-core@npm:6.1.48"
- checksum: 10c0/3e635ff51848e2f1bf4f325f1e8c627943c8615cf47e5d5301744798ded49df51d72288f27964ea06e9e0c02f05d75c98d5e89fa468663d315cd80b1d66687b1
- languageName: node
- linkType: hard
-
-"tldts@npm:^6.1.32":
- version: 6.1.48
- resolution: "tldts@npm:6.1.48"
- dependencies:
- tldts-core: "npm:^6.1.48"
- bin:
- tldts: bin/cli.js
- checksum: 10c0/eefa0f871df25159faebcb79e0ae2de83f3fd6bd1f0d19ec87a15d69017a8c887a68eacfdf85d84f36b7a3aaf6583bf2337d22edb1406df7d5dc0aaffb2444f7
- languageName: node
- linkType: hard
-
-"to-buffer@npm:^1.2.0, to-buffer@npm:^1.2.1, to-buffer@npm:^1.2.2":
- version: 1.2.2
- resolution: "to-buffer@npm:1.2.2"
- dependencies:
- isarray: "npm:^2.0.5"
- safe-buffer: "npm:^5.2.1"
- typed-array-buffer: "npm:^1.0.3"
- checksum: 10c0/56bc56352f14a2c4a0ab6277c5fc19b51e9534882b98eb068b39e14146591e62fa5b06bf70f7fed1626230463d7e60dca81e815096656e5e01c195c593873d12
- languageName: node
- linkType: hard
-
-"to-regex-range@npm:^5.0.1":
- version: 5.0.1
- resolution: "to-regex-range@npm:5.0.1"
- dependencies:
- is-number: "npm:^7.0.0"
- checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892
- languageName: node
- linkType: hard
-
-"to-through@npm:^3.0.0":
- version: 3.0.0
- resolution: "to-through@npm:3.0.0"
- dependencies:
- streamx: "npm:^2.12.5"
- checksum: 10c0/9b1a6eb85ceff159db21678b7d9aec1d8b99a63dae01ce95b074df1f37f9d92e3ed7d5284f394917a079dda37d53f8eeef8fc74ef506b97cc35629925f29b464
- languageName: node
- linkType: hard
-
-"to-valid-identifier@npm:^1.0.0":
- version: 1.0.0
- resolution: "to-valid-identifier@npm:1.0.0"
- dependencies:
- "@sindresorhus/base62": "npm:^1.0.0"
- reserved-identifiers: "npm:^1.0.0"
- checksum: 10c0/569b49f43b5aaaa20677e67f0f1cdcff344855149934cfb80c793c7ac7c30e191b224bc81cab40fb57641af9ca73795c78053c164a2addc617671e2d22c13a4a
- languageName: node
- linkType: hard
-
-"toggle-selection@npm:^1.0.6":
- version: 1.0.6
- resolution: "toggle-selection@npm:1.0.6"
- checksum: 10c0/f2cf1f2c70f374fd87b0cdc8007453ba9e981c4305a8bf4eac10a30e62ecdfd28bca7d18f8f15b15a506bf8a7bfb20dbe3539f0fcf2a2c8396c1a78d53e1f179
- languageName: node
- linkType: hard
-
-"tough-cookie@npm:^5.1.1":
- version: 5.1.2
- resolution: "tough-cookie@npm:5.1.2"
- dependencies:
- tldts: "npm:^6.1.32"
- checksum: 10c0/5f95023a47de0f30a902bba951664b359725597d8adeabc66a0b93a931c3af801e1e697dae4b8c21a012056c0ea88bd2bf4dfe66b2adcf8e2f42cd9796fe0626
- languageName: node
- linkType: hard
-
-"tr46@npm:^5.0.0":
- version: 5.0.0
- resolution: "tr46@npm:5.0.0"
- dependencies:
- punycode: "npm:^2.3.1"
- checksum: 10c0/1521b6e7bbc8adc825c4561480f9fe48eb2276c81335eed9fa610aa4c44a48a3221f78b10e5f18b875769eb3413e30efbf209ed556a17a42aa8d690df44b7bee
- languageName: node
- linkType: hard
-
-"tr46@npm:^5.1.0":
- version: 5.1.1
- resolution: "tr46@npm:5.1.1"
- dependencies:
- punycode: "npm:^2.3.1"
- checksum: 10c0/ae270e194d52ec67ebd695c1a42876e0f19b96e4aca2ab464ab1d9d17dc3acd3e18764f5034c93897db73421563be27c70c98359c4501136a497e46deda5d5ec
- languageName: node
- linkType: hard
-
-"tr46@npm:~0.0.3":
- version: 0.0.3
- resolution: "tr46@npm:0.0.3"
- checksum: 10c0/047cb209a6b60c742f05c9d3ace8fa510bff609995c129a37ace03476a9b12db4dbf975e74600830ef0796e18882b2381fb5fb1f6b4f96b832c374de3ab91a11
- languageName: node
- linkType: hard
-
-"ts-api-utils@npm:^2.0.1":
- version: 2.0.1
- resolution: "ts-api-utils@npm:2.0.1"
- peerDependencies:
- typescript: ">=4.8.4"
- checksum: 10c0/23fd56a958b332cac00150a652e4c84730df30571bd2faa1ba6d7b511356d1a61656621492bb6c7f15dd6e18847a1408357a0e406671d358115369a17f5bfedd
- languageName: node
- linkType: hard
-
-"ts-api-utils@npm:^2.4.0":
- version: 2.4.0
- resolution: "ts-api-utils@npm:2.4.0"
- peerDependencies:
- typescript: ">=4.8.4"
- checksum: 10c0/ed185861aef4e7124366a3f6561113557a57504267d4d452a51e0ba516a9b6e713b56b4aeaab9fa13de9db9ab755c65c8c13a777dba9133c214632cb7b65c083
- languageName: node
- linkType: hard
-
-"ts-debounce@npm:^4.0.0":
- version: 4.0.0
- resolution: "ts-debounce@npm:4.0.0"
- checksum: 10c0/1dfac630127d6982b4ad5114a12bd3e8febfd7a34615e6bf388eaf3a5c355f9ab2ef688688bb7e789bc9f0cabfd82e0a6b363efc451ee626b5722919f7f567cd
- languageName: node
- linkType: hard
-
-"tsconfig-paths@npm:^3.15.0":
- version: 3.15.0
- resolution: "tsconfig-paths@npm:3.15.0"
- dependencies:
- "@types/json5": "npm:^0.0.29"
- json5: "npm:^1.0.2"
- minimist: "npm:^1.2.6"
- strip-bom: "npm:^3.0.0"
- checksum: 10c0/5b4f301a2b7a3766a986baf8fc0e177eb80bdba6e396792ff92dc23b5bca8bb279fc96517dcaaef63a3b49bebc6c4c833653ec58155780bc906bdbcf7dda0ef5
- languageName: node
- linkType: hard
-
-"tslib@npm:2.8.1, tslib@npm:^2.0.0, tslib@npm:^2.0.3, tslib@npm:^2.1.0, tslib@npm:^2.4.0, tslib@npm:^2.8.0, tslib@npm:^2.8.1":
- version: 2.8.1
- resolution: "tslib@npm:2.8.1"
- checksum: 10c0/9c4759110a19c53f992d9aae23aac5ced636e99887b51b9e61def52611732872ff7668757d4e4c61f19691e36f4da981cd9485e869b4a7408d689f6bf1f14e62
- languageName: node
- linkType: hard
-
-"tslib@npm:^1.8.1":
- version: 1.14.1
- resolution: "tslib@npm:1.14.1"
- checksum: 10c0/69ae09c49eea644bc5ebe1bca4fa4cc2c82b7b3e02f43b84bd891504edf66dbc6b2ec0eef31a957042de2269139e4acff911e6d186a258fb14069cd7f6febce2
- languageName: node
- linkType: hard
-
-"tsutils-etc@npm:^1.4.1":
- version: 1.4.2
- resolution: "tsutils-etc@npm:1.4.2"
- dependencies:
- "@types/yargs": "npm:^17.0.0"
- yargs: "npm:^17.0.0"
- peerDependencies:
- tsutils: ^3.0.0
- typescript: ">=4.0.0"
- bin:
- ts-flags: bin/ts-flags
- ts-kind: bin/ts-kind
- checksum: 10c0/7b07273627f2f4af2a785a073d0fead7c0c0d1133fee68e5de19f2aca4b01ea35a08de2c97e75f58fb6ba6ddb03ad490abf056bb8b71fb01e84bfed1b8a24a0d
- languageName: node
- linkType: hard
-
-"tsutils@npm:^3.0.0, tsutils@npm:^3.17.1, tsutils@npm:^3.21.0":
- version: 3.21.0
- resolution: "tsutils@npm:3.21.0"
- dependencies:
- tslib: "npm:^1.8.1"
- peerDependencies:
- typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
- checksum: 10c0/02f19e458ec78ead8fffbf711f834ad8ecd2cc6ade4ec0320790713dccc0a412b99e7fd907c4cda2a1dc602c75db6f12e0108e87a5afad4b2f9e90a24cabd5a2
- languageName: node
- linkType: hard
-
-"tty-browserify@npm:0.0.1":
- version: 0.0.1
- resolution: "tty-browserify@npm:0.0.1"
- checksum: 10c0/5e34883388eb5f556234dae75b08e069b9e62de12bd6d87687f7817f5569430a6dfef550b51dbc961715ae0cd0eb5a059e6e3fc34dc127ea164aa0f9b5bb033d
- languageName: node
- linkType: hard
-
-"tunnel@npm:^0.0.6":
- version: 0.0.6
- resolution: "tunnel@npm:0.0.6"
- checksum: 10c0/e27e7e896f2426c1c747325b5f54efebc1a004647d853fad892b46d64e37591ccd0b97439470795e5262b5c0748d22beb4489a04a0a448029636670bfd801b75
- languageName: node
- linkType: hard
-
-"type-check@npm:^0.4.0, type-check@npm:~0.4.0":
- version: 0.4.0
- resolution: "type-check@npm:0.4.0"
- dependencies:
- prelude-ls: "npm:^1.2.1"
- checksum: 10c0/7b3fd0ed43891e2080bf0c5c504b418fbb3e5c7b9708d3d015037ba2e6323a28152ec163bcb65212741fa5d2022e3075ac3c76440dbd344c9035f818e8ecee58
- languageName: node
- linkType: hard
-
-"type-fest@npm:^0.20.2":
- version: 0.20.2
- resolution: "type-fest@npm:0.20.2"
- checksum: 10c0/dea9df45ea1f0aaa4e2d3bed3f9a0bfe9e5b2592bddb92eb1bf06e50bcf98dbb78189668cd8bc31a0511d3fc25539b4cd5c704497e53e93e2d40ca764b10bfc3
- languageName: node
- linkType: hard
-
-"type-fest@npm:^0.6.0":
- version: 0.6.0
- resolution: "type-fest@npm:0.6.0"
- checksum: 10c0/0c585c26416fce9ecb5691873a1301b5aff54673c7999b6f925691ed01f5b9232db408cdbb0bd003d19f5ae284322523f44092d1f81ca0a48f11f7cf0be8cd38
- languageName: node
- linkType: hard
-
-"type-fest@npm:^0.8.1":
- version: 0.8.1
- resolution: "type-fest@npm:0.8.1"
- checksum: 10c0/dffbb99329da2aa840f506d376c863bd55f5636f4741ad6e65e82f5ce47e6914108f44f340a0b74009b0cb5d09d6752ae83203e53e98b1192cf80ecee5651636
- languageName: node
- linkType: hard
-
-"typed-array-buffer@npm:^1.0.3":
- version: 1.0.3
- resolution: "typed-array-buffer@npm:1.0.3"
- dependencies:
- call-bound: "npm:^1.0.3"
- es-errors: "npm:^1.3.0"
- is-typed-array: "npm:^1.1.14"
- checksum: 10c0/1105071756eb248774bc71646bfe45b682efcad93b55532c6ffa4518969fb6241354e4aa62af679ae83899ec296d69ef88f1f3763657cdb3a4d29321f7b83079
- languageName: node
- linkType: hard
-
-"typed-array-byte-length@npm:^1.0.3":
- version: 1.0.3
- resolution: "typed-array-byte-length@npm:1.0.3"
- dependencies:
- call-bind: "npm:^1.0.8"
- for-each: "npm:^0.3.3"
- gopd: "npm:^1.2.0"
- has-proto: "npm:^1.2.0"
- is-typed-array: "npm:^1.1.14"
- checksum: 10c0/6ae083c6f0354f1fce18b90b243343b9982affd8d839c57bbd2c174a5d5dc71be9eb7019ffd12628a96a4815e7afa85d718d6f1e758615151d5f35df841ffb3e
- languageName: node
- linkType: hard
-
-"typed-array-byte-offset@npm:^1.0.4":
- version: 1.0.4
- resolution: "typed-array-byte-offset@npm:1.0.4"
- dependencies:
- available-typed-arrays: "npm:^1.0.7"
- call-bind: "npm:^1.0.8"
- for-each: "npm:^0.3.3"
- gopd: "npm:^1.2.0"
- has-proto: "npm:^1.2.0"
- is-typed-array: "npm:^1.1.15"
- reflect.getprototypeof: "npm:^1.0.9"
- checksum: 10c0/3d805b050c0c33b51719ee52de17c1cd8e6a571abdf0fffb110e45e8dd87a657e8b56eee94b776b13006d3d347a0c18a730b903cf05293ab6d92e99ff8f77e53
- languageName: node
- linkType: hard
-
-"typed-array-length@npm:^1.0.7":
- version: 1.0.7
- resolution: "typed-array-length@npm:1.0.7"
- dependencies:
- call-bind: "npm:^1.0.7"
- for-each: "npm:^0.3.3"
- gopd: "npm:^1.0.1"
- is-typed-array: "npm:^1.1.13"
- possible-typed-array-names: "npm:^1.0.0"
- reflect.getprototypeof: "npm:^1.0.6"
- checksum: 10c0/e38f2ae3779584c138a2d8adfa8ecf749f494af3cd3cdafe4e688ce51418c7d2c5c88df1bd6be2bbea099c3f7cea58c02ca02ed438119e91f162a9de23f61295
- languageName: node
- linkType: hard
-
-"typed-emitter@npm:^2.1.0":
- version: 2.1.0
- resolution: "typed-emitter@npm:2.1.0"
- dependencies:
- rxjs: "npm:*"
- dependenciesMeta:
- rxjs:
- optional: true
- checksum: 10c0/01fc354ba8e87bd39b1bf4fe1c96fe7ecff7fde83161003b0f8c7f4b285a368052e185ba655dd8c102c4445301b7a1e032c8972f181b440fc95bd810450f1314
- languageName: node
- linkType: hard
-
-"typescript-eslint-language-service@npm:^5.0.5":
- version: 5.0.5
- resolution: "typescript-eslint-language-service@npm:5.0.5"
- peerDependencies:
- "@typescript-eslint/parser": ">= 5.0.0"
- eslint: ">= 8.0.0"
- typescript: ">= 4.0.0"
- checksum: 10c0/61b3ce5a124ad3b2ea6ac06b19e8192b1f3f5db01ecaf3009302979172b2eeaee78f9051fd4a687230b55acadc5272ecf90297d57b09078c97a271016ccbcf07
- languageName: node
- linkType: hard
-
-"typescript@npm:^5.0.4, typescript@npm:^5.8.3":
- version: 5.9.3
- resolution: "typescript@npm:5.9.3"
- bin:
- tsc: bin/tsc
- tsserver: bin/tsserver
- checksum: 10c0/6bd7552ce39f97e711db5aa048f6f9995b53f1c52f7d8667c1abdc1700c68a76a308f579cd309ce6b53646deb4e9a1be7c813a93baaf0a28ccd536a30270e1c5
- languageName: node
- linkType: hard
-
-"typescript@patch:typescript@npm%3A^5.0.4#optional!builtin, typescript@patch:typescript@npm%3A^5.8.3#optional!builtin":
- version: 5.9.3
- resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=5786d5"
- bin:
- tsc: bin/tsc
- tsserver: bin/tsserver
- checksum: 10c0/ad09fdf7a756814dce65bc60c1657b40d44451346858eea230e10f2e95a289d9183b6e32e5c11e95acc0ccc214b4f36289dcad4bf1886b0adb84d711d336a430
- languageName: node
- linkType: hard
-
-"unbash@npm:^2.2.0":
- version: 2.2.0
- resolution: "unbash@npm:2.2.0"
- checksum: 10c0/f218a30e2b65147dba16fcea5d9cbfe5af9d9518e98083b9790b9884959c82c5c8f85e7feeea717430e2ea6b352a1d57ad98e90fe488638606de12c9254cbf35
- languageName: node
- linkType: hard
-
-"unbox-primitive@npm:^1.1.0":
- version: 1.1.0
- resolution: "unbox-primitive@npm:1.1.0"
- dependencies:
- call-bound: "npm:^1.0.3"
- has-bigints: "npm:^1.0.2"
- has-symbols: "npm:^1.1.0"
- which-boxed-primitive: "npm:^1.1.1"
- checksum: 10c0/7dbd35ab02b0e05fe07136c72cb9355091242455473ec15057c11430129bab38b7b3624019b8778d02a881c13de44d63cd02d122ee782fb519e1de7775b5b982
- languageName: node
- linkType: hard
-
-"underscore.string@npm:~3.3.4":
- version: 3.3.6
- resolution: "underscore.string@npm:3.3.6"
- dependencies:
- sprintf-js: "npm:^1.1.1"
- util-deprecate: "npm:^1.0.2"
- checksum: 10c0/172319c7ef5436587e6f0fb5afe0b2e6b50f723a4070c7fb3454c5dfa5398ed3b7042c049eac2826bdd44d37cbd16b2b965d0ccc1597fde354b1d3a846fd4a39
- languageName: node
- linkType: hard
-
-"undici-types@npm:~7.16.0":
- version: 7.16.0
- resolution: "undici-types@npm:7.16.0"
- checksum: 10c0/3033e2f2b5c9f1504bdc5934646cb54e37ecaca0f9249c983f7b1fc2e87c6d18399ebb05dc7fd5419e02b2e915f734d872a65da2e3eeed1813951c427d33cc9a
- languageName: node
- linkType: hard
-
-"undici-types@npm:~7.18.0":
- version: 7.18.2
- resolution: "undici-types@npm:7.18.2"
- checksum: 10c0/85a79189113a238959d7a647368e4f7c5559c3a404ebdb8fc4488145ce9426fcd82252a844a302798dfc0e37e6fb178ff481ed03bc4caf634c5757d9ef43521d
- languageName: node
- linkType: hard
-
-"undici@npm:^5.25.4":
- version: 5.29.0
- resolution: "undici@npm:5.29.0"
- dependencies:
- "@fastify/busboy": "npm:^2.0.0"
- checksum: 10c0/e4e4d631ca54ee0ad82d2e90e7798fa00a106e27e6c880687e445cc2f13b4bc87c5eba2a88c266c3eecffb18f26e227b778412da74a23acc374fca7caccec49b
- languageName: node
- linkType: hard
-
-"undici@npm:^6.19.5":
- version: 6.21.3
- resolution: "undici@npm:6.21.3"
- checksum: 10c0/294da109853fad7a6ef5a172ad0ca3fb3f1f60cf34703d062a5ec967daf69ad8c03b52e6d536c5cba3bb65615769bf08e5b30798915cbccdddaca01045173dda
- languageName: node
- linkType: hard
-
-"unhomoglyph@npm:^1.0.6":
- version: 1.0.6
- resolution: "unhomoglyph@npm:1.0.6"
- checksum: 10c0/a720b7eadf3d756351eb66971d10e07c5b4a93fb930d0322604d0ba125dea752f6e2d38959bdc493dc7d50f12df6bb369d14e7e41dffed55602cae10d66c3b29
- languageName: node
- linkType: hard
-
-"unicode-canonical-property-names-ecmascript@npm:^2.0.0":
- version: 2.0.1
- resolution: "unicode-canonical-property-names-ecmascript@npm:2.0.1"
- checksum: 10c0/f83bc492fdbe662860795ef37a85910944df7310cac91bd778f1c19ebc911e8b9cde84e703de631e5a2fcca3905e39896f8fc5fc6a44ddaf7f4aff1cda24f381
- languageName: node
- linkType: hard
-
-"unicode-match-property-ecmascript@npm:^2.0.0":
- version: 2.0.0
- resolution: "unicode-match-property-ecmascript@npm:2.0.0"
- dependencies:
- unicode-canonical-property-names-ecmascript: "npm:^2.0.0"
- unicode-property-aliases-ecmascript: "npm:^2.0.0"
- checksum: 10c0/4d05252cecaf5c8e36d78dc5332e03b334c6242faf7cf16b3658525441386c0a03b5f603d42cbec0f09bb63b9fd25c9b3b09667aee75463cac3efadae2cd17ec
- languageName: node
- linkType: hard
-
-"unicode-match-property-value-ecmascript@npm:^2.1.0":
- version: 2.2.0
- resolution: "unicode-match-property-value-ecmascript@npm:2.2.0"
- checksum: 10c0/1d0a2deefd97974ddff5b7cb84f9884177f4489928dfcebb4b2b091d6124f2739df51fc6ea15958e1b5637ac2a24cff9bf21ea81e45335086ac52c0b4c717d6d
- languageName: node
- linkType: hard
-
-"unicode-match-property-value-ecmascript@npm:^2.2.1":
- version: 2.2.1
- resolution: "unicode-match-property-value-ecmascript@npm:2.2.1"
- checksum: 10c0/93acd1ad9496b600e5379d1aaca154cf551c5d6d4a0aefaf0984fc2e6288e99220adbeb82c935cde461457fb6af0264a1774b8dfd4d9a9e31548df3352a4194d
- languageName: node
- linkType: hard
-
-"unicode-property-aliases-ecmascript@npm:^2.0.0":
- version: 2.1.0
- resolution: "unicode-property-aliases-ecmascript@npm:2.1.0"
- checksum: 10c0/50ded3f8c963c7785e48c510a3b7c6bc4e08a579551489aa0349680a35b1ceceec122e33b2b6c1b579d0be2250f34bb163ac35f5f8695fe10bbc67fb757f0af8
- languageName: node
- linkType: hard
-
-"unique-filename@npm:^4.0.0":
- version: 4.0.0
- resolution: "unique-filename@npm:4.0.0"
- dependencies:
- unique-slug: "npm:^5.0.0"
- checksum: 10c0/38ae681cceb1408ea0587b6b01e29b00eee3c84baee1e41fd5c16b9ed443b80fba90c40e0ba69627e30855570a34ba8b06702d4a35035d4b5e198bf5a64c9ddc
- languageName: node
- linkType: hard
-
-"unique-names-generator@npm:^4.6.0":
- version: 4.7.1
- resolution: "unique-names-generator@npm:4.7.1"
- checksum: 10c0/db07b9a0fee6eac4a21cf567c9744ee97895aa744d51ec913557205173a65c1a7a4d12470295796acb7247e6646e7975c340bb634c7adf41e5d950fa5cf94375
- languageName: node
- linkType: hard
-
-"unique-slug@npm:^5.0.0":
- version: 5.0.0
- resolution: "unique-slug@npm:5.0.0"
- dependencies:
- imurmurhash: "npm:^0.1.4"
- checksum: 10c0/d324c5a44887bd7e105ce800fcf7533d43f29c48757ac410afd42975de82cc38ea2035c0483f4de82d186691bf3208ef35c644f73aa2b1b20b8e651be5afd293
- languageName: node
- linkType: hard
-
-"universal-user-agent@npm:^6.0.0":
- version: 6.0.1
- resolution: "universal-user-agent@npm:6.0.1"
- checksum: 10c0/5c9c46ffe19a975e11e6443640ed4c9e0ce48fcc7203325757a8414ac49940ebb0f4667f2b1fa561489d1eb22cb2d05a0f7c82ec20c5cba42e58e188fb19b187
- languageName: node
- linkType: hard
-
-"universalify@npm:^0.1.0":
- version: 0.1.2
- resolution: "universalify@npm:0.1.2"
- checksum: 10c0/e70e0339f6b36f34c9816f6bf9662372bd241714dc77508d231d08386d94f2c4aa1ba1318614f92015f40d45aae1b9075cd30bd490efbe39387b60a76ca3f045
- languageName: node
- linkType: hard
-
-"universalify@npm:^2.0.0":
- version: 2.0.1
- resolution: "universalify@npm:2.0.1"
- checksum: 10c0/73e8ee3809041ca8b818efb141801a1004e3fc0002727f1531f4de613ea281b494a40909596dae4a042a4fb6cd385af5d4db2e137b1362e0e91384b828effd3a
- languageName: node
- linkType: hard
-
-"unplugin@npm:1.0.1":
- version: 1.0.1
- resolution: "unplugin@npm:1.0.1"
- dependencies:
- acorn: "npm:^8.8.1"
- chokidar: "npm:^3.5.3"
- webpack-sources: "npm:^3.2.3"
- webpack-virtual-modules: "npm:^0.5.0"
- checksum: 10c0/7d59b5a28abc1cdbd6356a10f273d1266f59c3be083ab0e659a37d02d047d5df1b435e0f40f5ec97517e8fc910d314592f0d197ccceb75ef47c71c1898ec7a05
- languageName: node
- linkType: hard
-
-"unplugin@npm:^1.10.1":
- version: 1.16.1
- resolution: "unplugin@npm:1.16.1"
- dependencies:
- acorn: "npm:^8.14.0"
- webpack-virtual-modules: "npm:^0.6.2"
- checksum: 10c0/dd5f8c5727d0135847da73cf03fb199107f1acf458167034886fda3405737dab871ad3926431b4f70e1e82cdac482ac1383cea4019d782a68515c8e3e611b6cc
- languageName: node
- linkType: hard
-
-"update-browserslist-db@npm:^1.1.1":
- version: 1.1.3
- resolution: "update-browserslist-db@npm:1.1.3"
- dependencies:
- escalade: "npm:^3.2.0"
- picocolors: "npm:^1.1.1"
- peerDependencies:
- browserslist: ">= 4.21.0"
- bin:
- update-browserslist-db: cli.js
- checksum: 10c0/682e8ecbf9de474a626f6462aa85927936cdd256fe584c6df2508b0df9f7362c44c957e9970df55dfe44d3623807d26316ea2c7d26b80bb76a16c56c37233c32
- languageName: node
- linkType: hard
-
-"update-browserslist-db@npm:^1.2.0":
- version: 1.2.3
- resolution: "update-browserslist-db@npm:1.2.3"
- dependencies:
- escalade: "npm:^3.2.0"
- picocolors: "npm:^1.1.1"
- peerDependencies:
- browserslist: ">= 4.21.0"
- bin:
- update-browserslist-db: cli.js
- checksum: 10c0/13a00355ea822388f68af57410ce3255941d5fb9b7c49342c4709a07c9f230bbef7f7499ae0ca7e0de532e79a82cc0c4edbd125f1a323a1845bf914efddf8bec
- languageName: node
- linkType: hard
-
-"uri-js@npm:^4.2.2":
- version: 4.4.1
- resolution: "uri-js@npm:4.4.1"
- dependencies:
- punycode: "npm:^2.1.0"
- checksum: 10c0/4ef57b45aa820d7ac6496e9208559986c665e49447cb072744c13b66925a362d96dd5a46c4530a6b8e203e5db5fe849369444440cb22ecfc26c679359e5dfa3c
- languageName: node
- linkType: hard
-
-"url@npm:^0.11.4":
- version: 0.11.4
- resolution: "url@npm:0.11.4"
- dependencies:
- punycode: "npm:^1.4.1"
- qs: "npm:^6.12.3"
- checksum: 10c0/cc93405ae4a9b97a2aa60ca67f1cb1481c0221cb4725a7341d149be5e2f9cfda26fd432d64dbbec693d16593b68b8a46aad8e5eab21f814932134c9d8620c662
- languageName: node
- linkType: hard
-
-"use-callback-ref@npm:^1.3.3":
- version: 1.3.3
- resolution: "use-callback-ref@npm:1.3.3"
- dependencies:
- tslib: "npm:^2.0.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/f887488c6e6075cdad4962979da1714b217bcb1ee009a9e57ce9a844bcfc4c3a99e93983dfc2e5af9e0913824d24e730090ff255e902c516dcb58d2d3837e01c
- languageName: node
- linkType: hard
-
-"use-sidecar@npm:^1.1.2, use-sidecar@npm:^1.1.3":
- version: 1.1.3
- resolution: "use-sidecar@npm:1.1.3"
- dependencies:
- detect-node-es: "npm:^1.1.0"
- tslib: "npm:^2.0.0"
- peerDependencies:
- "@types/react": "*"
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc
- peerDependenciesMeta:
- "@types/react":
- optional: true
- checksum: 10c0/161599bf921cfaa41c85d2b01c871975ee99260f3e874c2d41c05890d41170297bdcf314bc5185e7a700de2034ac5b888e3efc8e9f35724f4918f53538d717c9
- languageName: node
- linkType: hard
-
-"use-sync-external-store@npm:^1.6.0":
- version: 1.6.0
- resolution: "use-sync-external-store@npm:1.6.0"
- peerDependencies:
- react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- checksum: 10c0/35e1179f872a53227bdf8a827f7911da4c37c0f4091c29b76b1e32473d1670ebe7bcd880b808b7549ba9a5605c233350f800ffab963ee4a4ee346ee983b6019b
- languageName: node
- linkType: hard
-
-"usehooks-ts@npm:3.1.1":
- version: 3.1.1
- resolution: "usehooks-ts@npm:3.1.1"
- dependencies:
- lodash.debounce: "npm:^4.0.8"
- peerDependencies:
- react: ^16.8.0 || ^17 || ^18 || ^19 || ^19.0.0-rc
- checksum: 10c0/8bbebf52b063f2e705eb27364f08ec2eff987b9e8d28d82a28248652dd89ef53cb514e1f2ee1cbc6ac6e083a8dce86310301c3e92a99902b98c32a26381202d7
- 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"
- checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942
- languageName: node
- linkType: hard
-
-"util@npm:^0.12.4, util@npm:^0.12.5":
- version: 0.12.5
- resolution: "util@npm:0.12.5"
- dependencies:
- inherits: "npm:^2.0.3"
- is-arguments: "npm:^1.0.4"
- is-generator-function: "npm:^1.0.7"
- is-typed-array: "npm:^1.1.3"
- which-typed-array: "npm:^1.1.2"
- checksum: 10c0/c27054de2cea2229a66c09522d0fa1415fb12d861d08523a8846bf2e4cbf0079d4c3f725f09dcb87493549bcbf05f5798dce1688b53c6c17201a45759e7253f3
- languageName: node
- linkType: hard
-
-"uuid@npm:13, uuid@npm:^13.0.0":
- version: 13.0.0
- resolution: "uuid@npm:13.0.0"
- bin:
- uuid: dist-node/bin/uuid
- checksum: 10c0/950e4c18d57fef6c69675344f5700a08af21e26b9eff2bf2180427564297368c538ea11ac9fb2e6528b17fc3966a9fd2c5049361b0b63c7d654f3c550c9b3d67
- languageName: node
- linkType: hard
-
-"validate-npm-package-license@npm:^3.0.1":
- version: 3.0.4
- resolution: "validate-npm-package-license@npm:3.0.4"
- dependencies:
- spdx-correct: "npm:^3.0.0"
- spdx-expression-parse: "npm:^3.0.0"
- checksum: 10c0/7b91e455a8de9a0beaa9fe961e536b677da7f48c9a493edf4d4d4a87fd80a7a10267d438723364e432c2fcd00b5650b5378275cded362383ef570276e6312f4f
- languageName: node
- linkType: hard
-
-"value-or-function@npm:^4.0.0":
- version: 4.0.0
- resolution: "value-or-function@npm:4.0.0"
- checksum: 10c0/1ac6f3ce4c2d811f9fb99a50a69df1d3960376cd1d8fa89106f746a251cb7a0bccb62199972c00beecb5f4911b7a65465b6624d198108ca90dc95cfbf1643230
- languageName: node
- linkType: hard
-
-"vaul@npm:^1.0.0":
- version: 1.1.2
- resolution: "vaul@npm:1.1.2"
- dependencies:
- "@radix-ui/react-dialog": "npm:^1.1.1"
- peerDependencies:
- react: ^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc
- react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0.0 || ^19.0.0-rc
- checksum: 10c0/a6da539eb5576c0004a6b17e3673ea1db2c34e80355860131183abf53279ce025bbd016d542c345d1cc8464ad12f9dc9860949c751055d8a84961e8472a53707
- languageName: node
- linkType: hard
-
-"vinyl-contents@npm:^2.0.0":
- version: 2.0.0
- resolution: "vinyl-contents@npm:2.0.0"
- dependencies:
- bl: "npm:^5.0.0"
- vinyl: "npm:^3.0.0"
- checksum: 10c0/b50ddf02c48fa5f89fc14bce470a375cfe74ffd6f8081836ee22f3b731e37bf1ef56761eea73377037325c79784ddc5b90000f8bddd418b87b75ea3f6320f16b
- languageName: node
- linkType: hard
-
-"vinyl-fs@npm:^4.0.0":
- version: 4.0.0
- resolution: "vinyl-fs@npm:4.0.0"
- dependencies:
- fs-mkdirp-stream: "npm:^2.0.1"
- glob-stream: "npm:^8.0.0"
- graceful-fs: "npm:^4.2.11"
- iconv-lite: "npm:^0.6.3"
- is-valid-glob: "npm:^1.0.0"
- lead: "npm:^4.0.0"
- normalize-path: "npm:3.0.0"
- resolve-options: "npm:^2.0.0"
- stream-composer: "npm:^1.0.2"
- streamx: "npm:^2.14.0"
- to-through: "npm:^3.0.0"
- value-or-function: "npm:^4.0.0"
- vinyl: "npm:^3.0.0"
- vinyl-sourcemap: "npm:^2.0.0"
- checksum: 10c0/c68a86ec8b48e60c5b31a881d2f39cebfe104518a1895f38ba658cfd890673a6cfa5d55de58eb15264fd2333e5b26099989e1de4e14aa6a8ad0f04529ff46a34
- languageName: node
- linkType: hard
-
-"vinyl-sourcemap@npm:^2.0.0":
- version: 2.0.0
- resolution: "vinyl-sourcemap@npm:2.0.0"
- dependencies:
- convert-source-map: "npm:^2.0.0"
- graceful-fs: "npm:^4.2.10"
- now-and-later: "npm:^3.0.0"
- streamx: "npm:^2.12.5"
- vinyl: "npm:^3.0.0"
- vinyl-contents: "npm:^2.0.0"
- checksum: 10c0/073f3f7dac1fcbf75a5ef22dac1ad18a6a299a761ff1b897455177403141935a1a909fec4540434e5b6344f9d25b962efe49fce5e82fd9e3219d4865e7688e9a
- languageName: node
- linkType: hard
-
-"vinyl@npm:^3.0.0":
- version: 3.0.0
- resolution: "vinyl@npm:3.0.0"
- dependencies:
- clone: "npm:^2.1.2"
- clone-stats: "npm:^1.0.0"
- remove-trailing-separator: "npm:^1.1.0"
- replace-ext: "npm:^2.0.0"
- teex: "npm:^1.0.1"
- checksum: 10c0/566ab41a84c1a167023a07cb94110d40a07835a5239297e3266a11b0e9c522969a1e623ec2a4f9b05ac7fef596cf47685b410359e5b2ca00bd77400657808816
- languageName: node
- linkType: hard
-
-"vite-plugin-generate-file@npm:^0.3.0":
- version: 0.3.1
- resolution: "vite-plugin-generate-file@npm:0.3.1"
- dependencies:
- ejs: "npm:^3.1.9"
- js-yaml: "npm:^4.1.0"
- mime-types: "npm:^2.1.35"
- picocolors: "npm:^1.0.0"
- checksum: 10c0/c2ca100c64c0620766bfcf5fe281202e7110ba5cc0651f4ac19de7b6bcd9aa2bda1c6590190101859ba1b0a54d3c6a05d4780a5c545c0b81fdcc2975adcebfc9
- languageName: node
- linkType: hard
-
-"vite-plugin-html@npm:^3.2.2":
- version: 3.2.2
- resolution: "vite-plugin-html@npm:3.2.2"
- dependencies:
- "@rollup/pluginutils": "npm:^4.2.0"
- colorette: "npm:^2.0.16"
- connect-history-api-fallback: "npm:^1.6.0"
- consola: "npm:^2.15.3"
- dotenv: "npm:^16.0.0"
- dotenv-expand: "npm:^8.0.2"
- ejs: "npm:^3.1.6"
- fast-glob: "npm:^3.2.11"
- fs-extra: "npm:^10.0.1"
- html-minifier-terser: "npm:^6.1.0"
- node-html-parser: "npm:^5.3.3"
- pathe: "npm:^0.2.0"
- peerDependencies:
- vite: ">=2.0.0"
- checksum: 10c0/34628f44f07a9656875c66ba0c4dbe6be39646c50f961cb771179b930dd5727281836ee4293d7e89fe36043703a0ff40df06b15b90260d48a642420e008eb76a
- languageName: node
- linkType: hard
-
-"vite-plugin-node-stdlib-browser@npm:^0.2.1":
- version: 0.2.1
- resolution: "vite-plugin-node-stdlib-browser@npm:0.2.1"
- dependencies:
- "@rollup/plugin-inject": "npm:^5.0.3"
- peerDependencies:
- node-stdlib-browser: ^1.2.0
- vite: ^2.0.0 || ^3.0.0 || ^4.0.0
- checksum: 10c0/4686bde59d0396d8684433e1a14ddce868dc422f80e306a0c1cb5e86564d9f7c38a67865ca339e4ff57784ec4bada149034038cad6911a2dfcac8debfc9bd20a
- languageName: node
- linkType: hard
-
-"vite-plugin-svgr@npm:^4.0.0":
- version: 4.5.0
- resolution: "vite-plugin-svgr@npm:4.5.0"
- dependencies:
- "@rollup/pluginutils": "npm:^5.2.0"
- "@svgr/core": "npm:^8.1.0"
- "@svgr/plugin-jsx": "npm:^8.1.0"
- peerDependencies:
- vite: ">=2.6.0"
- checksum: 10c0/3e1959fec626bb4f5a8ec13ff15bc40ffbc1c0ff38149bebe3f37dc2d67ed1f276f129ff7983e06946cf712e19996affd9d6868aa7d20d8921d1fe4449109b55
- languageName: node
- linkType: hard
-
-"vite@npm:^6.0.0 || ^7.0.0, vite@npm:^7.3.0":
- version: 7.3.1
- resolution: "vite@npm:7.3.1"
- dependencies:
- esbuild: "npm:^0.27.0"
- fdir: "npm:^6.5.0"
- fsevents: "npm:~2.3.3"
- picomatch: "npm:^4.0.3"
- postcss: "npm:^8.5.6"
- rollup: "npm:^4.43.0"
- tinyglobby: "npm:^0.2.15"
- peerDependencies:
- "@types/node": ^20.19.0 || >=22.12.0
- jiti: ">=1.21.0"
- less: ^4.0.0
- lightningcss: ^1.21.0
- sass: ^1.70.0
- sass-embedded: ^1.70.0
- stylus: ">=0.54.8"
- sugarss: ^5.0.0
- terser: ^5.16.0
- tsx: ^4.8.1
- yaml: ^2.4.2
- dependenciesMeta:
- fsevents:
- optional: true
- peerDependenciesMeta:
- "@types/node":
- optional: true
- jiti:
- optional: true
- less:
- optional: true
- lightningcss:
- optional: true
- sass:
- optional: true
- sass-embedded:
- optional: true
- stylus:
- optional: true
- sugarss:
- optional: true
- terser:
- optional: true
- tsx:
- optional: true
- yaml:
- optional: true
- bin:
- vite: bin/vite.js
- checksum: 10c0/5c7548f5f43a23533e53324304db4ad85f1896b1bfd3ee32ae9b866bac2933782c77b350eb2b52a02c625c8ad1ddd4c000df077419410650c982cd97fde8d014
- languageName: node
- linkType: hard
-
-"vitest-axe@npm:^1.0.0-pre.3":
- version: 1.0.0-pre.5
- resolution: "vitest-axe@npm:1.0.0-pre.5"
- dependencies:
- "@vitest/pretty-format": "npm:^3.0.3"
- axe-core: "npm:^4.10.2"
- chalk: "npm:^5.4.1"
- lodash-es: "npm:^4.17.21"
- peerDependencies:
- vitest: ">=1"
- checksum: 10c0/e76bd339ac7f7a492f3429b1b056ddbf3595d3880fa89f93ce7c2cd0de01c98e618009058fa3296d08d3d315ceb35c99d5cb63766e9c5a3bd3e05c8c3f34a4e1
- languageName: node
- linkType: hard
-
-"vitest@npm:^4.0.18":
- version: 4.0.18
- resolution: "vitest@npm:4.0.18"
- dependencies:
- "@vitest/expect": "npm:4.0.18"
- "@vitest/mocker": "npm:4.0.18"
- "@vitest/pretty-format": "npm:4.0.18"
- "@vitest/runner": "npm:4.0.18"
- "@vitest/snapshot": "npm:4.0.18"
- "@vitest/spy": "npm:4.0.18"
- "@vitest/utils": "npm:4.0.18"
- es-module-lexer: "npm:^1.7.0"
- expect-type: "npm:^1.2.2"
- magic-string: "npm:^0.30.21"
- obug: "npm:^2.1.1"
- pathe: "npm:^2.0.3"
- picomatch: "npm:^4.0.3"
- std-env: "npm:^3.10.0"
- tinybench: "npm:^2.9.0"
- tinyexec: "npm:^1.0.2"
- tinyglobby: "npm:^0.2.15"
- tinyrainbow: "npm:^3.0.3"
- vite: "npm:^6.0.0 || ^7.0.0"
- why-is-node-running: "npm:^2.3.0"
- peerDependencies:
- "@edge-runtime/vm": "*"
- "@opentelemetry/api": ^1.9.0
- "@types/node": ^20.0.0 || ^22.0.0 || >=24.0.0
- "@vitest/browser-playwright": 4.0.18
- "@vitest/browser-preview": 4.0.18
- "@vitest/browser-webdriverio": 4.0.18
- "@vitest/ui": 4.0.18
- happy-dom: "*"
- jsdom: "*"
- peerDependenciesMeta:
- "@edge-runtime/vm":
- optional: true
- "@opentelemetry/api":
- optional: true
- "@types/node":
- optional: true
- "@vitest/browser-playwright":
- optional: true
- "@vitest/browser-preview":
- optional: true
- "@vitest/browser-webdriverio":
- optional: true
- "@vitest/ui":
- optional: true
- happy-dom:
- optional: true
- jsdom:
- optional: true
- bin:
- vitest: vitest.mjs
- checksum: 10c0/b913cd32032c95f29ff08c931f4b4c6fd6d2da498908d6770952c561a1b8d75c62499a1f04cadf82fb89cc0f9a33f29fb5dfdb899f6dbb27686a9d91571be5fa
- languageName: node
- linkType: hard
-
-"vm-browserify@npm:^1.0.1":
- version: 1.1.2
- resolution: "vm-browserify@npm:1.1.2"
- checksum: 10c0/0cc1af6e0d880deb58bc974921320c187f9e0a94f25570fca6b1bd64e798ce454ab87dfd797551b1b0cc1849307421aae0193cedf5f06bdb5680476780ee344b
- languageName: node
- linkType: hard
-
-"void-elements@npm:3.1.0":
- version: 3.1.0
- resolution: "void-elements@npm:3.1.0"
- checksum: 10c0/0b8686f9f9aa44012e9bd5eabf287ae0cde409b9a2854c5a2335cb83920c957668ac5876e3f0d158dd424744ac411a7270e64128556b451ed3bec875ef18534d
- languageName: node
- linkType: hard
-
-"w3c-xmlserializer@npm:^5.0.0":
- version: 5.0.0
- resolution: "w3c-xmlserializer@npm:5.0.0"
- dependencies:
- xml-name-validator: "npm:^5.0.0"
- checksum: 10c0/8712774c1aeb62dec22928bf1cdfd11426c2c9383a1a63f2bcae18db87ca574165a0fbe96b312b73652149167ac6c7f4cf5409f2eb101d9c805efe0e4bae798b
- languageName: node
- linkType: hard
-
-"walk-sync@npm:^2.2.0":
- version: 2.2.0
- resolution: "walk-sync@npm:2.2.0"
- dependencies:
- "@types/minimatch": "npm:^3.0.3"
- ensure-posix-path: "npm:^1.1.0"
- matcher-collection: "npm:^2.0.0"
- minimatch: "npm:^3.0.4"
- checksum: 10c0/45fe284ffa28440f0d3d0a136b3c3fe2a0f55bf207db22c481eea9e7ab7cef6d820491485d76e9f1af9dab7489c6d7a0efbd1ebf45b43dbf871f046f0b4760bd
- languageName: node
- linkType: hard
-
-"walk-up-path@npm:^4.0.0":
- version: 4.0.0
- resolution: "walk-up-path@npm:4.0.0"
- checksum: 10c0/fabe344f91387d1d41df230af962ef18bf703dd4178006d55cd6412caacd187b54440002d4d53a982d4f7f0455567dcffb6d3884533c8b2268928eca3ebd8a19
- languageName: node
- linkType: hard
-
-"web-vitals@npm:^4.0.1":
- version: 4.2.3
- resolution: "web-vitals@npm:4.2.3"
- checksum: 10c0/905bdb9434f365435c3c00e5f473ce088980fcd61068906e20a575bae9590e1cc28dab0f90958c66717591e2f4c9b809ec8025cef5796fa4bc1304d50332f125
- languageName: node
- linkType: hard
-
-"webidl-conversions@npm:^3.0.0":
- version: 3.0.1
- resolution: "webidl-conversions@npm:3.0.1"
- checksum: 10c0/5612d5f3e54760a797052eb4927f0ddc01383550f542ccd33d5238cfd65aeed392a45ad38364970d0a0f4fea32e1f4d231b3d8dac4a3bdd385e5cf802ae097db
- languageName: node
- linkType: hard
-
-"webidl-conversions@npm:^7.0.0":
- version: 7.0.0
- resolution: "webidl-conversions@npm:7.0.0"
- checksum: 10c0/228d8cb6d270c23b0720cb2d95c579202db3aaf8f633b4e9dd94ec2000a04e7e6e43b76a94509cdb30479bd00ae253ab2371a2da9f81446cc313f89a4213a2c4
- languageName: node
- linkType: hard
-
-"webpack-sources@npm:^3.2.3":
- version: 3.2.3
- resolution: "webpack-sources@npm:3.2.3"
- checksum: 10c0/2ef63d77c4fad39de4a6db17323d75eb92897b32674e97d76f0a1e87c003882fc038571266ad0ef581ac734cbe20952912aaa26155f1905e96ce251adbb1eb4e
- languageName: node
- linkType: hard
-
-"webpack-virtual-modules@npm:^0.5.0":
- version: 0.5.0
- resolution: "webpack-virtual-modules@npm:0.5.0"
- checksum: 10c0/0742e069cd49d91ccd0b59431b3666903d321582c1b1062fa6bdae005c3538af55ff8787ea5eafbf72662f3496d3a879e2c705d55ca0af8283548a925be18484
- languageName: node
- linkType: hard
-
-"webpack-virtual-modules@npm:^0.6.2":
- version: 0.6.2
- resolution: "webpack-virtual-modules@npm:0.6.2"
- checksum: 10c0/5ffbddf0e84bf1562ff86cf6fcf039c74edf09d78358a6904a09bbd4484e8bb6812dc385fe14330b715031892dcd8423f7a88278b57c9f5002c84c2860179add
- languageName: node
- linkType: hard
-
-"webrtc-adapter@npm:^9.0.1":
- version: 9.0.1
- resolution: "webrtc-adapter@npm:9.0.1"
- dependencies:
- sdp: "npm:^3.2.0"
- checksum: 10c0/09286adf351b3aff6eadf7942de7f153072a946fd815450e23505e39181c332d0552f4d27a99c5d7258efa3bd70a12949fe043fd8dc6acc03507b4448d7a597e
- languageName: node
- linkType: hard
-
-"whatwg-encoding@npm:^3.1.1":
- version: 3.1.1
- resolution: "whatwg-encoding@npm:3.1.1"
- dependencies:
- iconv-lite: "npm:0.6.3"
- checksum: 10c0/273b5f441c2f7fda3368a496c3009edbaa5e43b71b09728f90425e7f487e5cef9eb2b846a31bd760dd8077739c26faf6b5ca43a5f24033172b003b72cf61a93e
- languageName: node
- linkType: hard
-
-"whatwg-mimetype@npm:^4.0.0":
- version: 4.0.0
- resolution: "whatwg-mimetype@npm:4.0.0"
- checksum: 10c0/a773cdc8126b514d790bdae7052e8bf242970cebd84af62fb2f35a33411e78e981f6c0ab9ed1fe6ec5071b09d5340ac9178e05b52d35a9c4bcf558ba1b1551df
- languageName: node
- linkType: hard
-
-"whatwg-url@npm:^14.0.0":
- version: 14.0.0
- resolution: "whatwg-url@npm:14.0.0"
- dependencies:
- tr46: "npm:^5.0.0"
- webidl-conversions: "npm:^7.0.0"
- checksum: 10c0/ac32e9ba9d08744605519bbe9e1371174d36229689ecc099157b6ba102d4251a95e81d81f3d80271eb8da182eccfa65653f07f0ab43ea66a6934e643fd091ba9
- languageName: node
- linkType: hard
-
-"whatwg-url@npm:^14.1.1":
- version: 14.2.0
- resolution: "whatwg-url@npm:14.2.0"
- dependencies:
- tr46: "npm:^5.1.0"
- webidl-conversions: "npm:^7.0.0"
- checksum: 10c0/f746fc2f4c906607d09537de1227b13f9494c171141e5427ed7d2c0dd0b6a48b43d8e71abaae57d368d0c06b673fd8ec63550b32ad5ed64990c7b0266c2b4272
- languageName: node
- linkType: hard
-
-"whatwg-url@npm:^5.0.0":
- version: 5.0.0
- resolution: "whatwg-url@npm:5.0.0"
- dependencies:
- tr46: "npm:~0.0.3"
- webidl-conversions: "npm:^3.0.0"
- checksum: 10c0/1588bed84d10b72d5eec1d0faa0722ba1962f1821e7539c535558fb5398d223b0c50d8acab950b8c488b4ba69043fd833cc2697056b167d8ad46fac3995a55d5
- languageName: node
- linkType: hard
-
-"which-boxed-primitive@npm:^1.1.0, which-boxed-primitive@npm:^1.1.1":
- version: 1.1.1
- resolution: "which-boxed-primitive@npm:1.1.1"
- dependencies:
- is-bigint: "npm:^1.1.0"
- is-boolean-object: "npm:^1.2.1"
- is-number-object: "npm:^1.1.1"
- is-string: "npm:^1.1.1"
- is-symbol: "npm:^1.1.1"
- checksum: 10c0/aceea8ede3b08dede7dce168f3883323f7c62272b49801716e8332ff750e7ae59a511ae088840bc6874f16c1b7fd296c05c949b0e5b357bfe3c431b98c417abe
- languageName: node
- linkType: hard
-
-"which-builtin-type@npm:^1.2.1":
- version: 1.2.1
- resolution: "which-builtin-type@npm:1.2.1"
- dependencies:
- call-bound: "npm:^1.0.2"
- function.prototype.name: "npm:^1.1.6"
- has-tostringtag: "npm:^1.0.2"
- is-async-function: "npm:^2.0.0"
- is-date-object: "npm:^1.1.0"
- is-finalizationregistry: "npm:^1.1.0"
- is-generator-function: "npm:^1.0.10"
- is-regex: "npm:^1.2.1"
- is-weakref: "npm:^1.0.2"
- isarray: "npm:^2.0.5"
- which-boxed-primitive: "npm:^1.1.0"
- which-collection: "npm:^1.0.2"
- which-typed-array: "npm:^1.1.16"
- checksum: 10c0/8dcf323c45e5c27887800df42fbe0431d0b66b1163849bb7d46b5a730ad6a96ee8bfe827d078303f825537844ebf20c02459de41239a0a9805e2fcb3cae0d471
- languageName: node
- linkType: hard
-
-"which-collection@npm:^1.0.2":
- version: 1.0.2
- resolution: "which-collection@npm:1.0.2"
- dependencies:
- is-map: "npm:^2.0.3"
- is-set: "npm:^2.0.3"
- is-weakmap: "npm:^2.0.2"
- is-weakset: "npm:^2.0.3"
- checksum: 10c0/3345fde20964525a04cdf7c4a96821f85f0cc198f1b2ecb4576e08096746d129eb133571998fe121c77782ac8f21cbd67745a3d35ce100d26d4e684c142ea1f2
- languageName: node
- linkType: hard
-
-"which-module@npm:^2.0.0":
- version: 2.0.1
- resolution: "which-module@npm:2.0.1"
- checksum: 10c0/087038e7992649eaffa6c7a4f3158d5b53b14cf5b6c1f0e043dccfacb1ba179d12f17545d5b85ebd94a42ce280a6fe65d0cbcab70f4fc6daad1dfae85e0e6a3e
- languageName: node
- linkType: hard
-
-"which-typed-array@npm:^1.1.16, which-typed-array@npm:^1.1.18":
- version: 1.1.18
- resolution: "which-typed-array@npm:1.1.18"
- dependencies:
- available-typed-arrays: "npm:^1.0.7"
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.3"
- for-each: "npm:^0.3.3"
- gopd: "npm:^1.2.0"
- has-tostringtag: "npm:^1.0.2"
- checksum: 10c0/0412f4a91880ca1a2a63056187c2e3de6b129b2b5b6c17bc3729f0f7041047ae48fb7424813e51506addb2c97320003ee18b8c57469d2cde37983ef62126143c
- languageName: node
- linkType: hard
-
-"which-typed-array@npm:^1.1.19, which-typed-array@npm:^1.1.2":
- version: 1.1.19
- resolution: "which-typed-array@npm:1.1.19"
- dependencies:
- available-typed-arrays: "npm:^1.0.7"
- call-bind: "npm:^1.0.8"
- call-bound: "npm:^1.0.4"
- for-each: "npm:^0.3.5"
- get-proto: "npm:^1.0.1"
- gopd: "npm:^1.2.0"
- has-tostringtag: "npm:^1.0.2"
- checksum: 10c0/702b5dc878addafe6c6300c3d0af5983b175c75fcb4f2a72dfc3dd38d93cf9e89581e4b29c854b16ea37e50a7d7fca5ae42ece5c273d8060dcd603b2404bbb3f
- languageName: node
- linkType: hard
-
-"which@npm:^2.0.1, which@npm:^2.0.2":
- version: 2.0.2
- resolution: "which@npm:2.0.2"
- dependencies:
- isexe: "npm:^2.0.0"
- bin:
- node-which: ./bin/node-which
- checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f
- languageName: node
- linkType: hard
-
-"which@npm:^5.0.0":
- version: 5.0.0
- resolution: "which@npm:5.0.0"
- dependencies:
- isexe: "npm:^3.1.1"
- bin:
- node-which: bin/which.js
- checksum: 10c0/e556e4cd8b7dbf5df52408c9a9dd5ac6518c8c5267c8953f5b0564073c66ed5bf9503b14d876d0e9c7844d4db9725fb0dcf45d6e911e17e26ab363dc3965ae7b
- languageName: node
- linkType: hard
-
-"why-is-node-running@npm:^2.3.0":
- version: 2.3.0
- resolution: "why-is-node-running@npm:2.3.0"
- dependencies:
- siginfo: "npm:^2.0.0"
- stackback: "npm:0.0.2"
- bin:
- why-is-node-running: cli.js
- checksum: 10c0/1cde0b01b827d2cf4cb11db962f3958b9175d5d9e7ac7361d1a7b0e2dc6069a263e69118bd974c4f6d0a890ef4eedfe34cf3d5167ec14203dbc9a18620537054
- languageName: node
- linkType: hard
-
-"word-wrap@npm:^1.2.5":
- version: 1.2.5
- resolution: "word-wrap@npm:1.2.5"
- checksum: 10c0/e0e4a1ca27599c92a6ca4c32260e8a92e8a44f4ef6ef93f803f8ed823f486e0889fc0b93be4db59c8d51b3064951d25e43d434e95dc8c960cc3a63d65d00ba20
- languageName: node
- linkType: hard
-
-"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0":
- version: 7.0.0
- resolution: "wrap-ansi@npm:7.0.0"
- dependencies:
- ansi-styles: "npm:^4.0.0"
- string-width: "npm:^4.1.0"
- strip-ansi: "npm:^6.0.0"
- checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da
- languageName: node
- linkType: hard
-
-"wrap-ansi@npm:^6.2.0":
- version: 6.2.0
- resolution: "wrap-ansi@npm:6.2.0"
- dependencies:
- ansi-styles: "npm:^4.0.0"
- string-width: "npm:^4.1.0"
- strip-ansi: "npm:^6.0.0"
- checksum: 10c0/baad244e6e33335ea24e86e51868fe6823626e3a3c88d9a6674642afff1d34d9a154c917e74af8d845fd25d170c4ea9cf69a47133c3f3656e1252b3d462d9f6c
- languageName: node
- linkType: hard
-
-"wrap-ansi@npm:^8.1.0":
- version: 8.1.0
- resolution: "wrap-ansi@npm:8.1.0"
- dependencies:
- ansi-styles: "npm:^6.1.0"
- string-width: "npm:^5.0.1"
- strip-ansi: "npm:^7.0.1"
- checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60
- languageName: node
- linkType: hard
-
-"wrappy@npm:1":
- version: 1.0.2
- resolution: "wrappy@npm:1.0.2"
- checksum: 10c0/56fece1a4018c6a6c8e28fbc88c87e0fbf4ea8fd64fc6c63b18f4acc4bd13e0ad2515189786dd2c30d3eec9663d70f4ecf699330002f8ccb547e4a18231fc9f0
- languageName: node
- linkType: hard
-
-"ws@npm:^8.18.0":
- version: 8.18.0
- resolution: "ws@npm:8.18.0"
- peerDependencies:
- bufferutil: ^4.0.1
- utf-8-validate: ">=5.0.2"
- peerDependenciesMeta:
- bufferutil:
- optional: true
- utf-8-validate:
- optional: true
- checksum: 10c0/25eb33aff17edcb90721ed6b0eb250976328533ad3cd1a28a274bd263682e7296a6591ff1436d6cbc50fa67463158b062f9d1122013b361cec99a05f84680e06
- languageName: node
- linkType: hard
-
-"xml-name-validator@npm:^5.0.0":
- version: 5.0.0
- resolution: "xml-name-validator@npm:5.0.0"
- checksum: 10c0/3fcf44e7b73fb18be917fdd4ccffff3639373c7cb83f8fc35df6001fecba7942f1dbead29d91ebb8315e2f2ff786b508f0c9dc0215b6353f9983c6b7d62cb1f5
- languageName: node
- linkType: hard
-
-"xmlchars@npm:^2.2.0":
- version: 2.2.0
- resolution: "xmlchars@npm:2.2.0"
- checksum: 10c0/b64b535861a6f310c5d9bfa10834cf49127c71922c297da9d4d1b45eeaae40bf9b4363275876088fbe2667e5db028d2cd4f8ee72eed9bede840a67d57dab7593
- languageName: node
- linkType: hard
-
-"xtend@npm:^4.0.2, xtend@npm:~4.0.1":
- version: 4.0.2
- resolution: "xtend@npm:4.0.2"
- checksum: 10c0/366ae4783eec6100f8a02dff02ac907bf29f9a00b82ac0264b4d8b832ead18306797e283cf19de776538babfdcb2101375ec5646b59f08c52128ac4ab812ed0e
- languageName: node
- linkType: hard
-
-"y18n@npm:^4.0.0":
- version: 4.0.3
- resolution: "y18n@npm:4.0.3"
- checksum: 10c0/308a2efd7cc296ab2c0f3b9284fd4827be01cfeb647b3ba18230e3a416eb1bc887ac050de9f8c4fd9e7856b2e8246e05d190b53c96c5ad8d8cb56dffb6f81024
- languageName: node
- linkType: hard
-
-"y18n@npm:^5.0.5":
- version: 5.0.8
- resolution: "y18n@npm:5.0.8"
- checksum: 10c0/4df2842c36e468590c3691c894bc9cdbac41f520566e76e24f59401ba7d8b4811eb1e34524d57e54bc6d864bcb66baab7ffd9ca42bf1eda596618f9162b91249
- languageName: node
- linkType: hard
-
-"yallist@npm:^3.0.2":
- version: 3.1.1
- resolution: "yallist@npm:3.1.1"
- checksum: 10c0/c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1
- languageName: node
- linkType: hard
-
-"yallist@npm:^4.0.0":
- version: 4.0.0
- resolution: "yallist@npm:4.0.0"
- checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a
- languageName: node
- linkType: hard
-
-"yallist@npm:^5.0.0":
- version: 5.0.0
- resolution: "yallist@npm:5.0.0"
- checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416
- languageName: node
- linkType: hard
-
-"yaml@npm:^2.8.2":
- version: 2.8.2
- resolution: "yaml@npm:2.8.2"
- bin:
- yaml: bin.mjs
- checksum: 10c0/703e4dc1e34b324aa66876d63618dcacb9ed49f7e7fe9b70f1e703645be8d640f68ab84f12b86df8ac960bac37acf5513e115de7c970940617ce0343c8c9cd96
- languageName: node
- linkType: hard
-
-"yargs-parser@npm:^18.1.2":
- version: 18.1.3
- resolution: "yargs-parser@npm:18.1.3"
- dependencies:
- camelcase: "npm:^5.0.0"
- decamelize: "npm:^1.2.0"
- checksum: 10c0/25df918833592a83f52e7e4f91ba7d7bfaa2b891ebf7fe901923c2ee797534f23a176913ff6ff7ebbc1cc1725a044cc6a6539fed8bfd4e13b5b16376875f9499
- languageName: node
- linkType: hard
-
-"yargs-parser@npm:^21.1.1":
- version: 21.1.1
- resolution: "yargs-parser@npm:21.1.1"
- checksum: 10c0/f84b5e48169479d2f402239c59f084cfd1c3acc197a05c59b98bab067452e6b3ea46d4dd8ba2985ba7b3d32a343d77df0debd6b343e5dae3da2aab2cdf5886b2
- languageName: node
- linkType: hard
-
-"yargs@npm:^15.3.1":
- version: 15.4.1
- resolution: "yargs@npm:15.4.1"
- dependencies:
- cliui: "npm:^6.0.0"
- decamelize: "npm:^1.2.0"
- find-up: "npm:^4.1.0"
- get-caller-file: "npm:^2.0.1"
- require-directory: "npm:^2.1.1"
- require-main-filename: "npm:^2.0.0"
- set-blocking: "npm:^2.0.0"
- string-width: "npm:^4.2.0"
- which-module: "npm:^2.0.0"
- y18n: "npm:^4.0.0"
- yargs-parser: "npm:^18.1.2"
- checksum: 10c0/f1ca680c974333a5822732825cca7e95306c5a1e7750eb7b973ce6dc4f97a6b0a8837203c8b194f461969bfe1fb1176d1d423036635285f6010b392fa498ab2d
- languageName: node
- linkType: hard
-
-"yargs@npm:^17.0.0":
- version: 17.7.2
- resolution: "yargs@npm:17.7.2"
- dependencies:
- cliui: "npm:^8.0.1"
- escalade: "npm:^3.1.1"
- get-caller-file: "npm:^2.0.5"
- require-directory: "npm:^2.1.1"
- string-width: "npm:^4.2.3"
- y18n: "npm:^5.0.5"
- yargs-parser: "npm:^21.1.1"
- checksum: 10c0/ccd7e723e61ad5965fffbb791366db689572b80cca80e0f96aad968dfff4156cd7cd1ad18607afe1046d8241e6fb2d6c08bf7fa7bfb5eaec818735d8feac8f05
- languageName: node
- linkType: hard
-
-"yocto-queue@npm:^0.1.0":
- version: 0.1.0
- resolution: "yocto-queue@npm:0.1.0"
- checksum: 10c0/dceb44c28578b31641e13695d200d34ec4ab3966a5729814d5445b194933c096b7ced71494ce53a0e8820685d1d010df8b2422e5bf2cdea7e469d97ffbea306f
- languageName: node
- linkType: hard
-
-"zod@npm:^3.22.4":
- version: 3.24.2
- resolution: "zod@npm:3.24.2"
- checksum: 10c0/c638c7220150847f13ad90635b3e7d0321b36cce36f3fc6050ed960689594c949c326dfe2c6fa87c14b126ee5d370ccdebd6efb304f41ef5557a4aaca2824565
- languageName: node
- linkType: hard
-
-"zod@npm:^4.1.11":
- version: 4.3.4
- resolution: "zod@npm:4.3.4"
- checksum: 10c0/a096102c8b31ecdb913bacb08d5a0fe8447bbe4f54cff421a0c5830a5552da76aae9fd8a01f2e9fdeaae35da1a73762551bc9d14cfedb13a44056de1ed2eb76f
- languageName: node
- linkType: hard