diff --git a/apps/worker/.gitignore b/apps/worker/.gitignore
new file mode 100644
index 0000000..542cb8e
--- /dev/null
+++ b/apps/worker/.gitignore
@@ -0,0 +1,2 @@
+dist
+*.tsbuildinfo
diff --git a/apps/worker/index.html b/apps/worker/index.html
new file mode 100644
index 0000000..ded4d74
--- /dev/null
+++ b/apps/worker/index.html
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+ SoleLog
+
+
+
+
+
+
diff --git a/apps/worker/package.json b/apps/worker/package.json
new file mode 100644
index 0000000..c616daa
--- /dev/null
+++ b/apps/worker/package.json
@@ -0,0 +1,33 @@
+{
+ "name": "@solelog/worker",
+ "version": "0.0.0",
+ "private": true,
+ "type": "module",
+ "scripts": {
+ "dev": "vite",
+ "build": "tsc -b && vite build",
+ "preview": "vite preview",
+ "typecheck": "tsc -b",
+ "test": "vitest run",
+ "test:watch": "vitest"
+ },
+ "dependencies": {
+ "@solelog/shared": "workspace:*",
+ "@tanstack/react-query": "^5.0.0",
+ "react": "^18.3.1",
+ "react-dom": "^18.3.1",
+ "react-router-dom": "^6.26.0"
+ },
+ "devDependencies": {
+ "@testing-library/jest-dom": "^6.4.0",
+ "@testing-library/react": "^16.0.0",
+ "@testing-library/user-event": "^14.5.0",
+ "@types/react": "^18.3.0",
+ "@types/react-dom": "^18.3.0",
+ "@vitejs/plugin-react": "^4.3.0",
+ "jsdom": "^25.0.0",
+ "typescript": "^5.7.2",
+ "vite": "^7.0.0",
+ "vitest": "^3.0.0"
+ }
+}
diff --git a/apps/worker/public/icon-192.png b/apps/worker/public/icon-192.png
new file mode 100644
index 0000000..3ef69c6
Binary files /dev/null and b/apps/worker/public/icon-192.png differ
diff --git a/apps/worker/public/icon-512.png b/apps/worker/public/icon-512.png
new file mode 100644
index 0000000..2fc91ae
Binary files /dev/null and b/apps/worker/public/icon-512.png differ
diff --git a/apps/worker/public/manifest.webmanifest b/apps/worker/public/manifest.webmanifest
new file mode 100644
index 0000000..dc8812a
--- /dev/null
+++ b/apps/worker/public/manifest.webmanifest
@@ -0,0 +1,12 @@
+{
+ "name": "SoleLog",
+ "short_name": "SoleLog",
+ "start_url": "/",
+ "display": "standalone",
+ "background_color": "#ffffff",
+ "theme_color": "#2563EB",
+ "icons": [
+ { "src": "/icon-192.png", "sizes": "192x192", "type": "image/png" },
+ { "src": "/icon-512.png", "sizes": "512x512", "type": "image/png" }
+ ]
+}
diff --git a/apps/worker/src/App.tsx b/apps/worker/src/App.tsx
new file mode 100644
index 0000000..c637d7c
--- /dev/null
+++ b/apps/worker/src/App.tsx
@@ -0,0 +1,3 @@
+export default function App() {
+ return SoleLog
;
+}
diff --git a/apps/worker/src/lib/api.test.ts b/apps/worker/src/lib/api.test.ts
new file mode 100644
index 0000000..396862f
--- /dev/null
+++ b/apps/worker/src/lib/api.test.ts
@@ -0,0 +1,60 @@
+import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
+import { apiFetch, signIn, ApiError } from './api';
+import { getToken, setToken } from './auth-storage';
+
+describe('api client', () => {
+ beforeEach(() => {
+ localStorage.clear();
+ });
+
+ afterEach(() => {
+ vi.restoreAllMocks();
+ });
+
+ it('attaches the bearer token to requests', async () => {
+ const mock = vi
+ .fn()
+ .mockResolvedValue(new Response(JSON.stringify({ ok: true }), { status: 200 }));
+ vi.stubGlobal('fetch', mock);
+ setToken('tok');
+
+ await apiFetch('/api/me');
+
+ expect(mock).toHaveBeenCalledTimes(1);
+ const [url, init] = mock.mock.calls[0];
+ expect(url).toBe('http://localhost:3000/api/me');
+ const headers = new Headers(init.headers);
+ expect(headers.get('Authorization')).toBe('Bearer tok');
+ });
+
+ it('throws ApiError on a non-2xx response', async () => {
+ vi.stubGlobal(
+ 'fetch',
+ vi.fn().mockResolvedValue(new Response(null, { status: 401 })),
+ );
+
+ await expect(apiFetch('/api/me')).rejects.toMatchObject({ status: 401 });
+ await expect(apiFetch('/api/me')).rejects.toBeInstanceOf(ApiError);
+ });
+
+ it('signIn stores the token from the set-auth-token header', async () => {
+ vi.stubGlobal(
+ 'fetch',
+ vi
+ .fn()
+ .mockResolvedValue(
+ new Response(null, { status: 200, headers: { 'set-auth-token': 'xyz' } }),
+ ),
+ );
+
+ await signIn('a@b.c', 'pw');
+
+ expect(getToken()).toBe('xyz');
+ });
+
+ it('signIn throws when the header is missing', async () => {
+ vi.stubGlobal('fetch', vi.fn().mockResolvedValue(new Response(null, { status: 200 })));
+
+ await expect(signIn('a@b.c', 'pw')).rejects.toBeInstanceOf(ApiError);
+ });
+});
diff --git a/apps/worker/src/lib/api.ts b/apps/worker/src/lib/api.ts
new file mode 100644
index 0000000..c708cf2
--- /dev/null
+++ b/apps/worker/src/lib/api.ts
@@ -0,0 +1,47 @@
+import { getToken, setToken } from './auth-storage';
+
+export const API_URL = import.meta.env.VITE_API_URL ?? 'http://localhost:3000';
+
+export class ApiError extends Error {
+ constructor(
+ public status: number,
+ message: string,
+ ) {
+ super(message);
+ this.name = 'ApiError';
+ }
+}
+
+export async function apiFetch(path: string, init: RequestInit = {}): Promise {
+ const token = getToken();
+ const headers = new Headers(init.headers);
+ if (token) headers.set('Authorization', `Bearer ${token}`);
+ if (init.body && !headers.has('Content-Type')) headers.set('Content-Type', 'application/json');
+ const res = await fetch(`${API_URL}${path}`, { ...init, headers });
+ if (!res.ok) throw new ApiError(res.status, `Request failed: ${res.status}`);
+ const text = await res.text();
+ return (text ? JSON.parse(text) : undefined) as T;
+}
+
+// Sign in: POST /api/auth/sign-in/email, capture the bearer token from the response header.
+export async function signIn(email: string, password: string): Promise {
+ const res = await fetch(`${API_URL}/api/auth/sign-in/email`, {
+ method: 'POST',
+ headers: { 'Content-Type': 'application/json' },
+ body: JSON.stringify({ email, password }),
+ });
+ if (!res.ok) throw new ApiError(res.status, 'Inloggen mislukt');
+ const token = res.headers.get('set-auth-token');
+ if (!token) throw new ApiError(500, 'Geen token ontvangen');
+ setToken(token);
+}
+
+// Sign up affordance for testing: POST /api/auth/sign-up/email.
+export async function signUp(email: string, password: string): Promise {
+ const res = await fetch(`${API_URL}/api/auth/sign-up/email`, {
+ method: 'POST',
+ headers: { 'Content-Type': 'application/json' },
+ body: JSON.stringify({ email, password, name: email.split('@')[0] || 'Worker' }),
+ });
+ if (!res.ok) throw new ApiError(res.status, 'Registreren mislukt');
+}
diff --git a/apps/worker/src/lib/auth-storage.test.ts b/apps/worker/src/lib/auth-storage.test.ts
new file mode 100644
index 0000000..370a6bf
--- /dev/null
+++ b/apps/worker/src/lib/auth-storage.test.ts
@@ -0,0 +1,15 @@
+import { describe, it, expect, beforeEach } from 'vitest';
+import { getToken, setToken, clearToken } from './auth-storage';
+
+describe('auth-storage', () => {
+ beforeEach(() => {
+ localStorage.clear();
+ });
+
+ it('stores, reads, and clears the token', () => {
+ setToken('abc');
+ expect(getToken()).toBe('abc');
+ clearToken();
+ expect(getToken()).toBeNull();
+ });
+});
diff --git a/apps/worker/src/lib/auth-storage.ts b/apps/worker/src/lib/auth-storage.ts
new file mode 100644
index 0000000..71c7cc1
--- /dev/null
+++ b/apps/worker/src/lib/auth-storage.ts
@@ -0,0 +1,13 @@
+const TOKEN_KEY = 'solelog.token';
+
+export function getToken(): string | null {
+ return localStorage.getItem(TOKEN_KEY);
+}
+
+export function setToken(token: string): void {
+ localStorage.setItem(TOKEN_KEY, token);
+}
+
+export function clearToken(): void {
+ localStorage.removeItem(TOKEN_KEY);
+}
diff --git a/apps/worker/src/main.tsx b/apps/worker/src/main.tsx
new file mode 100644
index 0000000..3381901
--- /dev/null
+++ b/apps/worker/src/main.tsx
@@ -0,0 +1,15 @@
+import React from 'react';
+import { createRoot } from 'react-dom/client';
+import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
+import App from './App';
+import './styles.css';
+
+const queryClient = new QueryClient();
+
+createRoot(document.getElementById('root')!).render(
+
+
+
+
+ ,
+);
diff --git a/apps/worker/src/styles.css b/apps/worker/src/styles.css
new file mode 100644
index 0000000..3b34302
--- /dev/null
+++ b/apps/worker/src/styles.css
@@ -0,0 +1,24 @@
+:root {
+ --primary: #2563eb;
+ --primary-light: #eff6ff;
+ --text: #111827;
+ --text-muted: #6b7280;
+ --border: #e5e7eb;
+ --danger: #dc2626;
+ --amber: #d97706;
+}
+
+* {
+ box-sizing: border-box;
+}
+
+body {
+ margin: 0;
+ font-family:
+ 'Inter',
+ system-ui,
+ -apple-system,
+ sans-serif;
+ color: var(--text);
+ background: #ffffff;
+}
diff --git a/apps/worker/src/test/setup.ts b/apps/worker/src/test/setup.ts
new file mode 100644
index 0000000..7b0828b
--- /dev/null
+++ b/apps/worker/src/test/setup.ts
@@ -0,0 +1 @@
+import '@testing-library/jest-dom';
diff --git a/apps/worker/src/vite-env.d.ts b/apps/worker/src/vite-env.d.ts
new file mode 100644
index 0000000..c57d674
--- /dev/null
+++ b/apps/worker/src/vite-env.d.ts
@@ -0,0 +1,9 @@
+///
+
+interface ImportMetaEnv {
+ readonly VITE_API_URL?: string;
+}
+
+interface ImportMeta {
+ readonly env: ImportMetaEnv;
+}
diff --git a/apps/worker/tsconfig.app.json b/apps/worker/tsconfig.app.json
new file mode 100644
index 0000000..8e71c4c
--- /dev/null
+++ b/apps/worker/tsconfig.app.json
@@ -0,0 +1,17 @@
+{
+ "compilerOptions": {
+ "composite": true,
+ "target": "ES2020",
+ "lib": ["ES2020", "DOM", "DOM.Iterable"],
+ "module": "ESNext",
+ "moduleResolution": "Bundler",
+ "jsx": "react-jsx",
+ "strict": true,
+ "noEmit": true,
+ "esModuleInterop": true,
+ "resolveJsonModule": true,
+ "skipLibCheck": true,
+ "types": ["vitest/globals", "@testing-library/jest-dom"]
+ },
+ "include": ["src"]
+}
diff --git a/apps/worker/tsconfig.json b/apps/worker/tsconfig.json
new file mode 100644
index 0000000..d32ff68
--- /dev/null
+++ b/apps/worker/tsconfig.json
@@ -0,0 +1,4 @@
+{
+ "files": [],
+ "references": [{ "path": "./tsconfig.app.json" }, { "path": "./tsconfig.node.json" }]
+}
diff --git a/apps/worker/tsconfig.node.json b/apps/worker/tsconfig.node.json
new file mode 100644
index 0000000..056de49
--- /dev/null
+++ b/apps/worker/tsconfig.node.json
@@ -0,0 +1,12 @@
+{
+ "compilerOptions": {
+ "composite": true,
+ "noEmit": true,
+ "module": "ESNext",
+ "moduleResolution": "Bundler",
+ "target": "ES2022",
+ "skipLibCheck": true,
+ "types": ["node"]
+ },
+ "include": ["vite.config.ts", "vitest.config.ts"]
+}
diff --git a/apps/worker/vite.config.ts b/apps/worker/vite.config.ts
new file mode 100644
index 0000000..56c465e
--- /dev/null
+++ b/apps/worker/vite.config.ts
@@ -0,0 +1,7 @@
+import { defineConfig } from 'vite';
+import react from '@vitejs/plugin-react';
+
+export default defineConfig({
+ plugins: [react()],
+ server: { host: true, port: 5173 }, // host:true → reachable from a phone on the LAN
+});
diff --git a/apps/worker/vitest.config.ts b/apps/worker/vitest.config.ts
new file mode 100644
index 0000000..8594b6a
--- /dev/null
+++ b/apps/worker/vitest.config.ts
@@ -0,0 +1,7 @@
+import { defineConfig } from 'vitest/config';
+import react from '@vitejs/plugin-react';
+
+export default defineConfig({
+ plugins: [react()],
+ test: { environment: 'jsdom', globals: true, setupFiles: ['./src/test/setup.ts'] },
+});
diff --git a/package.json b/package.json
index 8983d23..6f8aa4e 100644
--- a/package.json
+++ b/package.json
@@ -7,5 +7,8 @@
"oxfmt": "^0.35.0",
"oxlint": "^1.50.0"
},
+ "resolutions": {
+ "vite": "7.3.5"
+ },
"packageManager": "yarn@4.12.0"
}
diff --git a/yarn.lock b/yarn.lock
index 6cee8aa..c097f39 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -5,6 +5,237 @@ __metadata:
version: 8
cacheKey: 10c0
+"@adobe/css-tools@npm:^4.4.0":
+ version: 4.5.0
+ resolution: "@adobe/css-tools@npm:4.5.0"
+ checksum: 10c0/fc969e1117098eb4cccdb73beb2508daa0e52760af1183d6288bafea59204943490ab3ede28593032ffb8929c0cee270b2a53254fe61139ab00604ea8fc33cea
+ languageName: node
+ linkType: hard
+
+"@asamuzakjp/css-color@npm:^3.2.0":
+ version: 3.2.0
+ resolution: "@asamuzakjp/css-color@npm:3.2.0"
+ dependencies:
+ "@csstools/css-calc": "npm:^2.1.3"
+ "@csstools/css-color-parser": "npm:^3.0.9"
+ "@csstools/css-parser-algorithms": "npm:^3.0.4"
+ "@csstools/css-tokenizer": "npm:^3.0.3"
+ lru-cache: "npm:^10.4.3"
+ checksum: 10c0/a4bf1c831751b1fae46b437e37e8a38c0b5bd58d23230157ae210bd1e905fe509b89b7c243e63d1522d852668a6292ed730a160e21342772b4e5b7b8ea14c092
+ languageName: node
+ linkType: hard
+
+"@babel/code-frame@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/code-frame@npm:7.29.7"
+ dependencies:
+ "@babel/helper-validator-identifier": "npm:^7.29.7"
+ js-tokens: "npm:^4.0.0"
+ picocolors: "npm:^1.1.1"
+ checksum: 10c0/169fc2080169a40c1760155eaaaf739bcb882df0bec76a83adbda5493645bc17270a3434b8848c494b1933e96fe1d147370001e3cda09a39f43ae30f08ef2069
+ languageName: node
+ linkType: hard
+
+"@babel/compat-data@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/compat-data@npm:7.29.7"
+ checksum: 10c0/47913f05e08a45a1c9df38c02b4b49e391005085b489432647a1abe112e5d9c75e3be8ea5972b7f6da4ec5d1339922ceb9ea02b8a25d4ed1cb8636e5261f344e
+ languageName: node
+ linkType: hard
+
+"@babel/core@npm:^7.28.0":
+ version: 7.29.7
+ resolution: "@babel/core@npm:7.29.7"
+ dependencies:
+ "@babel/code-frame": "npm:^7.29.7"
+ "@babel/generator": "npm:^7.29.7"
+ "@babel/helper-compilation-targets": "npm:^7.29.7"
+ "@babel/helper-module-transforms": "npm:^7.29.7"
+ "@babel/helpers": "npm:^7.29.7"
+ "@babel/parser": "npm:^7.29.7"
+ "@babel/template": "npm:^7.29.7"
+ "@babel/traverse": "npm:^7.29.7"
+ "@babel/types": "npm:^7.29.7"
+ "@jridgewell/remapping": "npm:^2.3.5"
+ convert-source-map: "npm:^2.0.0"
+ debug: "npm:^4.1.0"
+ gensync: "npm:^1.0.0-beta.2"
+ json5: "npm:^2.2.3"
+ semver: "npm:^6.3.1"
+ checksum: 10c0/112fb09c24de7a1de64d1de2c31fe65c4e6af4cb2fb6e6d99ea5373e6fc51e75b88581c0efae4c4c68f119a02a988c7106e95011a41530a2fb8ed793c7eaa07b
+ languageName: node
+ linkType: hard
+
+"@babel/generator@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/generator@npm:7.29.7"
+ dependencies:
+ "@babel/parser": "npm:^7.29.7"
+ "@babel/types": "npm:^7.29.7"
+ "@jridgewell/gen-mapping": "npm:^0.3.12"
+ "@jridgewell/trace-mapping": "npm:^0.3.28"
+ jsesc: "npm:^3.0.2"
+ checksum: 10c0/9bf72b01b5bd0ea5b1288a0e37dbd360bff2f2b1ce73342c0d40fb3db2ec3dc004ada5ffa925c5e12939a416eed59e600d562b8ecd938ce0d27dfd0eb6c6c2b7
+ languageName: node
+ linkType: hard
+
+"@babel/helper-compilation-targets@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-compilation-targets@npm:7.29.7"
+ dependencies:
+ "@babel/compat-data": "npm:^7.29.7"
+ "@babel/helper-validator-option": "npm:^7.29.7"
+ browserslist: "npm:^4.24.0"
+ lru-cache: "npm:^5.1.1"
+ semver: "npm:^6.3.1"
+ checksum: 10c0/4c15fd4c69a0a7047799a28a88460c19cede0a0ee8af994ea169114986f4af48b92c7393a4a3fee0456c11a656eece3448a6ed06354453d6c27cccf17195453b
+ languageName: node
+ linkType: hard
+
+"@babel/helper-globals@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-globals@npm:7.29.7"
+ checksum: 10c0/f38417c40b1129a1b2b519ca961b9040c8827d1444fd74068702286b91b77089431dc76b6b9d5c1496e5da2a4f3ad329c6946e688ba3fa0d1d0b3d2b4f34f36a
+ languageName: node
+ linkType: hard
+
+"@babel/helper-module-imports@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-module-imports@npm:7.29.7"
+ dependencies:
+ "@babel/traverse": "npm:^7.29.7"
+ "@babel/types": "npm:^7.29.7"
+ checksum: 10c0/6adf60d97356027413342a092f818d9678c4f5caff716a33e3284b5ae14e47a9e88059d421dde4ee4894691260039a12602c0e7becadc175602194b40dfa345d
+ languageName: node
+ linkType: hard
+
+"@babel/helper-module-transforms@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-module-transforms@npm:7.29.7"
+ dependencies:
+ "@babel/helper-module-imports": "npm:^7.29.7"
+ "@babel/helper-validator-identifier": "npm:^7.29.7"
+ "@babel/traverse": "npm:^7.29.7"
+ peerDependencies:
+ "@babel/core": ^7.0.0
+ checksum: 10c0/ee5a2172c24a42be696836f4b0d947489c9729d8adf5821885cf77d1ad5333e3c447368e9a71f67df1099570490553dccf9f888ef0a92a48aa63cb086bd8c7e1
+ languageName: node
+ linkType: hard
+
+"@babel/helper-plugin-utils@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-plugin-utils@npm:7.29.7"
+ checksum: 10c0/380477a06133274a2759f9355929cb60a95e8b8fee624a1ae1fa349e1d1645b89daca456f72833f6d1062bffa12ee4271c5bf0cc5a61c0166cdc24c7591e2408
+ languageName: node
+ linkType: hard
+
+"@babel/helper-string-parser@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-string-parser@npm:7.29.7"
+ checksum: 10c0/194bc0f1716e396d5ffde56ad6119745fb9557662c98611590e5e454906783a4ccb21ce93056b8eb69a4909044834e45d96e50ac695bbe9e3221648fe033c06c
+ languageName: node
+ linkType: hard
+
+"@babel/helper-validator-identifier@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-validator-identifier@npm:7.29.7"
+ checksum: 10c0/4795354e7ae0dcafa72de1cd04ec51252dc1498517170beaf019e03effc5b7bf13c6b21a3949a77e07b8125be7f106ed1131350d8ebd4566ae874094a726d62b
+ languageName: node
+ linkType: hard
+
+"@babel/helper-validator-option@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helper-validator-option@npm:7.29.7"
+ checksum: 10c0/d2a06c6d0ac40ba4a2f219fc2cab249c7a94bacdb2686273b7f9598571c908809b48468ff588915a346e6cc7296f60b581023d1d498b747fed06f779d335c2cc
+ languageName: node
+ linkType: hard
+
+"@babel/helpers@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/helpers@npm:7.29.7"
+ dependencies:
+ "@babel/template": "npm:^7.29.7"
+ "@babel/types": "npm:^7.29.7"
+ checksum: 10c0/218e8d10953647c9f44775f5a022b227a182674853b5ea8631889deb7e1a3e4bc870388aaecf59bb8bd92a87f9a96220ed3f70a35bffec6bcf9169ecb67891ac
+ languageName: node
+ linkType: hard
+
+"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/parser@npm:7.29.7"
+ dependencies:
+ "@babel/types": "npm:^7.29.7"
+ bin:
+ parser: ./bin/babel-parser.js
+ checksum: 10c0/65133038f80b54a714d6027cb77cee3f9a6b5c4c6842ce674301e13947cbcbfa8055e63acaf1b84c085d34226a14425b2c2b97b829e0e226d2e8f1299942a51d
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-jsx-self@npm:^7.27.1":
+ version: 7.29.7
+ resolution: "@babel/plugin-transform-react-jsx-self@npm:7.29.7"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.29.7"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/288995f0fd0d61ab740a315fb56c8255eb87dd4a4ac2ac7d0fdd4ce173c3878200141e80da2db0e598c7b2a71e74e604afdbb4c8e14ae6e0527ce0b6294c03da
+ languageName: node
+ linkType: hard
+
+"@babel/plugin-transform-react-jsx-source@npm:^7.27.1":
+ version: 7.29.7
+ resolution: "@babel/plugin-transform-react-jsx-source@npm:7.29.7"
+ dependencies:
+ "@babel/helper-plugin-utils": "npm:^7.29.7"
+ peerDependencies:
+ "@babel/core": ^7.0.0-0
+ checksum: 10c0/a121899631e6d99b9e1b276acf736dbb77948a31f8eeeae67b89c8a4ab0f05e51ba64544baa06c286a2b9944f227244e15aac464e2313d286d0511fe51e27975
+ languageName: node
+ linkType: hard
+
+"@babel/runtime@npm:^7.12.5":
+ version: 7.29.7
+ resolution: "@babel/runtime@npm:7.29.7"
+ checksum: 10c0/ca11572f7146b21e0bde6a9ed4bb6a89eafbee5f0944c7eb54d0d8a2dac962c33638a1d611e14faa71dfbb92b4b5f9236232208568a6b7d5c6f3f39ddb91771e
+ languageName: node
+ linkType: hard
+
+"@babel/template@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/template@npm:7.29.7"
+ dependencies:
+ "@babel/code-frame": "npm:^7.29.7"
+ "@babel/parser": "npm:^7.29.7"
+ "@babel/types": "npm:^7.29.7"
+ checksum: 10c0/8bb7f900dcab0e9e1c5ffbc33ca10e0d26b7b2e2ca804becb73ee771b9c4ed6e2908a4ae4a14c08560febb45d2b6b9a173955e42ad404d05f8b04840a14d9c58
+ languageName: node
+ linkType: hard
+
+"@babel/traverse@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/traverse@npm:7.29.7"
+ dependencies:
+ "@babel/code-frame": "npm:^7.29.7"
+ "@babel/generator": "npm:^7.29.7"
+ "@babel/helper-globals": "npm:^7.29.7"
+ "@babel/parser": "npm:^7.29.7"
+ "@babel/template": "npm:^7.29.7"
+ "@babel/types": "npm:^7.29.7"
+ debug: "npm:^4.3.1"
+ checksum: 10c0/e256a1fbdb956555b76f3c285b1e453f6bedec8b3afb61751d99d933efd11c7d79caf5ddf2493570058a9f7deaa1b48324380d7c1aa1443fd9508becbf56331a
+ languageName: node
+ linkType: hard
+
+"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.28.2, @babel/types@npm:^7.29.7":
+ version: 7.29.7
+ resolution: "@babel/types@npm:7.29.7"
+ dependencies:
+ "@babel/helper-string-parser": "npm:^7.29.7"
+ "@babel/helper-validator-identifier": "npm:^7.29.7"
+ checksum: 10c0/b6623994c69717fa27294f5fa46d59140338e2d86c6c1c13085c84ef7d53086ee357fbf4fe9abe3dd3da75734dc77c4c0df2f90fb29e667558bb3b3fb705e88f
+ languageName: node
+ linkType: hard
+
"@better-auth/core@npm:1.6.18":
version: 1.6.18
resolution: "@better-auth/core@npm:1.6.18"
@@ -126,6 +357,52 @@ __metadata:
languageName: node
linkType: hard
+"@csstools/color-helpers@npm:^5.1.0":
+ version: 5.1.0
+ resolution: "@csstools/color-helpers@npm:5.1.0"
+ checksum: 10c0/b7f99d2e455cf1c9b41a67a5327d5d02888cd5c8802a68b1887dffef537d9d4bc66b3c10c1e62b40bbed638b6c1d60b85a232f904ed7b39809c4029cb36567db
+ languageName: node
+ linkType: hard
+
+"@csstools/css-calc@npm:^2.1.3, @csstools/css-calc@npm:^2.1.4":
+ version: 2.1.4
+ resolution: "@csstools/css-calc@npm:2.1.4"
+ peerDependencies:
+ "@csstools/css-parser-algorithms": ^3.0.5
+ "@csstools/css-tokenizer": ^3.0.4
+ checksum: 10c0/42ce5793e55ec4d772083808a11e9fb2dfe36db3ec168713069a276b4c3882205b3507c4680224c28a5d35fe0bc2d308c77f8f2c39c7c09aad8747708eb8ddd8
+ languageName: node
+ linkType: hard
+
+"@csstools/css-color-parser@npm:^3.0.9":
+ version: 3.1.0
+ resolution: "@csstools/css-color-parser@npm:3.1.0"
+ dependencies:
+ "@csstools/color-helpers": "npm:^5.1.0"
+ "@csstools/css-calc": "npm:^2.1.4"
+ peerDependencies:
+ "@csstools/css-parser-algorithms": ^3.0.5
+ "@csstools/css-tokenizer": ^3.0.4
+ checksum: 10c0/0e0c670ad54ec8ec4d9b07568b80defd83b9482191f5e8ca84ab546b7be6db5d7cc2ba7ac9fae54488b129a4be235d6183d3aab4416fec5e89351f73af4222c5
+ languageName: node
+ linkType: hard
+
+"@csstools/css-parser-algorithms@npm:^3.0.4":
+ version: 3.0.5
+ resolution: "@csstools/css-parser-algorithms@npm:3.0.5"
+ peerDependencies:
+ "@csstools/css-tokenizer": ^3.0.4
+ checksum: 10c0/d9a1c888bd43849ae3437ca39251d5c95d2c8fd6b5ccdb7c45491dfd2c1cbdc3075645e80901d120e4d2c1993db9a5b2d83793b779dbbabcfb132adb142eb7f7
+ languageName: node
+ linkType: hard
+
+"@csstools/css-tokenizer@npm:^3.0.3":
+ version: 3.0.4
+ resolution: "@csstools/css-tokenizer@npm:3.0.4"
+ checksum: 10c0/3b589f8e9942075a642213b389bab75a2d50d05d203727fcdac6827648a5572674caff07907eff3f9a2389d86a4ee47308fafe4f8588f4a77b7167c588d2559f
+ languageName: node
+ linkType: hard
+
"@drizzle-team/brocli@npm:^0.10.2":
version: 0.10.2
resolution: "@drizzle-team/brocli@npm:0.10.2"
@@ -850,13 +1127,50 @@ __metadata:
languageName: node
linkType: hard
-"@jridgewell/sourcemap-codec@npm:^1.5.5":
+"@jridgewell/gen-mapping@npm:^0.3.12, @jridgewell/gen-mapping@npm:^0.3.5":
+ version: 0.3.13
+ resolution: "@jridgewell/gen-mapping@npm:0.3.13"
+ dependencies:
+ "@jridgewell/sourcemap-codec": "npm:^1.5.0"
+ "@jridgewell/trace-mapping": "npm:^0.3.24"
+ checksum: 10c0/9a7d65fb13bd9aec1fbab74cda08496839b7e2ceb31f5ab922b323e94d7c481ce0fc4fd7e12e2610915ed8af51178bdc61e168e92a8c8b8303b030b03489b13b
+ languageName: node
+ linkType: hard
+
+"@jridgewell/remapping@npm:^2.3.5":
+ version: 2.3.5
+ resolution: "@jridgewell/remapping@npm:2.3.5"
+ dependencies:
+ "@jridgewell/gen-mapping": "npm:^0.3.5"
+ "@jridgewell/trace-mapping": "npm:^0.3.24"
+ checksum: 10c0/3de494219ffeb2c5c38711d0d7bb128097edf91893090a2dbc8ee0b55d092bb7347b1fd0f478486c5eab010e855c73927b1666f2107516d472d24a73017d1194
+ languageName: node
+ linkType: hard
+
+"@jridgewell/resolve-uri@npm:^3.1.0":
+ version: 3.1.2
+ resolution: "@jridgewell/resolve-uri@npm:3.1.2"
+ checksum: 10c0/d502e6fb516b35032331406d4e962c21fe77cdf1cbdb49c6142bcbd9e30507094b18972778a6e27cbad756209cfe34b1a27729e6fa08a2eb92b33943f680cf1e
+ languageName: node
+ linkType: hard
+
+"@jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0, @jridgewell/sourcemap-codec@npm:^1.5.5":
version: 1.5.5
resolution: "@jridgewell/sourcemap-codec@npm:1.5.5"
checksum: 10c0/f9e538f302b63c0ebc06eecb1dd9918dd4289ed36147a0ddce35d6ea4d7ebbda243cda7b2213b6a5e1d8087a298d5cf630fb2bd39329cdecb82017023f6081a0
languageName: node
linkType: hard
+"@jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.28":
+ version: 0.3.31
+ resolution: "@jridgewell/trace-mapping@npm:0.3.31"
+ dependencies:
+ "@jridgewell/resolve-uri": "npm:^3.1.0"
+ "@jridgewell/sourcemap-codec": "npm:^1.4.14"
+ checksum: 10c0/4b30ec8cd56c5fd9a661f088230af01e0c1a3888d11ffb6b47639700f71225be21d1f7e168048d6d4f9449207b978a235c07c8f15c07705685d16dc06280e9d9
+ languageName: node
+ linkType: hard
+
"@libsql/client@npm:^0.14.0":
version: 0.14.0
resolution: "@libsql/client@npm:0.14.0"
@@ -1258,6 +1572,20 @@ __metadata:
languageName: node
linkType: hard
+"@remix-run/router@npm:1.23.3":
+ version: 1.23.3
+ resolution: "@remix-run/router@npm:1.23.3"
+ checksum: 10c0/73622465dd9e9a2c5a7ced7d1151ea6e9195a8a979c99b4f70a67093eeff7f339daf03a7c6304709a9c27deb2081a8fff6737663aacb33529c1a12a0a0827a17
+ languageName: node
+ linkType: hard
+
+"@rolldown/pluginutils@npm:1.0.0-beta.27":
+ version: 1.0.0-beta.27
+ resolution: "@rolldown/pluginutils@npm:1.0.0-beta.27"
+ checksum: 10c0/9658f235b345201d4f6bfb1f32da9754ca164f892d1cb68154fe5f53c1df42bd675ecd409836dff46884a7847d6c00bdc38af870f7c81e05bba5c2645eb4ab9c
+ languageName: node
+ linkType: hard
+
"@rollup/rollup-android-arm-eabi@npm:4.61.1":
version: 4.61.1
resolution: "@rollup/rollup-android-arm-eabi@npm:4.61.1"
@@ -1459,6 +1787,28 @@ __metadata:
languageName: unknown
linkType: soft
+"@solelog/worker@workspace:apps/worker":
+ version: 0.0.0-use.local
+ resolution: "@solelog/worker@workspace:apps/worker"
+ dependencies:
+ "@solelog/shared": "workspace:*"
+ "@tanstack/react-query": "npm:^5.0.0"
+ "@testing-library/jest-dom": "npm:^6.4.0"
+ "@testing-library/react": "npm:^16.0.0"
+ "@testing-library/user-event": "npm:^14.5.0"
+ "@types/react": "npm:^18.3.0"
+ "@types/react-dom": "npm:^18.3.0"
+ "@vitejs/plugin-react": "npm:^4.3.0"
+ jsdom: "npm:^25.0.0"
+ react: "npm:^18.3.1"
+ react-dom: "npm:^18.3.1"
+ react-router-dom: "npm:^6.26.0"
+ typescript: "npm:^5.7.2"
+ vite: "npm:^7.0.0"
+ vitest: "npm:^3.0.0"
+ languageName: unknown
+ linkType: soft
+
"@standard-schema/spec@npm:^1.1.0":
version: 1.1.0
resolution: "@standard-schema/spec@npm:1.1.0"
@@ -1466,6 +1816,108 @@ __metadata:
languageName: node
linkType: hard
+"@tanstack/query-core@npm:5.101.0":
+ version: 5.101.0
+ resolution: "@tanstack/query-core@npm:5.101.0"
+ checksum: 10c0/e3aacbb762887214b71d8f959930644594e2321b0cdca8eac098f894cbb75d1e32d45dc34a4b818fb8c68b344398905cf30f17c69cd87283adf73e64457e9320
+ languageName: node
+ linkType: hard
+
+"@tanstack/react-query@npm:^5.0.0":
+ version: 5.101.0
+ resolution: "@tanstack/react-query@npm:5.101.0"
+ dependencies:
+ "@tanstack/query-core": "npm:5.101.0"
+ peerDependencies:
+ react: ^18 || ^19
+ checksum: 10c0/a86add4402c23e26cf4a8c7dade5b0198a7abfb51720b91e83cfe5db8b5ed89acb027b3d5b67882098d0c83cf50099175f8310a41fd5c4b55f6c343779c3dfb6
+ languageName: node
+ linkType: hard
+
+"@testing-library/jest-dom@npm:^6.4.0":
+ version: 6.9.1
+ resolution: "@testing-library/jest-dom@npm:6.9.1"
+ dependencies:
+ "@adobe/css-tools": "npm:^4.4.0"
+ aria-query: "npm:^5.0.0"
+ css.escape: "npm:^1.5.1"
+ dom-accessibility-api: "npm:^0.6.3"
+ picocolors: "npm:^1.1.1"
+ redent: "npm:^3.0.0"
+ checksum: 10c0/4291ebd2f0f38d14cefac142c56c337941775a5807e2a3d6f1a14c2fbd6be76a18e498ed189e95bedc97d9e8cf1738049bc76c85b5bc5e23fae7c9e10f7b3a12
+ languageName: node
+ linkType: hard
+
+"@testing-library/react@npm:^16.0.0":
+ version: 16.3.2
+ resolution: "@testing-library/react@npm:16.3.2"
+ dependencies:
+ "@babel/runtime": "npm:^7.12.5"
+ peerDependencies:
+ "@testing-library/dom": ^10.0.0
+ "@types/react": ^18.0.0 || ^19.0.0
+ "@types/react-dom": ^18.0.0 || ^19.0.0
+ react: ^18.0.0 || ^19.0.0
+ react-dom: ^18.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ "@types/react":
+ optional: true
+ "@types/react-dom":
+ optional: true
+ checksum: 10c0/f9c7f0915e1b5f7b750e6c7d8b51f091b8ae7ea99bacb761d7b8505ba25de9cfcb749a0f779f1650fb268b499dd79165dc7e1ee0b8b4cb63430d3ddc81ffe044
+ languageName: node
+ linkType: hard
+
+"@testing-library/user-event@npm:^14.5.0":
+ version: 14.6.1
+ resolution: "@testing-library/user-event@npm:14.6.1"
+ peerDependencies:
+ "@testing-library/dom": ">=7.21.4"
+ checksum: 10c0/75fea130a52bf320d35d46ed54f3eec77e71a56911b8b69a3fe29497b0b9947b2dc80d30f04054ad4ce7f577856ae3e5397ea7dff0ef14944d3909784c7a93fe
+ languageName: node
+ linkType: hard
+
+"@types/babel__core@npm:^7.20.5":
+ version: 7.20.5
+ resolution: "@types/babel__core@npm:7.20.5"
+ dependencies:
+ "@babel/parser": "npm:^7.20.7"
+ "@babel/types": "npm:^7.20.7"
+ "@types/babel__generator": "npm:*"
+ "@types/babel__template": "npm:*"
+ "@types/babel__traverse": "npm:*"
+ checksum: 10c0/bdee3bb69951e833a4b811b8ee9356b69a61ed5b7a23e1a081ec9249769117fa83aaaf023bb06562a038eb5845155ff663e2d5c75dd95c1d5ccc91db012868ff
+ languageName: node
+ linkType: hard
+
+"@types/babel__generator@npm:*":
+ version: 7.27.0
+ resolution: "@types/babel__generator@npm:7.27.0"
+ dependencies:
+ "@babel/types": "npm:^7.0.0"
+ checksum: 10c0/9f9e959a8792df208a9d048092fda7e1858bddc95c6314857a8211a99e20e6830bdeb572e3587ae8be5429e37f2a96fcf222a9f53ad232f5537764c9e13a2bbd
+ languageName: node
+ linkType: hard
+
+"@types/babel__template@npm:*":
+ version: 7.4.4
+ resolution: "@types/babel__template@npm:7.4.4"
+ dependencies:
+ "@babel/parser": "npm:^7.1.0"
+ "@babel/types": "npm:^7.0.0"
+ checksum: 10c0/cc84f6c6ab1eab1427e90dd2b76ccee65ce940b778a9a67be2c8c39e1994e6f5bbc8efa309f6cea8dc6754994524cd4d2896558df76d92e7a1f46ecffee7112b
+ languageName: node
+ linkType: hard
+
+"@types/babel__traverse@npm:*":
+ version: 7.28.0
+ resolution: "@types/babel__traverse@npm:7.28.0"
+ dependencies:
+ "@babel/types": "npm:^7.28.2"
+ checksum: 10c0/b52d7d4e8fc6a9018fe7361c4062c1c190f5778cf2466817cb9ed19d69fbbb54f9a85ffedeb748ed8062d2cf7d4cc088ee739848f47c57740de1c48cbf0d0994
+ languageName: node
+ linkType: hard
+
"@types/chai@npm:^5.2.2":
version: 5.2.3
resolution: "@types/chai@npm:5.2.3"
@@ -1499,6 +1951,32 @@ __metadata:
languageName: node
linkType: hard
+"@types/prop-types@npm:*":
+ version: 15.7.15
+ resolution: "@types/prop-types@npm:15.7.15"
+ checksum: 10c0/b59aad1ad19bf1733cf524fd4e618196c6c7690f48ee70a327eb450a42aab8e8a063fbe59ca0a5701aebe2d92d582292c0fb845ea57474f6a15f6994b0e260b2
+ languageName: node
+ linkType: hard
+
+"@types/react-dom@npm:^18.3.0":
+ version: 18.3.7
+ resolution: "@types/react-dom@npm:18.3.7"
+ peerDependencies:
+ "@types/react": ^18.0.0
+ checksum: 10c0/8bd309e2c3d1604a28a736a24f96cbadf6c05d5288cfef8883b74f4054c961b6b3a5e997fd5686e492be903c8f3380dba5ec017eff3906b1256529cd2d39603e
+ languageName: node
+ linkType: hard
+
+"@types/react@npm:^18.3.0":
+ version: 18.3.31
+ resolution: "@types/react@npm:18.3.31"
+ dependencies:
+ "@types/prop-types": "npm:*"
+ csstype: "npm:^3.2.2"
+ checksum: 10c0/44180549dd045f536ececd39e39aacdf828e76adc1c4a90b132f453e23cc370c4648d9102ae401172ebd8fd8b1977a901a39e214e53ec77171b27514b588c179
+ languageName: node
+ linkType: hard
+
"@types/ws@npm:^8.5.4":
version: 8.18.1
resolution: "@types/ws@npm:8.18.1"
@@ -1508,6 +1986,22 @@ __metadata:
languageName: node
linkType: hard
+"@vitejs/plugin-react@npm:^4.3.0":
+ version: 4.7.0
+ resolution: "@vitejs/plugin-react@npm:4.7.0"
+ dependencies:
+ "@babel/core": "npm:^7.28.0"
+ "@babel/plugin-transform-react-jsx-self": "npm:^7.27.1"
+ "@babel/plugin-transform-react-jsx-source": "npm:^7.27.1"
+ "@rolldown/pluginutils": "npm:1.0.0-beta.27"
+ "@types/babel__core": "npm:^7.20.5"
+ react-refresh: "npm:^0.17.0"
+ peerDependencies:
+ vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0
+ checksum: 10c0/692f23960972879485d647713663ec299c478222c96567d60285acf7c7dc5c178e71abfe9d2eefddef1eeb01514dacbc2ed68aad84628debf9c7116134734253
+ languageName: node
+ linkType: hard
+
"@vitest/expect@npm:3.2.6":
version: 3.2.6
resolution: "@vitest/expect@npm:3.2.6"
@@ -1598,6 +2092,20 @@ __metadata:
languageName: node
linkType: hard
+"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2":
+ version: 7.1.4
+ resolution: "agent-base@npm:7.1.4"
+ checksum: 10c0/c2c9ab7599692d594b6a161559ada307b7a624fa4c7b03e3afdb5a5e31cd0e53269115b620fcab024c5ac6a6f37fa5eb2e004f076ad30f5f7e6b8b671f7b35fe
+ languageName: node
+ linkType: hard
+
+"aria-query@npm:^5.0.0":
+ version: 5.3.2
+ resolution: "aria-query@npm:5.3.2"
+ checksum: 10c0/003c7e3e2cff5540bf7a7893775fc614de82b0c5dde8ae823d47b7a28a9d4da1f7ed85f340bdb93d5649caa927755f0e31ecc7ab63edfdfc00c8ef07e505e03e
+ languageName: node
+ linkType: hard
+
"assertion-error@npm:^2.0.1":
version: 2.0.1
resolution: "assertion-error@npm:2.0.1"
@@ -1605,6 +2113,36 @@ __metadata:
languageName: node
linkType: hard
+"async-function@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "async-function@npm:1.0.0"
+ checksum: 10c0/669a32c2cb7e45091330c680e92eaeb791bc1d4132d827591e499cd1f776ff5a873e77e5f92d0ce795a8d60f10761dec9ddfe7225a5de680f5d357f67b1aac73
+ languageName: node
+ linkType: hard
+
+"async-generator-function@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "async-generator-function@npm:1.0.0"
+ checksum: 10c0/2c50ef856c543ad500d8d8777d347e3c1ba623b93e99c9263ecc5f965c1b12d2a140e2ab6e43c3d0b85366110696f28114649411cbcd10b452a92a2318394186
+ languageName: node
+ linkType: hard
+
+"asynckit@npm:^0.4.0":
+ version: 0.4.0
+ resolution: "asynckit@npm:0.4.0"
+ checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d
+ languageName: node
+ linkType: hard
+
+"baseline-browser-mapping@npm:^2.10.12":
+ version: 2.10.37
+ resolution: "baseline-browser-mapping@npm:2.10.37"
+ bin:
+ baseline-browser-mapping: dist/cli.cjs
+ checksum: 10c0/ff489d3ffecd9e440ccabc49401b49f693ecae4a0e73ab71c8c24d43c760399eab8d3eebc9a7798255ef9dc9ed26bb987db813ef9d2044f35455428561f9084b
+ languageName: node
+ linkType: hard
+
"better-auth@npm:^1.1.7":
version: 1.6.18
resolution: "better-auth@npm:1.6.18"
@@ -1706,6 +2244,21 @@ __metadata:
languageName: node
linkType: hard
+"browserslist@npm:^4.24.0":
+ version: 4.28.2
+ resolution: "browserslist@npm:4.28.2"
+ dependencies:
+ baseline-browser-mapping: "npm:^2.10.12"
+ caniuse-lite: "npm:^1.0.30001782"
+ electron-to-chromium: "npm:^1.5.328"
+ node-releases: "npm:^2.0.36"
+ update-browserslist-db: "npm:^1.2.3"
+ bin:
+ browserslist: cli.js
+ checksum: 10c0/c0228b6330f785b7fa59d2d360124ec6d9322f96ed9f3ee1f873e33ecc9503a6f0ffc3b71191a28c4ff6e930b753b30043da1c33844a9548f3018d491f09ce60
+ languageName: node
+ linkType: hard
+
"buffer-from@npm:^1.0.0":
version: 1.1.2
resolution: "buffer-from@npm:1.1.2"
@@ -1720,6 +2273,23 @@ __metadata:
languageName: node
linkType: hard
+"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "call-bind-apply-helpers@npm:1.0.2"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ function-bind: "npm:^1.1.2"
+ checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938
+ languageName: node
+ linkType: hard
+
+"caniuse-lite@npm:^1.0.30001782":
+ version: 1.0.30001799
+ resolution: "caniuse-lite@npm:1.0.30001799"
+ checksum: 10c0/f24f9834edc7b60188f368ce44714695c3901bc4acb7f2a977dd9b7b697e39ddc0f9947fad6224a955b789f36a73432cb888d620aa7280d728f582d3bd8927a7
+ languageName: node
+ linkType: hard
+
"chai@npm:^5.2.0":
version: 5.3.3
resolution: "chai@npm:5.3.3"
@@ -1747,6 +2317,46 @@ __metadata:
languageName: node
linkType: hard
+"combined-stream@npm:^1.0.8":
+ version: 1.0.8
+ resolution: "combined-stream@npm:1.0.8"
+ dependencies:
+ delayed-stream: "npm:~1.0.0"
+ checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5
+ languageName: node
+ linkType: hard
+
+"convert-source-map@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "convert-source-map@npm:2.0.0"
+ checksum: 10c0/8f2f7a27a1a011cc6cc88cc4da2d7d0cfa5ee0369508baae3d98c260bb3ac520691464e5bbe4ae7cdf09860c1d69ecc6f70c63c6e7c7f7e3f18ec08484dc7d9b
+ languageName: node
+ linkType: hard
+
+"css.escape@npm:^1.5.1":
+ version: 1.5.1
+ resolution: "css.escape@npm:1.5.1"
+ checksum: 10c0/5e09035e5bf6c2c422b40c6df2eb1529657a17df37fda5d0433d722609527ab98090baf25b13970ca754079a0f3161dd3dfc0e743563ded8cfa0749d861c1525
+ languageName: node
+ linkType: hard
+
+"cssstyle@npm:^4.1.0":
+ version: 4.6.0
+ resolution: "cssstyle@npm:4.6.0"
+ dependencies:
+ "@asamuzakjp/css-color": "npm:^3.2.0"
+ rrweb-cssom: "npm:^0.8.0"
+ checksum: 10c0/71add1b0ffafa1bedbef6855db6189b9523d3320e015a0bf3fbd504760efb9a81e1f1a225228d5fa892ee58e56d06994ca372e7f4e461cda7c4c9985fe075f65
+ languageName: node
+ linkType: hard
+
+"csstype@npm:^3.2.2":
+ version: 3.2.3
+ resolution: "csstype@npm:3.2.3"
+ checksum: 10c0/cd29c51e70fa822f1cecd8641a1445bed7063697469d35633b516e60fe8c1bde04b08f6c5b6022136bb669b64c63d4173af54864510fbb4ee23281801841a3ce
+ languageName: node
+ linkType: hard
+
"data-uri-to-buffer@npm:^4.0.0":
version: 4.0.1
resolution: "data-uri-to-buffer@npm:4.0.1"
@@ -1754,7 +2364,17 @@ __metadata:
languageName: node
linkType: hard
-"debug@npm:^4.3.4, debug@npm:^4.4.1":
+"data-urls@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "data-urls@npm:5.0.0"
+ dependencies:
+ whatwg-mimetype: "npm:^4.0.0"
+ whatwg-url: "npm:^14.0.0"
+ checksum: 10c0/1b894d7d41c861f3a4ed2ae9b1c3f0909d4575ada02e36d3d3bc584bdd84278e20709070c79c3b3bff7ac98598cb191eb3e86a89a79ea4ee1ef360e1694f92ad
+ languageName: node
+ linkType: hard
+
+"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.3.1, debug@npm:^4.3.4, debug@npm:^4.4.1":
version: 4.4.3
resolution: "debug@npm:4.4.3"
dependencies:
@@ -1766,6 +2386,13 @@ __metadata:
languageName: node
linkType: hard
+"decimal.js@npm:^10.4.3":
+ version: 10.6.0
+ resolution: "decimal.js@npm:10.6.0"
+ checksum: 10c0/07d69fbcc54167a340d2d97de95f546f9ff1f69d2b45a02fd7a5292412df3cd9eb7e23065e532a318f5474a2e1bccf8392fdf0443ef467f97f3bf8cb0477e5aa
+ languageName: node
+ linkType: hard
+
"deep-eql@npm:^5.0.1":
version: 5.0.2
resolution: "deep-eql@npm:5.0.2"
@@ -1780,6 +2407,13 @@ __metadata:
languageName: node
linkType: hard
+"delayed-stream@npm:~1.0.0":
+ version: 1.0.0
+ resolution: "delayed-stream@npm:1.0.0"
+ checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19
+ languageName: node
+ linkType: hard
+
"detect-libc@npm:2.0.2":
version: 2.0.2
resolution: "detect-libc@npm:2.0.2"
@@ -1787,6 +2421,13 @@ __metadata:
languageName: node
linkType: hard
+"dom-accessibility-api@npm:^0.6.3":
+ version: 0.6.3
+ resolution: "dom-accessibility-api@npm:0.6.3"
+ checksum: 10c0/10bee5aa514b2a9a37c87cd81268db607a2e933a050074abc2f6fa3da9080ebed206a320cbc123567f2c3087d22292853bdfdceaffdd4334ffe2af9510b29360
+ languageName: node
+ linkType: hard
+
"drizzle-kit@npm:^0.30.1":
version: 0.30.6
resolution: "drizzle-kit@npm:0.30.6"
@@ -1897,6 +2538,31 @@ __metadata:
languageName: node
linkType: hard
+"dunder-proto@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "dunder-proto@npm:1.0.1"
+ dependencies:
+ call-bind-apply-helpers: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ gopd: "npm:^1.2.0"
+ checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031
+ languageName: node
+ linkType: hard
+
+"electron-to-chromium@npm:^1.5.328":
+ version: 1.5.375
+ resolution: "electron-to-chromium@npm:1.5.375"
+ checksum: 10c0/f8cd3d364779589acfffd75c0566b15112aa78421520712dfa88708185b71eaf0de24b76df1f2a70b80aea6b1ade2c8c0b08b17db57f85259ec74c70a8d4475c
+ languageName: node
+ linkType: hard
+
+"entities@npm:^6.0.0":
+ version: 6.0.1
+ resolution: "entities@npm:6.0.1"
+ checksum: 10c0/ed836ddac5acb34341094eb495185d527bd70e8632b6c0d59548cbfa23defdbae70b96f9a405c82904efa421230b5b3fd2283752447d737beffd3f3e6ee74414
+ languageName: node
+ linkType: hard
+
"env-paths@npm:^2.2.0":
version: 2.2.1
resolution: "env-paths@npm:2.2.1"
@@ -1911,6 +2577,20 @@ __metadata:
languageName: node
linkType: hard
+"es-define-property@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "es-define-property@npm:1.0.1"
+ checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c
+ languageName: node
+ linkType: hard
+
+"es-errors@npm:^1.3.0":
+ version: 1.3.0
+ resolution: "es-errors@npm:1.3.0"
+ checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85
+ languageName: node
+ linkType: hard
+
"es-module-lexer@npm:^1.7.0":
version: 1.7.0
resolution: "es-module-lexer@npm:1.7.0"
@@ -1918,6 +2598,27 @@ __metadata:
languageName: node
linkType: hard
+"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1":
+ version: 1.1.2
+ resolution: "es-object-atoms@npm:1.1.2"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ checksum: 10c0/1772861f094f739d6f41b579cfb9a18579daffeb434552a370a5fbef50a32d22227e27b63fdbb757b7ddd429d1b42fe52ccae7966d9302a2ec221b6f1b41bbc4
+ languageName: node
+ linkType: hard
+
+"es-set-tostringtag@npm:^2.1.0":
+ version: 2.1.0
+ resolution: "es-set-tostringtag@npm:2.1.0"
+ dependencies:
+ es-errors: "npm:^1.3.0"
+ get-intrinsic: "npm:^1.2.6"
+ has-tostringtag: "npm:^1.0.2"
+ hasown: "npm:^2.0.2"
+ checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af
+ languageName: node
+ linkType: hard
+
"esbuild-register@npm:^3.5.0":
version: 3.6.0
resolution: "esbuild-register@npm:3.6.0"
@@ -2264,6 +2965,13 @@ __metadata:
languageName: node
linkType: hard
+"escalade@npm:^3.2.0":
+ version: 3.2.0
+ resolution: "escalade@npm:3.2.0"
+ checksum: 10c0/ced4dd3a78e15897ed3be74e635110bbf3b08877b0a41be50dcb325ee0e0b5f65fc2d50e9845194d7c4633f327e2e1c6cce00a71b617c5673df0374201d67f65
+ languageName: node
+ linkType: hard
+
"estree-walker@npm:^3.0.3":
version: 3.0.3
resolution: "estree-walker@npm:3.0.3"
@@ -2309,6 +3017,19 @@ __metadata:
languageName: node
linkType: hard
+"form-data@npm:^4.0.0":
+ version: 4.0.6
+ resolution: "form-data@npm:4.0.6"
+ dependencies:
+ asynckit: "npm:^0.4.0"
+ combined-stream: "npm:^1.0.8"
+ es-set-tostringtag: "npm:^2.1.0"
+ hasown: "npm:^2.0.4"
+ mime-types: "npm:^2.1.35"
+ checksum: 10c0/43947a77bf0ff45c6ceed789778982d47a3f3e720a74b71721174ebf3310a5f1a8be1d6b38a3ee3688e8a18a2c4273073ec0844cd37efda3eaf46d41c9c318ff
+ languageName: node
+ linkType: hard
+
"formdata-polyfill@npm:^4.0.10":
version: 4.0.10
resolution: "formdata-polyfill@npm:4.0.10"
@@ -2337,6 +3058,13 @@ __metadata:
languageName: node
linkType: hard
+"function-bind@npm:^1.1.2":
+ version: 1.1.2
+ resolution: "function-bind@npm:1.1.2"
+ checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5
+ languageName: node
+ linkType: hard
+
"gel@npm:^2.0.0":
version: 2.2.0
resolution: "gel@npm:2.2.0"
@@ -2353,6 +3081,51 @@ __metadata:
languageName: node
linkType: hard
+"generator-function@npm:^2.0.0":
+ version: 2.0.1
+ resolution: "generator-function@npm:2.0.1"
+ checksum: 10c0/8a9f59df0f01cfefafdb3b451b80555e5cf6d76487095db91ac461a0e682e4ff7a9dbce15f4ecec191e53586d59eece01949e05a4b4492879600bbbe8e28d6b8
+ languageName: node
+ linkType: hard
+
+"gensync@npm:^1.0.0-beta.2":
+ version: 1.0.0-beta.2
+ resolution: "gensync@npm:1.0.0-beta.2"
+ checksum: 10c0/782aba6cba65b1bb5af3b095d96249d20edbe8df32dbf4696fd49be2583faf676173bf4809386588828e4dd76a3354fcbeb577bab1c833ccd9fc4577f26103f8
+ languageName: node
+ linkType: hard
+
+"get-intrinsic@npm:^1.2.6":
+ version: 1.3.1
+ resolution: "get-intrinsic@npm:1.3.1"
+ dependencies:
+ async-function: "npm:^1.0.0"
+ async-generator-function: "npm:^1.0.0"
+ call-bind-apply-helpers: "npm:^1.0.2"
+ es-define-property: "npm:^1.0.1"
+ es-errors: "npm:^1.3.0"
+ es-object-atoms: "npm:^1.1.1"
+ function-bind: "npm:^1.1.2"
+ generator-function: "npm:^2.0.0"
+ get-proto: "npm:^1.0.1"
+ gopd: "npm:^1.2.0"
+ has-symbols: "npm:^1.1.0"
+ hasown: "npm:^2.0.2"
+ math-intrinsics: "npm:^1.1.0"
+ checksum: 10c0/9f4ab0cf7efe0fd2c8185f52e6f637e708f3a112610c88869f8f041bb9ecc2ce44bf285dfdbdc6f4f7c277a5b88d8e94a432374d97cca22f3de7fc63795deb5d
+ languageName: node
+ linkType: hard
+
+"get-proto@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "get-proto@npm:1.0.1"
+ dependencies:
+ dunder-proto: "npm:^1.0.1"
+ es-object-atoms: "npm:^1.0.0"
+ checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c
+ languageName: node
+ linkType: hard
+
"get-tsconfig@npm:^4.7.0":
version: 4.14.0
resolution: "get-tsconfig@npm:4.14.0"
@@ -2362,6 +3135,13 @@ __metadata:
languageName: node
linkType: hard
+"gopd@npm:^1.2.0":
+ version: 1.2.0
+ resolution: "gopd@npm:1.2.0"
+ checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead
+ languageName: node
+ linkType: hard
+
"graceful-fs@npm:^4.2.6":
version: 4.2.11
resolution: "graceful-fs@npm:4.2.11"
@@ -2369,6 +3149,31 @@ __metadata:
languageName: node
linkType: hard
+"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "has-symbols@npm:1.1.0"
+ checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e
+ languageName: node
+ linkType: hard
+
+"has-tostringtag@npm:^1.0.2":
+ version: 1.0.2
+ resolution: "has-tostringtag@npm:1.0.2"
+ dependencies:
+ has-symbols: "npm:^1.0.3"
+ checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c
+ languageName: node
+ linkType: hard
+
+"hasown@npm:^2.0.2, hasown@npm:^2.0.4":
+ version: 2.0.4
+ resolution: "hasown@npm:2.0.4"
+ dependencies:
+ function-bind: "npm:^1.1.2"
+ checksum: 10c0/2d8de939e270b70618f8cebb69746620db10617dbb495bc66ddad326955ea24d3ca4af133aff3eb7c1853e0218f867bc2b050ec26fe02e3aea58f880ffc5e506
+ languageName: node
+ linkType: hard
+
"hono@npm:^4.6.14":
version: 4.12.25
resolution: "hono@npm:4.12.25"
@@ -2376,6 +3181,58 @@ __metadata:
languageName: node
linkType: hard
+"html-encoding-sniffer@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "html-encoding-sniffer@npm:4.0.0"
+ dependencies:
+ whatwg-encoding: "npm:^3.1.1"
+ checksum: 10c0/523398055dc61ac9b34718a719cb4aa691e4166f29187e211e1607de63dc25ac7af52ca7c9aead0c4b3c0415ffecb17326396e1202e2e86ff4bca4c0ee4c6140
+ languageName: node
+ linkType: hard
+
+"http-proxy-agent@npm:^7.0.2":
+ version: 7.0.2
+ resolution: "http-proxy-agent@npm:7.0.2"
+ dependencies:
+ agent-base: "npm:^7.1.0"
+ debug: "npm:^4.3.4"
+ checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921
+ languageName: node
+ linkType: hard
+
+"https-proxy-agent@npm:^7.0.5":
+ version: 7.0.6
+ resolution: "https-proxy-agent@npm:7.0.6"
+ dependencies:
+ agent-base: "npm:^7.1.2"
+ debug: "npm:4"
+ checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac
+ languageName: node
+ linkType: hard
+
+"iconv-lite@npm:0.6.3":
+ version: 0.6.3
+ resolution: "iconv-lite@npm:0.6.3"
+ dependencies:
+ safer-buffer: "npm:>= 2.1.2 < 3.0.0"
+ checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1
+ languageName: node
+ linkType: hard
+
+"indent-string@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "indent-string@npm:4.0.0"
+ checksum: 10c0/1e1904ddb0cb3d6cce7cd09e27a90184908b7a5d5c21b92e232c93579d314f0b83c246ffb035493d0504b1e9147ba2c9b21df0030f48673fba0496ecd698161f
+ languageName: node
+ linkType: hard
+
+"is-potential-custom-element-name@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "is-potential-custom-element-name@npm:1.0.1"
+ checksum: 10c0/b73e2f22bc863b0939941d369486d308b43d7aef1f9439705e3582bfccaa4516406865e32c968a35f97a99396dac84e2624e67b0a16b0a15086a785e16ce7db9
+ languageName: node
+ linkType: hard
+
"isexe@npm:^3.1.1":
version: 3.1.5
resolution: "isexe@npm:3.1.5"
@@ -2404,6 +3261,13 @@ __metadata:
languageName: node
linkType: hard
+"js-tokens@npm:^3.0.0 || ^4.0.0, js-tokens@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "js-tokens@npm:4.0.0"
+ checksum: 10c0/e248708d377aa058eacf2037b07ded847790e6de892bbad3dac0abba2e759cb9f121b00099a65195616badcb6eca8d14d975cb3e89eb1cfda644756402c8aeed
+ languageName: node
+ linkType: hard
+
"js-tokens@npm:^9.0.1":
version: 9.0.1
resolution: "js-tokens@npm:9.0.1"
@@ -2411,6 +3275,58 @@ __metadata:
languageName: node
linkType: hard
+"jsdom@npm:^25.0.0":
+ version: 25.0.1
+ resolution: "jsdom@npm:25.0.1"
+ dependencies:
+ cssstyle: "npm:^4.1.0"
+ data-urls: "npm:^5.0.0"
+ decimal.js: "npm:^10.4.3"
+ form-data: "npm:^4.0.0"
+ html-encoding-sniffer: "npm:^4.0.0"
+ http-proxy-agent: "npm:^7.0.2"
+ https-proxy-agent: "npm:^7.0.5"
+ is-potential-custom-element-name: "npm:^1.0.1"
+ nwsapi: "npm:^2.2.12"
+ parse5: "npm:^7.1.2"
+ rrweb-cssom: "npm:^0.7.1"
+ saxes: "npm:^6.0.0"
+ symbol-tree: "npm:^3.2.4"
+ tough-cookie: "npm:^5.0.0"
+ w3c-xmlserializer: "npm:^5.0.0"
+ webidl-conversions: "npm:^7.0.0"
+ whatwg-encoding: "npm:^3.1.1"
+ whatwg-mimetype: "npm:^4.0.0"
+ whatwg-url: "npm:^14.0.0"
+ ws: "npm:^8.18.0"
+ xml-name-validator: "npm:^5.0.0"
+ peerDependencies:
+ canvas: ^2.11.2
+ peerDependenciesMeta:
+ canvas:
+ optional: true
+ checksum: 10c0/6bda32a6dfe4e37a30568bf51136bdb3ba9c0b72aadd6356280404275a34c9e097c8c25b5eb3c742e602623741e172da977ff456684befd77c9042ed9bf8c2b4
+ languageName: node
+ linkType: hard
+
+"jsesc@npm:^3.0.2":
+ version: 3.1.0
+ resolution: "jsesc@npm:3.1.0"
+ bin:
+ jsesc: bin/jsesc
+ checksum: 10c0/531779df5ec94f47e462da26b4cbf05eb88a83d9f08aac2ba04206508fc598527a153d08bd462bae82fc78b3eaa1a908e1a4a79f886e9238641c4cdefaf118b1
+ languageName: node
+ linkType: hard
+
+"json5@npm:^2.2.3":
+ version: 2.2.3
+ resolution: "json5@npm:2.2.3"
+ bin:
+ json5: lib/cli.js
+ checksum: 10c0/5a04eed94810fa55c5ea138b2f7a5c12b97c3750bc63d11e511dcecbfef758003861522a070c2272764ee0f4e3e323862f386945aeb5b85b87ee43f084ba586c
+ languageName: node
+ linkType: hard
+
"kysely@npm:^0.28.17 || ^0.29.0":
version: 0.29.2
resolution: "kysely@npm:0.29.2"
@@ -2451,6 +3367,17 @@ __metadata:
languageName: node
linkType: hard
+"loose-envify@npm:^1.1.0":
+ version: 1.4.0
+ resolution: "loose-envify@npm:1.4.0"
+ dependencies:
+ js-tokens: "npm:^3.0.0 || ^4.0.0"
+ bin:
+ loose-envify: cli.js
+ checksum: 10c0/655d110220983c1a4b9c0c679a2e8016d4b67f6e9c7b5435ff5979ecdb20d0813f4dec0a08674fcbdd4846a3f07edbb50a36811fd37930b94aaa0d9daceb017e
+ languageName: node
+ linkType: hard
+
"loupe@npm:^3.1.0, loupe@npm:^3.1.4":
version: 3.2.1
resolution: "loupe@npm:3.2.1"
@@ -2458,6 +3385,22 @@ __metadata:
languageName: node
linkType: hard
+"lru-cache@npm:^10.4.3":
+ version: 10.4.3
+ resolution: "lru-cache@npm:10.4.3"
+ checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb
+ languageName: node
+ linkType: hard
+
+"lru-cache@npm:^5.1.1":
+ version: 5.1.1
+ resolution: "lru-cache@npm:5.1.1"
+ dependencies:
+ yallist: "npm:^3.0.2"
+ checksum: 10c0/89b2ef2ef45f543011e38737b8a8622a2f8998cddf0e5437174ef8f1f70a8b9d14a918ab3e232cb3ba343b7abddffa667f0b59075b2b80e6b4d63c3de6127482
+ languageName: node
+ linkType: hard
+
"magic-string@npm:^0.30.17":
version: 0.30.21
resolution: "magic-string@npm:0.30.21"
@@ -2467,6 +3410,36 @@ __metadata:
languageName: node
linkType: hard
+"math-intrinsics@npm:^1.1.0":
+ version: 1.1.0
+ resolution: "math-intrinsics@npm:1.1.0"
+ checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f
+ languageName: node
+ linkType: hard
+
+"mime-db@npm:1.52.0":
+ version: 1.52.0
+ resolution: "mime-db@npm:1.52.0"
+ checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa
+ languageName: node
+ linkType: hard
+
+"mime-types@npm:^2.1.35":
+ version: 2.1.35
+ resolution: "mime-types@npm:2.1.35"
+ dependencies:
+ mime-db: "npm:1.52.0"
+ checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2
+ languageName: node
+ linkType: hard
+
+"min-indent@npm:^1.0.0":
+ version: 1.0.1
+ resolution: "min-indent@npm:1.0.1"
+ checksum: 10c0/7e207bd5c20401b292de291f02913230cb1163abca162044f7db1d951fa245b174dc00869d40dd9a9f32a885ad6a5f3e767ee104cf278f399cb4e92d3f582d5c
+ languageName: node
+ linkType: hard
+
"minipass@npm:^7.0.4, minipass@npm:^7.1.2":
version: 7.1.3
resolution: "minipass@npm:7.1.3"
@@ -2544,6 +3517,13 @@ __metadata:
languageName: node
linkType: hard
+"node-releases@npm:^2.0.36":
+ version: 2.0.47
+ resolution: "node-releases@npm:2.0.47"
+ checksum: 10c0/fb1a703adb88c3bfe73aa39ebe0a0bc6d59c9d20d74ad61fb50958ffb22840da82a7a256076840b84c8ed57bb80e6fc8e588e675712fcf7af269aab16206b9b5
+ languageName: node
+ linkType: hard
+
"nopt@npm:^10.0.0":
version: 10.0.1
resolution: "nopt@npm:10.0.1"
@@ -2555,6 +3535,13 @@ __metadata:
languageName: node
linkType: hard
+"nwsapi@npm:^2.2.12":
+ version: 2.2.24
+ resolution: "nwsapi@npm:2.2.24"
+ checksum: 10c0/9bc04ee9c7698f1b5506778d36f7382962f71667205d441d6a50f6180ee92328e770b76be78b907817ee103241b29984d3a17ae387e4723aebe0aeaed7a7c3a1
+ languageName: node
+ linkType: hard
+
"oxfmt@npm:^0.35.0":
version: 0.35.0
resolution: "oxfmt@npm:0.35.0"
@@ -2700,6 +3687,15 @@ __metadata:
languageName: node
linkType: hard
+"parse5@npm:^7.1.2":
+ version: 7.3.0
+ resolution: "parse5@npm:7.3.0"
+ dependencies:
+ entities: "npm:^6.0.0"
+ checksum: 10c0/7fd2e4e247e85241d6f2a464d0085eed599a26d7b0a5233790c49f53473232eb85350e8133344d9b3fd58b89339e7ad7270fe1f89d28abe50674ec97b87f80b5
+ languageName: node
+ linkType: hard
+
"pathe@npm:^2.0.3":
version: 2.0.3
resolution: "pathe@npm:2.0.3"
@@ -2753,6 +3749,75 @@ __metadata:
languageName: node
linkType: hard
+"punycode@npm:^2.3.1":
+ version: 2.3.1
+ resolution: "punycode@npm:2.3.1"
+ checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9
+ languageName: node
+ linkType: hard
+
+"react-dom@npm:^18.3.1":
+ version: 18.3.1
+ resolution: "react-dom@npm:18.3.1"
+ dependencies:
+ loose-envify: "npm:^1.1.0"
+ scheduler: "npm:^0.23.2"
+ peerDependencies:
+ react: ^18.3.1
+ checksum: 10c0/a752496c1941f958f2e8ac56239172296fcddce1365ce45222d04a1947e0cc5547df3e8447f855a81d6d39f008d7c32eab43db3712077f09e3f67c4874973e85
+ languageName: node
+ linkType: hard
+
+"react-refresh@npm:^0.17.0":
+ version: 0.17.0
+ resolution: "react-refresh@npm:0.17.0"
+ checksum: 10c0/002cba940384c9930008c0bce26cac97a9d5682bc623112c2268ba0c155127d9c178a9a5cc2212d560088d60dfd503edd808669a25f9b377f316a32361d0b23c
+ languageName: node
+ linkType: hard
+
+"react-router-dom@npm:^6.26.0":
+ version: 6.30.4
+ resolution: "react-router-dom@npm:6.30.4"
+ dependencies:
+ "@remix-run/router": "npm:1.23.3"
+ react-router: "npm:6.30.4"
+ peerDependencies:
+ react: ">=16.8"
+ react-dom: ">=16.8"
+ checksum: 10c0/1b25ab26a288da852f7b58eec5c14b3f37919e6773a557cd846d3a05d7a7d890c8d49bda93c0a7f497f240df1df8b0ad50635f990aafb55f2fc545ad8269a822
+ languageName: node
+ linkType: hard
+
+"react-router@npm:6.30.4":
+ version: 6.30.4
+ resolution: "react-router@npm:6.30.4"
+ dependencies:
+ "@remix-run/router": "npm:1.23.3"
+ peerDependencies:
+ react: ">=16.8"
+ checksum: 10c0/fb6de7d1002bcab9ea12c4072d93792eca494f1e4f30cfec334ccb6523756d23ce3e093c7c1241399296cebed94789a3fb89f96ee76004e0e746458a8f6bab33
+ languageName: node
+ linkType: hard
+
+"react@npm:^18.3.1":
+ version: 18.3.1
+ resolution: "react@npm:18.3.1"
+ dependencies:
+ loose-envify: "npm:^1.1.0"
+ checksum: 10c0/283e8c5efcf37802c9d1ce767f302dd569dd97a70d9bb8c7be79a789b9902451e0d16334b05d73299b20f048cbc3c7d288bbbde10b701fa194e2089c237dbea3
+ languageName: node
+ linkType: hard
+
+"redent@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "redent@npm:3.0.0"
+ dependencies:
+ indent-string: "npm:^4.0.0"
+ strip-indent: "npm:^3.0.0"
+ checksum: 10c0/d64a6b5c0b50eb3ddce3ab770f866658a2b9998c678f797919ceb1b586bab9259b311407280bd80b804e2a7c7539b19238ae6a2a20c843f1a7fcff21d48c2eae
+ languageName: node
+ linkType: hard
+
"resolve-pkg-maps@npm:^1.0.0":
version: 1.0.0
resolution: "resolve-pkg-maps@npm:1.0.0"
@@ -2866,6 +3931,54 @@ __metadata:
languageName: node
linkType: hard
+"rrweb-cssom@npm:^0.7.1":
+ version: 0.7.1
+ resolution: "rrweb-cssom@npm:0.7.1"
+ checksum: 10c0/127b8ca6c8aac45e2755abbae6138d4a813b1bedc2caabf79466ae83ab3cfc84b5bfab513b7033f0aa4561c7753edf787d0dd01163ceacdee2e8eb1b6bf7237e
+ languageName: node
+ linkType: hard
+
+"rrweb-cssom@npm:^0.8.0":
+ version: 0.8.0
+ resolution: "rrweb-cssom@npm:0.8.0"
+ checksum: 10c0/56f2bfd56733adb92c0b56e274c43f864b8dd48784d6fe946ef5ff8d438234015e59ad837fc2ad54714b6421384141c1add4eb569e72054e350d1f8a50b8ac7b
+ languageName: node
+ linkType: hard
+
+"safer-buffer@npm:>= 2.1.2 < 3.0.0":
+ version: 2.1.2
+ resolution: "safer-buffer@npm:2.1.2"
+ checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4
+ languageName: node
+ linkType: hard
+
+"saxes@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "saxes@npm:6.0.0"
+ dependencies:
+ xmlchars: "npm:^2.2.0"
+ checksum: 10c0/3847b839f060ef3476eb8623d099aa502ad658f5c40fd60c105ebce86d244389b0d76fcae30f4d0c728d7705ceb2f7e9b34bb54717b6a7dbedaf5dad2d9a4b74
+ languageName: node
+ linkType: hard
+
+"scheduler@npm:^0.23.2":
+ version: 0.23.2
+ resolution: "scheduler@npm:0.23.2"
+ dependencies:
+ loose-envify: "npm:^1.1.0"
+ checksum: 10c0/26383305e249651d4c58e6705d5f8425f153211aef95f15161c151f7b8de885f24751b377e4a0b3dd42cce09aad3f87a61dab7636859c0d89b7daf1a1e2a5c78
+ languageName: node
+ linkType: hard
+
+"semver@npm:^6.3.1":
+ version: 6.3.1
+ resolution: "semver@npm:6.3.1"
+ bin:
+ semver: bin/semver.js
+ checksum: 10c0/e3d79b609071caa78bcb6ce2ad81c7966a46a7431d9d58b8800cfa9cb6a63699b3899a0e4bcce36167a284578212d9ae6942b6929ba4aa5015c079a67751d42d
+ languageName: node
+ linkType: hard
+
"semver@npm:^7.3.5, semver@npm:^7.6.2":
version: 7.8.4
resolution: "semver@npm:7.8.4"
@@ -2934,6 +4047,15 @@ __metadata:
languageName: node
linkType: hard
+"strip-indent@npm:^3.0.0":
+ version: 3.0.0
+ resolution: "strip-indent@npm:3.0.0"
+ dependencies:
+ min-indent: "npm:^1.0.0"
+ checksum: 10c0/ae0deaf41c8d1001c5d4fbe16cb553865c1863da4fae036683b474fa926af9fc121e155cb3fc57a68262b2ae7d5b8420aa752c97a6428c315d00efe2a3875679
+ languageName: node
+ linkType: hard
+
"strip-literal@npm:^3.0.0":
version: 3.1.0
resolution: "strip-literal@npm:3.1.0"
@@ -2943,6 +4065,13 @@ __metadata:
languageName: node
linkType: hard
+"symbol-tree@npm:^3.2.4":
+ version: 3.2.4
+ resolution: "symbol-tree@npm:3.2.4"
+ checksum: 10c0/dfbe201ae09ac6053d163578778c53aa860a784147ecf95705de0cd23f42c851e1be7889241495e95c37cabb058edb1052f141387bef68f705afc8f9dd358509
+ languageName: node
+ linkType: hard
+
"tar@npm:^7.5.4":
version: 7.5.16
resolution: "tar@npm:7.5.16"
@@ -3008,6 +4137,42 @@ __metadata:
languageName: node
linkType: hard
+"tldts-core@npm:^6.1.86":
+ version: 6.1.86
+ resolution: "tldts-core@npm:6.1.86"
+ checksum: 10c0/8133c29375f3f99f88fce5f4d62f6ecb9532b106f31e5423b27c1eb1b6e711bd41875184a456819ceaed5c8b94f43911b1ad57e25c6eb86e1fc201228ff7e2af
+ languageName: node
+ linkType: hard
+
+"tldts@npm:^6.1.32":
+ version: 6.1.86
+ resolution: "tldts@npm:6.1.86"
+ dependencies:
+ tldts-core: "npm:^6.1.86"
+ bin:
+ tldts: bin/cli.js
+ checksum: 10c0/27ae7526d9d78cb97b2de3f4d102e0b4321d1ccff0648a7bb0e039ed54acbce86bacdcd9cd3c14310e519b457854e7bafbef1f529f58a1e217a737ced63f0940
+ languageName: node
+ linkType: hard
+
+"tough-cookie@npm:^5.0.0":
+ version: 5.1.2
+ resolution: "tough-cookie@npm:5.1.2"
+ dependencies:
+ tldts: "npm:^6.1.32"
+ checksum: 10c0/5f95023a47de0f30a902bba951664b359725597d8adeabc66a0b93a931c3af801e1e697dae4b8c21a012056c0ea88bd2bf4dfe66b2adcf8e2f42cd9796fe0626
+ languageName: node
+ linkType: hard
+
+"tr46@npm:^5.1.0":
+ version: 5.1.1
+ resolution: "tr46@npm:5.1.1"
+ dependencies:
+ punycode: "npm:^2.3.1"
+ checksum: 10c0/ae270e194d52ec67ebd695c1a42876e0f19b96e4aca2ab464ab1d9d17dc3acd3e18764f5034c93897db73421563be27c70c98359c4501136a497e46deda5d5ec
+ languageName: node
+ linkType: hard
+
"tsx@npm:^4.19.2":
version: 4.22.4
resolution: "tsx@npm:4.22.4"
@@ -3057,6 +4222,20 @@ __metadata:
languageName: node
linkType: hard
+"update-browserslist-db@npm:^1.2.3":
+ version: 1.2.3
+ resolution: "update-browserslist-db@npm:1.2.3"
+ dependencies:
+ escalade: "npm:^3.2.0"
+ picocolors: "npm:^1.1.1"
+ peerDependencies:
+ browserslist: ">= 4.21.0"
+ bin:
+ update-browserslist-db: cli.js
+ checksum: 10c0/13a00355ea822388f68af57410ce3255941d5fb9b7c49342c4709a07c9f230bbef7f7499ae0ca7e0de532e79a82cc0c4edbd125f1a323a1845bf914efddf8bec
+ languageName: node
+ linkType: hard
+
"vite-node@npm:3.2.4":
version: 3.2.4
resolution: "vite-node@npm:3.2.4"
@@ -3072,7 +4251,7 @@ __metadata:
languageName: node
linkType: hard
-"vite@npm:^5.0.0 || ^6.0.0 || ^7.0.0-0":
+"vite@npm:7.3.5":
version: 7.3.5
resolution: "vite@npm:7.3.5"
dependencies:
@@ -3183,6 +4362,15 @@ __metadata:
languageName: node
linkType: hard
+"w3c-xmlserializer@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "w3c-xmlserializer@npm:5.0.0"
+ dependencies:
+ xml-name-validator: "npm:^5.0.0"
+ checksum: 10c0/8712774c1aeb62dec22928bf1cdfd11426c2c9383a1a63f2bcae18db87ca574165a0fbe96b312b73652149167ac6c7f4cf5409f2eb101d9c805efe0e4bae798b
+ languageName: node
+ linkType: hard
+
"web-streams-polyfill@npm:^3.0.3":
version: 3.3.3
resolution: "web-streams-polyfill@npm:3.3.3"
@@ -3190,6 +4378,39 @@ __metadata:
languageName: node
linkType: hard
+"webidl-conversions@npm:^7.0.0":
+ version: 7.0.0
+ resolution: "webidl-conversions@npm:7.0.0"
+ checksum: 10c0/228d8cb6d270c23b0720cb2d95c579202db3aaf8f633b4e9dd94ec2000a04e7e6e43b76a94509cdb30479bd00ae253ab2371a2da9f81446cc313f89a4213a2c4
+ languageName: node
+ linkType: hard
+
+"whatwg-encoding@npm:^3.1.1":
+ version: 3.1.1
+ resolution: "whatwg-encoding@npm:3.1.1"
+ dependencies:
+ iconv-lite: "npm:0.6.3"
+ checksum: 10c0/273b5f441c2f7fda3368a496c3009edbaa5e43b71b09728f90425e7f487e5cef9eb2b846a31bd760dd8077739c26faf6b5ca43a5f24033172b003b72cf61a93e
+ languageName: node
+ linkType: hard
+
+"whatwg-mimetype@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "whatwg-mimetype@npm:4.0.0"
+ checksum: 10c0/a773cdc8126b514d790bdae7052e8bf242970cebd84af62fb2f35a33411e78e981f6c0ab9ed1fe6ec5071b09d5340ac9178e05b52d35a9c4bcf558ba1b1551df
+ languageName: node
+ linkType: hard
+
+"whatwg-url@npm:^14.0.0":
+ version: 14.2.0
+ resolution: "whatwg-url@npm:14.2.0"
+ dependencies:
+ tr46: "npm:^5.1.0"
+ webidl-conversions: "npm:^7.0.0"
+ checksum: 10c0/f746fc2f4c906607d09537de1227b13f9494c171141e5427ed7d2c0dd0b6a48b43d8e71abaae57d368d0c06b673fd8ec63550b32ad5ed64990c7b0266c2b4272
+ languageName: node
+ linkType: hard
+
"which@npm:^4.0.0":
version: 4.0.0
resolution: "which@npm:4.0.0"
@@ -3224,7 +4445,7 @@ __metadata:
languageName: node
linkType: hard
-"ws@npm:^8.13.0":
+"ws@npm:^8.13.0, ws@npm:^8.18.0":
version: 8.21.0
resolution: "ws@npm:8.21.0"
peerDependencies:
@@ -3239,6 +4460,27 @@ __metadata:
languageName: node
linkType: hard
+"xml-name-validator@npm:^5.0.0":
+ version: 5.0.0
+ resolution: "xml-name-validator@npm:5.0.0"
+ checksum: 10c0/3fcf44e7b73fb18be917fdd4ccffff3639373c7cb83f8fc35df6001fecba7942f1dbead29d91ebb8315e2f2ff786b508f0c9dc0215b6353f9983c6b7d62cb1f5
+ languageName: node
+ linkType: hard
+
+"xmlchars@npm:^2.2.0":
+ version: 2.2.0
+ resolution: "xmlchars@npm:2.2.0"
+ checksum: 10c0/b64b535861a6f310c5d9bfa10834cf49127c71922c297da9d4d1b45eeaae40bf9b4363275876088fbe2667e5db028d2cd4f8ee72eed9bede840a67d57dab7593
+ languageName: node
+ linkType: hard
+
+"yallist@npm:^3.0.2":
+ version: 3.1.1
+ resolution: "yallist@npm:3.1.1"
+ checksum: 10c0/c66a5c46bc89af1625476f7f0f2ec3653c1a1791d2f9407cfb4c2ba812a1e1c9941416d71ba9719876530e3340a99925f697142989371b72d93b9ee628afd8c1
+ languageName: node
+ linkType: hard
+
"yallist@npm:^5.0.0":
version: 5.0.0
resolution: "yallist@npm:5.0.0"