diff --git a/examples/sentry/.env.example b/examples/sentry/.env.example
new file mode 100644
index 00000000..72b44460
--- /dev/null
+++ b/examples/sentry/.env.example
@@ -0,0 +1,7 @@
+# Required: Your Sentry DSN (public, safe to expose to the browser)
+PUBLIC_ENV__SENTRY_DSN=your-dsn-url
+
+# Required for source map upload: Sentry Auth Token
+# Create at https://sentry.io/settings/account/api/auth-tokens/
+# Required scopes: project:read, project:releases, project:write
+SENTRY_AUTH_TOKEN=sntryu_xxxxx
diff --git a/examples/sentry/.gitignore b/examples/sentry/.gitignore
new file mode 100644
index 00000000..c24c6c95
--- /dev/null
+++ b/examples/sentry/.gitignore
@@ -0,0 +1,8 @@
+dist/
+node_modules/
+.DS_Store
+*.log
+.env
+.env.local
+.env.production
+
diff --git a/examples/sentry/.test-dev.test.ts b/examples/sentry/.test-dev.test.ts
new file mode 100644
index 00000000..fbafdbbc
--- /dev/null
+++ b/examples/sentry/.test-dev.test.ts
@@ -0,0 +1,2 @@
+import { testRun } from './.testRun'
+testRun('pnpm run dev')
diff --git a/examples/sentry/.test-prod.test.ts b/examples/sentry/.test-prod.test.ts
new file mode 100644
index 00000000..0de1470e
--- /dev/null
+++ b/examples/sentry/.test-prod.test.ts
@@ -0,0 +1,2 @@
+import { testRun } from './.testRun'
+testRun('pnpm run prod')
diff --git a/examples/sentry/.testRun.ts b/examples/sentry/.testRun.ts
new file mode 100644
index 00000000..39c94f52
--- /dev/null
+++ b/examples/sentry/.testRun.ts
@@ -0,0 +1,94 @@
+export { testRun }
+
+import { test, expect, run, fetchHtml, page, getServerUrl, autoRetry } from '@brillout/test-e2e'
+import fs from 'node:fs'
+import path from 'node:path'
+import { fileURLToPath } from 'node:url'
+
+const __dirname = path.dirname(fileURLToPath(import.meta.url))
+const TEST_DSN = 'https://8de66fe8dda3a86d986df8ee3aa09f72@o4510438936412161.ingest.de.sentry.io/4510438941655120'
+
+function setupEnv() {
+ const envPath = path.join(__dirname, '.env')
+ const examplePath = path.join(__dirname, '.env.example')
+ let content = fs.readFileSync(examplePath, 'utf-8')
+ content = content.replace('your-dsn-url', TEST_DSN)
+ fs.writeFileSync(envPath, content)
+}
+
+function testRun(cmd: 'pnpm run dev' | 'pnpm run prod') {
+ setupEnv()
+ run(cmd, {
+ // We intentionally throw errors to test Sentry error reporting
+ tolerateError: ({ logText }) =>
+ logText.includes('This is a test error sent to Sentry!') ||
+ logText.includes('This is an async error sent to Sentry!') ||
+ logText.includes('[sentry-vite-plugin]'),
+ })
+
+ test('page content is rendered to HTML', async () => {
+ const html = await fetchHtml('/')
+ expect(html).toContain('
Vike + React + Sentry Example
')
+ })
+
+ test('page is rendered to the DOM and interactive', async () => {
+ await page.goto(getServerUrl() + '/')
+ expect(await page.textContent('h1')).toBe('Vike + React + Sentry Example')
+ await testCounter()
+ })
+
+ test('sync error is sent to Sentry', async () => {
+ await page.goto(getServerUrl() + '/')
+ await testSentryRequest('Throw Sync Error', 'This is a test error sent to Sentry!')
+ })
+
+ test('async error is sent to Sentry', async () => {
+ await page.goto(getServerUrl() + '/')
+ await testSentryRequest('Throw Async Error', 'This is an async error sent to Sentry!')
+ })
+}
+
+async function testCounter() {
+ // autoRetry() in case page isn't hydrated yet
+ await autoRetry(
+ async () => {
+ const heading = page.locator('h2', { hasText: 'Counter' })
+ expect(await heading.textContent()).toBe('Counter: 0')
+ },
+ { timeout: 5 * 1000 },
+ )
+ await autoRetry(
+ async () => {
+ const btn = page.locator('button', { hasText: 'Increment' })
+ await btn.click()
+ const heading = page.locator('h2', { hasText: 'Counter' })
+ expect(await heading.textContent()).toBe('Counter: 1')
+ },
+ { timeout: 5 * 1000 },
+ )
+}
+
+async function testSentryRequest(buttonText: string, expectedMessage: string) {
+ const sentryBodies: string[] = []
+
+ // Listen for Sentry envelope requests
+ const listener = (req: { url: () => string; method: () => string; postData: () => string | null }) => {
+ if (req.url().includes('sentry.io') && req.method() === 'POST') {
+ sentryBodies.push(req.postData() || '')
+ }
+ }
+ page.on('request', listener)
+
+ const btn = page.locator('button', { hasText: buttonText })
+ await btn.click()
+
+ await autoRetry(
+ async () => {
+ const match = sentryBodies.find((body) => body.includes(expectedMessage))
+ expect(match).toBeTruthy()
+ },
+ { timeout: 10 * 1000 },
+ )
+
+ page.removeListener('request', listener)
+}
diff --git a/examples/sentry/README.md b/examples/sentry/README.md
new file mode 100644
index 00000000..ba532dc5
--- /dev/null
+++ b/examples/sentry/README.md
@@ -0,0 +1,64 @@
+# Vike + React + Sentry Example
+
+This example demonstrates how to integrate Sentry error tracking with a Vike + React application using [`vike-react-sentry`](https://github.com/vikejs/vike-react/tree/main/packages/vike-react-sentry).
+
+## Features
+
+- Client-side error tracking
+- Server-side error tracking
+- Performance monitoring and tracing
+- Source map uploads for production debugging
+
+## Setup
+
+1. Install dependencies:
+
+```bash
+pnpm install
+```
+
+2. Copy `.env.example` to `.env` and fill in your Sentry DSN:
+
+```bash
+cp .env.example .env
+```
+
+3. Run development server:
+
+```bash
+pnpm dev
+```
+
+4. Build for production (source maps are uploaded when `SENTRY_AUTH_TOKEN` is set):
+
+```bash
+pnpm build
+pnpm prod
+```
+
+## Configuration
+
+The Sentry DSN and auth token are configured via environment variables in `.env`:
+
+```bash
+PUBLIC_ENV__SENTRY_DSN=https://xxxxx@xxxxx.ingest.sentry.io/xxxxx
+SENTRY_AUTH_TOKEN=sntryu_xxxxx
+```
+
+You can optionally customize Sentry SDK options in `pages/+config.ts`:
+
+```ts
+export default {
+ sentry: {
+ tracesSampleRate: 1.0,
+ debug: true,
+ }
+}
+```
+
+See the [`vike-react-sentry` README](https://github.com/vikejs/vike-react/tree/main/packages/vike-react-sentry) for all available options.
+
+## Learn More
+
+- [Vike Documentation](https://vike.dev)
+- [Sentry Documentation](https://docs.sentry.io)
diff --git a/examples/sentry/package.json b/examples/sentry/package.json
new file mode 100644
index 00000000..64756d40
--- /dev/null
+++ b/examples/sentry/package.json
@@ -0,0 +1,26 @@
+{
+ "scripts": {
+ "dev": "vike dev",
+ "build": "vike build",
+ "prod": "vike build && node ./dist/server/index.mjs"
+ },
+ "dependencies": {
+ "@photonjs/hono": "^0.1.7",
+ "@sentry/react": "^10.22.0",
+ "@sentry/node": "^10.22.0",
+ "@sentry/vite-plugin": "^4.6.0",
+ "@types/react": "^19.1.13",
+ "@types/react-dom": "^19.1.9",
+ "@vitejs/plugin-react": "^5.0.3",
+ "hono": "^4.7.14",
+ "react": "^19.2.0",
+ "react-dom": "^19.2.0",
+ "typescript": "^5.9.2",
+ "vike": "^0.4.253",
+ "vike-photon": "^0.1.20",
+ "vike-react": "0.6.10",
+ "vike-react-sentry": "0.1.0",
+ "vite": "^7.1.7"
+ },
+ "type": "module"
+}
diff --git a/examples/sentry/pages/+config.ts b/examples/sentry/pages/+config.ts
new file mode 100644
index 00000000..3ef184e0
--- /dev/null
+++ b/examples/sentry/pages/+config.ts
@@ -0,0 +1,15 @@
+export { config }
+
+import type { Config } from 'vike/types'
+import vikeReact from 'vike-react/config'
+import vikePhoton from 'vike-photon/config'
+import vikeReactSentry from 'vike-react-sentry/config'
+
+const config = {
+ title: 'Vike + React + Sentry Example',
+ extends: [vikeReact, vikePhoton, vikeReactSentry],
+ // Photon configuration
+ photon: {
+ server: '../server/index.ts',
+ },
+} satisfies Config
diff --git a/examples/sentry/pages/index/+Page.tsx b/examples/sentry/pages/index/+Page.tsx
new file mode 100644
index 00000000..af27bad1
--- /dev/null
+++ b/examples/sentry/pages/index/+Page.tsx
@@ -0,0 +1,76 @@
+export { Page }
+
+import { useState } from 'react'
+
+function Page() {
+ const [count, setCount] = useState(0)
+
+ const throwError = () => {
+ throw new Error('This is a test error sent to Sentry!')
+ }
+
+ const throwAsyncError = async () => {
+ await new Promise((resolve) => setTimeout(resolve, 100))
+ throw new Error('This is an async error sent to Sentry!')
+ }
+
+ return (
+
+
Vike + React + Sentry Example
+
+
This example demonstrates Sentry error tracking integration with Vike.
+
+
+
Counter: {count}
+
+
+
+
+
Test Error Tracking
+
Click these buttons to send test errors to Sentry:
+
+
+
+
+
+
+
+
+
+
Configuration
+
+ Edit pages/+config.ts to configure your Sentry DSN and options.
+
+
+ - Client-side errors are automatically captured
+ - Server-side errors are automatically captured
+ - Distributed tracing connects server and client errors
+
+
+
+ )
+}
diff --git a/examples/sentry/server/index.ts b/examples/sentry/server/index.ts
new file mode 100644
index 00000000..a0a826fa
--- /dev/null
+++ b/examples/sentry/server/index.ts
@@ -0,0 +1,13 @@
+import { Hono } from 'hono'
+import { apply, serve } from '@photonjs/hono'
+
+function startServer() {
+ const app = new Hono()
+
+ // Apply Vike and Vike extensions middleware
+ apply(app)
+
+ return serve(app)
+}
+
+export default startServer()
diff --git a/examples/sentry/tsconfig.json b/examples/sentry/tsconfig.json
new file mode 100644
index 00000000..8df2db5f
--- /dev/null
+++ b/examples/sentry/tsconfig.json
@@ -0,0 +1,19 @@
+{
+ "compilerOptions": {
+ "strict": true,
+ "module": "ES2020",
+ "moduleResolution": "bundler",
+ "target": "ES2020",
+ "lib": ["DOM", "DOM.Iterable", "ESNext"],
+ "types": ["vite/client"],
+ "jsx": "react-jsx",
+ "skipLibCheck": true,
+ "esModuleInterop": true
+ },
+ "include": [
+ "**/*",
+ // Include .test* files
+ // https://github.com/microsoft/TypeScript/issues/49555
+ "**/.*"
+ ]
+}
diff --git a/examples/sentry/vite.config.ts b/examples/sentry/vite.config.ts
new file mode 100644
index 00000000..991ded96
--- /dev/null
+++ b/examples/sentry/vite.config.ts
@@ -0,0 +1,7 @@
+import { defineConfig } from 'vite'
+import react from '@vitejs/plugin-react'
+import vike from 'vike/plugin'
+
+export default defineConfig({
+ plugins: [react(), vike()],
+})
diff --git a/packages/vike-react-query/package.json b/packages/vike-react-query/package.json
index 7353d1b7..dd0a0cb7 100644
--- a/packages/vike-react-query/package.json
+++ b/packages/vike-react-query/package.json
@@ -23,7 +23,7 @@
"@tanstack/react-query": ">=5.0.0",
"react": ">=18.0.0",
"react-streaming": ">=0.4.6",
- "vike": ">=0.4.242",
+ "vike": ">=0.4.252",
"vike-react": ">=0.6.8"
},
"devDependencies": {
diff --git a/packages/vike-react-sentry/.gitignore b/packages/vike-react-sentry/.gitignore
new file mode 100644
index 00000000..b0a5c349
--- /dev/null
+++ b/packages/vike-react-sentry/.gitignore
@@ -0,0 +1,2 @@
+/node_modules/
+/dist/
diff --git a/packages/vike-react-sentry/CHANGELOG.md b/packages/vike-react-sentry/CHANGELOG.md
new file mode 100644
index 00000000..e990334e
--- /dev/null
+++ b/packages/vike-react-sentry/CHANGELOG.md
@@ -0,0 +1,5 @@
+# Changelog
+
+## 0.1.0
+
+Initial release.
diff --git a/packages/vike-react-sentry/README.md b/packages/vike-react-sentry/README.md
new file mode 100644
index 00000000..05fba3c3
--- /dev/null
+++ b/packages/vike-react-sentry/README.md
@@ -0,0 +1,213 @@
+
+
+[](https://www.npmjs.com/package/vike-react-sentry)
+
+# `vike-react-sentry`
+
+Add [Sentry](https://sentry.io) error tracking and performance monitoring to your [`vike-react`](https://vike.dev/vike-react) app.
+
+Features:
+- Browser and server error tracking
+- Performance monitoring and tracing
+- Automatic source map upload
+- Works out of the box with minimal configuration
+
+
+
+**Table of Contents**
+
+[Installation](#installation)
+[Example](#example)
+[Settings](#settings)
+[Version history](#version-history)
+[See also](#see-also)
+
+
+
+## Installation
+
+1. `npm install vike-react-sentry @sentry/react @sentry/node @sentry/vite-plugin`
+2. Extend `+config.js`:
+ ```js
+ // pages/+config.js
+
+ import vikeReact from 'vike-react/config'
+ import vikeReactSentry from 'vike-react-sentry/config'
+
+ export default {
+ // ...
+ extends: [vikeReact, vikeReactSentry]
+ }
+ ```
+3. Add environment variables to your `.env` file:
+ ```bash
+ # Required: Your Sentry DSN (can be public and exposed to the browser)
+ PUBLIC_ENV__SENTRY_DSN=https://xxxxx@xxxxx.ingest.sentry.io/xxxxx
+
+ # Required for source map upload: Sentry Auth Token (must be kept private)
+ # Create at https://sentry.io/settings/account/api/auth-tokens/
+ # Required scopes: project:read, project:releases, project:write
+ SENTRY_AUTH_TOKEN=sntryu_xxxxx
+ ```
+
+> [!NOTE]
+> The `vike-react-sentry` extension requires [`vike-react`](https://vike.dev/vike-react).
+
+That's it! With the configuration above, `vike-react-sentry` will automatically:
+- Initialize Sentry on both client and server
+- Track errors and exceptions
+- Instrument Vike hooks using [`+onHookCall()`](https://vike.dev/onHookCall)
+- Enable browser tracing for performance monitoring
+- Upload source maps during production builds (when `SENTRY_AUTH_TOKEN` is set)
+
+
+
+## Example
+
+See [examples/sentry](https://github.com/vikejs/vike-react/tree/main/examples/sentry).
+
+
+
+## Settings
+
+### `+sentry`
+
+Sentry SDK configuration options.
+
+```js
+// pages/+sentry.js
+// Environment: client, server
+
+export default {
+ tracesSampleRate: 1.0,
+ debug: true
+}
+```
+
+> [!NOTE]
+> See also: [Vike > Config Files](https://vike.dev/config)
+
+```ts
+interface SentryOptions {
+ dsn?: string // Sentry DSN (can also use PUBLIC_ENV__SENTRY_DSN env var)
+ environment?: string // Environment name (e.g., 'production', 'staging')
+ release?: string // Release version
+ debug?: boolean // Enable debug mode
+ sampleRate?: number // Error sample rate (0.0 to 1.0)
+ tracesSampleRate?: number // Transaction sample rate (0.0 to 1.0)
+ enabled?: boolean // Enable/disable Sentry
+ maxBreadcrumbs?: number // Maximum number of breadcrumbs
+ sendDefaultPii?: boolean // Send default PII data
+ replaysSessionSampleRate?: number // Session replay sample rate (0.0 to 1.0, client only)
+ replaysOnErrorSampleRate?: number // Replay-on-error sample rate (0.0 to 1.0, client only)
+}
+```
+
+You can return a function and access [`globalContext`](https://vike.dev/globalContext):
+
+```js
+// pages/+sentry.js
+// Environment: client, server
+
+import { getGlobalContext } from 'vike'
+
+export default async () => {
+ const globalContext = await getGlobalContext()
+ return {
+ tracesSampleRate: 1.0,
+ debug: true,
+ environment: globalContext.isProduction ? 'production' : 'development'
+ }
+}
+```
+
+> [!NOTE]
+> See also: [Vike > `getGlobalContext()`](https://vike.dev/getGlobalContext)
+
+You can define settings only for the client- or server-side:
+
+```js
+// pages/+sentry.client.js
+// Environment: client
+
+// Client-only configuration
+
+export default {
+ integrations: [
+ // Add custom browser integrations here
+ ]
+}
+```
+
+```js
+// pages/+sentry.server.js
+// Environment: server
+
+// Server-only configuration
+
+export default () => {
+ integrations: [
+ // Add custom Node.js integrations here
+ ]
+}
+```
+
+> [!NOTE]
+> See also: [Vike > File Environment (`.server.js`, `.client.js`, ...)](https://vike.dev/file-env)
+
+### `+sentryVite`
+
+Sentry Vite plugin configuration for source map upload.
+
+It's automatically configured when `SENTRY_AUTH_TOKEN` is set via `.env`, but can be customized:
+
+```bash
+# .env
+SENTRY_AUTH_TOKEN=sntryu_xxxxx # Required for source map upload
+SENTRY_ORG=your-org # Optional, auto-detected from DSN
+SENTRY_PROJECT=your-project # Optional, auto-detected from DSN
+```
+
+You can also override options via `+sentryVite.js` if needed:
+
+```js
+// pages/+config.js
+
+export default {
+ sentryVite: {
+ org: 'your-org',
+ project: 'your-project',
+ // ... other @sentry/vite-plugin options
+ }
+}
+```
+
+> [!NOTE]
+> When using a **personal auth token** with `SENTRY_AUTH_TOKEN`, `org` and `project` are automatically detected from your DSN using the Sentry API. Organization-scoped tokens don't support the required API permissions, so you'll need to set `SENTRY_PROJECT` manually if using those.
+
+### Environment Variables
+
+| Variable | Description |
+|----------|-------------|
+| `PUBLIC_ENV__SENTRY_DSN` | Your Sentry DSN (required). Public and safe for browser. |
+| `SENTRY_AUTH_TOKEN` | Auth token for source map upload. Create at [Sentry Auth Tokens](https://sentry.io/settings/auth-tokens/). Required scopes: `project:read`, `project:releases`, `project:write`. |
+| `SENTRY_ORG` | Organization slug (optional, auto-detected from DSN). |
+| `SENTRY_PROJECT` | Project slug (optional, auto-detected from DSN). |
+| `SENTRY_URL` | Custom Sentry URL for the Vite plugin (source map upload). Auto-detected from DSN. Only needed to override for self-hosted instances. |
+
+
+
+## Version history
+
+See [CHANGELOG.md](https://github.com/vikejs/vike-react/blob/main/packages/vike-react-sentry/CHANGELOG.md).
+
+
+
+## See also
+
+- [Sentry Documentation](https://docs.sentry.io/)
+- [Sentry React SDK](https://docs.sentry.io/platforms/javascript/guides/react/)
+- [Sentry Node SDK](https://docs.sentry.io/platforms/javascript/guides/node/)
+- [Vike > Error Tracking](https://vike.dev/error-tracking)
+- [Vike > `+onError()` hook](https://vike.dev/onError)
+- [Vike > `+onHookCall()` hook](https://vike.dev/onHookCall)
diff --git a/packages/vike-react-sentry/package.json b/packages/vike-react-sentry/package.json
new file mode 100644
index 00000000..47dcb151
--- /dev/null
+++ b/packages/vike-react-sentry/package.json
@@ -0,0 +1,74 @@
+{
+ "name": "vike-react-sentry",
+ "version": "0.1.0",
+ "homepage": "https://github.com/vikejs/vike-react/tree/main/packages/vike-react-sentry#readme",
+ "dependencies": {
+ "@brillout/vite-plugin-server-entry": "^0.7.0"
+ },
+ "peerDependencies": {
+ "@sentry/react": ">=10.0.0",
+ "@sentry/node": ">=10.0.0",
+ "@sentry/vite-plugin": ">=4.0.0",
+ "react": ">=18.0.0",
+ "vike-react": ">=0.6.4"
+ },
+ "exports": {
+ "./config": "./dist/integration/+config.js",
+ "./types": "./dist/types.js",
+ "./__internal/integration/Head": "./dist/integration/Head.js",
+ "./__internal/integration/onCreateGlobalContext.server": "./dist/integration/onCreateGlobalContext.server.js",
+ "./__internal/integration/onCreateGlobalContext.client": "./dist/integration/onCreateGlobalContext.client.js",
+ "./__internal/integration/onHookCall.server": "./dist/integration/onHookCall.server.js",
+ "./__internal/integration/onHookCall.client": "./dist/integration/onHookCall.client.js",
+ "./__internal/integration/onError": "./dist/integration/onError.js"
+ },
+ "type": "module",
+ "scripts": {
+ "dev": "tsc --watch",
+ "build": "rimraf dist/ && tsc",
+ "release": "release-me patch",
+ "release:minor": "release-me minor",
+ "release:commit": "release-me commit"
+ },
+ "devDependencies": {
+ "@brillout/release-me": "^0.4.8",
+ "@brillout/vite-plugin-server-entry": "^0.7.15",
+ "@sentry/react": "^10.22.0",
+ "@sentry/node": "^10.22.0",
+ "@sentry/vite-plugin": "^4.6.0",
+ "@types/node": "^24.0.8",
+ "@types/react": "^19.1.13",
+ "react": "^19.2.0",
+ "rimraf": "^5.0.5",
+ "typescript": "^5.9.2",
+ "vike": "^0.4.253",
+ "vike-react": "0.6.20",
+ "vite": "^7.1.7"
+ },
+ "typesVersions": {
+ "*": {
+ "config": [
+ "dist/integration/+config.d.ts"
+ ],
+ "types": [
+ "dist/types.d.ts"
+ ],
+ "__internal/integration/onCreateGlobalContext": [
+ "dist/integration/onCreateGlobalContext.d.ts"
+ ],
+ "__internal/integration/client": [
+ "dist/integration/client.d.ts"
+ ],
+ "__internal/integration/onError": [
+ "dist/integration/onError.d.ts"
+ ],
+ "__internal/integration/onHookCall": [
+ "dist/integration/onHookCall.d.ts"
+ ]
+ }
+ },
+ "files": [
+ "dist"
+ ],
+ "license": "MIT"
+}
diff --git a/packages/vike-react-sentry/src/integration/+config.ts b/packages/vike-react-sentry/src/integration/+config.ts
new file mode 100644
index 00000000..e61add91
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/+config.ts
@@ -0,0 +1,60 @@
+export { config as default }
+
+import { getViteConfig } from '../plugin/index.js'
+import type { Config } from 'vike/types'
+import type { SentryOptions } from '../types.js'
+import type { SentryVitePluginOptions } from '@sentry/vite-plugin'
+import 'vike-react/config' // Needed for merging vike-react's Vike.Config
+
+const config = {
+ name: 'vike-react-sentry',
+ require: {
+ 'vike-react': '>=0.6.4',
+ vike: '>=0.4.253',
+ },
+ Head: 'import:vike-react-sentry/__internal/integration/Head:Head',
+ onCreateGlobalContext: [
+ 'import:vike-react-sentry/__internal/integration/onCreateGlobalContext.server:onCreateGlobalContext',
+ 'import:vike-react-sentry/__internal/integration/onCreateGlobalContext.client:onCreateGlobalContext',
+ ],
+ onError: 'import:vike-react-sentry/__internal/integration/onError:onError',
+ onHookCall: [
+ 'import:vike-react-sentry/__internal/integration/onHookCall.server:onHookCall',
+ 'import:vike-react-sentry/__internal/integration/onHookCall.client:onHookCall',
+ ],
+ meta: {
+ sentry: {
+ env: {
+ server: true,
+ client: true,
+ config: true,
+ },
+ global: true,
+ cumulative: true,
+ },
+ sentryVite: {
+ env: {
+ server: false,
+ client: false,
+ config: true,
+ },
+ global: true,
+ cumulative: false,
+ },
+ },
+ vite: getViteConfig,
+} satisfies Config
+
+declare global {
+ namespace Vike {
+ interface Config {
+ sentry?: SentryOptions | (() => SentryOptions | Promise)
+ sentryVite?: SentryVitePluginOptions
+ }
+
+ interface ConfigResolved {
+ sentry?: (SentryOptions | (() => SentryOptions | Promise))[]
+ sentryVite?: SentryVitePluginOptions
+ }
+ }
+}
diff --git a/packages/vike-react-sentry/src/integration/Head.tsx b/packages/vike-react-sentry/src/integration/Head.tsx
new file mode 100644
index 00000000..0e203e59
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/Head.tsx
@@ -0,0 +1,28 @@
+export { Head }
+
+import React from 'react'
+import * as Sentry from '@sentry/node'
+
+// Inject Sentry trace meta tags into the HTML head for distributed tracing
+// This allows the client-side SDK to continue the trace started on the server
+function Head() {
+ if (!Sentry.getClient()) {
+ return null
+ }
+
+ // Get trace data from Sentry
+ const traceData = Sentry.getTraceData()
+
+ // Return the meta tags as proper React elements
+ // Fields may include:
+ // - sentry-trace: Sentry's proprietary trace header
+ // - baggage: Dynamic sampling context
+ // - traceparent: W3C Trace Context header
+ return (
+ <>
+ {traceData['sentry-trace'] && }
+ {traceData.baggage && }
+ {traceData.traceparent && }
+ >
+ )
+}
diff --git a/packages/vike-react-sentry/src/integration/constants.ts b/packages/vike-react-sentry/src/integration/constants.ts
new file mode 100644
index 00000000..e97abb69
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/constants.ts
@@ -0,0 +1 @@
+export const TRACE_DEFAULT_SAMPLE_RATE = 0.2
diff --git a/packages/vike-react-sentry/src/integration/onCreateGlobalContext.client.ts b/packages/vike-react-sentry/src/integration/onCreateGlobalContext.client.ts
new file mode 100644
index 00000000..f4530fbb
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/onCreateGlobalContext.client.ts
@@ -0,0 +1,33 @@
+export { onCreateGlobalContext }
+
+import * as SentryReact from '@sentry/react'
+import type { GlobalContextClient } from 'vike/types'
+import type { SentryOptions } from '../types.js'
+import type { SentryReactOptions } from '../types.js'
+import { resolveDsn } from '../utils/resolveDsn.js'
+import { TRACE_DEFAULT_SAMPLE_RATE } from './constants.js'
+
+async function onCreateGlobalContext(globalContext: GlobalContextClient): Promise {
+ const sentryConfigs = globalContext.config.sentry || []
+
+ const clientConfig: SentryOptions = {}
+ for (const curr of [...sentryConfigs].reverse()) {
+ const resolvedConfig = typeof curr === 'function' ? await curr() : curr
+ Object.assign(clientConfig, resolvedConfig)
+ }
+
+ if (!SentryReact.getClient()) {
+ SentryReact.init(resolveSentryClientSettings(clientConfig))
+ }
+}
+
+const resolveSentryClientSettings = (clientConfig: SentryReactOptions) =>
+ ({
+ environment: clientConfig.environment || import.meta.env.MODE || 'production',
+ replaysSessionSampleRate: 0.1,
+ replaysOnErrorSampleRate: 1.0,
+ integrations: [SentryReact.browserTracingIntegration(), SentryReact.replayIntegration()],
+ dsn: resolveDsn(clientConfig.dsn),
+ traceSampleRate: clientConfig.tracesSampleRate ?? TRACE_DEFAULT_SAMPLE_RATE,
+ ...clientConfig,
+ }) as SentryReactOptions
diff --git a/packages/vike-react-sentry/src/integration/onCreateGlobalContext.server.ts b/packages/vike-react-sentry/src/integration/onCreateGlobalContext.server.ts
new file mode 100644
index 00000000..e8d14c92
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/onCreateGlobalContext.server.ts
@@ -0,0 +1,30 @@
+export { onCreateGlobalContext }
+
+import * as SentryNode from '@sentry/node'
+import type { GlobalContextServer } from 'vike/types'
+import type { SentryOptions } from '../types.js'
+import type { SentryNodeOptions } from '../types.js'
+import { resolveDsn } from '../utils/resolveDsn.js'
+import { TRACE_DEFAULT_SAMPLE_RATE } from './constants.js'
+
+async function onCreateGlobalContext(globalContext: GlobalContextServer): Promise {
+ const sentryConfigs = globalContext.config.sentry || []
+
+ const serverConfig: SentryOptions = {}
+ for (const curr of [...sentryConfigs].reverse()) {
+ const resolvedConfig = typeof curr === 'function' ? await curr() : curr
+ Object.assign(serverConfig, resolvedConfig)
+ }
+
+ if (!SentryNode.getClient()) {
+ SentryNode.init(resolveSentryServerSettings(serverConfig))
+ }
+}
+
+const resolveSentryServerSettings = (serverConfig: SentryNodeOptions) =>
+ ({
+ environment: serverConfig.environment || import.meta.env.MODE || 'production',
+ dsn: resolveDsn(serverConfig.dsn),
+ traceSampleRate: serverConfig.tracesSampleRate ?? TRACE_DEFAULT_SAMPLE_RATE,
+ ...serverConfig,
+ }) as SentryNodeOptions
diff --git a/packages/vike-react-sentry/src/integration/onError.ts b/packages/vike-react-sentry/src/integration/onError.ts
new file mode 100644
index 00000000..42758021
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/onError.ts
@@ -0,0 +1,9 @@
+import * as Sentry from '@sentry/node'
+import type { Config } from 'vike/types'
+import { assert } from '../utils/assert.js'
+
+export const onError: Config['onError'] = (error) => {
+ if (!Sentry.getClient()) return
+ assert(error && typeof error === 'object')
+ Sentry.captureException(error)
+}
diff --git a/packages/vike-react-sentry/src/integration/onHookCall.client.ts b/packages/vike-react-sentry/src/integration/onHookCall.client.ts
new file mode 100644
index 00000000..c8a7679e
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/onHookCall.client.ts
@@ -0,0 +1,52 @@
+import * as Sentry from '@sentry/react'
+import type { Config, PageContextClient } from 'vike/types'
+type Hook = Parameters>[0]
+
+/**
+ * Vike onHookCall configuration for Sentry integration (client-side).
+ * Provides automatic tracing and error capture for all Vike hooks.
+ */
+export async function onHookCall(hook: Hook, pageContext: PageContextClient) {
+ if (!Sentry.getClient() || hook.name === 'onError') {
+ return hook.call()
+ }
+
+ // Extract useful context for Sentry
+ const url = pageContext?.urlOriginal ?? 'NOT-DEFINED'
+ const pageId = pageContext?.pageId ?? 'NOT-DEFINED'
+
+ // withScope ensures any error captured during hook execution has Vike context
+ return Sentry.withScope((scope) => {
+ scope.setTag('vike.hook', hook.name)
+ scope.setTag('vike.page', pageId)
+ scope.setContext('vike', {
+ hook: hook.name,
+ filePath: hook.filePath,
+ pageId,
+ url,
+ })
+
+ return Sentry.startSpan(
+ {
+ name: hook.name,
+ op: 'vike.hook',
+ attributes: {
+ 'vike.hook.name': hook.name,
+ 'vike.hook.file': hook.filePath,
+ 'vike.page.id': pageId,
+ 'vike.url': url,
+ },
+ },
+ async (span) => {
+ try {
+ await hook.call()
+ } catch (error) {
+ span.setStatus({
+ code: 2,
+ })
+ Sentry.captureException(error)
+ }
+ },
+ )
+ })
+}
diff --git a/packages/vike-react-sentry/src/integration/onHookCall.server.ts b/packages/vike-react-sentry/src/integration/onHookCall.server.ts
new file mode 100644
index 00000000..771784de
--- /dev/null
+++ b/packages/vike-react-sentry/src/integration/onHookCall.server.ts
@@ -0,0 +1,52 @@
+import * as Sentry from '@sentry/node'
+import type { Config, PageContextServer } from 'vike/types'
+type Hook = Parameters>[0]
+
+/**
+ * Vike onHookCall configuration for Sentry integration (server-side).
+ * Provides automatic tracing and error capture for all Vike hooks.
+ */
+export async function onHookCall(hook: Hook, pageContext: PageContextServer) {
+ if (!Sentry.getClient() || hook.name === 'onError') {
+ return hook.call()
+ }
+
+ // Extract useful context for Sentry
+ const url = pageContext?.urlOriginal ?? 'NOT-DEFINED'
+ const pageId = pageContext?.pageId ?? 'NOT-DEFINED'
+
+ // withScope ensures any error captured during hook execution has Vike context
+ return Sentry.withScope((scope) => {
+ scope.setTag('vike.hook', hook.name)
+ scope.setTag('vike.page', pageId)
+ scope.setContext('vike', {
+ hook: hook.name,
+ filePath: hook.filePath,
+ pageId,
+ url,
+ })
+
+ return Sentry.startSpan(
+ {
+ name: hook.name,
+ op: 'vike.hook',
+ attributes: {
+ 'vike.hook.name': hook.name,
+ 'vike.hook.file': hook.filePath,
+ 'vike.page.id': pageId,
+ 'vike.url': url,
+ },
+ },
+ async (span) => {
+ try {
+ await hook.call()
+ } catch (error) {
+ span.setStatus({
+ code: 2,
+ })
+ Sentry.captureException(error)
+ }
+ },
+ )
+ })
+}
diff --git a/packages/vike-react-sentry/src/plugin/index.ts b/packages/vike-react-sentry/src/plugin/index.ts
new file mode 100644
index 00000000..f0766fa0
--- /dev/null
+++ b/packages/vike-react-sentry/src/plugin/index.ts
@@ -0,0 +1,197 @@
+export { getViteConfig }
+
+import { sentryVitePlugin, SentryVitePluginOptions } from '@sentry/vite-plugin'
+import { serverProductionEntryPlugin } from '@brillout/vite-plugin-server-entry/plugin'
+import { getVikeConfig } from 'vike/plugin'
+import type { Plugin, InlineConfig } from 'vite'
+import { assertUsage, assertWarning } from '../utils/assert.js'
+import type { SentryOptions } from '../types.js'
+
+declare global {
+ var __vike_react_sentry_vite_options_promise: Promise | undefined
+}
+
+async function getViteConfig(): Promise {
+ const plugins: Plugin[] = []
+ plugins.push({
+ enforce: 'post',
+ name: 'vike-react-sentry:config-resolver',
+ configResolved() {
+ globalThis.__vike_react_sentry_vite_options_promise ??= resolveVitePluginOptions()
+ },
+ })
+
+ if (!globalThis.__vike_react_sentry_vite_options_promise) {
+ return {
+ plugins,
+ }
+ }
+ const vitePluginOptions = await globalThis.__vike_react_sentry_vite_options_promise
+ if (vitePluginOptions) {
+ const sentryPlugins = sentryVitePlugin(vitePluginOptions)
+ plugins.push(...sentryPlugins)
+ }
+
+ plugins.push(
+ ...serverProductionEntryPlugin({
+ getServerProductionEntry: () => {
+ return `
+// vike-react-sentry: Preload OpenTelemetry instrumentation for ESM
+// The actual Sentry.init() with config will be called later via onCreateGlobalContext
+// https://docs.sentry.io/platforms/javascript/guides/node/install/esm-without-import/
+import { preloadOpenTelemetry } from '@sentry/node';
+preloadOpenTelemetry();
+`
+ },
+ libraryName: 'vike-react-sentry',
+ }),
+ )
+
+ return {
+ resolve: {
+ noExternal: 'vike-react-sentry',
+ },
+ plugins,
+ ...(vitePluginOptions && {
+ build: {
+ sourcemap: true,
+ },
+ }),
+ }
+}
+
+/** Parse project ID from DSN. Format: https://{PUBLIC_KEY}@{HOST}/{PROJECT_ID} */
+function getProjectIdFromDsn(dsn: string): string | undefined {
+ const match = dsn.match(/\/(\d+)$/)
+ return match?.[1]
+}
+
+/** Find the first defined value for a sentry config key. */
+function findSentryConfig(
+ configs: (SentryOptions | Function)[],
+ key: K,
+): SentryOptions[K] | undefined {
+ return configs.find((c): c is SentryOptions => typeof c !== 'function' && !!c[key])?.[key]
+}
+
+/** Resolve the effective DSN from sentry configs and env vars. */
+function resolveDsn(configs: (SentryOptions | Function)[]): string {
+ const dsn = findSentryConfig(configs, 'dsn') || process.env['PUBLIC_ENV__SENTRY_DSN']
+ // Assumes the client and server uses the same DSN
+ // If different DSNs are needed, we can enable SENTRY_DSN later
+ assertUsage(
+ !process.env['SENTRY_DSN'],
+ 'SENTRY_DSN is not supported. Use PUBLIC_ENV__SENTRY_DSN instead, or set dsn in your sentry config.',
+ )
+ assertUsage(dsn, 'Sentry DSN is required. Set PUBLIC_ENV__SENTRY_DSN env var, or set dsn in the sentry config.')
+ return dsn
+}
+
+/** Resolve vite plugin options from sentry config, env vars, and API auto-detection. */
+async function resolveVitePluginOptions(): Promise {
+ const vikeConfig = getVikeConfig()
+ const sentryConfigRaw = vikeConfig.config.sentry || []
+
+ const dsn = resolveDsn(sentryConfigRaw)
+ const release = findSentryConfig(sentryConfigRaw, 'release')
+
+ let options = resolveEnvFallbacks(vikeConfig.config.sentryVite)
+
+ if (options && release) {
+ options = {
+ ...options,
+ release: {
+ name: release,
+ ...options.release,
+ },
+ }
+ }
+
+ if (options) {
+ options = await autoDetectProjectInfo(options, dsn)
+ }
+
+ return options
+}
+
+/** Resolve env var fallbacks for vite plugin auth/org/project/url. */
+function resolveEnvFallbacks(options: SentryVitePluginOptions | undefined): SentryVitePluginOptions | undefined {
+ const authToken = options?.authToken || process.env['SENTRY_AUTH_TOKEN']
+ if (!authToken) return options
+ return {
+ ...options,
+ authToken,
+ org: options?.org || process.env['SENTRY_ORG'],
+ project: options?.project || process.env['SENTRY_PROJECT'],
+ url: options?.url || process.env['SENTRY_URL'],
+ }
+}
+
+/** Auto-detect project and org slug from Sentry API when not explicitly configured. */
+async function autoDetectProjectInfo(options: SentryVitePluginOptions, dsn: string): Promise {
+ if (options.project || options.org) return options
+ const authToken = options.authToken
+ const projectId = getProjectIdFromDsn(dsn)
+ if (!authToken || !projectId) return options
+
+ const projectInfo = await getProjectInfoFromApi(authToken, projectId, dsn, options.url)
+ if (!projectInfo) return options
+
+ return {
+ ...options,
+ project: projectInfo.projectSlug,
+ org: projectInfo.orgSlug,
+ }
+}
+
+/**
+ * Extract API base URL from DSN
+ * DSN host like "o123.ingest.de.sentry.io" -> "https://de.sentry.io"
+ */
+function getApiUrlFromDsn(dsn: string): string | undefined {
+ try {
+ const url = new URL(dsn)
+ const match = url.hostname.match(/ingest\.(.+)$/)
+ return match ? `https://${match[1]}` : undefined
+ } catch {
+ return undefined
+ }
+}
+
+/** Fetch project and org slug from Sentry API. Results are cached globally. */
+async function getProjectInfoFromApi(
+ authToken: string,
+ projectId: string,
+ dsn: string,
+ url?: string,
+): Promise<{ projectSlug: string; orgSlug: string } | null> {
+ const effectiveUrl = url || getApiUrlFromDsn(dsn) || 'https://sentry.io'
+
+ try {
+ const response = await fetch(`${effectiveUrl}/api/0/projects/`, {
+ headers: { Authorization: `Bearer ${authToken}` },
+ })
+ if (!response.ok) {
+ return null
+ }
+ const projects = (await response.json()) as Array<{
+ id: string
+ slug: string
+ organization: { slug: string }
+ }>
+ const project = projects.find((p) => p.id === projectId)
+ if (!project) {
+ return null
+ }
+ return {
+ projectSlug: project.slug,
+ orgSlug: project.organization.slug,
+ }
+ } catch (err) {
+ assertWarning(
+ false,
+ `Failed to auto-detect Sentry project info from API (url: ${effectiveUrl}, projectId: ${projectId}): ${err}`,
+ )
+ return null
+ }
+}
diff --git a/packages/vike-react-sentry/src/types.ts b/packages/vike-react-sentry/src/types.ts
new file mode 100644
index 00000000..ab7b6fb1
--- /dev/null
+++ b/packages/vike-react-sentry/src/types.ts
@@ -0,0 +1,19 @@
+import type * as SentryReact from '@sentry/react'
+import type * as SentryNode from '@sentry/node'
+
+export interface SentryNodeOptions extends SentryNode.NodeOptions {}
+export interface SentryReactOptions extends SentryReact.BrowserOptions {}
+export type SentryOptions = Pick<
+ SentryNodeOptions & SentryReactOptions,
+ | 'dsn'
+ | 'environment'
+ | 'release'
+ | 'debug'
+ | 'sampleRate'
+ | 'tracesSampleRate'
+ | 'enabled'
+ | 'maxBreadcrumbs'
+ | 'sendDefaultPii'
+ | 'replaysSessionSampleRate'
+ | 'replaysOnErrorSampleRate'
+>
diff --git a/packages/vike-react-sentry/src/utils/assert.ts b/packages/vike-react-sentry/src/utils/assert.ts
new file mode 100644
index 00000000..f9d00c72
--- /dev/null
+++ b/packages/vike-react-sentry/src/utils/assert.ts
@@ -0,0 +1,18 @@
+export { assertUsage }
+export { assert }
+export { assertWarning }
+
+function assertUsage(condition: unknown, message: string): asserts condition {
+ if (condition) return
+ throw new Error(`[vike-react-sentry] ${message}`)
+}
+
+function assert(condition: unknown): asserts condition {
+ if (condition) return
+ throw new Error('[vike-react-sentry] You stumbled upon a bug, reach out on GitHub.')
+}
+
+function assertWarning(condition: unknown, message: string): void {
+ if (condition) return
+ console.warn(`[vike-react-sentry][Warning] ${message}`)
+}
diff --git a/packages/vike-react-sentry/src/utils/resolveDsn.ts b/packages/vike-react-sentry/src/utils/resolveDsn.ts
new file mode 100644
index 00000000..f14137c0
--- /dev/null
+++ b/packages/vike-react-sentry/src/utils/resolveDsn.ts
@@ -0,0 +1,3 @@
+export function resolveDsn(configDsn: string | undefined): string | undefined {
+ return configDsn || import.meta.env.PUBLIC_ENV__SENTRY_DSN
+}
diff --git a/packages/vike-react-sentry/tsconfig.json b/packages/vike-react-sentry/tsconfig.json
new file mode 100644
index 00000000..abdf7fb0
--- /dev/null
+++ b/packages/vike-react-sentry/tsconfig.json
@@ -0,0 +1,28 @@
+{
+ "include": ["./src"],
+ "exclude": ["**/*.spec.ts"],
+ "compilerOptions": {
+ // Misc
+ "skipLibCheck": true,
+ "noErrorTruncation": true,
+ // Strictness
+ "strict": true,
+ "noUncheckedIndexedAccess": true,
+ "noUnusedLocals": true,
+ "noUnusedParameters": true,
+ // Resolution
+ "esModuleInterop": true,
+ "moduleResolution": "Node16",
+ // Libs
+ "lib": ["DOM", "DOM.Iterable", "ES2022"],
+ "types": ["vite/client", "vike-react"],
+ // Output
+ "target": "ES2020",
+ "module": "Node16",
+ "outDir": "./dist/",
+ "rootDir": "./src/",
+ "declaration": true,
+ // React
+ "jsx": "react"
+ }
+}
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index fcb63790..7df4d9c2 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -55,7 +55,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../../packages/vike-react
@@ -91,7 +91,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../../packages/vike-react
@@ -112,7 +112,7 @@ importers:
version: 19.2.1(react@19.2.1)
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../../packages/vike-react
@@ -145,7 +145,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../../packages/vike-react
@@ -184,7 +184,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../../packages/vike-react
@@ -195,6 +195,57 @@ importers:
specifier: ^7.3.0
version: 7.3.0(@types/node@24.0.8)
+ examples/sentry:
+ dependencies:
+ '@photonjs/hono':
+ specifier: ^0.1.7
+ version: 0.1.12(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))
+ '@sentry/node':
+ specifier: ^10.22.0
+ version: 10.35.0
+ '@sentry/react':
+ specifier: ^10.22.0
+ version: 10.35.0(react@19.2.1)
+ '@sentry/vite-plugin':
+ specifier: ^4.6.0
+ version: 4.7.0
+ '@types/react':
+ specifier: ^19.1.13
+ version: 19.2.7
+ '@types/react-dom':
+ specifier: ^19.1.9
+ version: 19.2.3(@types/react@19.2.7)
+ '@vitejs/plugin-react':
+ specifier: ^5.0.3
+ version: 5.1.1(vite@7.3.0(@types/node@24.0.8))
+ hono:
+ specifier: ^4.7.14
+ version: 4.11.4
+ react:
+ specifier: ^19.2.0
+ version: 19.2.1
+ react-dom:
+ specifier: ^19.2.0
+ version: 19.2.1(react@19.2.1)
+ typescript:
+ specifier: ^5.9.2
+ version: 5.9.3
+ vike:
+ specifier: ^0.4.253
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ vike-photon:
+ specifier: ^0.1.20
+ version: 0.1.24(@photonjs/core@0.1.21(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8)))(@photonjs/runtime@0.1.16(hono@4.11.4)(rollup@4.46.2)(vite@7.3.0(@types/node@24.0.8)))(hono@4.11.4)(rollup@4.46.2)(srvx@0.9.8)(vike@0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8)))(vite@7.3.0(@types/node@24.0.8))
+ vike-react:
+ specifier: 0.6.10
+ version: 0.6.10(react-dom@19.2.1(react@19.2.1))(react@19.2.1)(vike@0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8)))
+ vike-react-sentry:
+ specifier: 0.1.0
+ version: link:../../packages/vike-react-sentry
+ vite:
+ specifier: ^7.1.7
+ version: 7.3.0(@types/node@24.0.8)
+
examples/zustand:
dependencies:
'@types/react':
@@ -220,7 +271,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../../packages/vike-react
@@ -269,7 +320,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vite:
specifier: ^7.3.0
version: 7.3.0(@types/node@24.0.8)
@@ -299,7 +350,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -351,7 +402,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -384,7 +435,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -439,7 +490,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -479,7 +530,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -487,6 +538,49 @@ importers:
specifier: ^7.3.0
version: 7.3.0(@types/node@24.0.8)
+ packages/vike-react-sentry:
+ dependencies:
+ '@brillout/vite-plugin-server-entry':
+ specifier: ^0.7.0
+ version: 0.7.17
+ devDependencies:
+ '@brillout/release-me':
+ specifier: ^0.4.8
+ version: 0.4.12(conventional-commits-filter@5.0.0)
+ '@sentry/node':
+ specifier: ^10.22.0
+ version: 10.35.0
+ '@sentry/react':
+ specifier: ^10.22.0
+ version: 10.35.0(react@19.2.1)
+ '@sentry/vite-plugin':
+ specifier: ^4.6.0
+ version: 4.7.0
+ '@types/node':
+ specifier: ^24.0.8
+ version: 24.0.8
+ '@types/react':
+ specifier: ^19.1.13
+ version: 19.2.7
+ react:
+ specifier: ^19.2.0
+ version: 19.2.1
+ rimraf:
+ specifier: ^5.0.5
+ version: 5.0.10
+ typescript:
+ specifier: ^5.9.2
+ version: 5.9.3
+ vike:
+ specifier: ^0.4.253
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ vike-react:
+ specifier: 0.6.20
+ version: link:../vike-react
+ vite:
+ specifier: ^7.1.7
+ version: 7.3.0(@types/node@24.0.8)
+
packages/vike-react-styled-components:
devDependencies:
'@brillout/release-me':
@@ -509,7 +603,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -542,7 +636,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -594,7 +688,7 @@ importers:
version: 5.9.3
vike:
specifier: ^0.4.253
- version: 0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ version: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
vike-react:
specifier: 0.6.20
version: link:../vike-react
@@ -641,6 +735,12 @@ packages:
peerDependencies:
react: '>=16.9.0'
+ '@apm-js-collab/code-transformer@0.8.2':
+ resolution: {integrity: sha512-YRjJjNq5KFSjDUoqu5pFUWrrsvGOxl6c3bu+uMFc9HNNptZ2rNU/TI2nLw4jnhQNtka972Ee2m3uqbvDQtPeCA==}
+
+ '@apm-js-collab/tracing-hooks@0.3.1':
+ resolution: {integrity: sha512-Vu1CbmPURlN5fTboVuKMoJjbO5qcq9fA5YXpskx3dXe/zTBvjODFoerw+69rVBlRLrJpwPqSDqEuJDEKIrTldw==}
+
'@apollo/client-react-streaming@0.11.11':
resolution: {integrity: sha512-h7u/D5GDq5mn2BXaWBiK9z+i90mzmBCnOeRt4Iarc1qwTt40Q4u2yEXPw8ma1BywZ2uLJyVuAb6EyA605eqeEQ==}
peerDependencies:
@@ -906,6 +1006,15 @@ packages:
resolution: {integrity: sha512-UJnjoFsmxfKUdNYdWgOB0mWUypuLvAfQPH1+pyvRJs6euowbFkFC6P13w1l8mJyi3vxYMxc9kld5jZEGRQs6bw==}
engines: {node: '>=18'}
+ '@emnapi/core@1.8.1':
+ resolution: {integrity: sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==}
+
+ '@emnapi/runtime@1.8.1':
+ resolution: {integrity: sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==}
+
+ '@emnapi/wasi-threads@1.1.0':
+ resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==}
+
'@emotion/babel-plugin@11.13.5':
resolution: {integrity: sha512-pxHCpT2ex+0q+HH91/zsdHkw/lXd468DIN2zvfvLtPKLLMo6gQj7oLObq8PhkrxOZb/gGCq03S3Z7PDhS8pduQ==}
@@ -1289,6 +1398,10 @@ packages:
resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==}
engines: {node: '>=12'}
+ '@isaacs/fs-minipass@4.0.1':
+ resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==}
+ engines: {node: '>=18.0.0'}
+
'@jridgewell/gen-mapping@0.3.13':
resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==}
@@ -1302,9 +1415,20 @@ packages:
'@jridgewell/sourcemap-codec@1.5.0':
resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
+ '@jridgewell/sourcemap-codec@1.5.5':
+ resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
+
'@jridgewell/trace-mapping@0.3.30':
resolution: {integrity: sha512-GQ7Nw5G2lTu/BtHTKfXhKHok2WGetd4XYcVKGx00SjAk8GMwgJM3zr6zORiPGuOE+/vkc90KtTosSSvaCjKb2Q==}
+ '@mapbox/node-pre-gyp@2.0.3':
+ resolution: {integrity: sha512-uwPAhccfFJlsfCxMYTwOdVfOz3xqyj8xYL3zJj8f0pb30tLohnnFPhLuqp4/qoEz8sNxe4SESZedcBojRefIzg==}
+ engines: {node: '>=18'}
+ hasBin: true
+
+ '@napi-rs/wasm-runtime@1.1.1':
+ resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==}
+
'@nodelib/fs.scandir@2.1.5':
resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
engines: {node: '>= 8'}
@@ -1317,9 +1441,237 @@ packages:
resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==}
engines: {node: '>= 8'}
+ '@opentelemetry/api-logs@0.208.0':
+ resolution: {integrity: sha512-CjruKY9V6NMssL/T1kAFgzosF1v9o6oeN+aX5JB/C/xPNtmgIJqcXHG7fA82Ou1zCpWGl4lROQUKwUNE1pMCyg==}
+ engines: {node: '>=8.0.0'}
+
+ '@opentelemetry/api@1.9.0':
+ resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==}
+ engines: {node: '>=8.0.0'}
+
+ '@opentelemetry/context-async-hooks@2.4.0':
+ resolution: {integrity: sha512-jn0phJ+hU7ZuvaoZE/8/Euw3gvHJrn2yi+kXrymwObEPVPjtwCmkvXDRQCWli+fCTTF/aSOtXaLr7CLIvv3LQg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+
+ '@opentelemetry/core@2.2.0':
+ resolution: {integrity: sha512-FuabnnUm8LflnieVxs6eP7Z383hgQU4W1e3KJS6aOG3RxWxcHyBxH8fDMHNgu/gFx/M2jvTOW/4/PHhLz6bjWw==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+
+ '@opentelemetry/core@2.4.0':
+ resolution: {integrity: sha512-KtcyFHssTn5ZgDu6SXmUznS80OFs/wN7y6MyFRRcKU6TOw8hNcGxKvt8hsdaLJfhzUszNSjURetq5Qpkad14Gw==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.0.0 <1.10.0'
+
+ '@opentelemetry/instrumentation-amqplib@0.55.0':
+ resolution: {integrity: sha512-5ULoU8p+tWcQw5PDYZn8rySptGSLZHNX/7srqo2TioPnAAcvTy6sQFQXsNPrAnyRRtYGMetXVyZUy5OaX1+IfA==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-connect@0.52.0':
+ resolution: {integrity: sha512-GXPxfNB5szMbV3I9b7kNWSmQBoBzw7MT0ui6iU/p+NIzVx3a06Ri2cdQO7tG9EKb4aKSLmfX9Cw5cKxXqX6Ohg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-dataloader@0.26.0':
+ resolution: {integrity: sha512-P2BgnFfTOarZ5OKPmYfbXfDFjQ4P9WkQ1Jji7yH5/WwB6Wm/knynAoA1rxbjWcDlYupFkyT0M1j6XLzDzy0aCA==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-express@0.57.0':
+ resolution: {integrity: sha512-HAdx/o58+8tSR5iW+ru4PHnEejyKrAy9fYFhlEI81o10nYxrGahnMAHWiSjhDC7UQSY3I4gjcPgSKQz4rm/asg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-fs@0.28.0':
+ resolution: {integrity: sha512-FFvg8fq53RRXVBRHZViP+EMxMR03tqzEGpuq55lHNbVPyFklSVfQBN50syPhK5UYYwaStx0eyCtHtbRreusc5g==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-generic-pool@0.52.0':
+ resolution: {integrity: sha512-ISkNcv5CM2IwvsMVL31Tl61/p2Zm2I2NAsYq5SSBgOsOndT0TjnptjufYVScCnD5ZLD1tpl4T3GEYULLYOdIdQ==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-graphql@0.56.0':
+ resolution: {integrity: sha512-IPvNk8AFoVzTAM0Z399t34VDmGDgwT6rIqCUug8P9oAGerl2/PEIYMPOl/rerPGu+q8gSWdmbFSjgg7PDVRd3Q==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-hapi@0.55.0':
+ resolution: {integrity: sha512-prqAkRf9e4eEpy4G3UcR32prKE8NLNlA90TdEU1UsghOTg0jUvs40Jz8LQWFEs5NbLbXHYGzB4CYVkCI8eWEVQ==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-http@0.208.0':
+ resolution: {integrity: sha512-rhmK46DRWEbQQB77RxmVXGyjs6783crXCnFjYQj+4tDH/Kpv9Rbg3h2kaNyp5Vz2emF1f9HOQQvZoHzwMWOFZQ==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-ioredis@0.56.0':
+ resolution: {integrity: sha512-XSWeqsd3rKSsT3WBz/JKJDcZD4QYElZEa0xVdX8f9dh4h4QgXhKRLorVsVkK3uXFbC2sZKAS2Ds+YolGwD83Dg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-kafkajs@0.18.0':
+ resolution: {integrity: sha512-KCL/1HnZN5zkUMgPyOxfGjLjbXjpd4odDToy+7c+UsthIzVLFf99LnfIBE8YSSrYE4+uS7OwJMhvhg3tWjqMBg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-knex@0.53.0':
+ resolution: {integrity: sha512-xngn5cH2mVXFmiT1XfQ1aHqq1m4xb5wvU6j9lSgLlihJ1bXzsO543cpDwjrZm2nMrlpddBf55w8+bfS4qDh60g==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-koa@0.57.0':
+ resolution: {integrity: sha512-3JS8PU/D5E3q295mwloU2v7c7/m+DyCqdu62BIzWt+3u9utjxC9QS7v6WmUNuoDN3RM+Q+D1Gpj13ERo+m7CGg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.9.0
+
+ '@opentelemetry/instrumentation-lru-memoizer@0.53.0':
+ resolution: {integrity: sha512-LDwWz5cPkWWr0HBIuZUjslyvijljTwmwiItpMTHujaULZCxcYE9eU44Qf/pbVC8TulT0IhZi+RoGvHKXvNhysw==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-mongodb@0.61.0':
+ resolution: {integrity: sha512-OV3i2DSoY5M/pmLk+68xr5RvkHU8DRB3DKMzYJdwDdcxeLs62tLbkmRyqJZsYf3Ht7j11rq35pHOWLuLzXL7pQ==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-mongoose@0.55.0':
+ resolution: {integrity: sha512-5afj0HfF6aM6Nlqgu6/PPHFk8QBfIe3+zF9FGpX76jWPS0/dujoEYn82/XcLSaW5LPUDW8sni+YeK0vTBNri+w==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-mysql2@0.55.0':
+ resolution: {integrity: sha512-0cs8whQG55aIi20gnK8B7cco6OK6N+enNhW0p5284MvqJ5EPi+I1YlWsWXgzv/V2HFirEejkvKiI4Iw21OqDWg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-mysql@0.54.0':
+ resolution: {integrity: sha512-bqC1YhnwAeWmRzy1/Xf9cDqxNG2d/JDkaxnqF5N6iJKN1eVWI+vg7NfDkf52/Nggp3tl1jcC++ptC61BD6738A==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-pg@0.61.0':
+ resolution: {integrity: sha512-UeV7KeTnRSM7ECHa3YscoklhUtTQPs6V6qYpG283AB7xpnPGCUCUfECFT9jFg6/iZOQTt3FHkB1wGTJCNZEvPw==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-redis@0.57.0':
+ resolution: {integrity: sha512-bCxTHQFXzrU3eU1LZnOZQ3s5LURxQPDlU3/upBzlWY77qOI1GZuGofazj3jtzjctMJeBEJhNwIFEgRPBX1kp/Q==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-tedious@0.27.0':
+ resolution: {integrity: sha512-jRtyUJNZppPBjPae4ZjIQ2eqJbcRaRfJkr0lQLHFmOU/no5A6e9s1OHLd5XZyZoBJ/ymngZitanyRRA5cniseA==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/instrumentation-undici@0.19.0':
+ resolution: {integrity: sha512-Pst/RhR61A2OoZQZkn6OLpdVpXp6qn3Y92wXa6umfJe9rV640r4bc6SWvw4pPN6DiQqPu2c8gnSSZPDtC6JlpQ==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.7.0
+
+ '@opentelemetry/instrumentation@0.208.0':
+ resolution: {integrity: sha512-Eju0L4qWcQS+oXxi6pgh7zvE2byogAkcsVv0OjHF/97iOz1N/aKE6etSGowYkie+YA1uo6DNwdSxaaNnLvcRlA==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.3.0
+
+ '@opentelemetry/redis-common@0.38.2':
+ resolution: {integrity: sha512-1BCcU93iwSRZvDAgwUxC/DV4T/406SkMfxGqu5ojc3AvNI+I9GhV7v0J1HljsczuuhcnFLYqD5VmwVXfCGHzxA==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+
+ '@opentelemetry/resources@2.4.0':
+ resolution: {integrity: sha512-RWvGLj2lMDZd7M/5tjkI/2VHMpXebLgPKvBUd9LRasEWR2xAynDwEYZuLvY9P2NGG73HF07jbbgWX2C9oavcQg==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.3.0 <1.10.0'
+
+ '@opentelemetry/sdk-trace-base@2.4.0':
+ resolution: {integrity: sha512-WH0xXkz/OHORDLKqaxcUZS0X+t1s7gGlumr2ebiEgNZQl2b0upK2cdoD0tatf7l8iP74woGJ/Kmxe82jdvcWRw==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': '>=1.3.0 <1.10.0'
+
+ '@opentelemetry/semantic-conventions@1.39.0':
+ resolution: {integrity: sha512-R5R9tb2AXs2IRLNKLBJDynhkfmx7mX0vi8NkhZb3gUkPWHn6HXk5J8iQ/dql0U3ApfWym4kXXmBDRGO+oeOfjg==}
+ engines: {node: '>=14'}
+
+ '@opentelemetry/sql-common@0.41.2':
+ resolution: {integrity: sha512-4mhWm3Z8z+i508zQJ7r6Xi7y4mmoJpdvH0fZPFRkWrdp5fq7hhZ2HhYokEOLkfqSMgPR4Z9EyB3DBkbKGOqZiQ==}
+ engines: {node: ^18.19.0 || >=20.6.0}
+ peerDependencies:
+ '@opentelemetry/api': ^1.1.0
+
+ '@oxc-project/types@0.98.0':
+ resolution: {integrity: sha512-Vzmd6FsqVuz5HQVcRC/hrx7Ujo3WEVeQP7C2UNP5uy1hUY4SQvMB+93jxkI1KRHz9a/6cni3glPOtvteN+zpsw==}
+
'@pandacss/is-valid-prop@0.41.0':
resolution: {integrity: sha512-BE6h6CsJk14ugIRrsazJtN3fcg+KDFRat1Bs93YFKH6jd4DOb1yUyVvC70jKqPVvg70zEcV8acZ7VdcU5TLu+w==}
+ '@photonjs/core@0.1.21':
+ resolution: {integrity: sha512-dfAUHhWGsKYPNAKqBaOfvGPKOm6l80yWJ3dq1vSG4GICa5ZJemM1xK5JRJhT1lZD4rEHPOJfQncZ8LHiMPivcg==}
+ peerDependencies:
+ vite: '>=7.1'
+ peerDependenciesMeta:
+ vite:
+ optional: true
+
+ '@photonjs/hono@0.1.12':
+ resolution: {integrity: sha512-S/fiW3H5ivgayfLbr2cXQQdXZ82olMwLPBbKF4I/6nNH29s2+/nvsH4kswjVg8+ZVJ/WDibO1tCensbknEvM3w==}
+ peerDependencies:
+ '@hono/node-server': ^1
+ vite: '>=7.1'
+ peerDependenciesMeta:
+ '@hono/node-server':
+ optional: true
+ vite:
+ optional: true
+
+ '@photonjs/runtime@0.1.16':
+ resolution: {integrity: sha512-04ejZcSfQ3f16cpv22tJyJbqGMepuhpg2NBVoxK8YOiJltkBK1fF5lY/EORTF8ZTxYd1M2HGvn0ZfCAlTfZmng==}
+ peerDependencies:
+ vite: '>=7.1'
+ peerDependenciesMeta:
+ vite:
+ optional: true
+
+ '@photonjs/srvx@0.1.12':
+ resolution: {integrity: sha512-UT/ukFPdmLsEm6Z5kKIl2DXhayxP0braPBcKRZ4bE1l2sFpN67/54JlZXyFgS/Qdmuo3Hpn94sDIX9uoEBVlGQ==}
+ peerDependencies:
+ vite: '>=7.1'
+ peerDependenciesMeta:
+ vite:
+ optional: true
+
'@pkgjs/parseargs@0.11.0':
resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==}
engines: {node: '>=14'}
@@ -1327,6 +1679,11 @@ packages:
'@polka/url@1.0.0-next.28':
resolution: {integrity: sha512-8LduaNlMZGwdZ6qWrKlfa+2M4gahzFkprZiAt2TF8uS0qQgBizKXpXURqvTJ4WtmupWxaLqjRb2UCTe72mu+Aw==}
+ '@prisma/instrumentation@6.19.0':
+ resolution: {integrity: sha512-QcuYy25pkXM8BJ37wVFBO7Zh34nyRV1GOb2n3lPkkbRYfl4hWl3PTcImP41P0KrzVXfa/45p6eVCos27x3exIg==}
+ peerDependencies:
+ '@opentelemetry/api': ^1.8
+
'@rc-component/async-validator@5.0.4':
resolution: {integrity: sha512-qgGdcVIF604M9EqjNF0hbUTz42bz/RDtxWdWuU5EQe3hi7M8ob54B6B35rOsvX5eSvIHIzT9iH1R3n+hk3CGfg==}
engines: {node: '>=14.x'}
@@ -1393,9 +1750,104 @@ packages:
react-redux:
optional: true
+ '@rolldown/binding-android-arm64@1.0.0-beta.51':
+ resolution: {integrity: sha512-Ctn8FUXKWWQI9pWC61P1yumS9WjQtelNS9riHwV7oCkknPGaAry4o7eFx2KgoLMnI2BgFJYpW7Im8/zX3BuONg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [android]
+
+ '@rolldown/binding-darwin-arm64@1.0.0-beta.51':
+ resolution: {integrity: sha512-EL1aRW2Oq15ShUEkBPsDtLMO8GTqfb/ktM/dFaVzXKQiEE96Ss6nexMgfgQrg8dGnNpndFyffVDb5IdSibsu1g==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [darwin]
+
+ '@rolldown/binding-darwin-x64@1.0.0-beta.51':
+ resolution: {integrity: sha512-uGtYKlFen9pMIPvkHPWZVDtmYhMQi5g5Ddsndg1gf3atScKYKYgs5aDP4DhHeTwGXQglhfBG7lEaOIZ4UAIWww==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [darwin]
+
+ '@rolldown/binding-freebsd-x64@1.0.0-beta.51':
+ resolution: {integrity: sha512-JRoVTQtHYbZj1P07JLiuTuXjiBtIa7ag7/qgKA6CIIXnAcdl4LrOf7nfDuHPJcuRKaP5dzecMgY99itvWfmUFQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [freebsd]
+
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.51':
+ resolution: {integrity: sha512-BKATVnpPZ0TYBW9XfDwyd4kPGgvf964HiotIwUgpMrFOFYWqpZ+9ONNzMV4UFAYC7Hb5C2qgYQk/qj2OnAd4RQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm]
+ os: [linux]
+
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.51':
+ resolution: {integrity: sha512-xLd7da5jkfbVsBCm1buIRdWtuXY8+hU3+6ESXY/Tk5X5DPHaifrUblhYDgmA34dQt6WyNC2kfXGgrduPEvDI6Q==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rolldown/binding-linux-arm64-musl@1.0.0-beta.51':
+ resolution: {integrity: sha512-EQFXTgHxxTzv3t5EmjUP/DfxzFYx9sMndfLsYaAY4DWF6KsK1fXGYsiupif6qPTViPC9eVmRm78q0pZU/kuIPg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [linux]
+
+ '@rolldown/binding-linux-x64-gnu@1.0.0-beta.51':
+ resolution: {integrity: sha512-p5P6Xpa68w3yFaAdSzIZJbj+AfuDnMDqNSeglBXM7UlJT14Q4zwK+rV+8Mhp9MiUb4XFISZtbI/seBprhkQbiQ==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+
+ '@rolldown/binding-linux-x64-musl@1.0.0-beta.51':
+ resolution: {integrity: sha512-sNVVyLa8HB8wkFipdfz1s6i0YWinwpbMWk5hO5S+XAYH2UH67YzUT13gs6wZTKg2x/3gtgXzYnHyF5wMIqoDAw==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [linux]
+
+ '@rolldown/binding-openharmony-arm64@1.0.0-beta.51':
+ resolution: {integrity: sha512-e/JMTz9Q8+T3g/deEi8DK44sFWZWGKr9AOCW5e8C8SCVWzAXqYXAG7FXBWBNzWEZK0Rcwo9TQHTQ9Q0gXgdCaA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [openharmony]
+
+ '@rolldown/binding-wasm32-wasi@1.0.0-beta.51':
+ resolution: {integrity: sha512-We3LWqSu6J9s5Y0MK+N7fUiiu37aBGPG3Pc347EoaROuAwkCS2u9xJ5dpIyLW4B49CIbS3KaPmn4kTgPb3EyPw==}
+ engines: {node: '>=14.0.0'}
+ cpu: [wasm32]
+
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.51':
+ resolution: {integrity: sha512-fj56buHRuMM+r/cb6ZYfNjNvO/0xeFybI6cTkTROJatdP4fvmQ1NS8D/Lm10FCSDEOkqIz8hK3TGpbAThbPHsA==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [arm64]
+ os: [win32]
+
+ '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.51':
+ resolution: {integrity: sha512-fkqEqaeEx8AySXiDm54b/RdINb3C0VovzJA3osMhZsbn6FoD73H0AOIiaVAtGr6x63hefruVKTX8irAm4Jkt2w==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [ia32]
+ os: [win32]
+
+ '@rolldown/binding-win32-x64-msvc@1.0.0-beta.51':
+ resolution: {integrity: sha512-CWuLG/HMtrVcjKGa0C4GnuxONrku89g0+CsH8nT0SNhOtREXuzwgjIXNJImpE/A/DMf9JF+1Xkrq/YRr+F/rCg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ cpu: [x64]
+ os: [win32]
+
'@rolldown/pluginutils@1.0.0-beta.47':
resolution: {integrity: sha512-8QagwMH3kNCuzD8EWL8R2YPW5e4OrHNSAHRFDdmFqEwEaD/KcNKjVoumo+gP2vW5eKB2UPbM6vTYiGZX0ixLnw==}
+ '@rolldown/pluginutils@1.0.0-beta.51':
+ resolution: {integrity: sha512-51/8cNXMrqWqX3o8DZidhwz1uYq0BhHDDSfVygAND1Skx5s1TDw3APSSxCMcFFedwgqGcx34gRouwY+m404BBQ==}
+
+ '@rollup/pluginutils@5.3.0':
+ resolution: {integrity: sha512-5EdhGZtnu3V88ces7s53hhfK5KSASnJZv8Lulpc04cWO3REESroJXg73DFsOmgbU2BhwV0E20bu2IDZb3VKW4Q==}
+ engines: {node: '>=14.0.0'}
+ peerDependencies:
+ rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
+ peerDependenciesMeta:
+ rollup:
+ optional: true
+
'@rollup/rollup-android-arm-eabi@4.46.2':
resolution: {integrity: sha512-Zj3Hl6sN34xJtMv7Anwb5Gu01yujyE/cLBDB2gnHTAHaWS1Z38L7kuSG+oAh0giZMqG060f/YBStXtMH6FvPMA==}
cpu: [arm]
@@ -1496,6 +1948,126 @@ packages:
cpu: [x64]
os: [win32]
+ '@sentry-internal/browser-utils@10.35.0':
+ resolution: {integrity: sha512-YjVbyqpJu6E6U/BCdOgIUuUQPUDZ7XdFiBYXtGy59xqQB1qSqNfei163hkfnXxIN90csDubxWNrnit+W5Wo/uQ==}
+ engines: {node: '>=18'}
+
+ '@sentry-internal/feedback@10.35.0':
+ resolution: {integrity: sha512-h/rtGcgvGtZIY9njxnzHHMzMwFYAYG/UwDaNtpf8jN63JD6cTQDQ8wNWp0arD9gmUr96YjER55BNRRF8oSg6Fw==}
+ engines: {node: '>=18'}
+
+ '@sentry-internal/replay-canvas@10.35.0':
+ resolution: {integrity: sha512-efaz8ETDLd0rSpoqX4m8fMnq7abzUJAdqeChz9Jdq6OgvHeBgM6tTfqWSes6sFnSCvFUVkdFngZQfgmBxWGuEA==}
+ engines: {node: '>=18'}
+
+ '@sentry-internal/replay@10.35.0':
+ resolution: {integrity: sha512-9hGP3lD+7o/4ovGTdwv3T9K2t9LxSlR/CAcRQeFApW2c0AGsjTdcglOxsgxYei4YmaISx0CBJ/YqJfQVYxaxWw==}
+ engines: {node: '>=18'}
+
+ '@sentry/babel-plugin-component-annotate@4.7.0':
+ resolution: {integrity: sha512-MkyajDiO17/GaHHFgOmh05ZtOwF5hmm9KRjVgn9PXHIdpz+TFM5mkp1dABmR6Y75TyNU98Z1aOwPOgyaR5etJw==}
+ engines: {node: '>= 14'}
+
+ '@sentry/browser@10.35.0':
+ resolution: {integrity: sha512-3wCdmKOTqg6Fvmb9HLHzCVIpSSYCPhXFQ95VaYsb1rESIgL7BMS9nyqhecPcPR3oJppU2a/TqZk4YH3nFrPXmA==}
+ engines: {node: '>=18'}
+
+ '@sentry/bundler-plugin-core@4.7.0':
+ resolution: {integrity: sha512-gFdEtiup/7qYhN3vp1v2f0WL9AG9OorWLtIpfSBYbWjtzklVNg1sizvNyZ8nEiwtnb25LzvvCUbOP1SyP6IodQ==}
+ engines: {node: '>= 14'}
+
+ '@sentry/cli-darwin@2.58.4':
+ resolution: {integrity: sha512-kbTD+P4X8O+nsNwPxCywtj3q22ecyRHWff98rdcmtRrvwz8CKi/T4Jxn/fnn2i4VEchy08OWBuZAqaA5Kh2hRQ==}
+ engines: {node: '>=10'}
+ os: [darwin]
+
+ '@sentry/cli-linux-arm64@2.58.4':
+ resolution: {integrity: sha512-0g0KwsOozkLtzN8/0+oMZoOuQ0o7W6O+hx+ydVU1bktaMGKEJLMAWxOQNjsh1TcBbNIXVOKM/I8l0ROhaAb8Ig==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-linux-arm@2.58.4':
+ resolution: {integrity: sha512-rdQ8beTwnN48hv7iV7e7ZKucPec5NJkRdrrycMJMZlzGBPi56LqnclgsHySJ6Kfq506A2MNuQnKGaf/sBC9REA==}
+ engines: {node: '>=10'}
+ cpu: [arm]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-linux-i686@2.58.4':
+ resolution: {integrity: sha512-NseoIQAFtkziHyjZNPTu1Gm1opeQHt7Wm1LbLrGWVIRvUOzlslO9/8i6wETUZ6TjlQxBVRgd3Q0lRBG2A8rFYA==}
+ engines: {node: '>=10'}
+ cpu: [x86, ia32]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-linux-x64@2.58.4':
+ resolution: {integrity: sha512-d3Arz+OO/wJYTqCYlSN3Ktm+W8rynQ/IMtSZLK8nu0ryh5mJOh+9XlXY6oDXw4YlsM8qCRrNquR8iEI1Y/IH+Q==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [linux, freebsd, android]
+
+ '@sentry/cli-win32-arm64@2.58.4':
+ resolution: {integrity: sha512-bqYrF43+jXdDBh0f8HIJU3tbvlOFtGyRjHB8AoRuMQv9TEDUfENZyCelhdjA+KwDKYl48R1Yasb4EHNzsoO83w==}
+ engines: {node: '>=10'}
+ cpu: [arm64]
+ os: [win32]
+
+ '@sentry/cli-win32-i686@2.58.4':
+ resolution: {integrity: sha512-3triFD6jyvhVcXOmGyttf+deKZcC1tURdhnmDUIBkiDPJKGT/N5xa4qAtHJlAB/h8L9jgYih9bvJnvvFVM7yug==}
+ engines: {node: '>=10'}
+ cpu: [x86, ia32]
+ os: [win32]
+
+ '@sentry/cli-win32-x64@2.58.4':
+ resolution: {integrity: sha512-cSzN4PjM1RsCZ4pxMjI0VI7yNCkxiJ5jmWncyiwHXGiXrV1eXYdQ3n1LhUYLZ91CafyprR0OhDcE+RVZ26Qb5w==}
+ engines: {node: '>=10'}
+ cpu: [x64]
+ os: [win32]
+
+ '@sentry/cli@2.58.4':
+ resolution: {integrity: sha512-ArDrpuS8JtDYEvwGleVE+FgR+qHaOp77IgdGSacz6SZy6Lv90uX0Nu4UrHCQJz8/xwIcNxSqnN22lq0dH4IqTg==}
+ engines: {node: '>= 10'}
+ hasBin: true
+
+ '@sentry/core@10.35.0':
+ resolution: {integrity: sha512-lEK1WFqt6oHtMq5dDLVE/FDzHDGs1PlYT5cZH4aBirYtJVyUiTf0NknKFob4a2zTywczlq7SbLv6Ba8UMU9dYg==}
+ engines: {node: '>=18'}
+
+ '@sentry/node-core@10.35.0':
+ resolution: {integrity: sha512-8DQc13zYJtIWlz7U0MkxGOGMQmNsJxb6ZuojLnitUvGPMyc5GFT/JKOIv0rqHNfmr63n60tplfmD7lKzfXC3mQ==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@opentelemetry/api': ^1.9.0
+ '@opentelemetry/context-async-hooks': ^1.30.1 || ^2.1.0 || ^2.2.0
+ '@opentelemetry/core': ^1.30.1 || ^2.1.0 || ^2.2.0
+ '@opentelemetry/instrumentation': '>=0.57.1 <1'
+ '@opentelemetry/resources': ^1.30.1 || ^2.1.0 || ^2.2.0
+ '@opentelemetry/sdk-trace-base': ^1.30.1 || ^2.1.0 || ^2.2.0
+ '@opentelemetry/semantic-conventions': ^1.37.0
+
+ '@sentry/node@10.35.0':
+ resolution: {integrity: sha512-r6lEOEQo28grF4DtoD4H6IeK5tb90IZBN68osbIfA7QGphpgoKd54YBA5AEC5f3OXBVlbcK6dQ95bol5b98qhg==}
+ engines: {node: '>=18'}
+
+ '@sentry/opentelemetry@10.35.0':
+ resolution: {integrity: sha512-6RolzEXh9o9gorhyYZ+y0IbExdZKWb0N7DY+ltOTt9SxyQ02evUgxDqLi1pOW2pvXahEghjrGPAKVBv7uccLNw==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ '@opentelemetry/api': ^1.9.0
+ '@opentelemetry/context-async-hooks': ^1.30.1 || ^2.1.0 || ^2.2.0
+ '@opentelemetry/core': ^1.30.1 || ^2.1.0 || ^2.2.0
+ '@opentelemetry/sdk-trace-base': ^1.30.1 || ^2.1.0 || ^2.2.0
+ '@opentelemetry/semantic-conventions': ^1.37.0
+
+ '@sentry/react@10.35.0':
+ resolution: {integrity: sha512-RJsJVZRVe646euf1HLlhbjeAHn2ABd54Y7Zpy4XUJaL4FdKqaaFmqeHKi6IxXFf6IE35onk/kn8CfR7xWBhe2g==}
+ engines: {node: '>=18'}
+ peerDependencies:
+ react: ^16.14.0 || 17.x || 18.x || 19.x
+
+ '@sentry/vite-plugin@4.7.0':
+ resolution: {integrity: sha512-eQXDghOQLsYwnHutJo8TCzhG4gp0KLNq3h96iqFMhsbjnNnfYeCX1lIw1pJEh/az3cDwSyPI/KGkvf8hr0dZmQ==}
+ engines: {node: '>= 14'}
+
'@simple-libs/child-process-utils@1.0.1':
resolution: {integrity: sha512-3nWd8irxvDI6v856wpPCHZ+08iQR0oHTZfzAZmnbsLzf+Sf1odraP6uKOHDZToXq3RPRV/LbqGVlSCogm9cJjg==}
engines: {node: '>=18'}
@@ -1540,6 +2112,9 @@ packages:
'@types/react-dom':
optional: true
+ '@tybys/wasm-util@0.10.1':
+ resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==}
+
'@types/aria-query@5.0.4':
resolution: {integrity: sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==}
@@ -1558,12 +2133,18 @@ packages:
'@types/chai@5.2.2':
resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==}
+ '@types/connect@3.4.38':
+ resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==}
+
'@types/deep-eql@4.0.2':
resolution: {integrity: sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==}
'@types/estree@1.0.8':
resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==}
+ '@types/mysql@2.15.27':
+ resolution: {integrity: sha512-YfWiV16IY0OeBfBCk8+hXKmdTKrKlwKN1MNKAPBu5JYxLwBEZl7QzeEpGnlZb3VMGJrrGmB84gXiH+ofs/TezA==}
+
'@types/node@22.15.34':
resolution: {integrity: sha512-8Y6E5WUupYy1Dd0II32BsWAx5MWdcnRd8L84Oys3veg1YrYtNtzgO4CFhiBg6MDSjk7Ay36HYOnU7/tuOzIzcw==}
@@ -1576,6 +2157,12 @@ packages:
'@types/parse-json@4.0.2':
resolution: {integrity: sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==}
+ '@types/pg-pool@2.0.6':
+ resolution: {integrity: sha512-TaAUE5rq2VQYxab5Ts7WZhKNmuN78Q6PiFonTDdpbx8a1H0M1vhy3rhiMjl+e2iHmogyMw7jZF4FrE6eJUy5HQ==}
+
+ '@types/pg@8.15.6':
+ resolution: {integrity: sha512-NoaMtzhxOrubeL/7UZuNTrejB4MPAJ0RpxZqXQf2qXuVlTPuG6Y8p4u9dKRaue4yjmC7ZhzVO2/Yyyn25znrPQ==}
+
'@types/react-dom@19.2.3':
resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==}
peerDependencies:
@@ -1587,9 +2174,67 @@ packages:
'@types/stylis@4.2.5':
resolution: {integrity: sha512-1Xve+NMN7FWjY14vLoY5tL3BVEQ/n42YLwaqJIPYhotZ9uBHt87VceMwWQpzmdEt2TNXIorIFG+YeCUUW7RInw==}
+ '@types/tedious@4.0.14':
+ resolution: {integrity: sha512-KHPsfX/FoVbUGbyYvk1q9MMQHLPeRZhRJZdO45Q4YjvFkv4hMNghCWTvy7rdKessBsmtz4euWCWAB6/tVpI1Iw==}
+
'@types/use-sync-external-store@0.0.6':
resolution: {integrity: sha512-zFDAD+tlpf2r4asuHEj0XH6pY6i0g5NeAHPn+15wk3BV6JA69eERFXC1gyGThDkVa1zCyKr5jox1+2LbV/AMLg==}
+ '@universal-middleware/cloudflare@0.4.11':
+ resolution: {integrity: sha512-V25n4ORB69qszifoXK1bwvXrpSNrEOgu1sGFBhnXsp0Lr+I5fRa0bSZKK+Tiz09E+Yiavm9UEM3AqAWjlbxsgg==}
+
+ '@universal-middleware/compress@0.2.35':
+ resolution: {integrity: sha512-uLwwPtGLlK6KCYG5SksLdifOFhx6O10hArtz7PaD2hbqRE+IiWa1zntDCtKIkOHhA8Upz2koIbScyRpY/z/a3w==}
+
+ '@universal-middleware/core@0.4.15':
+ resolution: {integrity: sha512-4nUc79ANoExxldCGz4b2ttyxjopcmO8MH7sbJLCvFKxa9DdbHfsXI9+HAvgbKAYqC8FAFbadsMzqnAeSqis1dw==}
+ peerDependencies:
+ '@cloudflare/workers-types': ^4.20260114.0
+ '@hattip/core': ^0.0.49
+ '@types/express': ^4 || ^5
+ '@webroute/route': ^0.8.0
+ elysia: ^1.4.22
+ fastify: ^5.6.2
+ h3: ^1.15.4
+ hono: ^4.11.4
+ srvx: ^0.8 || ^0.9
+ peerDependenciesMeta:
+ '@cloudflare/workers-types':
+ optional: true
+ '@hattip/core':
+ optional: true
+ '@types/express':
+ optional: true
+ '@webroute/route':
+ optional: true
+ elysia:
+ optional: true
+ fastify:
+ optional: true
+ h3:
+ optional: true
+ hono:
+ optional: true
+ srvx:
+ optional: true
+
+ '@universal-middleware/express@0.4.23':
+ resolution: {integrity: sha512-wFM9HQWIXrK+CJvld95bwkGbb1wA/bKkwBBKI5njPShVCMayFoSDb6FMrqezHqI3hGBcjUs9D17CVIJa6gzdPA==}
+
+ '@universal-middleware/hono@0.4.20':
+ resolution: {integrity: sha512-UYsp/urka7BEilzAn/SlnDNxel5rWKV+hRDqwoPhq3E1bJ91M6YuT5OR4EtTm2Jx4S0fFMr8ITA2F4hWZ/+vgw==}
+
+ '@universal-middleware/sirv@0.1.25':
+ resolution: {integrity: sha512-yjOJE/PmEFfTPYOpwXzZyGnDRZOvDphMrsNLaNkdNVlCBFnTLEGIJP9WnsOKNr65iyqFkMXzXvmyZd65RlN8yg==}
+
+ '@universal-middleware/srvx@0.1.2':
+ resolution: {integrity: sha512-9wae91aI+GD43IJEbf1Wbk/R0H2+zsh1dMbaWb1QDm83wd0yLWO3AiarcUaHDGJDweDPSlKBLOoPkI317EDSVw==}
+
+ '@vercel/nft@0.30.4':
+ resolution: {integrity: sha512-wE6eAGSXScra60N2l6jWvNtVK0m+sh873CpfZW4KI2v8EHuUQp+mSEi4T+IcdPCSEDgCdAS/7bizbhQlkjzrSA==}
+ engines: {node: '>=18'}
+ hasBin: true
+
'@vitejs/plugin-react@5.1.1':
resolution: {integrity: sha512-WQfkSw0QbQ5aJ2CHYw23ZGkqnRwqKHD/KYsMeTkZzPT4Jcf0DcBxBtwMJxnu6E7oxw5+JC6ZAiePgh28uJ1HBA==}
engines: {node: ^20.19.0 || >=22.12.0}
@@ -1842,6 +2487,24 @@ packages:
'@zag-js/utils@0.82.2':
resolution: {integrity: sha512-tN87VEEoo240O2CzQdHvtBVPF8hHqLdpNzDT+obNIQrRj4wbNQ5Ze3Zwrd6/SoBe7ImKgkwbAlgu4k5+v9sDcA==}
+ abbrev@3.0.1:
+ resolution: {integrity: sha512-AO2ac6pjRB3SJmGJo+v5/aK6Omggp6fsLrs6wN9bd35ulu4cCwaAU9+7ZhXjeqHVkaHThLuzH0nZr0YpCDhygg==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+
+ acorn-import-attributes@1.9.5:
+ resolution: {integrity: sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==}
+ peerDependencies:
+ acorn: ^8
+
+ acorn@8.15.0:
+ resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==}
+ engines: {node: '>=0.4.0'}
+ hasBin: true
+
+ agent-base@6.0.2:
+ resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
+ engines: {node: '>= 6.0.0'}
+
agent-base@7.1.3:
resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==}
engines: {node: '>= 14'}
@@ -1872,6 +2535,10 @@ packages:
react: '>=16.9.0'
react-dom: '>=16.9.0'
+ anymatch@3.1.3:
+ resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==}
+ engines: {node: '>= 8'}
+
aria-query@5.3.0:
resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==}
@@ -1885,6 +2552,9 @@ packages:
resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==}
engines: {node: '>=12'}
+ async-sema@3.1.1:
+ resolution: {integrity: sha512-tLRNUXati5MFePdAk8dw7Qt7DpxPB60ofAgn8WRhW6a2rcimZnYBP9oxHiv0OHy+Wz7kPMG+t4LGdt31+4EmGg==}
+
asynckit@0.4.0:
resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
@@ -1895,6 +2565,13 @@ packages:
balanced-match@1.0.2:
resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==}
+ binary-extensions@2.3.0:
+ resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
+ engines: {node: '>=8'}
+
+ bindings@1.5.0:
+ resolution: {integrity: sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==}
+
brace-expansion@2.0.1:
resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==}
@@ -1943,6 +2620,17 @@ packages:
resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==}
engines: {node: '>= 16'}
+ chokidar@3.6.0:
+ resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
+ engines: {node: '>= 8.10.0'}
+
+ chownr@3.0.0:
+ resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==}
+ engines: {node: '>=18'}
+
+ cjs-module-lexer@2.2.0:
+ resolution: {integrity: sha512-4bHTS2YuzUvtoLjdy+98ykbNB5jS0+07EvFNXerqZQJ89F7DI6ET7OQo/HJuW6K0aVsKA9hj9/RVb2kQVOrPDQ==}
+
classnames@2.5.1:
resolution: {integrity: sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow==}
@@ -1970,6 +2658,13 @@ packages:
compute-scroll-into-view@3.1.1:
resolution: {integrity: sha512-VRhuHOLoKYOy4UbilLbUzbYg93XLjv2PncJC50EuTWPA3gaja1UjBsUP/D/9/juV3vQFr6XBEzn9KCAHdUvOHw==}
+ confbox@0.2.2:
+ resolution: {integrity: sha512-1NB+BKqhtNipMsov4xI/NnhCKp9XG9NamYp5PVm9klAT0fsrNPjaFICsCFhNhwZJKNh7zB/3q8qXz0E9oaMNtQ==}
+
+ consola@3.4.2:
+ resolution: {integrity: sha512-5IKcdX0nnYavi6G7TtOhwkYzyjfJlatbjMjuLSfE2kYT5pMDOilZ4OvMhi637CcDICTmz3wARPoyhqyX1Y+XvA==}
+ engines: {node: ^14.18.0 || >=16.10.0}
+
conventional-changelog-angular@8.0.0:
resolution: {integrity: sha512-CLf+zr6St0wIxos4bmaKHRXWAcsCXrJU6F4VdNDrGRK3B8LDLKoX3zuMV5GhtbGkVR/LohZ6MT6im43vZLSjmA==}
engines: {node: '>=18'}
@@ -2066,6 +2761,10 @@ packages:
resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==}
engines: {node: '>=6'}
+ detect-libc@2.1.2:
+ resolution: {integrity: sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==}
+ engines: {node: '>=8'}
+
devalue@4.3.3:
resolution: {integrity: sha512-UH8EL6H2ifcY8TbD2QsxwCC/pr5xSwPvv85LrLXVihmHVC3T3YqTCIwnR5ak0yO1KYqlxrPVOA/JVZJYPy2ATg==}
@@ -2076,6 +2775,10 @@ packages:
resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
engines: {node: '>=8'}
+ dotenv@16.6.1:
+ resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==}
+ engines: {node: '>=12'}
+
dunder-proto@1.0.1:
resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
engines: {node: '>= 0.4'}
@@ -2136,6 +2839,9 @@ packages:
resolution: {integrity: sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==}
engines: {node: '>=10'}
+ estree-walker@2.0.2:
+ resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==}
+
estree-walker@3.0.3:
resolution: {integrity: sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==}
@@ -2147,6 +2853,9 @@ packages:
resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==}
engines: {node: '>=12.0.0'}
+ exsolve@1.0.8:
+ resolution: {integrity: sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==}
+
fast-glob@3.3.3:
resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
engines: {node: '>=8.6.0'}
@@ -2169,6 +2878,9 @@ packages:
picomatch:
optional: true
+ file-uri-to-path@1.0.0:
+ resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==}
+
fill-range@7.1.1:
resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==}
engines: {node: '>=8'}
@@ -2176,6 +2888,10 @@ packages:
find-root@1.1.0:
resolution: {integrity: sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==}
+ find-up@5.0.0:
+ resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==}
+ engines: {node: '>=10'}
+
foreground-child@3.3.1:
resolution: {integrity: sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==}
engines: {node: '>=14'}
@@ -2184,6 +2900,9 @@ packages:
resolution: {integrity: sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w==}
engines: {node: '>= 6'}
+ forwarded-parse@2.1.2:
+ resolution: {integrity: sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw==}
+
fsevents@2.3.3:
resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==}
engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0}
@@ -2219,10 +2938,17 @@ packages:
resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
hasBin: true
+ glob@10.5.0:
+ resolution: {integrity: sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==}
+ hasBin: true
+
gopd@1.2.0:
resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
engines: {node: '>= 0.4'}
+ graceful-fs@4.2.11:
+ resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
+
graphql-tag@2.12.6:
resolution: {integrity: sha512-FdSNcu2QQcWnM2VNvSCCDCVS5PpPqpzgFT8+GXzqJuoDd0CBncxCY278u4mhRO7tMgo2JjgJA5aZ+nWSQ/Z+xg==}
engines: {node: '>=10'}
@@ -2253,6 +2979,10 @@ packages:
hoist-non-react-statics@3.3.2:
resolution: {integrity: sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==}
+ hono@4.11.4:
+ resolution: {integrity: sha512-U7tt8JsyrxSRKspfhtLET79pU8K+tInj5QZXs1jSugO1Vq5dFj3kmZsRldo29mTBfcjDRVRXrEZ6LS63Cog9ZA==}
+ engines: {node: '>=16.9.0'}
+
hosted-git-info@8.1.0:
resolution: {integrity: sha512-Rw/B2DNQaPBICNXEm8balFz9a6WpZrkCGpcWFpy7nCj+NyhSdqXipmfvtmWt9xGfp0wZnBxB+iVpLmQMYt47Tw==}
engines: {node: ^18.17.0 || >=20.5.0}
@@ -2265,6 +2995,10 @@ packages:
resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==}
engines: {node: '>= 14'}
+ https-proxy-agent@5.0.1:
+ resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
+ engines: {node: '>= 6'}
+
https-proxy-agent@7.0.6:
resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==}
engines: {node: '>= 14'}
@@ -2284,9 +3018,16 @@ packages:
resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==}
engines: {node: '>=6'}
+ import-in-the-middle@2.0.4:
+ resolution: {integrity: sha512-Al0kMpa0BqfvDnxjxGlab9vdQ0vTDs82TBKrD59X9jReUoPAzSGBb6vGDzMUMFBGyyDF03RpLT4oxGn6BpASzQ==}
+
is-arrayish@0.2.1:
resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==}
+ is-binary-path@2.1.0:
+ resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
+ engines: {node: '>=8'}
+
is-core-module@2.16.1:
resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
engines: {node: '>= 0.4'}
@@ -2362,6 +3103,10 @@ packages:
lines-and-columns@1.2.4:
resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==}
+ locate-path@6.0.0:
+ resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==}
+ engines: {node: '>=10'}
+
loose-envify@1.4.0:
resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
hasBin: true
@@ -2385,6 +3130,13 @@ packages:
magic-string@0.30.17:
resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
+ magic-string@0.30.21:
+ resolution: {integrity: sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==}
+
+ magic-string@0.30.8:
+ resolution: {integrity: sha512-ISQTe55T2ao7XtlAStud6qwYPZjE4GK1S/BeVPus4jrq6JuOnQ00YKQC581RWhR122W7msZV263KzVeLoqidyQ==}
+ engines: {node: '>=12'}
+
math-intrinsics@1.1.0:
resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
engines: {node: '>= 0.4'}
@@ -2427,6 +3179,13 @@ packages:
resolution: {integrity: sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==}
engines: {node: '>=16 || 14 >=14.17'}
+ minizlib@3.1.0:
+ resolution: {integrity: sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==}
+ engines: {node: '>= 18'}
+
+ module-details-from-path@1.0.4:
+ resolution: {integrity: sha512-EGWKgxALGMgzvxYF1UyGTy0HXX/2vHLkw6+NvDKW2jypWbHpjQuj4UMcqQWXHERJhVGKikolT06G3bcKe4fi7w==}
+
mrmime@2.0.1:
resolution: {integrity: sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==}
engines: {node: '>=10'}
@@ -2442,13 +3201,35 @@ packages:
neo-async@2.6.2:
resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==}
+ node-fetch@2.7.0:
+ resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
+ engines: {node: 4.x || >=6.0.0}
+ peerDependencies:
+ encoding: ^0.1.0
+ peerDependenciesMeta:
+ encoding:
+ optional: true
+
+ node-gyp-build@4.8.4:
+ resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==}
+ hasBin: true
+
node-releases@2.0.19:
resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
+ nopt@8.1.0:
+ resolution: {integrity: sha512-ieGu42u/Qsa4TFktmaKEwM6MQH0pOWnaB3htzh0JRtx84+Mebc0cbZYN5bC+6WTZ4+77xrL9Pn5m7CV6VIkV7A==}
+ engines: {node: ^18.17.0 || >=20.5.0}
+ hasBin: true
+
normalize-package-data@7.0.0:
resolution: {integrity: sha512-k6U0gKRIuNCTkwHGZqblCfLfBRh+w1vI6tBo+IeJwq2M8FUiOqhX7GH+GArQGScA7azd1WfyRCvxoXDO3hQDIA==}
engines: {node: ^18.17.0 || >=20.5.0}
+ normalize-path@3.0.0:
+ resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==}
+ engines: {node: '>=0.10.0'}
+
npm-run-path@4.0.1:
resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
engines: {node: '>=8'}
@@ -2467,6 +3248,14 @@ packages:
optimism@0.18.1:
resolution: {integrity: sha512-mLXNwWPa9dgFyDqkNi54sjDyNJ9/fTI6WGBLgnXku1vdKY/jovHfZT5r+aiVeFFLOz+foPNOm5YJ4mqgld2GBQ==}
+ p-limit@3.1.0:
+ resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+ engines: {node: '>=10'}
+
+ p-locate@5.0.0:
+ resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==}
+ engines: {node: '>=10'}
+
package-json-from-dist@1.0.1:
resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==}
@@ -2481,6 +3270,10 @@ packages:
parse5@7.2.1:
resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==}
+ path-exists@4.0.0:
+ resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==}
+ engines: {node: '>=8'}
+
path-key@3.1.1:
resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==}
engines: {node: '>=8'}
@@ -2509,6 +3302,17 @@ packages:
perfect-freehand@1.2.2:
resolution: {integrity: sha512-eh31l019WICQ03pkF3FSzHxB8n07ItqIQ++G5UV8JX0zVOXzgTGCqnRR0jJ2h9U8/2uW4W4mtGJELt9kEV0CFQ==}
+ pg-int8@1.0.1:
+ resolution: {integrity: sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==}
+ engines: {node: '>=4.0.0'}
+
+ pg-protocol@1.11.0:
+ resolution: {integrity: sha512-pfsxk2M9M3BuGgDOfuy37VNRRX3jmKgMjcvAcWqNDpZSf4cUmv8HSOl5ViRQFsfARFn0KuUQTgLxVMbNq5NW3g==}
+
+ pg-types@2.2.0:
+ resolution: {integrity: sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==}
+ engines: {node: '>=4'}
+
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
@@ -2524,6 +3328,9 @@ packages:
resolution: {integrity: sha512-o8mkY4E/+LNUf6LzX96ht6k6CEDi65k9G2rjMtBe9Oo+VPKSvl+0GKHuH/AlG+GA5LPG/i5hrekkxUc3s2HU+Q==}
hasBin: true
+ pkg-types@2.3.0:
+ resolution: {integrity: sha512-SIqCzDRg0s9npO5XQ3tNZioRY1uK06lA41ynBC1YmFTmnY6FjUjVt6s4LoADmwoig1qqD0oK8h1p/8mlMx8Oig==}
+
playwright-chromium@1.57.0:
resolution: {integrity: sha512-GCVVTbmIDrZuBxWYoQ70rehRXMb3Q7ccENe63a+rGTWwypeVAgh/DD5o5QQ898oer5pdIv3vGINUlEkHtOZQEw==}
engines: {node: '>=18'}
@@ -2549,6 +3356,22 @@ packages:
resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==}
engines: {node: ^10 || ^12 || >=14}
+ postgres-array@2.0.0:
+ resolution: {integrity: sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==}
+ engines: {node: '>=4'}
+
+ postgres-bytea@1.0.1:
+ resolution: {integrity: sha512-5+5HqXnsZPE65IJZSMkZtURARZelel2oXUEO8rH83VS/hxH5vv1uHquPg5wZs8yMAfdv971IU+kcPUczi7NVBQ==}
+ engines: {node: '>=0.10.0'}
+
+ postgres-date@1.0.7:
+ resolution: {integrity: sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==}
+ engines: {node: '>=0.10.0'}
+
+ postgres-interval@1.2.0:
+ resolution: {integrity: sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==}
+ engines: {node: '>=0.10.0'}
+
prettier@3.5.3:
resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==}
engines: {node: '>=14'}
@@ -2558,12 +3381,19 @@ packages:
resolution: {integrity: sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==}
engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+ progress@2.0.3:
+ resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==}
+ engines: {node: '>=0.4.0'}
+
prop-types@15.8.1:
resolution: {integrity: sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==}
proxy-compare@3.0.1:
resolution: {integrity: sha512-V9plBAt3qjMlS1+nC8771KNf6oJ12gExvaxnNzN/9yVRLdTv/lc+oJlnSzrdYDAvBfTStPCoiaCOTmTs0adv7Q==}
+ proxy-from-env@1.1.0:
+ resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
+
proxy-memoize@3.0.1:
resolution: {integrity: sha512-VDdG/VYtOgdGkWJx7y0o7p+zArSf2383Isci8C+BP3YXgMYDoPd3cCBjw0JdWb6YBb9sFiOPbAADDVTPJnh+9g==}
@@ -2853,6 +3683,10 @@ packages:
resolution: {integrity: sha512-DGrYcCWK7tvYMnWh79yrPHt+vdx9tY+1gPZa7nJQtO/p8bLTDaHp4dzwEhQB7pZ4Xe3ok4XKuEPrVuc+wlpkmw==}
engines: {node: '>=0.10.0'}
+ readdirp@3.6.0:
+ resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==}
+ engines: {node: '>=8.10.0'}
+
redux-thunk@3.1.0:
resolution: {integrity: sha512-NW2r5T6ksUKXCabzhL9z+h206HQw/NJkcLm1GPImRQ8IzfXwRGqjVhKJGauHirT0DAuyy6hjdnMZaRoAcy0Klw==}
peerDependencies:
@@ -2864,6 +3698,10 @@ packages:
regenerator-runtime@0.14.1:
resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==}
+ regexparam@3.0.0:
+ resolution: {integrity: sha512-RSYAtP31mvYLkAHrOlh25pCNQ5hWnT106VukGaaFfuJrZFkGRX5GhUAdPqpSDXxOhA2c4akmRuplv1mRqnBn6Q==}
+ engines: {node: '>=8'}
+
rehackt@0.1.0:
resolution: {integrity: sha512-7kRDOuLHB87D/JESKxQoRwv4DzbIdwkAGQ7p6QKGdVlY1IZheUnVhlk/4UZlNUVxdAXpyxikE3URsG067ybVzw==}
peerDependencies:
@@ -2875,6 +3713,10 @@ packages:
react:
optional: true
+ require-in-the-middle@8.0.1:
+ resolution: {integrity: sha512-QT7FVMXfWOYFbeRBF6nu+I6tr2Tf3u0q8RIEjNob/heKY/nh7drD/k7eeMFmSQgnTtCzLDcCu/XEnpW2wk4xCQ==}
+ engines: {node: '>=9.3.0 || >=8.10.0 <9.0.0'}
+
requires-port@1.0.0:
resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
@@ -2888,6 +3730,10 @@ packages:
resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==}
engines: {node: '>=4'}
+ resolve-from@5.0.0:
+ resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
+ engines: {node: '>=8'}
+
resolve@1.22.10:
resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==}
engines: {node: '>= 0.4'}
@@ -2901,6 +3747,11 @@ packages:
resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==}
hasBin: true
+ rolldown@1.0.0-beta.51:
+ resolution: {integrity: sha512-ZRLgPlS91l4JztLYEZnmMcd3Umcla1hkXJgiEiR4HloRJBBoeaX8qogTu5Jfu36rRMVLndzqYv0h+M5gJAkUfg==}
+ engines: {node: ^20.19.0 || >=22.12.0}
+ hasBin: true
+
rollup@4.46.2:
resolution: {integrity: sha512-WMmLFI+Boh6xbop+OAGo9cQ3OgX9MIg7xOQjn+pTCwOkk+FNDAeAemXkJ3HzDJrVXleLOFVa1ipuc1AmEx1Dwg==}
engines: {node: '>=18.0.0', npm: '>=8.0.0'}
@@ -2989,9 +3840,17 @@ packages:
spdx-license-ids@3.0.21:
resolution: {integrity: sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==}
+ srvx@0.9.8:
+ resolution: {integrity: sha512-RZaxTKJEE/14HYn8COLuUOJAt0U55N9l1Xf6jj+T0GoA01EUH1Xz5JtSUOI+EHn+AEgPCVn7gk6jHJffrr06fQ==}
+ engines: {node: '>=20.16.0'}
+ hasBin: true
+
stackback@0.0.2:
resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
+ standaloner@0.1.11:
+ resolution: {integrity: sha512-JeLFj5rKTmy3UJj7/oGUVnmFaBIWmJQVP5Hv3s2D6Ju8kVPZYbGxOhMQS45QiEr2V0ngI83d/Vv4Zh62Ojs/rQ==}
+
std-env@3.9.0:
resolution: {integrity: sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw==}
@@ -3061,6 +3920,10 @@ packages:
symbol-tree@3.2.4:
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
+ tar@7.5.4:
+ resolution: {integrity: sha512-AN04xbWGrSTDmVwlI4/GTlIIwMFk/XEv7uL8aa57zuvRy6s4hdBed+lVq2fAZ89XDa7Us3ANXcE3Tvqvja1kTA==}
+ engines: {node: '>=18'}
+
throttle-debounce@5.0.2:
resolution: {integrity: sha512-B71/4oyj61iNH0KeCamLuE2rmKuTO5byTOSVwECM5FA7TiAiAW+UqTKZ9ERueC4qvgSttUhdmq1mXC3kJqGX7A==}
engines: {node: '>=12.22'}
@@ -3087,6 +3950,13 @@ packages:
resolution: {integrity: sha512-t2T/WLB2WRgZ9EpE4jgPJ9w+i66UZfDc8wHh0xrwiRNN+UwH98GIJkTeZqX9rg0i0ptwzqW+uYeIF0T4F8LR7A==}
engines: {node: '>=14.0.0'}
+ tldts-core@7.0.19:
+ resolution: {integrity: sha512-lJX2dEWx0SGH4O6p+7FPwYmJ/bu1JbcGJ8RLaG9b7liIgZ85itUVEPbMtWRVrde/0fnDPEPHW10ZsKW3kVsE9A==}
+
+ tldts@7.0.19:
+ resolution: {integrity: sha512-8PWx8tvC4jDB39BQw1m4x8y5MH1BcQ5xHeL2n7UVFulMPH/3Q0uiamahFJ3lXA0zO2SUyRXuVVbWSDmstlt9YA==}
+ hasBin: true
+
to-regex-range@5.0.1:
resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==}
engines: {node: '>=8.0'}
@@ -3102,10 +3972,21 @@ packages:
resolution: {integrity: sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag==}
engines: {node: '>=6'}
+ tough-cookie@6.0.0:
+ resolution: {integrity: sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==}
+ engines: {node: '>=16'}
+
+ tr46@0.0.3:
+ resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
+
tr46@5.1.0:
resolution: {integrity: sha512-IUWnUK7ADYR5Sl1fZlO1INDUhVhatWl7BtJWsIhwJ0UAK7ilzzIa8uIqOO/aYVWHZPJkKbEL+362wrzoeRF7bw==}
engines: {node: '>=18'}
+ ts-deepmerge@7.0.3:
+ resolution: {integrity: sha512-Du/ZW2RfwV/D4cmA5rXafYjBQVuvu4qGiEEla4EmEHVHgRdx68Gftx7i66jn2bzHPwSVZY36Ae6OuDn9el4ZKA==}
+ engines: {node: '>=14.13.1'}
+
ts-invariant@0.10.3:
resolution: {integrity: sha512-uivwYcQaxAucv1CzRp2n/QdYPo4ILf9VXgH19zEIjFx2EJufV16P0JtJVpYHy89DItG6Kwj2oIUjrcK5au+4tQ==}
engines: {node: '>=8'}
@@ -3140,6 +4021,9 @@ packages:
resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
engines: {node: '>= 4.0.0'}
+ unplugin@1.0.1:
+ resolution: {integrity: sha512-aqrHaVBWW1JVKBHmGo33T5TxeL0qWzfvjWokObHA9bYmN7eNDkwOxmLjhioHl9878qDFMAaT51XNroRyuz7WxA==}
+
update-browserslist-db@1.1.3:
resolution: {integrity: sha512-UxhIZQ+QInVdunkDAaiazvvT/+fXL5Osr0JZlJulepYu6Jd7qJtDZjlur0emRlT71EN3ScPoE7gvsuIKKNavKw==}
hasBin: true
@@ -3160,6 +4044,30 @@ packages:
validate-npm-package-license@3.0.4:
resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==}
+ vike-photon@0.1.24:
+ resolution: {integrity: sha512-zaF/WvNq0JwNvCbQR6eDuf7pgpNwWu5+ZhLJx2Qr1/ndPZrya9PuO2Me7Q9CFvWvig3zvegZ47ny79zyir+sAw==}
+ peerDependencies:
+ '@photonjs/cloudflare': '>=0.0.9'
+ '@photonjs/core': ^0.1.0
+ '@photonjs/runtime': ^0.1.0
+ '@photonjs/vercel': ^0.1.1
+ vike: '>=0.4.244'
+ vite: '>=7.1'
+ peerDependenciesMeta:
+ '@photonjs/cloudflare':
+ optional: true
+ '@photonjs/vercel':
+ optional: true
+ vite:
+ optional: true
+
+ vike-react@0.6.10:
+ resolution: {integrity: sha512-LzV3ZuFovlzkaWiXO9PQeiW56szVo5rM4h8UJeb58dUpAVzcjxvDoM0Q+2vinJisVrml5Wp+DjN0qWQHUu5UQQ==}
+ peerDependencies:
+ react: '>=19'
+ react-dom: '>=19'
+ vike: '>=0.4.182'
+
vike@0.4.253:
resolution: {integrity: sha512-glS8FidhqnK6I/wLs48BYtqsAMXs8QtOB0uxeZ0G93G2a0ZkymuZ5rjbcZHUCBLoUYS/8i0h4d4NhK2mAsUhTA==}
engines: {node: '>=20.19.0'}
@@ -3253,10 +4161,20 @@ packages:
walk-up-path@3.0.1:
resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==}
+ webidl-conversions@3.0.1:
+ resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
+
webidl-conversions@7.0.0:
resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
engines: {node: '>=12'}
+ webpack-sources@3.3.3:
+ resolution: {integrity: sha512-yd1RBzSGanHkitROoPFd6qsrxt+oFhg/129YzheDGqeustzX0vTZJZsSsQjVQC4yzBQ56K55XU8gaNCtIzOnTg==}
+ engines: {node: '>=10.13.0'}
+
+ webpack-virtual-modules@0.5.0:
+ resolution: {integrity: sha512-kyDivFZ7ZM0BVOUteVbDFhlRt7Ah/CSPwJdi8hBpkK7QLumUqdLtVfm/PX/hkcnrvr0i77fO5+TjZ94Pe+C9iw==}
+
whatwg-encoding@3.1.1:
resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==}
engines: {node: '>=18'}
@@ -3269,6 +4187,9 @@ packages:
resolution: {integrity: sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==}
engines: {node: '>=18'}
+ whatwg-url@5.0.0:
+ resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
+
which@2.0.2:
resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==}
engines: {node: '>= 8'}
@@ -3309,19 +4230,34 @@ packages:
xmlchars@2.2.0:
resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==}
+ xtend@4.0.2:
+ resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==}
+ engines: {node: '>=0.4'}
+
yallist@3.1.1:
resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
+ yallist@5.0.0:
+ resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==}
+ engines: {node: '>=18'}
+
yaml@1.10.2:
resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==}
engines: {node: '>= 6'}
+ yocto-queue@0.1.0:
+ resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+ engines: {node: '>=10'}
+
zen-observable-ts@1.2.5:
resolution: {integrity: sha512-QZWQekv6iB72Naeake9hS1KxHlotfRpe+WGNbNx5/ta+R3DNjVO2bswf63gXlWDcs+EMd7XY8HfVQyP1X6T4Zg==}
zen-observable@0.8.15:
resolution: {integrity: sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ==}
+ zod@4.3.5:
+ resolution: {integrity: sha512-k7Nwx6vuWx1IJ9Bjuf4Zt1PEllcwe7cls3VNzm4CQ1/hgtFUK2bRNG3rvnpPUhFjmqJKAKtjV576KnUkHocg/g==}
+
zustand@5.0.8:
resolution: {integrity: sha512-gyPKpIaxY9XcO2vSMrLbiER7QMAMGOQZVRdJ6Zi782jkbzZygq5GI9nG8g+sMgitRtndwaBSl7uiqC49o1SSiw==}
engines: {node: '>=12.20.0'}
@@ -3391,6 +4327,16 @@ snapshots:
resize-observer-polyfill: 1.5.1
throttle-debounce: 5.0.2
+ '@apm-js-collab/code-transformer@0.8.2': {}
+
+ '@apm-js-collab/tracing-hooks@0.3.1':
+ dependencies:
+ '@apm-js-collab/code-transformer': 0.8.2
+ debug: 4.4.1
+ module-details-from-path: 1.0.4
+ transitivePeerDependencies:
+ - supports-color
+
'@apollo/client-react-streaming@0.11.11(@apollo/client@3.13.5(@types/react@19.2.7)(graphql@16.10.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(graphql@16.10.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1)':
dependencies:
'@apollo/client': 3.13.5(@types/react@19.2.7)(graphql@16.10.0)(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
@@ -3737,6 +4683,22 @@ snapshots:
'@csstools/css-tokenizer@3.0.3': {}
+ '@emnapi/core@1.8.1':
+ dependencies:
+ '@emnapi/wasi-threads': 1.1.0
+ tslib: 2.8.1
+ optional: true
+
+ '@emnapi/runtime@1.8.1':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
+ '@emnapi/wasi-threads@1.1.0':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
'@emotion/babel-plugin@11.13.5':
dependencies:
'@babel/helper-module-imports': 7.27.1
@@ -3999,6 +4961,10 @@ snapshots:
wrap-ansi: 8.1.0
wrap-ansi-cjs: wrap-ansi@7.0.0
+ '@isaacs/fs-minipass@4.0.1':
+ dependencies:
+ minipass: 7.1.2
+
'@jridgewell/gen-mapping@0.3.13':
dependencies:
'@jridgewell/sourcemap-codec': 1.5.0
@@ -4013,11 +4979,33 @@ snapshots:
'@jridgewell/sourcemap-codec@1.5.0': {}
+ '@jridgewell/sourcemap-codec@1.5.5': {}
+
'@jridgewell/trace-mapping@0.3.30':
dependencies:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.0
+ '@mapbox/node-pre-gyp@2.0.3':
+ dependencies:
+ consola: 3.4.2
+ detect-libc: 2.1.2
+ https-proxy-agent: 7.0.6
+ node-fetch: 2.7.0
+ nopt: 8.1.0
+ semver: 7.7.1
+ tar: 7.5.4
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+
+ '@napi-rs/wasm-runtime@1.1.1':
+ dependencies:
+ '@emnapi/core': 1.8.1
+ '@emnapi/runtime': 1.8.1
+ '@tybys/wasm-util': 0.10.1
+ optional: true
+
'@nodelib/fs.scandir@2.1.5':
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -4030,13 +5018,339 @@ snapshots:
'@nodelib/fs.scandir': 2.1.5
fastq: 1.19.1
+ '@opentelemetry/api-logs@0.208.0':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+
+ '@opentelemetry/api@1.9.0': {}
+
+ '@opentelemetry/context-async-hooks@2.4.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+
+ '@opentelemetry/core@2.2.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/semantic-conventions': 1.39.0
+
+ '@opentelemetry/core@2.4.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/semantic-conventions': 1.39.0
+
+ '@opentelemetry/instrumentation-amqplib@0.55.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-connect@0.52.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ '@types/connect': 3.4.38
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-dataloader@0.26.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-express@0.57.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-fs@0.28.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-generic-pool@0.52.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-graphql@0.56.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-hapi@0.55.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-http@0.208.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.2.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ forwarded-parse: 2.1.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-ioredis@0.56.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/redis-common': 0.38.2
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-kafkajs@0.18.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-knex@0.53.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-koa@0.57.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-lru-memoizer@0.53.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-mongodb@0.61.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-mongoose@0.55.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-mysql2@0.55.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ '@opentelemetry/sql-common': 0.41.2(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-mysql@0.54.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@types/mysql': 2.15.27
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-pg@0.61.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ '@opentelemetry/sql-common': 0.41.2(@opentelemetry/api@1.9.0)
+ '@types/pg': 8.15.6
+ '@types/pg-pool': 2.0.6
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-redis@0.57.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/redis-common': 0.38.2
+ '@opentelemetry/semantic-conventions': 1.39.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-tedious@0.27.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@types/tedious': 4.0.14
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation-undici@0.19.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/instrumentation@0.208.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/api-logs': 0.208.0
+ import-in-the-middle: 2.0.4
+ require-in-the-middle: 8.0.1
+ transitivePeerDependencies:
+ - supports-color
+
+ '@opentelemetry/redis-common@0.38.2': {}
+
+ '@opentelemetry/resources@2.4.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+
+ '@opentelemetry/sdk-trace-base@2.4.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/resources': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+
+ '@opentelemetry/semantic-conventions@1.39.0': {}
+
+ '@opentelemetry/sql-common@0.41.2(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+
+ '@oxc-project/types@0.98.0': {}
+
'@pandacss/is-valid-prop@0.41.0': {}
+ '@photonjs/core@0.1.21(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))':
+ dependencies:
+ '@brillout/vite-plugin-server-entry': 0.7.17
+ '@universal-middleware/cloudflare': 0.4.11(hono@4.11.4)(srvx@0.9.8)
+ '@universal-middleware/compress': 0.2.35
+ '@universal-middleware/core': 0.4.15(hono@4.11.4)(srvx@0.9.8)
+ '@universal-middleware/express': 0.4.23(hono@4.11.4)(srvx@0.9.8)
+ '@universal-middleware/sirv': 0.1.25
+ estree-walker: 3.0.3
+ ts-deepmerge: 7.0.3
+ zod: 4.3.5
+ optionalDependencies:
+ vite: 7.3.0(@types/node@24.0.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - fastify
+ - h3
+ - hono
+ - srvx
+
+ '@photonjs/hono@0.1.12(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))':
+ dependencies:
+ '@photonjs/core': 0.1.21(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))
+ '@universal-middleware/hono': 0.4.20(hono@4.11.4)(srvx@0.9.8)
+ optionalDependencies:
+ vite: 7.3.0(@types/node@24.0.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - fastify
+ - h3
+ - hono
+ - srvx
+
+ '@photonjs/runtime@0.1.16(hono@4.11.4)(rollup@4.46.2)(vite@7.3.0(@types/node@24.0.8))':
+ dependencies:
+ '@photonjs/core': 0.1.21(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))
+ '@photonjs/srvx': 0.1.12(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))
+ '@universal-middleware/core': 0.4.15(hono@4.11.4)(srvx@0.9.8)
+ '@universal-middleware/sirv': 0.1.25
+ srvx: 0.9.8
+ standaloner: 0.1.11(rollup@4.46.2)
+ optionalDependencies:
+ vite: 7.3.0(@types/node@24.0.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - encoding
+ - fastify
+ - h3
+ - hono
+ - rollup
+ - supports-color
+
+ '@photonjs/srvx@0.1.12(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))':
+ dependencies:
+ '@photonjs/core': 0.1.21(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))
+ '@universal-middleware/srvx': 0.1.2(hono@4.11.4)(srvx@0.9.8)
+ optionalDependencies:
+ vite: 7.3.0(@types/node@24.0.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - fastify
+ - h3
+ - hono
+ - srvx
+
'@pkgjs/parseargs@0.11.0':
optional: true
'@polka/url@1.0.0-next.28': {}
+ '@prisma/instrumentation@6.19.0(@opentelemetry/api@1.9.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ transitivePeerDependencies:
+ - supports-color
+
'@rc-component/async-validator@5.0.4':
dependencies:
'@babel/runtime': 7.26.10
@@ -4108,18 +5422,72 @@ snapshots:
'@reduxjs/toolkit@2.8.2(react-redux@9.2.0(@types/react@19.2.7)(react@19.2.1)(redux@5.0.1))(react@19.2.1)':
dependencies:
- '@standard-schema/spec': 1.0.0
- '@standard-schema/utils': 0.3.0
- immer: 10.1.3
- redux: 5.0.1
- redux-thunk: 3.1.0(redux@5.0.1)
- reselect: 5.1.1
- optionalDependencies:
- react: 19.2.1
- react-redux: 9.2.0(@types/react@19.2.7)(react@19.2.1)(redux@5.0.1)
+ '@standard-schema/spec': 1.0.0
+ '@standard-schema/utils': 0.3.0
+ immer: 10.1.3
+ redux: 5.0.1
+ redux-thunk: 3.1.0(redux@5.0.1)
+ reselect: 5.1.1
+ optionalDependencies:
+ react: 19.2.1
+ react-redux: 9.2.0(@types/react@19.2.7)(react@19.2.1)(redux@5.0.1)
+
+ '@rolldown/binding-android-arm64@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-darwin-arm64@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-darwin-x64@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-freebsd-x64@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-linux-arm64-musl@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-linux-x64-gnu@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-linux-x64-musl@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-openharmony-arm64@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-wasm32-wasi@1.0.0-beta.51':
+ dependencies:
+ '@napi-rs/wasm-runtime': 1.1.1
+ optional: true
+
+ '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.51':
+ optional: true
+
+ '@rolldown/binding-win32-x64-msvc@1.0.0-beta.51':
+ optional: true
'@rolldown/pluginutils@1.0.0-beta.47': {}
+ '@rolldown/pluginutils@1.0.0-beta.51': {}
+
+ '@rollup/pluginutils@5.3.0(rollup@4.46.2)':
+ dependencies:
+ '@types/estree': 1.0.8
+ estree-walker: 2.0.2
+ picomatch: 4.0.3
+ optionalDependencies:
+ rollup: 4.46.2
+
'@rollup/rollup-android-arm-eabi@4.46.2':
optional: true
@@ -4180,6 +5548,173 @@ snapshots:
'@rollup/rollup-win32-x64-msvc@4.46.2':
optional: true
+ '@sentry-internal/browser-utils@10.35.0':
+ dependencies:
+ '@sentry/core': 10.35.0
+
+ '@sentry-internal/feedback@10.35.0':
+ dependencies:
+ '@sentry/core': 10.35.0
+
+ '@sentry-internal/replay-canvas@10.35.0':
+ dependencies:
+ '@sentry-internal/replay': 10.35.0
+ '@sentry/core': 10.35.0
+
+ '@sentry-internal/replay@10.35.0':
+ dependencies:
+ '@sentry-internal/browser-utils': 10.35.0
+ '@sentry/core': 10.35.0
+
+ '@sentry/babel-plugin-component-annotate@4.7.0': {}
+
+ '@sentry/browser@10.35.0':
+ dependencies:
+ '@sentry-internal/browser-utils': 10.35.0
+ '@sentry-internal/feedback': 10.35.0
+ '@sentry-internal/replay': 10.35.0
+ '@sentry-internal/replay-canvas': 10.35.0
+ '@sentry/core': 10.35.0
+
+ '@sentry/bundler-plugin-core@4.7.0':
+ dependencies:
+ '@babel/core': 7.28.5
+ '@sentry/babel-plugin-component-annotate': 4.7.0
+ '@sentry/cli': 2.58.4
+ dotenv: 16.6.1
+ find-up: 5.0.0
+ glob: 10.5.0
+ magic-string: 0.30.8
+ unplugin: 1.0.1
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+
+ '@sentry/cli-darwin@2.58.4':
+ optional: true
+
+ '@sentry/cli-linux-arm64@2.58.4':
+ optional: true
+
+ '@sentry/cli-linux-arm@2.58.4':
+ optional: true
+
+ '@sentry/cli-linux-i686@2.58.4':
+ optional: true
+
+ '@sentry/cli-linux-x64@2.58.4':
+ optional: true
+
+ '@sentry/cli-win32-arm64@2.58.4':
+ optional: true
+
+ '@sentry/cli-win32-i686@2.58.4':
+ optional: true
+
+ '@sentry/cli-win32-x64@2.58.4':
+ optional: true
+
+ '@sentry/cli@2.58.4':
+ dependencies:
+ https-proxy-agent: 5.0.1
+ node-fetch: 2.7.0
+ progress: 2.0.3
+ proxy-from-env: 1.1.0
+ which: 2.0.2
+ optionalDependencies:
+ '@sentry/cli-darwin': 2.58.4
+ '@sentry/cli-linux-arm': 2.58.4
+ '@sentry/cli-linux-arm64': 2.58.4
+ '@sentry/cli-linux-i686': 2.58.4
+ '@sentry/cli-linux-x64': 2.58.4
+ '@sentry/cli-win32-arm64': 2.58.4
+ '@sentry/cli-win32-i686': 2.58.4
+ '@sentry/cli-win32-x64': 2.58.4
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+
+ '@sentry/core@10.35.0': {}
+
+ '@sentry/node-core@10.35.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.208.0(@opentelemetry/api@1.9.0))(@opentelemetry/resources@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.39.0)':
+ dependencies:
+ '@apm-js-collab/tracing-hooks': 0.3.1
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/context-async-hooks': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/resources': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/sdk-trace-base': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ '@sentry/core': 10.35.0
+ '@sentry/opentelemetry': 10.35.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.39.0)
+ import-in-the-middle: 2.0.4
+ transitivePeerDependencies:
+ - supports-color
+
+ '@sentry/node@10.35.0':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/context-async-hooks': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-amqplib': 0.55.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-connect': 0.52.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-dataloader': 0.26.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-express': 0.57.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-fs': 0.28.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-generic-pool': 0.52.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-graphql': 0.56.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-hapi': 0.55.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-http': 0.208.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-ioredis': 0.56.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-kafkajs': 0.18.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-knex': 0.53.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-koa': 0.57.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-lru-memoizer': 0.53.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-mongodb': 0.61.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-mongoose': 0.55.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-mysql': 0.54.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-mysql2': 0.55.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-pg': 0.61.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-redis': 0.57.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-tedious': 0.27.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/instrumentation-undici': 0.19.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/resources': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/sdk-trace-base': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ '@prisma/instrumentation': 6.19.0(@opentelemetry/api@1.9.0)
+ '@sentry/core': 10.35.0
+ '@sentry/node-core': 10.35.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/instrumentation@0.208.0(@opentelemetry/api@1.9.0))(@opentelemetry/resources@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.39.0)
+ '@sentry/opentelemetry': 10.35.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.39.0)
+ import-in-the-middle: 2.0.4
+ minimatch: 9.0.5
+ transitivePeerDependencies:
+ - supports-color
+
+ '@sentry/opentelemetry@10.35.0(@opentelemetry/api@1.9.0)(@opentelemetry/context-async-hooks@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/core@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/sdk-trace-base@2.4.0(@opentelemetry/api@1.9.0))(@opentelemetry/semantic-conventions@1.39.0)':
+ dependencies:
+ '@opentelemetry/api': 1.9.0
+ '@opentelemetry/context-async-hooks': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/core': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/sdk-trace-base': 2.4.0(@opentelemetry/api@1.9.0)
+ '@opentelemetry/semantic-conventions': 1.39.0
+ '@sentry/core': 10.35.0
+
+ '@sentry/react@10.35.0(react@19.2.1)':
+ dependencies:
+ '@sentry/browser': 10.35.0
+ '@sentry/core': 10.35.0
+ react: 19.2.1
+
+ '@sentry/vite-plugin@4.7.0':
+ dependencies:
+ '@sentry/bundler-plugin-core': 4.7.0
+ unplugin: 1.0.1
+ transitivePeerDependencies:
+ - encoding
+ - supports-color
+
'@simple-libs/child-process-utils@1.0.1':
dependencies:
'@simple-libs/stream-utils': 1.1.0
@@ -4225,6 +5760,11 @@ snapshots:
'@types/react': 19.2.7
'@types/react-dom': 19.2.3(@types/react@19.2.7)
+ '@tybys/wasm-util@0.10.1':
+ dependencies:
+ tslib: 2.8.1
+ optional: true
+
'@types/aria-query@5.0.4': {}
'@types/babel__core@7.20.5':
@@ -4252,10 +5792,18 @@ snapshots:
dependencies:
'@types/deep-eql': 4.0.2
+ '@types/connect@3.4.38':
+ dependencies:
+ '@types/node': 24.0.8
+
'@types/deep-eql@4.0.2': {}
'@types/estree@1.0.8': {}
+ '@types/mysql@2.15.27':
+ dependencies:
+ '@types/node': 24.0.8
+
'@types/node@22.15.34':
dependencies:
undici-types: 6.21.0
@@ -4268,6 +5816,16 @@ snapshots:
'@types/parse-json@4.0.2': {}
+ '@types/pg-pool@2.0.6':
+ dependencies:
+ '@types/pg': 8.15.6
+
+ '@types/pg@8.15.6':
+ dependencies:
+ '@types/node': 24.0.8
+ pg-protocol: 1.11.0
+ pg-types: 2.2.0
+
'@types/react-dom@19.2.3(@types/react@19.2.7)':
dependencies:
'@types/react': 19.2.7
@@ -4278,8 +5836,102 @@ snapshots:
'@types/stylis@4.2.5': {}
+ '@types/tedious@4.0.14':
+ dependencies:
+ '@types/node': 24.0.8
+
'@types/use-sync-external-store@0.0.6': {}
+ '@universal-middleware/cloudflare@0.4.11(hono@4.11.4)(srvx@0.9.8)':
+ dependencies:
+ '@universal-middleware/core': 0.4.15(hono@4.11.4)(srvx@0.9.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - fastify
+ - h3
+ - hono
+ - srvx
+
+ '@universal-middleware/compress@0.2.35': {}
+
+ '@universal-middleware/core@0.4.15(hono@4.11.4)(srvx@0.9.8)':
+ dependencies:
+ regexparam: 3.0.0
+ tough-cookie: 6.0.0
+ optionalDependencies:
+ hono: 4.11.4
+ srvx: 0.9.8
+
+ '@universal-middleware/express@0.4.23(hono@4.11.4)(srvx@0.9.8)':
+ dependencies:
+ '@universal-middleware/core': 0.4.15(hono@4.11.4)(srvx@0.9.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - fastify
+ - h3
+ - hono
+ - srvx
+
+ '@universal-middleware/hono@0.4.20(hono@4.11.4)(srvx@0.9.8)':
+ dependencies:
+ '@universal-middleware/core': 0.4.15(hono@4.11.4)(srvx@0.9.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - fastify
+ - h3
+ - hono
+ - srvx
+
+ '@universal-middleware/sirv@0.1.25':
+ dependencies:
+ mrmime: 2.0.1
+ totalist: 3.0.1
+
+ '@universal-middleware/srvx@0.1.2(hono@4.11.4)(srvx@0.9.8)':
+ dependencies:
+ '@universal-middleware/core': 0.4.15(hono@4.11.4)(srvx@0.9.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - fastify
+ - h3
+ - hono
+ - srvx
+
+ '@vercel/nft@0.30.4(rollup@4.46.2)':
+ dependencies:
+ '@mapbox/node-pre-gyp': 2.0.3
+ '@rollup/pluginutils': 5.3.0(rollup@4.46.2)
+ acorn: 8.15.0
+ acorn-import-attributes: 1.9.5(acorn@8.15.0)
+ async-sema: 3.1.1
+ bindings: 1.5.0
+ estree-walker: 2.0.2
+ glob: 10.5.0
+ graceful-fs: 4.2.11
+ node-gyp-build: 4.8.4
+ picomatch: 4.0.3
+ resolve-from: 5.0.0
+ transitivePeerDependencies:
+ - encoding
+ - rollup
+ - supports-color
+
'@vitejs/plugin-react@5.1.1(vite@7.3.0(@types/node@24.0.8))':
dependencies:
'@babel/core': 7.28.5
@@ -4807,6 +6459,20 @@ snapshots:
'@zag-js/utils@0.82.2': {}
+ abbrev@3.0.1: {}
+
+ acorn-import-attributes@1.9.5(acorn@8.15.0):
+ dependencies:
+ acorn: 8.15.0
+
+ acorn@8.15.0: {}
+
+ agent-base@6.0.2:
+ dependencies:
+ debug: 4.4.1
+ transitivePeerDependencies:
+ - supports-color
+
agent-base@7.1.3: {}
ansi-regex@5.0.1: {}
@@ -4879,6 +6545,11 @@ snapshots:
- luxon
- moment
+ anymatch@3.1.3:
+ dependencies:
+ normalize-path: 3.0.0
+ picomatch: 2.3.1
+
aria-query@5.3.0:
dependencies:
dequal: 2.0.3
@@ -4889,6 +6560,8 @@ snapshots:
assertion-error@2.0.1: {}
+ async-sema@3.1.1: {}
+
asynckit@0.4.0: {}
babel-plugin-macros@3.1.0:
@@ -4899,6 +6572,12 @@ snapshots:
balanced-match@1.0.2: {}
+ binary-extensions@2.3.0: {}
+
+ bindings@1.5.0:
+ dependencies:
+ file-uri-to-path: 1.0.0
+
brace-expansion@2.0.1:
dependencies:
balanced-match: 1.0.2
@@ -4953,6 +6632,22 @@ snapshots:
check-error@2.1.1: {}
+ chokidar@3.6.0:
+ dependencies:
+ anymatch: 3.1.3
+ braces: 3.0.3
+ glob-parent: 5.1.2
+ is-binary-path: 2.1.0
+ is-glob: 4.0.3
+ normalize-path: 3.0.0
+ readdirp: 3.6.0
+ optionalDependencies:
+ fsevents: 2.3.3
+
+ chownr@3.0.0: {}
+
+ cjs-module-lexer@2.2.0: {}
+
classnames@2.5.1: {}
client-only@0.0.1: {}
@@ -4976,6 +6671,10 @@ snapshots:
compute-scroll-into-view@3.1.1: {}
+ confbox@0.2.2: {}
+
+ consola@3.4.2: {}
+
conventional-changelog-angular@8.0.0:
dependencies:
compare-func: 2.0.0
@@ -5070,6 +6769,8 @@ snapshots:
dequal@2.0.3: {}
+ detect-libc@2.1.2: {}
+
devalue@4.3.3: {}
dom-accessibility-api@0.5.16: {}
@@ -5078,6 +6779,8 @@ snapshots:
dependencies:
is-obj: 2.0.0
+ dotenv@16.6.1: {}
+
dunder-proto@1.0.1:
dependencies:
call-bind-apply-helpers: 1.0.2
@@ -5175,6 +6878,8 @@ snapshots:
escape-string-regexp@4.0.0: {}
+ estree-walker@2.0.2: {}
+
estree-walker@3.0.3:
dependencies:
'@types/estree': 1.0.8
@@ -5193,6 +6898,8 @@ snapshots:
expect-type@1.2.1: {}
+ exsolve@1.0.8: {}
+
fast-glob@3.3.3:
dependencies:
'@nodelib/fs.stat': 2.0.5
@@ -5215,12 +6922,19 @@ snapshots:
optionalDependencies:
picomatch: 4.0.3
+ file-uri-to-path@1.0.0: {}
+
fill-range@7.1.1:
dependencies:
to-regex-range: 5.0.1
find-root@1.1.0: {}
+ find-up@5.0.0:
+ dependencies:
+ locate-path: 6.0.0
+ path-exists: 4.0.0
+
foreground-child@3.3.1:
dependencies:
cross-spawn: 7.0.6
@@ -5233,6 +6947,8 @@ snapshots:
es-set-tostringtag: 2.1.0
mime-types: 2.1.35
+ forwarded-parse@2.1.2: {}
+
fsevents@2.3.3:
optional: true
@@ -5275,8 +6991,19 @@ snapshots:
package-json-from-dist: 1.0.1
path-scurry: 1.11.1
+ glob@10.5.0:
+ dependencies:
+ foreground-child: 3.3.1
+ jackspeak: 3.4.3
+ minimatch: 9.0.5
+ minipass: 7.1.2
+ package-json-from-dist: 1.0.1
+ path-scurry: 1.11.1
+
gopd@1.2.0: {}
+ graceful-fs@4.2.11: {}
+
graphql-tag@2.12.6(graphql@16.10.0):
dependencies:
graphql: 16.10.0
@@ -5307,6 +7034,8 @@ snapshots:
dependencies:
react-is: 16.13.1
+ hono@4.11.4: {}
+
hosted-git-info@8.1.0:
dependencies:
lru-cache: 10.4.3
@@ -5322,6 +7051,13 @@ snapshots:
transitivePeerDependencies:
- supports-color
+ https-proxy-agent@5.0.1:
+ dependencies:
+ agent-base: 6.0.2
+ debug: 4.4.1
+ transitivePeerDependencies:
+ - supports-color
+
https-proxy-agent@7.0.6:
dependencies:
agent-base: 7.1.3
@@ -5342,8 +7078,19 @@ snapshots:
parent-module: 1.0.1
resolve-from: 4.0.0
+ import-in-the-middle@2.0.4:
+ dependencies:
+ acorn: 8.15.0
+ acorn-import-attributes: 1.9.5(acorn@8.15.0)
+ cjs-module-lexer: 2.2.0
+ module-details-from-path: 1.0.4
+
is-arrayish@0.2.1: {}
+ is-binary-path@2.1.0:
+ dependencies:
+ binary-extensions: 2.3.0
+
is-core-module@2.16.1:
dependencies:
hasown: 2.0.2
@@ -5418,6 +7165,10 @@ snapshots:
lines-and-columns@1.2.4: {}
+ locate-path@6.0.0:
+ dependencies:
+ p-locate: 5.0.0
+
loose-envify@1.4.0:
dependencies:
js-tokens: 4.0.0
@@ -5440,6 +7191,14 @@ snapshots:
dependencies:
'@jridgewell/sourcemap-codec': 1.5.0
+ magic-string@0.30.21:
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.5
+
+ magic-string@0.30.8:
+ dependencies:
+ '@jridgewell/sourcemap-codec': 1.5.0
+
math-intrinsics@1.1.0: {}
meow@13.2.0: {}
@@ -5469,6 +7228,12 @@ snapshots:
minipass@7.1.2: {}
+ minizlib@3.1.0:
+ dependencies:
+ minipass: 7.1.2
+
+ module-details-from-path@1.0.4: {}
+
mrmime@2.0.1: {}
ms@2.1.3: {}
@@ -5477,14 +7242,26 @@ snapshots:
neo-async@2.6.2: {}
+ node-fetch@2.7.0:
+ dependencies:
+ whatwg-url: 5.0.0
+
+ node-gyp-build@4.8.4: {}
+
node-releases@2.0.19: {}
+ nopt@8.1.0:
+ dependencies:
+ abbrev: 3.0.1
+
normalize-package-data@7.0.0:
dependencies:
hosted-git-info: 8.1.0
semver: 7.7.1
validate-npm-package-license: 3.0.4
+ normalize-path@3.0.0: {}
+
npm-run-path@4.0.1:
dependencies:
path-key: 3.1.1
@@ -5504,6 +7281,14 @@ snapshots:
'@wry/trie': 0.5.0
tslib: 2.8.1
+ p-limit@3.1.0:
+ dependencies:
+ yocto-queue: 0.1.0
+
+ p-locate@5.0.0:
+ dependencies:
+ p-limit: 3.1.0
+
package-json-from-dist@1.0.1: {}
parent-module@1.0.1:
@@ -5521,6 +7306,8 @@ snapshots:
dependencies:
entities: 4.5.0
+ path-exists@4.0.0: {}
+
path-key@3.1.1: {}
path-parse@1.0.7: {}
@@ -5540,6 +7327,18 @@ snapshots:
perfect-freehand@1.2.2: {}
+ pg-int8@1.0.1: {}
+
+ pg-protocol@1.11.0: {}
+
+ pg-types@2.2.0:
+ dependencies:
+ pg-int8: 1.0.1
+ postgres-array: 2.0.0
+ postgres-bytea: 1.0.1
+ postgres-date: 1.0.7
+ postgres-interval: 1.2.0
+
picocolors@1.1.1: {}
picomatch@2.3.1: {}
@@ -5550,6 +7349,12 @@ snapshots:
dependencies:
pngjs: 6.0.0
+ pkg-types@2.3.0:
+ dependencies:
+ confbox: 0.2.2
+ exsolve: 1.0.8
+ pathe: 2.0.3
+
playwright-chromium@1.57.0:
dependencies:
playwright-core: 1.57.0
@@ -5572,6 +7377,16 @@ snapshots:
picocolors: 1.1.1
source-map-js: 1.2.1
+ postgres-array@2.0.0: {}
+
+ postgres-bytea@1.0.1: {}
+
+ postgres-date@1.0.7: {}
+
+ postgres-interval@1.2.0:
+ dependencies:
+ xtend: 4.0.2
+
prettier@3.5.3: {}
pretty-format@27.5.1:
@@ -5580,6 +7395,8 @@ snapshots:
ansi-styles: 5.2.0
react-is: 17.0.2
+ progress@2.0.3: {}
+
prop-types@15.8.1:
dependencies:
loose-envify: 1.4.0
@@ -5588,6 +7405,8 @@ snapshots:
proxy-compare@3.0.1: {}
+ proxy-from-env@1.1.0: {}
+
proxy-memoize@3.0.1:
dependencies:
proxy-compare: 3.0.1
@@ -5959,6 +7778,10 @@ snapshots:
react@19.2.1: {}
+ readdirp@3.6.0:
+ dependencies:
+ picomatch: 2.3.1
+
redux-thunk@3.1.0(redux@5.0.1):
dependencies:
redux: 5.0.1
@@ -5967,11 +7790,20 @@ snapshots:
regenerator-runtime@0.14.1: {}
+ regexparam@3.0.0: {}
+
rehackt@0.1.0(@types/react@19.2.7)(react@19.2.1):
optionalDependencies:
'@types/react': 19.2.7
react: 19.2.1
+ require-in-the-middle@8.0.1:
+ dependencies:
+ debug: 4.4.1
+ module-details-from-path: 1.0.4
+ transitivePeerDependencies:
+ - supports-color
+
requires-port@1.0.0: {}
reselect@5.1.1: {}
@@ -5980,6 +7812,8 @@ snapshots:
resolve-from@4.0.0: {}
+ resolve-from@5.0.0: {}
+
resolve@1.22.10:
dependencies:
is-core-module: 2.16.1
@@ -5992,6 +7826,26 @@ snapshots:
dependencies:
glob: 10.4.5
+ rolldown@1.0.0-beta.51:
+ dependencies:
+ '@oxc-project/types': 0.98.0
+ '@rolldown/pluginutils': 1.0.0-beta.51
+ optionalDependencies:
+ '@rolldown/binding-android-arm64': 1.0.0-beta.51
+ '@rolldown/binding-darwin-arm64': 1.0.0-beta.51
+ '@rolldown/binding-darwin-x64': 1.0.0-beta.51
+ '@rolldown/binding-freebsd-x64': 1.0.0-beta.51
+ '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-beta.51
+ '@rolldown/binding-linux-arm64-gnu': 1.0.0-beta.51
+ '@rolldown/binding-linux-arm64-musl': 1.0.0-beta.51
+ '@rolldown/binding-linux-x64-gnu': 1.0.0-beta.51
+ '@rolldown/binding-linux-x64-musl': 1.0.0-beta.51
+ '@rolldown/binding-openharmony-arm64': 1.0.0-beta.51
+ '@rolldown/binding-wasm32-wasi': 1.0.0-beta.51
+ '@rolldown/binding-win32-arm64-msvc': 1.0.0-beta.51
+ '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.51
+ '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.51
+
rollup@4.46.2:
dependencies:
'@types/estree': 1.0.8
@@ -6087,8 +7941,22 @@ snapshots:
spdx-license-ids@3.0.21: {}
+ srvx@0.9.8: {}
+
stackback@0.0.2: {}
+ standaloner@0.1.11(rollup@4.46.2):
+ dependencies:
+ '@vercel/nft': 0.30.4(rollup@4.46.2)
+ acorn: 8.15.0
+ estree-walker: 3.0.3
+ magic-string: 0.30.21
+ rolldown: 1.0.0-beta.51
+ transitivePeerDependencies:
+ - encoding
+ - rollup
+ - supports-color
+
std-env@3.9.0: {}
string-convert@0.2.1: {}
@@ -6150,6 +8018,14 @@ snapshots:
symbol-tree@3.2.4: {}
+ tar@7.5.4:
+ dependencies:
+ '@isaacs/fs-minipass': 4.0.1
+ chownr: 3.0.0
+ minipass: 7.1.2
+ minizlib: 3.1.0
+ yallist: 5.0.0
+
throttle-debounce@5.0.2: {}
tinybench@2.9.0: {}
@@ -6167,6 +8043,12 @@ snapshots:
tinyspy@4.0.3: {}
+ tldts-core@7.0.19: {}
+
+ tldts@7.0.19:
+ dependencies:
+ tldts-core: 7.0.19
+
to-regex-range@5.0.1:
dependencies:
is-number: 7.0.0
@@ -6182,10 +8064,18 @@ snapshots:
universalify: 0.2.0
url-parse: 1.5.10
+ tough-cookie@6.0.0:
+ dependencies:
+ tldts: 7.0.19
+
+ tr46@0.0.3: {}
+
tr46@5.1.0:
dependencies:
punycode: 2.3.1
+ ts-deepmerge@7.0.3: {}
+
ts-invariant@0.10.3:
dependencies:
tslib: 2.8.1
@@ -6207,6 +8097,13 @@ snapshots:
universalify@0.2.0: {}
+ unplugin@1.0.1:
+ dependencies:
+ acorn: 8.15.0
+ chokidar: 3.6.0
+ webpack-sources: 3.3.3
+ webpack-virtual-modules: 0.5.0
+
update-browserslist-db@1.1.3(browserslist@4.24.4):
dependencies:
browserslist: 4.24.4
@@ -6229,7 +8126,42 @@ snapshots:
spdx-correct: 3.2.0
spdx-expression-parse: 3.0.1
- vike@0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8)):
+ vike-photon@0.1.24(@photonjs/core@0.1.21(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8)))(@photonjs/runtime@0.1.16(hono@4.11.4)(rollup@4.46.2)(vite@7.3.0(@types/node@24.0.8)))(hono@4.11.4)(rollup@4.46.2)(srvx@0.9.8)(vike@0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8)))(vite@7.3.0(@types/node@24.0.8)):
+ dependencies:
+ '@brillout/picocolors': 1.0.30
+ '@brillout/vite-plugin-server-entry': 0.7.17
+ '@photonjs/core': 0.1.21(hono@4.11.4)(srvx@0.9.8)(vite@7.3.0(@types/node@24.0.8))
+ '@photonjs/runtime': 0.1.16(hono@4.11.4)(rollup@4.46.2)(vite@7.3.0(@types/node@24.0.8))
+ '@universal-middleware/compress': 0.2.35
+ '@universal-middleware/core': 0.4.15(hono@4.11.4)(srvx@0.9.8)
+ '@universal-middleware/sirv': 0.1.25
+ pkg-types: 2.3.0
+ standaloner: 0.1.11(rollup@4.46.2)
+ vike: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+ optionalDependencies:
+ vite: 7.3.0(@types/node@24.0.8)
+ transitivePeerDependencies:
+ - '@cloudflare/workers-types'
+ - '@hattip/core'
+ - '@types/express'
+ - '@webroute/route'
+ - elysia
+ - encoding
+ - fastify
+ - h3
+ - hono
+ - rollup
+ - srvx
+ - supports-color
+
+ vike-react@0.6.10(react-dom@19.2.1(react@19.2.1))(react@19.2.1)(vike@0.4.253(react-streaming@0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))):
+ dependencies:
+ react: 19.2.1
+ react-dom: 19.2.1(react@19.2.1)
+ react-streaming: 0.4.15(react-dom@19.2.1(react@19.2.1))(react@19.2.1)
+ vike: 0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8))
+
+ vike@0.4.253(react-streaming@0.4.15(react@19.2.1))(vite@7.3.0(@types/node@24.0.8)):
dependencies:
'@babel/core': 7.28.5
'@babel/types': 7.28.5
@@ -6242,7 +8174,7 @@ snapshots:
es-module-lexer: 1.7.0
esbuild: 0.27.2
json5: 2.2.3
- magic-string: 0.30.17
+ magic-string: 0.30.21
picomatch: 4.0.3
semver: 7.7.1
sirv: 3.0.1
@@ -6335,8 +8267,14 @@ snapshots:
walk-up-path@3.0.1: {}
+ webidl-conversions@3.0.1: {}
+
webidl-conversions@7.0.0: {}
+ webpack-sources@3.3.3: {}
+
+ webpack-virtual-modules@0.5.0: {}
+
whatwg-encoding@3.1.1:
dependencies:
iconv-lite: 0.6.3
@@ -6348,6 +8286,11 @@ snapshots:
tr46: 5.1.0
webidl-conversions: 7.0.0
+ whatwg-url@5.0.0:
+ dependencies:
+ tr46: 0.0.3
+ webidl-conversions: 3.0.1
+
which@2.0.2:
dependencies:
isexe: 2.0.0
@@ -6377,16 +8320,24 @@ snapshots:
xmlchars@2.2.0: {}
+ xtend@4.0.2: {}
+
yallist@3.1.1: {}
+ yallist@5.0.0: {}
+
yaml@1.10.2: {}
+ yocto-queue@0.1.0: {}
+
zen-observable-ts@1.2.5:
dependencies:
zen-observable: 0.8.15
zen-observable@0.8.15: {}
+ zod@4.3.5: {}
+
zustand@5.0.8(@types/react@19.2.7)(immer@10.1.3)(react@19.2.1)(use-sync-external-store@1.4.0(react@19.2.1)):
optionalDependencies:
'@types/react': 19.2.7