diff --git a/apps/desktop/src-tauri/src/deeplink_actions.rs b/apps/desktop/src-tauri/src/deeplink_actions.rs index fce75b4a84..dd95bf75b6 100644 --- a/apps/desktop/src-tauri/src/deeplink_actions.rs +++ b/apps/desktop/src-tauri/src/deeplink_actions.rs @@ -1,12 +1,12 @@ use cap_recording::{ - RecordingMode, feeds::camera::DeviceOrModelID, sources::screen_capture::ScreenCaptureTarget, + feeds::camera::DeviceOrModelID, sources::screen_capture::ScreenCaptureTarget, RecordingMode, }; use serde::{Deserialize, Serialize}; use std::path::{Path, PathBuf}; use tauri::{AppHandle, Manager, Url}; use tracing::trace; -use crate::{App, ArcLock, recording::StartRecordingInputs, windows::ShowCapWindow}; +use crate::{recording::StartRecordingInputs, windows::ShowCapWindow, App, ArcLock}; #[derive(Debug, Serialize, Deserialize)] #[serde(rename_all = "snake_case")] @@ -26,6 +26,14 @@ pub enum DeepLinkAction { mode: RecordingMode, }, StopRecording, + PauseRecording, + ResumeRecording, + SwitchMic { + label: Option, + }, + SwitchCamera { + id: Option, + }, OpenEditor { project_path: PathBuf, }, @@ -87,10 +95,35 @@ impl TryFrom<&Url> for DeepLinkAction { }); } - match url.domain() { - Some(v) if v != "action" => Err(ActionParseFromUrlError::NotAction), - _ => Err(ActionParseFromUrlError::Invalid), - }?; + let host = url.host_str().unwrap_or_default(); + + match host { + "stop-recording" => return Ok(Self::StopRecording), + "pause-recording" => return Ok(Self::PauseRecording), + "resume-recording" => return Ok(Self::ResumeRecording), + "switch-mic" => { + let params: std::collections::HashMap<_, _> = url.query_pairs().collect(); + return Ok(Self::SwitchMic { + label: params.get("label").map(|v| v.to_string()), + }); + } + "switch-camera" => { + let params: std::collections::HashMap<_, _> = url.query_pairs().collect(); + let id = params.get("id").and_then(|v| { + let raw = v.as_ref(); + if raw.is_empty() { + return None; + } + serde_json::from_str::(raw) + .ok() + .or_else(|| Some(DeviceOrModelID::DeviceID(raw.to_string()))) + }); + return Ok(Self::SwitchCamera { id }); + } + "action" => {} + + _ => return Err(ActionParseFromUrlError::NotAction), + } let params = url .query_pairs() @@ -146,6 +179,20 @@ impl DeepLinkAction { DeepLinkAction::StopRecording => { crate::recording::stop_recording(app.clone(), app.state()).await } + DeepLinkAction::PauseRecording => { + crate::recording::pause_recording(app.clone(), app.state()).await + } + DeepLinkAction::ResumeRecording => { + crate::recording::resume_recording(app.clone(), app.state()).await + } + DeepLinkAction::SwitchMic { label } => { + let state = app.state::>(); + crate::set_mic_input(state, label).await + } + DeepLinkAction::SwitchCamera { id } => { + let state = app.state::>(); + crate::set_camera_input(app.clone(), state, id, None).await + } DeepLinkAction::OpenEditor { project_path } => { crate::open_project_from_path(Path::new(&project_path), app.clone()) } diff --git a/apps/desktop/src-tauri/tauri.conf.json b/apps/desktop/src-tauri/tauri.conf.json index 691c2f0995..80aba7fd80 100644 --- a/apps/desktop/src-tauri/tauri.conf.json +++ b/apps/desktop/src-tauri/tauri.conf.json @@ -30,7 +30,7 @@ "updater": { "active": false, "pubkey": "" }, "deep-link": { "desktop": { - "schemes": ["cap-desktop"] + "schemes": ["cap-desktop", "cap"] } } }, diff --git a/apps/raycast-extension/package.json b/apps/raycast-extension/package.json new file mode 100644 index 0000000000..b7f9778f85 --- /dev/null +++ b/apps/raycast-extension/package.json @@ -0,0 +1,130 @@ +{ + "$schema": "https://www.raycast.com/schemas/extension.json", + "name": "cap", + "title": "Cap", + "description": "Control Cap screen recording from Raycast", + "icon": "extension-icon.png", + "author": "cap", + "categories": [ + "Media", + "Productivity" + ], + "license": "MIT", + "commands": [ + { + "name": "start-recording", + "title": "Start Recording", + "subtitle": "Cap", + "description": "Start a new Cap screen recording session", + "mode": "no-view", + "preferences": [ + { + "name": "captureType", + "title": "Capture Type", + "description": "Whether to capture a screen or a window", + "type": "dropdown", + "required": true, + "default": "screen", + "data": [ + { + "title": "Screen", + "value": "screen" + }, + { + "title": "Window", + "value": "window" + } + ] + }, + { + "name": "captureName", + "title": "Screen or Window Name", + "description": "Exact name of the screen or window to capture", + "type": "textfield", + "required": false, + "default": "" + }, + { + "name": "captureSystemAudio", + "title": "System Audio", + "description": "Capture system audio alongside the recording", + "type": "checkbox", + "required": false, + "default": false, + "label": "Capture system audio" + }, + { + "name": "recordingMode", + "title": "Recording Mode", + "description": "Instant shares immediately; Studio lets you edit first", + "type": "dropdown", + "required": false, + "default": "studio", + "data": [ + { + "title": "Instant", + "value": "instant" + }, + { + "title": "Studio", + "value": "studio" + } + ] + } + ] + }, + { + "name": "stop-recording", + "title": "Stop Recording", + "subtitle": "Cap", + "description": "Stop the current Cap screen recording", + "mode": "no-view" + }, + { + "name": "pause-recording", + "title": "Pause Recording", + "subtitle": "Cap", + "description": "Pause the current Cap screen recording", + "mode": "no-view" + }, + { + "name": "resume-recording", + "title": "Resume Recording", + "subtitle": "Cap", + "description": "Resume the paused Cap screen recording", + "mode": "no-view" + }, + { + "name": "switch-microphone", + "title": "Switch Microphone", + "subtitle": "Cap", + "description": "Switch the active microphone used by Cap", + "mode": "view" + }, + { + "name": "switch-camera", + "title": "Switch Camera", + "subtitle": "Cap", + "description": "Switch the active camera used by Cap", + "mode": "view" + } + ], + "dependencies": { + "@raycast/api": "^1.68.0" + }, + "devDependencies": { + "@raycast/utils": "^1.15.0", + "@types/node": "20.8.10", + "@types/react": "18.3.3", + "eslint": "^8.57.0", + "prettier": "^3.2.5", + "typescript": "^5.4.5" + }, + "scripts": { + "build": "ray build -e dist", + "dev": "ray develop", + "fix-lint": "ray lint --fix", + "lint": "ray lint", + "publish": "npx @raycast/api@latest publish" + } +} diff --git a/apps/raycast-extension/src/pause-recording.tsx b/apps/raycast-extension/src/pause-recording.tsx new file mode 100644 index 0000000000..c712288595 --- /dev/null +++ b/apps/raycast-extension/src/pause-recording.tsx @@ -0,0 +1,11 @@ +import { closeMainWindow, open, showHUD } from "@raycast/api"; + +export default async function Command() { + await closeMainWindow(); + try { + await open("cap://pause-recording"); + await showHUD("Pausing recording…"); + } catch { + await showHUD("Failed to open Cap"); + } +} diff --git a/apps/raycast-extension/src/resume-recording.tsx b/apps/raycast-extension/src/resume-recording.tsx new file mode 100644 index 0000000000..198ad64011 --- /dev/null +++ b/apps/raycast-extension/src/resume-recording.tsx @@ -0,0 +1,11 @@ +import { closeMainWindow, open, showHUD } from "@raycast/api"; + +export default async function Command() { + await closeMainWindow(); + try { + await open("cap://resume-recording"); + await showHUD("Resuming recording…"); + } catch { + await showHUD("Failed to open Cap"); + } +} diff --git a/apps/raycast-extension/src/start-recording.tsx b/apps/raycast-extension/src/start-recording.tsx new file mode 100644 index 0000000000..3347a3a342 --- /dev/null +++ b/apps/raycast-extension/src/start-recording.tsx @@ -0,0 +1,47 @@ +import { + closeMainWindow, + getPreferenceValues, + open, + showHUD, +} from "@raycast/api"; + +interface Preferences { + captureType: "screen" | "window"; + captureName: string; + captureSystemAudio: boolean; + recordingMode: "instant" | "studio"; +} + +export default async function Command() { + const prefs = getPreferenceValues(); + + const captureName = prefs.captureName?.trim(); + if (!captureName) { + await showHUD("Set a screen/window name in Raycast preferences first"); + return; + } + const captureMode = + prefs.captureType === "window" + ? { window: captureName } + : { screen: captureName }; + + const action = { + start_recording: { + capture_mode: captureMode, + camera: null, + mic_label: null, + capture_system_audio: prefs.captureSystemAudio ?? false, + mode: prefs.recordingMode ?? "instant", + }, + }; + + const url = `cap://action?value=${encodeURIComponent(JSON.stringify(action))}`; + + await closeMainWindow(); + try { + await open(url); + await showHUD("Starting recording…"); + } catch { + await showHUD("Failed to open Cap"); + } +} diff --git a/apps/raycast-extension/src/stop-recording.tsx b/apps/raycast-extension/src/stop-recording.tsx new file mode 100644 index 0000000000..0599b12fb8 --- /dev/null +++ b/apps/raycast-extension/src/stop-recording.tsx @@ -0,0 +1,11 @@ +import { closeMainWindow, open, showHUD } from "@raycast/api"; + +export default async function Command() { + await closeMainWindow(); + try { + await open("cap://stop-recording"); + await showHUD("Stopping recording…"); + } catch { + await showHUD("Failed to open Cap"); + } +} diff --git a/apps/raycast-extension/src/switch-camera.tsx b/apps/raycast-extension/src/switch-camera.tsx new file mode 100644 index 0000000000..f44df1861d --- /dev/null +++ b/apps/raycast-extension/src/switch-camera.tsx @@ -0,0 +1,46 @@ +import { + Action, + ActionPanel, + closeMainWindow, + Form, + open, + showHUD, +} from "@raycast/api"; + +interface Values { + id: string; +} + +export default function Command() { + async function handleSubmit(values: Values) { + const id = values.id.trim(); + const url = id + ? `cap://switch-camera?id=${encodeURIComponent(id)}` + : "cap://switch-camera"; + + await closeMainWindow(); + try { + await open(url); + await showHUD(id ? `Switching camera to: ${id}` : "Disabling camera"); + } catch { + await showHUD("Failed to open Cap"); + } + } + + return ( +
+ + + } + > + + + ); +} diff --git a/apps/raycast-extension/src/switch-microphone.tsx b/apps/raycast-extension/src/switch-microphone.tsx new file mode 100644 index 0000000000..15775cd444 --- /dev/null +++ b/apps/raycast-extension/src/switch-microphone.tsx @@ -0,0 +1,51 @@ +import { + Action, + ActionPanel, + closeMainWindow, + Form, + open, + showHUD, +} from "@raycast/api"; + +interface Values { + label: string; +} + +export default function Command() { + async function handleSubmit(values: Values) { + const label = values.label.trim(); + const url = label + ? `cap://switch-mic?label=${encodeURIComponent(label)}` + : "cap://switch-mic"; + + await closeMainWindow(); + try { + await open(url); + await showHUD( + label ? `Switching microphone to: ${label}` : "Disabling microphone", + ); + } catch { + await showHUD("Failed to open Cap"); + } + } + + return ( +
+ + + } + > + + + ); +} diff --git a/apps/raycast-extension/tsconfig.json b/apps/raycast-extension/tsconfig.json new file mode 100644 index 0000000000..8279aaff78 --- /dev/null +++ b/apps/raycast-extension/tsconfig.json @@ -0,0 +1,15 @@ +{ + "compilerOptions": { + "target": "ES2020", + "lib": ["ES2020"], + "module": "CommonJS", + "moduleResolution": "node", + "jsx": "react-jsx", + "strict": true, + "esModuleInterop": true, + "skipLibCheck": true, + "forceConsistentCasingInFileNames": true, + "baseUrl": "." + }, + "include": ["src/**/*"] +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a3c2ec83f7..a4db6eff3b 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -312,6 +312,31 @@ importers: specifier: latest version: 1.3.9 + apps/raycast-extension: + dependencies: + '@raycast/api': + specifier: ^1.68.0 + version: 1.104.6(@types/node@20.8.10)(@types/react@18.3.3) + devDependencies: + '@raycast/utils': + specifier: ^1.15.0 + version: 1.19.1(@raycast/api@1.104.6(@types/node@20.8.10)(@types/react@18.3.3))(encoding@0.1.13) + '@types/node': + specifier: 20.8.10 + version: 20.8.10 + '@types/react': + specifier: 18.3.3 + version: 18.3.3 + eslint: + specifier: ^8.57.0 + version: 8.57.1 + prettier: + specifier: ^3.2.5 + version: 3.7.4 + typescript: + specifier: ^5.4.5 + version: 5.8.3 + apps/storybook: dependencies: '@cap/ui-solid': @@ -2408,9 +2433,6 @@ packages: '@emnapi/core@1.7.1': resolution: {integrity: sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==} - '@emnapi/runtime@1.4.3': - resolution: {integrity: sha512-pBPWdu6MLKROBX05wSNKcNb++m5Er+KQ9QkB+WVM+pW2Kx9hoSrVTnu3BdkI5eBLZoKu/J6mW/B6i6bJB2ytXQ==} - '@emnapi/runtime@1.5.0': resolution: {integrity: sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==} @@ -3867,6 +3889,140 @@ packages: cpu: [x64] os: [win32] + '@inquirer/ansi@1.0.2': + resolution: {integrity: sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==} + engines: {node: '>=18'} + + '@inquirer/checkbox@4.3.2': + resolution: {integrity: sha512-VXukHf0RR1doGe6Sm4F0Em7SWYLTHSsbGfJdS9Ja2bX5/D5uwVOEjr07cncLROdBvmnvCATYEWlHqYmXv2IlQA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/confirm@5.1.21': + resolution: {integrity: sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/core@10.3.2': + resolution: {integrity: sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/editor@4.2.23': + resolution: {integrity: sha512-aLSROkEwirotxZ1pBaP8tugXRFCxW94gwrQLxXfrZsKkfjOYC1aRvAZuhpJOb5cu4IBTJdsCigUlf2iCOu4ZDQ==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/expand@4.0.23': + resolution: {integrity: sha512-nRzdOyFYnpeYTTR2qFwEVmIWypzdAx/sIkCMeTNTcflFOovfqUk+HcFhQQVBftAh9gmGrpFj6QcGEqrDMDOiew==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/external-editor@1.0.3': + resolution: {integrity: sha512-RWbSrDiYmO4LbejWY7ttpxczuwQyZLBUyygsA9Nsv95hpzUWwnNTVQmAq3xuh7vNwCp07UTmE5i11XAEExx4RA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/figures@1.0.15': + resolution: {integrity: sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==} + engines: {node: '>=18'} + + '@inquirer/input@4.3.1': + resolution: {integrity: sha512-kN0pAM4yPrLjJ1XJBjDxyfDduXOuQHrBB8aLDMueuwUGn+vNpF7Gq7TvyVxx8u4SHlFFj4trmj+a2cbpG4Jn1g==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/number@3.0.23': + resolution: {integrity: sha512-5Smv0OK7K0KUzUfYUXDXQc9jrf8OHo4ktlEayFlelCjwMXz0299Y8OrI+lj7i4gCBY15UObk76q0QtxjzFcFcg==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/password@4.0.23': + resolution: {integrity: sha512-zREJHjhT5vJBMZX/IUbyI9zVtVfOLiTO66MrF/3GFZYZ7T4YILW5MSkEYHceSii/KtRk+4i3RE7E1CUXA2jHcA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/prompts@7.10.1': + resolution: {integrity: sha512-Dx/y9bCQcXLI5ooQ5KyvA4FTgeo2jYj/7plWfV5Ak5wDPKQZgudKez2ixyfz7tKXzcJciTxqLeK7R9HItwiByg==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/rawlist@4.1.11': + resolution: {integrity: sha512-+LLQB8XGr3I5LZN/GuAHo+GpDJegQwuPARLChlMICNdwW7OwV2izlCSCxN6cqpL0sMXmbKbFcItJgdQq5EBXTw==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/search@3.2.2': + resolution: {integrity: sha512-p2bvRfENXCZdWF/U2BXvnSI9h+tuA8iNqtUKb9UWbmLYCRQxd8WkvwWvYn+3NgYaNwdUkHytJMGG4MMLucI1kA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/select@4.4.2': + resolution: {integrity: sha512-l4xMuJo55MAe+N7Qr4rX90vypFwCajSakx59qe/tMaC1aEHWLyw68wF4o0A4SLAY4E0nd+Vt+EyskeDIqu1M6w==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + + '@inquirer/type@3.0.10': + resolution: {integrity: sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==} + engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true + '@internationalized/date@3.8.0': resolution: {integrity: sha512-J51AJ0fEL68hE4CwGPa6E0PO6JDaVLd8aln48xFCSy7CZkZc96dGEGmLs2OEEbBxcsVZtfrqkXJwI2/MSG8yKw==} @@ -4322,10 +4478,26 @@ packages: resolution: {integrity: sha512-BMWGvJrzn5PnG60gTNFEvaBT0jvGNiJCKN4aJBYP6E7Bq/Y5XPnxPrkj7ZZs/Jsd1oVn6K/JRmF6gWpv72DOew==} engines: {node: '>=18.0.0'} + '@oclif/core@4.8.1': + resolution: {integrity: sha512-07mq0vKCWNsB85ZHeBMlTAiO0KLFqHyAeRK3bD2K8CI1tX3tiwkWw1lZQZkiw8MUBrhxdROhMkYMY4Q0l7JHqA==} + engines: {node: '>=18.0.0'} + + '@oclif/plugin-autocomplete@3.2.40': + resolution: {integrity: sha512-HCfDuUV3l5F5Wz7SKkaoFb+OMQ5vKul8zvsPNgI0QbZcQuGHmn3svk+392wSfXboyA1gq8kzEmKPAoQK6r6UNw==} + engines: {node: '>=18.0.0'} + '@oclif/plugin-help@6.2.31': resolution: {integrity: sha512-o4xR98DEFf+VqY+M9B3ZooTm2T/mlGvyBHwHcnsPJCEnvzHqEA9xUlCUK4jm7FBXHhkppziMgCC2snsueLoIpQ==} engines: {node: '>=18.0.0'} + '@oclif/plugin-help@6.2.37': + resolution: {integrity: sha512-5N/X/FzlJaYfpaHwDC0YHzOzKDWa41s9t+4FpCDu4f9OMReds4JeNBaaWk9rlIzdKjh2M6AC5Q18ORfECRkHGA==} + engines: {node: '>=18.0.0'} + + '@oclif/plugin-not-found@3.2.74': + resolution: {integrity: sha512-6RD/EuIUGxAYR45nMQg+nw+PqwCXUxkR6Eyn+1fvbVjtb9d+60OPwB77LCRUI4zKNI+n0LOFaMniEdSpb+A7kQ==} + engines: {node: '>=18.0.0'} + '@octokit/app@15.1.6': resolution: {integrity: sha512-WELCamoCJo9SN0lf3SWZccf68CF0sBNPQuLYmZ/n87p5qvBJDe9aBtr5dHkh7T9nxWZ608pizwsUbypSzZAiUw==} engines: {node: '>= 18'} @@ -4701,8 +4873,8 @@ packages: resolution: {integrity: sha512-JD6DerIKdJGmRp4jQyX5FlrQjA4tjOw1cvfsPAZXfOOEErMUHjPcPSICS+6WnM0nB0efSFARh0KAZss+bvExOA==} engines: {node: '>=14'} - '@oxc-project/types@0.113.0': - resolution: {integrity: sha512-Tp3XmgxwNQ9pEN9vxgJBAqdRamHibi76iowQ38O2I4PMpcvNRQNVsU2n1x1nv9yh0XoTrGFzf7cZSGxmixxrhA==} + '@oxc-project/types@0.114.0': + resolution: {integrity: sha512-//nBfbzHQHvJs8oFIjv6coZ6uxQ4alLfiPe6D5vit6c4pmxATHHlVwgB1k+Hv4yoAMyncdxgRBF5K4BYWUCzvA==} '@oxc-project/types@0.94.0': resolution: {integrity: sha512-+UgQT/4o59cZfH6Cp7G0hwmqEQ0wE+AdIwhikdwnhWI9Dp8CgSY081+Q3O67/wq3VJu8mgUEB93J9EHHn70fOw==} @@ -5486,6 +5658,27 @@ packages: '@radix-ui/rect@1.1.1': resolution: {integrity: sha512-HPwpGIzkl28mWyZqG52jiqDJ12waP11Pa1lGoiyUkIEuMLBP0oeK/C89esbXrxsky5we7dfd8U58nm0SgAWpVw==} + '@raycast/api@1.104.6': + resolution: {integrity: sha512-W3UnZrfh1EH9mteQQOibeUvniDnVsbRgcfSUgVWFTGuI6mzKLFzoM8mD6n5amYQM51JVvbuJbaqtfMqsTmnQCQ==} + engines: {node: '>=22.14.0'} + hasBin: true + peerDependencies: + '@types/node': 22.13.10 + '@types/react': 19.0.10 + react-devtools: 6.1.1 + peerDependenciesMeta: + '@types/node': + optional: true + '@types/react': + optional: true + react-devtools: + optional: true + + '@raycast/utils@1.19.1': + resolution: {integrity: sha512-/udUGcTZCgZZwzesmjBkqG5naQZTD/ZLHbqRwkWcF+W97vf9tr9raxKyQjKsdZ17OVllw2T3sHBQsVUdEmCm2g==} + peerDependencies: + '@raycast/api': '>=1.69.0' + '@react-email/body@0.0.11': resolution: {integrity: sha512-ZSD2SxVSgUjHGrB0Wi+4tu3MEpB4fYSbezsFNEJk2xCWDBkFiOeEsjTmR5dvi+CxTK691hQTQlHv0XWuP7ENTg==} peerDependencies: @@ -5652,8 +5845,8 @@ packages: cpu: [arm64] os: [android] - '@rolldown/binding-android-arm64@1.0.0-rc.4': - resolution: {integrity: sha512-vRq9f4NzvbdZavhQbjkJBx7rRebDKYR9zHfO/Wg486+I7bSecdUapzCm5cyXoK+LHokTxgSq7A5baAXUZkIz0w==} + '@rolldown/binding-android-arm64@1.0.0-rc.5': + resolution: {integrity: sha512-zCEmUrt1bggwgBgeKLxNj217J1OrChrp3jJt24VK9jAharSTeVaHODNL+LpcQVhRz+FktYWfT9cjo5oZ99ZLpg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [android] @@ -5664,8 +5857,8 @@ packages: cpu: [arm64] os: [darwin] - '@rolldown/binding-darwin-arm64@1.0.0-rc.4': - resolution: {integrity: sha512-kFgEvkWLqt3YCgKB5re9RlIrx9bRsvyVUnaTakEpOPuLGzLpLapYxE9BufJNvPg8GjT6mB1alN4yN1NjzoeM8Q==} + '@rolldown/binding-darwin-arm64@1.0.0-rc.5': + resolution: {integrity: sha512-ZP9xb9lPAex36pvkNWCjSEJW/Gfdm9I3ssiqOFLmpZ/vosPXgpoGxCmh+dX1Qs+/bWQE6toNFXWWL8vYoKoK9Q==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [darwin] @@ -5676,8 +5869,8 @@ packages: cpu: [x64] os: [darwin] - '@rolldown/binding-darwin-x64@1.0.0-rc.4': - resolution: {integrity: sha512-JXmaOJGsL/+rsmMfutcDjxWM2fTaVgCHGoXS7nE8Z3c9NAYjGqHvXrAhMUZvMpHS/k7Mg+X7n/MVKb7NYWKKww==} + '@rolldown/binding-darwin-x64@1.0.0-rc.5': + resolution: {integrity: sha512-7IdrPunf6dp9mywMgTOKMMGDnMHQ6+h5gRl6LW8rhD8WK2kXX0IwzcM5Zc0B5J7xQs8QWOlKjv8BJsU/1CD3pg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [darwin] @@ -5688,8 +5881,8 @@ packages: cpu: [x64] os: [freebsd] - '@rolldown/binding-freebsd-x64@1.0.0-rc.4': - resolution: {integrity: sha512-ep3Catd6sPnHTM0P4hNEvIv5arnDvk01PfyJIJ+J3wVCG1eEaPo09tvFqdtcaTrkwQy0VWR24uz+cb4IsK53Qw==} + '@rolldown/binding-freebsd-x64@1.0.0-rc.5': + resolution: {integrity: sha512-o/JCk+dL0IN68EBhZ4DqfsfvxPfMeoM6cJtxORC1YYoxGHZyth2Kb2maXDb4oddw2wu8iIbnYXYPEzBtAF5CAg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [freebsd] @@ -5700,8 +5893,8 @@ packages: cpu: [arm] os: [linux] - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.4': - resolution: {integrity: sha512-LwA5ayKIpnsgXJEwWc3h8wPiS33NMIHd9BhsV92T8VetVAbGe2qXlJwNVDGHN5cOQ22R9uYvbrQir2AB+ntT2w==} + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.5': + resolution: {integrity: sha512-IIBwTtA6VwxQLcEgq2mfrUgam7VvPZjhd/jxmeS1npM+edWsrrpRLHUdze+sk4rhb8/xpP3flemgcZXXUW6ukw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm] os: [linux] @@ -5712,8 +5905,8 @@ packages: cpu: [arm64] os: [linux] - '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.4': - resolution: {integrity: sha512-AC1WsGdlV1MtGay/OQ4J9T7GRadVnpYRzTcygV1hKnypbYN20Yh4t6O1Sa2qRBMqv1etulUknqXjc3CTIsBu6A==} + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.5': + resolution: {integrity: sha512-KSol1De1spMZL+Xg7K5IBWXIvRWv7+pveaxFWXpezezAG7CS6ojzRjtCGCiLxQricutTAi/LkNWKMsd2wNhMKQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] @@ -5724,8 +5917,8 @@ packages: cpu: [arm64] os: [linux] - '@rolldown/binding-linux-arm64-musl@1.0.0-rc.4': - resolution: {integrity: sha512-lU+6rgXXViO61B4EudxtVMXSOfiZONR29Sys5VGSetUY7X8mg9FCKIIjcPPj8xNDeYzKl+H8F/qSKOBVFJChCQ==} + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.5': + resolution: {integrity: sha512-WFljyDkxtXRlWxMjxeegf7xMYXxUr8u7JdXlOEWKYgDqEgxUnSEsVDxBiNWQ1D5kQKwf8Wo4sVKEYPRhCdsjwA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] @@ -5736,8 +5929,8 @@ packages: cpu: [x64] os: [linux] - '@rolldown/binding-linux-x64-gnu@1.0.0-rc.4': - resolution: {integrity: sha512-DZaN1f0PGp/bSvKhtw50pPsnln4T13ycDq1FrDWRiHmWt1JeW+UtYg9touPFf8yt993p8tS2QjybpzKNTxYEwg==} + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.5': + resolution: {integrity: sha512-CUlplTujmbDWp2gamvrqVKi2Or8lmngXT1WxsizJfts7JrvfGhZObciaY/+CbdbS9qNnskvwMZNEhTPrn7b+WA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] @@ -5748,8 +5941,8 @@ packages: cpu: [x64] os: [linux] - '@rolldown/binding-linux-x64-musl@1.0.0-rc.4': - resolution: {integrity: sha512-RnGxwZLN7fhMMAItnD6dZ7lvy+TI7ba+2V54UF4dhaWa/p8I/ys1E73KO6HmPmgz92ZkfD8TXS1IMV8+uhbR9g==} + '@rolldown/binding-linux-x64-musl@1.0.0-rc.5': + resolution: {integrity: sha512-wdf7g9NbVZCeAo2iGhsjJb7I8ZFfs6X8bumfrWg82VK+8P6AlLXwk48a1ASiJQDTS7Svq2xVzZg3sGO2aXpHRA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] @@ -5760,8 +5953,8 @@ packages: cpu: [arm64] os: [openharmony] - '@rolldown/binding-openharmony-arm64@1.0.0-rc.4': - resolution: {integrity: sha512-6lcI79+X8klGiGd8yHuTgQRjuuJYNggmEml+RsyN596P23l/zf9FVmJ7K0KVKkFAeYEdg0iMUKyIxiV5vebDNQ==} + '@rolldown/binding-openharmony-arm64@1.0.0-rc.5': + resolution: {integrity: sha512-0CWY7ubu12nhzz+tkpHjoG3IRSTlWYe0wrfJRf4qqjqQSGtAYgoL9kwzdvlhaFdZ5ffVeyYw9qLsChcjUMEloQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [openharmony] @@ -5771,8 +5964,8 @@ packages: engines: {node: '>=14.0.0'} cpu: [wasm32] - '@rolldown/binding-wasm32-wasi@1.0.0-rc.4': - resolution: {integrity: sha512-wz7ohsKCAIWy91blZ/1FlpPdqrsm1xpcEOQVveWoL6+aSPKL4VUcoYmmzuLTssyZxRpEwzuIxL/GDsvpjaBtOw==} + '@rolldown/binding-wasm32-wasi@1.0.0-rc.5': + resolution: {integrity: sha512-LztXnGzv6t2u830mnZrFLRVqT/DPJ9DL4ZTz/y93rqUVkeHjMMYIYaFj+BUthiYxbVH9dH0SZYufETspKY/NhA==} engines: {node: '>=14.0.0'} cpu: [wasm32] @@ -5782,8 +5975,8 @@ packages: cpu: [arm64] os: [win32] - '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.4': - resolution: {integrity: sha512-cfiMrfuWCIgsFmcVG0IPuO6qTRHvF7NuG3wngX1RZzc6dU8FuBFb+J3MIR5WrdTNozlumfgL4cvz+R4ozBCvsQ==} + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.5': + resolution: {integrity: sha512-jUct1XVeGtyjqJXEAfvdFa8xoigYZ2rge7nYEm70ppQxpfH9ze2fbIrpHmP2tNM2vL/F6Dd0CpXhpjPbC6bSxQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [win32] @@ -5800,8 +5993,8 @@ packages: cpu: [x64] os: [win32] - '@rolldown/binding-win32-x64-msvc@1.0.0-rc.4': - resolution: {integrity: sha512-p6UeR9y7ht82AH57qwGuFYn69S6CZ7LLKdCKy/8T3zS9VTrJei2/CGsTUV45Da4Z9Rbhc7G4gyWQ/Ioamqn09g==} + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.5': + resolution: {integrity: sha512-VQ8F9ld5gw29epjnVGdrx8ugiLTe8BMqmhDYy7nGbdeDo4HAt4bgdZvLbViEhg7DZyHLpiEUlO5/jPSUrIuxRQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [win32] @@ -5809,8 +6002,8 @@ packages: '@rolldown/pluginutils@1.0.0-beta.42': resolution: {integrity: sha512-N7pQzk9CyE7q0bBN/q0J8s6Db279r5kUZc6d7/wWRe9/zXqC52HQovVyu6iXPIDY4BEzzgbVLhVFXrOuGJ22ZQ==} - '@rolldown/pluginutils@1.0.0-rc.4': - resolution: {integrity: sha512-1BrrmTu0TWfOP1riA8uakjFc9bpIUGzVKETsOtzY39pPga8zELGDl8eu1Dx7/gjM5CAz14UknsUMpBO8L+YntQ==} + '@rolldown/pluginutils@1.0.0-rc.5': + resolution: {integrity: sha512-RxlLX/DPoarZ9PtxVrQgZhPoor987YtKQqCo5zkjX+0S0yLJ7Vv515Wk6+xtTL67VONKJKxETWZwuZjss2idYw==} '@rollup/plugin-alias@5.1.1': resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} @@ -6827,10 +7020,10 @@ packages: react-dom: optional: true - '@storybook/builder-vite@10.3.0-alpha.6': - resolution: {integrity: sha512-wmMJN+Q7E7bhjwfiaXdPkUkDNysd1pjr1GffkoBHq8I2tsmXNKPVEBnw5iZMRjeEckL9nrUUDahuIIQb6KpweQ==} + '@storybook/builder-vite@10.3.0-alpha.9': + resolution: {integrity: sha512-6Ed/iDBBi9N46ihIGw+qKvnzinyhdOWuCBP11xWDDjh7Qbsm/KdPdGwXq6/O+eGer/xCRc60+a19ajxVE5ks1g==} peerDependencies: - storybook: ^10.3.0-alpha.6 + storybook: ^10.3.0-alpha.9 vite: ^5.0.0 || ^6.0.0 || ^7.0.0 '@storybook/core@8.6.12': @@ -6841,12 +7034,12 @@ packages: prettier: optional: true - '@storybook/csf-plugin@10.3.0-alpha.6': - resolution: {integrity: sha512-/elNU26xT748eDS1wpQhlqR86ujHUuPHOrvGGZeW9oRuU5hOzGyj3G9N5ccN+QQSRDeFcsHOC3M51Gk5VDlC0Q==} + '@storybook/csf-plugin@10.3.0-alpha.9': + resolution: {integrity: sha512-Al1u5Zw9X5s0LHbBAdREk70cH4t+hCLYougk+lAnL9nnLoZeaYunBi6Mcq7Z406LOTw4U+hSHZNMRANlVjP9ow==} peerDependencies: esbuild: '*' rollup: '*' - storybook: ^10.3.0-alpha.6 + storybook: ^10.3.0-alpha.9 vite: '*' webpack: '*' peerDependenciesMeta: @@ -7653,6 +7846,9 @@ packages: '@types/node@20.19.21': resolution: {integrity: sha512-CsGG2P3I5y48RPMfprQGfy4JPRZ6csfC3ltBZSRItG3ngggmNY/qs2uZKp4p9VbrpqNNSMzUZNFZKzgOGnd/VA==} + '@types/node@20.8.10': + resolution: {integrity: sha512-TlgT8JntpcbmKUFzjhsyhGfP2fsiz1Mv56im6enJ905xG1DAYesxJaeSbGqQmAw8OWPdhyJGhGSQGKRNJ45u9w==} + '@types/node@22.15.14': resolution: {integrity: sha512-BL1eyu/XWsFGTtDWOYULQEs4KR0qdtYfCxYAUYRoB7JP7h9ETYLgQTww6kH8Sj2C0pFGgrpM0XKv6/kbIzYJ1g==} @@ -7683,8 +7879,8 @@ packages: resolution: {integrity: sha512-UzjzmgY/VH3Str6DcAGTLMA1mVVhGOyARNTANExrirtp+JgxhaIOVDxq4TIRmpSi4voLv+w4HA9CC5GvhhCA0A==} deprecated: This is a stub types definition. react-tooltip provides its own type definitions, so you do not need this installed. - '@types/react@18.3.21': - resolution: {integrity: sha512-gXLBtmlcRJeT09/sI4PxVwyrku6SaNUj/6cMubjE6T6XdY1fDmBL7r0nX0jbSZPU/Xr0KuwLLZh6aOYY5d91Xw==} + '@types/react@18.3.3': + resolution: {integrity: sha512-hti/R0pS0q1/xx+TsI73XIqk26eBsISZ2R0wUijXIngRK9R/e7Xw/cXVxQK7R5JjW+SV4zGcn5hXjudkN/pLIw==} '@types/react@19.1.13': resolution: {integrity: sha512-hHkbU/eoO3EG5/MZkuFSKmYqPbSVk5byPFa3e7y/8TybHiLMACgI8seVYlicwk7H5K/rI2px9xrQp/C+AUDTiQ==} @@ -8605,6 +8801,10 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} + bare-events@2.5.4: resolution: {integrity: sha512-+gFfDkR8pj4/TrWCGUGWmJIkBwuxPS5F+a5yWjOHQt2hHvNZd5YLzadjmDUtFmMM4y429bnKLa8bYBMHcYdnQA==} @@ -8675,6 +8875,10 @@ packages: brace-expansion@2.0.1: resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + brace-expansion@5.0.3: + resolution: {integrity: sha512-fy6KJm2RawA5RcHkLa1z/ScpBeA762UF9KmZQxwIbDtRJrgLzM10depAiEQ+CXYcoiqW1/m96OAAoke2nE9EeA==} + engines: {node: 18 || 20 || >=22} + braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} @@ -8862,6 +9066,9 @@ packages: character-reference-invalid@2.0.1: resolution: {integrity: sha512-iBZ4F4wRbyORVsu0jPV7gXkOsGYjGHPmAyv+HiHG8gi5PtC9KI2j1+v8/tlibRvjoWX027ypmG/n0HtO5t7unw==} + chardet@2.1.1: + resolution: {integrity: sha512-PsezH1rqdV9VvyNhxxOW32/d75r01NY7TQCmOqomRo15ZSOKbpTFVsfjghxo6JloQUCGnH4k1LGu0R4yCLlWQQ==} + check-error@2.1.1: resolution: {integrity: sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==} engines: {node: '>= 16'} @@ -8937,6 +9144,10 @@ packages: resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} engines: {node: '>=6'} + cli-width@4.1.0: + resolution: {integrity: sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==} + engines: {node: '>= 12'} + client-only@0.0.1: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} @@ -10356,6 +10567,9 @@ packages: fast-levenshtein@2.0.6: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} + fast-levenshtein@3.0.0: + resolution: {integrity: sha512-hKKNajm46uNmTlhHSyZkmToAc56uZJwYq7yrciZjqOxnlfQwERDQJmHPUp7m1m9wx8vgOe8IaCKZ5Kv2k1DdCQ==} + fast-uri@3.0.6: resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} @@ -10367,6 +10581,10 @@ packages: resolution: {integrity: sha512-pfX9uG9Ki0yekDHx2SiuRIyFdyAr1kMIMitPvb0YBo8SUfKvia7w7FIyd/l6av85pFYRhZscS75MwMnbvY+hcQ==} hasBin: true + fastest-levenshtein@1.0.16: + resolution: {integrity: sha512-eRnCtTTtGZFpQCwhJiUOuxPQWRXVKYDn0b2PeHfXL6/Zi53SLAzAHfVhVWK2AryC/WH05kGfxhFIPvTF0SXQzg==} + engines: {node: '>= 4.9.1'} + fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} @@ -10971,10 +11189,6 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} - ignore@7.0.4: - resolution: {integrity: sha512-gJzzk+PQNznz8ysRrC0aOkBNVRBDtE1n53IqyqEf3PXrYwomFs5q4pGMizBMJF+ykh03insJ27hB8gSrD2Hn8A==} - engines: {node: '>= 4'} - ignore@7.0.5: resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} engines: {node: '>= 4'} @@ -12035,6 +12249,10 @@ packages: resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==} engines: {node: 20 || >=22} + minimatch@10.2.2: + resolution: {integrity: sha512-+G4CpNBxa5MprY+04MbgOw1v7So6n5JY166pFi9KfYwT78fxScCeSNQSNzp6dpPSW2rONOps6Ocam1wFhCgoVw==} + engines: {node: 18 || 20 || >=22} + minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -12177,6 +12395,10 @@ packages: resolution: {integrity: sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ==} hasBin: true + mute-stream@2.0.0: + resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} + engines: {node: ^18.17.0 || >=20.5.0} + mux-embed@5.9.0: resolution: {integrity: sha512-wmunL3uoPhma/tWy8PrDPZkvJpXvSFBwbD3KkC4PG8Ztjfb1X3hRJwGUAQyRz7z99b/ovLm2UTTitrkvStjH4w==} @@ -13283,6 +13505,10 @@ packages: react: '>=16.14.0' react-dom: '>=16.14.0' + react@19.0.0: + resolution: {integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==} + engines: {node: '>=0.10.0'} + react@19.1.1: resolution: {integrity: sha512-w8nqGImo45dmMIfljjMwOGtbmC/mk4CMYhWIicdSflH91J9TyCyczcPFXJzrZ/ZXcgGRFeP6BU0BEJTw6tZdfQ==} engines: {node: '>=0.10.0'} @@ -13527,8 +13753,8 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} hasBin: true - rolldown@1.0.0-rc.4: - resolution: {integrity: sha512-V2tPDUrY3WSevrvU2E41ijZlpF+5PbZu4giH+VpNraaadsJGHa4fR6IFwsocVwEXDoAdIv5qgPPxgrvKAOIPtA==} + rolldown@1.0.0-rc.5: + resolution: {integrity: sha512-0AdalTs6hNTioaCYIkAa7+xsmHBfU5hCNclZnM/lp7lGGDuUOb6N4BVNtwiomybbencDjq/waKjTImqiGCs5sw==} engines: {node: ^20.19.0 || >=22.12.0} hasBin: true @@ -14036,6 +14262,12 @@ packages: prettier: optional: true + stream-chain@2.2.5: + resolution: {integrity: sha512-1TJmBx6aSWqZ4tx7aTpBDXK0/e2hhcNSTV8+CbFJtDjbb+I1mZ8lHit0Grw9GRT+6JbIrrDd8esncgBi8aBXGA==} + + stream-json@1.9.1: + resolution: {integrity: sha512-uWkjJ+2Nt/LO9Z/JyKZbMusL8Dkh97uUBTv3AJQ74y07lVahLY4eEFsPsE97pxYBwr8nnjMAIch5eqI0gPShyw==} + streamx@2.22.0: resolution: {integrity: sha512-sLh1evHOzBy/iWRiR6d1zRcLao4gGZr3C1kzNz4fopCOKJb6xD9ub8Mpi9Mr1R6id5o43S+d93fI48UC5uM9aw==} @@ -14164,10 +14396,6 @@ packages: supermemory@4.11.1: resolution: {integrity: sha512-L5I/inWEIjtD+kw/2TAZ7ZsZa3kCYzlXXeNHd09ueFoExvCHLjzTW4SCnN6GjbhE7CZUcwTXA9SttZvihLa8gQ==} - supports-color@10.0.0: - resolution: {integrity: sha512-HRVVSbCCMbj7/kdWF9Q+bbckjBHLtHMEoJWlkmYzzdwhYMkjkOwubLM6t7NbWKjgKamGDrWL1++KrjUO1t9oAQ==} - engines: {node: '>=18'} - supports-color@10.2.2: resolution: {integrity: sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==} engines: {node: '>=18'} @@ -14836,10 +15064,6 @@ packages: resolution: {integrity: sha512-6NCPkv1ClwH+/BGE9QeoTIl09nuiAt0gS28nn1PvYXsGKRwM2TCbFA2QiilmehPDTXIe684k4rZI1yl3A1PCUw==} engines: {node: '>=18.12.0'} - unplugin@2.3.2: - resolution: {integrity: sha512-3n7YA46rROb3zSj8fFxtxC/PqoyvYQ0llwz9wtUPUutr9ig09C8gGo5CWCwHrUzlqC1LLR43kxp5vEIyH1ac1w==} - engines: {node: '>=18.12.0'} - unrs-resolver@1.7.2: resolution: {integrity: sha512-BBKpaylOW8KbHsu378Zky/dGh4ckT/4NW/0SHRABdqRLcQJ2dAOjDo9g97p04sWflm0kqPqpUatxReNV/dqI5A==} @@ -15438,6 +15662,10 @@ packages: '@cloudflare/workers-types': optional: true + wrap-ansi@6.2.0: + resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} + engines: {node: '>=8'} + wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -15588,6 +15816,10 @@ packages: resolution: {integrity: sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==} engines: {node: '>=12.20'} + yoctocolors-cjs@2.1.3: + resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} + engines: {node: '>=18'} + yoctocolors@2.1.1: resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} engines: {node: '>=18'} @@ -17714,11 +17946,6 @@ snapshots: tslib: 2.8.1 optional: true - '@emnapi/runtime@1.4.3': - dependencies: - tslib: 2.8.1 - optional: true - '@emnapi/runtime@1.5.0': dependencies: tslib: 2.8.1 @@ -18623,7 +18850,7 @@ snapshots: '@img/sharp-wasm32@0.33.5': dependencies: - '@emnapi/runtime': 1.4.3 + '@emnapi/runtime': 1.7.1 optional: true '@img/sharp-wasm32@0.34.4': @@ -18646,6 +18873,131 @@ snapshots: '@img/sharp-win32-x64@0.34.4': optional: true + '@inquirer/ansi@1.0.2': {} + + '@inquirer/checkbox@4.3.2(@types/node@20.8.10)': + dependencies: + '@inquirer/ansi': 1.0.2 + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/figures': 1.0.15 + '@inquirer/type': 3.0.10(@types/node@20.8.10) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/confirm@5.1.21(@types/node@20.8.10)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/type': 3.0.10(@types/node@20.8.10) + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/core@10.3.2(@types/node@20.8.10)': + dependencies: + '@inquirer/ansi': 1.0.2 + '@inquirer/figures': 1.0.15 + '@inquirer/type': 3.0.10(@types/node@20.8.10) + cli-width: 4.1.0 + mute-stream: 2.0.0 + signal-exit: 4.1.0 + wrap-ansi: 6.2.0 + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/editor@4.2.23(@types/node@20.8.10)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/external-editor': 1.0.3(@types/node@20.8.10) + '@inquirer/type': 3.0.10(@types/node@20.8.10) + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/expand@4.0.23(@types/node@20.8.10)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/type': 3.0.10(@types/node@20.8.10) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/external-editor@1.0.3(@types/node@20.8.10)': + dependencies: + chardet: 2.1.1 + iconv-lite: 0.7.0 + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/figures@1.0.15': {} + + '@inquirer/input@4.3.1(@types/node@20.8.10)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/type': 3.0.10(@types/node@20.8.10) + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/number@3.0.23(@types/node@20.8.10)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/type': 3.0.10(@types/node@20.8.10) + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/password@4.0.23(@types/node@20.8.10)': + dependencies: + '@inquirer/ansi': 1.0.2 + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/type': 3.0.10(@types/node@20.8.10) + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/prompts@7.10.1(@types/node@20.8.10)': + dependencies: + '@inquirer/checkbox': 4.3.2(@types/node@20.8.10) + '@inquirer/confirm': 5.1.21(@types/node@20.8.10) + '@inquirer/editor': 4.2.23(@types/node@20.8.10) + '@inquirer/expand': 4.0.23(@types/node@20.8.10) + '@inquirer/input': 4.3.1(@types/node@20.8.10) + '@inquirer/number': 3.0.23(@types/node@20.8.10) + '@inquirer/password': 4.0.23(@types/node@20.8.10) + '@inquirer/rawlist': 4.1.11(@types/node@20.8.10) + '@inquirer/search': 3.2.2(@types/node@20.8.10) + '@inquirer/select': 4.4.2(@types/node@20.8.10) + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/rawlist@4.1.11(@types/node@20.8.10)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/type': 3.0.10(@types/node@20.8.10) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/search@3.2.2(@types/node@20.8.10)': + dependencies: + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/figures': 1.0.15 + '@inquirer/type': 3.0.10(@types/node@20.8.10) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/select@4.4.2(@types/node@20.8.10)': + dependencies: + '@inquirer/ansi': 1.0.2 + '@inquirer/core': 10.3.2(@types/node@20.8.10) + '@inquirer/figures': 1.0.15 + '@inquirer/type': 3.0.10(@types/node@20.8.10) + yoctocolors-cjs: 2.1.3 + optionalDependencies: + '@types/node': 20.8.10 + + '@inquirer/type@3.0.10(@types/node@20.8.10)': + optionalDependencies: + '@types/node': 20.8.10 + '@internationalized/date@3.8.0': dependencies: '@swc/helpers': 0.5.17 @@ -18688,7 +19040,7 @@ snapshots: dependencies: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/trace-mapping': 0.3.31 '@jridgewell/remapping@2.3.5': dependencies: @@ -18813,7 +19165,7 @@ snapshots: https-proxy-agent: 7.0.6 node-fetch: 2.7.0(encoding@0.1.13) nopt: 8.1.0 - semver: 7.7.2 + semver: 7.7.3 tar: 7.4.3 transitivePeerDependencies: - encoding @@ -19050,7 +19402,7 @@ snapshots: precinct: 11.0.5 require-package-name: 2.0.1 resolve: 2.0.0-next.5 - semver: 7.7.2 + semver: 7.7.3 tmp-promise: 3.0.3 toml: 3.0.0 unixify: 1.0.0 @@ -19181,7 +19533,7 @@ snapshots: promise-all-reject-late: 1.0.1 promise-call-limit: 3.0.2 read-package-json-fast: 3.0.2 - semver: 7.7.2 + semver: 7.7.3 ssri: 10.0.6 treeverse: 3.0.0 walk-up-path: 3.0.1 @@ -19191,7 +19543,7 @@ snapshots: '@npmcli/fs@3.1.1': dependencies: - semver: 7.7.2 + semver: 7.7.3 '@npmcli/git@5.0.8': dependencies: @@ -19202,7 +19554,7 @@ snapshots: proc-log: 4.2.0 promise-inflight: 1.0.1 promise-retry: 2.0.1 - semver: 7.7.2 + semver: 7.7.3 which: 4.0.0 transitivePeerDependencies: - bluebird @@ -19225,7 +19577,7 @@ snapshots: json-parse-even-better-errors: 3.0.2 pacote: 18.0.6 proc-log: 4.2.0 - semver: 7.7.2 + semver: 7.7.3 transitivePeerDependencies: - bluebird - supports-color @@ -19242,7 +19594,7 @@ snapshots: json-parse-even-better-errors: 3.0.2 normalize-package-data: 6.0.2 proc-log: 4.2.0 - semver: 7.7.2 + semver: 7.7.3 transitivePeerDependencies: - bluebird @@ -19322,12 +19674,55 @@ snapshots: transitivePeerDependencies: - typescript + '@oclif/core@4.8.1': + dependencies: + ansi-escapes: 4.3.2 + ansis: 3.17.0 + clean-stack: 3.0.1 + cli-spinners: 2.9.2 + debug: 4.4.3(supports-color@8.1.1) + ejs: 3.1.10 + get-package-type: 0.1.0 + indent-string: 4.0.0 + is-wsl: 2.2.0 + lilconfig: 3.1.3 + minimatch: 10.2.2 + semver: 7.7.3 + string-width: 4.2.3 + supports-color: 8.1.1 + tinyglobby: 0.2.15 + widest-line: 3.1.0 + wordwrap: 1.0.0 + wrap-ansi: 7.0.0 + + '@oclif/plugin-autocomplete@3.2.40': + dependencies: + '@oclif/core': 4.8.1 + ansis: 3.17.0 + debug: 4.4.3(supports-color@8.1.1) + ejs: 3.1.10 + transitivePeerDependencies: + - supports-color + '@oclif/plugin-help@6.2.31(typescript@5.8.3)': dependencies: '@oclif/core': 4.0.0(typescript@5.8.3) transitivePeerDependencies: - typescript + '@oclif/plugin-help@6.2.37': + dependencies: + '@oclif/core': 4.8.1 + + '@oclif/plugin-not-found@3.2.74(@types/node@20.8.10)': + dependencies: + '@inquirer/prompts': 7.10.1(@types/node@20.8.10) + '@oclif/core': 4.8.1 + ansis: 3.17.0 + fast-levenshtein: 3.0.0 + transitivePeerDependencies: + - '@types/node' + '@octokit/app@15.1.6': dependencies: '@octokit/auth-app': 7.2.1 @@ -19756,7 +20151,7 @@ snapshots: '@opentelemetry/propagator-b3': 1.30.1(@opentelemetry/api@1.9.0) '@opentelemetry/propagator-jaeger': 1.30.1(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-base': 1.30.1(@opentelemetry/api@1.9.0) - semver: 7.7.2 + semver: 7.7.3 '@opentelemetry/sdk-trace-node@2.1.0(@opentelemetry/api@1.9.0)': dependencies: @@ -19779,7 +20174,7 @@ snapshots: '@opentelemetry/semantic-conventions@1.37.0': {} - '@oxc-project/types@0.113.0': {} + '@oxc-project/types@0.114.0': {} '@oxc-project/types@0.94.0': {} @@ -19892,7 +20287,7 @@ snapshots: dependencies: '@poppinss/colors': 4.1.4 '@sindresorhus/is': 7.0.1 - supports-color: 10.0.0 + supports-color: 10.2.2 '@poppinss/exception@1.2.1': {} @@ -20611,6 +21006,32 @@ snapshots: '@radix-ui/rect@1.1.1': {} + '@raycast/api@1.104.6(@types/node@20.8.10)(@types/react@18.3.3)': + dependencies: + '@oclif/core': 4.8.1 + '@oclif/plugin-autocomplete': 3.2.40 + '@oclif/plugin-help': 6.2.37 + '@oclif/plugin-not-found': 3.2.74(@types/node@20.8.10) + esbuild: 0.25.12 + react: 19.0.0 + optionalDependencies: + '@types/node': 20.8.10 + '@types/react': 18.3.3 + transitivePeerDependencies: + - supports-color + + '@raycast/utils@1.19.1(@raycast/api@1.104.6(@types/node@20.8.10)(@types/react@18.3.3))(encoding@0.1.13)': + dependencies: + '@raycast/api': 1.104.6(@types/node@20.8.10)(@types/react@18.3.3) + cross-fetch: 3.2.0(encoding@0.1.13) + dequal: 2.0.3 + object-hash: 3.0.0 + signal-exit: 4.1.0 + stream-chain: 2.2.5 + stream-json: 1.9.1 + transitivePeerDependencies: + - encoding + '@react-email/body@0.0.11(react@19.1.1)': dependencies: react: 19.1.1 @@ -20758,61 +21179,61 @@ snapshots: '@rolldown/binding-android-arm64@1.0.0-beta.42': optional: true - '@rolldown/binding-android-arm64@1.0.0-rc.4': + '@rolldown/binding-android-arm64@1.0.0-rc.5': optional: true '@rolldown/binding-darwin-arm64@1.0.0-beta.42': optional: true - '@rolldown/binding-darwin-arm64@1.0.0-rc.4': + '@rolldown/binding-darwin-arm64@1.0.0-rc.5': optional: true '@rolldown/binding-darwin-x64@1.0.0-beta.42': optional: true - '@rolldown/binding-darwin-x64@1.0.0-rc.4': + '@rolldown/binding-darwin-x64@1.0.0-rc.5': optional: true '@rolldown/binding-freebsd-x64@1.0.0-beta.42': optional: true - '@rolldown/binding-freebsd-x64@1.0.0-rc.4': + '@rolldown/binding-freebsd-x64@1.0.0-rc.5': optional: true '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.42': optional: true - '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.4': + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-rc.5': optional: true '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.42': optional: true - '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.4': + '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.5': optional: true '@rolldown/binding-linux-arm64-musl@1.0.0-beta.42': optional: true - '@rolldown/binding-linux-arm64-musl@1.0.0-rc.4': + '@rolldown/binding-linux-arm64-musl@1.0.0-rc.5': optional: true '@rolldown/binding-linux-x64-gnu@1.0.0-beta.42': optional: true - '@rolldown/binding-linux-x64-gnu@1.0.0-rc.4': + '@rolldown/binding-linux-x64-gnu@1.0.0-rc.5': optional: true '@rolldown/binding-linux-x64-musl@1.0.0-beta.42': optional: true - '@rolldown/binding-linux-x64-musl@1.0.0-rc.4': + '@rolldown/binding-linux-x64-musl@1.0.0-rc.5': optional: true '@rolldown/binding-openharmony-arm64@1.0.0-beta.42': optional: true - '@rolldown/binding-openharmony-arm64@1.0.0-rc.4': + '@rolldown/binding-openharmony-arm64@1.0.0-rc.5': optional: true '@rolldown/binding-wasm32-wasi@1.0.0-beta.42': @@ -20820,7 +21241,7 @@ snapshots: '@napi-rs/wasm-runtime': 1.0.6 optional: true - '@rolldown/binding-wasm32-wasi@1.0.0-rc.4': + '@rolldown/binding-wasm32-wasi@1.0.0-rc.5': dependencies: '@napi-rs/wasm-runtime': 1.1.1 optional: true @@ -20828,7 +21249,7 @@ snapshots: '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.42': optional: true - '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.4': + '@rolldown/binding-win32-arm64-msvc@1.0.0-rc.5': optional: true '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.42': @@ -20837,12 +21258,12 @@ snapshots: '@rolldown/binding-win32-x64-msvc@1.0.0-beta.42': optional: true - '@rolldown/binding-win32-x64-msvc@1.0.0-rc.4': + '@rolldown/binding-win32-x64-msvc@1.0.0-rc.5': optional: true '@rolldown/pluginutils@1.0.0-beta.42': {} - '@rolldown/pluginutils@1.0.0-rc.4': {} + '@rolldown/pluginutils@1.0.0-rc.5': {} '@rollup/plugin-alias@5.1.1(rollup@4.40.2)': optionalDependencies: @@ -22195,9 +22616,9 @@ snapshots: react: 19.1.1 react-dom: 19.1.1(react@19.1.1) - '@storybook/builder-vite@10.3.0-alpha.6(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5))': + '@storybook/builder-vite@10.3.0-alpha.9(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5))': dependencies: - '@storybook/csf-plugin': 10.3.0-alpha.6(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5)) + '@storybook/csf-plugin': 10.3.0-alpha.9(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5)) storybook: 8.6.12(prettier@3.7.4) ts-dedent: 2.2.0 vite: 6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1) @@ -22227,7 +22648,7 @@ snapshots: - supports-color - utf-8-validate - '@storybook/csf-plugin@10.3.0-alpha.6(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5))': + '@storybook/csf-plugin@10.3.0-alpha.9(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5))': dependencies: storybook: 8.6.12(prettier@3.7.4) unplugin: 2.3.10 @@ -22995,7 +23416,7 @@ snapshots: '@types/jsdom@21.1.7': dependencies: - '@types/node': 20.17.43 + '@types/node': 20.19.21 '@types/tough-cookie': 4.0.5 parse5: 7.3.0 @@ -23042,7 +23463,7 @@ snapshots: '@types/node-fetch@2.6.12': dependencies: - '@types/node': 20.17.43 + '@types/node': 20.19.21 form-data: 4.0.2 '@types/node@10.17.60': {} @@ -23061,6 +23482,10 @@ snapshots: dependencies: undici-types: 6.21.0 + '@types/node@20.8.10': + dependencies: + undici-types: 5.26.5 + '@types/node@22.15.14': dependencies: undici-types: 6.21.0 @@ -23084,7 +23509,7 @@ snapshots: '@types/react-responsive-masonry@2.6.0': dependencies: - '@types/react': 18.3.21 + '@types/react': 19.1.13 '@types/react-tooltip@4.2.4(react-dom@19.1.1(react@19.1.1))(react@19.1.1)': dependencies: @@ -23093,7 +23518,7 @@ snapshots: - react - react-dom - '@types/react@18.3.21': + '@types/react@18.3.3': dependencies: '@types/prop-types': 15.7.14 csstype: 3.1.3 @@ -23249,7 +23674,7 @@ snapshots: debug: 4.4.3(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 - semver: 7.7.1 + semver: 7.7.3 tsutils: 3.21.0(typescript@5.8.3) optionalDependencies: typescript: 5.8.3 @@ -23266,7 +23691,7 @@ snapshots: '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.8.3) eslint: 8.57.1 eslint-scope: 5.1.1 - semver: 7.7.1 + semver: 7.7.3 transitivePeerDependencies: - supports-color - typescript @@ -23281,7 +23706,7 @@ snapshots: '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.8.3) eslint: 9.30.1(jiti@2.6.1) eslint-scope: 5.1.1 - semver: 7.7.1 + semver: 7.7.3 transitivePeerDependencies: - supports-color - typescript @@ -24449,6 +24874,8 @@ snapshots: balanced-match@1.0.2: {} + balanced-match@4.0.4: {} + bare-events@2.5.4: optional: true @@ -24515,7 +24942,7 @@ snapshots: dependencies: ansi-align: 3.0.1 camelcase: 8.0.0 - chalk: 5.4.1 + chalk: 5.6.2 cli-boxes: 3.0.0 string-width: 7.2.0 type-fest: 4.41.0 @@ -24531,6 +24958,10 @@ snapshots: dependencies: balanced-match: 1.0.2 + brace-expansion@5.0.3: + dependencies: + balanced-match: 4.0.4 + braces@3.0.3: dependencies: fill-range: 7.1.1 @@ -24744,6 +25175,8 @@ snapshots: character-reference-invalid@2.0.1: {} + chardet@2.1.1: {} + check-error@2.1.1: {} chokidar@3.6.0: @@ -24802,6 +25235,8 @@ snapshots: cli-spinners@2.9.2: {} + cli-width@4.1.0: {} + client-only@0.0.1: {} clipanion@3.2.1(typanion@3.14.0): @@ -26296,7 +26731,7 @@ snapshots: ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.1 + debug: 4.4.3(supports-color@8.1.1) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 @@ -26384,8 +26819,8 @@ snapshots: espree@9.6.1: dependencies: - acorn: 8.14.1 - acorn-jsx: 5.3.2(acorn@8.14.1) + acorn: 8.15.0 + acorn-jsx: 5.3.2(acorn@8.15.0) eslint-visitor-keys: 3.4.3 esprima@4.0.1: {} @@ -26597,6 +27032,10 @@ snapshots: fast-levenshtein@2.0.6: {} + fast-levenshtein@3.0.0: + dependencies: + fastest-levenshtein: 1.0.16 + fast-uri@3.0.6: {} fast-xml-parser@4.4.1: @@ -26607,6 +27046,8 @@ snapshots: dependencies: strnum: 2.1.1 + fastest-levenshtein@1.0.16: {} + fastq@1.19.1: dependencies: reusify: 1.1.0 @@ -26999,7 +27440,7 @@ snapshots: dependencies: '@sindresorhus/merge-streams': 2.3.0 fast-glob: 3.3.3 - ignore: 7.0.4 + ignore: 7.0.5 path-type: 6.0.0 slash: 5.1.0 unicorn-magic: 0.3.0 @@ -27306,8 +27747,6 @@ snapshots: ignore@5.3.2: {} - ignore@7.0.4: {} - ignore@7.0.5: {} imagescript@1.3.1: {} @@ -27903,7 +28342,7 @@ snapshots: log-symbols@6.0.0: dependencies: - chalk: 5.4.1 + chalk: 5.6.2 is-unicode-supported: 1.3.0 log-symbols@7.0.1: @@ -27998,7 +28437,7 @@ snapshots: make-dir@4.0.0: dependencies: - semver: 7.7.2 + semver: 7.7.3 make-error@1.3.6: optional: true @@ -28613,6 +29052,10 @@ snapshots: dependencies: '@isaacs/brace-expansion': 5.0.0 + minimatch@10.2.2: + dependencies: + brace-expansion: 5.0.3 + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 @@ -28747,6 +29190,8 @@ snapshots: mustache@4.2.0: {} + mute-stream@2.0.0: {} + mux-embed@5.9.0: {} mysql2@3.15.2: @@ -28928,7 +29373,7 @@ snapshots: defu: 6.1.4 destr: 2.0.5 dot-prop: 9.0.0 - esbuild: 0.25.5 + esbuild: 0.25.12 escape-string-regexp: 5.0.0 etag: 1.8.1 exsolve: 1.0.5 @@ -28958,7 +29403,7 @@ snapshots: rollup: 4.40.2 rollup-plugin-visualizer: 5.14.0(rollup@4.40.2) scule: 1.3.0 - semver: 7.7.2 + semver: 7.7.3 serve-placeholder: 2.0.2 serve-static: 2.2.0 source-map: 0.7.4 @@ -29045,7 +29490,7 @@ snapshots: make-fetch-happen: 13.0.1 nopt: 7.2.1 proc-log: 4.2.0 - semver: 7.7.2 + semver: 7.7.3 tar: 6.2.1 which: 4.0.0 transitivePeerDependencies: @@ -29078,7 +29523,7 @@ snapshots: normalize-package-data@6.0.2: dependencies: hosted-git-info: 7.0.2 - semver: 7.7.2 + semver: 7.7.3 validate-npm-package-license: 3.0.4 normalize-path@2.1.1: @@ -29097,7 +29542,7 @@ snapshots: npm-install-checks@6.3.0: dependencies: - semver: 7.7.2 + semver: 7.7.3 npm-normalize-package-bin@3.0.1: {} @@ -29105,7 +29550,7 @@ snapshots: dependencies: hosted-git-info: 7.0.2 proc-log: 4.2.0 - semver: 7.7.2 + semver: 7.7.3 validate-npm-package-name: 5.0.1 npm-packlist@8.0.2: @@ -29117,7 +29562,7 @@ snapshots: npm-install-checks: 6.3.0 npm-normalize-package-bin: 3.0.1 npm-package-arg: 11.0.3 - semver: 7.7.2 + semver: 7.7.3 npm-registry-fetch@17.1.0: dependencies: @@ -29330,7 +29775,7 @@ snapshots: ora@8.2.0: dependencies: - chalk: 5.4.1 + chalk: 5.6.2 cli-cursor: 5.0.0 cli-spinners: 2.9.2 is-interactive: 2.0.0 @@ -30033,6 +30478,8 @@ snapshots: react: 19.1.1 react-dom: 19.1.1(react@19.1.1) + react@19.0.0: {} + react@19.1.1: {} read-cache@1.0.0: @@ -30347,7 +30794,7 @@ snapshots: dependencies: glob: 7.2.3 - rolldown-plugin-dts@0.16.11(rolldown@1.0.0-rc.4)(typescript@5.8.3): + rolldown-plugin-dts@0.16.11(rolldown@1.0.0-rc.5)(typescript@5.8.3): dependencies: '@babel/generator': 7.28.3 '@babel/parser': 7.28.4 @@ -30358,7 +30805,7 @@ snapshots: dts-resolver: 2.1.2 get-tsconfig: 4.11.0 magic-string: 0.30.19 - rolldown: 1.0.0-rc.4 + rolldown: 1.0.0-rc.5 optionalDependencies: typescript: 5.8.3 transitivePeerDependencies: @@ -30386,24 +30833,24 @@ snapshots: '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.42 '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.42 - rolldown@1.0.0-rc.4: + rolldown@1.0.0-rc.5: dependencies: - '@oxc-project/types': 0.113.0 - '@rolldown/pluginutils': 1.0.0-rc.4 + '@oxc-project/types': 0.114.0 + '@rolldown/pluginutils': 1.0.0-rc.5 optionalDependencies: - '@rolldown/binding-android-arm64': 1.0.0-rc.4 - '@rolldown/binding-darwin-arm64': 1.0.0-rc.4 - '@rolldown/binding-darwin-x64': 1.0.0-rc.4 - '@rolldown/binding-freebsd-x64': 1.0.0-rc.4 - '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.4 - '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.4 - '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.4 - '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.4 - '@rolldown/binding-linux-x64-musl': 1.0.0-rc.4 - '@rolldown/binding-openharmony-arm64': 1.0.0-rc.4 - '@rolldown/binding-wasm32-wasi': 1.0.0-rc.4 - '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.4 - '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.4 + '@rolldown/binding-android-arm64': 1.0.0-rc.5 + '@rolldown/binding-darwin-arm64': 1.0.0-rc.5 + '@rolldown/binding-darwin-x64': 1.0.0-rc.5 + '@rolldown/binding-freebsd-x64': 1.0.0-rc.5 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-rc.5 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-rc.5 + '@rolldown/binding-linux-arm64-musl': 1.0.0-rc.5 + '@rolldown/binding-linux-x64-gnu': 1.0.0-rc.5 + '@rolldown/binding-linux-x64-musl': 1.0.0-rc.5 + '@rolldown/binding-openharmony-arm64': 1.0.0-rc.5 + '@rolldown/binding-wasm32-wasi': 1.0.0-rc.5 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.5 + '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.5 rollup-plugin-inject@3.0.2: dependencies: @@ -30641,7 +31088,7 @@ snapshots: dependencies: color: 4.2.3 detect-libc: 2.0.4 - semver: 7.7.1 + semver: 7.7.3 optionalDependencies: '@img/sharp-darwin-arm64': 0.33.5 '@img/sharp-darwin-x64': 0.33.5 @@ -31016,7 +31463,7 @@ snapshots: storybook-solidjs-vite@1.0.0-beta.7(@storybook/test@8.6.12(storybook@8.6.12(prettier@3.7.4)))(esbuild@0.25.5)(rollup@4.40.2)(solid-js@1.9.6)(storybook@8.6.12(prettier@3.7.4))(vite-plugin-solid@2.11.6(@testing-library/jest-dom@6.5.0)(solid-js@1.9.6)(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1)))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5)): dependencies: - '@storybook/builder-vite': 10.3.0-alpha.6(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5)) + '@storybook/builder-vite': 10.3.0-alpha.9(esbuild@0.25.5)(rollup@4.40.2)(storybook@8.6.12(prettier@3.7.4))(vite@6.3.5(@types/node@22.15.17)(jiti@2.6.1)(terser@5.44.0)(yaml@2.8.1))(webpack@5.101.3(esbuild@0.25.5)) '@storybook/types': 9.0.0-alpha.1(storybook@8.6.12(prettier@3.7.4)) magic-string: 0.30.17 solid-js: 1.9.6 @@ -31054,6 +31501,12 @@ snapshots: - supports-color - utf-8-validate + stream-chain@2.2.5: {} + + stream-json@1.9.1: + dependencies: + stream-chain: 2.2.5 + streamx@2.22.0: dependencies: fast-fifo: 1.3.2 @@ -31174,7 +31627,7 @@ snapshots: stripe@14.25.0: dependencies: - '@types/node': 20.17.43 + '@types/node': 20.19.21 qs: 6.14.0 strnum@1.1.2: {} @@ -31214,8 +31667,6 @@ snapshots: supermemory@4.11.1: {} - supports-color@10.0.0: {} - supports-color@10.2.2: {} supports-color@5.5.0: @@ -31663,8 +32114,8 @@ snapshots: diff: 8.0.2 empathic: 2.0.0 hookable: 5.5.3 - rolldown: 1.0.0-rc.4 - rolldown-plugin-dts: 0.16.11(rolldown@1.0.0-rc.4)(typescript@5.8.3) + rolldown: 1.0.0-rc.5 + rolldown-plugin-dts: 0.16.11(rolldown@1.0.0-rc.5)(typescript@5.8.3) semver: 7.7.2 tinyexec: 1.0.1 tinyglobby: 0.2.15 @@ -31839,10 +32290,10 @@ snapshots: unctx@2.4.1: dependencies: - acorn: 8.14.1 + acorn: 8.15.0 estree-walker: 3.0.3 magic-string: 0.30.17 - unplugin: 2.3.2 + unplugin: 2.3.10 undici-types@5.26.5: {} @@ -31913,7 +32364,7 @@ snapshots: unimport@3.14.6(rollup@4.40.2): dependencies: '@rollup/pluginutils': 5.1.4(rollup@4.40.2) - acorn: 8.14.1 + acorn: 8.15.0 escape-string-regexp: 5.0.0 estree-walker: 3.0.3 fast-glob: 3.3.3 @@ -32060,7 +32511,7 @@ snapshots: unplugin@1.16.1: dependencies: - acorn: 8.14.1 + acorn: 8.15.0 webpack-virtual-modules: 0.6.2 unplugin@2.0.0-beta.1: @@ -32075,12 +32526,6 @@ snapshots: picomatch: 4.0.3 webpack-virtual-modules: 0.6.2 - unplugin@2.3.2: - dependencies: - acorn: 8.15.0 - picomatch: 4.0.3 - webpack-virtual-modules: 0.6.2 - unrs-resolver@1.7.2: dependencies: napi-postinstall: 0.2.3 @@ -32355,7 +32800,7 @@ snapshots: vite-node@2.1.9(@types/node@22.15.17)(terser@5.44.0): dependencies: cac: 6.7.14 - debug: 4.4.1 + debug: 4.4.3(supports-color@8.1.1) es-module-lexer: 1.7.0 pathe: 1.1.2 vite: 5.4.19(@types/node@22.15.17)(terser@5.44.0) @@ -32889,6 +33334,12 @@ snapshots: - bufferutil - utf-8-validate + wrap-ansi@6.2.0: + dependencies: + ansi-styles: 4.3.0 + string-width: 4.2.3 + strip-ansi: 6.0.1 + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -32988,6 +33439,8 @@ snapshots: yocto-queue@1.2.1: {} + yoctocolors-cjs@2.1.3: {} + yoctocolors@2.1.1: {} youch-core@0.3.2: