diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml
index 048dbc5..481bc44 100644
--- a/.github/workflows/e2e-tests.yml
+++ b/.github/workflows/e2e-tests.yml
@@ -12,6 +12,7 @@ on:
- all
- android
- ios
+ - web
pull_request:
types: [ready_for_review]
branches:
@@ -189,3 +190,50 @@ jobs:
app: ios/build/Build/Products/Debug-iphonesimulator/HarnessPlayground.app
runner: ios
projectRoot: apps/playground
+
+ e2e-web:
+ name: E2E Web
+ runs-on: ubuntu-22.04
+ if: ${{ (github.event_name == 'pull_request' && github.event.pull_request.base.ref == 'main') || (github.event_name == 'workflow_dispatch' && (github.event.inputs.platform == 'all' || github.event.inputs.platform == 'web')) }}
+ env:
+ HARNESS_DEBUG: true
+
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v4
+ with:
+ ref: ${{ github.event.pull_request.head.sha || github.ref }}
+ fetch-depth: 0
+
+ - name: Install pnpm
+ uses: pnpm/action-setup@v2
+ with:
+ version: latest
+
+ - name: Setup Node.js
+ uses: actions/setup-node@v4
+ with:
+ node-version: '24.10.0'
+ cache: 'pnpm'
+
+ - name: Metro cache
+ uses: actions/cache@v4
+ with:
+ path: apps/playground/node_modules/.cache/rn-harness/metro-cache
+ key: metro-cache-${{ hashFiles('apps/playground/node_modules/.cache/rn-harness/metro-cache/**/*') }}
+ restore-keys: |
+ metro-cache
+
+ - name: Install dependencies
+ run: |
+ pnpm install
+
+ - name: Build packages
+ run: |
+ pnpm nx run-many -t build --projects="packages/*"
+
+ - name: Run React Native Harness
+ uses: ./actions/web
+ with:
+ runner: chromium
+ projectRoot: apps/playground
diff --git a/.npmrc b/.npmrc
index 139805b..81150a4 100644
--- a/.npmrc
+++ b/.npmrc
@@ -1,3 +1,3 @@
strict-peer-dependencies=false
-auto-install-peers=true
+auto-install-peers=false
node-linker=hoisted
\ No newline at end of file
diff --git a/.nx/version-plans/version-plan-1769076452249.md b/.nx/version-plans/version-plan-1769076452249.md
new file mode 100644
index 0000000..9c5191f
--- /dev/null
+++ b/.nx/version-plans/version-plan-1769076452249.md
@@ -0,0 +1,5 @@
+---
+__default__: prerelease
+---
+
+Added support for web platform with all functionalities supported by the native equivalents, including UI testing capabilities.
diff --git a/actions/web/action.yml b/actions/web/action.yml
new file mode 100644
index 0000000..5cd4006
--- /dev/null
+++ b/actions/web/action.yml
@@ -0,0 +1,44 @@
+name: React Native Harness for Web
+description: Run React Native Harness tests on Web
+inputs:
+ runner:
+ description: The runner to use
+ required: true
+ type: string
+ projectRoot:
+ description: The project root directory
+ required: false
+ type: string
+ uploadVisualTestArtifacts:
+ description: Whether to upload visual test diff and actual images as artifacts
+ required: false
+ type: boolean
+ default: 'true'
+runs:
+ using: 'composite'
+ steps:
+ - name: Load React Native Harness configuration
+ id: load-config
+ shell: bash
+ env:
+ INPUT_RUNNER: ${{ inputs.runner }}
+ INPUT_PROJECTROOT: ${{ inputs.projectRoot }}
+ run: |
+ node ${{ github.action_path }}/../shared/index.cjs
+ - name: Install Playwright Browsers
+ shell: bash
+ run: npx playwright install --with-deps chromium
+ - name: Run E2E tests
+ shell: bash
+ working-directory: ${{ inputs.projectRoot }}
+ run: |
+ pnpm react-native-harness --harnessRunner ${{ inputs.runner }}
+ - name: Upload visual test artifacts
+ if: always() && inputs.uploadVisualTestArtifacts == 'true'
+ uses: actions/upload-artifact@v4
+ with:
+ name: visual-test-diffs-chromium
+ path: |
+ ${{ inputs.projectRoot }}/**/__image_snapshots__/**/*-diff.png
+ ${{ inputs.projectRoot }}/**/__image_snapshots__/**/*-actual.png
+ if-no-files-found: ignore
diff --git a/actions/web/index.cjs b/actions/web/index.cjs
new file mode 100644
index 0000000..3918c74
--- /dev/null
+++ b/actions/web/index.cjs
@@ -0,0 +1 @@
+"use strict";
diff --git a/apps/playground/index.html b/apps/playground/index.html
new file mode 100644
index 0000000..58a89ce
--- /dev/null
+++ b/apps/playground/index.html
@@ -0,0 +1,27 @@
+
+
+
+
+ Harness Playground
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/apps/playground/index.js b/apps/playground/index.js
index 13a2105..ef670a4 100644
--- a/apps/playground/index.js
+++ b/apps/playground/index.js
@@ -2,8 +2,14 @@
* @format
*/
-import { AppRegistry } from 'react-native';
+import { AppRegistry, Platform } from 'react-native';
import App from './src/app/App';
import { name as appName } from './app.json';
AppRegistry.registerComponent(appName, () => App);
+
+if (Platform.OS === 'web') {
+ AppRegistry.runApplication(appName, {
+ rootTag: document.getElementById('root'),
+ });
+}
\ No newline at end of file
diff --git a/apps/playground/metro.config.js b/apps/playground/metro.config.js
index 6eee231..8ecd3fe 100644
--- a/apps/playground/metro.config.js
+++ b/apps/playground/metro.config.js
@@ -1,12 +1,36 @@
const { withNxMetro } = require('@nx/react-native');
const { getDefaultConfig, mergeConfig } = require('@react-native/metro-config');
const path = require('path');
+const fs = require('fs');
const defaultConfig = getDefaultConfig(__dirname);
const projectRoot = __dirname;
const monorepoRoot = path.resolve(projectRoot, '../..');
+const getCustomResolver = (defaultResolveRequest) => (context, moduleName, platform) => {
+ if (platform === 'web') {
+ if (moduleName.includes('NativeSourceCode') ||
+ moduleName.includes('NativePlatformConstants') ||
+ moduleName.includes('NativeDevSettings') ||
+ moduleName.includes('NativeLogBox') ||
+ moduleName.includes('NativeRedBox')
+ ) {
+ return {
+ type: 'empty',
+ };
+ } else if (moduleName === 'react-native') {
+ return {
+ type: 'sourceFile',
+ filePath: require.resolve('react-native-web'),
+ };
+ }
+ }
+
+ // Everything else: default behavior
+ return defaultResolveRequest(context, moduleName, platform);
+};
+
/**
* Metro configuration
* https://reactnative.dev/docs/metro
@@ -18,6 +42,30 @@ const customConfig = {
resolver: {
unstable_enablePackageExports: true,
},
+ server: {
+ ...(defaultConfig.server || {}),
+ enhanceMiddleware: (middleware) => {
+ return (req, res, next) => {
+ if (req.url === '/' || req.url === '/index.html') {
+ const htmlPath = path.join(projectRoot, 'index.html');
+
+ fs.readFile(htmlPath, 'utf8', (err, data) => {
+ if (err) {
+ res.writeHead(500, { 'Content-Type': 'text/plain' });
+ res.end('Error loading index.html: ' + err.message);
+ return;
+ }
+
+ res.writeHead(200, { 'Content-Type': 'text/html' });
+ res.end(data);
+ });
+ return;
+ }
+
+ return middleware(req, res, next);
+ };
+ },
+ },
};
module.exports = withNxMetro(mergeConfig(defaultConfig, customConfig), {
@@ -26,4 +74,8 @@ module.exports = withNxMetro(mergeConfig(defaultConfig, customConfig), {
path.resolve(projectRoot, 'node_modules'),
path.resolve(monorepoRoot, 'node_modules'),
],
+}).then((config) => {
+ // Nx overrides the resolveRequest, so we need to override it after the merge.
+ config.resolver.resolveRequest = getCustomResolver(config.resolver.resolveRequest);
+ return config;
});
diff --git a/apps/playground/package.json b/apps/playground/package.json
index 6b780fa..bc466f1 100644
--- a/apps/playground/package.json
+++ b/apps/playground/package.json
@@ -6,8 +6,10 @@
"test:harness": "jest --selectProjects react-native-harness"
},
"dependencies": {
- "react": "19.1.1",
- "react-native": "0.82.1"
+ "react": "19.2.3",
+ "react-dom": "19.2.3",
+ "react-native": "0.82.1",
+ "react-native-web": "^0.21.2"
},
"devDependencies": {
"react-native-harness": "workspace:*",
@@ -24,6 +26,7 @@
"jest": "^30.2.0",
"@react-native-harness/platform-android": "workspace:*",
"@react-native-harness/platform-apple": "workspace:*",
- "@react-native-harness/platform-vega": "workspace:*"
+ "@react-native-harness/platform-vega": "workspace:*",
+ "@react-native-harness/platform-web": "workspace:*"
}
}
diff --git a/apps/playground/rn-harness.config.mjs b/apps/playground/rn-harness.config.mjs
index 0c49b64..86ec632 100644
--- a/apps/playground/rn-harness.config.mjs
+++ b/apps/playground/rn-harness.config.mjs
@@ -12,6 +12,11 @@ import {
vegaPlatform,
vegaEmulator,
} from '@react-native-harness/platform-vega';
+import {
+ webPlatform,
+ chromium,
+ chrome,
+} from '@react-native-harness/platform-web';
const config = {
entryPoint: './index.js',
@@ -48,6 +53,14 @@ const config = {
device: vegaEmulator('VegaTV_1'),
bundleId: 'com.playground',
}),
+ webPlatform({
+ name: 'web',
+ browser: chrome('http://localhost:8081/index.html', { headless: false }),
+ }),
+ webPlatform({
+ name: 'chromium',
+ browser: chromium('http://localhost:8081/index.html', { headless: true }),
+ }),
],
defaultRunner: 'android',
bridgeTimeout: 120000,
diff --git a/apps/playground/src/__tests__/ui/__image_snapshots__/android/orange-square-element-only.png b/apps/playground/src/__tests__/ui/__image_snapshots__/android/orange-square-element-only.png
index 0fe0b77..98f4643 100644
Binary files a/apps/playground/src/__tests__/ui/__image_snapshots__/android/orange-square-element-only.png and b/apps/playground/src/__tests__/ui/__image_snapshots__/android/orange-square-element-only.png differ
diff --git a/apps/playground/src/__tests__/ui/__image_snapshots__/chromium/orange-square-element-only.png b/apps/playground/src/__tests__/ui/__image_snapshots__/chromium/orange-square-element-only.png
new file mode 100644
index 0000000..64c6114
Binary files /dev/null and b/apps/playground/src/__tests__/ui/__image_snapshots__/chromium/orange-square-element-only.png differ
diff --git a/apps/playground/src/__tests__/ui/__image_snapshots__/ios/orange-square-element-only.png b/apps/playground/src/__tests__/ui/__image_snapshots__/ios/orange-square-element-only.png
index 6d7bf08..79f3c8a 100644
Binary files a/apps/playground/src/__tests__/ui/__image_snapshots__/ios/orange-square-element-only.png and b/apps/playground/src/__tests__/ui/__image_snapshots__/ios/orange-square-element-only.png differ
diff --git a/apps/playground/src/__tests__/ui/__image_snapshots__/web/orange-square-element-only.png b/apps/playground/src/__tests__/ui/__image_snapshots__/web/orange-square-element-only.png
new file mode 100644
index 0000000..64c6114
Binary files /dev/null and b/apps/playground/src/__tests__/ui/__image_snapshots__/web/orange-square-element-only.png differ
diff --git a/apps/playground/src/__tests__/ui/screenshot.harness.tsx b/apps/playground/src/__tests__/ui/screenshot.harness.tsx
index 78e44eb..27391cb 100644
--- a/apps/playground/src/__tests__/ui/screenshot.harness.tsx
+++ b/apps/playground/src/__tests__/ui/screenshot.harness.tsx
@@ -25,7 +25,7 @@ describe('Screenshot', () => {
alignItems: 'center',
}}
>
- Target
+
diff --git a/apps/playground/tsconfig.app.json b/apps/playground/tsconfig.app.json
index a90580b..422740e 100644
--- a/apps/playground/tsconfig.app.json
+++ b/apps/playground/tsconfig.app.json
@@ -27,6 +27,9 @@
],
"include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.js", "src/**/*.jsx"],
"references": [
+ {
+ "path": "../../packages/platform-web/tsconfig.lib.json"
+ },
{
"path": "../../packages/platform-vega/tsconfig.lib.json"
},
diff --git a/apps/playground/tsconfig.json b/apps/playground/tsconfig.json
index fc60f68..8c36951 100644
--- a/apps/playground/tsconfig.json
+++ b/apps/playground/tsconfig.json
@@ -3,6 +3,9 @@
"files": [],
"include": [],
"references": [
+ {
+ "path": "../../packages/platform-web"
+ },
{
"path": "../../packages/platform-vega"
},
diff --git a/packages/bridge/src/shared.ts b/packages/bridge/src/shared.ts
index d5695c8..beaa200 100644
--- a/packages/bridge/src/shared.ts
+++ b/packages/bridge/src/shared.ts
@@ -105,7 +105,7 @@ export type {
} from './shared/bundler.js';
export type DeviceDescriptor = {
- platform: 'ios' | 'android' | 'vega';
+ platform: 'ios' | 'android' | 'vega' | 'web';
manufacturer: string;
model: string;
osVersion: string;
diff --git a/packages/github-action/src/web/action.yml b/packages/github-action/src/web/action.yml
new file mode 100644
index 0000000..5cd4006
--- /dev/null
+++ b/packages/github-action/src/web/action.yml
@@ -0,0 +1,44 @@
+name: React Native Harness for Web
+description: Run React Native Harness tests on Web
+inputs:
+ runner:
+ description: The runner to use
+ required: true
+ type: string
+ projectRoot:
+ description: The project root directory
+ required: false
+ type: string
+ uploadVisualTestArtifacts:
+ description: Whether to upload visual test diff and actual images as artifacts
+ required: false
+ type: boolean
+ default: 'true'
+runs:
+ using: 'composite'
+ steps:
+ - name: Load React Native Harness configuration
+ id: load-config
+ shell: bash
+ env:
+ INPUT_RUNNER: ${{ inputs.runner }}
+ INPUT_PROJECTROOT: ${{ inputs.projectRoot }}
+ run: |
+ node ${{ github.action_path }}/../shared/index.cjs
+ - name: Install Playwright Browsers
+ shell: bash
+ run: npx playwright install --with-deps chromium
+ - name: Run E2E tests
+ shell: bash
+ working-directory: ${{ inputs.projectRoot }}
+ run: |
+ pnpm react-native-harness --harnessRunner ${{ inputs.runner }}
+ - name: Upload visual test artifacts
+ if: always() && inputs.uploadVisualTestArtifacts == 'true'
+ uses: actions/upload-artifact@v4
+ with:
+ name: visual-test-diffs-chromium
+ path: |
+ ${{ inputs.projectRoot }}/**/__image_snapshots__/**/*-diff.png
+ ${{ inputs.projectRoot }}/**/__image_snapshots__/**/*-actual.png
+ if-no-files-found: ignore
diff --git a/packages/github-action/src/web/index.ts b/packages/github-action/src/web/index.ts
new file mode 100644
index 0000000..fcbabe1
--- /dev/null
+++ b/packages/github-action/src/web/index.ts
@@ -0,0 +1 @@
+// This file is intentionally empty.
diff --git a/packages/github-action/tsup.config.mts b/packages/github-action/tsup.config.mts
index 57b00f7..8d15b46 100644
--- a/packages/github-action/tsup.config.mts
+++ b/packages/github-action/tsup.config.mts
@@ -3,7 +3,7 @@ import fs from 'node:fs';
import path from 'node:path';
const OUT_DIR = path.resolve('../../actions');
-const TARGETS = ['ios', 'android'];
+const TARGETS = ['ios', 'android', 'web'];
const packageJson = JSON.parse(
fs.readFileSync(path.resolve('./package.json'), 'utf8')
diff --git a/packages/platform-android/src/factory.ts b/packages/platform-android/src/factory.ts
index 1f16a59..d136e4c 100644
--- a/packages/platform-android/src/factory.ts
+++ b/packages/platform-android/src/factory.ts
@@ -27,7 +27,7 @@ export const physicalAndroidDevice = (
export const androidPlatform = (
config: AndroidPlatformConfig
): HarnessPlatform => ({
- name: 'android',
+ name: config.name,
config,
runner: import.meta.resolve('./runner.js'),
});
diff --git a/packages/platform-web/README.md b/packages/platform-web/README.md
new file mode 100644
index 0000000..ea6a966
--- /dev/null
+++ b/packages/platform-web/README.md
@@ -0,0 +1,98 @@
+
+
+[![mit licence][license-badge]][license]
+[![npm downloads][npm-downloads-badge]][npm-downloads]
+[![Chat][chat-badge]][chat]
+[![PRs Welcome][prs-welcome-badge]][prs-welcome]
+
+Web platform for React Native Harness - enables testing on web browsers using Playwright.
+
+## Installation
+
+```bash
+npm install @react-native-harness/platform-web
+# or
+pnpm add @react-native-harness/platform-web
+# or
+yarn add @react-native-harness/platform-web
+```
+
+## Usage
+
+Import the Web platform functions in your `rn-harness.config.mjs`:
+
+```javascript
+import {
+ webPlatform,
+ chromium,
+ chrome,
+ firefox,
+ webkit,
+} from '@react-native-harness/platform-web';
+
+const config = {
+ runners: [
+ webPlatform({
+ name: 'web-chrome',
+ browser: chrome('http://localhost:8081/index.html'),
+ }),
+ webPlatform({
+ name: 'web-firefox-headful',
+ browser: firefox('http://localhost:8081/index.html', { headless: false }),
+ }),
+ ],
+ // ... other config
+};
+
+export default config;
+```
+
+## API
+
+### `webPlatform(config)`
+
+Creates a Web platform runner configuration.
+
+**Parameters:**
+
+- `config.name` - Unique name for the runner
+- `config.browser` - Browser configuration (created via helper factories)
+
+### Helper Factories
+
+#### `chromium(url, options)`
+
+#### `chrome(url, options)`
+
+#### `firefox(url, options)`
+
+#### `webkit(url, options)`
+
+Convenience functions for creating browser configurations.
+
+**Options:**
+
+- `headless` - Whether to run the browser in headless mode (default: `true`)
+- `channel` - Browser channel (e.g., `'chrome'`, `'msedge'`)
+- `executablePath` - Path to a specific browser binary
+
+## Requirements
+
+- Browsers installed (handled by Playwright or use system browsers via `channel`)
+- React Native project configured for web (e.g., `react-native-web`)
+
+## Made with ❤️ at Callstack
+
+`react-native-harness` is an open source project and will always remain free to use. If you think it's cool, please star it 🌟. [Callstack][callstack-readme-with-love] is a group of React and React Native geeks, contact us at [hello@callstack.com](mailto:hello@callstack.com) if you need any help with these or just want to say hi!
+
+Like the project? ⚛️ [Join the team](https://callstack.com/careers/?utm_campaign=Senior_RN&utm_source=github&utm_medium=readme) who does amazing stuff for clients and drives React Native Open Source! 🔥
+
+[callstack-readme-with-love]: https://callstack.com/?utm_source=github.com&utm_medium=referral&utm_campaign=react-native-harness&utm_term=readme-with-love
+[license-badge]: https://img.shields.io/npm/l/react-native-harness?style=for-the-badge
+[license]: https://github.com/callstackincubator/react-native-harness/blob/main/LICENSE
+[npm-downloads-badge]: https://img.shields.io/npm/dm/react-native-harness?style=for-the-badge
+[npm-downloads]: https://www.npmjs.com/package/react-native-harness
+[prs-welcome-badge]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=for-the-badge
+[prs-welcome]: ./CONTRIBUTING.md
+[chat-badge]: https://img.shields.io/discord/426714625279524876.svg?style=for-the-badge
+[chat]: https://discord.gg/xgGt7KAjxv
diff --git a/packages/platform-web/eslint.config.mjs b/packages/platform-web/eslint.config.mjs
new file mode 100644
index 0000000..c334bc0
--- /dev/null
+++ b/packages/platform-web/eslint.config.mjs
@@ -0,0 +1,19 @@
+import baseConfig from '../../eslint.config.mjs';
+
+export default [
+ ...baseConfig,
+ {
+ files: ['**/*.json'],
+ rules: {
+ '@nx/dependency-checks': [
+ 'error',
+ {
+ ignoredFiles: ['{projectRoot}/eslint.config.{js,cjs,mjs,ts,cts,mts}'],
+ },
+ ],
+ },
+ languageOptions: {
+ parser: await import('jsonc-eslint-parser'),
+ },
+ },
+];
diff --git a/packages/platform-web/package.json b/packages/platform-web/package.json
new file mode 100644
index 0000000..542e0c4
--- /dev/null
+++ b/packages/platform-web/package.json
@@ -0,0 +1,25 @@
+{
+ "name": "@react-native-harness/platform-web",
+ "description": "Web platform for React Native Harness using Playwright",
+ "version": "1.0.0-alpha.23",
+ "type": "module",
+ "main": "./dist/index.js",
+ "module": "./dist/index.js",
+ "types": "./dist/index.d.ts",
+ "exports": {
+ "./package.json": "./package.json",
+ ".": {
+ "development": "./src/index.ts",
+ "types": "./dist/index.d.ts",
+ "import": "./dist/index.js",
+ "default": "./dist/index.js"
+ }
+ },
+ "dependencies": {
+ "@react-native-harness/platforms": "workspace:*",
+ "playwright": "^1.50.0",
+ "zod": "^3.25.67",
+ "tslib": "^2.3.0"
+ },
+ "license": "MIT"
+}
diff --git a/packages/platform-web/src/config.ts b/packages/platform-web/src/config.ts
new file mode 100644
index 0000000..5138ea8
--- /dev/null
+++ b/packages/platform-web/src/config.ts
@@ -0,0 +1,17 @@
+import { z } from 'zod';
+
+export const WebBrowserConfigSchema = z.object({
+ type: z.enum(['chromium', 'firefox', 'webkit']),
+ url: z.string().url('A valid URL is required'),
+ headless: z.boolean().default(true),
+ channel: z.string().optional(),
+ executablePath: z.string().optional(),
+});
+
+export const WebPlatformConfigSchema = z.object({
+ name: z.string().min(1, 'Name is required'),
+ browser: WebBrowserConfigSchema,
+});
+
+export type WebBrowserConfig = z.infer;
+export type WebPlatformConfig = z.infer;
diff --git a/packages/platform-web/src/factory.ts b/packages/platform-web/src/factory.ts
new file mode 100644
index 0000000..abc07c8
--- /dev/null
+++ b/packages/platform-web/src/factory.ts
@@ -0,0 +1,51 @@
+import { HarnessPlatform } from '@react-native-harness/platforms';
+import { type WebPlatformConfig, type WebBrowserConfig } from './config.js';
+
+export const webPlatform = (
+ config: WebPlatformConfig
+): HarnessPlatform => ({
+ name: config.name,
+ config,
+ runner: import.meta.resolve('./runner.js'),
+});
+
+export const chromium = (
+ url: string,
+ options: Partial> = {}
+): WebBrowserConfig => ({
+ type: 'chromium',
+ url,
+ headless: true,
+ ...options,
+});
+
+export const chrome = (
+ url: string,
+ options: Partial> = {}
+): WebBrowserConfig => ({
+ type: 'chromium',
+ channel: 'chrome',
+ url,
+ headless: true,
+ ...options,
+});
+
+export const firefox = (
+ url: string,
+ options: Partial> = {}
+): WebBrowserConfig => ({
+ type: 'firefox',
+ url,
+ headless: true,
+ ...options,
+});
+
+export const webkit = (
+ url: string,
+ options: Partial> = {}
+): WebBrowserConfig => ({
+ type: 'webkit',
+ url,
+ headless: true,
+ ...options,
+});
diff --git a/packages/platform-web/src/index.ts b/packages/platform-web/src/index.ts
new file mode 100644
index 0000000..05938be
--- /dev/null
+++ b/packages/platform-web/src/index.ts
@@ -0,0 +1,2 @@
+export { webPlatform, chromium, chrome, firefox, webkit } from './factory.js';
+export type { WebPlatformConfig } from './config.js';
diff --git a/packages/platform-web/src/runner.ts b/packages/platform-web/src/runner.ts
new file mode 100644
index 0000000..ae051af
--- /dev/null
+++ b/packages/platform-web/src/runner.ts
@@ -0,0 +1,122 @@
+import { HarnessPlatformRunner } from '@react-native-harness/platforms';
+import { chromium, firefox, webkit, type Browser, type Page } from 'playwright';
+import { WebPlatformConfigSchema, type WebPlatformConfig } from './config.js';
+
+const getWebRunner = async (
+ config: WebPlatformConfig
+): Promise => {
+ const parsedConfig = WebPlatformConfigSchema.parse(config);
+
+ let browser: Browser | null = null;
+ let page: Page | null = null;
+
+ const launchBrowser = async () => {
+ const browserType = {
+ chromium,
+ firefox,
+ webkit,
+ }[parsedConfig.browser.type];
+
+ browser = await browserType.launch({
+ headless: parsedConfig.browser.headless,
+ channel: parsedConfig.browser.channel,
+ executablePath: parsedConfig.browser.executablePath,
+ });
+
+ const context = await browser.newContext();
+ page = await context.newPage();
+
+ // Expose functions for the UI package bridge
+ await page.exposeFunction(
+ '__RN_HARNESS_CAPTURE_SCREENSHOT__',
+ async (
+ bounds: { x: number; y: number; width: number; height: number } | null
+ ) => {
+ if (!page) return null;
+ const buffer = await page.screenshot({
+ clip: bounds
+ ? {
+ x: bounds.x,
+ y: bounds.y,
+ width: bounds.width,
+ height: bounds.height,
+ }
+ : undefined,
+ });
+ return buffer.toString('base64');
+ }
+ );
+
+ await page.exposeFunction(
+ '__RN_HARNESS_SIMULATE_PRESS__',
+ async (x: number, y: number) => {
+ if (!page) return;
+ await page.mouse.click(x, y);
+ }
+ );
+
+ await page.exposeFunction(
+ '__RN_HARNESS_TYPE_CHAR__',
+ async (char: string) => {
+ if (!page) return;
+ await page.keyboard.type(char);
+ }
+ );
+
+ await page.exposeFunction(
+ '__RN_HARNESS_BLUR__',
+ async (options: { submitEditing?: boolean }) => {
+ if (!page) return;
+ if (options.submitEditing) {
+ await page.keyboard.press('Enter');
+ // Allow some time for the event to be processed
+ await new Promise((resolve) => setTimeout(resolve, 50));
+ }
+ await page.evaluate(() => {
+ if (
+ document.activeElement instanceof HTMLElement ||
+ document.activeElement instanceof SVGElement
+ ) {
+ document.activeElement.blur();
+ }
+ });
+ }
+ );
+
+ await page.goto(parsedConfig.browser.url);
+ };
+
+ return {
+ startApp: async () => {
+ if (!browser) {
+ await launchBrowser();
+ }
+ },
+ restartApp: async () => {
+ if (page) {
+ await page.reload();
+ } else {
+ await launchBrowser();
+ }
+ },
+ stopApp: async () => {
+ if (browser) {
+ await browser.close();
+ browser = null;
+ page = null;
+ }
+ },
+ dispose: async () => {
+ if (browser) {
+ await browser.close();
+ browser = null;
+ page = null;
+ }
+ },
+ isAppRunning: async () => {
+ return browser !== null && page !== null && !page.isClosed();
+ },
+ };
+};
+
+export default getWebRunner;
diff --git a/packages/platform-web/tsconfig.json b/packages/platform-web/tsconfig.json
new file mode 100644
index 0000000..9f9888e
--- /dev/null
+++ b/packages/platform-web/tsconfig.json
@@ -0,0 +1,13 @@
+{
+ "extends": "../../tsconfig.base.json",
+ "files": [],
+ "include": [],
+ "references": [
+ {
+ "path": "../platforms"
+ },
+ {
+ "path": "./tsconfig.lib.json"
+ }
+ ]
+}
diff --git a/packages/platform-web/tsconfig.lib.json b/packages/platform-web/tsconfig.lib.json
new file mode 100644
index 0000000..595d0aa
--- /dev/null
+++ b/packages/platform-web/tsconfig.lib.json
@@ -0,0 +1,19 @@
+{
+ "extends": "../../tsconfig.base.json",
+ "compilerOptions": {
+ "baseUrl": ".",
+ "rootDir": "src",
+ "outDir": "dist",
+ "tsBuildInfoFile": "dist/tsconfig.lib.tsbuildinfo",
+ "emitDeclarationOnly": false,
+ "forceConsistentCasingInFileNames": true,
+ "lib": ["es2022", "dom"],
+ "types": ["node"]
+ },
+ "include": ["src/**/*.ts"],
+ "references": [
+ {
+ "path": "../platforms/tsconfig.lib.json"
+ }
+ ]
+}
diff --git a/packages/runtime/package.json b/packages/runtime/package.json
index 1885c68..3872ff7 100644
--- a/packages/runtime/package.json
+++ b/packages/runtime/package.json
@@ -39,9 +39,7 @@
"zustand": "^5.0.5"
},
"devDependencies": {
- "@types/chai": "^5.2.2",
- "react": "*",
- "react-native": "*"
+ "@types/chai": "^5.2.2"
},
"author": {
"name": "Szymon Chmal",
diff --git a/packages/runtime/src/__tests__/initialize.test.ts b/packages/runtime/src/__tests__/initialize.test.ts
deleted file mode 100644
index 800f1d2..0000000
--- a/packages/runtime/src/__tests__/initialize.test.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import { describe, expect, it, vi } from 'vitest';
-
-import { disableHMRWhenReady } from '../disableHMRWhenReady.js';
-
-describe('initialize', () => {
- it('retries HMRClient.disable until setup is ready', async () => {
- vi.useFakeTimers();
-
- const disable = vi
- .fn()
- .mockImplementationOnce(() => {
- throw new Error('Expected HMRClient.setup() call at startup.');
- })
- .mockImplementationOnce(() => {
- // ok
- });
-
- const promise = disableHMRWhenReady(disable, 50);
- await vi.runAllTimersAsync();
- await promise;
-
- expect(disable).toHaveBeenCalledTimes(2);
- });
-});
diff --git a/packages/runtime/src/client/getDeviceDescriptor.ts b/packages/runtime/src/client/getDeviceDescriptor.ts
index 1b0ff2f..2819727 100644
--- a/packages/runtime/src/client/getDeviceDescriptor.ts
+++ b/packages/runtime/src/client/getDeviceDescriptor.ts
@@ -11,7 +11,7 @@ const getPlatform = (): Platform | PlatformKeplerStatic => {
};
export type DeviceDescriptor = {
- platform: 'ios' | 'android' | 'vega';
+ platform: 'ios' | 'android' | 'vega' | 'web';
manufacturer: string;
model: string;
osVersion: string;
@@ -20,6 +20,15 @@ export type DeviceDescriptor = {
export const getDeviceDescriptor = (): DeviceDescriptor => {
const platform = getPlatform();
+ if (platform.OS === 'web') {
+ return {
+ platform: 'web',
+ manufacturer: '',
+ model: '',
+ osVersion: '',
+ };
+ }
+
if (platform.OS === 'ios') {
return {
platform: 'ios',
diff --git a/packages/runtime/src/disableHMRWhenReady.ts b/packages/runtime/src/disableHMRWhenReady.ts
index b876be4..86c290b 100644
--- a/packages/runtime/src/disableHMRWhenReady.ts
+++ b/packages/runtime/src/disableHMRWhenReady.ts
@@ -1,9 +1,17 @@
+import { Platform } from "react-native";
+
export function disableHMRWhenReady(
disable: () => void,
retriesLeft: number,
retryDelay = 10
) {
return new Promise((resolve, reject) => {
+ if (Platform.OS === 'web') {
+ // No HMR on web
+ resolve();
+ return;
+ }
+
function attempt(remaining: number) {
try {
disable();
diff --git a/packages/runtime/src/entry-point.ts b/packages/runtime/src/entry-point.ts
index aa65fcd..ed11eeb 100644
--- a/packages/runtime/src/entry-point.ts
+++ b/packages/runtime/src/entry-point.ts
@@ -1,8 +1,13 @@
-import { AppRegistry } from 'react-native';
+import { AppRegistry, Platform } from 'react-native';
import { getHarnessGlobal } from './globals.js';
import { UI } from './ui/index.js';
-AppRegistry.registerComponent(
- getHarnessGlobal().appRegistryComponentName,
- () => UI
-);
+const componentName = getHarnessGlobal().appRegistryComponentName;
+
+AppRegistry.registerComponent(componentName, () => UI);
+
+if (Platform.OS === 'web') {
+ AppRegistry.runApplication(componentName, {
+ rootTag: document.getElementById('root'),
+ });
+}
\ No newline at end of file
diff --git a/packages/runtime/src/react-native.d.ts b/packages/runtime/src/react-native.d.ts
index d75a614..0841144 100644
--- a/packages/runtime/src/react-native.d.ts
+++ b/packages/runtime/src/react-native.d.ts
@@ -7,33 +7,6 @@ declare module 'react-native/Libraries/Core/Devtools/getDevServer' {
export default function getDevServer(): DevServerInfo;
}
-declare module 'react-native/Libraries/Core/Devtools/symbolicateStackTrace' {
- import { StackFrame } from 'react-native/Libraries/Core/Devtools/parseErrorStack';
-
- export type CodeFrame = Readonly<{
- content: string;
- location:
- | {
- row: number;
- column: number;
- [key: string]: unknown;
- }
- | null
- | undefined;
- fileName: string;
- }>;
-
- export type SymbolicatedStackTrace = Readonly<{
- stack: ReadonlyArray;
- codeFrame: CodeFrame | null | undefined;
- }>;
-
- export default function symbolicateStackTrace(
- stack: ReadonlyArray,
- extraData?: unknown
- ): Promise;
-}
-
declare module 'react-native/Libraries/Core/Devtools/parseErrorStack' {
export type StackFrame = {
column: number | null | undefined;
diff --git a/packages/runtime/src/symbolicate.ts b/packages/runtime/src/symbolicate.ts
index e043db3..3e20a3c 100644
--- a/packages/runtime/src/symbolicate.ts
+++ b/packages/runtime/src/symbolicate.ts
@@ -1,6 +1,37 @@
import type { CodeFrame } from '@react-native-harness/bridge';
-import parseErrorStack from 'react-native/Libraries/Core/Devtools/parseErrorStack';
-import symbolicateStackTrace from 'react-native/Libraries/Core/Devtools/symbolicateStackTrace';
+import parseErrorStack, { StackFrame } from 'react-native/Libraries/Core/Devtools/parseErrorStack';
+import { getDevServerUrl } from './utils/dev-server.js';
+
+export type RNCodeFrame = Readonly<{
+ content: string;
+ location:
+ | {
+ row: number;
+ column: number;
+ [key: string]: unknown;
+ }
+ | null
+ | undefined;
+ fileName: string;
+}>;
+
+export type RNSymbolicatedStackTrace = Readonly<{
+ stack: ReadonlyArray;
+ codeFrame: CodeFrame | null | undefined;
+}>;
+
+
+const symbolicateStackTrace = async (stack: ReadonlyArray, extraData?: unknown): Promise => {
+ const devServerUrl = getDevServerUrl();
+ const response = await fetch(devServerUrl + 'symbolicate', {
+ method: 'POST',
+ headers: {
+ 'Content-Type': 'application/json',
+ },
+ body: JSON.stringify({ stack, extraData }),
+ });
+ return await response.json();
+}
export const getCodeFrame = async (error: Error): Promise => {
const parsedStack = parseErrorStack(error.stack);
@@ -17,8 +48,8 @@ export const getCodeFrame = async (error: Error): Promise => {
...codeFrame,
location: codeFrame.location
? {
- ...codeFrame.location,
- }
+ ...codeFrame.location,
+ }
: undefined,
};
};
diff --git a/packages/runtime/src/utils/dev-server.ts b/packages/runtime/src/utils/dev-server.ts
index e1aadba..3578006 100644
--- a/packages/runtime/src/utils/dev-server.ts
+++ b/packages/runtime/src/utils/dev-server.ts
@@ -1,6 +1,13 @@
+import { Platform } from 'react-native';
import getDevServer from 'react-native/Libraries/Core/Devtools/getDevServer';
export const getDevServerUrl = (): string => {
+ if (Platform.OS === 'web') {
+ // This is going to be the same as the current URL
+ return window.location.origin + '/';
+ }
+
+
const devServer = getDevServer();
return devServer.url;
};
diff --git a/packages/runtime/tsconfig.lib.json b/packages/runtime/tsconfig.lib.json
index 5effb71..f8afc10 100644
--- a/packages/runtime/tsconfig.lib.json
+++ b/packages/runtime/tsconfig.lib.json
@@ -8,7 +8,8 @@
"emitDeclarationOnly": false,
"forceConsistentCasingInFileNames": true,
"types": ["node"],
- "jsx": "react-jsx"
+ "jsx": "react-jsx",
+ "lib": ["DOM", "ESNext"]
},
"include": ["src/**/*.ts", "src/**/*.tsx"],
"references": [
diff --git a/packages/ui/src/NativeHarnessUI.ts b/packages/ui/src/NativeHarnessUI.ts
index 03dd294..2e73300 100644
--- a/packages/ui/src/NativeHarnessUI.ts
+++ b/packages/ui/src/NativeHarnessUI.ts
@@ -1,8 +1,6 @@
import { TurboModuleRegistry, type TurboModule } from 'react-native';
-/**
- * Represents the position and dimensions of a view in screen coordinates (points/dp).
- */
+// This interface needs to be there for Codegen to work.
export interface ViewInfo {
x: number;
y: number;
@@ -11,56 +9,14 @@ export interface ViewInfo {
}
interface Spec extends TurboModule {
- /**
- * Simulates a native press at the specified screen coordinates.
- * Returns a promise that resolves when the press action is complete.
- */
simulatePress(x: number, y: number): Promise;
-
- /**
- * Finds a view by its testID (accessibilityIdentifier on iOS, tag on Android).
- * Returns null if no view is found.
- */
queryByTestId(testId: string): ViewInfo | null;
-
- /**
- * Finds all views by testID (accessibilityIdentifier on iOS, tag on Android).
- * Returns an empty array if no views are found.
- */
queryAllByTestId(testId: string): ViewInfo[];
-
- /**
- * Finds a view by its accessibility label.
- * Returns null if no view is found.
- */
queryByAccessibilityLabel(label: string): ViewInfo | null;
-
- /**
- * Finds all views by accessibility label.
- * Returns an empty array if no views are found.
- */
queryAllByAccessibilityLabel(label: string): ViewInfo[];
-
- /**
- * Captures a screenshot of the app UI.
- * @param bounds Optional bounds to capture a specific region. Pass null to capture the entire window.
- * @returns Promise resolving to Base64 encoded string containing PNG data, or null on failure.
- */
captureScreenshot(bounds: ViewInfo | null): Promise;
-
- /**
- * Types a single character into the currently focused text input.
- * If no text input is focused, this is a no-op.
- */
typeChar(character: string): Promise;
-
- /**
- * Blurs (resigns first responder from) the currently focused element.
- * Optionally triggers submitEditing event before blur.
- */
blur(options: { submitEditing?: boolean }): Promise;
}
-export type HarnessUIModule = Spec;
-
export default TurboModuleRegistry.getEnforcing('HarnessUI');
diff --git a/packages/ui/src/WebHarnessUI.ts b/packages/ui/src/WebHarnessUI.ts
new file mode 100644
index 0000000..b3fd7a9
--- /dev/null
+++ b/packages/ui/src/WebHarnessUI.ts
@@ -0,0 +1,78 @@
+import { type HarnessUIModule, type ViewInfo } from './types.js';
+
+declare global {
+ interface Window {
+ __RN_HARNESS_CAPTURE_SCREENSHOT__: (
+ bounds: ViewInfo | null
+ ) => Promise;
+ __RN_HARNESS_SIMULATE_PRESS__: (x: number, y: number) => Promise;
+ __RN_HARNESS_TYPE_CHAR__: (character: string) => Promise;
+ __RN_HARNESS_BLUR__: (options: {
+ submitEditing?: boolean;
+ }) => Promise;
+ }
+}
+
+const getElementViewInfo = (element: Element): ViewInfo => {
+ const rect = element.getBoundingClientRect();
+ return {
+ x: rect.left,
+ y: rect.top,
+ width: rect.width,
+ height: rect.height,
+ };
+};
+
+const WebHarnessUI: HarnessUIModule = {
+ simulatePress: async (x, y) => {
+ await window.__RN_HARNESS_SIMULATE_PRESS__(x, y);
+ },
+
+ queryByTestId: (testId) => {
+ const element = document.querySelector(`[data-testid="${testId}"]`);
+ return element ? getElementViewInfo(element) : null;
+ },
+
+ queryAllByTestId: (testId) => {
+ const elements = document.querySelectorAll(`[data-testid="${testId}"]`);
+ return Array.from(elements).map(getElementViewInfo);
+ },
+
+ queryByAccessibilityLabel: (label) => {
+ const element = document.querySelector(`[aria-label="${label}"]`);
+ return element ? getElementViewInfo(element) : null;
+ },
+
+ queryAllByAccessibilityLabel: (label) => {
+ const elements = document.querySelectorAll(`[aria-label="${label}"]`);
+ return Array.from(elements).map(getElementViewInfo);
+ },
+
+ captureScreenshot: async (bounds) => {
+ return await window.__RN_HARNESS_CAPTURE_SCREENSHOT__(bounds);
+ },
+
+ typeChar: async (character) => {
+ await window.__RN_HARNESS_TYPE_CHAR__(character);
+ },
+
+ blur: async (options) => {
+ if (options.submitEditing) {
+ // If we want to submit, we must NOT blur before pressing Enter.
+ // We let the runner-side bridge handle both Enter and the subsequent blur.
+ await window.__RN_HARNESS_BLUR__(options);
+ } else {
+ // If there is a focused element, blur it directly in the DOM first
+ // to trigger local events, then call the runner-side bridge.
+ if (
+ document.activeElement instanceof HTMLElement ||
+ document.activeElement instanceof SVGElement
+ ) {
+ document.activeElement.blur();
+ }
+ await window.__RN_HARNESS_BLUR__(options);
+ }
+ },
+};
+
+export default WebHarnessUI;
diff --git a/packages/ui/src/harness.ts b/packages/ui/src/harness.ts
new file mode 100644
index 0000000..5a6c80e
--- /dev/null
+++ b/packages/ui/src/harness.ts
@@ -0,0 +1,12 @@
+import { Platform } from "react-native";
+import { HarnessUIModule } from "./types.js";
+
+const getHarnessUI = (): HarnessUIModule => {
+ if (Platform.OS === 'web') {
+ return require('./WebHarnessUI.js').default;
+ }
+
+ return require('./NativeHarnessUI.js').default;
+}
+
+export default getHarnessUI();
\ No newline at end of file
diff --git a/packages/ui/src/index.ts b/packages/ui/src/index.ts
index ebe421b..ca127ae 100644
--- a/packages/ui/src/index.ts
+++ b/packages/ui/src/index.ts
@@ -15,4 +15,4 @@ export {
type ScreenshotResult,
} from './screen.js';
export { userEvent, type UserEvent } from './userEvent.js';
-export type { ViewInfo } from './NativeHarnessUI.js';
+export type { ViewInfo } from './types.js';
diff --git a/packages/ui/src/screen.ts b/packages/ui/src/screen.ts
index 715e417..00821c0 100644
--- a/packages/ui/src/screen.ts
+++ b/packages/ui/src/screen.ts
@@ -1,5 +1,6 @@
-import NativeHarnessUI, { type ViewInfo } from './NativeHarnessUI.js';
+import { type ViewInfo } from './types.js';
import { waitFor } from '@react-native-harness/runtime';
+import HarnessUI from './harness.js';
/**
* Represents an element found on screen with its position and dimensions.
@@ -80,7 +81,7 @@ const createScreen = (): Screen => {
return {
findByTestId: async (testId: string): Promise => {
return waitFor(() => {
- const result = NativeHarnessUI.queryByTestId(testId);
+ const result = HarnessUI.queryByTestId(testId);
if (!result) {
throw new Error(`Unable to find element with testID: ${testId}`);
}
@@ -90,7 +91,7 @@ const createScreen = (): Screen => {
findAllByTestId: async (testId: string): Promise => {
return waitFor(() => {
- const results = NativeHarnessUI.queryAllByTestId(testId);
+ const results = HarnessUI.queryAllByTestId(testId);
if (results.length === 0) {
throw new Error(`Unable to find any elements with testID: ${testId}`);
}
@@ -99,18 +100,18 @@ const createScreen = (): Screen => {
},
queryByTestId: (testId: string): ElementReference | null => {
- return NativeHarnessUI.queryByTestId(testId);
+ return HarnessUI.queryByTestId(testId);
},
queryAllByTestId: (testId: string): ElementReference[] => {
- return NativeHarnessUI.queryAllByTestId(testId);
+ return HarnessUI.queryAllByTestId(testId);
},
findByAccessibilityLabel: async (
label: string
): Promise => {
return waitFor(() => {
- const result = NativeHarnessUI.queryByAccessibilityLabel(label);
+ const result = HarnessUI.queryByAccessibilityLabel(label);
if (!result) {
throw new Error(
`Unable to find element with accessibility label: ${label}`
@@ -124,7 +125,7 @@ const createScreen = (): Screen => {
label: string
): Promise => {
return waitFor(() => {
- const results = NativeHarnessUI.queryAllByAccessibilityLabel(label);
+ const results = HarnessUI.queryAllByAccessibilityLabel(label);
if (results.length === 0) {
throw new Error(
`Unable to find any elements with accessibility label: ${label}`
@@ -135,18 +136,18 @@ const createScreen = (): Screen => {
},
queryByAccessibilityLabel: (label: string): ElementReference | null => {
- return NativeHarnessUI.queryByAccessibilityLabel(label);
+ return HarnessUI.queryByAccessibilityLabel(label);
},
queryAllByAccessibilityLabel: (label: string): ElementReference[] => {
- return NativeHarnessUI.queryAllByAccessibilityLabel(label);
+ return HarnessUI.queryAllByAccessibilityLabel(label);
},
screenshot: async (
element?: ElementReference
): Promise => {
const bounds = element ?? null;
- const base64String = await NativeHarnessUI.captureScreenshot(bounds);
+ const base64String = await HarnessUI.captureScreenshot(bounds);
if (!base64String) {
return null;
diff --git a/packages/ui/src/types.ts b/packages/ui/src/types.ts
new file mode 100644
index 0000000..db02bbe
--- /dev/null
+++ b/packages/ui/src/types.ts
@@ -0,0 +1,60 @@
+/**
+ * Represents the position and dimensions of a view in screen coordinates (points/dp).
+ */
+export interface ViewInfo {
+ x: number;
+ y: number;
+ width: number;
+ height: number;
+}
+
+export interface HarnessUIModule {
+ /**
+ * Simulates a native press at the specified screen coordinates.
+ * Returns a promise that resolves when the press action is complete.
+ */
+ simulatePress(x: number, y: number): Promise;
+
+ /**
+ * Finds a view by its testID (accessibilityIdentifier on iOS, tag on Android).
+ * Returns null if no view is found.
+ */
+ queryByTestId(testId: string): ViewInfo | null;
+
+ /**
+ * Finds all views by testID (accessibilityIdentifier on iOS, tag on Android).
+ * Returns an empty array if no views are found.
+ */
+ queryAllByTestId(testId: string): ViewInfo[];
+
+ /**
+ * Finds a view by its accessibility label.
+ * Returns null if no view is found.
+ */
+ queryByAccessibilityLabel(label: string): ViewInfo | null;
+
+ /**
+ * Finds all views by accessibility label.
+ * Returns an empty array if no views are found.
+ */
+ queryAllByAccessibilityLabel(label: string): ViewInfo[];
+
+ /**
+ * Captures a screenshot of the app UI.
+ * @param bounds Optional bounds to capture a specific region. Pass null to capture the entire window.
+ * @returns Promise resolving to Base64 encoded string containing PNG data, or null on failure.
+ */
+ captureScreenshot(bounds: ViewInfo | null): Promise;
+
+ /**
+ * Types a single character into the currently focused text input.
+ * If no text input is focused, this is a no-op.
+ */
+ typeChar(character: string): Promise;
+
+ /**
+ * Blurs (resigns first responder from) the currently focused element.
+ * Optionally triggers submitEditing event before blur.
+ */
+ blur(options: { submitEditing?: boolean }): Promise;
+}
diff --git a/packages/ui/src/userEvent.ts b/packages/ui/src/userEvent.ts
index 3951639..ed95a24 100644
--- a/packages/ui/src/userEvent.ts
+++ b/packages/ui/src/userEvent.ts
@@ -1,4 +1,4 @@
-import NativeHarnessUI from './NativeHarnessUI.js';
+import HarnessUI from './harness.js';
import type { ElementReference } from './screen.js';
/**
@@ -66,13 +66,13 @@ const createUserEvent = (): UserEvent => {
// Calculate center point of the element
const centerX = element.x + element.width / 2;
const centerY = element.y + element.height / 2;
- await NativeHarnessUI.simulatePress(centerX, centerY);
+ await HarnessUI.simulatePress(centerX, centerY);
// Flush pending events to ensure onPress and other callbacks are processed
await flushEvents();
},
pressAt: async (x: number, y: number): Promise => {
- await NativeHarnessUI.simulatePress(x, y);
+ await HarnessUI.simulatePress(x, y);
// Flush pending events to ensure onPress and other callbacks are processed
await flushEvents();
},
@@ -93,26 +93,26 @@ const createUserEvent = (): UserEvent => {
// Calculate center point of the element
const centerX = element.x + element.width / 2;
const centerY = element.y + element.height / 2;
- await NativeHarnessUI.simulatePress(centerX, centerY);
+ await HarnessUI.simulatePress(centerX, centerY);
await flushEvents();
} else {
// Still need to press to focus, but ideally without press events
// For now, we press anyway - future enhancement could add a focusOnly method
const centerX = element.x + element.width / 2;
const centerY = element.y + element.height / 2;
- await NativeHarnessUI.simulatePress(centerX, centerY);
+ await HarnessUI.simulatePress(centerX, centerY);
await flushEvents();
}
// Type each character one by one
for (const char of text) {
- await NativeHarnessUI.typeChar(char);
+ await HarnessUI.typeChar(char);
await flushEvents(); // Let onChangeText fire
}
// Blur (triggers endEditing and blur unless skipBlur)
if (!options?.skipBlur) {
- await NativeHarnessUI.blur({
+ await HarnessUI.blur({
submitEditing: options?.submitEditing ?? false,
});
await flushEvents();
diff --git a/packages/ui/tsconfig.lib.json b/packages/ui/tsconfig.lib.json
index 7a4a13a..7a6e1cc 100644
--- a/packages/ui/tsconfig.lib.json
+++ b/packages/ui/tsconfig.lib.json
@@ -7,6 +7,7 @@
"tsBuildInfoFile": "dist/tsconfig.lib.tsbuildinfo",
"emitDeclarationOnly": false,
"forceConsistentCasingInFileNames": true,
+ "lib": ["es2022", "dom", "dom.iterable"],
"types": ["node"]
},
"include": ["src/**/*.ts"],
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 1de4b9b..aa4931f 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -1,7 +1,7 @@
lockfileVersion: '9.0'
settings:
- autoInstallPeers: true
+ autoInstallPeers: false
excludeLinksFromLockfile: false
importers:
@@ -31,13 +31,13 @@ importers:
version: 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/react-native':
specifier: 22.0.4
- version: 22.0.4(b6bdbf441fca35f932c3e030670387b0)
+ version: 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@types/node@20.19.25)(@zkochan/js-yaml@0.0.7)(babel-plugin-macros@3.1.0)(eslint@9.29.0(jiti@2.4.2))(metro-config@0.83.3)(metro-resolver@0.83.3)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/rollup':
specifier: 22.0.4
- version: 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)
+ version: 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)
'@nx/vite':
specifier: 22.0.4
- version: 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4)
+ version: 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))
'@nx/web':
specifier: 22.0.4
version: 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
@@ -61,10 +61,10 @@ importers:
version: 19.1.13
'@vitejs/plugin-react':
specifier: ^4.2.0
- version: 4.6.0(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))
+ version: 4.6.0(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))
'@vitest/coverage-v8':
specifier: ^3.0.5
- version: 3.2.4(vitest@3.2.4)
+ version: 3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))
'@vitest/ui':
specifier: ^3.0.0
version: 3.2.4(vitest@3.2.4)
@@ -91,7 +91,7 @@ importers:
version: 5.0.0(eslint@9.29.0(jiti@2.4.2))
jest-cli:
specifier: ^30.2.0
- version: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ version: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)
jiti:
specifier: 2.4.2
version: 2.4.2
@@ -121,19 +121,25 @@ importers:
version: 8.47.0(eslint@9.29.0(jiti@2.4.2))(typescript@5.9.3)
vite:
specifier: 7.2.2
- version: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ version: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0)
vitest:
specifier: ^3.2.4
- version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ version: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0)
apps/playground:
dependencies:
react:
- specifier: 19.1.1
- version: 19.1.1
+ specifier: 19.2.3
+ version: 19.2.3
+ react-dom:
+ specifier: 19.2.3
+ version: 19.2.3(react@19.2.3)
react-native:
specifier: 0.82.1
- version: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1)
+ version: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)(@types/react@19.1.13)(react@19.2.3)
+ react-native-web:
+ specifier: ^0.21.2
+ version: 0.21.2(encoding@0.1.13)(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
devDependencies:
'@react-native-community/cli':
specifier: 20.0.0
@@ -156,6 +162,9 @@ importers:
'@react-native-harness/platform-vega':
specifier: workspace:*
version: link:../../packages/platform-vega
+ '@react-native-harness/platform-web':
+ specifier: workspace:*
+ version: link:../../packages/platform-web
'@react-native-harness/runtime':
specifier: workspace:*
version: link:../../packages/runtime
@@ -164,19 +173,19 @@ importers:
version: link:../../packages/ui
'@react-native/babel-preset':
specifier: 0.82.1
- version: 0.82.1(@babel/core@7.27.4)
+ version: 0.82.1
'@react-native/eslint-config':
specifier: 0.82.1
- version: 0.82.1(eslint@9.29.0(jiti@2.6.0))(jest@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)))(prettier@2.8.8)(typescript@5.9.3)
+ version: 0.82.1(eslint@9.29.0(jiti@2.6.1))(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0))(prettier@2.8.8)(typescript@5.9.3)
'@react-native/metro-config':
specifier: 0.82.1
- version: 0.82.1(@babel/core@7.27.4)
+ version: 0.82.1
'@react-native/typescript-config':
specifier: 0.82.1
version: 0.82.1
jest:
specifier: ^30.2.0
- version: 30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ version: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)
react-native-harness:
specifier: workspace:*
version: link:../../packages/react-native-harness
@@ -279,7 +288,7 @@ importers:
devDependencies:
jest-cli:
specifier: ^30.2.0
- version: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ version: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)
packages/config:
dependencies:
@@ -301,7 +310,7 @@ importers:
devDependencies:
tsup:
specifier: ^8.5.1
- version: 8.5.1(@swc/core@1.5.29(@swc/helpers@0.5.17))(jiti@2.6.0)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.0)
+ version: 8.5.1(@swc/core@1.5.29(@swc/helpers@0.5.17))(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.0)
packages/jest:
dependencies:
@@ -419,6 +428,21 @@ importers:
specifier: ^3.25.67
version: 3.25.67
+ packages/platform-web:
+ dependencies:
+ '@react-native-harness/platforms':
+ specifier: workspace:*
+ version: link:../platforms
+ playwright:
+ specifier: ^1.50.0
+ version: 1.57.0
+ tslib:
+ specifier: ^2.3.0
+ version: 2.8.1
+ zod:
+ specifier: ^3.25.67
+ version: 3.25.67
+
packages/platforms:
dependencies:
tslib:
@@ -475,20 +499,14 @@ importers:
version: 6.0.2
use-sync-external-store:
specifier: ^1.6.0
- version: 1.6.0(react@19.1.1)
+ version: 1.6.0(react@19.2.3)
zustand:
specifier: ^5.0.5
- version: 5.0.5(@types/react@19.1.13)(immer@10.1.1)(react@19.1.1)(use-sync-external-store@1.6.0(react@19.1.1))
+ version: 5.0.5(@types/react@19.1.13)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3))
devDependencies:
'@types/chai':
specifier: ^5.2.2
version: 5.2.3
- react:
- specifier: '*'
- version: 19.1.1
- react-native:
- specifier: '*'
- version: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1)
packages/tools:
dependencies:
@@ -510,7 +528,7 @@ importers:
devDependencies:
react-native:
specifier: '*'
- version: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1)
+ version: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)(@types/react@19.1.13)(react@19.2.3)
packages/ui:
dependencies:
@@ -523,19 +541,19 @@ importers:
devDependencies:
react-native:
specifier: '*'
- version: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1)
+ version: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)(@types/react@19.1.13)(react@19.2.3)
website:
dependencies:
'@callstack/rspress-preset':
- specifier: ^0.4.1
- version: 0.4.2(@rsbuild/core@1.5.11)(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))(react@19.1.1)
+ specifier: 0.5.1
+ version: 0.5.1(@rsbuild/core@1.6.15)(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
'@callstack/rspress-theme':
- specifier: ^0.4.1
- version: 0.4.2(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))(react@19.1.1)
+ specifier: 0.5.1
+ version: 0.5.1(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
'@rspress/core':
- specifier: 2.0.0-beta.32
- version: 2.0.0-beta.32(@types/react@19.1.13)
+ specifier: 2.0.0-rc.4
+ version: 2.0.0-rc.4(@types/react@19.1.13)
devDependencies:
'@types/node':
specifier: ^18.11.17
@@ -546,9 +564,6 @@ importers:
packages:
- '@adobe/css-tools@4.3.3':
- resolution: {integrity: sha512-rE0Pygv0sEZ4vBWHlAgJLGDU7Pm8xoO6p3wsEceb7GYAjScrOHpEo8KK/eVkAcnSM+slAEtXjA2JpdjLp4fJQQ==}
-
'@ampproject/remapping@2.3.0':
resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==}
engines: {node: '>=6.0.0'}
@@ -1244,19 +1259,17 @@ packages:
resolution: {integrity: sha512-6zABk/ECA/QYSCQ1NGiVwwbQerUCZ+TQbp64Q3AgmfNvurHH0j8TtXa1qbShXA6qqkpAj4V5W8pP6mLe1mcMqA==}
engines: {node: '>=18'}
- '@bufbuild/protobuf@2.6.0':
- resolution: {integrity: sha512-6cuonJVNOIL7lTj5zgo/Rc2bKAo4/GvN+rKCrUj7GdEHRzCk8zKOfFwUsL9nAVk5rSIsRmlgcpLzTRysopEeeg==}
-
- '@callstack/rspress-preset@0.4.2':
- resolution: {integrity: sha512-8Vh/XGNDowOH34ja8jExyoLFLydRe+kIShwqScMWI93mcMnDfVbbbKhcdhnM0ww0ywkplqx22NYAR/DnAIAAqw==}
+ '@callstack/rspress-preset@0.5.1':
+ resolution: {integrity: sha512-AlfWFAClrcwtZNXU1fXrPgnoaIazIJX9Uz8oTd4bUqms4BUEq7Lb/n27JoLdQxZ1RzhXc3APTK12eEAT6DBdwg==}
peerDependencies:
- '@rspress/core': 2.0.0-beta.32
+ '@rspress/core': 2.0.0-rc.4
- '@callstack/rspress-theme@0.4.2':
- resolution: {integrity: sha512-2eJQOUm/hYwg7QF72OJuvmG8MYZ24lEs2HjaJ+dejDslmis0NmQHbgz6FzEGNGmP0qEU7XgebAwiLTH5KzKB/w==}
+ '@callstack/rspress-theme@0.5.1':
+ resolution: {integrity: sha512-p8iS0icR9JbAvYWKOeglxfnJwwCATEpItjDoFW5srTYNFw4swVD1Aahox8Fv89l+wHLTzADokmC8iqqG8jnvqg==}
peerDependencies:
- '@rspress/core': ^2.0.0-beta.32
- react: ^19.0.0
+ '@rspress/core': ^2.0.0-rc.4
+ react: ^19.2.0
+ react-dom: ^19.2.0
'@clack/core@1.0.0-alpha.5':
resolution: {integrity: sha512-z02wRlW7F7L5N5r2otDMsrLNKAgjDIDD+m4do5/cBqiYCKKb7SNBJgpUISjuCmRI0/P5XyoInmMrr1rBoH8MKw==}
@@ -1264,13 +1277,6 @@ packages:
'@clack/prompts@1.0.0-alpha.5':
resolution: {integrity: sha512-hY67bxfwwti2WkLOLOiuXtAdD43KNMV4yiJPPSEdZG8N5TfZ9lLxibmqwKe5UZ5364PIp4kzTEvge/4Crcd5bg==}
- '@colors/colors@1.6.0':
- resolution: {integrity: sha512-Ir+AOibqzrIsL6ajt3Rz3LskB7OiMVHqltZmspbW/TJuTVuyOMirVqAkjfY6JISiLHgyNqicAC8AyHHGzNd/dA==}
- engines: {node: '>=0.1.90'}
-
- '@dabh/diagnostics@2.0.8':
- resolution: {integrity: sha512-R4MSXTVnuMzGD7bzHdW2ZhhdPC/igELENcq5IjEverBvq5hn1SXCWcsi6eSsdWP0/Ur+SItRRjAktmdoX/8R/Q==}
-
'@emnapi/core@1.5.0':
resolution: {integrity: sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==}
@@ -1628,9 +1634,6 @@ packages:
resolution: {integrity: sha512-4SaFZCNfJqvk/kenHpI8xvN42DMaoycy4PzKc5otHxRswww1kAt82OlBuwRVLofCACCTZEcla2Ydxv8scMXaTg==}
engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
- '@flatten-js/interval-tree@1.1.4':
- resolution: {integrity: sha512-o4emRDDvGdkwX18BSVSXH8q27qAL7Z2WDHSN75C8xyRSE4A8UOkig0mWSGoT5M5KaTHZxoLmalFwOTQmbRusUg==}
-
'@hapi/hoek@9.3.0':
resolution: {integrity: sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==}
@@ -1803,11 +1806,6 @@ packages:
'@mdx-js/mdx@3.1.1':
resolution: {integrity: sha512-f6ZO2ifpwAQIpzGWaBQT2TXxPv6z3RBzQKpVftEWN78Vl/YweF1uwussDx8ECAXVtr3Rs89fKyG9YlzUs9DyGQ==}
- '@mdx-js/react@2.3.0':
- resolution: {integrity: sha512-zQH//gdOmuu7nt2oJR29vFhDv88oGPmVw6BggmrHeMI+xgEkp1B2dX9/bMBSYtK0dyLX/aOmesKS09g222K1/g==}
- peerDependencies:
- react: '>=16'
-
'@mdx-js/react@3.1.1':
resolution: {integrity: sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==}
peerDependencies:
@@ -1864,6 +1862,9 @@ packages:
'@module-federation/error-codes@0.21.4':
resolution: {integrity: sha512-ClpL5MereWNXh+EgDjz7w4RrC1JlisQTvXDa1gLxpviHafzNDfdViVmuhi9xXVuj+EYo8KU70Y999KHhk9424Q==}
+ '@module-federation/error-codes@0.21.6':
+ resolution: {integrity: sha512-MLJUCQ05KnoVl8xd6xs9a5g2/8U+eWmVxg7xiBMeR0+7OjdWUbHwcwgVFatRIwSZvFgKHfWEiI7wsU1q1XbTRQ==}
+
'@module-federation/inject-external-runtime-core-plugin@0.21.4':
resolution: {integrity: sha512-lOy+qPEA56AdkSIN2hO5zsKvnbplCJHUR5B6BKjo5+q752BrE3C1O0vAXYBRgmdQIBn+JAssdkbJKtfwl8oReQ==}
peerDependencies:
@@ -1908,24 +1909,36 @@ packages:
'@module-federation/runtime-core@0.21.4':
resolution: {integrity: sha512-SGpmoOLGNxZofpTOk6Lxb2ewaoz5wMi93AFYuuJB04HTVcngEK+baNeUZ2D/xewrqNIJoMY6f5maUjVfIIBPUA==}
+ '@module-federation/runtime-core@0.21.6':
+ resolution: {integrity: sha512-5Hd1Y5qp5lU/aTiK66lidMlM/4ji2gr3EXAtJdreJzkY+bKcI5+21GRcliZ4RAkICmvdxQU5PHPL71XmNc7Lsw==}
+
'@module-federation/runtime-tools@0.18.0':
resolution: {integrity: sha512-fSga9o4t1UfXNV/Kh6qFvRyZpPp3EHSPRISNeyT8ZoTpzDNiYzhtw0BPUSSD8m6C6XQh2s/11rI4g80UY+d+hA==}
'@module-federation/runtime-tools@0.21.4':
resolution: {integrity: sha512-RzFKaL0DIjSmkn76KZRfzfB6dD07cvID84950jlNQgdyoQFUGkqD80L6rIpVCJTY/R7LzR3aQjHnoqmq4JPo3w==}
+ '@module-federation/runtime-tools@0.21.6':
+ resolution: {integrity: sha512-fnP+ZOZTFeBGiTAnxve+axGmiYn2D60h86nUISXjXClK3LUY1krUfPgf6MaD4YDJ4i51OGXZWPekeMe16pkd8Q==}
+
'@module-federation/runtime@0.18.0':
resolution: {integrity: sha512-+C4YtoSztM7nHwNyZl6dQKGUVJdsPrUdaf3HIKReg/GQbrt9uvOlUWo2NXMZ8vDAnf/QRrpSYAwXHmWDn9Obaw==}
'@module-federation/runtime@0.21.4':
resolution: {integrity: sha512-wgvGqryurVEvkicufJmTG0ZehynCeNLklv8kIk5BLIsWYSddZAE+xe4xov1kgH5fIJQAoQNkRauFFjVNlHoAkA==}
+ '@module-federation/runtime@0.21.6':
+ resolution: {integrity: sha512-+caXwaQqwTNh+CQqyb4mZmXq7iEemRDrTZQGD+zyeH454JAYnJ3s/3oDFizdH6245pk+NiqDyOOkHzzFQorKhQ==}
+
'@module-federation/sdk@0.18.0':
resolution: {integrity: sha512-Lo/Feq73tO2unjmpRfyyoUkTVoejhItXOk/h5C+4cistnHbTV8XHrW/13fD5e1Iu60heVdAhhelJd6F898Ve9A==}
'@module-federation/sdk@0.21.4':
resolution: {integrity: sha512-tzvhOh/oAfX++6zCDDxuvioHY4Jurf8vcfoCbKFxusjmyKr32GPbwFDazUP+OPhYCc3dvaa9oWU6X/qpUBLfJw==}
+ '@module-federation/sdk@0.21.6':
+ resolution: {integrity: sha512-x6hARETb8iqHVhEsQBysuWpznNZViUh84qV2yE7AD+g7uIzHKiYdoWqj10posbo5XKf/147qgWDzKZoKoEP2dw==}
+
'@module-federation/third-party-dts-extractor@0.21.4':
resolution: {integrity: sha512-zKaKpABSbpZhKbTUGkN6VKqApa+PcawwXAv+L8co3vhErRna82svSIicgLy27n4QzAFJ09coB4WgnPQLjXdU+A==}
@@ -1935,6 +1948,9 @@ packages:
'@module-federation/webpack-bundler-runtime@0.21.4':
resolution: {integrity: sha512-dusmR3uPnQh9u9ChQo3M+GLOuGFthfvnh7WitF/a1eoeTfRmXqnMFsXtZCUK+f/uXf+64874Zj/bhAgbBcVHZA==}
+ '@module-federation/webpack-bundler-runtime@0.21.6':
+ resolution: {integrity: sha512-7zIp3LrcWbhGuFDTUMLJ2FJvcwjlddqhWGxi/MW3ur1a+HaO8v5tF2nl+vElKmbG1DFLU/52l3PElVcWf/YcsQ==}
+
'@napi-rs/wasm-runtime@0.2.12':
resolution: {integrity: sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==}
@@ -1944,6 +1960,9 @@ packages:
'@napi-rs/wasm-runtime@1.0.5':
resolution: {integrity: sha512-TBr9Cf9onSAS2LQ2+QHx6XcC6h9+RIzJgbqG3++9TUZSH204AwEy5jg3BTQ0VATsyoGj4ee49tN/y6rvaOOtcg==}
+ '@napi-rs/wasm-runtime@1.0.7':
+ resolution: {integrity: sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==}
+
'@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1':
resolution: {integrity: sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==}
@@ -2075,88 +2094,6 @@ packages:
'@nx/workspace@22.0.4':
resolution: {integrity: sha512-bbepXLA7YHOXLkA11JImXYp3XBjHIgqMrQ+fq6fGOmnCnq6aEl8JyE7OAByiWKKnZzPhO9z4tHHfRQlqpHwrPg==}
- '@parcel/watcher-android-arm64@2.5.1':
- resolution: {integrity: sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==}
- engines: {node: '>= 10.0.0'}
- cpu: [arm64]
- os: [android]
-
- '@parcel/watcher-darwin-arm64@2.5.1':
- resolution: {integrity: sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==}
- engines: {node: '>= 10.0.0'}
- cpu: [arm64]
- os: [darwin]
-
- '@parcel/watcher-darwin-x64@2.5.1':
- resolution: {integrity: sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==}
- engines: {node: '>= 10.0.0'}
- cpu: [x64]
- os: [darwin]
-
- '@parcel/watcher-freebsd-x64@2.5.1':
- resolution: {integrity: sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==}
- engines: {node: '>= 10.0.0'}
- cpu: [x64]
- os: [freebsd]
-
- '@parcel/watcher-linux-arm-glibc@2.5.1':
- resolution: {integrity: sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==}
- engines: {node: '>= 10.0.0'}
- cpu: [arm]
- os: [linux]
-
- '@parcel/watcher-linux-arm-musl@2.5.1':
- resolution: {integrity: sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==}
- engines: {node: '>= 10.0.0'}
- cpu: [arm]
- os: [linux]
-
- '@parcel/watcher-linux-arm64-glibc@2.5.1':
- resolution: {integrity: sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==}
- engines: {node: '>= 10.0.0'}
- cpu: [arm64]
- os: [linux]
-
- '@parcel/watcher-linux-arm64-musl@2.5.1':
- resolution: {integrity: sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==}
- engines: {node: '>= 10.0.0'}
- cpu: [arm64]
- os: [linux]
-
- '@parcel/watcher-linux-x64-glibc@2.5.1':
- resolution: {integrity: sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==}
- engines: {node: '>= 10.0.0'}
- cpu: [x64]
- os: [linux]
-
- '@parcel/watcher-linux-x64-musl@2.5.1':
- resolution: {integrity: sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==}
- engines: {node: '>= 10.0.0'}
- cpu: [x64]
- os: [linux]
-
- '@parcel/watcher-win32-arm64@2.5.1':
- resolution: {integrity: sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==}
- engines: {node: '>= 10.0.0'}
- cpu: [arm64]
- os: [win32]
-
- '@parcel/watcher-win32-ia32@2.5.1':
- resolution: {integrity: sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==}
- engines: {node: '>= 10.0.0'}
- cpu: [ia32]
- os: [win32]
-
- '@parcel/watcher-win32-x64@2.5.1':
- resolution: {integrity: sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==}
- engines: {node: '>= 10.0.0'}
- cpu: [x64]
- os: [win32]
-
- '@parcel/watcher@2.5.1':
- resolution: {integrity: sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==}
- engines: {node: '>= 10.0.0'}
-
'@phenomnomnominal/tsquery@5.0.1':
resolution: {integrity: sha512-3nVv+e2FQwsW8Aw6qTU6f+1rfcJ3hrcnvH/mu9i8YhxO+9sqbOfpL8m6PbET5+xKOlz/VSbp0RoYWYCtIsnmuA==}
peerDependencies:
@@ -2222,14 +2159,10 @@ packages:
'@react-native/babel-preset@0.82.1':
resolution: {integrity: sha512-Olj7p4XIsUWLKjlW46CqijaXt45PZT9Lbvv/Hz698FXTenPKk4k7sy6RGRGZPWO2TCBBfcb73dus1iNHRFSq7g==}
engines: {node: '>= 20.19.4'}
- peerDependencies:
- '@babel/core': '*'
'@react-native/codegen@0.82.1':
resolution: {integrity: sha512-ezXTN70ygVm9l2m0i+pAlct0RntoV4afftWMGUIeAWLgaca9qItQ54uOt32I/9dBJvzBibT33luIR/pBG0dQvg==}
engines: {node: '>= 20.19.4'}
- peerDependencies:
- '@babel/core': '*'
'@react-native/community-cli-plugin@0.82.1':
resolution: {integrity: sha512-H/eMdtOy9nEeX7YVeEG1N2vyCoifw3dr9OV8++xfUElNYV7LtSmJ6AqxZUUfxGJRDFPQvaU/8enmJlM/l11VxQ==}
@@ -2277,13 +2210,14 @@ packages:
'@react-native/metro-babel-transformer@0.82.1':
resolution: {integrity: sha512-kVQyYxYe1Da7cr7uGK9c44O6vTzM8YY3KW9CSLhhV1CGw7jmohU1HfLaUxDEmYfFZMc4Kj3JsIEbdUlaHMtprQ==}
engines: {node: '>= 20.19.4'}
- peerDependencies:
- '@babel/core': '*'
'@react-native/metro-config@0.82.1':
resolution: {integrity: sha512-mAY6R3xnDMlmDOrUCAtLTjIkli26DZt4LNVuAjDEdnlv5sHANOr5x4qpMn7ea1p9Q/tpfHLalPQUQeJ8CZH4gA==}
engines: {node: '>= 20.19.4'}
+ '@react-native/normalize-colors@0.74.89':
+ resolution: {integrity: sha512-qoMMXddVKVhZ8PA1AbUCk83trpd6N+1nF2A6k1i6LsQObyS92fELuk8kU/lQs6M7BsMHwqyLCpQJ1uFgNvIQXg==}
+
'@react-native/normalize-colors@0.82.1':
resolution: {integrity: sha512-CCfTR1uX+Z7zJTdt3DNX9LUXr2zWXsNOyLbwupW2wmRzrxlHRYfmLgTABzRL/cKhh0Ubuwn15o72MQChvCRaHw==}
@@ -2301,10 +2235,6 @@ packages:
'@types/react':
optional: true
- '@remix-run/router@1.23.0':
- resolution: {integrity: sha512-O3rHJzAQKamUz1fvE0Qaw0xSFqsA/yafi2iqeE0pvdFtCO1viYx8QL6f3Ln/aCCTLxs68SLf0KPM9eSeM8yBnA==}
- engines: {node: '>=14.0.0'}
-
'@rolldown/pluginutils@1.0.0-beta.19':
resolution: {integrity: sha512-3FL3mnMbPu0muGOCaKAhhFEYmqv9eTfPSJRJmANrCwtgK8VuxpsZDGK+m0LYAGoyO8+0j5uRe4PeyPDK1yA/hA==}
@@ -2492,68 +2422,120 @@ packages:
cpu: [x64]
os: [win32]
- '@rsbuild/core@1.5.11':
- resolution: {integrity: sha512-WlpeRlcfwh2Aasx4eJy6KWW9+bWNQo8EjZJE47iR5Rz+3l0znGzke4sNx4OYsDx8xV0gGkAzIbIMRc4ciLVq4Q==}
+ '@rsbuild/core@1.6.15':
+ resolution: {integrity: sha512-LvoOF53PL6zXgdzEhgnnP51S4FseDFH1bHrobK4EK6zZX/tN8qgf5tdlmN7h4OkMv/Qs1oUfvj0QcLWSstnnvA==}
engines: {node: '>=18.12.0'}
hasBin: true
- '@rsbuild/plugin-react@1.4.0':
- resolution: {integrity: sha512-YhhOUOonJBjnKpUf7E4iXKidldPWAGmYBRtDjQgcSmW4tbW0DasFpNCqLn5870Q2Ly6oCU06sLv+8G597I36+w==}
+ '@rsbuild/plugin-react@1.4.3':
+ resolution: {integrity: sha512-Uf9FkKk2TqYDbsypXHgjdivPmEoYFvBTHJT5fPmjCf0Sc3lR2BHtlc0WMdZTCKUJ5jTxREygMs9LbnehX98L8g==}
peerDependencies:
- '@rsbuild/core': 1.x
+ '@rsbuild/core': ^1.0.0 || ^2.0.0-0
'@rspack/binding-darwin-arm64@1.5.6':
resolution: {integrity: sha512-eRG8wbciBn09rdEGGijt3ZKYNgq1DGaiLaDb08HP1hZ/+SN4OdM9wxGo+abwkWl/Zv9ab/Ff8xc+Ry357UFvKA==}
cpu: [arm64]
os: [darwin]
+ '@rspack/binding-darwin-arm64@1.6.8':
+ resolution: {integrity: sha512-e8CTQtzaeGnf+BIzR7wRMUwKfIg0jd/sxMRc1Vd0bCMHBhSN9EsGoMuJJaKeRrSmy2nwMCNWHIG+TvT1CEKg+A==}
+ cpu: [arm64]
+ os: [darwin]
+
'@rspack/binding-darwin-x64@1.5.6':
resolution: {integrity: sha512-+0ulwI2XNu1ArNP2UucKbePr1GAJiwaNL6Us5Ke0Qx/DRRzPGuA6X+R2iT30HjJRSLe6G9T9DxnBOnnqJOlysw==}
cpu: [x64]
os: [darwin]
+ '@rspack/binding-darwin-x64@1.6.8':
+ resolution: {integrity: sha512-ku1XpTEPt6Za11zhpFWhfwrTQogcgi9RJrOUVC4FESiPO9aKyd4hJ+JiPgLY0MZOqsptK6vEAgOip+uDVXrCpg==}
+ cpu: [x64]
+ os: [darwin]
+
'@rspack/binding-linux-arm64-gnu@1.5.6':
resolution: {integrity: sha512-a7LxYdJzANj8xNjjlNJDCITQ9yAYGlc4Znz4DAYTX6vW0Q146rXCDif/UJLboYjQgrrbNbufpfRKEpPbYu2zGw==}
cpu: [arm64]
os: [linux]
+ '@rspack/binding-linux-arm64-gnu@1.6.8':
+ resolution: {integrity: sha512-fvZX6xZPvBT8qipSpvkKMX5M7yd2BSpZNCZXcefw6gA3uC7LI3gu+er0LrDXY1PtPzVuHTyDx+abwWpagV3PiQ==}
+ cpu: [arm64]
+ os: [linux]
+
'@rspack/binding-linux-arm64-musl@1.5.6':
resolution: {integrity: sha512-Bi2Z8HhWH1ZikH2Ettowzej75Iy219KZYIl2W1RVwLkuAqm/DBRx099YsMmh+6esI8e3UgBQtWcHLz5lXaB+6g==}
cpu: [arm64]
os: [linux]
+ '@rspack/binding-linux-arm64-musl@1.6.8':
+ resolution: {integrity: sha512-++XMKcMNrt59HcFBLnRaJcn70k3X0GwkAegZBVpel8xYIAgvoXT5+L8P1ExId/yTFxqedaz8DbcxQnNmMozviw==}
+ cpu: [arm64]
+ os: [linux]
+
'@rspack/binding-linux-x64-gnu@1.5.6':
resolution: {integrity: sha512-Ko4IbyaWA0B4e0EtXyfouVvkeIyh0bcgcESahir1tX/wRyXAV9aqOm0uRZ3eSIRaIvKxWQAmoi49/gFNgUMNJA==}
cpu: [x64]
os: [linux]
+ '@rspack/binding-linux-x64-gnu@1.6.8':
+ resolution: {integrity: sha512-tv3BWkTE1TndfX+DsE1rSTg8fBevCxujNZ3MlfZ22Wfy9x1FMXTJlWG8VIOXmaaJ1wUHzv8S7cE2YUUJ2LuiCg==}
+ cpu: [x64]
+ os: [linux]
+
'@rspack/binding-linux-x64-musl@1.5.6':
resolution: {integrity: sha512-Nyk2KoMiWruGe8GSGKlg0MU+EBWUiWJ+fV4/IEZw6tnAsod4YKIm4vD7f9jac0Mw07GIXggKQc0MaVhWTC8F7g==}
cpu: [x64]
os: [linux]
+ '@rspack/binding-linux-x64-musl@1.6.8':
+ resolution: {integrity: sha512-DCGgZ5/in1O3FjHWqXnDsncRy+48cMhfuUAAUyl0yDj1NpsZu9pP+xfGLvGcQTiYrVl7IH9Aojf1eShP/77WGA==}
+ cpu: [x64]
+ os: [linux]
+
'@rspack/binding-wasm32-wasi@1.5.6':
resolution: {integrity: sha512-Jj44lsdQWAaBZZwKk/x6UeQD/NFpH5uucHVXQUsC5BGF0PO3XbGSwhX7GSQ7+JuvFvEpIZDg6DuFXycB0Kv6iA==}
cpu: [wasm32]
+ '@rspack/binding-wasm32-wasi@1.6.8':
+ resolution: {integrity: sha512-VUwdhl/lI4m6o1OGCZ9JwtMjTV/yLY5VZTQdEPKb40JMTlmZ5MBlr5xk7ByaXXYHr6I+qnqEm73iMKQvg6iknw==}
+ cpu: [wasm32]
+
'@rspack/binding-win32-arm64-msvc@1.5.6':
resolution: {integrity: sha512-zkAe6JRAUqHGYFO64GyGDQHk6jg5s+odFkZ66Z1jun7AvHXB99iDN5mX8+kNjaECXjIl4A9dT5oO8Ogc04vLkQ==}
cpu: [arm64]
os: [win32]
+ '@rspack/binding-win32-arm64-msvc@1.6.8':
+ resolution: {integrity: sha512-23YX7zlOZlub+nPGDBUzktb4D5D6ETUAluKjXEeHIZ9m7fSlEYBnGL66YE+3t1DHXGd0OqsdwlvrNGcyo6EXDQ==}
+ cpu: [arm64]
+ os: [win32]
+
'@rspack/binding-win32-ia32-msvc@1.5.6':
resolution: {integrity: sha512-M7ghMl0eh/cD5oNCCd8OPsUdgCPEsI3BKJqrWZmKFIMbJci0mDTLivc2/NIMt7fgbfRBSeUKeIQKbVbey6yufg==}
cpu: [ia32]
os: [win32]
+ '@rspack/binding-win32-ia32-msvc@1.6.8':
+ resolution: {integrity: sha512-cFgRE3APxrY4AEdooVk2LtipwNNT/9mrnjdC5lVbsIsz+SxvGbZR231bxDJEqP15+RJOaD07FO1sIjINFqXMEg==}
+ cpu: [ia32]
+ os: [win32]
+
'@rspack/binding-win32-x64-msvc@1.5.6':
resolution: {integrity: sha512-i8HiI1gErP+vQ8DYz+oDbpNHPRZ8BSRl8tt3GA02FINujanKvy0xWyOQyOssxSio4IwWTlZQRQf0TEAT1UraUg==}
cpu: [x64]
os: [win32]
+ '@rspack/binding-win32-x64-msvc@1.6.8':
+ resolution: {integrity: sha512-cIuhVsZYd3o3Neo1JSAhJYw6BDvlxaBoqvgwRkG1rs0ExFmEmgYyG7ip9pFKnKNWph/tmW3rDYypmEfjs1is7g==}
+ cpu: [x64]
+ os: [win32]
+
'@rspack/binding@1.5.6':
resolution: {integrity: sha512-1I6VOr5pe4FeL6wUlrOmMUVXWcYTVJTpwBzprxGdiu9oYwltBTiTXd7F6x6NOId1CiPcmXZII+3aZr9X3JwoPA==}
+ '@rspack/binding@1.6.8':
+ resolution: {integrity: sha512-lUeL4mbwGo+nqRKqFDCm9vH2jv9FNMVt1X8jqayWRcOCPlj/2UVMEFgqjR7Pp2vlvnTKq//31KbDBJmDZq31RQ==}
+
'@rspack/core@1.5.6':
resolution: {integrity: sha512-lM+0m5P+YZdY1tMWX8qbEO3gywAS2lV7pUWFQRF2hqyF7mwWo9oN4erp99MIf5dq5A+vDrK3oPDNIuTWrWz5NA==}
engines: {node: '>=18.12.0'}
@@ -2563,12 +2545,24 @@ packages:
'@swc/helpers':
optional: true
+ '@rspack/core@1.6.8':
+ resolution: {integrity: sha512-FolcIAH5FW4J2FET+qwjd1kNeFbCkd0VLuIHO0thyolEjaPSxw5qxG67DA7BZGm6PVcoiSgPLks1DL6eZ8c+fA==}
+ engines: {node: '>=18.12.0'}
+ peerDependencies:
+ '@swc/helpers': '>=0.5.1'
+ peerDependenciesMeta:
+ '@swc/helpers':
+ optional: true
+
'@rspack/lite-tapable@1.0.1':
resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==}
engines: {node: '>=16.0.0'}
- '@rspack/plugin-react-refresh@1.5.1':
- resolution: {integrity: sha512-GT3KV1GSmIXO8dQg6taNf9AuZ8XHEs8cZqRn5mC2GT6DPCvUA/ZKezIGsHTyH+HMEbJnJ/T8yYeJnvnzuUcqAQ==}
+ '@rspack/lite-tapable@1.1.0':
+ resolution: {integrity: sha512-E2B0JhYFmVAwdDiG14+DW0Di4Ze4Jg10Pc4/lILUrd5DRCaklduz2OvJ5HYQ6G+hd+WTzqQb3QnDNfK4yvAFYw==}
+
+ '@rspack/plugin-react-refresh@1.6.0':
+ resolution: {integrity: sha512-OO53gkrte/Ty4iRXxxM6lkwPGxsSsupFKdrPFnjwFIYrPvFLjeolAl5cTx+FzO5hYygJiGnw7iEKTmD+ptxqDA==}
peerDependencies:
react-refresh: '>=0.10.0 <1.0.0'
webpack-hot-middleware: 2.x
@@ -2576,9 +2570,9 @@ packages:
webpack-hot-middleware:
optional: true
- '@rspress/core@2.0.0-beta.32':
- resolution: {integrity: sha512-gShXFSpULNEFjSz+reOWKauUlCBi74PR3R/ej6NpiLnIY5iz7FJuOYuDOajzK2rWxkDkFo3Jqh1tZn5jCrtpJw==}
- engines: {node: '>=18.0.0'}
+ '@rspress/core@2.0.0-rc.4':
+ resolution: {integrity: sha512-EHJjbc8yA/La6sJN3bjZus24KhSCdh5lEIVtjt7EBEnLteDN+wULzO1sFKj8agH3BXYE0XOuz2W1HbTTGfcGJQ==}
+ engines: {node: '>=20.9.0'}
hasBin: true
'@rspress/mdx-rs-darwin-arm64@0.6.6':
@@ -2633,28 +2627,24 @@ packages:
resolution: {integrity: sha512-NpNhTKBIlV3O6ADhoZkgHvBFvXMW2TYlIWmIT1ysJESUBqDpaN9H3Teve5fugjU2pQ2ORBZO6SQGKliMw/8m/Q==}
engines: {node: '>= 10'}
- '@rspress/plugin-llms@2.0.0-beta.32':
- resolution: {integrity: sha512-18QMlaeJ8K3xhf1a9d77l5KD2pUBMS2LsT+mxYLKCCe8pLi61rIPZbufq6xLdWaWpqyerLAcDmiDH8crSVd91w==}
- engines: {node: '>=18.0.0'}
+ '@rspress/plugin-llms@2.0.0-rc.4':
+ resolution: {integrity: sha512-PSG8JOO2EOqCeViif48puAeiP2pBhe//v0sC8dm9wGmQsrq8xbx2rH1aiQElZIwcoximqukzHavrU6O3qPW2NA==}
+ engines: {node: '>=20.9.0'}
peerDependencies:
- '@rspress/core': ^2.0.0-beta.32
+ '@rspress/core': ^2.0.0-rc.4
- '@rspress/plugin-sitemap@2.0.0-beta.32':
- resolution: {integrity: sha512-CjWmAzczBVo/hSaWlkrQPUM41TAd7Onay4nUduUMmYY9evJwkdPm51/406kIEryAwBu491AzGB5pjzuceV+xfw==}
- engines: {node: '>=18.0.0'}
+ '@rspress/plugin-sitemap@2.0.0-rc.4':
+ resolution: {integrity: sha512-sr900krxs9ZVfbV+b/ig7t8mAPaMOonWz2Qj9zXg4TgEgnh+LnNtHQpHYeFbiTF5WAozVxdu5lJ1E36oh231pQ==}
+ engines: {node: '>=20.9.0'}
peerDependencies:
- '@rspress/core': ^2.0.0-beta.32
+ '@rspress/core': ^2.0.0-rc.4
- '@rspress/runtime@2.0.0-beta.32':
- resolution: {integrity: sha512-gIxn8JxiZRtEfLsoJoJlfvpOxQBVctDMJfEHc0RMYcqz7YTmlosHdmJi9NICykTLeUP/PaubPuvGdBMPSymGtg==}
- engines: {node: '>=18.0.0'}
+ '@rspress/runtime@2.0.0-rc.4':
+ resolution: {integrity: sha512-BcNs6zpIXcWfhXGCDS525HDwSgLXO+S+q2Ty6sQPmyYJzOg+V9tHIlulKTOfuBCyEhTZeTAJofP4+rG4EZBUgw==}
+ engines: {node: '>=20.9.0'}
- '@rspress/shared@2.0.0-beta.32':
- resolution: {integrity: sha512-OhiiIWBtFe29MYh71i9HG0QlUyiAc/LyoGqHOCy1EJfX6hLljydc04WAifz0PcaCbTRh96yiWVPE3ieOqS35Uw==}
-
- '@rspress/theme-default@2.0.0-beta.32':
- resolution: {integrity: sha512-+8RDQJDzkRrSfbAB5ORxwVZoS55rp/pE2DkbLkZd4DlFcCdfGkkuNc6mR2n8SpmMB8T04odfVCkR06ihgv8RVw==}
- engines: {node: '>=18.0.0'}
+ '@rspress/shared@2.0.0-rc.4':
+ resolution: {integrity: sha512-46jTwxV8SRLMbe3euCEMWQudmdYE2Tf+EN/5l6EP10i6QICOXMIzUFFWfr0LOTr4aZCSTSJu7Tp6Xxml6JbheA==}
'@rtsao/scc@1.1.0':
resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==}
@@ -2662,26 +2652,26 @@ packages:
'@selderee/plugin-htmlparser2@0.11.0':
resolution: {integrity: sha512-P33hHGdldxGabLFjPPpaTxVolMrzrcegejx+0GxjrIb9Zv48D8yAIA/QTDR2dFl7Uz7urX8aX6+5bCZslr+gWQ==}
- '@shikijs/core@3.13.0':
- resolution: {integrity: sha512-3P8rGsg2Eh2qIHekwuQjzWhKI4jV97PhvYjYUzGqjvJfqdQPz+nMlfWahU24GZAyW1FxFI1sYjyhfh5CoLmIUA==}
+ '@shikijs/core@3.21.0':
+ resolution: {integrity: sha512-AXSQu/2n1UIQekY8euBJlvFYZIw0PHY63jUzGbrOma4wPxzznJXTXkri+QcHeBNaFxiiOljKxxJkVSoB3PjbyA==}
- '@shikijs/engine-javascript@3.13.0':
- resolution: {integrity: sha512-Ty7xv32XCp8u0eQt8rItpMs6rU9Ki6LJ1dQOW3V/56PKDcpvfHPnYFbsx5FFUP2Yim34m/UkazidamMNVR4vKg==}
+ '@shikijs/engine-javascript@3.21.0':
+ resolution: {integrity: sha512-ATwv86xlbmfD9n9gKRiwuPpWgPENAWCLwYCGz9ugTJlsO2kOzhOkvoyV/UD+tJ0uT7YRyD530x6ugNSffmvIiQ==}
- '@shikijs/engine-oniguruma@3.13.0':
- resolution: {integrity: sha512-O42rBGr4UDSlhT2ZFMxqM7QzIU+IcpoTMzb3W7AlziI1ZF7R8eS2M0yt5Ry35nnnTX/LTLXFPUjRFCIW+Operg==}
+ '@shikijs/engine-oniguruma@3.21.0':
+ resolution: {integrity: sha512-OYknTCct6qiwpQDqDdf3iedRdzj6hFlOPv5hMvI+hkWfCKs5mlJ4TXziBG9nyabLwGulrUjHiCq3xCspSzErYQ==}
- '@shikijs/langs@3.13.0':
- resolution: {integrity: sha512-672c3WAETDYHwrRP0yLy3W1QYB89Hbpj+pO4KhxK6FzIrDI2FoEXNiNCut6BQmEApYLfuYfpgOZaqbY+E9b8wQ==}
+ '@shikijs/langs@3.21.0':
+ resolution: {integrity: sha512-g6mn5m+Y6GBJ4wxmBYqalK9Sp0CFkUqfNzUy2pJglUginz6ZpWbaWjDB4fbQ/8SHzFjYbtU6Ddlp1pc+PPNDVA==}
- '@shikijs/rehype@3.13.0':
- resolution: {integrity: sha512-dxvB5gXEpiTI3beGwOPEwxFxQNmUWM4cwOWbvUmL6DnQJGl18/+cCjVHZK2OnasmU0v7SvM39Zh3iliWdwfBDA==}
+ '@shikijs/rehype@3.21.0':
+ resolution: {integrity: sha512-fTQvwsZL67QdosMFdTgQ5SNjW3nxaPplRy//312hqOctRbIwviTV0nAbhv3NfnztHXvFli2zLYNKsTz/f9tbpQ==}
- '@shikijs/themes@3.13.0':
- resolution: {integrity: sha512-Vxw1Nm1/Od8jyA7QuAenaV78BG2nSr3/gCGdBkLpfLscddCkzkL36Q5b67SrLLfvAJTOUzW39x4FHVCFriPVgg==}
+ '@shikijs/themes@3.21.0':
+ resolution: {integrity: sha512-BAE4cr9EDiZyYzwIHEk7JTBJ9CzlPuM4PchfcA5ao1dWXb25nv6hYsoDiBq2aZK9E3dlt3WB78uI96UESD+8Mw==}
- '@shikijs/types@3.13.0':
- resolution: {integrity: sha512-oM9P+NCFri/mmQ8LoFGVfVyemm5Hi27330zuOBp0annwJdKH1kOLndw3zCtAVDehPLg9fKqoEx3Ht/wNZxolfw==}
+ '@shikijs/types@3.21.0':
+ resolution: {integrity: sha512-zGrWOxZ0/+0ovPY7PvBU2gIS9tmhSUUt30jAcNV0Bq0gb2S98gwfjIs1vxlmH5zM7/4YxLamT6ChlqqAJmPPjA==}
'@shikijs/vscode-textmate@10.0.2':
resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==}
@@ -2710,9 +2700,6 @@ packages:
'@sinonjs/fake-timers@13.0.5':
resolution: {integrity: sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==}
- '@so-ric/colorspace@1.1.6':
- resolution: {integrity: sha512-/KiKkpHNOBgkFJwu9sh48LkHSMYGyuTcSFK/qMBdnOAlrRJzRSXAOFB5qwzaVQuDl8wAvHVMkaASQDReTahxuw==}
-
'@standard-schema/spec@1.1.0':
resolution: {integrity: sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==}
@@ -3010,9 +2997,6 @@ packages:
'@types/stack-utils@2.0.3':
resolution: {integrity: sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==}
- '@types/triple-beam@1.3.5':
- resolution: {integrity: sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw==}
-
'@types/unist@2.0.11':
resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==}
@@ -3149,8 +3133,8 @@ packages:
'@ungap/structured-clone@1.3.0':
resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
- '@unhead/react@2.0.17':
- resolution: {integrity: sha512-Mg8yDWUMf2eH8uZQ7vHvVaeV/HBqEzO/ThYf2VQKvfy1ZuiynFoGp8UNnC1sCA6Efbg4sPPX33BlCqdnr6vJcg==}
+ '@unhead/react@2.1.2':
+ resolution: {integrity: sha512-VNKa0JJZq5Jp28VuiOMfjAA7CTLHI0SdW/Hs1ZPq2PsNV/cgxGv8quFBGXWx4gfoHB52pejO929RKjIpYX5+iQ==}
peerDependencies:
react: '>=18.3.1'
@@ -3384,21 +3368,6 @@ packages:
'@webassemblyjs/wast-printer@1.14.1':
resolution: {integrity: sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==}
- '@wix-pilot/core@3.4.2':
- resolution: {integrity: sha512-O8V2NLfPEKI2IviJXG4g/vNbMfsBZNBhzAKFUOOaOR9TTDUJYlZUttqjhjP/fPnaDky0/hrfGES15sO0N7zEkw==}
- peerDependencies:
- expect: '*'
- peerDependenciesMeta:
- expect:
- optional: true
-
- '@wix-pilot/detox@1.0.13':
- resolution: {integrity: sha512-/34lM25AfmHNMLOeEIhfKVnx2YZyn5VHC/R4Bs1uXQ2B+Yg0JbxAfvfXA3xqxBsdYqrYImILPO3Ih0c5UzoNxw==}
- peerDependencies:
- '@wix-pilot/core': ^3.4.1
- detox: '>=20.33.0'
- expect: 29.x.x || 28.x.x || ^27.2.5
-
'@xtuc/ieee754@1.2.0':
resolution: {integrity: sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==}
@@ -3536,9 +3505,6 @@ packages:
appdirsjs@1.2.7:
resolution: {integrity: sha512-Quji6+8kLBC3NnBeo14nPDq0+2jUs5s3/xEye+udFHumHhRk4M7aAMXp/PBJqkKYGuuyR9M/6Dq7d2AViiGmhw==}
- arg@4.1.3:
- resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==}
-
argparse@1.0.10:
resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==}
@@ -3765,9 +3731,6 @@ packages:
bl@4.1.0:
resolution: {integrity: sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==}
- bluebird@3.7.2:
- resolution: {integrity: sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==}
-
body-parser@1.20.3:
resolution: {integrity: sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==}
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
@@ -3788,9 +3751,6 @@ packages:
resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
engines: {node: '>=8'}
- browser-process-hrtime@1.0.0:
- resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==}
-
browserslist@4.25.0:
resolution: {integrity: sha512-PJ8gYKeS5e/whHBh8xrwYK+dAvEj7JXtz6uTucnMRB8OiGTsKccFekoRrjajPBHV8oOY+2tI4uxeceSimKwMFA==}
engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
@@ -3809,9 +3769,6 @@ packages:
engines: {node: '>= 0.4.0'}
hasBin: true
- buffer-builder@0.2.0:
- resolution: {integrity: sha512-7VPMEPuYznPSoR21NE1zvd2Xna6c/CloiZCfcMXR1Jny6PjX0N4Nsa38zcBFo/FMK+BlA+FLKbJCQ0i2yxp+Xg==}
-
buffer-from@1.1.2:
resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==}
@@ -3824,37 +3781,6 @@ packages:
peerDependencies:
esbuild: '>=0.18'
- bunyamin@1.6.3:
- resolution: {integrity: sha512-m1hAijFhu8pFiidsVc0XEDic46uxPK+mKNLqkb5mluNx0nTolNzx/DjwMqHChQWCgfOLMjKYJJ2uPTQLE6t4Ng==}
- engines: {node: '>=14.18.2'}
- peerDependencies:
- '@types/bunyan': ^1.8.8
- bunyan: ^1.8.15 || ^2.0.0
- peerDependenciesMeta:
- '@types/bunyan':
- optional: true
- bunyan:
- optional: true
-
- bunyan-debug-stream@3.1.1:
- resolution: {integrity: sha512-LfMcz4yKM6s9BP5dfT63Prb5B2hAjReLAfQzLbNQF7qBHtn3P1v+/yn0SZ6UAr4PC3VZRX/QzK7HYkkY0ytokQ==}
- engines: {node: '>=0.12.0'}
- peerDependencies:
- bunyan: '*'
- peerDependenciesMeta:
- bunyan:
- optional: true
-
- bunyan@1.8.15:
- resolution: {integrity: sha512-0tECWShh6wUysgucJcBAoYegf3JJoZWibxdqhTm7OHPeT42qdjkZ29QCMcKwbgU1kiH+auSIasNRXMLWXafXig==}
- engines: {'0': node >=0.10.0}
- hasBin: true
-
- bunyan@2.0.5:
- resolution: {integrity: sha512-Jvl74TdxCN6rSP9W1I6+UOUtwslTDqsSFkDqZlFb/ilaSvQ+bZAnXT/GT97IZ5L+Vph0joPZPhxUyn6FLNmFAA==}
- engines: {'0': node >=0.10.0}
- hasBin: true
-
bytes@3.1.2:
resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==}
engines: {node: '>= 0.8'}
@@ -3863,9 +3789,6 @@ packages:
resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==}
engines: {node: '>=8'}
- caf@15.0.1:
- resolution: {integrity: sha512-Xp/IK6vMwujxWZXra7djdYzPdPnEQKa7Mudu2wZgDQ3TJry1I0TgtjEgwZHpoBcMp68j4fb0/FZ1SJyMEgJrXQ==}
-
call-bind-apply-helpers@1.0.2:
resolution: {integrity: sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==}
engines: {node: '>= 0.4'}
@@ -3995,6 +3918,10 @@ packages:
resolution: {integrity: sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==}
engines: {node: '>=0.8'}
+ clsx@2.1.1:
+ resolution: {integrity: sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==}
+ engines: {node: '>=6'}
+
co@4.6.0:
resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
@@ -4012,28 +3939,12 @@ packages:
resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
engines: {node: '>=7.0.0'}
- color-convert@3.1.3:
- resolution: {integrity: sha512-fasDH2ont2GqF5HpyO4w0+BcewlhHEZOFn9c1ckZdHpJ56Qb7MHhH/IcJZbBGgvdtwdwNbLvxiBEdg336iA9Sg==}
- engines: {node: '>=14.6'}
-
color-name@1.1.3:
resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
color-name@1.1.4:
resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
- color-name@2.1.0:
- resolution: {integrity: sha512-1bPaDNFm0axzE4MEAzKPuqKWeRaT43U/hyxKPBdqTfmPF+d6n7FSoTFxLVULUJOmiLp01KjhIPPH+HrXZJN4Rg==}
- engines: {node: '>=12.20'}
-
- color-string@2.1.4:
- resolution: {integrity: sha512-Bb6Cq8oq0IjDOe8wJmi4JeNn763Xs9cfrBcaylK1tPypWzyoy2G3l90v9k64kjphl/ZJjPIShFztenRomi8WTg==}
- engines: {node: '>=18'}
-
- color@5.0.3:
- resolution: {integrity: sha512-ezmVcLR3xAVp8kYOm4GS45ZLLgIE6SPAFoduLr6hTDajwb3KZ2F46gulK3XpcwRFb5KKGCSezCBAY4Dw4HsyXA==}
- engines: {node: '>=18'}
-
colord@2.9.3:
resolution: {integrity: sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==}
@@ -4043,9 +3954,6 @@ packages:
colorette@2.0.20:
resolution: {integrity: sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==}
- colorjs.io@0.5.2:
- resolution: {integrity: sha512-twmVoizEW7ylZSN32OgKdXRmo1qg+wT5/6C3xu5b9QsWzSFAhHLn2xd8ro0diCsKfCj1RdaTP/nrcW+vAoQPIw==}
-
columnify@1.6.0:
resolution: {integrity: sha512-lomjuFZKfM6MSAnV9aCZC9sc0qGbmZdfygNv+nCpqVkSKdCxCklLtd16O0EILGkImHw9ZpHkAnHaB+8Zxq5W6Q==}
engines: {node: '>=8.0.0'}
@@ -4094,6 +4002,9 @@ packages:
resolution: {integrity: sha512-k6WLKfunuqCYD3t6AsuPGvQWaKwuLLh2/xHNcX4qE+vIfDNXpSqnrhwA7O53R7WVQUnt8dVAIW+YHr7xTgOgGA==}
engines: {node: '>= 0.8.0'}
+ compute-scroll-into-view@3.1.1:
+ resolution: {integrity: sha512-VRhuHOLoKYOy4UbilLbUzbYg93XLjv2PncJC50EuTWPA3gaja1UjBsUP/D/9/juV3vQFr6XBEzn9KCAHdUvOHw==}
+
concat-map@0.0.1:
resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==}
@@ -4132,24 +4043,22 @@ packages:
resolution: {integrity: sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==}
engines: {node: '>= 0.6'}
+ cookie@1.1.1:
+ resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==}
+ engines: {node: '>=18'}
+
cookies@0.9.1:
resolution: {integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==}
engines: {node: '>= 0.8'}
- copy-anything@2.0.6:
- resolution: {integrity: sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==}
-
copy-to-clipboard@3.3.3:
resolution: {integrity: sha512-2KV8NhB5JqC3ky0r9PMCAZKbUHSwtEo4CwCs0KXgruG43gX5PMqDEBbVU4OUzw2MuAWUfsuFmWvEKG5QRfSnJA==}
core-js-compat@3.43.0:
resolution: {integrity: sha512-2GML2ZsCc5LR7hZYz4AXmjQw8zuy2T//2QntwdnpuYI7jteT6GVYJL7F6C2C57R7gSYrcqVW3lAALefdbhBLDA==}
- core-js@3.45.1:
- resolution: {integrity: sha512-L4NPsJlCfZsPeXukyzHFlg/i7IIVwHSItR0wg0FLNqYClJ4MQYTYLbC7EkjKYRLZF2iof2MUgN0EGy7MdQFChg==}
-
- core-util-is@1.0.3:
- resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
+ core-js@3.47.0:
+ resolution: {integrity: sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==}
corser@2.0.1:
resolution: {integrity: sha512-utCYNzRSQIZNPIcGZdQc92UVJYAhtGAteCFg0yRaFm8f0P+CPtyGyHXJcGXnffjCybUCEx3FQ2G7U3/o9eIkVQ==}
@@ -4177,13 +4086,13 @@ packages:
typescript:
optional: true
- create-require@1.1.1:
- resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==}
-
cron-parser@4.9.0:
resolution: {integrity: sha512-p0SaNjrHOnQeR8/VnfGbmg9te2kfyYSQ7Sc/j/6DtPL3JQvKxmjO9TSjNFpujqV3vEYYBvNNvXSxzyksBWAx1Q==}
engines: {node: '>=12.0.0'}
+ cross-fetch@3.2.0:
+ resolution: {integrity: sha512-Q+xVJLoGOeIMXZmbUK4HYk+69cQH6LudR0Vu/pRm2YlU/hDV9CiS0gKUMaWY5f2NeUH9C1nV3bsTlCo0FsTV1Q==}
+
cross-spawn@7.0.6:
resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
engines: {node: '>= 8'}
@@ -4194,6 +4103,9 @@ packages:
peerDependencies:
postcss: ^8.0.9
+ css-in-js-utils@3.1.0:
+ resolution: {integrity: sha512-fJAcud6B3rRu+KHYk+Bwf+WFL2MDCJJ1XG9x137tJQ0xYxor7XziQtuGFbWNdqrvF4Tk26O3H73nfVqXt/fW1A==}
+
css-select@4.3.0:
resolution: {integrity: sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==}
@@ -4309,10 +4221,6 @@ packages:
resolution: {integrity: sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==}
engines: {node: '>=0.10.0'}
- decamelize@4.0.0:
- resolution: {integrity: sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==}
- engines: {node: '>=10'}
-
decimal.js@10.5.0:
resolution: {integrity: sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw==}
@@ -4379,11 +4287,6 @@ packages:
resolution: {integrity: sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==}
engines: {node: '>= 0.8', npm: 1.2.8000 || >= 1.4.16}
- detect-libc@1.0.3:
- resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==}
- engines: {node: '>=0.10'}
- hasBin: true
-
detect-newline@3.1.0:
resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==}
engines: {node: '>=8'}
@@ -4393,23 +4296,9 @@ packages:
engines: {node: '>= 4.0.0'}
hasBin: true
- detox@20.46.0:
- resolution: {integrity: sha512-CXJk6/bewvi7KB6btVnmsp+43clIK3OCC2sJOnwwKaz7F2/mfD7GG0YUz/JdMyW57Bm9GF/XScvIsSd7albXWA==}
- engines: {node: '>=14'}
- hasBin: true
- peerDependencies:
- jest: 30.x.x || 29.x.x || 28.x.x || ^27.2.5
- peerDependenciesMeta:
- jest:
- optional: true
-
devlop@1.1.0:
resolution: {integrity: sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==}
- diff@4.0.2:
- resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==}
- engines: {node: '>=0.3.1'}
-
dir-glob@3.0.1:
resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==}
engines: {node: '>=8'}
@@ -4457,24 +4346,13 @@ packages:
resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==}
engines: {node: '>=12'}
- dtrace-provider@0.8.8:
- resolution: {integrity: sha512-b7Z7cNtHPhH9EJhNNbbeqTcXB8LGFFZhq1PGgEvpeHlzd36bhbdTWoE/Ba/YguqpBSlAPKnARWhVlhunCMwfxg==}
- engines: {node: '>=0.10'}
-
dunder-proto@1.0.1:
resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
engines: {node: '>= 0.4'}
- duplexer2@0.1.4:
- resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==}
-
eastasianwidth@0.2.0:
resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==}
- easy-stack@1.0.1:
- resolution: {integrity: sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w==}
- engines: {node: '>=6.0.0'}
-
ee-first@1.1.1:
resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==}
@@ -4503,9 +4381,6 @@ packages:
resolution: {integrity: sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==}
engines: {node: '>= 4'}
- enabled@2.0.0:
- resolution: {integrity: sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ==}
-
encodeurl@1.0.2:
resolution: {integrity: sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==}
engines: {node: '>= 0.8'}
@@ -4548,10 +4423,6 @@ packages:
engines: {node: '>=4'}
hasBin: true
- errno@0.1.8:
- resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==}
- hasBin: true
-
error-ex@1.3.2:
resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
@@ -4834,10 +4705,6 @@ packages:
resolution: {integrity: sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==}
engines: {node: '>= 0.6'}
- event-pubsub@4.3.0:
- resolution: {integrity: sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ==}
- engines: {node: '>=4.0.0'}
-
event-target-shim@5.0.1:
resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==}
engines: {node: '>=6'}
@@ -4857,10 +4724,6 @@ packages:
resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==}
engines: {node: '>=10'}
- exeunt@1.1.0:
- resolution: {integrity: sha512-dd++Yn/0Fp+gtJ04YHov7MeAii+LFivJc6KqnJNfplzLVUkUDrfKoQDTLlCgzcW15vY5hKlHasWeIsQJ8agHsw==}
- engines: {node: '>=0.10'}
-
exit-x@0.2.2:
resolution: {integrity: sha512-+I6B/IkJc1o/2tiURyz/ivu/O0nKNEArIUB5O7zBrlDVJr22SCLH3xTeEry428LvFhRzIA1g8izguxJ/gbNcVQ==}
engines: {node: '>= 0.8.0'}
@@ -4922,6 +4785,12 @@ packages:
fb-watchman@2.0.2:
resolution: {integrity: sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==}
+ fbjs-css-vars@1.0.2:
+ resolution: {integrity: sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==}
+
+ fbjs@3.0.5:
+ resolution: {integrity: sha512-ztsSx77JBtkuMrEypfhgc3cI0+0h+svqeie7xHbh1k/IKdcydnvadp/mUaGgjAOXQmQSxsqgaRhS3q9fy+1kxg==}
+
fdir@6.5.0:
resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==}
engines: {node: '>=12.0.0'}
@@ -4931,9 +4800,6 @@ packages:
picomatch:
optional: true
- fecha@4.2.3:
- resolution: {integrity: sha512-OP2IUU6HeYKJi3i0z4A19kHMQoLVs4Hc+DPqqxI2h/DPZHTm/vjsfC6P0b4jCMy14XizLBqvndQ+UilD7707Jw==}
-
fflate@0.8.2:
resolution: {integrity: sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==}
@@ -5007,15 +4873,12 @@ packages:
flatted@3.3.3:
resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==}
- flexsearch@0.7.43:
- resolution: {integrity: sha512-c5o/+Um8aqCSOXGcZoqZOm+NqtVwNsvVpWv6lfmSclU954O3wvQKxxK8zj74fPaSJbXpSLTs4PRhh+wnoCXnKg==}
+ flexsearch@0.8.212:
+ resolution: {integrity: sha512-wSyJr1GUWoOOIISRu+X2IXiOcVfg9qqBRyCPRUdLMIGJqPzMo+jMRlvE83t14v1j0dRMEaBbER/adQjp6Du2pw==}
flow-enums-runtime@0.0.6:
resolution: {integrity: sha512-3PYnM29RFXwvAN6Pc/scUfkI7RwhQ/xqyLUyPNlXUp9S40zI8nup9tUSrTLSVnWGBN38FNiGWbwZOB6uR4OGdw==}
- fn.name@1.1.0:
- resolution: {integrity: sha512-GRnmB5gPyJpAhTQdSZTSp9uaPSvl09KoYcMQtsB9rQoOmzs9dH6ffeccH+Z+cv6P68Hu5bC6JjRh4Ah/mHSNRw==}
-
follow-redirects@1.15.9:
resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
engines: {node: '>=4.0'}
@@ -5062,10 +4925,6 @@ packages:
resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==}
engines: {node: '>=12'}
- fs-extra@11.3.2:
- resolution: {integrity: sha512-Xr9F6z6up6Ws+NjzMCZc6WXg2YFRlrLP9NQDO3VQrWrfiojdhS56TzueT88ze0uBdCTwEIhQ3ptnmKeWGFAe0A==}
- engines: {node: '>=14.14'}
-
fs-extra@8.1.0:
resolution: {integrity: sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==}
engines: {node: '>=6 <7 || >=8'}
@@ -5077,6 +4936,11 @@ packages:
fs.realpath@1.0.0:
resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==}
+ 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}
@@ -5092,10 +4956,6 @@ packages:
functions-have-names@1.2.3:
resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
- funpermaproxy@1.1.0:
- resolution: {integrity: sha512-2Sp1hWuO8m5fqeFDusyhKqYPT+7rGLw34N3qonDcdRP8+n7M7Gl/yKp/q7oCxnnJ6pWCectOmLFJpsMU/++KrQ==}
- engines: {node: '>=8.3.0'}
-
generic-names@4.0.0:
resolution: {integrity: sha512-ySFolZQfw9FoDb3ed9d80Cm9f0+r7qj+HJkWjeD9RBfpxEVTlVhol+gvaQB/78WbwYfbnNh8nWHHBSlg072y6A==}
@@ -5149,10 +5009,6 @@ packages:
resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==}
hasBin: true
- glob@6.0.4:
- resolution: {integrity: sha512-MKZeRNyYZAVVVG1oZeLaWie1uweH40m9AZwIwxyPbTSX4hHrVYSzLg0Ro5Z5R7XKkIX+Cc6oD1rqeDJnwsB8/A==}
- deprecated: Glob versions prior to v9 are no longer supported
-
glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
deprecated: Glob versions prior to v9 are no longer supported
@@ -5291,8 +5147,8 @@ packages:
resolution: {integrity: sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==}
engines: {node: '>=0.10.0'}
- hookable@5.5.3:
- resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==}
+ hookable@6.0.1:
+ resolution: {integrity: sha512-uKGyY8BuzN/a5gvzvA+3FVWo0+wUjgtfSdnmjtrOVwQCZPHpHDH2WRO3VZSOeluYrHoDCiXFffZXs8Dj1ULWtw==}
html-encoding-sniffer@3.0.0:
resolution: {integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==}
@@ -5355,6 +5211,9 @@ packages:
resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==}
engines: {node: '>=10.17.0'}
+ hyphenate-style-name@1.1.0:
+ resolution: {integrity: sha512-WDC/ui2VVRrz3jOVi+XtjqkDjiVjTtFaAGiW37k6b+ohyQ5wYDOGkvCZa8+H0nx3gyvv0+BST9xuOgIyGQ00gw==}
+
iconv-lite@0.4.24:
resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
engines: {node: '>=0.10.0'}
@@ -5387,22 +5246,11 @@ packages:
resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==}
engines: {node: '>= 4'}
- image-size@0.5.5:
- resolution: {integrity: sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==}
- engines: {node: '>=0.10.0'}
- hasBin: true
-
image-size@1.2.1:
resolution: {integrity: sha512-rH+46sQJ2dlwfjfhCyNx5thzrv+dtmBIhPHk0zgRUukHzZ/kRueTJXoYYsclBaKcSMBWuGbOFXtioLpzTb5euw==}
engines: {node: '>=16.x'}
hasBin: true
- immer@10.1.1:
- resolution: {integrity: sha512-s2MPrmjovJcoMaHtx6K11Ra7oD05NT97w1IC5zpMkT6Atjr7H8LjaDd81iIxUYpMKSRRNMJE703M1Fhr/TctHw==}
-
- immutable@5.1.3:
- resolution: {integrity: sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg==}
-
import-cwd@3.0.0:
resolution: {integrity: sha512-4pnzH16plW+hgvRECbDWpQl3cqtvSofHWh44met7ESfZ8UZOWWddm8hEyDTqREJ9RbYHY8gi8DqmaelApoOGMg==}
engines: {node: '>=8'}
@@ -5437,6 +5285,9 @@ packages:
inline-style-parser@0.2.4:
resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==}
+ inline-style-prefixer@7.0.1:
+ resolution: {integrity: sha512-lhYo5qNTQp3EvSSp3sRvXMbVQTLrvGV6DycRMJ5dm2BLMiJ30wpXKdDdgX+GmJZ5uQMucwRKHamXSst3Sj/Giw==}
+
internal-slot@1.1.0:
resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==}
engines: {node: '>= 0.4'}
@@ -5563,10 +5414,6 @@ packages:
resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==}
engines: {node: '>=0.12.0'}
- is-plain-obj@2.1.0:
- resolution: {integrity: sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==}
- engines: {node: '>=8'}
-
is-plain-obj@4.1.0:
resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==}
engines: {node: '>=12'}
@@ -5629,9 +5476,6 @@ packages:
resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==}
engines: {node: '>= 0.4'}
- is-what@3.14.1:
- resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==}
-
is-windows@1.0.2:
resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==}
engines: {node: '>=0.10.0'}
@@ -5644,9 +5488,6 @@ packages:
resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
engines: {node: '>=8'}
- isarray@1.0.0:
- resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==}
-
isarray@2.0.5:
resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==}
@@ -5739,27 +5580,6 @@ packages:
resolution: {integrity: sha512-lpWlJlM7bCUf1mfmuqTA8+j2lNURW9eNafOy99knBM01i5CQeY5UH1vZjgT9071nDJac1M4XsbyI44oNOdhlDQ==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- jest-environment-emit@1.2.0:
- resolution: {integrity: sha512-dSFBrRuIiWbHK2LSUA6CutXpMcNGjjuhvxFLF+TVz5tYFAAH0eesrZgrQ3UtOptajDYNt/fIGRqtlHqGq/bLbA==}
- engines: {node: '>=16.14.0'}
- peerDependencies:
- '@jest/environment': '>=27.2.5'
- '@jest/types': '>=27.2.5'
- jest: '>=27.2.5'
- jest-environment-jsdom: '>=27.2.5'
- jest-environment-node: '>=27.2.5'
- peerDependenciesMeta:
- '@jest/environment':
- optional: true
- '@jest/types':
- optional: true
- jest:
- optional: true
- jest-environment-jsdom:
- optional: true
- jest-environment-node:
- optional: true
-
jest-environment-node@29.7.0:
resolution: {integrity: sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
@@ -5887,8 +5707,8 @@ packages:
resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==}
hasBin: true
- jiti@2.6.0:
- resolution: {integrity: sha512-VXe6RjJkBPj0ohtqaO8vSWP3ZhAKo66fKrFNCll4BTcwljPLz03pCbaNKfzGP5MbrCYcbJ7v0nOYYwUzTEIdXQ==}
+ jiti@2.6.1:
+ resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==}
hasBin: true
joi@17.13.3:
@@ -5898,14 +5718,6 @@ packages:
resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==}
engines: {node: '>=10'}
- js-message@1.0.7:
- resolution: {integrity: sha512-efJLHhLjIyKRewNS9EGZ4UpI8NguuL6fKkhRxVuMmrGV2xN/0APGdQYwLFky5w9naebSZ0OwAGp0G6/2Cg90rA==}
- engines: {node: '>=0.6.0'}
-
- js-queue@2.0.2:
- resolution: {integrity: sha512-pbKLsbCfi7kriM3s1J4DDCo7jQkI58zPLHi0heXPzPlj0hjUsm+FesPUbE0DSbIVIK503A36aUBoCN7eMFedkA==}
- engines: {node: '>=1.0.0'}
-
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
@@ -5945,10 +5757,6 @@ packages:
json-buffer@3.0.1:
resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
- json-cycle@1.5.0:
- resolution: {integrity: sha512-GOehvd5PO2FeZ5T4c+RxobeT5a1PiGpF4u9/3+UvrMU4bhnVqzJY7hm39wg8PDCqkU91fWGH8qjWR4bn+wgq9w==}
- engines: {node: '>= 4'}
-
json-parse-even-better-errors@2.3.1:
resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==}
@@ -6010,9 +5818,6 @@ packages:
resolution: {integrity: sha512-MeuwbCoN1daWS32/Ni5qkzmrOtQO2qrnfdxDHjrm6s4b59yG4nexAJ0pTEFyzjLp0pBVO80CZp0vW8Ze30Ebow==}
engines: {node: '>= 18'}
- kuler@2.0.0:
- resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==}
-
language-subtag-registry@0.3.23:
resolution: {integrity: sha512-0K65Lea881pHotoGEa5gDlMxt3pctLi2RplBb7Ezh4rRdLEOtgi7n4EwK9lamnUCkKBqaeKRVebTq6BAxSkpXQ==}
@@ -6026,11 +5831,6 @@ packages:
leac@0.6.0:
resolution: {integrity: sha512-y+SqErxb8h7nE/fiEX07jsbuhrpO9lL8eca7/Y1nuWV2moNlXhyd59iDGcRf6moVyDMbmTNzL40SUyrFU/yDpg==}
- less@4.1.3:
- resolution: {integrity: sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==}
- engines: {node: '>=6'}
- hasBin: true
-
leven@3.1.0:
resolution: {integrity: sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==}
engines: {node: '>=6'}
@@ -6042,77 +5842,13 @@ packages:
lighthouse-logger@1.4.2:
resolution: {integrity: sha512-gPWxznF6TKmUHrOQjlVo2UbaL2EJ71mb2CCeRs/2qBpi4L/g4LUVc9+3lKQ6DTUZwJswfM7ainGrLO1+fOqa2g==}
- lightningcss-darwin-arm64@1.27.0:
- resolution: {integrity: sha512-Gl/lqIXY+d+ySmMbgDf0pgaWSqrWYxVHoc88q+Vhf2YNzZ8DwoRzGt5NZDVqqIW5ScpSnmmjcgXP87Dn2ylSSQ==}
- engines: {node: '>= 12.0.0'}
- cpu: [arm64]
- os: [darwin]
+ lilconfig@2.1.0:
+ resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
+ engines: {node: '>=10'}
- lightningcss-darwin-x64@1.27.0:
- resolution: {integrity: sha512-0+mZa54IlcNAoQS9E0+niovhyjjQWEMrwW0p2sSdLRhLDc8LMQ/b67z7+B5q4VmjYCMSfnFi3djAAQFIDuj/Tg==}
- engines: {node: '>= 12.0.0'}
- cpu: [x64]
- os: [darwin]
-
- lightningcss-freebsd-x64@1.27.0:
- resolution: {integrity: sha512-n1sEf85fePoU2aDN2PzYjoI8gbBqnmLGEhKq7q0DKLj0UTVmOTwDC7PtLcy/zFxzASTSBlVQYJUhwIStQMIpRA==}
- engines: {node: '>= 12.0.0'}
- cpu: [x64]
- os: [freebsd]
-
- lightningcss-linux-arm-gnueabihf@1.27.0:
- resolution: {integrity: sha512-MUMRmtdRkOkd5z3h986HOuNBD1c2lq2BSQA1Jg88d9I7bmPGx08bwGcnB75dvr17CwxjxD6XPi3Qh8ArmKFqCA==}
- engines: {node: '>= 12.0.0'}
- cpu: [arm]
- os: [linux]
-
- lightningcss-linux-arm64-gnu@1.27.0:
- resolution: {integrity: sha512-cPsxo1QEWq2sfKkSq2Bq5feQDHdUEwgtA9KaB27J5AX22+l4l0ptgjMZZtYtUnteBofjee+0oW1wQ1guv04a7A==}
- engines: {node: '>= 12.0.0'}
- cpu: [arm64]
- os: [linux]
-
- lightningcss-linux-arm64-musl@1.27.0:
- resolution: {integrity: sha512-rCGBm2ax7kQ9pBSeITfCW9XSVF69VX+fm5DIpvDZQl4NnQoMQyRwhZQm9pd59m8leZ1IesRqWk2v/DntMo26lg==}
- engines: {node: '>= 12.0.0'}
- cpu: [arm64]
- os: [linux]
-
- lightningcss-linux-x64-gnu@1.27.0:
- resolution: {integrity: sha512-Dk/jovSI7qqhJDiUibvaikNKI2x6kWPN79AQiD/E/KeQWMjdGe9kw51RAgoWFDi0coP4jinaH14Nrt/J8z3U4A==}
- engines: {node: '>= 12.0.0'}
- cpu: [x64]
- os: [linux]
-
- lightningcss-linux-x64-musl@1.27.0:
- resolution: {integrity: sha512-QKjTxXm8A9s6v9Tg3Fk0gscCQA1t/HMoF7Woy1u68wCk5kS4fR+q3vXa1p3++REW784cRAtkYKrPy6JKibrEZA==}
- engines: {node: '>= 12.0.0'}
- cpu: [x64]
- os: [linux]
-
- lightningcss-win32-arm64-msvc@1.27.0:
- resolution: {integrity: sha512-/wXegPS1hnhkeG4OXQKEMQeJd48RDC3qdh+OA8pCuOPCyvnm/yEayrJdJVqzBsqpy1aJklRCVxscpFur80o6iQ==}
- engines: {node: '>= 12.0.0'}
- cpu: [arm64]
- os: [win32]
-
- lightningcss-win32-x64-msvc@1.27.0:
- resolution: {integrity: sha512-/OJLj94Zm/waZShL8nB5jsNj3CfNATLCTyFxZyouilfTmSoLDX7VlVAmhPHoZWVFp4vdmoiEbPEYC8HID3m6yw==}
- engines: {node: '>= 12.0.0'}
- cpu: [x64]
- os: [win32]
-
- lightningcss@1.27.0:
- resolution: {integrity: sha512-8f7aNmS1+etYSLHht0fQApPc2kNO8qGRutifN5rVIc6Xo6ABsEbqOr758UwI7ALVbTt4x1fllKt0PYgzD9S3yQ==}
- engines: {node: '>= 12.0.0'}
-
- lilconfig@2.1.0:
- resolution: {integrity: sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==}
- engines: {node: '>=10'}
-
- lilconfig@3.1.3:
- resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
- engines: {node: '>=14'}
+ 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==}
@@ -6149,8 +5885,8 @@ packages:
resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
engines: {node: '>=10'}
- lodash-es@4.17.21:
- resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==}
+ lodash-es@4.17.23:
+ resolution: {integrity: sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg==}
lodash.camelcase@4.3.0:
resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==}
@@ -6184,10 +5920,6 @@ packages:
resolution: {integrity: sha512-1somDdy9sChrr9/f4UlzhdaGfDR2c/SaD2a4T7qEkG4jTS57/B3qmnjLYePwQ8cqWnUHZI0iAKxMBpCZICiZ2g==}
engines: {node: '>=8.0'}
- logform@2.7.0:
- resolution: {integrity: sha512-TFYA4jnP7PVbmlBIfhlSe+WKxs9dklXMTEGcBCIvLhE/Tn3H6Gk1norupVW7m5Cnd4bLcr08AytbyV/xj7f/kQ==}
- engines: {node: '>= 12.0.0'}
-
logkitty@0.7.1:
resolution: {integrity: sha512-/3ER20CTTbahrCrpYfPn7Xavv9diBROZpoXGVZDWMw4b/X4uuUwAC0ki85tgsdMRONURyIJbcOvS94QsUBYPbQ==}
hasBin: true
@@ -6224,10 +5956,6 @@ packages:
magicast@0.3.5:
resolution: {integrity: sha512-L0WhttDl+2BOsybvEOLK7fW3UA0OQ0IQ2d6Zl2x/a6vVRs3bAY0ECOSHHeL5jD+SbOpOCUEi0y1DgHEn9Qn1AQ==}
- make-dir@2.1.0:
- resolution: {integrity: sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==}
- engines: {node: '>=6'}
-
make-dir@3.1.0:
resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==}
engines: {node: '>=8'}
@@ -6236,9 +5964,6 @@ packages:
resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==}
engines: {node: '>=10'}
- make-error@1.3.6:
- resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==}
-
makeerror@1.0.12:
resolution: {integrity: sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==}
@@ -6327,6 +6052,9 @@ packages:
memoize-one@5.2.1:
resolution: {integrity: sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==}
+ memoize-one@6.0.0:
+ resolution: {integrity: sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw==}
+
merge-descriptors@1.0.3:
resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==}
@@ -6577,10 +6305,6 @@ packages:
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'}
- mkdirp@0.5.6:
- resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
- hasBin: true
-
mkdirp@1.0.4:
resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
engines: {node: '>=10'}
@@ -6589,9 +6313,6 @@ packages:
mlly@1.8.0:
resolution: {integrity: sha512-l8D9ODSRWLe2KHJSifWGwBqpTZXIXTeo8mlKjY+E2HAakaTeNpqAyBZ8GSqLzHgw4XmHmC8whvpjJNMbFZN7/g==}
- moment@2.30.1:
- resolution: {integrity: sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==}
-
mrmime@2.0.1:
resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
engines: {node: '>=10'}
@@ -6602,22 +6323,9 @@ packages:
ms@2.1.3:
resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==}
- multi-sort-stream@1.0.4:
- resolution: {integrity: sha512-hAZ8JOEQFbgdLe8HWZbb7gdZg0/yAIHF00Qfo3kd0rXFv96nXe+/bPTrKHZ2QMHugGX4FiAyET1Lt+jiB+7Qlg==}
-
- multipipe@4.0.0:
- resolution: {integrity: sha512-jzcEAzFXoWwWwUbvHCNPwBlTz3WCWe/jPcXSmTfbo/VjRwRTfvLZ/bdvtiTdqCe8d4otCSsPCbhGYcX+eggpKQ==}
-
- mv@2.1.1:
- resolution: {integrity: sha512-at/ZndSy3xEGJ8i0ygALh8ru9qy7gWW1cmkaqBN29JmMlIvM//MEO9y1sk/avxuwnPcfhkejkLsuPxH81BrkSg==}
- engines: {node: '>=0.8.0'}
-
mz@2.7.0:
resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
- nan@2.23.1:
- resolution: {integrity: sha512-r7bBUGKzlqk8oPBDYxt6Z0aEdF1G1rwlMcLk8LCOMbOzf0mG+JUfUzG4fIMWwHWP0iyaLWEQZJmtB7nOHEm/qw==}
-
nano-spawn@1.0.2:
resolution: {integrity: sha512-21t+ozMQDAL/UGgQVBbZ/xXvNO10++ZPuTmKRO8k9V3AClVRht49ahtDjfY8l1q6nSHOrE5ASfthzH3ol6R/hg==}
engines: {node: '>=20.17'}
@@ -6635,15 +6343,6 @@ packages:
natural-compare@1.4.0:
resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
- ncp@2.0.0:
- resolution: {integrity: sha512-zIdGUrPRFTUELUvr3Gmc7KZ2Sw/h1PiVM0Af/oHB6zgnV1ikqSfRk+TOufi79aHYCW3NiOXmr1BP5nWbzojLaA==}
- hasBin: true
-
- needle@3.3.1:
- resolution: {integrity: sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==}
- engines: {node: '>= 4.4.x'}
- hasBin: true
-
negotiator@0.6.3:
resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
engines: {node: '>= 0.6'}
@@ -6666,9 +6365,6 @@ packages:
resolution: {integrity: sha512-AntnTbmKZvNYIsTVPPwv7dfZdAfo/6H/2ZlZACK66NAOQtIApxkB/6pf/c+s+ACW8vemGJzUCyVTssrzNUK6yQ==}
engines: {node: '>=16.0.0'}
- node-addon-api@7.1.1:
- resolution: {integrity: sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==}
-
node-fetch@2.7.0:
resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
engines: {node: 4.x || >=6.0.0}
@@ -6681,10 +6377,6 @@ packages:
node-int64@0.4.0:
resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
- node-ipc@9.2.1:
- resolution: {integrity: sha512-mJzaM6O3xHf9VT8BULvJSbdVbmHUKRNOH7zDDkCrA1/T+CVjq2WVIDfLt0azZRXpgArJtl3rtmEozrbXPZ9GaQ==}
- engines: {node: '>=8.0.0'}
-
node-machine-id@1.1.12:
resolution: {integrity: sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==}
@@ -6793,9 +6485,6 @@ packages:
once@1.4.0:
resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==}
- one-time@1.0.0:
- resolution: {integrity: sha512-5DXOiRKwuSEcQ/l0kGCF6Q3jcADFv5tSmRaJck/OqkVFcOzutB134KRSfF0xDrL39MNnqxbHBbUUcjZIhTgb2g==}
-
onetime@5.1.2:
resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==}
engines: {node: '>=6'}
@@ -6803,8 +6492,8 @@ packages:
oniguruma-parser@0.12.1:
resolution: {integrity: sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==}
- oniguruma-to-es@4.3.3:
- resolution: {integrity: sha512-rPiZhzC3wXwE59YQMRDodUwwT9FZ9nNBwQQfsd1wfdtlKEyCdRV0avrTcSZ5xlIvGRVPd/cx6ZN45ECmS39xvg==}
+ oniguruma-to-es@4.3.4:
+ resolution: {integrity: sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==}
open@6.4.0:
resolution: {integrity: sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==}
@@ -6892,10 +6581,6 @@ packages:
resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==}
engines: {node: '>=8'}
- parse-node-version@1.0.1:
- resolution: {integrity: sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==}
- engines: {node: '>= 0.10'}
-
parse-passwd@1.0.0:
resolution: {integrity: sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==}
engines: {node: '>=0.10.0'}
@@ -6965,10 +6650,6 @@ packages:
resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==}
engines: {node: '>=12'}
- pify@4.0.1:
- resolution: {integrity: sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==}
- engines: {node: '>=6'}
-
pify@5.0.0:
resolution: {integrity: sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==}
engines: {node: '>=10'}
@@ -6992,6 +6673,16 @@ packages:
resolution: {integrity: sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==}
engines: {node: '>=8'}
+ playwright-core@1.57.0:
+ resolution: {integrity: sha512-agTcKlMw/mjBWOnD6kFZttAAGHgi/Nw0CZ2o6JqWSbMlI219lAFLZZCyqByTsvVAJq5XA5H8cA6PrvBRpBWEuQ==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ playwright@1.57.0:
+ resolution: {integrity: sha512-ilYQj1s8sr2ppEJ2YVadYBN0Mb3mdo9J0wQ+UuDhzYqURwSoW4n1Xs5vs7ORwgDGmyEh33tRMeS8KhdkMoLXQw==}
+ engines: {node: '>=18'}
+ hasBin: true
+
pngjs@7.0.0:
resolution: {integrity: sha512-LKWqWJRhstyYo9pGvgor/ivk2w94eSjE3RGVuzLGlr3NmD8bf7RcYGze1mNdEHRP6TRP6rMuDHk5t44hnTRyow==}
engines: {node: '>=14.19.0'}
@@ -7256,20 +6947,16 @@ packages:
resolution: {integrity: sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==}
engines: {node: ^18.14.0 || ^20.0.0 || ^22.0.0 || >=24.0.0}
- process-nextick-args@2.0.1:
- resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
-
promise.series@0.2.0:
resolution: {integrity: sha512-VWQJyU2bcDTgZw8kpfBpB/ejZASlCrzwz5f2hjb/zlujOEB4oeiAhHygAWq8ubsX2GVkD4kCU5V2dwOTaCY5EQ==}
engines: {node: '>=0.12'}
+ promise@7.3.1:
+ resolution: {integrity: sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==}
+
promise@8.3.0:
resolution: {integrity: sha512-rZPNPKTOYVNEEKFaq1HqTgOwZD+4/YHS5ukLzQCypkj+OkYx7iv0mA91lJlpPPZ8vMau3IIGj5Qlwrx+8iiSmg==}
- promisify-child-process@4.1.2:
- resolution: {integrity: sha512-APnkIgmaHNJpkAn7k+CrJSi9WMuff5ctYFbD0CO2XIPkM8yO7d/ShouU2clywbpHV/DUsyc4bpJCsNgddNtx4g==}
- engines: {node: '>=8'}
-
prompts@2.4.2:
resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==}
engines: {node: '>= 6'}
@@ -7277,9 +6964,6 @@ packages:
prop-types@15.8.1:
resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
- proper-lockfile@3.2.0:
- resolution: {integrity: sha512-iMghHHXv2bsxl6NchhEaFck8tvX3F9cknEEh1SUpguUOBjN7PAAW9BLzmbc1g/mCD1gY3EE2EABBHPJfFdHFmA==}
-
property-information@6.5.0:
resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==}
@@ -7293,9 +6977,6 @@ packages:
proxy-from-env@1.1.0:
resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
- prr@1.0.1:
- resolution: {integrity: sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==}
-
psl@1.15.0:
resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==}
@@ -7340,10 +7021,10 @@ packages:
react-devtools-core@6.1.5:
resolution: {integrity: sha512-ePrwPfxAnB+7hgnEr8vpKxL9cmnp7F322t8oqcPshbIQQhDKgFDW4tjhF2wjVbdXF9O/nyuy3sQWd9JGpiLPvA==}
- react-dom@19.1.1:
- resolution: {integrity: sha512-Dlq/5LAZgF0Gaz6yiqZCf6VCcZs1ghAJyrsu84Q/GT0gV+mCxbfmKNoGRKBYMJ8IEdGPqu49YWXD02GCknEDkw==}
+ react-dom@19.2.3:
+ resolution: {integrity: sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==}
peerDependencies:
- react: ^19.1.1
+ react: ^19.2.3
react-is@16.13.1:
resolution: {integrity: sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==}
@@ -7354,6 +7035,12 @@ packages:
react-lazy-with-preload@2.2.1:
resolution: {integrity: sha512-ONSb8gizLE5jFpdHAclZ6EAAKuFX2JydnFXPPPjoUImZlLjGtKzyBS8SJgJq7CpLgsGKh9QCZdugJyEEOVC16Q==}
+ react-native-web@0.21.2:
+ resolution: {integrity: sha512-SO2t9/17zM4iEnFvlu2DA9jqNbzNhoUP+AItkoCOyFmDMOhUnBBznBDCYN92fGdfAkfQlWzPoez6+zLxFNsZEg==}
+ peerDependencies:
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
+
react-native@0.82.1:
resolution: {integrity: sha512-tFAqcU7Z4g49xf/KnyCEzI4nRTu1Opcx05Ov2helr8ZTg1z7AJR/3sr2rZ+AAVlAs2IXk+B0WOxXGmdD3+4czA==}
engines: {node: '>= 20.19.4'}
@@ -7365,6 +7052,12 @@ packages:
'@types/react':
optional: true
+ react-reconciler@0.33.0:
+ resolution: {integrity: sha512-KetWRytFv1epdpJc3J4G75I4WrplZE5jOL7Yq0p34+OVOKF4Se7WrdIdVC45XsSSmUTlht2FM/fM1FZb1mfQeA==}
+ engines: {node: '>=0.10.0'}
+ peerDependencies:
+ react: ^19.2.0
+
react-refresh@0.14.2:
resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==}
engines: {node: '>=0.10.0'}
@@ -7373,26 +7066,31 @@ packages:
resolution: {integrity: sha512-z6F7K9bV85EfseRCp2bzrpyQ0Gkw1uLoCel9XBVWPg/TjRj94SkJzUTGfOa4bs7iJvBWtQG0Wq7wnI0syw3EBQ==}
engines: {node: '>=0.10.0'}
- react-router-dom@6.30.1:
- resolution: {integrity: sha512-llKsgOkZdbPU1Eg3zK8lCn+sjD9wMRZZPuzmdWWX5SUs8OFkN5HnFVC0u5KMeMaC9aoancFI/KoLuKPqN+hxHw==}
- engines: {node: '>=14.0.0'}
+ react-refresh@0.18.0:
+ resolution: {integrity: sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==}
+ engines: {node: '>=0.10.0'}
+
+ react-router-dom@7.12.0:
+ resolution: {integrity: sha512-pfO9fiBcpEfX4Tx+iTYKDtPbrSLLCbwJ5EqP+SPYQu1VYCXdy79GSj0wttR0U4cikVdlImZuEZ/9ZNCgoaxwBA==}
+ engines: {node: '>=20.0.0'}
peerDependencies:
- react: '>=16.8'
- react-dom: '>=16.8'
+ react: '>=18'
+ react-dom: '>=18'
- react-router@6.30.1:
- resolution: {integrity: sha512-X1m21aEmxGXqENEPG3T6u0Th7g0aS4ZmoNynhbs+Cn+q+QGTLt+d5IQ2bHAXKzKcxGJjxACpVbnYQSCRcfxHlQ==}
- engines: {node: '>=14.0.0'}
+ react-router@7.12.0:
+ resolution: {integrity: sha512-kTPDYPFzDVGIIGNLS5VJykK0HfHLY5MF3b+xj0/tTyNYL1gF1qs7u67Z9jEhQk2sQ98SUaHxlG31g1JtF7IfVw==}
+ engines: {node: '>=20.0.0'}
peerDependencies:
- react: '>=16.8'
+ react: '>=18'
+ react-dom: '>=18'
+ peerDependenciesMeta:
+ react-dom:
+ optional: true
- react@19.1.1:
- resolution: {integrity: sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ==}
+ react@19.2.3:
+ resolution: {integrity: sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==}
engines: {node: '>=0.10.0'}
- 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'}
@@ -7535,10 +7233,6 @@ packages:
resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==}
engines: {node: '>=8'}
- retry@0.12.0:
- resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==}
- engines: {node: '>= 4'}
-
reusify@1.1.0:
resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==}
engines: {iojs: '>=1.0.0', node: '>=0.10.0'}
@@ -7546,11 +7240,6 @@ packages:
rfdc@1.4.1:
resolution: {integrity: sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==}
- rimraf@2.4.5:
- resolution: {integrity: sha512-J5xnxTyqaiw06JjMftq7L9ouA448dw/E7dKghkP9WpKNuwmARNNg+Gk8/u5ryb9N/Yo2+z3MCwuqFK/+qPOPfQ==}
- deprecated: Rimraf versions prior to v4 are no longer supported
- hasBin: true
-
rimraf@3.0.2:
resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==}
deprecated: Rimraf versions prior to v4 are no longer supported
@@ -7597,9 +7286,6 @@ packages:
run-parallel@1.2.0:
resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
- 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'}
@@ -7613,9 +7299,6 @@ packages:
safe-identifier@0.4.2:
resolution: {integrity: sha512-6pNbSMW6OhAi9j+N8V+U715yBQsaWJ7eyEUaOrawX+isg5ZxhUlV1NipNtgaKHmFGiABwt+ZF04Ii+3Xjkg+8w==}
- safe-json-stringify@1.2.0:
- resolution: {integrity: sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==}
-
safe-push-apply@1.0.0:
resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==}
engines: {node: '>= 0.4'}
@@ -7624,125 +7307,9 @@ packages:
resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==}
engines: {node: '>= 0.4'}
- safe-stable-stringify@2.5.0:
- resolution: {integrity: sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==}
- engines: {node: '>=10'}
-
safer-buffer@2.1.2:
resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
- sanitize-filename@1.6.3:
- resolution: {integrity: sha512-y/52Mcy7aw3gRm7IrcGDFx/bCk4AhRh2eI9luHOQM86nZsqwiRkkq2GekHXBBD+SmPidc8i2PqtYZl+pWJ8Oeg==}
-
- sass-embedded-android-arm64@1.89.2:
- resolution: {integrity: sha512-+pq7a7AUpItNyPu61sRlP6G2A8pSPpyazASb+8AK2pVlFayCSPAEgpwpCE9A2/Xj86xJZeMizzKUHxM2CBCUxA==}
- engines: {node: '>=14.0.0'}
- cpu: [arm64]
- os: [android]
-
- sass-embedded-android-arm@1.89.2:
- resolution: {integrity: sha512-oHAPTboBHRZlDBhyRB6dvDKh4KvFs+DZibDHXbkSI6dBZxMTT+Yb2ivocHnctVGucKTLQeT7+OM5DjWHyynL/A==}
- engines: {node: '>=14.0.0'}
- cpu: [arm]
- os: [android]
-
- sass-embedded-android-riscv64@1.89.2:
- resolution: {integrity: sha512-HfJJWp/S6XSYvlGAqNdakeEMPOdhBkj2s2lN6SHnON54rahKem+z9pUbCriUJfM65Z90lakdGuOfidY61R9TYg==}
- engines: {node: '>=14.0.0'}
- cpu: [riscv64]
- os: [android]
-
- sass-embedded-android-x64@1.89.2:
- resolution: {integrity: sha512-BGPzq53VH5z5HN8de6jfMqJjnRe1E6sfnCWFd4pK+CAiuM7iw5Fx6BQZu3ikfI1l2GY0y6pRXzsVLdp/j4EKEA==}
- engines: {node: '>=14.0.0'}
- cpu: [x64]
- os: [android]
-
- sass-embedded-darwin-arm64@1.89.2:
- resolution: {integrity: sha512-UCm3RL/tzMpG7DsubARsvGUNXC5pgfQvP+RRFJo9XPIi6elopY5B6H4m9dRYDpHA+scjVthdiDwkPYr9+S/KGw==}
- engines: {node: '>=14.0.0'}
- cpu: [arm64]
- os: [darwin]
-
- sass-embedded-darwin-x64@1.89.2:
- resolution: {integrity: sha512-D9WxtDY5VYtMApXRuhQK9VkPHB8R79NIIR6xxVlN2MIdEid/TZWi1MHNweieETXhWGrKhRKglwnHxxyKdJYMnA==}
- engines: {node: '>=14.0.0'}
- cpu: [x64]
- os: [darwin]
-
- sass-embedded-linux-arm64@1.89.2:
- resolution: {integrity: sha512-2N4WW5LLsbtrWUJ7iTpjvhajGIbmDR18ZzYRywHdMLpfdPApuHPMDF5CYzHbS+LLx2UAx7CFKBnj5LLjY6eFgQ==}
- engines: {node: '>=14.0.0'}
- cpu: [arm64]
- os: [linux]
-
- sass-embedded-linux-arm@1.89.2:
- resolution: {integrity: sha512-leP0t5U4r95dc90o8TCWfxNXwMAsQhpWxTkdtySDpngoqtTy3miMd7EYNYd1znI0FN1CBaUvbdCMbnbPwygDlA==}
- engines: {node: '>=14.0.0'}
- cpu: [arm]
- os: [linux]
-
- sass-embedded-linux-musl-arm64@1.89.2:
- resolution: {integrity: sha512-nTyuaBX6U1A/cG7WJh0pKD1gY8hbg1m2SnzsyoFG+exQ0lBX/lwTLHq3nyhF+0atv7YYhYKbmfz+sjPP8CZ9lw==}
- engines: {node: '>=14.0.0'}
- cpu: [arm64]
- os: [linux]
-
- sass-embedded-linux-musl-arm@1.89.2:
- resolution: {integrity: sha512-Z6gG2FiVEEdxYHRi2sS5VIYBmp17351bWtOCUZ/thBM66+e70yiN6Eyqjz80DjL8haRUegNQgy9ZJqsLAAmr9g==}
- engines: {node: '>=14.0.0'}
- cpu: [arm]
- os: [linux]
-
- sass-embedded-linux-musl-riscv64@1.89.2:
- resolution: {integrity: sha512-N6oul+qALO0SwGY8JW7H/Vs0oZIMrRMBM4GqX3AjM/6y8JsJRxkAwnfd0fDyK+aICMFarDqQonQNIx99gdTZqw==}
- engines: {node: '>=14.0.0'}
- cpu: [riscv64]
- os: [linux]
-
- sass-embedded-linux-musl-x64@1.89.2:
- resolution: {integrity: sha512-K+FmWcdj/uyP8GiG9foxOCPfb5OAZG0uSVq80DKgVSC0U44AdGjvAvVZkrgFEcZ6cCqlNC2JfYmslB5iqdL7tg==}
- engines: {node: '>=14.0.0'}
- cpu: [x64]
- os: [linux]
-
- sass-embedded-linux-riscv64@1.89.2:
- resolution: {integrity: sha512-g9nTbnD/3yhOaskeqeBQETbtfDQWRgsjHok6bn7DdAuwBsyrR3JlSFyqKc46pn9Xxd9SQQZU8AzM4IR+sY0A0w==}
- engines: {node: '>=14.0.0'}
- cpu: [riscv64]
- os: [linux]
-
- sass-embedded-linux-x64@1.89.2:
- resolution: {integrity: sha512-Ax7dKvzncyQzIl4r7012KCMBvJzOz4uwSNoyoM5IV6y5I1f5hEwI25+U4WfuTqdkv42taCMgpjZbh9ERr6JVMQ==}
- engines: {node: '>=14.0.0'}
- cpu: [x64]
- os: [linux]
-
- sass-embedded-win32-arm64@1.89.2:
- resolution: {integrity: sha512-j96iJni50ZUsfD6tRxDQE2QSYQ2WrfHxeiyAXf41Kw0V4w5KYR/Sf6rCZQLMTUOHnD16qTMVpQi20LQSqf4WGg==}
- engines: {node: '>=14.0.0'}
- cpu: [arm64]
- os: [win32]
-
- sass-embedded-win32-x64@1.89.2:
- resolution: {integrity: sha512-cS2j5ljdkQsb4PaORiClaVYynE9OAPZG/XjbOMxpQmjRIf7UroY4PEIH+Waf+y47PfXFX9SyxhYuw2NIKGbEng==}
- engines: {node: '>=14.0.0'}
- cpu: [x64]
- os: [win32]
-
- sass-embedded@1.89.2:
- resolution: {integrity: sha512-Ack2K8rc57kCFcYlf3HXpZEJFNUX8xd8DILldksREmYXQkRHI879yy8q4mRDJgrojkySMZqmmmW1NxrFxMsYaA==}
- engines: {node: '>=16.0.0'}
- hasBin: true
-
- sass@1.89.2:
- resolution: {integrity: sha512-xCmtksBKd/jdJ9Bt9p7nPKiuqrlBMBuuGkQlkhZjjQk3Ty48lv93k5Dq6OPkKt4XwxDJ7tvlfrTa1MPA9bf+QA==}
- engines: {node: '>=14.0.0'}
- hasBin: true
-
- sax@1.4.1:
- resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==}
-
saxes@6.0.0:
resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==}
engines: {node: '>=v12.22.7'}
@@ -7750,6 +7317,9 @@ packages:
scheduler@0.26.0:
resolution: {integrity: sha512-NlHwttCI/l5gCPR3D1nNXtWABUmBwvZpEQiD4IXSbIDq8BzLIK/7Ir5gTFSGZDUu37K5cMNp0hFtzO38sC7gWA==}
+ scheduler@0.27.0:
+ resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==}
+
schema-utils@3.3.0:
resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==}
engines: {node: '>= 10.13.0'}
@@ -7762,6 +7332,9 @@ packages:
resolution: {integrity: sha512-eflK8wEtyOE6+hsaRVPxvUKYCpRgzLqDTb8krvAsRIwOGlHoSgYLgBXoubGgLd2fT41/OUYdb48v4k4WWHQurA==}
engines: {node: '>= 10.13.0'}
+ scroll-into-view-if-needed@3.1.0:
+ resolution: {integrity: sha512-49oNpRjWRvnU8NyGVmUaYG4jtTkNonFZI86MmGRDqBphEK2EXT9gdEUoQPZhuBM8yWHxCWbobltqYO5M4XrUvQ==}
+
section-matter@1.0.0:
resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==}
engines: {node: '>=4'}
@@ -7772,10 +7345,6 @@ packages:
selderee@0.11.0:
resolution: {integrity: sha512-5TF+l7p4+OsnP8BCCvSyZiSPc4x4//p5uPwK8TCnVPJYRmU2aYKMpOXvw8zM5a5JvuuCGN1jmsMwuU2W02ukfA==}
- 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
@@ -7798,10 +7367,6 @@ packages:
resolution: {integrity: sha512-ghgmKt5o4Tly5yEG/UJp8qTd0AN7Xalw4XBtDEKP655B699qMEtra1WlXeE6WIvdEG481JvRxULKsInq/iNysw==}
engines: {node: '>=0.10.0'}
- serialize-error@8.1.0:
- resolution: {integrity: sha512-3NnuWfM6vBYoy5gZFvHiYsVbafvI9vZv/+jlIigFn4oP4zjNPK3LhcY0xSCgeb1a5L8jO71Mit9LlNoi2UfDDQ==}
- engines: {node: '>=10'}
-
serialize-javascript@6.0.2:
resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
@@ -7812,6 +7377,9 @@ packages:
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'}
@@ -7824,6 +7392,9 @@ packages:
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==}
+
setprototypeof@1.2.0:
resolution: {integrity: sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==}
@@ -7839,8 +7410,8 @@ packages:
resolution: {integrity: sha512-ObmnIF4hXNg1BqhnHmgbDETF8dLPCggZWBjkQfhZpbszZnYur5DUljTcCHii5LC3J5E0yeO/1LIMyH+UvHQgyw==}
engines: {node: '>= 0.4'}
- shiki@3.13.0:
- resolution: {integrity: sha512-aZW4l8Og16CokuCLf8CF8kq+KK2yOygapU5m3+hoGw0Mdosc6fPitjM+ujYarppj5ZIKGyPDPP1vqmQhr+5/0g==}
+ shiki@3.21.0:
+ resolution: {integrity: sha512-N65B/3bqL/TI2crrXr+4UivctrAGEjmsib5rPMMPpFp1xAx/w03v8WZ9RDDFYteXoEgY7qZ4HGgl5KBIu1153w==}
side-channel-list@1.0.0:
resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==}
@@ -7910,10 +7481,6 @@ packages:
resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
engines: {node: '>=0.10.0'}
- source-map@0.7.4:
- resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==}
- engines: {node: '>= 8'}
-
source-map@0.7.6:
resolution: {integrity: sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==}
engines: {node: '>= 12'}
@@ -7931,9 +7498,6 @@ packages:
resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==}
deprecated: 'Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility'
- stack-trace@0.0.10:
- resolution: {integrity: sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==}
-
stack-utils@2.0.6:
resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
engines: {node: '>=10'}
@@ -7963,12 +7527,6 @@ packages:
resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==}
engines: {node: '>= 0.4'}
- stream-chain@2.2.5:
- resolution: {integrity: sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==}
-
- stream-json@1.9.1:
- resolution: {integrity: sha512-uWkjJ+2Nt/LO9Z/JyKZbMusL8Dkh97uUBTv3AJQ74y07lVahLY4eEFsPsE97pxYBwr8nnjMAIch5eqI0gPShyw==}
-
streamroller@3.1.5:
resolution: {integrity: sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==}
engines: {node: '>=8.0'}
@@ -8014,9 +7572,6 @@ packages:
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==}
@@ -8076,10 +7631,8 @@ packages:
peerDependencies:
postcss: ^8.2.15
- stylus@0.64.0:
- resolution: {integrity: sha512-ZIdT8eUv8tegmqy1tTIdJv9We2DumkNZFdCF5mz/Kpq3OcTaxSuCAYZge6HKK2CmNC02G1eJig2RV7XTw5hQrA==}
- engines: {node: '>=16'}
- hasBin: true
+ styleq@0.1.3:
+ resolution: {integrity: sha512-3ZUifmCDCQanjeej1f6kyl/BeP/Vae5EYkQ9iJfUm/QwZvlgnZzyflqAsAWYURdtea8Vkvswu2GrC57h3qffcA==}
sucrase@3.35.0:
resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==}
@@ -8114,22 +7667,10 @@ packages:
symbol-tree@3.2.4:
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
- sync-child-process@1.0.2:
- resolution: {integrity: sha512-8lD+t2KrrScJ/7KXCSyfhT3/hRq78rC0wBFqNJXv3mZyn6hW2ypM05JmlSvtqRbeq6jqA94oHbxAr2vYsJ8vDA==}
- engines: {node: '>=16.0.0'}
-
- sync-message-port@1.1.3:
- resolution: {integrity: sha512-GTt8rSKje5FilG+wEdfCkOcLL7LWqpMlr2c3LRuKt/YXxcJ52aGSbGBAdI4L3aaqfrBt6y711El53ItyH1NWzg==}
- engines: {node: '>=16.0.0'}
-
synckit@0.11.11:
resolution: {integrity: sha512-MeQTA1r0litLUf0Rp/iisCaL8761lKAZHaimlbGK4j0HysC4PLfqygQj9srcs0m2RdtDYnF8UuYyKpbjHYp7Jw==}
engines: {node: ^14.18.0 || >=16.0.0}
- tapable@2.2.2:
- resolution: {integrity: sha512-Re10+NauLTMCudc7T5WLFLAwDhQ0JWdrMK+9B2M8zR5hRExKmsRDCBA7/aV/pNJFltmBFO5BAMlQFi/vq3nKOg==}
- engines: {node: '>=6'}
-
tapable@2.3.0:
resolution: {integrity: sha512-g9ljZiwki/LfxmQADO3dEY1CbpmXT5Hm2fJ+QaGKwSXUylMybePR7/67YW7jOrrvjEgL1Fmz5kzyAjWVWLlucg==}
engines: {node: '>=6'}
@@ -8138,9 +7679,6 @@ packages:
resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==}
engines: {node: '>=6'}
- telnet-client@1.2.8:
- resolution: {integrity: sha512-W+w4k3QAmULVNhBVT2Fei369kGZCh/TH25M7caJAXW+hLxwoQRuw0di3cX4l0S9fgH3Mvq7u+IFMoBDpEw/eIg==}
-
terser-webpack-plugin@5.3.14:
resolution: {integrity: sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==}
engines: {node: '>= 10.13.0'}
@@ -8170,9 +7708,6 @@ packages:
resolution: {integrity: sha512-pFYqmTw68LXVjeWJMST4+borgQP2AyMNbg1BpZh9LbyhUeNkeaPF9gzfPGUAnSMV3qPYdWUwDIjjCLiSDOl7vg==}
engines: {node: '>=18'}
- text-hex@1.0.0:
- resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==}
-
thenify-all@1.6.0:
resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==}
engines: {node: '>=0.8'}
@@ -8242,10 +7777,6 @@ packages:
resolution: {integrity: sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==}
engines: {node: '>=14'}
- trace-event-lib@1.4.1:
- resolution: {integrity: sha512-TOgFolKG8JFY+9d5EohGWMvwvteRafcyfPWWNIqcuD1W/FUvxWcy2MSCZ/beYHM63oYPHYHCd3tkbgCctHVP7w==}
- engines: {node: '>=12.0.0'}
-
tree-kill@1.2.2:
resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==}
hasBin: true
@@ -8253,16 +7784,9 @@ packages:
trim-lines@3.0.1:
resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==}
- triple-beam@1.4.1:
- resolution: {integrity: sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg==}
- engines: {node: '>= 14.0.0'}
-
trough@2.2.0:
resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==}
- truncate-utf8-bytes@1.0.2:
- resolution: {integrity: sha512-95Pu1QXQvruGEhv62XCMO3Mm90GscOCClvrIUwCM0PYOXK3kaF3l3sIHxx71ThJfcbM2O5Au6SO3AWCSEfW4mQ==}
-
ts-api-utils@2.1.0:
resolution: {integrity: sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==}
engines: {node: '>=18.12'}
@@ -8272,13 +7796,6 @@ packages:
ts-interface-checker@0.1.13:
resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==}
- ts-node@9.1.1:
- resolution: {integrity: sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==}
- engines: {node: '>=10.0.0'}
- hasBin: true
- peerDependencies:
- typescript: '>=2.7'
-
tsconfig-paths@3.15.0:
resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==}
@@ -8320,10 +7837,6 @@ packages:
resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==}
engines: {node: '>=4'}
- type-fest@0.20.2:
- resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==}
- engines: {node: '>=10'}
-
type-fest@0.21.3:
resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==}
engines: {node: '>=10'}
@@ -8368,6 +7881,10 @@ packages:
engines: {node: '>=14.17'}
hasBin: true
+ ua-parser-js@1.0.41:
+ resolution: {integrity: sha512-LbBDqdIC5s8iROCUjMbW1f5dJQTEFB1+KO9ogbvlb3nm9n4YHa5p4KTvFPWvh2Hs8gZMBuiB1/8+pdfe/tDPug==}
+ hasBin: true
+
ufo@1.6.1:
resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==}
@@ -8378,8 +7895,8 @@ packages:
undici-types@6.21.0:
resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==}
- unhead@2.0.17:
- resolution: {integrity: sha512-xX3PCtxaE80khRZobyWCVxeFF88/Tg9eJDcJWY9us727nsTC7C449B8BUfVBmiF2+3LjPcmqeoB2iuMs0U4oJQ==}
+ unhead@2.1.2:
+ resolution: {integrity: sha512-vSihrxyb+zsEUfEbraZBCjdE0p/WSoc2NGDrpwwSNAwuPxhYK1nH3eegf02IENLpn1sUhL8IoO84JWmRQ6tILA==}
unicode-canonical-property-names-ecmascript@2.0.1:
resolution: {integrity: sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==}
@@ -8474,9 +7991,6 @@ packages:
peerDependencies:
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
- utf8-byte-length@1.0.5:
- resolution: {integrity: sha512-Xn0w3MtiQ6zoz2vFyUVruaCL53O/DwUvkEeOvj+uulMm0BkUGYWmBYVyElqZaSLhY6ZD0ulfU3aBra2aVT4xfA==}
-
util-deprecate@1.0.2:
resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==}
@@ -8488,9 +8002,6 @@ packages:
resolution: {integrity: sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==}
engines: {node: '>=10.12.0'}
- varint@6.0.0:
- resolution: {integrity: sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==}
-
vary@1.1.2:
resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==}
engines: {node: '>= 0.8'}
@@ -8670,14 +8181,6 @@ packages:
engines: {node: '>=8'}
hasBin: true
- winston-transport@4.9.0:
- resolution: {integrity: sha512-8drMJ4rkgaPo1Me4zD/3WLfI/zPdA9o2IipKODunnGDcuqbHwjsbB79ylv04LCGGzU0xQ6vTznOMpQGaLhhm6A==}
- engines: {node: '>= 12.0.0'}
-
- winston@3.18.3:
- resolution: {integrity: sha512-NoBZauFNNWENgsnC9YpgyYwOVrl2m58PpQ8lNHjV3kosGs7KJ7Npk9pCUE+WJlawVSe8mykWDKWFSVfs3QO9ww==}
- engines: {node: '>= 12.0.0'}
-
word-wrap@1.2.5:
resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
engines: {node: '>=0.10.0'}
@@ -8786,10 +8289,6 @@ packages:
resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
engines: {node: '>=12'}
- yargs-unparser@2.0.0:
- resolution: {integrity: sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==}
- engines: {node: '>=10'}
-
yargs@15.4.1:
resolution: {integrity: sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==}
engines: {node: '>=8'}
@@ -8798,10 +8297,6 @@ packages:
resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==}
engines: {node: '>=12'}
- yn@3.1.1:
- resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==}
- engines: {node: '>=6'}
-
yocto-queue@0.1.0:
resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
engines: {node: '>=10'}
@@ -8836,9 +8331,6 @@ packages:
snapshots:
- '@adobe/css-tools@4.3.3':
- optional: true
-
'@ampproject/remapping@2.3.0':
dependencies:
'@jridgewell/gen-mapping': 0.3.8
@@ -8872,11 +8364,11 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@babel/eslint-parser@7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.0))':
+ '@babel/eslint-parser@7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.1))':
dependencies:
'@babel/core': 7.27.4
'@nicolo-ribaudo/eslint-scope-5-internals': 5.1.1-v1
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
eslint-visitor-keys: 2.1.0
semver: 6.3.1
@@ -9703,17 +9195,14 @@ snapshots:
'@bcoe/v8-coverage@1.0.2': {}
- '@bufbuild/protobuf@2.6.0':
- optional: true
-
- '@callstack/rspress-preset@0.4.2(@rsbuild/core@1.5.11)(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))(react@19.1.1)':
+ '@callstack/rspress-preset@0.5.1(@rsbuild/core@1.6.15)(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)':
dependencies:
- '@callstack/rspress-theme': 0.4.2(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))(react@19.1.1)
- '@rspress/core': 2.0.0-beta.32(@types/react@19.1.13)
- '@rspress/plugin-llms': 2.0.0-beta.32(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))
- '@rspress/plugin-sitemap': 2.0.0-beta.32(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))
- '@vercel/analytics': 1.5.0(react@19.1.1)
- rsbuild-plugin-open-graph: 1.1.0(@rsbuild/core@1.5.11)
+ '@callstack/rspress-theme': 0.5.1(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
+ '@rspress/core': 2.0.0-rc.4(@types/react@19.1.13)
+ '@rspress/plugin-llms': 2.0.0-rc.4(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))
+ '@rspress/plugin-sitemap': 2.0.0-rc.4(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))
+ '@vercel/analytics': 1.5.0(react@19.2.3)
+ rsbuild-plugin-open-graph: 1.1.0(@rsbuild/core@1.6.15)
zod: 3.25.67
transitivePeerDependencies:
- '@remix-run/react'
@@ -9721,15 +9210,17 @@ snapshots:
- '@sveltejs/kit'
- next
- react
+ - react-dom
- supports-color
- svelte
- vue
- vue-router
- '@callstack/rspress-theme@0.4.2(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))(react@19.1.1)':
+ '@callstack/rspress-theme@0.5.1(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)':
dependencies:
- '@rspress/core': 2.0.0-beta.32(@types/react@19.1.13)
- react: 19.1.1
+ '@rspress/core': 2.0.0-rc.4(@types/react@19.1.13)
+ react: 19.2.3
+ react-dom: 19.2.3(react@19.2.3)
'@clack/core@1.0.0-alpha.5':
dependencies:
@@ -9742,16 +9233,6 @@ snapshots:
picocolors: 1.1.1
sisteransi: 1.0.5
- '@colors/colors@1.6.0':
- optional: true
-
- '@dabh/diagnostics@2.0.8':
- dependencies:
- '@so-ric/colorspace': 1.1.6
- enabled: 2.0.0
- kuler: 2.0.0
- optional: true
-
'@emnapi/core@1.5.0':
dependencies:
'@emnapi/wasi-threads': 1.1.0
@@ -9923,9 +9404,9 @@ snapshots:
eslint: 9.29.0(jiti@2.4.2)
eslint-visitor-keys: 3.4.3
- '@eslint-community/eslint-utils@4.7.0(eslint@9.29.0(jiti@2.6.0))':
+ '@eslint-community/eslint-utils@4.7.0(eslint@9.29.0(jiti@2.6.1))':
dependencies:
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
eslint-visitor-keys: 3.4.3
'@eslint-community/regexpp@4.12.1': {}
@@ -9971,9 +9452,6 @@ snapshots:
'@eslint/core': 0.15.0
levn: 0.4.1
- '@flatten-js/interval-tree@1.1.4':
- optional: true
-
'@hapi/hoek@9.3.0': {}
'@hapi/topo@5.1.0':
@@ -10023,7 +9501,7 @@ snapshots:
jest-util: 30.2.0
slash: 3.0.0
- '@jest/core@30.2.0(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))':
+ '@jest/core@30.2.0(babel-plugin-macros@3.1.0)':
dependencies:
'@jest/console': 30.2.0
'@jest/pattern': 30.0.1
@@ -10038,7 +9516,7 @@ snapshots:
exit-x: 0.2.2
graceful-fs: 4.2.11
jest-changed-files: 30.2.0
- jest-config: 30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ jest-config: 30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)
jest-haste-map: 30.2.0
jest-message-util: 30.2.0
jest-regex-util: 30.0.1
@@ -10289,7 +9767,7 @@ snapshots:
remark-mdx: 3.1.1
remark-parse: 11.0.0
remark-rehype: 11.1.2
- source-map: 0.7.4
+ source-map: 0.7.6
unified: 11.0.5
unist-util-position-from-estree: 2.0.0
unist-util-stringify-position: 4.0.0
@@ -10298,17 +9776,11 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@mdx-js/react@2.3.0(react@19.1.1)':
- dependencies:
- '@types/mdx': 2.0.13
- '@types/react': 19.1.13
- react: 19.1.1
-
- '@mdx-js/react@3.1.1(@types/react@19.1.13)(react@19.1.1)':
+ '@mdx-js/react@3.1.1(@types/react@19.1.13)(react@19.2.3)':
dependencies:
'@types/mdx': 2.0.13
'@types/react': 19.1.13
- react: 19.1.1
+ react: 19.2.3
'@modern-js/node-bundle-require@2.68.2':
dependencies:
@@ -10344,13 +9816,13 @@ snapshots:
- utf-8-validate
- vue-tsc
- '@module-federation/data-prefetch@0.21.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1)':
+ '@module-federation/data-prefetch@0.21.4(react-dom@19.2.3(react@19.2.3))(react@19.2.3)':
dependencies:
'@module-federation/runtime': 0.21.4
'@module-federation/sdk': 0.21.4
fs-extra: 9.1.0
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ react: 19.2.3
+ react-dom: 19.2.3(react@19.2.3)
'@module-federation/dts-plugin@0.21.4(typescript@5.9.3)':
dependencies:
@@ -10377,11 +9849,11 @@ snapshots:
- supports-color
- utf-8-validate
- '@module-federation/enhanced@0.21.4(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
+ '@module-federation/enhanced@0.21.4(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
dependencies:
'@module-federation/bridge-react-webpack-plugin': 0.21.4
'@module-federation/cli': 0.21.4(typescript@5.9.3)
- '@module-federation/data-prefetch': 0.21.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ '@module-federation/data-prefetch': 0.21.4(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
'@module-federation/dts-plugin': 0.21.4(typescript@5.9.3)
'@module-federation/error-codes': 0.21.4
'@module-federation/inject-external-runtime-core-plugin': 0.21.4(@module-federation/runtime-tools@0.21.4)
@@ -10409,6 +9881,8 @@ snapshots:
'@module-federation/error-codes@0.21.4': {}
+ '@module-federation/error-codes@0.21.6': {}
+
'@module-federation/inject-external-runtime-core-plugin@0.21.4(@module-federation/runtime-tools@0.21.4)':
dependencies:
'@module-federation/runtime-tools': 0.21.4
@@ -10434,9 +9908,9 @@ snapshots:
- utf-8-validate
- vue-tsc
- '@module-federation/node@2.7.23(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
+ '@module-federation/node@2.7.23(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
dependencies:
- '@module-federation/enhanced': 0.21.4(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
+ '@module-federation/enhanced': 0.21.4(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@module-federation/runtime': 0.21.4
'@module-federation/sdk': 0.21.4
btoa: 1.2.1
@@ -10444,8 +9918,8 @@ snapshots:
node-fetch: 2.7.0(encoding@0.1.13)
webpack: 5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17))
optionalDependencies:
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ react: 19.2.3
+ react-dom: 19.2.3(react@19.2.3)
transitivePeerDependencies:
- '@rspack/core'
- bufferutil
@@ -10484,6 +9958,11 @@ snapshots:
'@module-federation/error-codes': 0.21.4
'@module-federation/sdk': 0.21.4
+ '@module-federation/runtime-core@0.21.6':
+ dependencies:
+ '@module-federation/error-codes': 0.21.6
+ '@module-federation/sdk': 0.21.6
+
'@module-federation/runtime-tools@0.18.0':
dependencies:
'@module-federation/runtime': 0.18.0
@@ -10494,6 +9973,11 @@ snapshots:
'@module-federation/runtime': 0.21.4
'@module-federation/webpack-bundler-runtime': 0.21.4
+ '@module-federation/runtime-tools@0.21.6':
+ dependencies:
+ '@module-federation/runtime': 0.21.6
+ '@module-federation/webpack-bundler-runtime': 0.21.6
+
'@module-federation/runtime@0.18.0':
dependencies:
'@module-federation/error-codes': 0.18.0
@@ -10506,10 +9990,18 @@ snapshots:
'@module-federation/runtime-core': 0.21.4
'@module-federation/sdk': 0.21.4
+ '@module-federation/runtime@0.21.6':
+ dependencies:
+ '@module-federation/error-codes': 0.21.6
+ '@module-federation/runtime-core': 0.21.6
+ '@module-federation/sdk': 0.21.6
+
'@module-federation/sdk@0.18.0': {}
'@module-federation/sdk@0.21.4': {}
+ '@module-federation/sdk@0.21.6': {}
+
'@module-federation/third-party-dts-extractor@0.21.4':
dependencies:
find-pkg: 2.0.0
@@ -10526,6 +10018,11 @@ snapshots:
'@module-federation/runtime': 0.21.4
'@module-federation/sdk': 0.21.4
+ '@module-federation/webpack-bundler-runtime@0.21.6':
+ dependencies:
+ '@module-federation/runtime': 0.21.6
+ '@module-federation/sdk': 0.21.6
+
'@napi-rs/wasm-runtime@0.2.12':
dependencies:
'@emnapi/core': 1.5.0
@@ -10546,6 +10043,13 @@ snapshots:
'@tybys/wasm-util': 0.10.1
optional: true
+ '@napi-rs/wasm-runtime@1.0.7':
+ dependencies:
+ '@emnapi/core': 1.5.0
+ '@emnapi/runtime': 1.5.0
+ '@tybys/wasm-util': 0.10.1
+ optional: true
+
'@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1':
dependencies:
eslint-scope: 5.1.1
@@ -10562,14 +10066,13 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.19.1
- '@nx/detox@22.0.4(9b1a4b49f421cf013b90dafab0a49a31)':
+ '@nx/detox@22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@types/node@20.19.25)(@zkochan/js-yaml@0.0.7)(babel-plugin-macros@3.1.0)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
dependencies:
'@nx/devkit': 22.0.4(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/eslint': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
- '@nx/jest': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)
+ '@nx/jest': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)
'@nx/js': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
- '@nx/react': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
- detox: 20.46.0(@jest/environment@30.2.0)(@jest/types@30.2.0)(expect@30.2.0)(jest-environment-node@30.2.0)(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)))
+ '@nx/react': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
tslib: 2.8.1
transitivePeerDependencies:
- '@babel/core'
@@ -10661,7 +10164,7 @@ snapshots:
- supports-color
- verdaccio
- '@nx/jest@22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)':
+ '@nx/jest@22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)':
dependencies:
'@jest/reporters': 30.2.0
'@jest/test-result': 30.2.0
@@ -10669,7 +10172,7 @@ snapshots:
'@nx/js': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@phenomnomnominal/tsquery': 5.0.1(typescript@5.9.3)
identity-obj-proxy: 3.0.0
- jest-config: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ jest-config: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)
jest-resolve: 30.2.0
jest-util: 30.2.0
minimatch: 9.0.3
@@ -10730,10 +10233,10 @@ snapshots:
- nx
- supports-color
- '@nx/module-federation@22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(typescript@5.9.3)':
+ '@nx/module-federation@22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)':
dependencies:
- '@module-federation/enhanced': 0.21.4(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
- '@module-federation/node': 2.7.23(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
+ '@module-federation/enhanced': 0.21.4(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
+ '@module-federation/node': 2.7.23(@rspack/core@1.5.6(@swc/helpers@0.5.17))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@module-federation/sdk': 0.21.4
'@nx/devkit': 22.0.4(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/js': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
@@ -10794,12 +10297,12 @@ snapshots:
'@nx/nx-win32-x64-msvc@22.0.4':
optional: true
- '@nx/react-native@22.0.4(b6bdbf441fca35f932c3e030670387b0)':
+ '@nx/react-native@22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@types/node@20.19.25)(@zkochan/js-yaml@0.0.7)(babel-plugin-macros@3.1.0)(eslint@9.29.0(jiti@2.4.2))(metro-config@0.83.3)(metro-resolver@0.83.3)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
dependencies:
'@nx/devkit': 22.0.4(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/eslint': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/js': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
- '@nx/react': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
+ '@nx/react': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
ajv: 8.17.1
enhanced-resolve: 5.18.3
ignore: 5.3.2
@@ -10810,8 +10313,8 @@ snapshots:
tsconfig-paths: 4.2.0
tslib: 2.8.1
optionalDependencies:
- '@nx/detox': 22.0.4(9b1a4b49f421cf013b90dafab0a49a31)
- '@nx/rollup': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)
+ '@nx/detox': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@types/node@20.19.25)(@zkochan/js-yaml@0.0.7)(babel-plugin-macros@3.1.0)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))
+ '@nx/rollup': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)
transitivePeerDependencies:
- '@babel/core'
- '@babel/traverse'
@@ -10845,13 +10348,13 @@ snapshots:
- webpack
- webpack-cli
- '@nx/react@22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4)(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
+ '@nx/react@22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17)))':
dependencies:
'@nx/devkit': 22.0.4(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/eslint': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@zkochan/js-yaml@0.0.7)(eslint@9.29.0(jiti@2.4.2))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/js': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
- '@nx/module-federation': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.1.1(react@19.1.1))(react@19.1.1)(typescript@5.9.3)
- '@nx/rollup': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)
+ '@nx/module-federation': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/helpers@0.5.17)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(react-dom@19.2.3(react@19.2.3))(react@19.2.3)(typescript@5.9.3)
+ '@nx/rollup': 22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)
'@nx/web': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@phenomnomnominal/tsquery': 5.0.1(typescript@5.9.3)
'@svgr/webpack': 8.1.0(typescript@5.9.3)
@@ -10863,7 +10366,7 @@ snapshots:
semver: 7.7.2
tslib: 2.8.1
optionalDependencies:
- '@nx/vite': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4)
+ '@nx/vite': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))
transitivePeerDependencies:
- '@babel/core'
- '@babel/traverse'
@@ -10892,7 +10395,7 @@ snapshots:
- webpack
- webpack-cli
- '@nx/rollup@22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(ts-node@9.1.1(typescript@5.9.3))(typescript@5.9.3)':
+ '@nx/rollup@22.0.4(@babel/core@7.27.4)(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(@types/babel__core@7.20.5)(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)':
dependencies:
'@nx/devkit': 22.0.4(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/js': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
@@ -10908,7 +10411,7 @@ snapshots:
postcss: 8.5.6
rollup: 4.43.0
rollup-plugin-copy: 3.5.0
- rollup-plugin-postcss: 4.0.2(postcss@8.5.6)(ts-node@9.1.1(typescript@5.9.3))
+ rollup-plugin-postcss: 4.0.2(postcss@8.5.6)
rollup-plugin-typescript2: 0.36.0(rollup@4.43.0)(typescript@5.9.3)
tslib: 2.8.1
transitivePeerDependencies:
@@ -10924,7 +10427,7 @@ snapshots:
- typescript
- verdaccio
- '@nx/vite@22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4)':
+ '@nx/vite@22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))(typescript@5.9.3)(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))':
dependencies:
'@nx/devkit': 22.0.4(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
'@nx/js': 22.0.4(@babel/traverse@7.27.4)(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17))(nx@22.0.4(@swc-node/register@1.9.2(@swc/core@1.5.29(@swc/helpers@0.5.17))(@swc/types@0.1.23)(typescript@5.9.3))(@swc/core@1.5.29(@swc/helpers@0.5.17)))
@@ -10935,8 +10438,8 @@ snapshots:
semver: 7.7.2
tsconfig-paths: 4.2.0
tslib: 2.8.1
- vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
- vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0)
+ vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0)
transitivePeerDependencies:
- '@babel/traverse'
- '@swc-node/register'
@@ -10980,78 +10483,17 @@ snapshots:
- '@swc/core'
- debug
- '@parcel/watcher-android-arm64@2.5.1':
- optional: true
-
- '@parcel/watcher-darwin-arm64@2.5.1':
- optional: true
-
- '@parcel/watcher-darwin-x64@2.5.1':
- optional: true
+ '@phenomnomnominal/tsquery@5.0.1(typescript@5.9.3)':
+ dependencies:
+ esquery: 1.6.0
+ typescript: 5.9.3
- '@parcel/watcher-freebsd-x64@2.5.1':
+ '@pkgjs/parseargs@0.11.0':
optional: true
- '@parcel/watcher-linux-arm-glibc@2.5.1':
- optional: true
+ '@pkgr/core@0.2.9': {}
- '@parcel/watcher-linux-arm-musl@2.5.1':
- optional: true
-
- '@parcel/watcher-linux-arm64-glibc@2.5.1':
- optional: true
-
- '@parcel/watcher-linux-arm64-musl@2.5.1':
- optional: true
-
- '@parcel/watcher-linux-x64-glibc@2.5.1':
- optional: true
-
- '@parcel/watcher-linux-x64-musl@2.5.1':
- optional: true
-
- '@parcel/watcher-win32-arm64@2.5.1':
- optional: true
-
- '@parcel/watcher-win32-ia32@2.5.1':
- optional: true
-
- '@parcel/watcher-win32-x64@2.5.1':
- optional: true
-
- '@parcel/watcher@2.5.1':
- dependencies:
- detect-libc: 1.0.3
- is-glob: 4.0.3
- micromatch: 4.0.8
- node-addon-api: 7.1.1
- optionalDependencies:
- '@parcel/watcher-android-arm64': 2.5.1
- '@parcel/watcher-darwin-arm64': 2.5.1
- '@parcel/watcher-darwin-x64': 2.5.1
- '@parcel/watcher-freebsd-x64': 2.5.1
- '@parcel/watcher-linux-arm-glibc': 2.5.1
- '@parcel/watcher-linux-arm-musl': 2.5.1
- '@parcel/watcher-linux-arm64-glibc': 2.5.1
- '@parcel/watcher-linux-arm64-musl': 2.5.1
- '@parcel/watcher-linux-x64-glibc': 2.5.1
- '@parcel/watcher-linux-x64-musl': 2.5.1
- '@parcel/watcher-win32-arm64': 2.5.1
- '@parcel/watcher-win32-ia32': 2.5.1
- '@parcel/watcher-win32-x64': 2.5.1
- optional: true
-
- '@phenomnomnominal/tsquery@5.0.1(typescript@5.9.3)':
- dependencies:
- esquery: 1.6.0
- typescript: 5.9.3
-
- '@pkgjs/parseargs@0.11.0':
- optional: true
-
- '@pkgr/core@0.2.9': {}
-
- '@polka/url@1.0.0-next.29': {}
+ '@polka/url@1.0.0-next.29': {}
'@react-native-community/cli-clean@20.0.0':
dependencies:
@@ -11184,15 +10626,14 @@ snapshots:
'@react-native/assets-registry@0.82.1': {}
- '@react-native/babel-plugin-codegen@0.82.1(@babel/core@7.27.4)':
+ '@react-native/babel-plugin-codegen@0.82.1':
dependencies:
'@babel/traverse': 7.27.4
- '@react-native/codegen': 0.82.1(@babel/core@7.27.4)
+ '@react-native/codegen': 0.82.1
transitivePeerDependencies:
- - '@babel/core'
- supports-color
- '@react-native/babel-preset@0.82.1(@babel/core@7.27.4)':
+ '@react-native/babel-preset@0.82.1':
dependencies:
'@babel/core': 7.27.4
'@babel/plugin-proposal-export-default-from': 7.27.1(@babel/core@7.27.4)
@@ -11235,14 +10676,14 @@ snapshots:
'@babel/plugin-transform-typescript': 7.27.1(@babel/core@7.27.4)
'@babel/plugin-transform-unicode-regex': 7.27.1(@babel/core@7.27.4)
'@babel/template': 7.27.2
- '@react-native/babel-plugin-codegen': 0.82.1(@babel/core@7.27.4)
+ '@react-native/babel-plugin-codegen': 0.82.1
babel-plugin-syntax-hermes-parser: 0.32.0
babel-plugin-transform-flow-enums: 0.0.2(@babel/core@7.27.4)
react-refresh: 0.14.2
transitivePeerDependencies:
- supports-color
- '@react-native/codegen@0.82.1(@babel/core@7.27.4)':
+ '@react-native/codegen@0.82.1':
dependencies:
'@babel/core': 7.27.4
'@babel/parser': 7.27.5
@@ -11251,8 +10692,10 @@ snapshots:
invariant: 2.2.4
nullthrows: 1.1.1
yargs: 17.7.2
+ transitivePeerDependencies:
+ - supports-color
- '@react-native/community-cli-plugin@0.82.1(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))':
+ '@react-native/community-cli-plugin@0.82.1(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)':
dependencies:
'@react-native/dev-middleware': 0.82.1
debug: 4.4.1
@@ -11263,7 +10706,7 @@ snapshots:
semver: 7.7.2
optionalDependencies:
'@react-native-community/cli': 20.0.0(typescript@5.9.3)
- '@react-native/metro-config': 0.82.1(@babel/core@7.27.4)
+ '@react-native/metro-config': 0.82.1
transitivePeerDependencies:
- bufferutil
- supports-color
@@ -11295,21 +10738,21 @@ snapshots:
- supports-color
- utf-8-validate
- '@react-native/eslint-config@0.82.1(eslint@9.29.0(jiti@2.6.0))(jest@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)))(prettier@2.8.8)(typescript@5.9.3)':
+ '@react-native/eslint-config@0.82.1(eslint@9.29.0(jiti@2.6.1))(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0))(prettier@2.8.8)(typescript@5.9.3)':
dependencies:
'@babel/core': 7.27.4
- '@babel/eslint-parser': 7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.0))
+ '@babel/eslint-parser': 7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.1))
'@react-native/eslint-plugin': 0.82.1
- '@typescript-eslint/eslint-plugin': 8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
- '@typescript-eslint/parser': 8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
- eslint: 9.29.0(jiti@2.6.0)
- eslint-config-prettier: 8.10.2(eslint@9.29.0(jiti@2.6.0))
- eslint-plugin-eslint-comments: 3.2.0(eslint@9.29.0(jiti@2.6.0))
- eslint-plugin-ft-flow: 2.0.3(@babel/eslint-parser@7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.0)))(eslint@9.29.0(jiti@2.6.0))
- eslint-plugin-jest: 29.1.0(@typescript-eslint/eslint-plugin@8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.0))(jest@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)))(typescript@5.9.3)
- eslint-plugin-react: 7.35.0(eslint@9.29.0(jiti@2.6.0))
- eslint-plugin-react-hooks: 5.2.0(eslint@9.29.0(jiti@2.6.0))
- eslint-plugin-react-native: 4.1.0(eslint@9.29.0(jiti@2.6.0))
+ '@typescript-eslint/eslint-plugin': 8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/parser': 8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
+ eslint: 9.29.0(jiti@2.6.1)
+ eslint-config-prettier: 8.10.2(eslint@9.29.0(jiti@2.6.1))
+ eslint-plugin-eslint-comments: 3.2.0(eslint@9.29.0(jiti@2.6.1))
+ eslint-plugin-ft-flow: 2.0.3(@babel/eslint-parser@7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.1)))(eslint@9.29.0(jiti@2.6.1))
+ eslint-plugin-jest: 29.1.0(@typescript-eslint/eslint-plugin@8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.1))(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0))(typescript@5.9.3)
+ eslint-plugin-react: 7.35.0(eslint@9.29.0(jiti@2.6.1))
+ eslint-plugin-react-hooks: 5.2.0(eslint@9.29.0(jiti@2.6.1))
+ eslint-plugin-react-native: 4.1.0(eslint@9.29.0(jiti@2.6.1))
prettier: 2.8.8
transitivePeerDependencies:
- jest
@@ -11322,42 +10765,41 @@ snapshots:
'@react-native/js-polyfills@0.82.1': {}
- '@react-native/metro-babel-transformer@0.82.1(@babel/core@7.27.4)':
+ '@react-native/metro-babel-transformer@0.82.1':
dependencies:
'@babel/core': 7.27.4
- '@react-native/babel-preset': 0.82.1(@babel/core@7.27.4)
+ '@react-native/babel-preset': 0.82.1
hermes-parser: 0.32.0
nullthrows: 1.1.1
transitivePeerDependencies:
- supports-color
- '@react-native/metro-config@0.82.1(@babel/core@7.27.4)':
+ '@react-native/metro-config@0.82.1':
dependencies:
'@react-native/js-polyfills': 0.82.1
- '@react-native/metro-babel-transformer': 0.82.1(@babel/core@7.27.4)
+ '@react-native/metro-babel-transformer': 0.82.1
metro-config: 0.83.3
metro-runtime: 0.83.3
transitivePeerDependencies:
- - '@babel/core'
- bufferutil
- supports-color
- utf-8-validate
+ '@react-native/normalize-colors@0.74.89': {}
+
'@react-native/normalize-colors@0.82.1': {}
'@react-native/typescript-config@0.82.1': {}
- '@react-native/virtualized-lists@0.82.1(@types/react@19.1.13)(react-native@0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1))(react@19.1.1)':
+ '@react-native/virtualized-lists@0.82.1(@types/react@19.1.13)(react-native@0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)(@types/react@19.1.13)(react@19.2.3))(react@19.2.3)':
dependencies:
invariant: 2.2.4
nullthrows: 1.1.1
- react: 19.1.1
- react-native: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1)
+ react: 19.2.3
+ react-native: 0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)(@types/react@19.1.13)(react@19.2.3)
optionalDependencies:
'@types/react': 19.1.13
- '@remix-run/router@1.23.0': {}
-
'@rolldown/pluginutils@1.0.0-beta.19': {}
'@rollup/plugin-babel@6.0.4(@babel/core@7.27.4)(@types/babel__core@7.20.5)(rollup@4.43.0)':
@@ -11495,54 +10937,86 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.43.0':
optional: true
- '@rsbuild/core@1.5.11':
+ '@rsbuild/core@1.6.15':
dependencies:
- '@rspack/core': 1.5.6(@swc/helpers@0.5.17)
- '@rspack/lite-tapable': 1.0.1
+ '@rspack/core': 1.6.8(@swc/helpers@0.5.17)
+ '@rspack/lite-tapable': 1.1.0
'@swc/helpers': 0.5.17
- core-js: 3.45.1
- jiti: 2.6.0
+ core-js: 3.47.0
+ jiti: 2.6.1
- '@rsbuild/plugin-react@1.4.0(@rsbuild/core@1.5.11)':
+ '@rsbuild/plugin-react@1.4.3(@rsbuild/core@1.6.15)':
dependencies:
- '@rsbuild/core': 1.5.11
- '@rspack/plugin-react-refresh': 1.5.1(react-refresh@0.17.0)
- react-refresh: 0.17.0
+ '@rsbuild/core': 1.6.15
+ '@rspack/plugin-react-refresh': 1.6.0(react-refresh@0.18.0)
+ react-refresh: 0.18.0
transitivePeerDependencies:
- webpack-hot-middleware
'@rspack/binding-darwin-arm64@1.5.6':
optional: true
+ '@rspack/binding-darwin-arm64@1.6.8':
+ optional: true
+
'@rspack/binding-darwin-x64@1.5.6':
optional: true
+ '@rspack/binding-darwin-x64@1.6.8':
+ optional: true
+
'@rspack/binding-linux-arm64-gnu@1.5.6':
optional: true
+ '@rspack/binding-linux-arm64-gnu@1.6.8':
+ optional: true
+
'@rspack/binding-linux-arm64-musl@1.5.6':
optional: true
+ '@rspack/binding-linux-arm64-musl@1.6.8':
+ optional: true
+
'@rspack/binding-linux-x64-gnu@1.5.6':
optional: true
+ '@rspack/binding-linux-x64-gnu@1.6.8':
+ optional: true
+
'@rspack/binding-linux-x64-musl@1.5.6':
optional: true
+ '@rspack/binding-linux-x64-musl@1.6.8':
+ optional: true
+
'@rspack/binding-wasm32-wasi@1.5.6':
dependencies:
'@napi-rs/wasm-runtime': 1.0.5
optional: true
+ '@rspack/binding-wasm32-wasi@1.6.8':
+ dependencies:
+ '@napi-rs/wasm-runtime': 1.0.7
+ optional: true
+
'@rspack/binding-win32-arm64-msvc@1.5.6':
optional: true
+ '@rspack/binding-win32-arm64-msvc@1.6.8':
+ optional: true
+
'@rspack/binding-win32-ia32-msvc@1.5.6':
optional: true
+ '@rspack/binding-win32-ia32-msvc@1.6.8':
+ optional: true
+
'@rspack/binding-win32-x64-msvc@1.5.6':
optional: true
+ '@rspack/binding-win32-x64-msvc@1.6.8':
+ optional: true
+
'@rspack/binding@1.5.6':
optionalDependencies:
'@rspack/binding-darwin-arm64': 1.5.6
@@ -11556,6 +11030,19 @@ snapshots:
'@rspack/binding-win32-ia32-msvc': 1.5.6
'@rspack/binding-win32-x64-msvc': 1.5.6
+ '@rspack/binding@1.6.8':
+ optionalDependencies:
+ '@rspack/binding-darwin-arm64': 1.6.8
+ '@rspack/binding-darwin-x64': 1.6.8
+ '@rspack/binding-linux-arm64-gnu': 1.6.8
+ '@rspack/binding-linux-arm64-musl': 1.6.8
+ '@rspack/binding-linux-x64-gnu': 1.6.8
+ '@rspack/binding-linux-x64-musl': 1.6.8
+ '@rspack/binding-wasm32-wasi': 1.6.8
+ '@rspack/binding-win32-arm64-msvc': 1.6.8
+ '@rspack/binding-win32-ia32-msvc': 1.6.8
+ '@rspack/binding-win32-x64-msvc': 1.6.8
+
'@rspack/core@1.5.6(@swc/helpers@0.5.17)':
dependencies:
'@module-federation/runtime-tools': 0.18.0
@@ -11564,45 +11051,64 @@ snapshots:
optionalDependencies:
'@swc/helpers': 0.5.17
+ '@rspack/core@1.6.8(@swc/helpers@0.5.17)':
+ dependencies:
+ '@module-federation/runtime-tools': 0.21.6
+ '@rspack/binding': 1.6.8
+ '@rspack/lite-tapable': 1.1.0
+ optionalDependencies:
+ '@swc/helpers': 0.5.17
+
'@rspack/lite-tapable@1.0.1': {}
- '@rspack/plugin-react-refresh@1.5.1(react-refresh@0.17.0)':
+ '@rspack/lite-tapable@1.1.0': {}
+
+ '@rspack/plugin-react-refresh@1.6.0(react-refresh@0.18.0)':
dependencies:
error-stack-parser: 2.1.4
html-entities: 2.6.0
- react-refresh: 0.17.0
+ react-refresh: 0.18.0
- '@rspress/core@2.0.0-beta.32(@types/react@19.1.13)':
+ '@rspress/core@2.0.0-rc.4(@types/react@19.1.13)':
dependencies:
'@mdx-js/mdx': 3.1.1
- '@mdx-js/react': 3.1.1(@types/react@19.1.13)(react@19.1.1)
- '@rsbuild/core': 1.5.11
- '@rsbuild/plugin-react': 1.4.0(@rsbuild/core@1.5.11)
+ '@mdx-js/react': 3.1.1(@types/react@19.1.13)(react@19.2.3)
+ '@rsbuild/core': 1.6.15
+ '@rsbuild/plugin-react': 1.4.3(@rsbuild/core@1.6.15)
'@rspress/mdx-rs': 0.6.6
- '@rspress/runtime': 2.0.0-beta.32
- '@rspress/shared': 2.0.0-beta.32
- '@rspress/theme-default': 2.0.0-beta.32
- '@shikijs/rehype': 3.13.0
+ '@rspress/runtime': 2.0.0-rc.4
+ '@rspress/shared': 2.0.0-rc.4
+ '@shikijs/rehype': 3.21.0
'@types/unist': 3.0.3
- '@unhead/react': 2.0.17(react@19.1.1)
+ '@unhead/react': 2.1.2(react@19.2.3)
+ body-scroll-lock: 4.0.0-beta.0
cac: 6.7.14
chokidar: 3.6.0
- enhanced-resolve: 5.18.3
+ clsx: 2.1.1
+ copy-to-clipboard: 3.3.3
+ flexsearch: 0.8.212
github-slugger: 2.0.0
hast-util-heading-rank: 3.0.0
+ hast-util-to-jsx-runtime: 2.3.6
html-to-text: 9.0.5
- lodash-es: 4.17.21
+ lodash-es: 4.17.23
+ mdast-util-mdx: 3.0.0
mdast-util-mdxjs-esm: 2.0.1
medium-zoom: 1.1.0
+ nprogress: 0.2.0
picocolors: 1.1.1
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
+ react: 19.2.3
+ react-dom: 19.2.3(react@19.2.3)
react-lazy-with-preload: 2.2.1
- react-router-dom: 6.30.1(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ react-reconciler: 0.33.0(react@19.2.3)
+ react-router-dom: 7.12.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
rehype-external-links: 3.0.0
rehype-raw: 7.0.0
remark-gfm: 4.0.1
- shiki: 3.13.0
+ remark-mdx: 3.1.1
+ remark-stringify: 11.0.0
+ scroll-into-view-if-needed: 3.1.0
+ shiki: 3.21.0
tinyglobby: 0.2.15
tinypool: 1.1.1
unified: 11.0.5
@@ -11648,9 +11154,9 @@ snapshots:
'@rspress/mdx-rs-win32-arm64-msvc': 0.6.6
'@rspress/mdx-rs-win32-x64-msvc': 0.6.6
- '@rspress/plugin-llms@2.0.0-beta.32(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))':
+ '@rspress/plugin-llms@2.0.0-rc.4(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))':
dependencies:
- '@rspress/core': 2.0.0-beta.32(@types/react@19.1.13)
+ '@rspress/core': 2.0.0-rc.4(@types/react@19.1.13)
remark-mdx: 3.1.1
remark-parse: 11.0.0
remark-stringify: 11.0.0
@@ -11659,45 +11165,26 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@rspress/plugin-sitemap@2.0.0-beta.32(@rspress/core@2.0.0-beta.32(@types/react@19.1.13))':
+ '@rspress/plugin-sitemap@2.0.0-rc.4(@rspress/core@2.0.0-rc.4(@types/react@19.1.13))':
dependencies:
- '@rspress/core': 2.0.0-beta.32(@types/react@19.1.13)
+ '@rspress/core': 2.0.0-rc.4(@types/react@19.1.13)
- '@rspress/runtime@2.0.0-beta.32':
+ '@rspress/runtime@2.0.0-rc.4':
dependencies:
- '@rspress/shared': 2.0.0-beta.32
- '@unhead/react': 2.0.17(react@19.1.1)
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
- react-router-dom: 6.30.1(react-dom@19.1.1(react@19.1.1))(react@19.1.1)
+ '@rspress/shared': 2.0.0-rc.4
+ '@unhead/react': 2.1.2(react@19.2.3)
+ react: 19.2.3
+ react-dom: 19.2.3(react@19.2.3)
+ react-router-dom: 7.12.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
- '@rspress/shared@2.0.0-beta.32':
+ '@rspress/shared@2.0.0-rc.4':
dependencies:
- '@rsbuild/core': 1.5.11
- '@shikijs/rehype': 3.13.0
+ '@rsbuild/core': 1.6.15
+ '@shikijs/rehype': 3.21.0
gray-matter: 4.0.3
- lodash-es: 4.17.21
+ lodash-es: 4.17.23
unified: 11.0.5
- '@rspress/theme-default@2.0.0-beta.32':
- dependencies:
- '@mdx-js/react': 2.3.0(react@19.1.1)
- '@rspress/runtime': 2.0.0-beta.32
- '@rspress/shared': 2.0.0-beta.32
- '@unhead/react': 2.0.17(react@19.1.1)
- body-scroll-lock: 4.0.0-beta.0
- copy-to-clipboard: 3.3.3
- flexsearch: 0.7.43
- github-slugger: 2.0.0
- hast-util-to-jsx-runtime: 2.3.6
- lodash-es: 4.17.21
- nprogress: 0.2.0
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
- shiki: 3.13.0
- transitivePeerDependencies:
- - supports-color
-
'@rtsao/scc@1.1.0': {}
'@selderee/plugin-htmlparser2@0.11.0':
@@ -11705,42 +11192,42 @@ snapshots:
domhandler: 5.0.3
selderee: 0.11.0
- '@shikijs/core@3.13.0':
+ '@shikijs/core@3.21.0':
dependencies:
- '@shikijs/types': 3.13.0
+ '@shikijs/types': 3.21.0
'@shikijs/vscode-textmate': 10.0.2
'@types/hast': 3.0.4
hast-util-to-html: 9.0.5
- '@shikijs/engine-javascript@3.13.0':
+ '@shikijs/engine-javascript@3.21.0':
dependencies:
- '@shikijs/types': 3.13.0
+ '@shikijs/types': 3.21.0
'@shikijs/vscode-textmate': 10.0.2
- oniguruma-to-es: 4.3.3
+ oniguruma-to-es: 4.3.4
- '@shikijs/engine-oniguruma@3.13.0':
+ '@shikijs/engine-oniguruma@3.21.0':
dependencies:
- '@shikijs/types': 3.13.0
+ '@shikijs/types': 3.21.0
'@shikijs/vscode-textmate': 10.0.2
- '@shikijs/langs@3.13.0':
+ '@shikijs/langs@3.21.0':
dependencies:
- '@shikijs/types': 3.13.0
+ '@shikijs/types': 3.21.0
- '@shikijs/rehype@3.13.0':
+ '@shikijs/rehype@3.21.0':
dependencies:
- '@shikijs/types': 3.13.0
+ '@shikijs/types': 3.21.0
'@types/hast': 3.0.4
hast-util-to-string: 3.0.1
- shiki: 3.13.0
+ shiki: 3.21.0
unified: 11.0.5
unist-util-visit: 5.0.0
- '@shikijs/themes@3.13.0':
+ '@shikijs/themes@3.21.0':
dependencies:
- '@shikijs/types': 3.13.0
+ '@shikijs/types': 3.21.0
- '@shikijs/types@3.13.0':
+ '@shikijs/types@3.21.0':
dependencies:
'@shikijs/vscode-textmate': 10.0.2
'@types/hast': 3.0.4
@@ -11771,12 +11258,6 @@ snapshots:
dependencies:
'@sinonjs/commons': 3.0.1
- '@so-ric/colorspace@1.1.6':
- dependencies:
- color: 5.0.3
- text-hex: 1.0.0
- optional: true
-
'@standard-schema/spec@1.1.0': {}
'@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.27.4)':
@@ -12091,9 +11572,6 @@ snapshots:
'@types/stack-utils@2.0.3': {}
- '@types/triple-beam@1.3.5':
- optional: true
-
'@types/unist@2.0.11': {}
'@types/unist@3.0.3': {}
@@ -12108,15 +11586,15 @@ snapshots:
dependencies:
'@types/yargs-parser': 21.0.3
- '@typescript-eslint/eslint-plugin@8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)':
+ '@typescript-eslint/eslint-plugin@8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@eslint-community/regexpp': 4.12.1
- '@typescript-eslint/parser': 8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
+ '@typescript-eslint/parser': 8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
'@typescript-eslint/scope-manager': 8.46.4
- '@typescript-eslint/type-utils': 8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
- '@typescript-eslint/utils': 8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
+ '@typescript-eslint/type-utils': 8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
'@typescript-eslint/visitor-keys': 8.46.4
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
graphemer: 1.4.0
ignore: 7.0.5
natural-compare: 1.4.0
@@ -12142,14 +11620,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)':
+ '@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@typescript-eslint/scope-manager': 8.46.4
'@typescript-eslint/types': 8.46.4
'@typescript-eslint/typescript-estree': 8.46.4(typescript@5.9.3)
'@typescript-eslint/visitor-keys': 8.46.4
debug: 4.4.1
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
@@ -12214,13 +11692,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/type-utils@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)':
+ '@typescript-eslint/type-utils@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
'@typescript-eslint/types': 8.46.4
'@typescript-eslint/typescript-estree': 8.46.4(typescript@5.9.3)
- '@typescript-eslint/utils': 8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
+ '@typescript-eslint/utils': 8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
debug: 4.4.1
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
ts-api-utils: 2.1.0(typescript@5.9.3)
typescript: 5.9.3
transitivePeerDependencies:
@@ -12285,13 +11763,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
- '@typescript-eslint/utils@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)':
+ '@typescript-eslint/utils@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)':
dependencies:
- '@eslint-community/eslint-utils': 4.7.0(eslint@9.29.0(jiti@2.6.0))
+ '@eslint-community/eslint-utils': 4.7.0(eslint@9.29.0(jiti@2.6.1))
'@typescript-eslint/scope-manager': 8.46.4
'@typescript-eslint/types': 8.46.4
'@typescript-eslint/typescript-estree': 8.46.4(typescript@5.9.3)
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
typescript: 5.9.3
transitivePeerDependencies:
- supports-color
@@ -12319,10 +11797,10 @@ snapshots:
'@ungap/structured-clone@1.3.0': {}
- '@unhead/react@2.0.17(react@19.1.1)':
+ '@unhead/react@2.1.2(react@19.2.3)':
dependencies:
- react: 19.1.1
- unhead: 2.0.17
+ react: 19.2.3
+ unhead: 2.1.2
'@unrs/resolver-binding-android-arm-eabi@1.11.1':
optional: true
@@ -12383,11 +11861,11 @@ snapshots:
'@unrs/resolver-binding-win32-x64-msvc@1.11.1':
optional: true
- '@vercel/analytics@1.5.0(react@19.1.1)':
+ '@vercel/analytics@1.5.0(react@19.2.3)':
optionalDependencies:
- react: 19.1.1
+ react: 19.2.3
- '@vitejs/plugin-react@4.6.0(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))':
+ '@vitejs/plugin-react@4.6.0(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))':
dependencies:
'@babel/core': 7.27.4
'@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.27.4)
@@ -12395,11 +11873,11 @@ snapshots:
'@rolldown/pluginutils': 1.0.0-beta.19
'@types/babel__core': 7.20.5
react-refresh: 0.17.0
- vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0)
transitivePeerDependencies:
- supports-color
- '@vitest/coverage-v8@3.2.4(vitest@3.2.4)':
+ '@vitest/coverage-v8@3.2.4(vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0))':
dependencies:
'@ampproject/remapping': 2.3.0
'@bcoe/v8-coverage': 1.0.2
@@ -12414,7 +11892,7 @@ snapshots:
std-env: 3.9.0
test-exclude: 7.0.1
tinyrainbow: 2.0.0
- vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0)
transitivePeerDependencies:
- supports-color
@@ -12435,13 +11913,13 @@ snapshots:
chai: 6.2.2
tinyrainbow: 3.0.3
- '@vitest/mocker@3.2.4(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))':
+ '@vitest/mocker@3.2.4(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))':
dependencies:
'@vitest/spy': 3.2.4
estree-walker: 3.0.3
magic-string: 0.30.17
optionalDependencies:
- vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0)
'@vitest/pretty-format@3.2.4':
dependencies:
@@ -12478,7 +11956,7 @@ snapshots:
sirv: 3.0.1
tinyglobby: 0.2.15
tinyrainbow: 2.0.0
- vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ vitest: 3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0)
'@vitest/utils@3.2.4':
dependencies:
@@ -12569,22 +12047,6 @@ snapshots:
'@webassemblyjs/ast': 1.14.1
'@xtuc/long': 4.2.2
- '@wix-pilot/core@3.4.2(expect@30.2.0)':
- dependencies:
- chalk: 4.1.2
- pngjs: 7.0.0
- winston: 3.18.3
- optionalDependencies:
- expect: 30.2.0
- optional: true
-
- '@wix-pilot/detox@1.0.13(@wix-pilot/core@3.4.2(expect@30.2.0))(detox@20.46.0(@jest/environment@30.2.0)(@jest/types@30.2.0)(expect@30.2.0)(jest-environment-node@30.2.0)(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))))(expect@30.2.0)':
- dependencies:
- '@wix-pilot/core': 3.4.2(expect@30.2.0)
- detox: 20.46.0(@jest/environment@30.2.0)(@jest/types@30.2.0)(expect@30.2.0)(jest-environment-node@30.2.0)(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)))
- expect: 30.2.0
- optional: true
-
'@xtuc/ieee754@1.2.0': {}
'@xtuc/long@4.2.2': {}
@@ -12701,9 +12163,6 @@ snapshots:
appdirsjs@1.2.7: {}
- arg@4.1.3:
- optional: true
-
argparse@1.0.10:
dependencies:
sprintf-js: 1.0.3
@@ -13011,9 +12470,6 @@ snapshots:
inherits: 2.0.4
readable-stream: 3.6.2
- bluebird@3.7.2:
- optional: true
-
body-parser@1.20.3:
dependencies:
bytes: 3.1.2
@@ -13048,9 +12504,6 @@ snapshots:
dependencies:
fill-range: 7.1.1
- browser-process-hrtime@1.0.0:
- optional: true
-
browserslist@4.25.0:
dependencies:
caniuse-lite: 1.0.30001723
@@ -13072,9 +12525,6 @@ snapshots:
btoa@1.2.1: {}
- buffer-builder@0.2.0:
- optional: true
-
buffer-from@1.1.2: {}
buffer@5.7.1:
@@ -13087,55 +12537,10 @@ snapshots:
esbuild: 0.27.0
load-tsconfig: 0.2.5
- bunyamin@1.6.3(bunyan@2.0.5):
- dependencies:
- '@flatten-js/interval-tree': 1.1.4
- multi-sort-stream: 1.0.4
- stream-json: 1.9.1
- trace-event-lib: 1.4.1
- optionalDependencies:
- bunyan: 2.0.5
- optional: true
-
- bunyan-debug-stream@3.1.1(bunyan@1.8.15):
- dependencies:
- chalk: 4.1.2
- optionalDependencies:
- bunyan: 1.8.15
- optional: true
-
- bunyan-debug-stream@3.1.1(bunyan@2.0.5):
- dependencies:
- chalk: 4.1.2
- optionalDependencies:
- bunyan: 2.0.5
- optional: true
-
- bunyan@1.8.15:
- optionalDependencies:
- dtrace-provider: 0.8.8
- moment: 2.30.1
- mv: 2.1.1
- safe-json-stringify: 1.2.0
- optional: true
-
- bunyan@2.0.5:
- dependencies:
- exeunt: 1.1.0
- optionalDependencies:
- dtrace-provider: 0.8.8
- moment: 2.30.1
- mv: 2.1.1
- safe-json-stringify: 1.2.0
- optional: true
-
bytes@3.1.2: {}
cac@6.7.14: {}
- caf@15.0.1:
- optional: true
-
call-bind-apply-helpers@1.0.2:
dependencies:
es-errors: 1.3.0
@@ -13272,6 +12677,8 @@ snapshots:
clone@1.0.4: {}
+ clsx@2.1.1: {}
+
co@4.6.0: {}
collapse-white-space@2.1.0: {}
@@ -13286,38 +12693,16 @@ snapshots:
dependencies:
color-name: 1.1.4
- color-convert@3.1.3:
- dependencies:
- color-name: 2.1.0
- optional: true
-
color-name@1.1.3: {}
color-name@1.1.4: {}
- color-name@2.1.0:
- optional: true
-
- color-string@2.1.4:
- dependencies:
- color-name: 2.1.0
- optional: true
-
- color@5.0.3:
- dependencies:
- color-convert: 3.1.3
- color-string: 2.1.4
- optional: true
-
colord@2.9.3: {}
colorette@1.4.0: {}
colorette@2.0.20: {}
- colorjs.io@0.5.2:
- optional: true
-
columnify@1.6.0:
dependencies:
strip-ansi: 6.0.1
@@ -13361,6 +12746,8 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ compute-scroll-into-view@3.1.1: {}
+
concat-map@0.0.1: {}
concat-with-sourcemaps@1.1.0:
@@ -13394,16 +12781,13 @@ snapshots:
cookie@0.7.1: {}
+ cookie@1.1.1: {}
+
cookies@0.9.1:
dependencies:
depd: 2.0.0
keygrip: 1.1.0
- copy-anything@2.0.6:
- dependencies:
- is-what: 3.14.1
- optional: true
-
copy-to-clipboard@3.3.3:
dependencies:
toggle-selection: 1.0.6
@@ -13412,10 +12796,7 @@ snapshots:
dependencies:
browserslist: 4.28.0
- core-js@3.45.1: {}
-
- core-util-is@1.0.3:
- optional: true
+ core-js@3.47.0: {}
corser@2.0.1: {}
@@ -13445,13 +12826,16 @@ snapshots:
optionalDependencies:
typescript: 5.9.3
- create-require@1.1.1:
- optional: true
-
cron-parser@4.9.0:
dependencies:
luxon: 3.6.1
+ cross-fetch@3.2.0(encoding@0.1.13):
+ dependencies:
+ node-fetch: 2.7.0(encoding@0.1.13)
+ transitivePeerDependencies:
+ - encoding
+
cross-spawn@7.0.6:
dependencies:
path-key: 3.1.1
@@ -13462,6 +12846,10 @@ snapshots:
dependencies:
postcss: 8.5.6
+ css-in-js-utils@3.1.0:
+ dependencies:
+ hyphenate-style-name: 1.1.0
+
css-select@4.3.0:
dependencies:
boolbase: 1.0.0
@@ -13599,9 +12987,6 @@ snapshots:
decamelize@1.2.0: {}
- decamelize@4.0.0:
- optional: true
-
decimal.js@10.5.0: {}
decode-named-character-reference@1.2.0:
@@ -13650,9 +13035,6 @@ snapshots:
destroy@1.2.0: {}
- detect-libc@1.0.3:
- optional: true
-
detect-newline@3.1.0: {}
detect-port@1.6.1:
@@ -13662,65 +13044,10 @@ snapshots:
transitivePeerDependencies:
- supports-color
- detox@20.46.0(@jest/environment@30.2.0)(@jest/types@30.2.0)(expect@30.2.0)(jest-environment-node@30.2.0)(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))):
- dependencies:
- '@wix-pilot/core': 3.4.2(expect@30.2.0)
- '@wix-pilot/detox': 1.0.13(@wix-pilot/core@3.4.2(expect@30.2.0))(detox@20.46.0(@jest/environment@30.2.0)(@jest/types@30.2.0)(expect@30.2.0)(jest-environment-node@30.2.0)(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))))(expect@30.2.0)
- ajv: 8.17.1
- bunyan: 1.8.15
- bunyan-debug-stream: 3.1.1(bunyan@1.8.15)
- caf: 15.0.1
- chalk: 4.1.2
- execa: 5.1.1
- find-up: 5.0.0
- fs-extra: 11.3.2
- funpermaproxy: 1.1.0
- glob: 8.1.0
- ini: 1.3.8
- jest-environment-emit: 1.2.0(@jest/environment@30.2.0)(@jest/types@30.2.0)(jest-environment-node@30.2.0)(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)))
- json-cycle: 1.5.0
- lodash: 4.17.21
- multi-sort-stream: 1.0.4
- multipipe: 4.0.0
- node-ipc: 9.2.1
- promisify-child-process: 4.1.2
- proper-lockfile: 3.2.0
- resolve-from: 5.0.0
- sanitize-filename: 1.6.3
- semver: 7.7.2
- serialize-error: 8.1.0
- shell-quote: 1.8.3
- signal-exit: 3.0.7
- stream-json: 1.9.1
- strip-ansi: 6.0.1
- telnet-client: 1.2.8
- tmp: 0.2.3
- trace-event-lib: 1.4.1
- which: 1.3.1
- ws: 7.5.10
- yargs: 17.7.2
- yargs-parser: 21.1.1
- yargs-unparser: 2.0.0
- optionalDependencies:
- jest: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
- transitivePeerDependencies:
- - '@jest/environment'
- - '@jest/types'
- - '@types/bunyan'
- - bufferutil
- - expect
- - jest-environment-jsdom
- - jest-environment-node
- - utf-8-validate
- optional: true
-
devlop@1.1.0:
dependencies:
dequal: 2.0.3
- diff@4.0.2:
- optional: true
-
dir-glob@3.0.1:
dependencies:
path-type: 4.0.0
@@ -13778,27 +13105,14 @@ snapshots:
dotenv@16.4.7: {}
- dtrace-provider@0.8.8:
- dependencies:
- nan: 2.23.1
- optional: true
-
dunder-proto@1.0.1:
dependencies:
call-bind-apply-helpers: 1.0.2
es-errors: 1.3.0
gopd: 1.2.0
- duplexer2@0.1.4:
- dependencies:
- readable-stream: 2.3.8
- optional: true
-
eastasianwidth@0.2.0: {}
- easy-stack@1.0.1:
- optional: true
-
ee-first@1.1.1: {}
ejs@3.1.10:
@@ -13817,9 +13131,6 @@ snapshots:
emojis-list@3.0.0: {}
- enabled@2.0.0:
- optional: true
-
encodeurl@1.0.2: {}
encodeurl@2.0.0: {}
@@ -13835,7 +13146,7 @@ snapshots:
enhanced-resolve@5.18.3:
dependencies:
graceful-fs: 4.2.11
- tapable: 2.2.2
+ tapable: 2.3.0
enquirer@2.3.6:
dependencies:
@@ -13851,11 +13162,6 @@ snapshots:
envinfo@7.14.0: {}
- errno@0.1.8:
- dependencies:
- prr: 1.0.1
- optional: true
-
error-ex@1.3.2:
dependencies:
is-arrayish: 0.2.1
@@ -14059,9 +13365,9 @@ snapshots:
dependencies:
eslint: 9.29.0(jiti@2.4.2)
- eslint-config-prettier@8.10.2(eslint@9.29.0(jiti@2.6.0)):
+ eslint-config-prettier@8.10.2(eslint@9.29.0(jiti@2.6.1)):
dependencies:
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
eslint-import-resolver-node@0.3.9:
dependencies:
@@ -14081,16 +13387,16 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint-plugin-eslint-comments@3.2.0(eslint@9.29.0(jiti@2.6.0)):
+ eslint-plugin-eslint-comments@3.2.0(eslint@9.29.0(jiti@2.6.1)):
dependencies:
escape-string-regexp: 1.0.5
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
ignore: 5.3.2
- eslint-plugin-ft-flow@2.0.3(@babel/eslint-parser@7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.0)))(eslint@9.29.0(jiti@2.6.0)):
+ eslint-plugin-ft-flow@2.0.3(@babel/eslint-parser@7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.1)))(eslint@9.29.0(jiti@2.6.1)):
dependencies:
- '@babel/eslint-parser': 7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.0))
- eslint: 9.29.0(jiti@2.6.0)
+ '@babel/eslint-parser': 7.28.5(@babel/core@7.27.4)(eslint@9.29.0(jiti@2.6.1))
+ eslint: 9.29.0(jiti@2.6.1)
lodash: 4.17.21
string-natural-compare: 3.0.1
@@ -14123,13 +13429,13 @@ snapshots:
- eslint-import-resolver-webpack
- supports-color
- eslint-plugin-jest@29.1.0(@typescript-eslint/eslint-plugin@8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.0))(jest@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)))(typescript@5.9.3):
+ eslint-plugin-jest@29.1.0(@typescript-eslint/eslint-plugin@8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.1))(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0))(typescript@5.9.3):
dependencies:
- '@typescript-eslint/utils': 8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
- eslint: 9.29.0(jiti@2.6.0)
+ '@typescript-eslint/utils': 8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
+ eslint: 9.29.0(jiti@2.6.1)
optionalDependencies:
- '@typescript-eslint/eslint-plugin': 8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.0))(typescript@5.9.3)
- jest: 30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ '@typescript-eslint/eslint-plugin': 8.46.4(@typescript-eslint/parser@8.46.4(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.29.0(jiti@2.6.1))(typescript@5.9.3)
+ jest: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)
transitivePeerDependencies:
- supports-color
- typescript
@@ -14158,15 +13464,15 @@ snapshots:
dependencies:
eslint: 9.29.0(jiti@2.4.2)
- eslint-plugin-react-hooks@5.2.0(eslint@9.29.0(jiti@2.6.0)):
+ eslint-plugin-react-hooks@5.2.0(eslint@9.29.0(jiti@2.6.1)):
dependencies:
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
eslint-plugin-react-native-globals@0.1.2: {}
- eslint-plugin-react-native@4.1.0(eslint@9.29.0(jiti@2.6.0)):
+ eslint-plugin-react-native@4.1.0(eslint@9.29.0(jiti@2.6.1)):
dependencies:
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
eslint-plugin-react-native-globals: 0.1.2
eslint-plugin-react@7.35.0(eslint@9.29.0(jiti@2.4.2)):
@@ -14191,7 +13497,7 @@ snapshots:
string.prototype.matchall: 4.0.12
string.prototype.repeat: 1.0.0
- eslint-plugin-react@7.35.0(eslint@9.29.0(jiti@2.6.0)):
+ eslint-plugin-react@7.35.0(eslint@9.29.0(jiti@2.6.1)):
dependencies:
array-includes: 3.1.9
array.prototype.findlast: 1.2.5
@@ -14199,7 +13505,7 @@ snapshots:
array.prototype.tosorted: 1.1.4
doctrine: 2.1.0
es-iterator-helpers: 1.2.1
- eslint: 9.29.0(jiti@2.6.0)
+ eslint: 9.29.0(jiti@2.6.1)
estraverse: 5.3.0
hasown: 2.0.2
jsx-ast-utils: 3.3.5
@@ -14271,9 +13577,9 @@ snapshots:
transitivePeerDependencies:
- supports-color
- eslint@9.29.0(jiti@2.6.0):
+ eslint@9.29.0(jiti@2.6.1):
dependencies:
- '@eslint-community/eslint-utils': 4.7.0(eslint@9.29.0(jiti@2.6.0))
+ '@eslint-community/eslint-utils': 4.7.0(eslint@9.29.0(jiti@2.6.1))
'@eslint-community/regexpp': 4.12.1
'@eslint/config-array': 0.20.1
'@eslint/config-helpers': 0.2.3
@@ -14309,7 +13615,7 @@ snapshots:
natural-compare: 1.4.0
optionator: 0.9.4
optionalDependencies:
- jiti: 2.6.0
+ jiti: 2.6.1
transitivePeerDependencies:
- supports-color
@@ -14361,7 +13667,7 @@ snapshots:
dependencies:
'@types/estree-jsx': 1.0.5
astring: 1.9.0
- source-map: 0.7.4
+ source-map: 0.7.6
estree-util-visit@2.0.0:
dependencies:
@@ -14380,9 +13686,6 @@ snapshots:
etag@1.8.1: {}
- event-pubsub@4.3.0:
- optional: true
-
event-target-shim@5.0.1: {}
event-target-shim@6.0.2: {}
@@ -14403,9 +13706,6 @@ snapshots:
signal-exit: 3.0.7
strip-final-newline: 2.0.0
- exeunt@1.1.0:
- optional: true
-
exit-x@0.2.2: {}
expand-tilde@2.0.2:
@@ -14497,13 +13797,24 @@ snapshots:
dependencies:
bser: 2.1.1
+ fbjs-css-vars@1.0.2: {}
+
+ fbjs@3.0.5(encoding@0.1.13):
+ dependencies:
+ cross-fetch: 3.2.0(encoding@0.1.13)
+ fbjs-css-vars: 1.0.2
+ loose-envify: 1.4.0
+ object-assign: 4.1.1
+ promise: 7.3.1
+ setimmediate: 1.0.5
+ ua-parser-js: 1.0.41
+ transitivePeerDependencies:
+ - encoding
+
fdir@6.5.0(picomatch@4.0.3):
optionalDependencies:
picomatch: 4.0.3
- fecha@4.2.3:
- optional: true
-
fflate@0.8.2: {}
figures@3.2.0:
@@ -14599,13 +13910,10 @@ snapshots:
flatted@3.3.3: {}
- flexsearch@0.7.43: {}
+ flexsearch@0.8.212: {}
flow-enums-runtime@0.0.6: {}
- fn.name@1.1.0:
- optional: true
-
follow-redirects@1.15.9(debug@4.4.1):
optionalDependencies:
debug: 4.4.1
@@ -14653,13 +13961,6 @@ snapshots:
jsonfile: 6.1.0
universalify: 2.0.1
- fs-extra@11.3.2:
- dependencies:
- graceful-fs: 4.2.11
- jsonfile: 6.1.0
- universalify: 2.0.1
- optional: true
-
fs-extra@8.1.0:
dependencies:
graceful-fs: 4.2.11
@@ -14675,6 +13976,9 @@ snapshots:
fs.realpath@1.0.0: {}
+ fsevents@2.3.2:
+ optional: true
+
fsevents@2.3.3:
optional: true
@@ -14691,9 +13995,6 @@ snapshots:
functions-have-names@1.2.3: {}
- funpermaproxy@1.1.0:
- optional: true
-
generic-names@4.0.0:
dependencies:
loader-utils: 3.3.1
@@ -14760,15 +14061,6 @@ snapshots:
package-json-from-dist: 1.0.1
path-scurry: 1.11.1
- glob@6.0.4:
- dependencies:
- inflight: 1.0.6
- inherits: 2.0.4
- minimatch: 3.1.2
- once: 1.4.0
- path-is-absolute: 1.0.1
- optional: true
-
glob@7.2.3:
dependencies:
fs.realpath: 1.0.0
@@ -15001,7 +14293,7 @@ snapshots:
dependencies:
parse-passwd: 1.0.0
- hookable@5.5.3: {}
+ hookable@6.0.1: {}
html-encoding-sniffer@3.0.0:
dependencies:
@@ -15111,6 +14403,8 @@ snapshots:
human-signals@2.1.0: {}
+ hyphenate-style-name@1.1.0: {}
+
iconv-lite@0.4.24:
dependencies:
safer-buffer: 2.1.2
@@ -15136,19 +14430,10 @@ snapshots:
ignore@7.0.5: {}
- image-size@0.5.5:
- optional: true
-
image-size@1.2.1:
dependencies:
queue: 6.0.2
- immer@10.1.1:
- optional: true
-
- immutable@5.1.3:
- optional: true
-
import-cwd@3.0.0:
dependencies:
import-from: 3.0.0
@@ -15180,6 +14465,10 @@ snapshots:
inline-style-parser@0.2.4: {}
+ inline-style-prefixer@7.0.1:
+ dependencies:
+ css-in-js-utils: 3.1.0
+
internal-slot@1.1.0:
dependencies:
es-errors: 1.3.0
@@ -15293,9 +14582,6 @@ snapshots:
is-number@7.0.0: {}
- is-plain-obj@2.1.0:
- optional: true
-
is-plain-obj@4.1.0: {}
is-plain-object@3.0.1: {}
@@ -15351,9 +14637,6 @@ snapshots:
call-bound: 1.0.4
get-intrinsic: 1.3.0
- is-what@3.14.1:
- optional: true
-
is-windows@1.0.2: {}
is-wsl@1.1.0: {}
@@ -15362,9 +14645,6 @@ snapshots:
dependencies:
is-docker: 2.2.1
- isarray@1.0.0:
- optional: true
-
isarray@2.0.5: {}
isexe@2.0.0: {}
@@ -15468,34 +14748,15 @@ snapshots:
- babel-plugin-macros
- supports-color
- jest-cli@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)):
- dependencies:
- '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
- '@jest/test-result': 30.2.0
- '@jest/types': 30.2.0
- chalk: 4.1.2
- exit-x: 0.2.2
- import-local: 3.2.0
- jest-config: 30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
- jest-util: 30.2.0
- jest-validate: 30.2.0
- yargs: 17.7.2
- transitivePeerDependencies:
- - '@types/node'
- - babel-plugin-macros
- - esbuild-register
- - supports-color
- - ts-node
-
- jest-cli@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)):
+ jest-cli@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0):
dependencies:
- '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)
'@jest/test-result': 30.2.0
'@jest/types': 30.2.0
chalk: 4.1.2
exit-x: 0.2.2
import-local: 3.2.0
- jest-config: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ jest-config: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)
jest-util: 30.2.0
jest-validate: 30.2.0
yargs: 17.7.2
@@ -15506,7 +14767,7 @@ snapshots:
- supports-color
- ts-node
- jest-config@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)):
+ jest-config@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0):
dependencies:
'@babel/core': 7.27.4
'@jest/get-type': 30.1.0
@@ -15534,12 +14795,11 @@ snapshots:
strip-json-comments: 3.1.1
optionalDependencies:
'@types/node': 18.16.9
- ts-node: 9.1.1(typescript@5.9.3)
transitivePeerDependencies:
- babel-plugin-macros
- supports-color
- jest-config@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)):
+ jest-config@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0):
dependencies:
'@babel/core': 7.27.4
'@jest/get-type': 30.1.0
@@ -15567,7 +14827,6 @@ snapshots:
strip-json-comments: 3.1.1
optionalDependencies:
'@types/node': 20.19.25
- ts-node: 9.1.1(typescript@5.9.3)
transitivePeerDependencies:
- babel-plugin-macros
- supports-color
@@ -15591,25 +14850,6 @@ snapshots:
jest-util: 30.2.0
pretty-format: 30.2.0
- jest-environment-emit@1.2.0(@jest/environment@30.2.0)(@jest/types@30.2.0)(jest-environment-node@30.2.0)(jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))):
- dependencies:
- bunyamin: 1.6.3(bunyan@2.0.5)
- bunyan: 2.0.5
- bunyan-debug-stream: 3.1.1(bunyan@2.0.5)
- funpermaproxy: 1.1.0
- lodash.merge: 4.6.2
- node-ipc: 9.2.1
- strip-ansi: 6.0.1
- tslib: 2.8.1
- optionalDependencies:
- '@jest/environment': 30.2.0
- '@jest/types': 30.2.0
- jest: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
- jest-environment-node: 30.2.0
- transitivePeerDependencies:
- - '@types/bunyan'
- optional: true
-
jest-environment-node@29.7.0:
dependencies:
'@jest/environment': 29.7.0
@@ -15884,36 +15124,22 @@ snapshots:
merge-stream: 2.0.0
supports-color: 8.1.1
- jest@30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)):
- dependencies:
- '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
- '@jest/types': 30.2.0
- import-local: 3.2.0
- jest-cli: 30.2.0(@types/node@18.16.9)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
- transitivePeerDependencies:
- - '@types/node'
- - babel-plugin-macros
- - esbuild-register
- - supports-color
- - ts-node
-
- jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3)):
+ jest@30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0):
dependencies:
- '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ '@jest/core': 30.2.0(babel-plugin-macros@3.1.0)
'@jest/types': 30.2.0
import-local: 3.2.0
- jest-cli: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)(ts-node@9.1.1(typescript@5.9.3))
+ jest-cli: 30.2.0(@types/node@20.19.25)(babel-plugin-macros@3.1.0)
transitivePeerDependencies:
- '@types/node'
- babel-plugin-macros
- esbuild-register
- supports-color
- ts-node
- optional: true
jiti@2.4.2: {}
- jiti@2.6.0: {}
+ jiti@2.6.1: {}
joi@17.13.3:
dependencies:
@@ -15925,14 +15151,6 @@ snapshots:
joycon@3.1.1: {}
- js-message@1.0.7:
- optional: true
-
- js-queue@2.0.2:
- dependencies:
- easy-stack: 1.0.1
- optional: true
-
js-tokens@4.0.0: {}
js-tokens@9.0.1: {}
@@ -15984,9 +15202,6 @@ snapshots:
json-buffer@3.0.1: {}
- json-cycle@1.5.0:
- optional: true
-
json-parse-even-better-errors@2.3.1: {}
json-schema-traverse@0.4.1: {}
@@ -16062,9 +15277,6 @@ snapshots:
type-is: 2.0.1
vary: 1.1.2
- kuler@2.0.0:
- optional: true
-
language-subtag-registry@0.3.23: {}
language-tags@1.0.9:
@@ -16078,21 +15290,6 @@ snapshots:
leac@0.6.0: {}
- less@4.1.3:
- dependencies:
- copy-anything: 2.0.6
- parse-node-version: 1.0.1
- tslib: 2.8.1
- optionalDependencies:
- errno: 0.1.8
- graceful-fs: 4.2.11
- image-size: 0.5.5
- make-dir: 2.1.0
- mime: 1.6.0
- needle: 3.3.1
- source-map: 0.6.1
- optional: true
-
leven@3.1.0: {}
levn@0.4.1:
@@ -16107,52 +15304,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- lightningcss-darwin-arm64@1.27.0:
- optional: true
-
- lightningcss-darwin-x64@1.27.0:
- optional: true
-
- lightningcss-freebsd-x64@1.27.0:
- optional: true
-
- lightningcss-linux-arm-gnueabihf@1.27.0:
- optional: true
-
- lightningcss-linux-arm64-gnu@1.27.0:
- optional: true
-
- lightningcss-linux-arm64-musl@1.27.0:
- optional: true
-
- lightningcss-linux-x64-gnu@1.27.0:
- optional: true
-
- lightningcss-linux-x64-musl@1.27.0:
- optional: true
-
- lightningcss-win32-arm64-msvc@1.27.0:
- optional: true
-
- lightningcss-win32-x64-msvc@1.27.0:
- optional: true
-
- lightningcss@1.27.0:
- dependencies:
- detect-libc: 1.0.3
- optionalDependencies:
- lightningcss-darwin-arm64: 1.27.0
- lightningcss-darwin-x64: 1.27.0
- lightningcss-freebsd-x64: 1.27.0
- lightningcss-linux-arm-gnueabihf: 1.27.0
- lightningcss-linux-arm64-gnu: 1.27.0
- lightningcss-linux-arm64-musl: 1.27.0
- lightningcss-linux-x64-gnu: 1.27.0
- lightningcss-linux-x64-musl: 1.27.0
- lightningcss-win32-arm64-msvc: 1.27.0
- lightningcss-win32-x64-msvc: 1.27.0
- optional: true
-
lilconfig@2.1.0: {}
lilconfig@3.1.3: {}
@@ -16186,7 +15337,7 @@ snapshots:
dependencies:
p-locate: 5.0.0
- lodash-es@4.17.21: {}
+ lodash-es@4.17.23: {}
lodash.camelcase@4.3.0: {}
@@ -16219,16 +15370,6 @@ snapshots:
transitivePeerDependencies:
- supports-color
- logform@2.7.0:
- dependencies:
- '@colors/colors': 1.6.0
- '@types/triple-beam': 1.3.5
- fecha: 4.2.3
- ms: 2.1.3
- safe-stable-stringify: 2.5.0
- triple-beam: 1.4.1
- optional: true
-
logkitty@0.7.1:
dependencies:
ansi-fragments: 0.2.1
@@ -16267,12 +15408,6 @@ snapshots:
'@babel/types': 7.27.6
source-map-js: 1.2.1
- make-dir@2.1.0:
- dependencies:
- pify: 4.0.1
- semver: 5.7.2
- optional: true
-
make-dir@3.1.0:
dependencies:
semver: 6.3.1
@@ -16281,9 +15416,6 @@ snapshots:
dependencies:
semver: 7.7.2
- make-error@1.3.6:
- optional: true
-
makeerror@1.0.12:
dependencies:
tmpl: 1.0.5
@@ -16473,6 +15605,8 @@ snapshots:
memoize-one@5.2.1: {}
+ memoize-one@6.0.0: {}
+
merge-descriptors@1.0.3: {}
merge-stream@2.0.0: {}
@@ -16973,11 +16107,6 @@ snapshots:
minipass@7.1.2: {}
- mkdirp@0.5.6:
- dependencies:
- minimist: 1.2.8
- optional: true
-
mkdirp@1.0.4: {}
mlly@1.8.0:
@@ -16987,40 +16116,18 @@ snapshots:
pkg-types: 1.3.1
ufo: 1.6.1
- moment@2.30.1:
- optional: true
-
mrmime@2.0.1: {}
ms@2.0.0: {}
ms@2.1.3: {}
- multi-sort-stream@1.0.4:
- optional: true
-
- multipipe@4.0.0:
- dependencies:
- duplexer2: 0.1.4
- object-assign: 4.1.1
- optional: true
-
- mv@2.1.1:
- dependencies:
- mkdirp: 0.5.6
- ncp: 2.0.0
- rimraf: 2.4.5
- optional: true
-
mz@2.7.0:
dependencies:
any-promise: 1.3.0
object-assign: 4.1.1
thenify-all: 1.6.0
- nan@2.23.1:
- optional: true
-
nano-spawn@1.0.2: {}
nanoid@3.3.11: {}
@@ -17029,15 +16136,6 @@ snapshots:
natural-compare@1.4.0: {}
- ncp@2.0.0:
- optional: true
-
- needle@3.3.1:
- dependencies:
- iconv-lite: 0.6.3
- sax: 1.4.1
- optional: true
-
negotiator@0.6.3: {}
negotiator@0.6.4: {}
@@ -17053,9 +16151,6 @@ snapshots:
nocache@4.0.0: {}
- node-addon-api@7.1.1:
- optional: true
-
node-fetch@2.7.0(encoding@0.1.13):
dependencies:
whatwg-url: 5.0.0
@@ -17064,13 +16159,6 @@ snapshots:
node-int64@0.4.0: {}
- node-ipc@9.2.1:
- dependencies:
- event-pubsub: 4.3.0
- js-message: 1.0.7
- js-queue: 2.0.2
- optional: true
-
node-machine-id@1.1.12: {}
node-releases@2.0.19: {}
@@ -17218,18 +16306,13 @@ snapshots:
dependencies:
wrappy: 1.0.2
- one-time@1.0.0:
- dependencies:
- fn.name: 1.1.0
- optional: true
-
onetime@5.1.2:
dependencies:
mimic-fn: 2.1.0
oniguruma-parser@0.12.1: {}
- oniguruma-to-es@4.3.3:
+ oniguruma-to-es@4.3.4:
dependencies:
oniguruma-parser: 0.12.1
regex: 6.0.1
@@ -17350,9 +16433,6 @@ snapshots:
json-parse-even-better-errors: 2.3.1
lines-and-columns: 1.2.4
- parse-node-version@1.0.1:
- optional: true
-
parse-passwd@1.0.0: {}
parse5@7.3.0:
@@ -17399,9 +16479,6 @@ snapshots:
picomatch@4.0.3: {}
- pify@4.0.1:
- optional: true
-
pify@5.0.0: {}
pirates@4.0.7: {}
@@ -17424,6 +16501,14 @@ snapshots:
dependencies:
find-up: 3.0.0
+ playwright-core@1.57.0: {}
+
+ playwright@1.57.0:
+ dependencies:
+ playwright-core: 1.57.0
+ optionalDependencies:
+ fsevents: 2.3.2
+
pngjs@7.0.0: {}
portfinder@1.0.37:
@@ -17471,19 +16556,18 @@ snapshots:
dependencies:
postcss: 8.5.6
- postcss-load-config@3.1.4(postcss@8.5.6)(ts-node@9.1.1(typescript@5.9.3)):
+ postcss-load-config@3.1.4(postcss@8.5.6):
dependencies:
lilconfig: 2.1.0
yaml: 1.10.2
optionalDependencies:
postcss: 8.5.6
- ts-node: 9.1.1(typescript@5.9.3)
- postcss-load-config@6.0.1(jiti@2.6.0)(postcss@8.5.6)(yaml@2.8.0):
+ postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.6)(yaml@2.8.0):
dependencies:
lilconfig: 3.1.3
optionalDependencies:
- jiti: 2.6.0
+ jiti: 2.6.1
postcss: 8.5.6
yaml: 2.8.0
@@ -17666,17 +16750,15 @@ snapshots:
ansi-styles: 5.2.0
react-is: 18.3.1
- process-nextick-args@2.0.1:
- optional: true
-
promise.series@0.2.0: {}
- promise@8.3.0:
+ promise@7.3.1:
dependencies:
asap: 2.0.6
- promisify-child-process@4.1.2:
- optional: true
+ promise@8.3.0:
+ dependencies:
+ asap: 2.0.6
prompts@2.4.2:
dependencies:
@@ -17689,13 +16771,6 @@ snapshots:
object-assign: 4.1.1
react-is: 16.13.1
- proper-lockfile@3.2.0:
- dependencies:
- graceful-fs: 4.2.11
- retry: 0.12.0
- signal-exit: 3.0.7
- optional: true
-
property-information@6.5.0: {}
property-information@7.1.0: {}
@@ -17707,9 +16782,6 @@ snapshots:
proxy-from-env@1.1.0: {}
- prr@1.0.1:
- optional: true
-
psl@1.15.0:
dependencies:
punycode: 2.3.1
@@ -17757,10 +16829,10 @@ snapshots:
- bufferutil
- utf-8-validate
- react-dom@19.1.1(react@19.1.1):
+ react-dom@19.2.3(react@19.2.3):
dependencies:
- react: 19.1.1
- scheduler: 0.26.0
+ react: 19.2.3
+ scheduler: 0.27.0
react-is@16.13.1: {}
@@ -17768,16 +16840,31 @@ snapshots:
react-lazy-with-preload@2.2.1: {}
- react-native@0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1):
+ react-native-web@0.21.2(encoding@0.1.13)(react-dom@19.2.3(react@19.2.3))(react@19.2.3):
+ dependencies:
+ '@babel/runtime': 7.27.6
+ '@react-native/normalize-colors': 0.74.89
+ fbjs: 3.0.5(encoding@0.1.13)
+ inline-style-prefixer: 7.0.1
+ memoize-one: 6.0.0
+ nullthrows: 1.1.1
+ postcss-value-parser: 4.2.0
+ react: 19.2.3
+ react-dom: 19.2.3(react@19.2.3)
+ styleq: 0.1.3
+ transitivePeerDependencies:
+ - encoding
+
+ react-native@0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)(@types/react@19.1.13)(react@19.2.3):
dependencies:
'@jest/create-cache-key-function': 29.7.0
'@react-native/assets-registry': 0.82.1
- '@react-native/codegen': 0.82.1(@babel/core@7.27.4)
- '@react-native/community-cli-plugin': 0.82.1(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))
+ '@react-native/codegen': 0.82.1
+ '@react-native/community-cli-plugin': 0.82.1(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)
'@react-native/gradle-plugin': 0.82.1
'@react-native/js-polyfills': 0.82.1
'@react-native/normalize-colors': 0.82.1
- '@react-native/virtualized-lists': 0.82.1(@types/react@19.1.13)(react-native@0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1(@babel/core@7.27.4))(@types/react@19.1.13)(react@19.1.1))(react@19.1.1)
+ '@react-native/virtualized-lists': 0.82.1(@types/react@19.1.13)(react-native@0.82.1(@babel/core@7.27.4)(@react-native-community/cli@20.0.0(typescript@5.9.3))(@react-native/metro-config@0.82.1)(@types/react@19.1.13)(react@19.2.3))(react@19.2.3)
abort-controller: 3.0.0
anser: 1.4.10
ansi-regex: 5.0.1
@@ -17796,7 +16883,7 @@ snapshots:
nullthrows: 1.1.1
pretty-format: 29.7.0
promise: 8.3.0
- react: 19.1.1
+ react: 19.2.3
react-devtools-core: 6.1.5
react-refresh: 0.14.2
regenerator-runtime: 0.13.11
@@ -17816,34 +16903,32 @@ snapshots:
- supports-color
- utf-8-validate
+ react-reconciler@0.33.0(react@19.2.3):
+ dependencies:
+ react: 19.2.3
+ scheduler: 0.27.0
+
react-refresh@0.14.2: {}
react-refresh@0.17.0: {}
- react-router-dom@6.30.1(react-dom@19.1.1(react@19.1.1))(react@19.1.1):
- dependencies:
- '@remix-run/router': 1.23.0
- react: 19.1.1
- react-dom: 19.1.1(react@19.1.1)
- react-router: 6.30.1(react@19.1.1)
+ react-refresh@0.18.0: {}
- react-router@6.30.1(react@19.1.1):
+ react-router-dom@7.12.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3):
dependencies:
- '@remix-run/router': 1.23.0
- react: 19.1.1
+ react: 19.2.3
+ react-dom: 19.2.3(react@19.2.3)
+ react-router: 7.12.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3)
- react@19.1.1: {}
-
- readable-stream@2.3.8:
+ react-router@7.12.0(react-dom@19.2.3(react@19.2.3))(react@19.2.3):
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
- optional: true
+ cookie: 1.1.1
+ react: 19.2.3
+ set-cookie-parser: 2.7.2
+ optionalDependencies:
+ react-dom: 19.2.3(react@19.2.3)
+
+ react@19.2.3: {}
readable-stream@3.6.2:
dependencies:
@@ -18051,18 +17136,10 @@ snapshots:
onetime: 5.1.2
signal-exit: 3.0.7
- retry@0.12.0:
- optional: true
-
reusify@1.1.0: {}
rfdc@1.4.1: {}
- rimraf@2.4.5:
- dependencies:
- glob: 6.0.4
- optional: true
-
rimraf@3.0.2:
dependencies:
glob: 7.2.3
@@ -18075,7 +17152,7 @@ snapshots:
globby: 10.0.1
is-plain-object: 3.0.1
- rollup-plugin-postcss@4.0.2(postcss@8.5.6)(ts-node@9.1.1(typescript@5.9.3)):
+ rollup-plugin-postcss@4.0.2(postcss@8.5.6):
dependencies:
chalk: 4.1.2
concat-with-sourcemaps: 1.1.0
@@ -18084,7 +17161,7 @@ snapshots:
p-queue: 6.6.2
pify: 5.0.0
postcss: 8.5.6
- postcss-load-config: 3.1.4(postcss@8.5.6)(ts-node@9.1.1(typescript@5.9.3))
+ postcss-load-config: 3.1.4(postcss@8.5.6)
postcss-modules: 4.3.1(postcss@8.5.6)
promise.series: 0.2.0
resolve: 1.22.10
@@ -18136,9 +17213,9 @@ snapshots:
rrweb-cssom@0.6.0: {}
- rsbuild-plugin-open-graph@1.1.0(@rsbuild/core@1.5.11):
+ rsbuild-plugin-open-graph@1.1.0(@rsbuild/core@1.6.15):
optionalDependencies:
- '@rsbuild/core': 1.5.11
+ '@rsbuild/core': 1.6.15
rslog@1.2.6: {}
@@ -18146,11 +17223,6 @@ snapshots:
dependencies:
queue-microtask: 1.2.3
- rxjs@7.8.2:
- dependencies:
- tslib: 2.8.1
- optional: true
-
safe-array-concat@1.1.3:
dependencies:
call-bind: 1.0.8
@@ -18165,9 +17237,6 @@ snapshots:
safe-identifier@0.4.2: {}
- safe-json-stringify@1.2.0:
- optional: true
-
safe-push-apply@1.0.0:
dependencies:
es-errors: 1.3.0
@@ -18179,111 +17248,16 @@ snapshots:
es-errors: 1.3.0
is-regex: 1.2.1
- safe-stable-stringify@2.5.0:
- optional: true
-
safer-buffer@2.1.2: {}
- sanitize-filename@1.6.3:
- dependencies:
- truncate-utf8-bytes: 1.0.2
- optional: true
-
- sass-embedded-android-arm64@1.89.2:
- optional: true
-
- sass-embedded-android-arm@1.89.2:
- optional: true
-
- sass-embedded-android-riscv64@1.89.2:
- optional: true
-
- sass-embedded-android-x64@1.89.2:
- optional: true
-
- sass-embedded-darwin-arm64@1.89.2:
- optional: true
-
- sass-embedded-darwin-x64@1.89.2:
- optional: true
-
- sass-embedded-linux-arm64@1.89.2:
- optional: true
-
- sass-embedded-linux-arm@1.89.2:
- optional: true
-
- sass-embedded-linux-musl-arm64@1.89.2:
- optional: true
-
- sass-embedded-linux-musl-arm@1.89.2:
- optional: true
-
- sass-embedded-linux-musl-riscv64@1.89.2:
- optional: true
-
- sass-embedded-linux-musl-x64@1.89.2:
- optional: true
-
- sass-embedded-linux-riscv64@1.89.2:
- optional: true
-
- sass-embedded-linux-x64@1.89.2:
- optional: true
-
- sass-embedded-win32-arm64@1.89.2:
- optional: true
-
- sass-embedded-win32-x64@1.89.2:
- optional: true
-
- sass-embedded@1.89.2:
- dependencies:
- '@bufbuild/protobuf': 2.6.0
- buffer-builder: 0.2.0
- colorjs.io: 0.5.2
- immutable: 5.1.3
- rxjs: 7.8.2
- supports-color: 8.1.1
- sync-child-process: 1.0.2
- varint: 6.0.0
- optionalDependencies:
- sass-embedded-android-arm: 1.89.2
- sass-embedded-android-arm64: 1.89.2
- sass-embedded-android-riscv64: 1.89.2
- sass-embedded-android-x64: 1.89.2
- sass-embedded-darwin-arm64: 1.89.2
- sass-embedded-darwin-x64: 1.89.2
- sass-embedded-linux-arm: 1.89.2
- sass-embedded-linux-arm64: 1.89.2
- sass-embedded-linux-musl-arm: 1.89.2
- sass-embedded-linux-musl-arm64: 1.89.2
- sass-embedded-linux-musl-riscv64: 1.89.2
- sass-embedded-linux-musl-x64: 1.89.2
- sass-embedded-linux-riscv64: 1.89.2
- sass-embedded-linux-x64: 1.89.2
- sass-embedded-win32-arm64: 1.89.2
- sass-embedded-win32-x64: 1.89.2
- optional: true
-
- sass@1.89.2:
- dependencies:
- chokidar: 4.0.3
- immutable: 5.1.3
- source-map-js: 1.2.1
- optionalDependencies:
- '@parcel/watcher': 2.5.1
- optional: true
-
- sax@1.4.1:
- optional: true
-
saxes@6.0.0:
dependencies:
xmlchars: 2.2.0
scheduler@0.26.0: {}
+ scheduler@0.27.0: {}
+
schema-utils@3.3.0:
dependencies:
'@types/json-schema': 7.0.15
@@ -18304,6 +17278,10 @@ snapshots:
ajv-formats: 2.1.1(ajv@8.17.1)
ajv-keywords: 5.1.0(ajv@8.17.1)
+ scroll-into-view-if-needed@3.1.0:
+ dependencies:
+ compute-scroll-into-view: 3.1.1
+
section-matter@1.0.0:
dependencies:
extend-shallow: 2.0.1
@@ -18315,9 +17293,6 @@ snapshots:
dependencies:
parseley: 0.12.1
- semver@5.7.2:
- optional: true
-
semver@6.3.1: {}
semver@7.6.3: {}
@@ -18344,11 +17319,6 @@ snapshots:
serialize-error@2.1.0: {}
- serialize-error@8.1.0:
- dependencies:
- type-fest: 0.20.2
- optional: true
-
serialize-javascript@6.0.2:
dependencies:
randombytes: 2.1.0
@@ -18364,6 +17334,8 @@ snapshots:
set-blocking@2.0.0: {}
+ set-cookie-parser@2.7.2: {}
+
set-function-length@1.2.2:
dependencies:
define-data-property: 1.1.4
@@ -18386,6 +17358,8 @@ snapshots:
es-errors: 1.3.0
es-object-atoms: 1.1.1
+ setimmediate@1.0.5: {}
+
setprototypeof@1.2.0: {}
shebang-command@2.0.0:
@@ -18396,14 +17370,14 @@ snapshots:
shell-quote@1.8.3: {}
- shiki@3.13.0:
+ shiki@3.21.0:
dependencies:
- '@shikijs/core': 3.13.0
- '@shikijs/engine-javascript': 3.13.0
- '@shikijs/engine-oniguruma': 3.13.0
- '@shikijs/langs': 3.13.0
- '@shikijs/themes': 3.13.0
- '@shikijs/types': 3.13.0
+ '@shikijs/core': 3.21.0
+ '@shikijs/engine-javascript': 3.21.0
+ '@shikijs/engine-oniguruma': 3.21.0
+ '@shikijs/langs': 3.21.0
+ '@shikijs/themes': 3.21.0
+ '@shikijs/types': 3.21.0
'@shikijs/vscode-textmate': 10.0.2
'@types/hast': 3.0.4
@@ -18485,8 +17459,6 @@ snapshots:
source-map@0.6.1: {}
- source-map@0.7.4: {}
-
source-map@0.7.6: {}
space-separated-tokens@2.0.2: {}
@@ -18497,9 +17469,6 @@ snapshots:
stable@0.1.8: {}
- stack-trace@0.0.10:
- optional: true
-
stack-utils@2.0.6:
dependencies:
escape-string-regexp: 2.0.0
@@ -18523,14 +17492,6 @@ snapshots:
es-errors: 1.3.0
internal-slot: 1.1.0
- stream-chain@2.2.5:
- optional: true
-
- stream-json@1.9.1:
- dependencies:
- stream-chain: 2.2.5
- optional: true
-
streamroller@3.1.5:
dependencies:
date-format: 4.0.14
@@ -18610,11 +17571,6 @@ snapshots:
define-properties: 1.2.1
es-object-atoms: 1.1.1
- string_decoder@1.1.1:
- dependencies:
- safe-buffer: 5.1.2
- optional: true
-
string_decoder@1.3.0:
dependencies:
safe-buffer: 5.2.1
@@ -18668,16 +17624,7 @@ snapshots:
postcss: 8.5.6
postcss-selector-parser: 6.1.2
- stylus@0.64.0:
- dependencies:
- '@adobe/css-tools': 4.3.3
- debug: 4.4.1
- glob: 10.5.0
- sax: 1.4.1
- source-map: 0.7.6
- transitivePeerDependencies:
- - supports-color
- optional: true
+ styleq@0.1.3: {}
sucrase@3.35.0:
dependencies:
@@ -18723,20 +17670,10 @@ snapshots:
symbol-tree@3.2.4: {}
- sync-child-process@1.0.2:
- dependencies:
- sync-message-port: 1.1.3
- optional: true
-
- sync-message-port@1.1.3:
- optional: true
-
synckit@0.11.11:
dependencies:
'@pkgr/core': 0.2.9
- tapable@2.2.2: {}
-
tapable@2.3.0: {}
tar-stream@2.2.0:
@@ -18747,11 +17684,6 @@ snapshots:
inherits: 2.0.4
readable-stream: 3.6.2
- telnet-client@1.2.8:
- dependencies:
- bluebird: 3.7.2
- optional: true
-
terser-webpack-plugin@5.3.14(@swc/core@1.5.29(@swc/helpers@0.5.17))(webpack@5.102.1(@swc/core@1.5.29(@swc/helpers@0.5.17))):
dependencies:
'@jridgewell/trace-mapping': 0.3.25
@@ -18782,9 +17714,6 @@ snapshots:
glob: 10.5.0
minimatch: 9.0.5
- text-hex@1.0.0:
- optional: true
-
thenify-all@1.6.0:
dependencies:
thenify: 3.3.1
@@ -18839,42 +17768,18 @@ snapshots:
dependencies:
punycode: 2.3.1
- trace-event-lib@1.4.1:
- dependencies:
- browser-process-hrtime: 1.0.0
- optional: true
-
tree-kill@1.2.2: {}
trim-lines@3.0.1: {}
- triple-beam@1.4.1:
- optional: true
-
trough@2.2.0: {}
- truncate-utf8-bytes@1.0.2:
- dependencies:
- utf8-byte-length: 1.0.5
- optional: true
-
ts-api-utils@2.1.0(typescript@5.9.3):
dependencies:
typescript: 5.9.3
ts-interface-checker@0.1.13: {}
- ts-node@9.1.1(typescript@5.9.3):
- dependencies:
- arg: 4.1.3
- create-require: 1.1.1
- diff: 4.0.2
- make-error: 1.3.6
- source-map-support: 0.5.21
- typescript: 5.9.3
- yn: 3.1.1
- optional: true
-
tsconfig-paths@3.15.0:
dependencies:
'@types/json5': 0.0.29
@@ -18892,7 +17797,7 @@ snapshots:
tsscmp@1.0.6: {}
- tsup@8.5.1(@swc/core@1.5.29(@swc/helpers@0.5.17))(jiti@2.6.0)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.0):
+ tsup@8.5.1(@swc/core@1.5.29(@swc/helpers@0.5.17))(jiti@2.6.1)(postcss@8.5.6)(typescript@5.9.3)(yaml@2.8.0):
dependencies:
bundle-require: 5.1.0(esbuild@0.27.0)
cac: 6.7.14
@@ -18903,7 +17808,7 @@ snapshots:
fix-dts-default-cjs-exports: 1.0.1
joycon: 3.1.1
picocolors: 1.1.1
- postcss-load-config: 6.0.1(jiti@2.6.0)(postcss@8.5.6)(yaml@2.8.0)
+ postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.6)(yaml@2.8.0)
resolve-from: 5.0.0
rollup: 4.43.0
source-map: 0.7.6
@@ -18927,9 +17832,6 @@ snapshots:
type-detect@4.0.8: {}
- type-fest@0.20.2:
- optional: true
-
type-fest@0.21.3: {}
type-fest@0.7.1: {}
@@ -18991,6 +17893,8 @@ snapshots:
typescript@5.9.3: {}
+ ua-parser-js@1.0.41: {}
+
ufo@1.6.1: {}
unbox-primitive@1.1.0:
@@ -19002,9 +17906,9 @@ snapshots:
undici-types@6.21.0: {}
- unhead@2.0.17:
+ unhead@2.1.2:
dependencies:
- hookable: 5.5.3
+ hookable: 6.0.1
unicode-canonical-property-names-ecmascript@2.0.1: {}
@@ -19119,12 +18023,9 @@ snapshots:
querystringify: 2.2.0
requires-port: 1.0.0
- use-sync-external-store@1.6.0(react@19.1.1):
+ use-sync-external-store@1.6.0(react@19.2.3):
dependencies:
- react: 19.1.1
-
- utf8-byte-length@1.0.5:
- optional: true
+ react: 19.2.3
util-deprecate@1.0.2: {}
@@ -19136,9 +18037,6 @@ snapshots:
'@types/istanbul-lib-coverage': 2.0.6
convert-source-map: 2.0.0
- varint@6.0.0:
- optional: true
-
vary@1.1.2: {}
vfile-location@5.0.3:
@@ -19156,13 +18054,13 @@ snapshots:
'@types/unist': 3.0.3
vfile-message: 4.0.3
- vite-node@3.2.4(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0):
+ vite-node@3.2.4(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0):
dependencies:
cac: 6.7.14
debug: 4.4.1
es-module-lexer: 1.7.0
pathe: 2.0.3
- vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0)
transitivePeerDependencies:
- '@types/node'
- jiti
@@ -19177,7 +18075,7 @@ snapshots:
- tsx
- yaml
- vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0):
+ vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0):
dependencies:
esbuild: 0.25.5
fdir: 6.5.0(picomatch@4.0.3)
@@ -19189,19 +18087,14 @@ snapshots:
'@types/node': 20.19.25
fsevents: 2.3.3
jiti: 2.4.2
- less: 4.1.3
- lightningcss: 1.27.0
- sass: 1.89.2
- sass-embedded: 1.89.2
- stylus: 0.64.0
terser: 5.42.0
yaml: 2.8.0
- vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0):
+ vitest@3.2.4(@types/debug@4.1.12)(@types/node@20.19.25)(@vitest/ui@3.2.4)(jiti@2.4.2)(jsdom@22.1.0)(terser@5.42.0)(yaml@2.8.0):
dependencies:
'@types/chai': 5.2.3
'@vitest/expect': 3.2.4
- '@vitest/mocker': 3.2.4(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0))
+ '@vitest/mocker': 3.2.4(vite@7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0))
'@vitest/pretty-format': 3.2.4
'@vitest/runner': 3.2.4
'@vitest/snapshot': 3.2.4
@@ -19219,8 +18112,8 @@ snapshots:
tinyglobby: 0.2.15
tinypool: 1.1.1
tinyrainbow: 2.0.0
- vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
- vite-node: 3.2.4(@types/node@20.19.25)(jiti@2.4.2)(less@4.1.3)(lightningcss@1.27.0)(sass-embedded@1.89.2)(sass@1.89.2)(stylus@0.64.0)(terser@5.42.0)(yaml@2.8.0)
+ vite: 7.2.2(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0)
+ vite-node: 3.2.4(@types/node@20.19.25)(jiti@2.4.2)(terser@5.42.0)(yaml@2.8.0)
why-is-node-running: 2.3.0
optionalDependencies:
'@types/debug': 4.1.12
@@ -19374,28 +18267,6 @@ snapshots:
siginfo: 2.0.0
stackback: 0.0.2
- winston-transport@4.9.0:
- dependencies:
- logform: 2.7.0
- readable-stream: 3.6.2
- triple-beam: 1.4.1
- optional: true
-
- winston@3.18.3:
- dependencies:
- '@colors/colors': 1.6.0
- '@dabh/diagnostics': 2.0.8
- async: 3.2.6
- is-stream: 2.0.1
- logform: 2.7.0
- one-time: 1.0.0
- readable-stream: 3.6.2
- safe-stable-stringify: 2.5.0
- stack-trace: 0.0.10
- triple-beam: 1.4.1
- winston-transport: 4.9.0
- optional: true
-
word-wrap@1.2.5: {}
wrap-ansi@6.2.0:
@@ -19459,14 +18330,6 @@ snapshots:
yargs-parser@21.1.1: {}
- yargs-unparser@2.0.0:
- dependencies:
- camelcase: 6.3.0
- decamelize: 4.0.0
- flat: 5.0.2
- is-plain-obj: 2.1.0
- optional: true
-
yargs@15.4.1:
dependencies:
cliui: 6.0.0
@@ -19491,20 +18354,16 @@ snapshots:
y18n: 5.0.8
yargs-parser: 21.1.1
- yn@3.1.1:
- optional: true
-
yocto-queue@0.1.0: {}
yocto-queue@1.2.1: {}
zod@3.25.67: {}
- zustand@5.0.5(@types/react@19.1.13)(immer@10.1.1)(react@19.1.1)(use-sync-external-store@1.6.0(react@19.1.1)):
+ zustand@5.0.5(@types/react@19.1.13)(react@19.2.3)(use-sync-external-store@1.6.0(react@19.2.3)):
optionalDependencies:
'@types/react': 19.1.13
- immer: 10.1.1
- react: 19.1.1
- use-sync-external-store: 1.6.0(react@19.1.1)
+ react: 19.2.3
+ use-sync-external-store: 1.6.0(react@19.2.3)
zwitch@2.0.4: {}
diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml
index 63e305e..01e1987 100644
--- a/pnpm-workspace.yaml
+++ b/pnpm-workspace.yaml
@@ -18,3 +18,4 @@ onlyBuiltDependencies:
- sharp
- sqlite3
- unrs-resolver
+autoInstallPeers: false
\ No newline at end of file
diff --git a/tsconfig.json b/tsconfig.json
index c3aa2fe..25580ff 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -48,6 +48,9 @@
{
"path": "./packages/platform-vega"
},
+ {
+ "path": "./packages/platform-web"
+ },
{
"path": "./packages/bundler-metro"
},
diff --git a/website/package.json b/website/package.json
index cb206de..d245b1a 100644
--- a/website/package.json
+++ b/website/package.json
@@ -8,9 +8,9 @@
"preview": "rspress preview"
},
"dependencies": {
- "@callstack/rspress-preset": "^0.4.1",
- "@callstack/rspress-theme": "^0.4.1",
- "@rspress/core": "2.0.0-beta.32"
+ "@callstack/rspress-preset": "0.5.1",
+ "@callstack/rspress-theme": "0.5.1",
+ "@rspress/core": "2.0.0-rc.4"
},
"devDependencies": {
"@types/node": "^18.11.17",
diff --git a/website/src/docs/getting-started/configuration.mdx b/website/src/docs/getting-started/configuration.mdx
index 6ccbc24..47404e2 100644
--- a/website/src/docs/getting-started/configuration.mdx
+++ b/website/src/docs/getting-started/configuration.mdx
@@ -194,6 +194,40 @@ vegaPlatform({
});
```
+### Web Runner
+
+:::danger Experimental
+Web support is currently an **experimental feature**. It may not work in all scenarios and the API is subject to change. Use with caution.
+:::
+
+Install the Web platform package:
+
+
+
+**Usage:**
+
+```javascript
+import {
+ webPlatform,
+ chromium,
+ chrome,
+ firefox,
+ webkit,
+} from '@react-native-harness/platform-web';
+
+// Using Chromium (headless by default)
+webPlatform({
+ name: 'web',
+ browser: chromium('http://localhost:3000'),
+});
+
+// Using a specific browser channel or non-headless mode
+webPlatform({
+ name: 'chrome',
+ browser: chrome('http://localhost:3000', { headless: false }),
+});
+```
+
## Default Runner
When you have multiple runners configured, you can specify which one to use by default when no runner is explicitly specified in the CLI command.
diff --git a/website/src/docs/getting-started/quick-start.mdx b/website/src/docs/getting-started/quick-start.mdx
index 9ed9310..9f88efb 100644
--- a/website/src/docs/getting-started/quick-start.mdx
+++ b/website/src/docs/getting-started/quick-start.mdx
@@ -22,7 +22,7 @@ Install React Native Harness as a development dependency:
First, install the platform packages you need:
-
+
### 2. Create Harness Configuration
@@ -37,6 +37,7 @@ import {
applePlatform,
appleSimulator,
} from '@react-native-harness/platform-apple';
+import { webPlatform, chromium } from '@react-native-harness/platform-web';
const config = {
entryPoint: './index.js',
@@ -53,6 +54,10 @@ const config = {
device: appleSimulator('iPhone 16 Pro', '18.0'), // Your iOS simulator name and version
bundleId: 'com.yourapp', // Your iOS bundle ID
}),
+ webPlatform({
+ name: 'web',
+ browser: chromium('http://localhost:3000'), // Your web app URL
+ }),
],
};
@@ -229,6 +234,8 @@ Now you're ready to run your tests! Use the `react-native-harness` command with
+
+
:::tip Default Runner
If you don't provide the `--harnessRunner` flag, React Native Harness will use the runner specified in the `defaultRunner` property of your `rn-harness.config.mjs` file. If no `defaultRunner` is configured, you must explicitly provide the `--harnessRunner` flag.
:::
diff --git a/website/src/docs/guides/ui-testing.md b/website/src/docs/guides/ui-testing.mdx
similarity index 60%
rename from website/src/docs/guides/ui-testing.md
rename to website/src/docs/guides/ui-testing.mdx
index 82358a4..7b044e9 100644
--- a/website/src/docs/guides/ui-testing.md
+++ b/website/src/docs/guides/ui-testing.mdx
@@ -7,7 +7,9 @@ React Native Harness provides powerful UI testing capabilities that allow you to
:::warning
UI testing is an **opt-in feature** that requires installing an additional package. The `@react-native-harness/ui` package is not included by default and must be explicitly installed to use these features.
-This package contains **native code** and requires rebuilding your app after installation. Additionally, this code is **automatically excluded from release builds** and is only available in debug builds.
+For **iOS and Android**, this package contains **native code** and requires rebuilding your app after installation. This code is **automatically excluded from release builds** and is only available in debug builds.
+
+For **Web**, this package uses standard DOM APIs for interactions and a Playwright-based bridge for capturing screenshots.
:::
## Installation
@@ -61,15 +63,15 @@ describe('Element Queries', () => {
### Available query methods
-| Method | Description |
-|--------|-------------|
-| `findByTestId(testId)` | Find single element by testID (throws if not found) |
-| `findAllByTestId(testId)` | Find all elements by testID (throws if none found) |
-| `queryByTestId(testId)` | Find single element by testID (returns null if not found) |
-| `queryAllByTestId(testId)` | Find all elements by testID (returns empty array if none found) |
-| `findByAccessibilityLabel(label)` | Find single element by accessibility label (throws if not found) |
-| `findAllByAccessibilityLabel(label)` | Find all elements by accessibility label (throws if none found) |
-| `queryByAccessibilityLabel(label)` | Find single element by accessibility label (returns null if not found) |
+| Method | Description |
+| ------------------------------------- | ---------------------------------------------------------------------------- |
+| `findByTestId(testId)` | Find single element by testID (throws if not found) |
+| `findAllByTestId(testId)` | Find all elements by testID (throws if none found) |
+| `queryByTestId(testId)` | Find single element by testID (returns null if not found) |
+| `queryAllByTestId(testId)` | Find all elements by testID (returns empty array if none found) |
+| `findByAccessibilityLabel(label)` | Find single element by accessibility label (throws if not found) |
+| `findAllByAccessibilityLabel(label)` | Find all elements by accessibility label (throws if none found) |
+| `queryByAccessibilityLabel(label)` | Find single element by accessibility label (returns null if not found) |
| `queryAllByAccessibilityLabel(label)` | Find all elements by accessibility label (returns empty array if none found) |
## Screenshot testing
@@ -133,16 +135,16 @@ test('screenshot with custom options', async () => {
### Screenshot options reference
-| Option | Type | Default | Description |
-|--------|------|---------|-------------|
-| `name` | `string` | - | **Required.** Unique name for the snapshot |
-| `threshold` | `number` | `0.1` | Matching threshold for pixelmatch (0-1). Smaller values are more sensitive |
-| `failureThreshold` | `number` | - | Minimum difference required to fail the test |
-| `failureThresholdType` | `'pixel' \| 'percent'` | `'pixel'` | How to interpret the failure threshold |
-| `comparisonMethod` | `'pixelmatch' \| 'ssim'` | `'pixelmatch'` | Algorithm used for image comparison |
-| `ssimThreshold` | `number` | `0.95` | Minimum similarity for SSIM comparison (0-1) |
-| `diffColor` | `[number, number, number]` | `[255, 0, 0]` | RGB color for highlighting differences |
-| `ignoreRegions` | `Array<{x,y,width,height}>` | `[]` | Regions to exclude from comparison |
+| Option | Type | Default | Description |
+| ---------------------- | --------------------------- | -------------- | -------------------------------------------------------------------------- |
+| `name` | `string` | - | **Required.** Unique name for the snapshot |
+| `threshold` | `number` | `0.1` | Matching threshold for pixelmatch (0-1). Smaller values are more sensitive |
+| `failureThreshold` | `number` | - | Minimum difference required to fail the test |
+| `failureThresholdType` | `'pixel' \| 'percent'` | `'pixel'` | How to interpret the failure threshold |
+| `comparisonMethod` | `'pixelmatch' \| 'ssim'` | `'pixelmatch'` | Algorithm used for image comparison |
+| `ssimThreshold` | `number` | `0.95` | Minimum similarity for SSIM comparison (0-1) |
+| `diffColor` | `[number, number, number]` | `[255, 0, 0]` | RGB color for highlighting differences |
+| `ignoreRegions` | `Array<{x,y,width,height}>` | `[]` | Regions to exclude from comparison |
### Element-specific screenshots
@@ -165,7 +167,7 @@ test('capture specific element', async () => {
const headerScreenshot = await screen.screenshot(headerElement);
await expect(headerScreenshot).toMatchImageSnapshot({
- name: 'header-element'
+ name: 'header-element',
});
});
```
@@ -190,7 +192,7 @@ test('multiple screenshots', async () => {
The `userEvent` API allows you to simulate user interactions with your components:
-```typescript
+````typescript
import { describe, test, render, expect, fn } from 'react-native-harness';
import { screen, userEvent } from '@react-native-harness/ui';
@@ -220,12 +222,41 @@ describe('User Interactions', () => {
expect(input.props.value).toBe('testuser');
});
});
-```
+
+## Web Support
+
+React Native Harness supports UI testing on the web using Playwright. When running tests on the web platform, the interaction logic is handled by a Playwright bridge that simulates real user events at the browser level.
+
+### Interaction logic
+
+- **Pressing**: Simulates a real mouse click at the element's coordinates using Playwright's mouse API.
+- **Typing**: Simulates real keyboard input using Playwright's keyboard API. This ensures that all browser events (keydown, keypress, input, keyup) are fired correctly and picked up by React Native Web.
+- **Blurring**: Supports blurring the active element, with an option to trigger "Submit" (Enter key) before blurring.
+
+### Configuration
+
+To use UI testing on web, make sure you have the `@react-native-harness/platform-web` package installed and configured in your `rn-harness.config.mjs`.
+
+```javascript
+import { webPlatform, chromium } from '@react-native-harness/platform-web';
+
+export default {
+ // ...
+ runners: [
+ webPlatform({
+ name: 'web',
+ browser: chromium('http://localhost:3000'),
+ }),
+ ],
+};
+````
## Troubleshooting
### Anti-aliased text differences
+
Small differences in text rendering can cause false positives. Increase the `threshold` value for less sensitive comparison.
### Dynamic content
-For components with dynamic content (dates, random values), use `ignoreRegions` to exclude those areas from comparison.
\ No newline at end of file
+
+For components with dynamic content (dates, random values), use `ignoreRegions` to exclude those areas from comparison.