diff --git a/docs/browser-cloud-api-reference.md b/docs/browser-cloud-api-reference.md
new file mode 100644
index 000000000..e6ebbe7b4
--- /dev/null
+++ b/docs/browser-cloud-api-reference.md
@@ -0,0 +1,129 @@
+---
+id: browser-cloud-api-reference
+title: API Reference - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: API Reference
+description: REST API reference for TestMu AI Browser Cloud. Planned endpoints for sessions, context, profiles, files, extensions, quick actions, and tunnels.
+keywords:
+ - browser cloud api
+ - rest api browser cloud
+ - browser cloud endpoints
+ - api reference
+url: https://www.testmuai.com/support/docs/browser-cloud-api-reference/
+site_name: TestMu AI
+slug: browser-cloud-api-reference/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-api-reference/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# API Reference (Coming Soon)
+
+The REST API will expose all TestMu AI Browser SDK capabilities over HTTP, making
+ Browser Cloud accessible from any programming language. In the meantime, the [TestMu AI Browser SDK quickstart](/support/docs/launch-first-session/) provides full access to all these capabilities from Node.js.
+
+Here's a preview of the planned endpoint structure:
+
+## Planned Endpoints
+
+```
+Sessions
+ POST /v1/sessions Create a session
+ GET /v1/sessions List sessions
+ GET /v1/sessions/:id Get session details
+ GET /v1/sessions/:id/live Get live session details
+ DELETE /v1/sessions/:id Release a session
+ DELETE /v1/sessions Release all sessions
+
+Context
+ GET /v1/sessions/:id/context Get full context
+ PUT /v1/sessions/:id/context Set full context
+ GET /v1/sessions/:id/context/cookies Get cookies
+ PUT /v1/sessions/:id/context/cookies Set cookies
+ DELETE /v1/sessions/:id/context Clear context
+
+Profiles
+ GET /v1/profiles List profiles
+ POST /v1/profiles Create/save profile
+ GET /v1/profiles/:id Get profile
+ PUT /v1/profiles/:id Update profile
+ DELETE /v1/profiles/:id Delete profile
+
+Files
+ POST /v1/sessions/:id/files Upload file
+ GET /v1/sessions/:id/files List files
+ GET /v1/sessions/:id/files/:path Download file
+ GET /v1/sessions/:id/files/archive Download all (zip)
+ DELETE /v1/sessions/:id/files/:path Delete file
+ DELETE /v1/sessions/:id/files Delete all files
+
+Extensions
+ POST /v1/extensions Register extension
+ GET /v1/extensions List extensions
+ GET /v1/extensions/:id Get extension
+ DELETE /v1/extensions/:id Delete extension
+
+Quick Actions
+ POST /v1/scrape Scrape a URL
+ POST /v1/screenshot Screenshot a URL
+ POST /v1/pdf Generate PDF from URL
+
+Tunnel
+ POST /v1/tunnel/start Start tunnel
+ POST /v1/tunnel/stop Stop tunnel
+ GET /v1/tunnel/status Get tunnel status
+```
+
+
diff --git a/docs/browser-cloud-context.md b/docs/browser-cloud-context.md
new file mode 100644
index 000000000..8a873d96b
--- /dev/null
+++ b/docs/browser-cloud-context.md
@@ -0,0 +1,214 @@
+---
+id: browser-cloud-context
+title: Reusing Context & Auth - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Transfer Cookies & Storage
+description: Extract and inject browser state across sessions to preserve login and user data in TestMu AI Browser Cloud.
+keywords:
+ - browser cloud context
+ - session context
+ - browser authentication
+ - cookies persistence
+ - session state management
+url: https://www.testmuai.com/support/docs/browser-cloud-context/
+site_name: TestMu AI
+slug: browser-cloud-context/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-context/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Transfer Cookies and Storage Between Sessions
+
+Extract and inject browser state - cookies, localStorage, and sessionStorage - across sessions to preserve login and user data without re-authenticating.
+
+
+## Why You Need This
+
+Your agent needs to stay logged in across sessions. Without a way to preserve
+authentication state, every new session starts from scratch - your agent has to
+repeat the login flow each time. That wastes time, risks triggering security
+alerts from frequent logins, breaks on MFA prompts, and burns LLM tokens if
+your agent uses AI to navigate login pages.
+
+The Context Service solves this. It captures everything the browser remembers
+about a user's session - login cookies, user preferences in localStorage,
+shopping cart data in sessionStorage - and lets you inject that state into a
+new session. Your agent logs in once, saves the context, and skips login
+entirely in every future session.
+
+```typescript
+interface SessionContext {
+ cookies?: Cookie[];
+ localStorage?: Record>;
+ sessionStorage?: Record>;
+}
+```
+
+## Before You Begin
+
+You need an active session with a connected page before you can extract or
+inject context. If you have not set that up yet, see
+[Connect to a session](/support/docs/connect-to-session/).
+
+
+## Framework Agnostic
+
+The Context Service auto-detects whether you pass a Puppeteer `Page` or a
+Playwright `Page`/`BrowserContext`. The same API works with both - you never
+need to specify which adapter you're using.
+
+
+## Extracting Context
+
+Get all browser state from a page:
+
+```typescript
+const context = await client.context.getContext(page);
+
+context.cookies; // Array of cookies
+context.localStorage; // { "origin": { "key": "value" } }
+context.sessionStorage; // { "origin": { "key": "value" } }
+```
+
+Or extract individual parts:
+
+```typescript
+const cookies = await client.context.getCookies(page);
+const localStorage = await client.context.getLocalStorage(page);
+const sessionStorage = await client.context.getSessionStorage(page);
+```
+
+
+## Injecting Context
+
+Set browser state on a new page:
+
+```typescript
+await client.context.setContext(page, {
+ cookies: [
+ { name: 'session_id', value: 'abc123', domain: '.example.com', path: '/' }
+ ],
+ localStorage: {
+ 'https://example.com': { theme: 'dark', lang: 'en' }
+ },
+});
+```
+
+Or set individual parts:
+
+```typescript
+await client.context.setCookies(page, cookies);
+await client.context.setLocalStorage(page, localStorageData);
+await client.context.setSessionStorage(page, sessionStorageData);
+```
+
+
+## Clearing Context
+
+```typescript
+await client.context.clearContext(page); // Clear everything
+await client.context.clearCookies(page); // Just cookies
+await client.context.clearStorage(page); // localStorage + sessionStorage
+```
+
+
+## Example: Transfer Login Between Sessions
+
+The most common use case - log in once, reuse the auth state:
+
+```typescript
+// Session 1: Log in and capture
+const session1 = await client.sessions.create({ adapter: 'puppeteer', ... });
+const browser1 = await client.puppeteer.connect(session1);
+const page1 = (await browser1.pages())[0];
+
+await page1.goto('https://app.example.com/login');
+await page1.type('#email', 'user@example.com');
+await page1.type('#password', 'password');
+await page1.click('#login-button');
+await page1.waitForNavigation();
+
+const savedContext = await client.context.getContext(page1);
+await browser1.close();
+await client.sessions.release(session1.id);
+
+// Session 2: Skip login entirely
+const session2 = await client.sessions.create({ adapter: 'puppeteer', ... });
+const browser2 = await client.puppeteer.connect(session2);
+const page2 = (await browser2.pages())[0];
+
+await client.context.setContext(page2, savedContext);
+await page2.goto('https://app.example.com/dashboard');
+// Already logged in!
+```
+
+
+## How It Works
+
+- **Puppeteer:** Uses CDP `Network.getAllCookies` / `Network.setCookie` for cookies, and `page.evaluate()` for localStorage/sessionStorage
+- **Playwright:** Uses `context.cookies()` / `context.addCookies()` for cookies, and `page.evaluate()` for storage
+- Framework detection is automatic based on the page object's available methods
+
+
+## Context vs Profiles
+
+The Context Service transfers state **within a single script run** (in memory).
+If you need state to persist **across separate script runs** (on disk), use the
+[Profiles for persistent state](/support/docs/browser-cloud-profiles/) instead.
+
+
+
+
diff --git a/docs/browser-cloud-debugging.md b/docs/browser-cloud-debugging.md
new file mode 100644
index 000000000..0faffe94f
--- /dev/null
+++ b/docs/browser-cloud-debugging.md
@@ -0,0 +1,196 @@
+---
+id: browser-cloud-debugging
+title: Debugging & Observability - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Replay and Debug Sessions
+description: Watch, replay, and debug your agent's browser sessions with video recordings, console logs, and network capture.
+keywords:
+ - browser cloud debugging
+ - session recording
+ - browser cloud logs
+ - session observability
+ - troubleshooting browser cloud
+url: https://www.testmuai.com/support/docs/browser-cloud-debugging/
+site_name: TestMu AI
+slug: browser-cloud-debugging/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-debugging/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Replay and Debug Sessions
+
+Watch, replay, and troubleshoot your agent's browser sessions. Every session automatically records video, console logs, and network requests - accessible from the TestMu AI dashboard.
+
+
+## Built-In Observability
+
+When your agent runs at 3am and does something unexpected, you need to know
+exactly what happened. Every session runs on TestMu AI's infrastructure,
+which means every session automatically comes with video recordings, console
+logs, and network request capture - no extra setup required.
+
+
+## TestMu AI Web Automation Dashboard
+
+Every session appears on the TestMu AI Web Automation Dashboard:
+
+```
+https://automation.lambdatest.com/logs/
+```
+
+From the dashboard you can:
+
+- Watch **live video** of the browser as your agent interacts with it
+- **Replay** recorded sessions after they complete
+- View captured **console logs**
+- Inspect **network requests**
+- Review **screenshots**
+- Check **test results** (pass/fail)
+
+
+## Organizing Sessions
+
+Use `build` and `name` in `lambdatestOptions` to organize sessions on the
+dashboard. This is especially helpful when running multiple agents or scenarios:
+
+```typescript
+const session = await client.sessions.create({
+ lambdatestOptions: {
+ build: 'Price Monitor Agent - v2.1',
+ name: 'Extract Competitor Pricing - Amazon',
+ 'LT:Options': {
+ username: process.env.LT_USERNAME,
+ accessKey: process.env.LT_ACCESS_KEY,
+ video: true, // Record video
+ console: true, // Capture console logs,
+ }
+ }
+});
+```
+
+
+## Debug URLs
+
+Every session provides URLs for viewing:
+
+```typescript
+console.log(session.debugUrl); // Dashboard URL for this session
+console.log(session.sessionViewerUrl); // Live stream of the browser
+```
+
+
+## SDK Console Output
+
+The SDK logs connection steps and actions to stdout:
+
+```
+Adapter: Connecting to session session_123_abc via Puppeteer...
+Adapter: Set stealth user-agent: Mozilla/5.0 (Windows NT 10.0...
+Adapter: Set stealth viewport: 1907x1063
+Adapter: Humanized interactions enabled
+Adapter: Loading profile my-app-login
+```
+
+
+## Common Issues
+
+Here are the most common issues and how to fix them.
+
+**Connection Timeout**
+
+```
+Error: Timed out after 30000ms while waiting for the WebSocket
+```
+
+Causes: Invalid `LT_USERNAME` or `LT_ACCESS_KEY`, TestMu AI service outage,
+or network firewall blocking WebSocket connections.
+
+Fix: Verify your credentials, check the TestMu AI status page, try a different
+network.
+
+
+**Session Not Found**
+
+```
+Session session_xyz not found
+```
+
+Cause: Session was already released or timed out. The default timeout is 5
+minutes.
+
+Fix: Increase with `timeout: 600000` (10 minutes) in your session config.
+
+
+**Playwright Requires Node 18+**
+
+```
+Playwright requires Node.js 18 or higher.
+```
+
+Fix: Upgrade Node.js with `nvm install 18 && nvm use 18`.
+
+
+**Profile Not Loading**
+
+Cause: On the first run, there's no saved profile yet.
+
+Fix: This is normal. The profile is created when `browser.close()` is called.
+Subsequent runs will load it.
+
+
+
+
+
diff --git a/docs/browser-cloud-extensions.md b/docs/browser-cloud-extensions.md
new file mode 100644
index 000000000..779f55d0d
--- /dev/null
+++ b/docs/browser-cloud-extensions.md
@@ -0,0 +1,152 @@
+---
+id: browser-cloud-extensions
+title: Extensions - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Load Chrome Extensions
+description: Load Chrome extensions into TestMu AI Browser Cloud sessions.
+keywords:
+ - browser cloud extensions
+ - chrome extensions cloud
+ - browser extension automation
+ - load extensions cloud browser
+url: https://www.testmuai.com/support/docs/browser-cloud-extensions/
+site_name: TestMu AI
+slug: browser-cloud-extensions/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-extensions/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Load Chrome Extensions
+
+Install Chrome extensions into cloud browser sessions so they behave identically to local browsers with your required extensions.
+
+
+## Overview
+
+Your agent workflow depends on a Chrome extension - an ad blocker, a cookie manager, or a custom tool your team built. Without it, the browser behaves differently and your automation may not work as expected.
+
+The Extension Service solves this by letting you register Chrome extensions and inject them into Browser Cloud sessions. You provide a cloud-hosted URL (S3) for each extension, and downloads and installs it into the browser instance when the session starts. Your cloud sessions behave the same way as your local browser.
+
+:::note Before You Begin
+Your extension must be hosted at a cloud URL (such as an S3 bucket) before you can register it. See [Current Limitations](#current-limitations) for details on what is supported today.
+:::
+
+
+## Loading Extensions into a Session
+
+First, register an extension. Then pass its ID when creating a session:
+
+```typescript
+// Step 1: Register (one time)
+const ext = await client.extensions.register({
+ name: 'My Extension',
+ version: '1.0.0',
+ cloudUrl: 'https://s3.amazonaws.com/bucket/extension.zip',
+});
+
+// Step 2: Load into sessions
+const session = await client.sessions.create({
+ adapter: 'puppeteer',
+ extensionIds: [ext.id], // Pass registered extension IDs
+ lambdatestOptions: { ... }
+});
+```
+
+When `extensionIds` are provided, the session manager fetches the cloud URLs
+and adds them to capabilities as `lambda:loadExtension`.
+
+
+## Managing Extensions
+
+```typescript
+const extensions = await client.extensions.list();
+
+const ext = await client.extensions.get('ext_abc123');
+
+await client.extensions.delete('ext_abc123');
+```
+
+
+## Extension Object
+
+```typescript
+interface Extension {
+ id: string;
+ name: string;
+ version: string;
+ description?: string;
+ enabled: boolean;
+ createdAt: string;
+ cloudUrl?: string; // S3 URL
+ localPath?: string; // Local file path
+}
+```
+
+## Supported Formats
+
+- `.zip` archives containing Chrome extension files
+- `.crx` Chrome extension packages
+
+
+## Current Limitations
+
+- Extension upload to S3 must be done manually (via curl, AWS CLI, or your upload pipeline)
+- The automated upload API through is not yet integrated
+- Extensions only work with cloud sessions
+
+
+
+
diff --git a/docs/browser-cloud-files.md b/docs/browser-cloud-files.md
new file mode 100644
index 000000000..8282725c4
--- /dev/null
+++ b/docs/browser-cloud-files.md
@@ -0,0 +1,157 @@
+---
+id: browser-cloud-files
+title: Files - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Upload and Download Files
+description: Upload, download, and manage files within cloud browser sessions in TestMu AI Browser Cloud.
+keywords:
+ - browser cloud files
+ - file upload cloud browser
+ - file download cloud browser
+ - file transfer automation
+ - browser file service
+url: https://www.testmuai.com/support/docs/browser-cloud-files/
+site_name: TestMu AI
+slug: browser-cloud-files/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-files/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Upload and Download Files
+
+Transfer files between your local machine and cloud browser sessions. Handle document uploads, file exports, and downloads without external storage services.
+
+
+## Why You Need This
+
+Your agent is filling out a government form that requires a document upload. The
+form is running in a cloud browser, but the document is on your local machine.
+Or your agent triggers a CSV download inside the cloud browser - a report, an
+export, a receipt - and you need that file locally.
+
+The File Service bridges the gap. It transfers files between your local machine
+and a remote cloud browser on Browser Cloud - without needing
+external storage services like S3 or GCS. Files are sent directly through the
+browser's page context using Base64 encoding.
+
+
+## Upload a File to the Cloud Browser
+
+```typescript
+const fileBuffer = fs.readFileSync('document.pdf');
+await client.files.uploadToSession(session.id, fileBuffer, 'document.pdf');
+```
+
+**How it works:** The buffer is Base64-encoded, sent to the cloud browser via
+`page.evaluate()`, decoded in the browser, and set on the file input element.
+
+
+## Download a File from the Cloud Browser
+
+**By URL:**
+
+```typescript
+const result = await client.files.downloadFromSession(
+ session.id,
+ 'https://example.com/report.csv'
+);
+fs.writeFileSync('report.csv', result);
+```
+
+**How it works:** The cloud browser fetches the URL, reads the response with
+`FileReader`, converts to Base64, and returns the data back to Node.js.
+
+For files triggered by button clicks (not direct URLs), the service uses CDP's
+`Fetch.enable` to intercept the download.
+
+
+## Session-Scoped File API
+
+All file operations are also available under `client.sessions.files`:
+
+```typescript
+await client.sessions.files.upload(session.id, buffer, 'file.txt');
+
+const files = await client.sessions.files.list(session.id);
+
+const data = await client.sessions.files.download(session.id, '/path/to/file');
+
+const archive = await client.sessions.files.downloadArchive(session.id);
+
+await client.sessions.files.delete(session.id, '/path/to/file');
+
+await client.sessions.files.deleteAll(session.id);
+```
+
+
+## File Info
+
+```typescript
+interface FileInfo {
+ path: string;
+ name: string;
+ size: number;
+ createdAt: string;
+ mimeType?: string;
+}
+```
+
+Files are stored locally in a `.files/` directory organized by session ID.
+
+
+
+
+
diff --git a/docs/browser-cloud-how-to-connect.md b/docs/browser-cloud-how-to-connect.md
new file mode 100644
index 000000000..df49a9f9b
--- /dev/null
+++ b/docs/browser-cloud-how-to-connect.md
@@ -0,0 +1,103 @@
+---
+id: browser-cloud-how-to-connect
+title: How to Connect to TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Set Up the SDK
+description: Connect your agents to TestMu AI Browser Cloud using the TestMu AI Browser SDK.
+keywords:
+ - browser cloud connection
+ - browser cloud sdk
+ - browser cloud api
+ - ai agent integration
+ - browser automation sdk
+url: https://www.testmuai.com/support/docs/browser-cloud-sdk-setup/
+site_name: TestMu AI
+slug: browser-cloud-sdk-setup/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-sdk-setup/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Set Up the Browser SDK
+***
+
+The TestMu AI Browser SDK is the primary way to integrate your agents with Browser Cloud. It handles session creation, browser connections, stealth, profiles, and more from a single Node.js client.
+
+## TestMu AI Browser SDK
+***
+
+The TestMu AI Browser SDK is the fastest way to get your agents into the Browser
+Cloud. It gives you full programmatic control over sessions, adapters, stealth,
+profiles, files, extensions, and tunnels directly from your Node.js application.
+
+### What you need to get started
+***
+
+- **Node.js 16+** installed on your machine
+- Install the SDK:
+
+```bash
+npm install @testmuai/testmu-cloud
+```
+
+### Initialize the Client
+***
+
+From here, you can create sessions, configure stealth mode, manage profiles,
+upload files, load extensions, and open tunnels - all through a single client
+instance.
+
+```typescript
+import { Browser } from '@testmuai/testmu-cloud';
+const client = new Browser();
+```
+
+
+
diff --git a/docs/browser-cloud-profiles.md b/docs/browser-cloud-profiles.md
new file mode 100644
index 000000000..81a009015
--- /dev/null
+++ b/docs/browser-cloud-profiles.md
@@ -0,0 +1,219 @@
+---
+id: browser-cloud-profiles
+title: Profiles - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Stay Logged in Across Runs
+description: Persist browser state across sessions and script runs. Reuse auth, cookies, and browser settings across sessions.
+keywords:
+ - browser cloud profiles
+ - persistent browser state
+ - session persistence
+ - cookie persistence
+ - browser identity
+url: https://www.testmuai.com/support/docs/browser-cloud-profiles/
+site_name: TestMu AI
+slug: browser-cloud-profiles/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-profiles/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Stay Logged In Across Runs with Profiles
+
+Persist and reuse browser state - cookies, auth, and settings - across separate script runs. Profiles auto-save when the browser closes and auto-load when you use the same profile ID.
+
+
+## Why You Need This
+
+The [Context service for cookies](/support/docs/browser-cloud-context/) transfers state between sessions
+within a single script run. But what if your agent runs on a cron schedule, or
+as a serverless function, or is manually triggered days apart? The in-memory
+context is lost between runs.
+
+Profiles solve this by saving your browser's state - cookies, localStorage,
+sessionStorage - to disk. Think of a profile as a saved browser identity: a set
+of credentials, preferences, and session data that your agent can load each
+time it runs. Your agent logs in once, the profile saves the auth state to
+disk, and every future run - hours, days, or weeks later - loads the saved
+state and skips login entirely.
+
+You might have a "salesforce-login" profile, a "github-login" profile, or a
+"competitor-research" profile - each maintaining its own authentication state
+and preferences.
+
+
+## How It Works
+
+1. You set `profileId` in your session config
+2. On connect, the adapter checks for a saved profile at `.profiles/{profileId}.json`
+3. If found, the saved cookies are loaded into the browser
+4. On `browser.close()`, the current cookies are automatically saved back to the file
+5. Next time you create a session with the same `profileId`, the saved state is restored
+
+
+## Getting Started
+
+```typescript
+// Run 1: Your agent logs in. Profile is saved automatically on close.
+const session = await client.sessions.create({
+ adapter: 'puppeteer',
+ profileId: 'my-app-login', // This ID enables auto-save
+ lambdatestOptions: { ... }
+});
+
+const browser = await client.puppeteer.connect(session);
+const page = (await browser.pages())[0];
+
+await page.goto('https://app.example.com/login');
+// ... agent logs in ...
+
+await browser.close(); // ← Profile auto-saved here
+await client.sessions.release(session.id);
+```
+
+```typescript
+// Run 2 (days later): Agent loads saved state. No login needed.
+const session2 = await client.sessions.create({
+ adapter: 'puppeteer',
+ profileId: 'my-app-login', // Same ID = loads saved cookies
+ lambdatestOptions: { ... }
+});
+
+const browser2 = await client.puppeteer.connect(session2);
+const page2 = (await browser2.pages())[0];
+
+await page2.goto('https://app.example.com/dashboard');
+// Already logged in - cookies were restored from the profile
+```
+
+> **First run note:** On the very first run, there's no saved profile yet.
+> This is normal. The profile file is created when `browser.close()` is called.
+> Subsequent runs will find and load it.
+
+
+## Profile File Format
+
+Profiles are stored as JSON files at `.profiles/{profileId}.json`:
+
+```json
+{
+ "id": "my-app-login",
+ "cookies": [
+ {
+ "name": "session_token",
+ "value": "abc123...",
+ "domain": ".example.com",
+ "path": "/",
+ "expires": 1735689600,
+ "httpOnly": true,
+ "secure": true
+ }
+ ],
+ "updatedAt": "2024-01-15T10:30:00.000Z"
+}
+```
+
+
+## Manual Profile Management
+
+Beyond the automatic `profileId` flow, you can manage profiles directly:
+
+```typescript
+// Save a profile manually
+await client.profiles.saveProfile('my-profile', page, { note: 'after login' });
+
+// Load a profile into a page
+await client.profiles.loadProfile('my-profile', page);
+
+// List all saved profiles
+const profiles = await client.profiles.listProfiles();
+
+// Delete a profile
+await client.profiles.deleteProfile('my-profile');
+```
+
+
+## Profiles vs Context Service
+
+| | Context Service | Profile Service |
+|---|---|---|
+| **Where state lives** | In memory (JS object) | On disk (`.profiles/` directory) |
+| **Lifetime** | Single script run | Across runs (days/weeks) |
+| **Use case** | Transfer state between sessions in the same script | Maintain login state between separate agent invocations |
+| **How to use** | Manual `getContext()` / `setContext()` | Automatic via `profileId` in session config |
+
+**Use Context** when your agent creates multiple sessions in one run.
+**Use Profiles** when your agent runs on a schedule and needs to stay logged in
+between invocations.
+
+
+## Works With All CDP Adapters
+
+- **Puppeteer:** Saves/loads cookies via CDP page methods
+- **Playwright:** Saves/loads cookies via `context.addCookies()` / `context.cookies()`
+- **Selenium:** Saves/loads cookies via `driver.manage().addCookie()`, grouped by domain
+
+
+## Security Note
+
+Profile files contain session cookies and tokens in plain text. Add
+`.profiles/` to your `.gitignore`:
+
+```
+.profiles/
+```
+
+
+
diff --git a/docs/browser-cloud-quick-actions.md b/docs/browser-cloud-quick-actions.md
new file mode 100644
index 000000000..8da6edc3b
--- /dev/null
+++ b/docs/browser-cloud-quick-actions.md
@@ -0,0 +1,205 @@
+---
+id: browser-cloud-quick-actions
+title: Quick Actions - Scrape, Screenshot, PDF
+hide_title: true
+sidebar_label: One-Liner Scrape, Screenshot, and PDF
+description: One-liner operations that handle browser setup, navigation, and cleanup for scraping, screenshots, and PDF generation.
+keywords:
+ - browser cloud scrape
+ - browser cloud screenshot
+ - browser cloud pdf
+ - web scraping sdk
+ - quick actions
+url: https://www.testmuai.com/support/docs/browser-cloud-quick-actions/
+site_name: TestMu AI
+slug: browser-cloud-quick-actions/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-quick-actions/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# One-Liner Scrape, Screenshot, and PDF
+
+Scrape content, take screenshots, or generate PDFs from any URL - without managing sessions, browsers, or cleanup yourself. You provide
+a URL, you get back the result. The TestMu AI Browser SDK handles everything behind
+the scenes.
+
+This is useful when your agent needs data from a page but doesn't need to
+interact with it beyond extraction.
+
+
+## Scrape
+
+Extract content from any webpage in your choice of format.
+
+**Simplest form - just pass a URL:**
+
+```typescript
+const result = await client.scrape('https://example.com');
+console.log(result.content);
+```
+
+**With options - control format, timing, and selectors:**
+
+```typescript
+const result = await client.scrape({
+ url: 'https://example.com',
+ format: 'markdown', // 'html' | 'markdown' | 'text' | 'readability'
+ delay: 3000, // Wait 3 seconds for JS-heavy pages
+ waitFor: '#content', // Wait for this CSS selector before extracting
+});
+```
+
+**Response:**
+
+```typescript
+interface ScrapeResponse {
+ title: string; // Page title
+ content: string; // Extracted content in requested format
+ url: string; // Final URL (after redirects)
+ markdown?: string; // Markdown version
+ html?: string; // Raw HTML
+ metadata?: Record; // Meta tags
+}
+```
+
+**Choosing a format:**
+
+| Format | What You Get | When To Use It |
+|--------|-------------|----------------|
+| `html` | Raw HTML of the page | When your agent needs to parse the DOM |
+| `text` | Plain text, tags stripped | When you want minimal tokens for LLM input |
+| `readability` | Cleaned article content (like Reader Mode) | When the page has an article you want to extract |
+| `markdown` | HTML converted to markdown | When you want structure + low token count for LLMs |
+
+
+## Screenshot
+
+Capture a visual snapshot of any webpage.
+
+```typescript
+// Simple
+const result = await client.screenshot('https://example.com');
+fs.writeFileSync('screenshot.png', result.data);
+
+// With options
+const result = await client.screenshot({
+ url: 'https://example.com',
+ fullPage: true, // Capture entire scrollable page
+ format: 'jpeg', // 'png' | 'jpeg' | 'webp'
+ quality: 80, // JPEG/WebP quality (1-100)
+ delay: 2000, // Wait before capturing
+});
+```
+
+**Response:** `{ data: Buffer, format: string, width: number, height: number }`
+
+
+## PDF
+
+Generate a PDF document from any webpage.
+
+```typescript
+// Simple
+const result = await client.pdf('https://example.com');
+fs.writeFileSync('page.pdf', result.data);
+
+// With options
+const result = await client.pdf({
+ url: 'https://example.com',
+ format: 'A4', // 'A4' | 'Letter' | 'Legal'
+ landscape: false,
+ printBackground: true,
+ margin: { top: '1cm', right: '1cm', bottom: '1cm', left: '1cm' },
+});
+```
+
+**Response:** `{ data: Buffer, pageCount: number }`
+
+
+## Standalone vs Session Mode
+
+Quick Actions operate in two modes:
+
+**Standalone mode (default).** The SDK creates a temporary headless browser
+with stealth enabled, navigates to the URL, performs the operation, and closes
+the browser. Fully automatic. No session management needed.
+
+**Session mode.** If your agent already has a session running and you want the
+Quick Action to use that session's browser (with its cookies, tunnel, or
+extensions), register the page first:
+
+```typescript
+const session = await client.sessions.create({ ... });
+const browser = await client.puppeteer.connect(session);
+const page = (await browser.pages())[0];
+
+// Register the page for Quick Actions
+client.quick.registerSessionPage(session.id, page);
+
+// Now Quick Actions use the existing session
+const result = await client.scrape({
+ url: 'https://example.com',
+ sessionId: session.id,
+});
+```
+
+This is useful when the page requires authentication, a tunnel connection, or
+specific extensions to access.
+
+
+
+
+
diff --git a/docs/browser-cloud-session-configuration.md b/docs/browser-cloud-session-configuration.md
new file mode 100644
index 000000000..2bcddf2a1
--- /dev/null
+++ b/docs/browser-cloud-session-configuration.md
@@ -0,0 +1,184 @@
+---
+id: browser-cloud-session-configuration
+title: Session Configuration - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Configure Session Options
+description: Complete reference for all options available when creating a session with the TestMu AI Browser SDK.
+keywords:
+ - browser cloud configuration
+ - session options
+ - stealth config
+ - browser cloud settings
+ - session create options
+url: https://www.testmuai.com/support/docs/browser-cloud-session-configuration/
+site_name: TestMu AI
+slug: browser-cloud-session-configuration/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-session-configuration/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Configure Session Options
+
+Complete reference for all options available when creating a session with the TestMu AI Browser SDK. Use these to control stealth, persistence, browser settings, network, and extensions.
+
+When you call `client.sessions.create()`, you can pass these options to
+configure the session's behavior, browser settings, and capabilities.
+
+## Quick Example
+
+Here is a typical `create` call that sets the most common options:
+
+```javascript
+const session = await client.sessions.create({
+ adapter: 'playwright',
+ dimensions: { width: 1920, height: 1080 },
+ blockAds: true,
+ stealthConfig: {
+ humanizeInteractions: true,
+ randomizeUserAgent: true,
+ },
+ proxy: 'http://my-proxy:8080',
+ lambdatestOptions: {
+ build: 'my-build',
+ name: 'my-test',
+ user: process.env.LT_USERNAME,
+ accessKey: process.env.LT_ACCESS_KEY,
+ },
+});
+```
+
+The sections below describe every available option in detail.
+
+## Required Options
+
+| Option | Type | Description |
+|--------|------|----------------|
+| `adapter` | `'puppeteer' \| 'playwright' \| 'selenium'` | Which automation library to use |
+| `lambdatestOptions` | `object` | capabilities (build name, test name, credentials) |
+
+## Stealth Options
+
+| Option | Type | Default | Description |
+|--------|------|---------|----------------|
+| `stealthConfig.humanizeInteractions` | `boolean` | `false` | Add random delays to clicks and typing |
+| `stealthConfig.randomizeUserAgent` | `boolean` | `true` | Pick random user-agent from pool |
+| `stealthConfig.randomizeViewport` | `boolean` | `true` | Add ±20px jitter to viewport |
+| `stealthConfig.skipFingerprintInjection` | `boolean` | `false` | Disable all stealth |
+
+→ Learn more: [Avoid bot detection with Stealth Mode](/support/docs/browser-cloud-stealth/)
+
+## Persistence Options
+
+| Option | Type | Description |
+|--------|------|----------------|
+| `profileId` | `string` | Load/save persistent browser profile |
+| `sessionContext` | `SessionContext` | Pre-load cookies, localStorage, sessionStorage |
+
+
+## Browser Options
+
+| Option | Type | Default | Description |
+|--------|------|---------|----------------|
+| `dimensions` | `{ width, height }` | - | Browser viewport size |
+| `userAgent` | `string` | - | Custom user-agent string |
+| `headless` | `boolean` | - | Run in headless mode |
+| `timeout` | `number` | `300000` | Session timeout in ms (5 min) |
+| `blockAds` | `boolean` | - | Block advertisements |
+| `solveCaptcha` | `boolean` | - | Enable CAPTCHA solving |
+
+## Network Options
+
+| Option | Type | Description |
+|--------|------|----------------|
+| `proxy` | `string` | Proxy URL |
+| `geoLocation` | `string` | Geolocation code (e.g. `'US'`, `'IN'`) |
+| `tunnel` | `boolean` | Enable tunnel |
+| `tunnelName` | `string` | Named tunnel identifier |
+| `region` | `string` | data center region |
+| `optimizeBandwidth` | `boolean \| config` | Block images/media/styles |
+
+
+## Extension Options
+
+| Option | Type | Description |
+|--------|------|----------------|
+| `extensionIds` | `string[]` | Chrome extension IDs to load |
+
+
+
+## Session Object
+
+After creation, you receive a Session object with these fields:
+
+```typescript
+interface Session {
+ id: string; // Unique session ID
+ websocketUrl: string; // WebSocket URL for adapter connection
+ debugUrl: string; // TestMu AI dashboard URL
+ config: SessionConfig; // Original configuration
+ status: 'live' | 'released' | 'failed';
+ createdAt: string; // ISO timestamp
+ timeout: number; // Session timeout in ms
+ dimensions: Dimensions; // Viewport dimensions
+ sessionViewerUrl?: string; // Live session viewer URL
+ userAgent?: string; // Resolved user-agent
+ stealthConfig?: StealthConfig; // Active stealth settings
+}
+```
+
+
+
+
diff --git a/docs/browser-cloud-session-lifecycle.md b/docs/browser-cloud-session-lifecycle.md
new file mode 100644
index 000000000..93ac435ad
--- /dev/null
+++ b/docs/browser-cloud-session-lifecycle.md
@@ -0,0 +1,195 @@
+---
+id: browser-cloud-session-lifecycle
+title: Session Lifecycle - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Handle Session Lifecycle
+description: How sessions are created, managed, and released in TestMu AI Browser Cloud.
+keywords:
+ - browser cloud session lifecycle
+ - session states
+ - session timeout
+ - release session
+ - browser session management
+url: https://www.testmuai.com/support/docs/browser-cloud-session-lifecycle/
+site_name: TestMu AI
+slug: browser-cloud-session-lifecycle/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-session-lifecycle/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Handle Session Lifecycle
+
+Learn how sessions move from creation to release, and how to manage timeouts and cleanup.
+Understanding the session lifecycle helps you avoid leaked sessions, reduce wasted resources, and ensure clean recordings on your dashboard.
+
+
+## Session States
+
+Every session passes through a simple set of states during its lifetime:
+
+```
+create() ──→ live ──→ released
+ └──→ failed
+```
+
+**Live.** The session has been created and is ready for connections. Your agent
+can connect, navigate, and interact with the browser. The session stays in this
+state until you release it or it times out.
+
+**Released.** The session has been explicitly released by your code, or it
+reached its timeout. The browser is closed, resources are freed, and the
+recording is saved to the dashboard.
+
+**Failed.** Something went wrong - a crash, connection loss, or infrastructure
+error. Failed sessions are automatically cleaned up.
+
+
+## Session Timeout
+
+Every session has a timeout that defines how long it stays alive. The default is
+**5 minutes** (300,000 ms). After this time, the session is automatically
+released whether your agent is still using it or not.
+
+You can adjust the timeout when creating a session:
+
+```typescript
+const session = await client.sessions.create({
+ adapter: 'puppeteer',
+ timeout: 600000, // 10 minutes
+ lambdatestOptions: { ... }
+});
+```
+
+For quick scrapes, the default 5 minutes is usually enough. For multi-step
+workflows where your agent navigates through several pages, you may want
+10–30 minutes.
+
+
+## Releasing Sessions
+
+When your agent is done, release the session explicitly. This frees resources
+immediately and ensures a clean recording on the dashboard:
+
+```typescript
+// Release a single session
+await client.sessions.release(session.id);
+```
+
+If your agent manages multiple sessions in parallel, you can release all of
+them at once:
+
+```typescript
+// Release all active sessions
+await client.sessions.releaseAll();
+```
+
+
+## Listing and Retrieving Sessions
+
+You can check which sessions are currently active and retrieve details about any
+specific session:
+
+```typescript
+// List all active sessions
+const sessions = client.sessions.list();
+
+// Get details of a specific session
+const session = client.sessions.retrieve('session_12345_abc');
+```
+
+
+## Live Session Details
+
+While a session is running, you can get real-time information about it:
+
+```typescript
+const details = await client.sessions.liveDetails(session.id);
+
+console.log(details.pages); // Currently open pages/tabs
+console.log(details.wsUrl); // WebSocket URL
+console.log(details.sessionViewerUrl); // Live viewer URL
+```
+
+
+## Best Practices
+
+**Always release sessions when done.** Don't rely on timeouts alone - they
+exist as a safety net, not as your primary cleanup mechanism:
+
+```typescript
+const session = await client.sessions.create({ ... });
+try {
+ const browser = await client.puppeteer.connect(session);
+ // ... your agent's work ...
+ await browser.close();
+} finally {
+ await client.sessions.release(session.id);
+}
+```
+
+**Use `releaseAll()` in your shutdown handler.** If your agent process crashes,
+you want to make sure no sessions are left running:
+
+```typescript
+process.on('SIGINT', async () => {
+ await client.sessions.releaseAll();
+ process.exit(0);
+});
+```
+
+
+
+
diff --git a/docs/browser-cloud-sessions-overview.md b/docs/browser-cloud-sessions-overview.md
new file mode 100644
index 000000000..4a9ce4dca
--- /dev/null
+++ b/docs/browser-cloud-sessions-overview.md
@@ -0,0 +1,128 @@
+---
+id: browser-cloud-sessions-overview
+title: Sessions Overview - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Understand the Sessions API
+description: The Sessions API lets you create and control cloud-based browser sessions through simple SDK calls in TestMu AI Browser Cloud.
+keywords:
+ - browser cloud sessions
+ - browser sessions api
+ - cloud browser instance
+ - ai agent browser session
+ - websocket browser automation
+url: https://www.testmuai.com/support/docs/browser-cloud-sessions-overview/
+site_name: TestMu AI
+slug: browser-cloud-sessions-overview/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-sessions-overview/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Understanding the Sessions API
+
+The Sessions API lets you create and control cloud-based browser sessions
+through simple SDK calls. Each session is like giving your AI agent its own
+dedicated browser window, but running on Browser Cloud and controlled
+through your code.
+
+
+## Sessions at a Glance
+
+When you create a session, you get a fully isolated Chrome browser running in
+ Browser Cloud that your code controls. Each browser has its own
+state, cookies, and storage, so your AI agent can navigate the web, interact
+with sites, and maintain context across multiple steps without interference
+from other sessions.
+
+Specifically, each session gives you:
+
+1. A **session ID** to track and manage it
+2. A **WebSocket URL** to connect your automation tool (Puppeteer, Playwright, or Selenium)
+3. A **debug URL** to watch the session on the dashboard
+4. A **session viewer URL** for real-time streaming of the browser
+
+
+## Before You Begin
+
+If you have not set up your account and installed the SDK yet, [launch your first session](/support/docs/launch-first-session/) before working with sessions.
+
+
+## How It Works
+
+```
+Your Agent TestMu AI Cloud
+ │ │
+ ├── client.sessions.create() ────────→ │ Spins up a real Chrome browser
+ │ │ Returns session ID + WebSocket URL
+ │ │
+ ├── client.puppeteer.connect() ──────→ │ Your agent drives the browser
+ │ page.goto(...) │ via WebSocket (CDP)
+ │ page.click(...) │
+ │ page.type(...) │
+ │ │
+ ├── browser.close() ─────────────────→ │ Browser disconnects
+ │ │
+ └── client.sessions.release() ───────→ │ Session cleaned up
+ │ Resources freed
+```
+
+Your agent creates a session, connects to it using its preferred automation
+library, does its work, and releases the session when done. That's the entire
+lifecycle.
+
+
+
+
+
diff --git a/docs/browser-cloud-stealth.md b/docs/browser-cloud-stealth.md
new file mode 100644
index 000000000..89707e603
--- /dev/null
+++ b/docs/browser-cloud-stealth.md
@@ -0,0 +1,251 @@
+---
+id: browser-cloud-stealth
+title: Stealth Mode - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Stealth Mode to Avoid Bot Detection
+description: Make your agent's browser look like a real human user to bot-detection systems with TestMu AI Browser Cloud stealth mode.
+keywords:
+ - browser cloud stealth
+ - bot detection evasion
+ - fingerprint masking
+ - humanize interactions
+ - anti-detection browser
+url: https://www.testmuai.com/support/docs/browser-cloud-stealth/
+site_name: TestMu AI
+slug: browser-cloud-stealth/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-stealth/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Avoid Bot Detection with Stealth Mode
+
+Make your agent's browser look like a real human user to bot-detection systems. Stealth mode masks fingerprints, randomizes user-agents, and humanizes interactions automatically.
+
+
+## Why Stealth Matters
+
+If your automated browser is getting blocked, served CAPTCHAs, or shown
+different content than a real user would see, it is likely because the target
+site's bot detection is flagging your session. Automated browsers leave
+detectable fingerprints that these systems check for:
+
+- `navigator.webdriver` is set to `true`
+- Missing Chrome plugins and runtime objects
+- Exact, round viewport dimensions like `1920x1080`
+- Identical user-agent strings across all sessions
+- Inhuman interaction speeds - instant clicks, perfectly uniform typing
+
+Stealth mode in the TestMu AI Browser SDK removes or fakes these fingerprints, so
+the cloud browser is indistinguishable from a regular human user's Chrome
+session.
+
+
+## Enabling Stealth
+
+Add a `stealthConfig` to your session. That's it - the adapter handles
+everything else automatically:
+
+```typescript
+const session = await client.sessions.create({
+ adapter: 'puppeteer',
+ stealthConfig: {
+ humanizeInteractions: true,
+ randomizeUserAgent: true,
+ randomizeViewport: true,
+ },
+ lambdatestOptions: { ... }
+});
+```
+
+
+## Configuration Reference
+
+| Option | Type | Default | What It Does |
+|--------|------|---------|----------------|
+| `humanizeInteractions` | `boolean` | `false` | Adds random delays to clicks (50–150ms) and typing (30–130ms per character) |
+| `randomizeUserAgent` | `boolean` | `true` | Picks a random user-agent from a pool of 7 realistic Chrome/Firefox strings |
+| `randomizeViewport` | `boolean` | `true` | Adds ±20px random jitter to viewport dimensions |
+| `skipFingerprintInjection` | `boolean` | `false` | Disables all stealth entirely (Puppeteer only, useful for comparison testing) |
+
+
+## What Gets Patched
+
+The specific evasions depend on which adapter you're using.
+
+**Puppeteer** uses `puppeteer-extra` with the stealth plugin. This is the most
+comprehensive stealth solution available, patching:
+
+- `navigator.webdriver` (set to `undefined`)
+- Chrome runtime objects
+- WebGL vendor/renderer
+- Permission queries
+- Language and platform strings
+- iframe contentWindow access
+- Console.debug behavior
+- And approximately 15 more evasions
+
+**Playwright** uses custom scripts injected via `page.addInitScript()`. These
+scripts run **before** any page JavaScript executes, so detection scripts
+cannot observe the original values:
+
+| Evasion | What It Does |
+|---------|----------------|
+| `navigator.webdriver = false` | Hides the automation flag |
+| Fake `chrome.runtime` | Makes it look like Chrome extensions are present |
+| Fake `navigator.plugins` | Injects 3 standard Chrome plugins (PDF Plugin, PDF Viewer, Native Client) |
+| `navigator.languages` | Set to `['en-US', 'en']` |
+| `permissions.query` | Returns `'denied'` for notifications (matches real Chrome) |
+| WebGL spoofing | Reports "Intel Inc." / "Intel Iris OpenGL Engine" as GPU |
+
+> **Selenium** does not support stealth mode. Use Puppeteer or Playwright if
+> your agent needs anti-detection.
+
+
+## User-Agent Randomization
+
+When `randomizeUserAgent` is enabled (it is by default when any `stealthConfig`
+is set), the SDK picks from a pool of 7 realistic user-agent strings covering
+Chrome 119–120 and Firefox 121 on Windows, macOS, and Linux.
+
+The user-agent is selected **once** at session creation and stays consistent for
+the entire session. This is important - changing user-agent mid-session is a
+detection signal.
+
+If you provide an explicit `userAgent` in the session config, it takes priority
+over randomization.
+
+
+## Viewport Randomization
+
+When `randomizeViewport` is enabled, the SDK adds ±20 pixels of random jitter
+to your base viewport dimensions. Instead of the perfectly round `1920x1080`
+that bots typically fingerprint as, your session might run at `1907x1063` -
+subtly different each time.
+
+
+## Humanized Interactions
+
+When `humanizeInteractions` is enabled, the SDK monkey-patches interaction
+methods to add random delays:
+
+| Method | Adapter | Delay |
+|--------|---------|--------|
+| `page.click(selector)` | Puppeteer, Playwright | Random 50–150ms before clicking |
+| `page.type(selector, text)` | Puppeteer, Playwright | Random 30–130ms between each character |
+| `page.fill(selector, value)` | Playwright only | Random 50–150ms before filling |
+
+New pages created during the session automatically inherit the same humanized
+behavior.
+
+
+## Disabling Stealth
+
+To explicitly disable stealth (useful for comparison testing or sites that
+don't use bot detection):
+
+```typescript
+const session = await client.sessions.create({
+ adapter: 'puppeteer',
+ stealthConfig: {
+ skipFingerprintInjection: true,
+ randomizeUserAgent: false,
+ randomizeViewport: false,
+ },
+ lambdatestOptions: { ... }
+});
+```
+
+
+## Testing Your Stealth Setup
+
+The TestMu AI Browser SDK includes a built-in test that visits the bot detection
+site `bot.sannysoft.com` with stealth ON and OFF, saving screenshots for visual
+comparison:
+
+Screenshots are saved to `test-output/`. Stealth ON shows green checks; stealth
+OFF shows red failures.
+
+
+## How Stealth Works
+
+```
+Session Creation
+ │
+ ├─ stealthConfig present?
+ │ ├─ Yes → pick random UA, store on session.userAgent
+ │ └─ No → skip
+ │
+ ▼
+Adapter.connect()
+ │
+ ├─ Puppeteer:
+ │ ├─ skipFingerprintInjection? → raw puppeteer.connect()
+ │ └─ else → puppeteerExtra.connect() with stealth plugin
+ │ ├─ Set random UA via page.setUserAgent()
+ │ ├─ Set random viewport via page.setViewport()
+ │ └─ Humanize: monkey-patch click/type
+ │
+ └─ Playwright:
+ ├─ Inject stealth scripts via page.addInitScript()
+ ├─ Auto-apply to new pages via context.on('page')
+ ├─ Set random UA via page.evaluate()
+ ├─ Set random viewport via page.setViewportSize()
+ └─ Humanize: monkey-patch click/type/fill
+```
+
+
+
+
diff --git a/docs/browser-cloud-tunnel.md b/docs/browser-cloud-tunnel.md
new file mode 100644
index 000000000..68f18a855
--- /dev/null
+++ b/docs/browser-cloud-tunnel.md
@@ -0,0 +1,183 @@
+---
+id: browser-cloud-tunnel
+title: Tunnel - TestMu AI Browser Cloud
+hide_title: true
+sidebar_label: Access Localhost and Internal Networks
+description: Access localhost and internal networks from cloud browsers in TestMu AI Browser Cloud.
+keywords:
+ - browser cloud tunnel
+ - localhost cloud browser
+ - encrypted tunnel
+ - internal network access
+ - vpn cloud browser
+url: https://www.testmuai.com/support/docs/browser-cloud-tunnel/
+site_name: TestMu AI
+slug: browser-cloud-tunnel/
+canonical: https://www.testmuai.com/support/docs/browser-cloud-tunnel/
+---
+
+import BrandName, { BRAND_URL } from '@site/src/component/BrandName';
+
+
+
+# Access Localhost and Internal Networks Using Tunnel
+
+Create encrypted tunnels between your local machine and Browser Cloud. Let cloud browsers reach localhost dev servers, staging environments, and private network resources.
+
+
+## Why You Need This
+
+Your cloud browser can only reach public URLs by default. But your agent may need to access localhost, staging servers, or internal tools. For example:
+
+- Test a local development server before deploying
+- Access a staging environment behind a corporate VPN
+- Interact with internal tools and dashboards
+- Work with a local API backend
+
+The Tunnel Service solves this by creating an encrypted connection between your local machine and 's cloud infrastructure. Once the tunnel is running, your Browser Cloud sessions can reach any URL that your machine can reach - including `localhost`, private IPs, and internal hostnames.
+
+```
+Cloud Browser --(encrypted tunnel)--> Your Machine --> localhost:3000
+ --> staging.internal.company.com
+ --> 192.168.1.50:8080
+```
+
+
+## Automatic Tunnel (Recommended)
+
+The easiest approach. Set `tunnel: true` in your session config and the
+TestMu AI Browser SDK handles starting and routing the tunnel automatically:
+
+```typescript
+const session = await client.sessions.create({
+ adapter: 'puppeteer',
+ tunnel: true,
+ tunnelName: 'my-tunnel', // Optional: name for identification
+ lambdatestOptions: { ... }
+});
+
+const browser = await client.puppeteer.connect(session);
+const page = (await browser.pages())[0];
+
+await page.goto('http://localhost:3000'); // This works!
+```
+
+If you set `tunnel: true` without a `tunnelName`, the SDK auto-generates a name
+and starts the tunnel for you.
+
+
+## Manual Tunnel
+
+For more control - for example, starting the tunnel once and reusing it across
+multiple sessions:
+
+```typescript
+// Start the tunnel
+await client.tunnel.start({
+ user: process.env.LT_USERNAME!,
+ key: process.env.LT_ACCESS_KEY!,
+ tunnelName: 'my-tunnel',
+});
+
+console.log('Tunnel running:', client.tunnel.getStatus()); // true
+
+// Create sessions that use it
+const session = await client.sessions.create({
+ adapter: 'puppeteer',
+ tunnel: true,
+ tunnelName: 'my-tunnel',
+ lambdatestOptions: { ... }
+});
+
+// ... agent work ...
+
+// Stop when done
+await client.tunnel.stop();
+```
+
+
+## Tunnel Config
+
+```typescript
+interface TunnelConfig {
+ user: string; // TestMu AI username
+ key: string; // TestMu AI access key
+ tunnelName?: string; // Named tunnel for identification
+ proxyHost?: string; // Corporate proxy host
+ proxyPort?: string; // Corporate proxy port
+ proxyUser?: string; // Proxy auth user
+ proxyPass?: string; // Proxy auth password
+ logFile?: string; // Log file path
+}
+```
+
+
+## API
+
+```typescript
+await client.tunnel.start(config); // Start tunnel
+await client.tunnel.stop(); // Stop tunnel
+client.tunnel.getStatus(); // Returns true/false
+```
+
+
+## How It Works
+
+The Tunnel Service uses the `@lambdatest/node-tunnel` package to create a
+binary tunnel connection to infrastructure. The tunnel name is passed
+as a capability so cloud browsers know to route their traffic through
+your local machine.
+
+
+
+
diff --git a/docs/hyperexecute-maestro-testing.md b/docs/hyperexecute-maestro-testing.md
index caf5672b3..0f24cc41a 100644
--- a/docs/hyperexecute-maestro-testing.md
+++ b/docs/hyperexecute-maestro-testing.md
@@ -105,7 +105,7 @@ Enter your `APP_ID` in the YAML file that you have fetched in the above step.
```yaml reference title="hyperexecute.yaml"
-https://github.com/LambdaTest/hyperexecute-maestro-sample-test/blob/main/android-realdevice.yaml
+https://github.com/LambdaTest/hyperexecute-maestro-sample-test/blob/main/yaml/android/android-realdevice.yaml
```
diff --git a/package-lock.json b/package-lock.json
index be91f9d63..861057dbd 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,7 +16,7 @@
"clsx": "^1.1.1",
"docusaurus-plugin-image-zoom": "^2.0.0",
"docusaurus-theme-github-codeblock": "^2.0.2",
- "docusaurus-theme-search-typesense": "^0.14.1",
+ "docusaurus-theme-search-typesense": "^0.24.0",
"dotenv": "^16.3.1",
"file-loader": "^6.2.0",
"prism-react-renderer": "^2.3.1",
@@ -7370,18 +7370,6 @@
"react-dom": "^18.0.0 || ^19.0.0"
}
},
- "node_modules/@docusaurus/react-loadable": {
- "version": "5.5.2",
- "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz",
- "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==",
- "dependencies": {
- "@types/react": "*",
- "prop-types": "^15.6.2"
- },
- "peerDependencies": {
- "react": "*"
- }
- },
"node_modules/@docusaurus/theme-classic": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.7.0.tgz",
@@ -8897,19 +8885,6 @@
"micromark-util-symbol": "^1.0.1"
}
},
- "node_modules/@slorber/static-site-generator-webpack-plugin": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz",
- "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==",
- "dependencies": {
- "eval": "^0.1.8",
- "p-map": "^4.0.0",
- "webpack-sources": "^3.2.2"
- },
- "engines": {
- "node": ">=14"
- }
- },
"node_modules/@surma/rollup-plugin-off-main-thread": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz",
@@ -11895,11 +11870,6 @@
"node": ">=0.8"
}
},
- "node_modules/consola": {
- "version": "2.15.3",
- "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz",
- "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw=="
- },
"node_modules/content-disposition": {
"version": "0.5.4",
"resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
@@ -12272,134 +12242,6 @@
"node": ">=10"
}
},
- "node_modules/css-minimizer-webpack-plugin": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz",
- "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==",
- "dependencies": {
- "cssnano": "^5.1.8",
- "jest-worker": "^29.1.2",
- "postcss": "^8.4.17",
- "schema-utils": "^4.0.0",
- "serialize-javascript": "^6.0.0",
- "source-map": "^0.6.1"
- },
- "engines": {
- "node": ">= 14.15.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependencies": {
- "webpack": "^5.0.0"
- },
- "peerDependenciesMeta": {
- "@parcel/css": {
- "optional": true
- },
- "@swc/css": {
- "optional": true
- },
- "clean-css": {
- "optional": true
- },
- "csso": {
- "optional": true
- },
- "esbuild": {
- "optional": true
- },
- "lightningcss": {
- "optional": true
- }
- }
- },
- "node_modules/css-minimizer-webpack-plugin/node_modules/ajv": {
- "version": "8.11.2",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz",
- "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==",
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/css-minimizer-webpack-plugin/node_modules/ajv-keywords": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
- "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
- "dependencies": {
- "fast-deep-equal": "^3.1.3"
- },
- "peerDependencies": {
- "ajv": "^8.8.2"
- }
- },
- "node_modules/css-minimizer-webpack-plugin/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/css-minimizer-webpack-plugin/node_modules/jest-worker": {
- "version": "29.3.1",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.3.1.tgz",
- "integrity": "sha512-lY4AnnmsEWeiXirAIA0c9SDPbuCBq8IYuDVL8PMm0MZ2PEs2yPvRA/J64QBXuZp7CYKrDM/rmNrc9/i3KJQncw==",
- "dependencies": {
- "@types/node": "*",
- "jest-util": "^29.3.1",
- "merge-stream": "^2.0.0",
- "supports-color": "^8.0.0"
- },
- "engines": {
- "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
- }
- },
- "node_modules/css-minimizer-webpack-plugin/node_modules/json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
- },
- "node_modules/css-minimizer-webpack-plugin/node_modules/schema-utils": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz",
- "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==",
- "dependencies": {
- "@types/json-schema": "^7.0.9",
- "ajv": "^8.8.0",
- "ajv-formats": "^2.1.1",
- "ajv-keywords": "^5.0.0"
- },
- "engines": {
- "node": ">= 12.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- }
- },
- "node_modules/css-minimizer-webpack-plugin/node_modules/supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/supports-color?sponsor=1"
- }
- },
"node_modules/css-prefers-color-scheme": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz",
@@ -12514,25 +12356,6 @@
"postcss": "^8.2.15"
}
},
- "node_modules/cssnano-preset-advanced": {
- "version": "5.3.10",
- "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz",
- "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==",
- "dependencies": {
- "autoprefixer": "^10.4.12",
- "cssnano-preset-default": "^5.2.14",
- "postcss-discard-unused": "^5.1.0",
- "postcss-merge-idents": "^5.1.1",
- "postcss-reduce-idents": "^5.2.0",
- "postcss-zindex": "^5.1.0"
- },
- "engines": {
- "node": "^10 || ^12 || >=14.0"
- },
- "peerDependencies": {
- "postcss": "^8.2.15"
- }
- },
"node_modules/cssnano-preset-default": {
"version": "5.2.14",
"resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz",
@@ -12854,1188 +12677,271 @@
"object-keys": "^1.1.1"
},
"engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/del": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz",
- "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==",
- "dependencies": {
- "globby": "^11.0.1",
- "graceful-fs": "^4.2.4",
- "is-glob": "^4.0.1",
- "is-path-cwd": "^2.2.0",
- "is-path-inside": "^3.0.2",
- "p-map": "^4.0.0",
- "rimraf": "^3.0.2",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/depd": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
- "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/dequal": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
- "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/destroy": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
- "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
- "engines": {
- "node": ">= 0.8",
- "npm": "1.2.8000 || >= 1.4.16"
- }
- },
- "node_modules/detect-newline": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
- "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/detect-node": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
- "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g=="
- },
- "node_modules/detect-port": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz",
- "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==",
- "dependencies": {
- "address": "^1.0.1",
- "debug": "4"
- },
- "bin": {
- "detect": "bin/detect-port.js",
- "detect-port": "bin/detect-port.js"
- }
- },
- "node_modules/detect-port-alt": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz",
- "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==",
- "dependencies": {
- "address": "^1.0.1",
- "debug": "^2.6.0"
- },
- "bin": {
- "detect": "bin/detect-port",
- "detect-port": "bin/detect-port"
- },
- "engines": {
- "node": ">= 4.2.1"
- }
- },
- "node_modules/detect-port-alt/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/detect-port-alt/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
- },
- "node_modules/devlop": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz",
- "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==",
- "dependencies": {
- "dequal": "^2.0.0"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/wooorm"
- }
- },
- "node_modules/didyoumean": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
- "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw=="
- },
- "node_modules/diff-sequences": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz",
- "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==",
- "engines": {
- "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
- }
- },
- "node_modules/dir-glob": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
- "dependencies": {
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/dlv": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
- "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA=="
- },
- "node_modules/dns-equal": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz",
- "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg=="
- },
- "node_modules/dns-packet": {
- "version": "5.4.0",
- "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz",
- "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==",
- "dependencies": {
- "@leichtgewicht/ip-codec": "^2.0.1"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/docusaurus-plugin-image-zoom": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/docusaurus-plugin-image-zoom/-/docusaurus-plugin-image-zoom-2.0.0.tgz",
- "integrity": "sha512-TWHQZeoiged+95CESlZk++lihzl3pqw34n0/fbexx2AocmFhbo9K2scYDgYB8amki4/X6mUCLTPZE1pQvT+00Q==",
- "dependencies": {
- "medium-zoom": "^1.0.8",
- "validate-peer-dependencies": "^2.2.0"
- },
- "peerDependencies": {
- "@docusaurus/theme-classic": ">=3.0.0"
- }
- },
- "node_modules/docusaurus-theme-github-codeblock": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/docusaurus-theme-github-codeblock/-/docusaurus-theme-github-codeblock-2.0.2.tgz",
- "integrity": "sha512-H2WoQPWOLjGZO6KS58Gsd+eUVjTFJemkReiSSu9chqokyLc/3Ih3+zPRYfuEZ/HsDvSMIarf7CNcp+Vt+/G+ig==",
- "dependencies": {
- "@docusaurus/types": "^3.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense": {
- "version": "0.14.1",
- "resolved": "https://registry.npmjs.org/docusaurus-theme-search-typesense/-/docusaurus-theme-search-typesense-0.14.1.tgz",
- "integrity": "sha512-Zdbs1qnVv5cqxzh5/zGbLQfX4UNQGo6wnRRkYTtCg1eMvK14kFn7oejCxvkvfmRZpeeWLTMBgKyV220Kv7kKFw==",
- "dependencies": {
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/plugin-content-docs": "3.0.1",
- "@docusaurus/theme-translations": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "algoliasearch-helper": "^3.10.0",
- "clsx": "^1.2.1",
- "eta": "^2.0.0",
- "fs-extra": "^10.1.0",
- "lodash": "^4.17.21",
- "tslib": "^2.4.0",
- "typesense-docsearch-react": "^3.4.1",
- "typesense-instantsearch-adapter": "^2.7.1",
- "utility-types": "^3.10.0"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "@docusaurus/core": "3.0.1",
- "@docusaurus/theme-common": "3.0.1",
- "react": "^18.0.0",
- "react-dom": "^18.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/cssnano-preset": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.0.1.tgz",
- "integrity": "sha512-wjuXzkHMW+ig4BD6Ya1Yevx9UJadO4smNZCEljqBoQfIQrQskTswBs7lZ8InHP7mCt273a/y/rm36EZhqJhknQ==",
- "dependencies": {
- "cssnano-preset-advanced": "^5.3.10",
- "postcss": "^8.4.26",
- "postcss-sort-media-queries": "^4.4.1",
- "tslib": "^2.6.0"
- },
- "engines": {
- "node": ">=18.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/logger": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.0.1.tgz",
- "integrity": "sha512-I5L6Nk8OJzkVA91O2uftmo71LBSxe1vmOn9AMR6JRCzYeEBrqneWMH02AqMvjJ2NpMiviO+t0CyPjyYV7nxCWQ==",
- "dependencies": {
- "chalk": "^4.1.2",
- "tslib": "^2.6.0"
- },
- "engines": {
- "node": ">=18.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/module-type-aliases": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.0.1.tgz",
- "integrity": "sha512-DEHpeqUDsLynl3AhQQiO7AbC7/z/lBra34jTcdYuvp9eGm01pfH1wTVq8YqWZq6Jyx0BgcVl/VJqtE9StRd9Ag==",
- "dependencies": {
- "@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/types": "3.0.1",
- "@types/history": "^4.7.11",
- "@types/react": "*",
- "@types/react-router-config": "*",
- "@types/react-router-dom": "*",
- "react-helmet-async": "*",
- "react-loadable": "npm:@docusaurus/react-loadable@5.5.2"
- },
- "peerDependencies": {
- "react": "*",
- "react-dom": "*"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/module-type-aliases/node_modules/@docusaurus/types": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.0.1.tgz",
- "integrity": "sha512-plyX2iU1tcUsF46uQ01pAd4JhexR7n0iiQ5MSnBFX6M6NSJgDYdru/i1/YNPKOnQHBoXGLHv0dNT6OAlDWNjrg==",
- "dependencies": {
- "@types/history": "^4.7.11",
- "@types/react": "*",
- "commander": "^5.1.0",
- "joi": "^17.9.2",
- "react-helmet-async": "^1.3.0",
- "utility-types": "^3.10.0",
- "webpack": "^5.88.1",
- "webpack-merge": "^5.9.0"
- },
- "peerDependencies": {
- "react": "^18.0.0",
- "react-dom": "^18.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/plugin-content-docs": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.0.1.tgz",
- "integrity": "sha512-dRfAOA5Ivo+sdzzJGXEu33yAtvGg8dlZkvt/NEJ7nwi1F2j4LEdsxtfX2GKeETB2fP6XoGNSQnFXqa2NYGrHFg==",
- "dependencies": {
- "@docusaurus/core": "3.0.1",
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/mdx-loader": "3.0.1",
- "@docusaurus/module-type-aliases": "3.0.1",
- "@docusaurus/types": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "@types/react-router-config": "^5.0.7",
- "combine-promises": "^1.1.0",
- "fs-extra": "^11.1.1",
- "js-yaml": "^4.1.0",
- "lodash": "^4.17.21",
- "tslib": "^2.6.0",
- "utility-types": "^3.10.0",
- "webpack": "^5.88.1"
- },
- "engines": {
- "node": ">=18.0"
- },
- "peerDependencies": {
- "react": "^18.0.0",
- "react-dom": "^18.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/core": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.0.1.tgz",
- "integrity": "sha512-CXrLpOnW+dJdSv8M5FAJ3JBwXtL6mhUWxFA8aS0ozK6jBG/wgxERk5uvH28fCeFxOGbAT9v1e9dOMo1X2IEVhQ==",
- "dependencies": {
- "@babel/core": "^7.23.3",
- "@babel/generator": "^7.23.3",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-transform-runtime": "^7.22.9",
- "@babel/preset-env": "^7.22.9",
- "@babel/preset-react": "^7.22.5",
- "@babel/preset-typescript": "^7.22.5",
- "@babel/runtime": "^7.22.6",
- "@babel/runtime-corejs3": "^7.22.6",
- "@babel/traverse": "^7.22.8",
- "@docusaurus/cssnano-preset": "3.0.1",
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/mdx-loader": "3.0.1",
- "@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-common": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "@slorber/static-site-generator-webpack-plugin": "^4.0.7",
- "@svgr/webpack": "^6.5.1",
- "autoprefixer": "^10.4.14",
- "babel-loader": "^9.1.3",
- "babel-plugin-dynamic-import-node": "^2.3.3",
- "boxen": "^6.2.1",
- "chalk": "^4.1.2",
- "chokidar": "^3.5.3",
- "clean-css": "^5.3.2",
- "cli-table3": "^0.6.3",
- "combine-promises": "^1.1.0",
- "commander": "^5.1.0",
- "copy-webpack-plugin": "^11.0.0",
- "core-js": "^3.31.1",
- "css-loader": "^6.8.1",
- "css-minimizer-webpack-plugin": "^4.2.2",
- "cssnano": "^5.1.15",
- "del": "^6.1.1",
- "detect-port": "^1.5.1",
- "escape-html": "^1.0.3",
- "eta": "^2.2.0",
- "file-loader": "^6.2.0",
- "fs-extra": "^11.1.1",
- "html-minifier-terser": "^7.2.0",
- "html-tags": "^3.3.1",
- "html-webpack-plugin": "^5.5.3",
- "leven": "^3.1.0",
- "lodash": "^4.17.21",
- "mini-css-extract-plugin": "^2.7.6",
- "postcss": "^8.4.26",
- "postcss-loader": "^7.3.3",
- "prompts": "^2.4.2",
- "react-dev-utils": "^12.0.1",
- "react-helmet-async": "^1.3.0",
- "react-loadable": "npm:@docusaurus/react-loadable@5.5.2",
- "react-loadable-ssr-addon-v5-slorber": "^1.0.1",
- "react-router": "^5.3.4",
- "react-router-config": "^5.1.1",
- "react-router-dom": "^5.3.4",
- "rtl-detect": "^1.0.4",
- "semver": "^7.5.4",
- "serve-handler": "^6.1.5",
- "shelljs": "^0.8.5",
- "terser-webpack-plugin": "^5.3.9",
- "tslib": "^2.6.0",
- "update-notifier": "^6.0.2",
- "url-loader": "^4.1.1",
- "webpack": "^5.88.1",
- "webpack-bundle-analyzer": "^4.9.0",
- "webpack-dev-server": "^4.15.1",
- "webpack-merge": "^5.9.0",
- "webpackbar": "^5.0.2"
- },
- "bin": {
- "docusaurus": "bin/docusaurus.mjs"
- },
- "engines": {
- "node": ">=18.0"
- },
- "peerDependencies": {
- "react": "^18.0.0",
- "react-dom": "^18.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/core/node_modules/@docusaurus/utils-common": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.0.1.tgz",
- "integrity": "sha512-W0AxD6w6T8g6bNro8nBRWf7PeZ/nn7geEWM335qHU2DDDjHuV4UZjgUGP1AQsdcSikPrlIqTJJbKzer1lRSlIg==",
- "dependencies": {
- "tslib": "^2.6.0"
- },
- "engines": {
- "node": ">=18.0"
- },
- "peerDependencies": {
- "@docusaurus/types": "*"
- },
- "peerDependenciesMeta": {
- "@docusaurus/types": {
- "optional": true
- }
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/mdx-loader": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.0.1.tgz",
- "integrity": "sha512-ldnTmvnvlrONUq45oKESrpy+lXtbnTcTsFkOTIDswe5xx5iWJjt6eSa0f99ZaWlnm24mlojcIGoUWNCS53qVlQ==",
- "dependencies": {
- "@babel/parser": "^7.22.7",
- "@babel/traverse": "^7.22.8",
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "@mdx-js/mdx": "^3.0.0",
- "@slorber/remark-comment": "^1.0.0",
- "escape-html": "^1.0.3",
- "estree-util-value-to-estree": "^3.0.1",
- "file-loader": "^6.2.0",
- "fs-extra": "^11.1.1",
- "image-size": "^1.0.2",
- "mdast-util-mdx": "^3.0.0",
- "mdast-util-to-string": "^4.0.0",
- "rehype-raw": "^7.0.0",
- "remark-directive": "^3.0.0",
- "remark-emoji": "^4.0.0",
- "remark-frontmatter": "^5.0.0",
- "remark-gfm": "^4.0.0",
- "stringify-object": "^3.3.0",
- "tslib": "^2.6.0",
- "unified": "^11.0.3",
- "unist-util-visit": "^5.0.0",
- "url-loader": "^4.1.1",
- "vfile": "^6.0.1",
- "webpack": "^5.88.1"
- },
- "engines": {
- "node": ">=18.0"
- },
- "peerDependencies": {
- "react": "^18.0.0",
- "react-dom": "^18.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/plugin-content-docs/node_modules/@docusaurus/types": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.0.1.tgz",
- "integrity": "sha512-plyX2iU1tcUsF46uQ01pAd4JhexR7n0iiQ5MSnBFX6M6NSJgDYdru/i1/YNPKOnQHBoXGLHv0dNT6OAlDWNjrg==",
- "dependencies": {
- "@types/history": "^4.7.11",
- "@types/react": "*",
- "commander": "^5.1.0",
- "joi": "^17.9.2",
- "react-helmet-async": "^1.3.0",
- "utility-types": "^3.10.0",
- "webpack": "^5.88.1",
- "webpack-merge": "^5.9.0"
- },
- "peerDependencies": {
- "react": "^18.0.0",
- "react-dom": "^18.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/plugin-content-docs/node_modules/fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- },
- "engines": {
- "node": ">=14.14"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/theme-translations": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.0.1.tgz",
- "integrity": "sha512-6UrbpzCTN6NIJnAtZ6Ne9492vmPVX+7Fsz4kmp+yor3KQwA1+MCzQP7ItDNkP38UmVLnvB/cYk/IvehCUqS3dg==",
- "dependencies": {
- "fs-extra": "^11.1.1",
- "tslib": "^2.6.0"
- },
- "engines": {
- "node": ">=18.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/theme-translations/node_modules/fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- },
- "engines": {
- "node": ">=14.14"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/utils": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.0.1.tgz",
- "integrity": "sha512-TwZ33Am0q4IIbvjhUOs+zpjtD/mXNmLmEgeTGuRq01QzulLHuPhaBTTAC/DHu6kFx3wDgmgpAlaRuCHfTcXv8g==",
- "dependencies": {
- "@docusaurus/logger": "3.0.1",
- "@svgr/webpack": "^6.5.1",
- "escape-string-regexp": "^4.0.0",
- "file-loader": "^6.2.0",
- "fs-extra": "^11.1.1",
- "github-slugger": "^1.5.0",
- "globby": "^11.1.0",
- "gray-matter": "^4.0.3",
- "jiti": "^1.20.0",
- "js-yaml": "^4.1.0",
- "lodash": "^4.17.21",
- "micromatch": "^4.0.5",
- "resolve-pathname": "^3.0.0",
- "shelljs": "^0.8.5",
- "tslib": "^2.6.0",
- "url-loader": "^4.1.1",
- "webpack": "^5.88.1"
- },
- "engines": {
- "node": ">=18.0"
- },
- "peerDependencies": {
- "@docusaurus/types": "*"
- },
- "peerDependenciesMeta": {
- "@docusaurus/types": {
- "optional": true
- }
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/utils-validation": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.0.1.tgz",
- "integrity": "sha512-ujTnqSfyGQ7/4iZdB4RRuHKY/Nwm58IIb+41s5tCXOv/MBU2wGAjOHq3U+AEyJ8aKQcHbxvTKJaRchNHYUVUQg==",
- "dependencies": {
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "joi": "^17.9.2",
- "js-yaml": "^4.1.0",
- "tslib": "^2.6.0"
- },
- "engines": {
- "node": ">=18.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@docusaurus/utils/node_modules/fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- },
- "engines": {
- "node": ">=14.14"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/babel-plugin-add-jsx-attribute": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz",
- "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/babel-plugin-replace-jsx-attribute-value": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz",
- "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/babel-plugin-svg-dynamic-title": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz",
- "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/babel-plugin-svg-em-dimensions": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz",
- "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/babel-plugin-transform-react-native-svg": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz",
- "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/babel-plugin-transform-svg-component": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz",
- "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ==",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/babel-preset": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz",
- "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==",
- "dependencies": {
- "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1",
- "@svgr/babel-plugin-remove-jsx-attribute": "*",
- "@svgr/babel-plugin-remove-jsx-empty-expression": "*",
- "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1",
- "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1",
- "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1",
- "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1",
- "@svgr/babel-plugin-transform-svg-component": "^6.5.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/core": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz",
- "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==",
- "dependencies": {
- "@babel/core": "^7.19.6",
- "@svgr/babel-preset": "^6.5.1",
- "@svgr/plugin-jsx": "^6.5.1",
- "camelcase": "^6.2.0",
- "cosmiconfig": "^7.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/hast-util-to-babel-ast": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz",
- "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==",
- "dependencies": {
- "@babel/types": "^7.20.0",
- "entities": "^4.4.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/plugin-jsx": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz",
- "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==",
- "dependencies": {
- "@babel/core": "^7.19.6",
- "@svgr/babel-preset": "^6.5.1",
- "@svgr/hast-util-to-babel-ast": "^6.5.1",
- "svg-parser": "^2.0.4"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@svgr/core": "^6.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/plugin-svgo": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz",
- "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==",
- "dependencies": {
- "cosmiconfig": "^7.0.1",
- "deepmerge": "^4.2.2",
- "svgo": "^2.8.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- },
- "peerDependencies": {
- "@svgr/core": "*"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/@svgr/webpack": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz",
- "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==",
- "dependencies": {
- "@babel/core": "^7.19.6",
- "@babel/plugin-transform-react-constant-elements": "^7.18.12",
- "@babel/preset-env": "^7.19.4",
- "@babel/preset-react": "^7.18.6",
- "@babel/preset-typescript": "^7.18.6",
- "@svgr/core": "^6.5.1",
- "@svgr/plugin-jsx": "^6.5.1",
- "@svgr/plugin-svgo": "^6.5.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/gregberge"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/ajv": {
- "version": "8.12.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
- "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
- "dependencies": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/epoberezkin"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/ajv-keywords": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
- "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
- "dependencies": {
- "fast-deep-equal": "^3.1.3"
- },
- "peerDependencies": {
- "ajv": "^8.8.2"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/babel-loader": {
- "version": "9.1.3",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz",
- "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==",
- "dependencies": {
- "find-cache-dir": "^4.0.0",
- "schema-utils": "^4.0.0"
- },
- "engines": {
- "node": ">= 14.15.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.12.0",
- "webpack": ">=5"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/boxen": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz",
- "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==",
- "dependencies": {
- "ansi-align": "^3.0.1",
- "camelcase": "^6.2.0",
- "chalk": "^4.1.2",
- "cli-boxes": "^3.0.0",
- "string-width": "^5.0.1",
- "type-fest": "^2.5.0",
- "widest-line": "^4.0.1",
- "wrap-ansi": "^8.0.1"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/css-tree": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz",
- "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==",
- "dependencies": {
- "mdn-data": "2.0.14",
- "source-map": "^0.6.1"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/entities": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
- "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
- "engines": {
- "node": ">=0.12"
- },
- "funding": {
- "url": "https://github.com/fb55/entities?sponsor=1"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/find-cache-dir": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz",
- "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==",
- "dependencies": {
- "common-path-prefix": "^3.0.0",
- "pkg-dir": "^7.0.0"
- },
- "engines": {
- "node": ">=14.16"
+ "node": ">= 0.4"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/find-up": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz",
- "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==",
+ "node_modules/del": {
+ "version": "6.1.1",
+ "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz",
+ "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==",
"dependencies": {
- "locate-path": "^7.1.0",
- "path-exists": "^5.0.0"
+ "globby": "^11.0.1",
+ "graceful-fs": "^4.2.4",
+ "is-glob": "^4.0.1",
+ "is-path-cwd": "^2.2.0",
+ "is-path-inside": "^3.0.2",
+ "p-map": "^4.0.0",
+ "rimraf": "^3.0.2",
+ "slash": "^3.0.0"
},
"engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ "node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/html-minifier-terser": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz",
- "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==",
- "dependencies": {
- "camel-case": "^4.1.2",
- "clean-css": "~5.3.2",
- "commander": "^10.0.0",
- "entities": "^4.4.0",
- "param-case": "^3.0.4",
- "relateurl": "^0.2.7",
- "terser": "^5.15.1"
- },
- "bin": {
- "html-minifier-terser": "cli.js"
- },
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
"engines": {
- "node": "^14.13.1 || >=16.0.0"
+ "node": ">=0.4.0"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/html-minifier-terser/node_modules/commander": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
- "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
+ "node_modules/depd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
"engines": {
- "node": ">=14"
+ "node": ">= 0.8"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
+ "node_modules/dequal": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
+ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
+ "engines": {
+ "node": ">=6"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
+ "node_modules/destroy": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/locate-path": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz",
- "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==",
- "dependencies": {
- "p-locate": "^6.0.0"
- },
+ "node_modules/detect-newline": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz",
+ "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==",
"engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=8"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/mdn-data": {
- "version": "2.0.14",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
- "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow=="
+ "node_modules/detect-node": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
+ "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g=="
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/p-limit": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz",
- "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==",
+ "node_modules/detect-port": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.5.1.tgz",
+ "integrity": "sha512-aBzdj76lueB6uUst5iAs7+0H/oOjqI5D16XUWxlWMIMROhcM0rfsNVk93zTngq1dDNpoXRr++Sus7ETAExppAQ==",
"dependencies": {
- "yocto-queue": "^1.0.0"
- },
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ "address": "^1.0.1",
+ "debug": "4"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "bin": {
+ "detect": "bin/detect-port.js",
+ "detect-port": "bin/detect-port.js"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/p-locate": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz",
- "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==",
+ "node_modules/detect-port-alt": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz",
+ "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==",
"dependencies": {
- "p-limit": "^4.0.0"
+ "address": "^1.0.1",
+ "debug": "^2.6.0"
},
- "engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ "bin": {
+ "detect": "bin/detect-port",
+ "detect-port": "bin/detect-port"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/path-exists": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz",
- "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ==",
"engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ "node": ">= 4.2.1"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/pkg-dir": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz",
- "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==",
+ "node_modules/detect-port-alt/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dependencies": {
- "find-up": "^6.3.0"
- },
- "engines": {
- "node": ">=14.16"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "ms": "2.0.0"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/react-loadable": {
- "name": "@docusaurus/react-loadable",
- "version": "5.5.2",
- "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz",
- "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==",
+ "node_modules/detect-port-alt/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
+ },
+ "node_modules/devlop": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz",
+ "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==",
"dependencies": {
- "@types/react": "*",
- "prop-types": "^15.6.2"
+ "dequal": "^2.0.0"
},
- "peerDependencies": {
- "react": "*"
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/react-router-dom": {
- "version": "5.3.4",
- "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz",
- "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==",
- "dependencies": {
- "@babel/runtime": "^7.12.13",
- "history": "^4.9.0",
- "loose-envify": "^1.3.1",
- "prop-types": "^15.6.2",
- "react-router": "5.3.4",
- "tiny-invariant": "^1.0.2",
- "tiny-warning": "^1.0.0"
- },
- "peerDependencies": {
- "react": ">=15"
+ "node_modules/didyoumean": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz",
+ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw=="
+ },
+ "node_modules/diff-sequences": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz",
+ "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==",
+ "engines": {
+ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/schema-utils": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz",
- "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==",
+ "node_modules/dir-glob": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
"dependencies": {
- "@types/json-schema": "^7.0.9",
- "ajv": "^8.9.0",
- "ajv-formats": "^2.1.1",
- "ajv-keywords": "^5.1.0"
+ "path-type": "^4.0.0"
},
"engines": {
- "node": ">= 12.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
+ "node": ">=8"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/semver": {
- "version": "7.6.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
- "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
+ "node_modules/dlv": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
+ "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA=="
+ },
+ "node_modules/dns-equal": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz",
+ "integrity": "sha512-z+paD6YUQsk+AbGCEM4PrOXSss5gd66QfcVBFTKR/HpFL9jCqikS94HYwKww6fQyO7IxrIIyUu+g0Ka9tUS2Cg=="
+ },
+ "node_modules/dns-packet": {
+ "version": "5.4.0",
+ "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-5.4.0.tgz",
+ "integrity": "sha512-EgqGeaBB8hLiHLZtp/IbaDQTL8pZ0+IvwzSHA6d7VyMDM+B9hgddEMa9xjK5oYnw0ci0JQ6g2XCD7/f6cafU6g==",
"dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
+ "@leichtgewicht/ip-codec": "^2.0.1"
},
"engines": {
- "node": ">=10"
+ "node": ">=6"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
+ "node_modules/doctrine": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
"dependencies": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
+ "esutils": "^2.0.2"
},
"engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=6.0.0"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/svgo": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz",
- "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==",
+ "node_modules/docusaurus-plugin-image-zoom": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/docusaurus-plugin-image-zoom/-/docusaurus-plugin-image-zoom-2.0.0.tgz",
+ "integrity": "sha512-TWHQZeoiged+95CESlZk++lihzl3pqw34n0/fbexx2AocmFhbo9K2scYDgYB8amki4/X6mUCLTPZE1pQvT+00Q==",
"dependencies": {
- "@trysound/sax": "0.2.0",
- "commander": "^7.2.0",
- "css-select": "^4.1.3",
- "css-tree": "^1.1.3",
- "csso": "^4.2.0",
- "picocolors": "^1.0.0",
- "stable": "^0.1.8"
- },
- "bin": {
- "svgo": "bin/svgo"
+ "medium-zoom": "^1.0.8",
+ "validate-peer-dependencies": "^2.2.0"
},
- "engines": {
- "node": ">=10.13.0"
+ "peerDependencies": {
+ "@docusaurus/theme-classic": ">=3.0.0"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/svgo/node_modules/commander": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
- "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
- "engines": {
- "node": ">= 10"
+ "node_modules/docusaurus-theme-github-codeblock": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/docusaurus-theme-github-codeblock/-/docusaurus-theme-github-codeblock-2.0.2.tgz",
+ "integrity": "sha512-H2WoQPWOLjGZO6KS58Gsd+eUVjTFJemkReiSSu9chqokyLc/3Ih3+zPRYfuEZ/HsDvSMIarf7CNcp+Vt+/G+ig==",
+ "dependencies": {
+ "@docusaurus/types": "^3.0.0"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/tslib": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
- "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
- },
- "node_modules/docusaurus-theme-search-typesense/node_modules/type-fest": {
- "version": "2.19.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
- "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==",
+ "node_modules/docusaurus-theme-search-typesense": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/docusaurus-theme-search-typesense/-/docusaurus-theme-search-typesense-0.24.0.tgz",
+ "integrity": "sha512-kjaOfGPGSXGoHtpSErzikGDXNQ4Cs5fn0aLyv9ZkdQwPjxP/V1jZA2lKCyaBk1Ouel2Zi0/Ade9IaqaI38wbfw==",
+ "license": "MIT",
+ "dependencies": {
+ "@docusaurus/core": "~3.7.0",
+ "@docusaurus/logger": "~3.7.0",
+ "@docusaurus/plugin-content-docs": "~3.7.0",
+ "@docusaurus/theme-common": "~3.7.0",
+ "@docusaurus/theme-translations": "~3.7.0",
+ "@docusaurus/utils": "~3.7.0",
+ "@docusaurus/utils-validation": "~3.7.0",
+ "algoliasearch-helper": "^3.13.3",
+ "clsx": "^2.0.0",
+ "eta": "^2.2.0",
+ "fs-extra": "^11.1.1",
+ "lodash": "^4.17.21",
+ "tslib": "^2.6.0",
+ "typesense-docsearch-react": "^3.4.1",
+ "typesense-instantsearch-adapter": "^2.9.0-5",
+ "utility-types": "^3.10.0"
+ },
"engines": {
- "node": ">=12.20"
+ "node": ">=18"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "peerDependencies": {
+ "@docusaurus/core": "~3.7.0",
+ "@docusaurus/theme-common": "~3.7.0",
+ "react": "^18.0.0 || ^19.0.0",
+ "react-dom": "^18.0.0 || ^19.0.0"
}
},
- "node_modules/docusaurus-theme-search-typesense/node_modules/yocto-queue": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz",
- "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==",
+ "node_modules/docusaurus-theme-search-typesense/node_modules/clsx": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz",
+ "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA==",
+ "license": "MIT",
"engines": {
- "node": ">=12.20"
+ "node": ">=6"
+ }
+ },
+ "node_modules/docusaurus-theme-search-typesense/node_modules/fs-extra": {
+ "version": "11.3.4",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.4.tgz",
+ "integrity": "sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==",
+ "license": "MIT",
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "engines": {
+ "node": ">=14.14"
}
},
+ "node_modules/docusaurus-theme-search-typesense/node_modules/tslib": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
+ "license": "0BSD"
+ },
"node_modules/dom-converter": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
@@ -23456,32 +22362,6 @@
"postcss": "^8.2.15"
}
},
- "node_modules/postcss-discard-unused": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz",
- "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==",
- "dependencies": {
- "postcss-selector-parser": "^6.0.5"
- },
- "engines": {
- "node": "^10 || ^12 || >=14.0"
- },
- "peerDependencies": {
- "postcss": "^8.2.15"
- }
- },
- "node_modules/postcss-discard-unused/node_modules/postcss-selector-parser": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
- "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
- "dependencies": {
- "cssesc": "^3.0.0",
- "util-deprecate": "^1.0.2"
- },
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/postcss-double-position-gradients": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz",
@@ -23825,21 +22705,6 @@
"postcss": "^8.1.0"
}
},
- "node_modules/postcss-merge-idents": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz",
- "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==",
- "dependencies": {
- "cssnano-utils": "^3.1.0",
- "postcss-value-parser": "^4.2.0"
- },
- "engines": {
- "node": "^10 || ^12 || >=14.0"
- },
- "peerDependencies": {
- "postcss": "^8.2.15"
- }
- },
"node_modules/postcss-merge-longhand": {
"version": "5.1.7",
"resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz",
@@ -24429,20 +23294,6 @@
"node": ">=4"
}
},
- "node_modules/postcss-reduce-idents": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz",
- "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==",
- "dependencies": {
- "postcss-value-parser": "^4.2.0"
- },
- "engines": {
- "node": "^10 || ^12 || >=14.0"
- },
- "peerDependencies": {
- "postcss": "^8.2.15"
- }
- },
"node_modules/postcss-reduce-initial": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz",
@@ -24522,20 +23373,6 @@
"node": ">=4"
}
},
- "node_modules/postcss-sort-media-queries": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.4.1.tgz",
- "integrity": "sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==",
- "dependencies": {
- "sort-css-media-queries": "2.1.0"
- },
- "engines": {
- "node": ">=10.0.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.16"
- }
- },
"node_modules/postcss-svgo": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz",
@@ -24627,17 +23464,6 @@
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
"integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ=="
},
- "node_modules/postcss-zindex": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz",
- "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A==",
- "engines": {
- "node": "^10 || ^12 || >=14.0"
- },
- "peerDependencies": {
- "postcss": "^8.2.15"
- }
- },
"node_modules/prelude-ls": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -26379,11 +25205,6 @@
"node": ">=8"
}
},
- "node_modules/rtl-detect": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz",
- "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ=="
- },
"node_modules/rtlcss": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-4.3.0.tgz",
@@ -26987,14 +25808,6 @@
"websocket-driver": "^0.7.4"
}
},
- "node_modules/sort-css-media-queries": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz",
- "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA==",
- "engines": {
- "node": ">= 6.3.0"
- }
- },
"node_modules/source-list-map": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
@@ -28334,18 +27147,42 @@
"integrity": "sha512-b6Z/X4MczChMcfhk6kfRmBzPgjoPzuS9KGR4AFsiLulLNRAAqhP+xZTKtMnZGhLuc61I20d5WqlId02AZvcO6g=="
},
"node_modules/typesense-instantsearch-adapter": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/typesense-instantsearch-adapter/-/typesense-instantsearch-adapter-2.8.0.tgz",
- "integrity": "sha512-2q4QVpHoUV0ncf1XOqIC0dufOTkFRxQ0mHzg//H3WK02ZYqdNNPCAacZODhQlltl1cNJdTI8Y4uuGVd6fJuGzw==",
+ "version": "2.9.0",
+ "resolved": "https://registry.npmjs.org/typesense-instantsearch-adapter/-/typesense-instantsearch-adapter-2.9.0.tgz",
+ "integrity": "sha512-ZSgpi9T/S70Zs2eYIv0VmD0o4+VfBN9jz97Rhbf9Bj+gpUAbjmm46XAobEE2TGs2Wo04hpzCrXifXNJecalC/w==",
"hasInstallScript": true,
+ "license": "Apache-2.0",
"dependencies": {
- "typesense": "^1.7.2"
+ "typesense": "^2.1.0-1"
},
"engines": {
- "node": ">=16"
+ "node": ">=18"
},
"peerDependencies": {
- "@babel/runtime": "^7.17.2"
+ "@babel/runtime": "^7.24.1"
+ }
+ },
+ "node_modules/typesense-instantsearch-adapter/node_modules/tslib": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
+ "license": "0BSD"
+ },
+ "node_modules/typesense-instantsearch-adapter/node_modules/typesense": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/typesense/-/typesense-2.1.0.tgz",
+ "integrity": "sha512-a/IRTL+dRXlpRDU4UodyGj8hl5xBz3nKihVRd/KfSFAfFPGcpdX6lxIgwdXy3O6VLNNiEsN8YwIsPHQPVT0vNw==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "axios": "^1.8.4",
+ "loglevel": "^1.8.1",
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "peerDependencies": {
+ "@babel/runtime": "^7.23.2"
}
},
"node_modules/typesense/node_modules/axios": {
@@ -29296,23 +28133,6 @@
"url": "https://opencollective.com/webpack"
}
},
- "node_modules/webpackbar": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz",
- "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==",
- "dependencies": {
- "chalk": "^4.1.0",
- "consola": "^2.15.3",
- "pretty-time": "^1.1.0",
- "std-env": "^3.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "peerDependencies": {
- "webpack": "3 || 4 || 5"
- }
- },
"node_modules/websocket-driver": {
"version": "0.7.4",
"resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz",
@@ -34238,15 +33058,6 @@
"@docusaurus/types": "3.7.0"
}
},
- "@docusaurus/react-loadable": {
- "version": "5.5.2",
- "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz",
- "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==",
- "requires": {
- "@types/react": "*",
- "prop-types": "^15.6.2"
- }
- },
"@docusaurus/theme-classic": {
"version": "3.7.0",
"resolved": "https://registry.npmjs.org/@docusaurus/theme-classic/-/theme-classic-3.7.0.tgz",
@@ -35445,16 +34256,6 @@
"micromark-util-symbol": "^1.0.1"
}
},
- "@slorber/static-site-generator-webpack-plugin": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/@slorber/static-site-generator-webpack-plugin/-/static-site-generator-webpack-plugin-4.0.7.tgz",
- "integrity": "sha512-Ug7x6z5lwrz0WqdnNFOMYrDQNTPAprvHLSh6+/fmml3qUiz6l5eq+2MzLKWtn/q5K5NpSiFsZTP/fck/3vjSxA==",
- "requires": {
- "eval": "^0.1.8",
- "p-map": "^4.0.0",
- "webpack-sources": "^3.2.2"
- }
- },
"@surma/rollup-plugin-off-main-thread": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/@surma/rollup-plugin-off-main-thread/-/rollup-plugin-off-main-thread-2.2.3.tgz",
@@ -37682,11 +36483,6 @@
"resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz",
"integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA=="
},
- "consola": {
- "version": "2.15.3",
- "resolved": "https://registry.npmjs.org/consola/-/consola-2.15.3.tgz",
- "integrity": "sha512-9vAdYbHj6x2fLKC4+oPH0kFzY/orMZyG2Aj+kNylHxKGJ/Ed4dpNyAQYwJOdqO4zdM7XpVHmyejQDcQHrnuXbw=="
- },
"content-disposition": {
"version": "0.5.4",
"resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
@@ -37923,80 +36719,6 @@
}
}
},
- "css-minimizer-webpack-plugin": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/css-minimizer-webpack-plugin/-/css-minimizer-webpack-plugin-4.2.2.tgz",
- "integrity": "sha512-s3Of/4jKfw1Hj9CxEO1E5oXhQAxlayuHO2y/ML+C6I9sQ7FdzfEV6QgMLN3vI+qFsjJGIAFLKtQK7t8BOXAIyA==",
- "requires": {
- "cssnano": "^5.1.8",
- "jest-worker": "^29.1.2",
- "postcss": "^8.4.17",
- "schema-utils": "^4.0.0",
- "serialize-javascript": "^6.0.0",
- "source-map": "^0.6.1"
- },
- "dependencies": {
- "ajv": {
- "version": "8.11.2",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz",
- "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==",
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-keywords": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
- "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
- "requires": {
- "fast-deep-equal": "^3.1.3"
- }
- },
- "has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="
- },
- "jest-worker": {
- "version": "29.3.1",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.3.1.tgz",
- "integrity": "sha512-lY4AnnmsEWeiXirAIA0c9SDPbuCBq8IYuDVL8PMm0MZ2PEs2yPvRA/J64QBXuZp7CYKrDM/rmNrc9/i3KJQncw==",
- "requires": {
- "@types/node": "*",
- "jest-util": "^29.3.1",
- "merge-stream": "^2.0.0",
- "supports-color": "^8.0.0"
- }
- },
- "json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
- },
- "schema-utils": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz",
- "integrity": "sha512-1edyXKgh6XnJsJSQ8mKWXnN/BVaIbFMLpouRUrXgVq7WYne5kw3MW7UPhO44uRXQSIpTSXoJbmrR2X0w9kUTyg==",
- "requires": {
- "@types/json-schema": "^7.0.9",
- "ajv": "^8.8.0",
- "ajv-formats": "^2.1.1",
- "ajv-keywords": "^5.0.0"
- }
- },
- "supports-color": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
- "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
"css-prefers-color-scheme": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-6.0.3.tgz",
@@ -38063,19 +36785,6 @@
"yaml": "^1.10.2"
}
},
- "cssnano-preset-advanced": {
- "version": "5.3.10",
- "resolved": "https://registry.npmjs.org/cssnano-preset-advanced/-/cssnano-preset-advanced-5.3.10.tgz",
- "integrity": "sha512-fnYJyCS9jgMU+cmHO1rPSPf9axbQyD7iUhLO5Df6O4G+fKIOMps+ZbU0PdGFejFBBZ3Pftf18fn1eG7MAPUSWQ==",
- "requires": {
- "autoprefixer": "^10.4.12",
- "cssnano-preset-default": "^5.2.14",
- "postcss-discard-unused": "^5.1.0",
- "postcss-merge-idents": "^5.1.1",
- "postcss-reduce-idents": "^5.2.0",
- "postcss-zindex": "^5.1.0"
- }
- },
"cssnano-preset-default": {
"version": "5.2.14",
"resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-5.2.14.tgz",
@@ -38470,665 +37179,47 @@
}
},
"docusaurus-theme-search-typesense": {
- "version": "0.14.1",
- "resolved": "https://registry.npmjs.org/docusaurus-theme-search-typesense/-/docusaurus-theme-search-typesense-0.14.1.tgz",
- "integrity": "sha512-Zdbs1qnVv5cqxzh5/zGbLQfX4UNQGo6wnRRkYTtCg1eMvK14kFn7oejCxvkvfmRZpeeWLTMBgKyV220Kv7kKFw==",
- "requires": {
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/plugin-content-docs": "3.0.1",
- "@docusaurus/theme-translations": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "algoliasearch-helper": "^3.10.0",
- "clsx": "^1.2.1",
- "eta": "^2.0.0",
- "fs-extra": "^10.1.0",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/docusaurus-theme-search-typesense/-/docusaurus-theme-search-typesense-0.24.0.tgz",
+ "integrity": "sha512-kjaOfGPGSXGoHtpSErzikGDXNQ4Cs5fn0aLyv9ZkdQwPjxP/V1jZA2lKCyaBk1Ouel2Zi0/Ade9IaqaI38wbfw==",
+ "requires": {
+ "@docusaurus/core": "~3.7.0",
+ "@docusaurus/logger": "~3.7.0",
+ "@docusaurus/plugin-content-docs": "~3.7.0",
+ "@docusaurus/theme-common": "~3.7.0",
+ "@docusaurus/theme-translations": "~3.7.0",
+ "@docusaurus/utils": "~3.7.0",
+ "@docusaurus/utils-validation": "~3.7.0",
+ "algoliasearch-helper": "^3.13.3",
+ "clsx": "^2.0.0",
+ "eta": "^2.2.0",
+ "fs-extra": "^11.1.1",
"lodash": "^4.17.21",
- "tslib": "^2.4.0",
+ "tslib": "^2.6.0",
"typesense-docsearch-react": "^3.4.1",
- "typesense-instantsearch-adapter": "^2.7.1",
+ "typesense-instantsearch-adapter": "^2.9.0-5",
"utility-types": "^3.10.0"
},
"dependencies": {
- "@docusaurus/cssnano-preset": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/cssnano-preset/-/cssnano-preset-3.0.1.tgz",
- "integrity": "sha512-wjuXzkHMW+ig4BD6Ya1Yevx9UJadO4smNZCEljqBoQfIQrQskTswBs7lZ8InHP7mCt273a/y/rm36EZhqJhknQ==",
- "requires": {
- "cssnano-preset-advanced": "^5.3.10",
- "postcss": "^8.4.26",
- "postcss-sort-media-queries": "^4.4.1",
- "tslib": "^2.6.0"
- }
- },
- "@docusaurus/logger": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/logger/-/logger-3.0.1.tgz",
- "integrity": "sha512-I5L6Nk8OJzkVA91O2uftmo71LBSxe1vmOn9AMR6JRCzYeEBrqneWMH02AqMvjJ2NpMiviO+t0CyPjyYV7nxCWQ==",
- "requires": {
- "chalk": "^4.1.2",
- "tslib": "^2.6.0"
- }
- },
- "@docusaurus/module-type-aliases": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/module-type-aliases/-/module-type-aliases-3.0.1.tgz",
- "integrity": "sha512-DEHpeqUDsLynl3AhQQiO7AbC7/z/lBra34jTcdYuvp9eGm01pfH1wTVq8YqWZq6Jyx0BgcVl/VJqtE9StRd9Ag==",
- "requires": {
- "@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/types": "3.0.1",
- "@types/history": "^4.7.11",
- "@types/react": "*",
- "@types/react-router-config": "*",
- "@types/react-router-dom": "*",
- "react-helmet-async": "*",
- "react-loadable": "npm:@docusaurus/react-loadable@5.5.2"
- },
- "dependencies": {
- "@docusaurus/types": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.0.1.tgz",
- "integrity": "sha512-plyX2iU1tcUsF46uQ01pAd4JhexR7n0iiQ5MSnBFX6M6NSJgDYdru/i1/YNPKOnQHBoXGLHv0dNT6OAlDWNjrg==",
- "requires": {
- "@types/history": "^4.7.11",
- "@types/react": "*",
- "commander": "^5.1.0",
- "joi": "^17.9.2",
- "react-helmet-async": "^1.3.0",
- "utility-types": "^3.10.0",
- "webpack": "^5.88.1",
- "webpack-merge": "^5.9.0"
- }
- }
- }
- },
- "@docusaurus/plugin-content-docs": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.0.1.tgz",
- "integrity": "sha512-dRfAOA5Ivo+sdzzJGXEu33yAtvGg8dlZkvt/NEJ7nwi1F2j4LEdsxtfX2GKeETB2fP6XoGNSQnFXqa2NYGrHFg==",
- "requires": {
- "@docusaurus/core": "3.0.1",
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/mdx-loader": "3.0.1",
- "@docusaurus/module-type-aliases": "3.0.1",
- "@docusaurus/types": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "@types/react-router-config": "^5.0.7",
- "combine-promises": "^1.1.0",
- "fs-extra": "^11.1.1",
- "js-yaml": "^4.1.0",
- "lodash": "^4.17.21",
- "tslib": "^2.6.0",
- "utility-types": "^3.10.0",
- "webpack": "^5.88.1"
- },
- "dependencies": {
- "@docusaurus/core": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/core/-/core-3.0.1.tgz",
- "integrity": "sha512-CXrLpOnW+dJdSv8M5FAJ3JBwXtL6mhUWxFA8aS0ozK6jBG/wgxERk5uvH28fCeFxOGbAT9v1e9dOMo1X2IEVhQ==",
- "requires": {
- "@babel/core": "^7.23.3",
- "@babel/generator": "^7.23.3",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-transform-runtime": "^7.22.9",
- "@babel/preset-env": "^7.22.9",
- "@babel/preset-react": "^7.22.5",
- "@babel/preset-typescript": "^7.22.5",
- "@babel/runtime": "^7.22.6",
- "@babel/runtime-corejs3": "^7.22.6",
- "@babel/traverse": "^7.22.8",
- "@docusaurus/cssnano-preset": "3.0.1",
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/mdx-loader": "3.0.1",
- "@docusaurus/react-loadable": "5.5.2",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-common": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "@slorber/static-site-generator-webpack-plugin": "^4.0.7",
- "@svgr/webpack": "^6.5.1",
- "autoprefixer": "^10.4.14",
- "babel-loader": "^9.1.3",
- "babel-plugin-dynamic-import-node": "^2.3.3",
- "boxen": "^6.2.1",
- "chalk": "^4.1.2",
- "chokidar": "^3.5.3",
- "clean-css": "^5.3.2",
- "cli-table3": "^0.6.3",
- "combine-promises": "^1.1.0",
- "commander": "^5.1.0",
- "copy-webpack-plugin": "^11.0.0",
- "core-js": "^3.31.1",
- "css-loader": "^6.8.1",
- "css-minimizer-webpack-plugin": "^4.2.2",
- "cssnano": "^5.1.15",
- "del": "^6.1.1",
- "detect-port": "^1.5.1",
- "escape-html": "^1.0.3",
- "eta": "^2.2.0",
- "file-loader": "^6.2.0",
- "fs-extra": "^11.1.1",
- "html-minifier-terser": "^7.2.0",
- "html-tags": "^3.3.1",
- "html-webpack-plugin": "^5.5.3",
- "leven": "^3.1.0",
- "lodash": "^4.17.21",
- "mini-css-extract-plugin": "^2.7.6",
- "postcss": "^8.4.26",
- "postcss-loader": "^7.3.3",
- "prompts": "^2.4.2",
- "react-dev-utils": "^12.0.1",
- "react-helmet-async": "^1.3.0",
- "react-loadable": "npm:@docusaurus/react-loadable@5.5.2",
- "react-loadable-ssr-addon-v5-slorber": "^1.0.1",
- "react-router": "^5.3.4",
- "react-router-config": "^5.1.1",
- "react-router-dom": "^5.3.4",
- "rtl-detect": "^1.0.4",
- "semver": "^7.5.4",
- "serve-handler": "^6.1.5",
- "shelljs": "^0.8.5",
- "terser-webpack-plugin": "^5.3.9",
- "tslib": "^2.6.0",
- "update-notifier": "^6.0.2",
- "url-loader": "^4.1.1",
- "webpack": "^5.88.1",
- "webpack-bundle-analyzer": "^4.9.0",
- "webpack-dev-server": "^4.15.1",
- "webpack-merge": "^5.9.0",
- "webpackbar": "^5.0.2"
- },
- "dependencies": {
- "@docusaurus/utils-common": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-common/-/utils-common-3.0.1.tgz",
- "integrity": "sha512-W0AxD6w6T8g6bNro8nBRWf7PeZ/nn7geEWM335qHU2DDDjHuV4UZjgUGP1AQsdcSikPrlIqTJJbKzer1lRSlIg==",
- "requires": {
- "tslib": "^2.6.0"
- }
- }
- }
- },
- "@docusaurus/mdx-loader": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/mdx-loader/-/mdx-loader-3.0.1.tgz",
- "integrity": "sha512-ldnTmvnvlrONUq45oKESrpy+lXtbnTcTsFkOTIDswe5xx5iWJjt6eSa0f99ZaWlnm24mlojcIGoUWNCS53qVlQ==",
- "requires": {
- "@babel/parser": "^7.22.7",
- "@babel/traverse": "^7.22.8",
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "@docusaurus/utils-validation": "3.0.1",
- "@mdx-js/mdx": "^3.0.0",
- "@slorber/remark-comment": "^1.0.0",
- "escape-html": "^1.0.3",
- "estree-util-value-to-estree": "^3.0.1",
- "file-loader": "^6.2.0",
- "fs-extra": "^11.1.1",
- "image-size": "^1.0.2",
- "mdast-util-mdx": "^3.0.0",
- "mdast-util-to-string": "^4.0.0",
- "rehype-raw": "^7.0.0",
- "remark-directive": "^3.0.0",
- "remark-emoji": "^4.0.0",
- "remark-frontmatter": "^5.0.0",
- "remark-gfm": "^4.0.0",
- "stringify-object": "^3.3.0",
- "tslib": "^2.6.0",
- "unified": "^11.0.3",
- "unist-util-visit": "^5.0.0",
- "url-loader": "^4.1.1",
- "vfile": "^6.0.1",
- "webpack": "^5.88.1"
- }
- },
- "@docusaurus/types": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/types/-/types-3.0.1.tgz",
- "integrity": "sha512-plyX2iU1tcUsF46uQ01pAd4JhexR7n0iiQ5MSnBFX6M6NSJgDYdru/i1/YNPKOnQHBoXGLHv0dNT6OAlDWNjrg==",
- "requires": {
- "@types/history": "^4.7.11",
- "@types/react": "*",
- "commander": "^5.1.0",
- "joi": "^17.9.2",
- "react-helmet-async": "^1.3.0",
- "utility-types": "^3.10.0",
- "webpack": "^5.88.1",
- "webpack-merge": "^5.9.0"
- }
- },
- "fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- }
- }
- }
- },
- "@docusaurus/theme-translations": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/theme-translations/-/theme-translations-3.0.1.tgz",
- "integrity": "sha512-6UrbpzCTN6NIJnAtZ6Ne9492vmPVX+7Fsz4kmp+yor3KQwA1+MCzQP7ItDNkP38UmVLnvB/cYk/IvehCUqS3dg==",
- "requires": {
- "fs-extra": "^11.1.1",
- "tslib": "^2.6.0"
- },
- "dependencies": {
- "fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- }
- }
- }
- },
- "@docusaurus/utils": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils/-/utils-3.0.1.tgz",
- "integrity": "sha512-TwZ33Am0q4IIbvjhUOs+zpjtD/mXNmLmEgeTGuRq01QzulLHuPhaBTTAC/DHu6kFx3wDgmgpAlaRuCHfTcXv8g==",
- "requires": {
- "@docusaurus/logger": "3.0.1",
- "@svgr/webpack": "^6.5.1",
- "escape-string-regexp": "^4.0.0",
- "file-loader": "^6.2.0",
- "fs-extra": "^11.1.1",
- "github-slugger": "^1.5.0",
- "globby": "^11.1.0",
- "gray-matter": "^4.0.3",
- "jiti": "^1.20.0",
- "js-yaml": "^4.1.0",
- "lodash": "^4.17.21",
- "micromatch": "^4.0.5",
- "resolve-pathname": "^3.0.0",
- "shelljs": "^0.8.5",
- "tslib": "^2.6.0",
- "url-loader": "^4.1.1",
- "webpack": "^5.88.1"
- },
- "dependencies": {
- "fs-extra": {
- "version": "11.2.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
- "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^6.0.1",
- "universalify": "^2.0.0"
- }
- }
- }
- },
- "@docusaurus/utils-validation": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@docusaurus/utils-validation/-/utils-validation-3.0.1.tgz",
- "integrity": "sha512-ujTnqSfyGQ7/4iZdB4RRuHKY/Nwm58IIb+41s5tCXOv/MBU2wGAjOHq3U+AEyJ8aKQcHbxvTKJaRchNHYUVUQg==",
- "requires": {
- "@docusaurus/logger": "3.0.1",
- "@docusaurus/utils": "3.0.1",
- "joi": "^17.9.2",
- "js-yaml": "^4.1.0",
- "tslib": "^2.6.0"
- }
- },
- "@svgr/babel-plugin-add-jsx-attribute": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-6.5.1.tgz",
- "integrity": "sha512-9PYGcXrAxitycIjRmZB+Q0JaN07GZIWaTBIGQzfaZv+qr1n8X1XUEJ5rZ/vx6OVD9RRYlrNnXWExQXcmZeD/BQ=="
- },
- "@svgr/babel-plugin-replace-jsx-attribute-value": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-6.5.1.tgz",
- "integrity": "sha512-8DPaVVE3fd5JKuIC29dqyMB54sA6mfgki2H2+swh+zNJoynC8pMPzOkidqHOSc6Wj032fhl8Z0TVn1GiPpAiJg=="
- },
- "@svgr/babel-plugin-svg-dynamic-title": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-6.5.1.tgz",
- "integrity": "sha512-FwOEi0Il72iAzlkaHrlemVurgSQRDFbk0OC8dSvD5fSBPHltNh7JtLsxmZUhjYBZo2PpcU/RJvvi6Q0l7O7ogw=="
- },
- "@svgr/babel-plugin-svg-em-dimensions": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-6.5.1.tgz",
- "integrity": "sha512-gWGsiwjb4tw+ITOJ86ndY/DZZ6cuXMNE/SjcDRg+HLuCmwpcjOktwRF9WgAiycTqJD/QXqL2f8IzE2Rzh7aVXA=="
- },
- "@svgr/babel-plugin-transform-react-native-svg": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-6.5.1.tgz",
- "integrity": "sha512-2jT3nTayyYP7kI6aGutkyfJ7UMGtuguD72OjeGLwVNyfPRBD8zQthlvL+fAbAKk5n9ZNcvFkp/b1lZ7VsYqVJg=="
- },
- "@svgr/babel-plugin-transform-svg-component": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-6.5.1.tgz",
- "integrity": "sha512-a1p6LF5Jt33O3rZoVRBqdxL350oge54iZWHNI6LJB5tQ7EelvD/Mb1mfBiZNAan0dt4i3VArkFRjA4iObuNykQ=="
- },
- "@svgr/babel-preset": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-6.5.1.tgz",
- "integrity": "sha512-6127fvO/FF2oi5EzSQOAjo1LE3OtNVh11R+/8FXa+mHx1ptAaS4cknIjnUA7e6j6fwGGJ17NzaTJFUwOV2zwCw==",
- "requires": {
- "@svgr/babel-plugin-add-jsx-attribute": "^6.5.1",
- "@svgr/babel-plugin-remove-jsx-attribute": "*",
- "@svgr/babel-plugin-remove-jsx-empty-expression": "*",
- "@svgr/babel-plugin-replace-jsx-attribute-value": "^6.5.1",
- "@svgr/babel-plugin-svg-dynamic-title": "^6.5.1",
- "@svgr/babel-plugin-svg-em-dimensions": "^6.5.1",
- "@svgr/babel-plugin-transform-react-native-svg": "^6.5.1",
- "@svgr/babel-plugin-transform-svg-component": "^6.5.1"
- }
- },
- "@svgr/core": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.5.1.tgz",
- "integrity": "sha512-/xdLSWxK5QkqG524ONSjvg3V/FkNyCv538OIBdQqPNaAta3AsXj/Bd2FbvR87yMbXO2hFSWiAe/Q6IkVPDw+mw==",
- "requires": {
- "@babel/core": "^7.19.6",
- "@svgr/babel-preset": "^6.5.1",
- "@svgr/plugin-jsx": "^6.5.1",
- "camelcase": "^6.2.0",
- "cosmiconfig": "^7.0.1"
- }
- },
- "@svgr/hast-util-to-babel-ast": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-6.5.1.tgz",
- "integrity": "sha512-1hnUxxjd83EAxbL4a0JDJoD3Dao3hmjvyvyEV8PzWmLK3B9m9NPlW7GKjFyoWE8nM7HnXzPcmmSyOW8yOddSXw==",
- "requires": {
- "@babel/types": "^7.20.0",
- "entities": "^4.4.0"
- }
- },
- "@svgr/plugin-jsx": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.5.1.tgz",
- "integrity": "sha512-+UdQxI3jgtSjCykNSlEMuy1jSRQlGC7pqBCPvkG/2dATdWo082zHTTK3uhnAju2/6XpE6B5mZ3z4Z8Ns01S8Gw==",
- "requires": {
- "@babel/core": "^7.19.6",
- "@svgr/babel-preset": "^6.5.1",
- "@svgr/hast-util-to-babel-ast": "^6.5.1",
- "svg-parser": "^2.0.4"
- }
- },
- "@svgr/plugin-svgo": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.5.1.tgz",
- "integrity": "sha512-omvZKf8ixP9z6GWgwbtmP9qQMPX4ODXi+wzbVZgomNFsUIlHA1sf4fThdwTWSsZGgvGAG6yE+b/F5gWUkcZ/iQ==",
- "requires": {
- "cosmiconfig": "^7.0.1",
- "deepmerge": "^4.2.2",
- "svgo": "^2.8.0"
- }
- },
- "@svgr/webpack": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.5.1.tgz",
- "integrity": "sha512-cQ/AsnBkXPkEK8cLbv4Dm7JGXq2XrumKnL1dRpJD9rIO2fTIlJI9a1uCciYG1F2aUsox/hJQyNGbt3soDxSRkA==",
- "requires": {
- "@babel/core": "^7.19.6",
- "@babel/plugin-transform-react-constant-elements": "^7.18.12",
- "@babel/preset-env": "^7.19.4",
- "@babel/preset-react": "^7.18.6",
- "@babel/preset-typescript": "^7.18.6",
- "@svgr/core": "^6.5.1",
- "@svgr/plugin-jsx": "^6.5.1",
- "@svgr/plugin-svgo": "^6.5.1"
- }
- },
- "ajv": {
- "version": "8.12.0",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
- "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-keywords": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz",
- "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
- "requires": {
- "fast-deep-equal": "^3.1.3"
- }
- },
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
- },
- "babel-loader": {
- "version": "9.1.3",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz",
- "integrity": "sha512-xG3ST4DglodGf8qSwv0MdeWLhrDsw/32QMdTO5T1ZIp9gQur0HkCyFs7Awskr10JKXFXwpAhiCuYX5oGXnRGbw==",
- "requires": {
- "find-cache-dir": "^4.0.0",
- "schema-utils": "^4.0.0"
- }
- },
- "boxen": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/boxen/-/boxen-6.2.1.tgz",
- "integrity": "sha512-H4PEsJXfFI/Pt8sjDWbHlQPx4zL/bvSQjcilJmaulGt5mLDorHOHpmdXAJcBcmru7PhYSp/cDMWRko4ZUMFkSw==",
- "requires": {
- "ansi-align": "^3.0.1",
- "camelcase": "^6.2.0",
- "chalk": "^4.1.2",
- "cli-boxes": "^3.0.0",
- "string-width": "^5.0.1",
- "type-fest": "^2.5.0",
- "widest-line": "^4.0.1",
- "wrap-ansi": "^8.0.1"
- }
- },
- "css-tree": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz",
- "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==",
- "requires": {
- "mdn-data": "2.0.14",
- "source-map": "^0.6.1"
- }
- },
- "entities": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
- "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw=="
- },
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA=="
- },
- "find-cache-dir": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-4.0.0.tgz",
- "integrity": "sha512-9ZonPT4ZAK4a+1pUPVPZJapbi7O5qbbJPdYw/NOQWZZbVLdDTYM3A4R9z/DpAM08IDaFGsvPgiGZ82WEwUDWjg==",
- "requires": {
- "common-path-prefix": "^3.0.0",
- "pkg-dir": "^7.0.0"
- }
- },
- "find-up": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-6.3.0.tgz",
- "integrity": "sha512-v2ZsoEuVHYy8ZIlYqwPe/39Cy+cFDzp4dXPaxNvkEuouymu+2Jbz0PxpKarJHYJTmv2HWT3O382qY8l4jMWthw==",
- "requires": {
- "locate-path": "^7.1.0",
- "path-exists": "^5.0.0"
- }
- },
- "html-minifier-terser": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz",
- "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==",
- "requires": {
- "camel-case": "^4.1.2",
- "clean-css": "~5.3.2",
- "commander": "^10.0.0",
- "entities": "^4.4.0",
- "param-case": "^3.0.4",
- "relateurl": "^0.2.7",
- "terser": "^5.15.1"
- },
- "dependencies": {
- "commander": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
- "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug=="
- }
- }
- },
- "js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "requires": {
- "argparse": "^2.0.1"
- }
- },
- "json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug=="
- },
- "locate-path": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz",
- "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==",
- "requires": {
- "p-locate": "^6.0.0"
- }
- },
- "mdn-data": {
- "version": "2.0.14",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
- "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow=="
- },
- "p-limit": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-4.0.0.tgz",
- "integrity": "sha512-5b0R4txpzjPWVw/cXXUResoD4hb6U/x9BH08L7nw+GN1sezDzPdxeRvpc9c433fZhBan/wusjbCsqwqm4EIBIQ==",
- "requires": {
- "yocto-queue": "^1.0.0"
- }
- },
- "p-locate": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-6.0.0.tgz",
- "integrity": "sha512-wPrq66Llhl7/4AGC6I+cqxT07LhXvWL08LNXz1fENOw0Ap4sRZZ/gZpTTJ5jpurzzzfS2W/Ge9BY3LgLjCShcw==",
- "requires": {
- "p-limit": "^4.0.0"
- }
- },
- "path-exists": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-5.0.0.tgz",
- "integrity": "sha512-RjhtfwJOxzcFmNOi6ltcbcu4Iu+FL3zEj83dk4kAS+fVpTxXLO1b38RvJgT/0QwvV/L3aY9TAnyv0EOqW4GoMQ=="
- },
- "pkg-dir": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-7.0.0.tgz",
- "integrity": "sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==",
- "requires": {
- "find-up": "^6.3.0"
- }
- },
- "react-loadable": {
- "version": "npm:@docusaurus/react-loadable@5.5.2",
- "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-5.5.2.tgz",
- "integrity": "sha512-A3dYjdBGuy0IGT+wyLIGIKLRE+sAk1iNk0f1HjNDysO7u8lhL4N3VEm+FAubmJbAztn94F7MxBTPmnixbiyFdQ==",
- "requires": {
- "@types/react": "*",
- "prop-types": "^15.6.2"
- }
- },
- "react-router-dom": {
- "version": "5.3.4",
- "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-5.3.4.tgz",
- "integrity": "sha512-m4EqFMHv/Ih4kpcBCONHbkT68KoAeHN4p3lAGoNryfHi0dMy0kCzEZakiKRsvg5wHZ/JLrLW8o8KomWiz/qbYQ==",
- "requires": {
- "@babel/runtime": "^7.12.13",
- "history": "^4.9.0",
- "loose-envify": "^1.3.1",
- "prop-types": "^15.6.2",
- "react-router": "5.3.4",
- "tiny-invariant": "^1.0.2",
- "tiny-warning": "^1.0.0"
- }
- },
- "schema-utils": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.2.0.tgz",
- "integrity": "sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==",
- "requires": {
- "@types/json-schema": "^7.0.9",
- "ajv": "^8.9.0",
- "ajv-formats": "^2.1.1",
- "ajv-keywords": "^5.1.0"
- }
- },
- "semver": {
- "version": "7.6.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
- "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
- "requires": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
- }
+ "clsx": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/clsx/-/clsx-2.1.1.tgz",
+ "integrity": "sha512-eYm0QWBtUrBWZWG0d386OGAw16Z995PiOVo2B7bjWSbHedGl5e0ZWaq65kOGgUSNesEIDkB9ISbTg/JK9dhCZA=="
},
- "svgo": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz",
- "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==",
+ "fs-extra": {
+ "version": "11.3.4",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.3.4.tgz",
+ "integrity": "sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==",
"requires": {
- "@trysound/sax": "0.2.0",
- "commander": "^7.2.0",
- "css-select": "^4.1.3",
- "css-tree": "^1.1.3",
- "csso": "^4.2.0",
- "picocolors": "^1.0.0",
- "stable": "^0.1.8"
- },
- "dependencies": {
- "commander": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
- "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw=="
- }
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
}
},
"tslib": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
- "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q=="
- },
- "type-fest": {
- "version": "2.19.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
- "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA=="
- },
- "yocto-queue": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz",
- "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g=="
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
}
}
},
@@ -45636,25 +43727,6 @@
"resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.1.0.tgz",
"integrity": "sha512-21nOL7RqWR1kasIVdKs8HNqQJhFxLsyRfAnUDm4Fe4t4mCWL9OJiHvlHPjcd8zc5Myu89b/7wZDnOSjFgeWRtw=="
},
- "postcss-discard-unused": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-5.1.0.tgz",
- "integrity": "sha512-KwLWymI9hbwXmJa0dkrzpRbSJEh0vVUd7r8t0yOGPcfKzyJJxFM8kLyC5Ev9avji6nY95pOp1W6HqIrfT+0VGw==",
- "requires": {
- "postcss-selector-parser": "^6.0.5"
- },
- "dependencies": {
- "postcss-selector-parser": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
- "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
- "requires": {
- "cssesc": "^3.0.0",
- "util-deprecate": "^1.0.2"
- }
- }
- }
- },
"postcss-double-position-gradients": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-3.1.2.tgz",
@@ -45840,15 +43912,6 @@
"resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-5.0.0.tgz",
"integrity": "sha512-yDUvFf9QdFZTuCUg0g0uNSHVlJ5X1lSzDZjPSFaiCWvjgsvu8vEVxtahPrLMinIDEEGnx6cBe6iqdx5YWz08wQ=="
},
- "postcss-merge-idents": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-5.1.1.tgz",
- "integrity": "sha512-pCijL1TREiCoog5nQp7wUe+TUonA2tC2sQ54UGeMmryK3UFGIYKqDyjnqd6RcuI4znFn9hWSLNN8xKE/vWcUQw==",
- "requires": {
- "cssnano-utils": "^3.1.0",
- "postcss-value-parser": "^4.2.0"
- }
- },
"postcss-merge-longhand": {
"version": "5.1.7",
"resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-5.1.7.tgz",
@@ -46215,14 +44278,6 @@
}
}
},
- "postcss-reduce-idents": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-5.2.0.tgz",
- "integrity": "sha512-BTrLjICoSB6gxbc58D5mdBK8OhXRDqud/zodYfdSi52qvDHdMwk+9kB9xsM8yJThH/sZU5A6QVSmMmaN001gIg==",
- "requires": {
- "postcss-value-parser": "^4.2.0"
- }
- },
"postcss-reduce-initial": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-5.1.2.tgz",
@@ -46273,14 +44328,6 @@
"util-deprecate": "^1.0.2"
}
},
- "postcss-sort-media-queries": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/postcss-sort-media-queries/-/postcss-sort-media-queries-4.4.1.tgz",
- "integrity": "sha512-QDESFzDDGKgpiIh4GYXsSy6sek2yAwQx1JASl5AxBtU1Lq2JfKBljIPNdil989NcSKRQX1ToiaKphImtBuhXWw==",
- "requires": {
- "sort-css-media-queries": "2.1.0"
- }
- },
"postcss-svgo": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-5.1.0.tgz",
@@ -46349,11 +44396,6 @@
"resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
"integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ=="
},
- "postcss-zindex": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-5.1.0.tgz",
- "integrity": "sha512-fgFMf0OtVSBR1va1JNHYgMxYk73yhn/qb4uQDq1DLGYolz8gHCyr/sesEuGUaYs58E3ZJRcpoGuPVoB7Meiq9A=="
- },
"prelude-ls": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -47610,11 +45652,6 @@
}
}
},
- "rtl-detect": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/rtl-detect/-/rtl-detect-1.0.4.tgz",
- "integrity": "sha512-EBR4I2VDSSYr7PkBmFy04uhycIpDKp+21p/jARYXlCSjQksTBQcJ0HFUPOO79EPPH5JS6VAhiIQbycf0O3JAxQ=="
- },
"rtlcss": {
"version": "4.3.0",
"resolved": "https://registry.npmjs.org/rtlcss/-/rtlcss-4.3.0.tgz",
@@ -48071,11 +46108,6 @@
"websocket-driver": "^0.7.4"
}
},
- "sort-css-media-queries": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/sort-css-media-queries/-/sort-css-media-queries-2.1.0.tgz",
- "integrity": "sha512-IeWvo8NkNiY2vVYdPa27MCQiR0MN0M80johAYFVxWWXQ44KU84WNxjslwBHmc/7ZL2ccwkM7/e6S5aiKZXm7jA=="
- },
"source-list-map": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
@@ -49065,11 +47097,28 @@
}
},
"typesense-instantsearch-adapter": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/typesense-instantsearch-adapter/-/typesense-instantsearch-adapter-2.8.0.tgz",
- "integrity": "sha512-2q4QVpHoUV0ncf1XOqIC0dufOTkFRxQ0mHzg//H3WK02ZYqdNNPCAacZODhQlltl1cNJdTI8Y4uuGVd6fJuGzw==",
+ "version": "2.9.0",
+ "resolved": "https://registry.npmjs.org/typesense-instantsearch-adapter/-/typesense-instantsearch-adapter-2.9.0.tgz",
+ "integrity": "sha512-ZSgpi9T/S70Zs2eYIv0VmD0o4+VfBN9jz97Rhbf9Bj+gpUAbjmm46XAobEE2TGs2Wo04hpzCrXifXNJecalC/w==",
"requires": {
- "typesense": "^1.7.2"
+ "typesense": "^2.1.0-1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.8.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w=="
+ },
+ "typesense": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/typesense/-/typesense-2.1.0.tgz",
+ "integrity": "sha512-a/IRTL+dRXlpRDU4UodyGj8hl5xBz3nKihVRd/KfSFAfFPGcpdX6lxIgwdXy3O6VLNNiEsN8YwIsPHQPVT0vNw==",
+ "requires": {
+ "axios": "^1.8.4",
+ "loglevel": "^1.8.1",
+ "tslib": "^2.6.2"
+ }
+ }
}
},
"unbox-primitive": {
@@ -49754,17 +47803,6 @@
"resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz",
"integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w=="
},
- "webpackbar": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/webpackbar/-/webpackbar-5.0.2.tgz",
- "integrity": "sha512-BmFJo7veBDgQzfWXl/wwYXr/VFus0614qZ8i9znqcl9fnEdiVkdbi0TedLQ6xAK92HZHDJ0QmyQ0fmuZPAgCYQ==",
- "requires": {
- "chalk": "^4.1.0",
- "consola": "^2.15.3",
- "pretty-time": "^1.1.0",
- "std-env": "^3.0.1"
- }
- },
"websocket-driver": {
"version": "0.7.4",
"resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz",
diff --git a/sidebars.js b/sidebars.js
index 3631e2524..8cb774ca1 100644
--- a/sidebars.js
+++ b/sidebars.js
@@ -26,11 +26,7 @@ module.exports = {
label: "Running Your First Job on HyperExecute",
id: "hyperexecute-running-your-first-job",
},
- {
- type: "doc",
- label: "Run Your Test With Agent Skills",
- id: "hyperexecute-agent-skills",
- },
+
{
type: "doc",
label: "Guided Walkthrough",
@@ -3009,11 +3005,7 @@ module.exports = {
id: "getting-started-with-appium-testing",
},
items: [
- {
- type: "doc",
- label: "Run Your Test With Agent Skills",
- id: "appium-agent-skills",
- },
+
{
type: "category",
collapsed: true,
@@ -3197,11 +3189,7 @@ module.exports = {
label: "Getting Started with Espresso Testing",
id: "getting-started-with-espresso-testing",
},
- {
- type: "doc",
- label: "Run Your Test With Agent Skills",
- id: "espresso-agent-skills",
- },
+
{
type: "category",
collapsed: true,
@@ -3375,7 +3363,6 @@ module.exports = {
},
items: [
"smartui-running-your-first-project",
- "smartui-agent-skills",
"smartui-guided-walkthrough",
"smartui-cli-env-variables",
"smartui-approval-workflow-guide",