diff --git a/.claude/skills/generate-changelog/SKILL.md b/.claude/skills/generate-changelog/SKILL.md index 59f7968b..848f81e2 100644 --- a/.claude/skills/generate-changelog/SKILL.md +++ b/.claude/skills/generate-changelog/SKILL.md @@ -8,6 +8,7 @@ description: Generate changelog entries from merged PRs since the last release. Generate changelog entries by analyzing merged PRs since the last release. Execute these phases in order: + 1. **Data Gathering** — find last release, fetch PRs, classify, generate entries 2. **Changelog Update** — write entries into CHANGELOG.md 3. **Review & Approval** — present the actual diff to the user for review @@ -20,11 +21,13 @@ Execute these phases in order: ### Step 1.1: Find the latest release tag Run: + ```bash git tag --sort=-creatordate | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+$' | head -1 ``` Record as `LAST_TAG`. Get the tag's date: + ```bash git log -1 --format=%aI $LAST_TAG ``` @@ -46,12 +49,13 @@ Use the date portion only from `TAG_DATE` (e.g. `2026-02-09`). ### Step 1.4: Filter PRs **Skip rules** (in order): + 1. PR has the `changelog` label → skip (already tracked in a previous changelog update) 2. Author login is `dependabot` or `dependabot[bot]` → skip 3. Title matches version bump patterns → skip: - - Starts with `Switch to` and contains `-next` - - Title is a bare version like `vX.Y.Z` - - Title starts with `Release v` + - Starts with `Switch to` and contains `-next` + - Title is a bare version like `vX.Y.Z` + - Title starts with `Release v` 4. Title contains `update changelog` (case insensitive) → skip 5. Title is purely CI/metadata (readme badges, workflow config) AND body does NOT contain `[x] This PR should be mentioned in the changelog` → skip @@ -62,9 +66,9 @@ Use the date portion only from `TAG_DATE` (e.g. `2026-02-09`). 1. If body contains `[x] This PR introduces a breaking change` → **breaking** 2. If body contains `[ ] This PR introduces a breaking change` → **normal** 3. If no checkbox info, analyze title and body: - - Breaking keywords: "refactor", "rename", "remove", "replace", "migrate", "breaking", "deprecate" - - Clearly non-breaking (bug fix, docs, minor enhancement) → **normal** - - Uncertain → flag for user review + - Breaking keywords: "refactor", "rename", "remove", "replace", "migrate", "breaking", "deprecate" + - Clearly non-breaking (bug fix, docs, minor enhancement) → **normal** + - Uncertain → flag for user review ### Step 1.6: Assign category tags @@ -75,11 +79,13 @@ Pick the most fitting tag from the vocabulary (Step 1.2) based on PR title and b #### Entry Format **Normal changes:** + ``` - [tag] Description [#N](https://github.com/OWNER/REPO/pull/N) ``` **Breaking changes** with migration sub-items: + ``` - [tag] Description [#N](https://github.com/OWNER/REPO/pull/N) - Migration detail 1 @@ -87,6 +93,7 @@ Pick the most fitting tag from the vocabulary (Step 1.2) based on PR title and b ``` **Multiple PRs for the same change:** + ``` - [tag] Description [#N](url) [#M](url) ``` @@ -94,14 +101,16 @@ Pick the most fitting tag from the vocabulary (Step 1.2) based on PR title and b #### Style Guide **Formatting:** -- Entry prefix: `- ` (dash + exactly 3 spaces) -- Sub-item indent: 4 spaces + `- ` (4 spaces from parent dash) -- Sub-sub-item indent: 8 spaces + `- ` + +- Entry prefix: `- ` (dash + 1 space — enforced by prettier) +- Sub-item indent: 4 spaces + `- ` (4 spaces from parent dash) +- Sub-sub-item indent: 8 spaces + `- ` - Single space between `[tag]` and description text - Single space before PR link at end of line - PR links are mandatory, full URLs: `[#123](https://github.com/OWNER/REPO/pull/123)` **Wording:** + - Always start with a **present tense imperative verb** (not past tense) - Common verbs: Fix, Improve, Add, Update, Extend, Ensure, Introduce, Remove, Refactor, Rename, Provide, Allow, Support - **Bug fixes**: "Fix a bug that caused/prevented...", "Fix X behavior" @@ -111,19 +120,22 @@ Pick the most fitting tag from the vocabulary (Step 1.2) based on PR title and b - Be specific — never "Fix various issues" **Capitalization:** + - Tags are always lowercase: `[diagram]`, not `[Diagram]` - Description starts lowercase after the tag (unless proper noun or code element) - Section headers: Title Case (`### Potentially Breaking Changes`) **Description cleanup from PR title:** + - Remove issue tracker prefixes (e.g. `GLSP-1234:`, `GH-123:`, `ISSUE-456:`) - Remove conventional commit prefixes: `fix:`, `feat:`, `chore:` - Rephrase bug-report style to changelog style: - - BAD: "Edit label UI does not resize on graph zoom" - - GOOD: "Fix edit label UI not resizing on graph zoom" + - BAD: "Edit label UI does not resize on graph zoom" + - GOOD: "Fix edit label UI not resizing on graph zoom" - Keep concise — one line **Breaking changes:** + - Describe what changed, why it's breaking, and how to migrate - Extract migration sub-items from the PR body's "What it does" section @@ -136,11 +148,13 @@ Pick the most fitting tag from the vocabulary (Step 1.2) based on PR title and b Read `CHANGELOG.md` in the repository root. **Active section detection:** + - An active section has the `- active` suffix (e.g. `## v2.7.0 - active`) - If an active section exists → merge new entries into it - If the topmost section is a released version (no `- active` suffix) → create a new active section above it **Creating a new section:** + - Bump the minor version of `LAST_TAG` (e.g. `v2.6.0` → `v2.7.0`) - Insert after the title line, before the first `## ` heading: @@ -149,17 +163,18 @@ Read `CHANGELOG.md` in the repository root. ### Changes -- [tag] Entry [#N](url) +- [tag] Entry [#N](url) ### Potentially Breaking Changes -- [tag] Entry [#N](url) - - Sub-item detail +- [tag] Entry [#N](url) + - Sub-item detail ``` Only include "Potentially Breaking Changes" if there are breaking entries. **Merging into existing active section:** + - Check PR numbers against existing entries to avoid duplicates - Append new entries to the appropriate subsection - Create missing subsections as needed @@ -185,6 +200,7 @@ Present the diff to the user. List any entries flagged as uncertain (category or breaking status) and ask the user to resolve them. Even if nothing is uncertain, ask: + > "Does everything look correct, or would you like to adjust any entries?" ### Step 3.3: Collect user feedback @@ -200,11 +216,13 @@ Even if nothing is uncertain, ask: ## Phase 4: PR Creation (Optional) Only execute this phase if the user explicitly requests a PR (either in their initial prompt or after reviewing the changelog). If the user hasn't mentioned a PR, ask after approval: + > "Would you like me to create a PR for this changelog update, or are you done?" ### Step 4.1: Determine the branch name Check if `changelog-update` exists on remote: + ```bash git ls-remote --heads origin changelog-update ``` @@ -229,6 +247,7 @@ Report the PR URL. ### Step 4.4: Label referenced PRs Add the `changelog` label to every PR mentioned in the new entries: + ```bash gh pr edit PR_NUMBER --add-label "changelog" ``` diff --git a/.vscode/launch.json b/.vscode/launch.json index 8d79cde7..3f2f35e6 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -51,7 +51,8 @@ "--app-project-path=${workspaceRoot}/examples/browser-app" ], "env": { - "NODE_ENV": "development" + "NODE_ENV": "development", + "GLSP_MCP_SERVER_PORT": "64577" }, "sourceMaps": true, "outFiles": [ @@ -85,12 +86,14 @@ "--integratedNode" ], "env": { - "NODE_ENV": "development" + "NODE_ENV": "development", + "GLSP_MCP_SERVER_PORT": "64577" }, "sourceMaps": true, "outFiles": [ "${workspaceRoot}/node_modules/@theia/*/lib/**/*.js", "${workspaceRoot}/node_modules/@eclipse-glsp/server/*/lib/**/*.js", + "${workspaceRoot}/node_modules/@eclipse-glsp/server-mcp/*/lib/**/*.js", "${workspaceRoot}/node_modules/@eclipse-glsp/graph/*/lib/**/*.js", "${workspaceRoot}/node_modules/@eclipse-glsp/layout-elk/*/lib/**/*.js", "${workspaceRoot}/node_modules/@eclipse-glsp-examples/workflow-server/*/lib/**/*.js", @@ -123,7 +126,8 @@ "--logLevel=debug" ], "env": { - "NODE_ENV": "development" + "NODE_ENV": "development", + "GLSP_MCP_SERVER_PORT": "64577" }, "sourceMaps": true, "outFiles": [ @@ -158,7 +162,8 @@ "--logLevel=debug" ], "env": { - "NODE_ENV": "development" + "NODE_ENV": "development", + "GLSP_MCP_SERVER_PORT": "64577" }, "sourceMaps": true, "outFiles": [ @@ -192,7 +197,8 @@ ], "env": { "NODE_ENV": "development", - "WEBSOCKET_PORT": "8081" + "WEBSOCKET_PORT": "8081", + "GLSP_MCP_SERVER_PORT": "64577" }, "sourceMaps": true, "outFiles": [ diff --git a/CHANGELOG.md b/CHANGELOG.md index bbcf7361..160c7633 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,8 @@ ### Potentially Breaking Changes -- [build] Update to Node 22 and Theia 1.70.0 example projects [#290](https://github.com/eclipse-glsp/glsp-theia-integration/pull/290) - - Theia >= 1.70.0 requires Node `22` and electron `39.7.0` +- [build] Update to Node 22 and Theia 1.70.0 example projects [#290](https://github.com/eclipse-glsp/glsp-theia-integration/pull/290) + - Theia >= 1.70.0 requires Node `22` and electron `39.7.0` ## [v2.6.0 - 10/02/2026](https://github.com/eclipse-glsp/glsp-theia-integration/releases/tag/v2.6.0) diff --git a/configs/local-linking.sh b/configs/local-linking.sh index b3f423a9..87b4710e 100755 --- a/configs/local-linking.sh +++ b/configs/local-linking.sh @@ -10,6 +10,10 @@ function linkClient() { echo "--- Link Client packages ---" cd $2/glsp-client || exit + # Defensive: stale nested @eclipse-glsp copies from prior installs shadow the workspace + # symlinks via Node's nearest-node_modules-wins resolution → bundle fails. + # Remove them before re-linking. + find packages examples -path '*/node_modules/@eclipse-glsp' -type d -exec rm -rf {} + 2>/dev/null || true cd examples/workflow-glsp || exit yarn $1 @@ -42,6 +46,9 @@ function linkClient() { linkNodeServer() { echo $2/glsp-server-node if [ -d $2/glsp-server-node ]; then + cd $2/glsp-server-node || exit + # Same defensive cleanup as linkClient — stale nested @eclipse-glsp copies shadow workspace links. + find packages examples -path '*/node_modules/@eclipse-glsp' -type d -exec rm -rf {} + 2>/dev/null || true cd $2/glsp-server-node/packages/graph || exit yarn $1 cd ../layout-elk || exit @@ -84,13 +91,13 @@ if [[ "$2" != "--unlink" ]]; then cd $baseDir/glsp-theia-integration || exit yarn link sprotty sprotty-protocol @eclipse-glsp/client @eclipse-glsp/protocol @eclipse-glsp/sprotty @eclipse-glsp-examples/workflow-glsp vscode-jsonrpc inversify if [ -d $baseDir/glsp-server-node ]; then - yarn link @eclipse-glsp/server @eclipse-glsp/graph @eclipse-glsp/layout-elk @eclipse-glsp-examples/workflow-server @eclipse-glsp-examples/workflow-server-bundled + yarn link @eclipse-glsp/server @eclipse-glsp/server-mcp @eclipse-glsp/graph @eclipse-glsp/layout-elk @eclipse-glsp-examples/workflow-server @eclipse-glsp-examples/workflow-server-bundled fi yarn install --force else yarn unlink sprotty sprotty-protocol @eclipse-glsp/client @eclipse-glsp/protocol @eclipse-glsp/sprotty @eclipse-glsp-examples/workflow-glsp vscode-jsonrpc inversify if [ -d $baseDir/glsp-server-node ]; then - yarn unlink @eclipse-glsp/server @eclipse-glsp/graph @eclipse-glsp/layout-elk @eclipse-glsp-examples/workflow-server @eclipse-glsp-examples/workflow-server-bundled + yarn unlink @eclipse-glsp/server @eclipse-glsp/server-mcp @eclipse-glsp/graph @eclipse-glsp/layout-elk @eclipse-glsp-examples/workflow-server @eclipse-glsp-examples/workflow-server-bundled fi yarn yarn install --force diff --git a/examples/browser-app/package.json b/examples/browser-app/package.json index 6c58b19e..8f83946c 100644 --- a/examples/browser-app/package.json +++ b/examples/browser-app/package.json @@ -15,6 +15,9 @@ }, "dependencies": { "@eclipse-glsp-examples/workflow-theia": "2.7.0-next", + "@theia/ai-anthropic": "~1.70.0", + "@theia/ai-ide": "~1.70.0", + "@theia/ai-openai": "~1.70.0", "@theia/core": "~1.70.0", "@theia/editor": "~1.70.0", "@theia/filesystem": "~1.70.0", @@ -48,4 +51,4 @@ } } } -} \ No newline at end of file +} diff --git a/examples/workflow-theia/package.json b/examples/workflow-theia/package.json index 891c21bb..ec8ba645 100644 --- a/examples/workflow-theia/package.json +++ b/examples/workflow-theia/package.json @@ -37,7 +37,8 @@ "@eclipse-glsp-examples/workflow-glsp": "next", "@eclipse-glsp-examples/workflow-server": "next", "@eclipse-glsp-examples/workflow-server-bundled": "next", - "@eclipse-glsp/theia-integration": "2.7.0-next" + "@eclipse-glsp/theia-integration": "2.7.0-next", + "@eclipse-glsp/theia-mcp-integration": "2.7.0-next" }, "publishConfig": { "access": "public" diff --git a/examples/workflow-theia/src/browser/workflow-glsp-client-contribution.ts b/examples/workflow-theia/src/browser/workflow-glsp-client-contribution.ts index a6f3f703..2ad05318 100644 --- a/examples/workflow-theia/src/browser/workflow-glsp-client-contribution.ts +++ b/examples/workflow-theia/src/browser/workflow-glsp-client-contribution.ts @@ -1,5 +1,5 @@ /******************************************************************************** - * Copyright (c) 2019-2023 EclipseSource and others. + * Copyright (c) 2019-2026 EclipseSource and others. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0 which is available at @@ -14,6 +14,7 @@ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 ********************************************************************************/ import { Args, MaybePromise } from '@eclipse-glsp/client'; +import { McpInitializeParameters } from '@eclipse-glsp/protocol'; import { BaseGLSPClientContribution, WebSocketConnectionOptions } from '@eclipse-glsp/theia-integration/lib/browser'; import { EnvVariablesServer } from '@theia/core/lib/common/env-variables'; import { inject, injectable } from '@theia/core/shared/inversify'; @@ -32,6 +33,14 @@ export class WorkflowGLSPClientContribution extends BaseGLSPClientContribution { readonly id = WorkflowLanguage.contributionId; readonly fileExtensions = WorkflowLanguage.fileExtensions; + protected override async createInitializeParameters(): Promise { + const mcpPort = await this.getMcpServerPortFromEnv(); + return { + ...(await super.createInitializeParameters()), + mcpServer: { name: 'glsp-workflow', ...(mcpPort !== undefined && { port: mcpPort }) } + }; + } + protected override createInitializeOptions(): MaybePromise { return { ['timestamp']: new Date().toString(), @@ -50,14 +59,22 @@ export class WorkflowGLSPClientContribution extends BaseGLSPClientContribution { return undefined; } - protected async getWebSocketPortFromEnv(): Promise { - const envVar = await this.envVariablesServer.getValue('WEBSOCKET_PORT'); + protected getWebSocketPortFromEnv(): Promise { + return this.getPortFromEnv('WEBSOCKET_PORT'); + } + + protected getMcpServerPortFromEnv(): Promise { + return this.getPortFromEnv('GLSP_MCP_SERVER_PORT'); + } + + protected async getPortFromEnv(envVarName: string): Promise { + const envVar = await this.envVariablesServer.getValue(envVarName); if (envVar && envVar.value) { - const webSocketPort = Number.parseInt(envVar.value, 10); - if (isNaN(webSocketPort) || webSocketPort < 0 || webSocketPort > 65535) { - throw new Error('Value of environment variable WEBSOCKET_PORT is not a valid port'); + const port = Number.parseInt(envVar.value, 10); + if (isNaN(port) || port < 0 || port > 65535) { + throw new Error(`Value of environment variable ${envVarName} is not a valid port`); } - return webSocketPort; + return port; } return undefined; } diff --git a/examples/workflow-theia/src/node/workflow-glsp-node-server-contribution.ts b/examples/workflow-theia/src/node/workflow-glsp-node-server-contribution.ts index f135c706..2ab0591d 100644 --- a/examples/workflow-theia/src/node/workflow-glsp-node-server-contribution.ts +++ b/examples/workflow-theia/src/node/workflow-glsp-node-server-contribution.ts @@ -14,7 +14,12 @@ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 ********************************************************************************/ import { WorkflowDiagramModule, WorkflowLayoutConfigurator, WorkflowServerModule } from '@eclipse-glsp-examples/workflow-server/node'; -import { configureELKLayoutModule } from '@eclipse-glsp/layout-elk'; +// Deep import: the workflow-server's `common/index` does not yet re-export the MCP modules. +import { + WorkflowMcpDiagramModule, + WorkflowMcpServerModule +} from '@eclipse-glsp-examples/workflow-server/lib/common/mcp/workflow-mcp-module'; +import { ElkLayoutModule } from '@eclipse-glsp/layout-elk'; import { GModelStorage, LogLevel, createAppModule } from '@eclipse-glsp/server/node'; import { GLSPNodeServerContribution } from '@eclipse-glsp/theia-integration/lib/node'; import { ContainerModule, injectable } from '@theia/core/shared/inversify'; @@ -26,12 +31,13 @@ export const LOG_DIR = join(__dirname, '..', '..', '..', '..', 'logs'); export class WorkflowGLSPNodeServerContribution extends GLSPNodeServerContribution { protected override createServerModules(): ContainerModule[] { const appModule = createAppModule({ logLevel: LogLevel.info, logDir: LOG_DIR, fileLog: true, consoleLog: false }); - const elkLayoutModule = configureELKLayoutModule({ algorithms: ['layered'], layoutConfigurator: WorkflowLayoutConfigurator }); + const elkLayoutModule = new ElkLayoutModule({ algorithms: ['layered'], layoutConfigurator: WorkflowLayoutConfigurator }); const mainModule = new WorkflowServerModule().configureDiagramModule( new WorkflowDiagramModule(() => GModelStorage), - elkLayoutModule + elkLayoutModule, + new WorkflowMcpDiagramModule() ); - return [appModule, mainModule]; + return [appModule, mainModule, new WorkflowMcpServerModule()]; } readonly id = WorkflowLanguage.contributionId; } diff --git a/examples/workflow-theia/tsconfig.json b/examples/workflow-theia/tsconfig.json index c75a22fa..a77a3640 100644 --- a/examples/workflow-theia/tsconfig.json +++ b/examples/workflow-theia/tsconfig.json @@ -9,6 +9,9 @@ "references": [ { "path": "../../packages/theia-integration" + }, + { + "path": "../../packages/theia-mcp-integration" } ] } diff --git a/package.json b/package.json index a8786bb1..ae0ae5d1 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "version": "2.7.0-next", "private": true, "workspaces": [ - "packages/theia-integration", + "packages/*", "examples/*" ], "scripts": { diff --git a/packages/theia-integration/src/browser/diagram/features/export/theia-export-command-handler.ts b/packages/theia-integration/src/browser/diagram/features/export/theia-export-command-handler.ts new file mode 100644 index 00000000..7ce21782 --- /dev/null +++ b/packages/theia-integration/src/browser/diagram/features/export/theia-export-command-handler.ts @@ -0,0 +1,127 @@ +/******************************************************************************** + * Copyright (c) 2026 EclipseSource and others. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the Eclipse + * Public License v. 2.0 are satisfied: GNU General Public License, version 2 + * with the GNU Classpath Exception which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + ********************************************************************************/ +import { ExportFormat, ExportResultAction, RequestExportAction } from '@eclipse-glsp/client'; +import { CommandHandler, MessageService, URI } from '@theia/core'; +import { ApplicationShell, QuickInputService } from '@theia/core/lib/browser'; +import { BinaryBuffer } from '@theia/core/lib/common/buffer'; +import { FileDialogService } from '@theia/filesystem/lib/browser/file-dialog/file-dialog-service'; +import { FileService } from '@theia/filesystem/lib/browser/file-service'; +import { FileStat } from '@theia/filesystem/lib/common/files'; +import { getDiagramWidget, GLSPDiagramWidget } from '../../glsp-diagram-widget'; + +interface ExportFormatChoice { + label: string; + format: ExportFormat; + extension: string; + filterLabel: string; +} + +const EXPORT_FORMATS: ExportFormatChoice[] = [ + { label: 'SVG', format: 'svg', extension: 'svg', filterLabel: 'SVG Image (*.svg)' }, + { label: 'PNG', format: 'png', extension: 'png', filterLabel: 'PNG Image (*.png)' } +]; + +/** + * {@link CommandHandler} for the "Export Diagram" menu command. Asks the user for the target + * format up front, then opens the save dialog with a single matching filter so the resulting + * URI's extension is unambiguous. Uses the request/response dispatcher path so the export + * result lands here directly rather than fanning out to action handlers. + */ +export class TheiaExportCommandHandler implements CommandHandler { + constructor( + protected readonly shell: ApplicationShell, + protected readonly fileService: FileService, + protected readonly fileDialogService: FileDialogService, + protected readonly quickInputService: QuickInputService, + protected readonly messageService: MessageService + ) {} + + async execute(): Promise { + const widget = getDiagramWidget(this.shell); + if (!widget) { + return; + } + + const choice = await this.pickFormat(); + if (!choice) { + return; + } + + const folder = await this.getExportFolder(widget); + let file = await this.fileDialogService.showSaveDialog( + { title: 'Export Diagram', filters: { [choice.filterLabel]: [choice.extension] } }, + folder + ); + if (!file) { + return; + } + file = this.ensureExtension(file, choice.extension); + + try { + const result = await widget.actionDispatcher.request(RequestExportAction.create(choice.format)); + await this.writeResult(file, result); + this.messageService.info(`Diagram exported to '${file.path.name}'`); + } catch (error) { + this.messageService.error(`Error exporting diagram: ${error}`); + } + } + + isEnabled(): boolean { + return !!getDiagramWidget(this.shell); + } + + isVisible(): boolean { + return true; + } + + protected async pickFormat(): Promise { + const items = EXPORT_FORMATS.map(choice => ({ + label: choice.label, + description: choice.filterLabel, + choice + })); + const picked = await this.quickInputService.showQuickPick(items, { + title: 'Export Diagram', + placeholder: 'Select export format' + }); + return picked?.choice; + } + + protected ensureExtension(file: URI, extension: string): URI { + const expected = '.' + extension; + return file.path.ext.toLowerCase() === expected ? file : new URI(file.path.fsPath() + expected); + } + + protected writeResult(file: URI, result: ExportResultAction): Promise { + if (result.encoding === 'base64') { + return this.fileService.writeFile(file, BinaryBuffer.wrap(this.decodeBase64(result.data))); + } + return this.fileService.write(file, result.data); + } + + protected decodeBase64(data: string): Uint8Array { + const binary = atob(data); + const bytes = new Uint8Array(binary.length); + for (let index = 0; index < binary.length; index++) { + bytes[index] = binary.charCodeAt(index); + } + return bytes; + } + + protected getExportFolder(widget: GLSPDiagramWidget): Promise { + return this.fileService.resolve(new URI(widget.editorContext.sourceUri)); + } +} diff --git a/packages/theia-integration/src/browser/diagram/features/export/theia-export-module.ts b/packages/theia-integration/src/browser/diagram/features/export/theia-export-module.ts index f45666ee..4eae611a 100644 --- a/packages/theia-integration/src/browser/diagram/features/export/theia-export-module.ts +++ b/packages/theia-integration/src/browser/diagram/features/export/theia-export-module.ts @@ -13,11 +13,11 @@ * * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 ********************************************************************************/ -import { ExportSvgAction, FeatureModule, configureActionHandler, exportModule } from '@eclipse-glsp/client'; +import { ExportResultAction, FeatureModule, configureActionHandler, exportModule } from '@eclipse-glsp/client'; import { TheiaExportSvgActionHandler } from './theia-export-svg-action-handler'; export const theiaExportModule = new FeatureModule( (bind, _unbind, isBound, _rebind) => { - configureActionHandler({ bind, isBound }, ExportSvgAction.KIND, TheiaExportSvgActionHandler); + configureActionHandler({ bind, isBound }, ExportResultAction.KIND, TheiaExportSvgActionHandler); }, { requires: exportModule } ); diff --git a/packages/theia-integration/src/browser/diagram/features/export/theia-export-svg-action-handler.ts b/packages/theia-integration/src/browser/diagram/features/export/theia-export-svg-action-handler.ts index ffa3c3f5..5f265657 100644 --- a/packages/theia-integration/src/browser/diagram/features/export/theia-export-svg-action-handler.ts +++ b/packages/theia-integration/src/browser/diagram/features/export/theia-export-svg-action-handler.ts @@ -13,7 +13,7 @@ * * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 ********************************************************************************/ -import { EditorContextService, ExportSvgAction, IActionHandler, MaybePromise } from '@eclipse-glsp/client'; +import { EditorContextService, ExportResultAction, IActionHandler, MaybePromise } from '@eclipse-glsp/client'; import { MessageService, URI } from '@theia/core'; import { inject, injectable } from '@theia/core/shared/inversify'; import { FileDialogService } from '@theia/filesystem/lib/browser/file-dialog/file-dialog-service'; @@ -21,8 +21,9 @@ import { FileService } from '@theia/filesystem/lib/browser/file-service'; import { FileStat } from '@theia/filesystem/lib/common/files'; /** - * Default {@link IActionHandler} for {@link ExportSvgAction}s in Theia - * (bound in Diagram child DI container) + * Default {@link IActionHandler} for SVG {@link ExportResultAction}s in Theia + * (bound in Diagram child DI container). Other export formats are ignored so binary + * payloads (e.g. base64-encoded PNG) are not text-written to disk by accident. */ @injectable() export class TheiaExportSvgActionHandler implements IActionHandler { @@ -38,11 +39,13 @@ export class TheiaExportSvgActionHandler implements IActionHandler { @inject(EditorContextService) protected editorContextService: EditorContextService; - handle(action: ExportSvgAction): void { - this.export(action); + handle(action: ExportResultAction): void { + if (action.format === 'svg') { + this.export(action); + } } - async export(action: ExportSvgAction): Promise { + async export(action: ExportResultAction): Promise { const folder = await this.getExportFolder(); let file = await this.fileDialogService.showSaveDialog({ title: 'Export Diagram', filters: { 'Images (*.svg)': ['svg'] } }, folder); if (file) { @@ -50,7 +53,7 @@ export class TheiaExportSvgActionHandler implements IActionHandler { if (!file.path.ext) { file = new URI(file.path.fsPath() + '.svg'); } - await this.fileService.write(file, action.svg); + await this.fileService.write(file, action.data); this.messageService.info(`Diagram exported to '${file.path.name}'`); } catch (error) { this.messageService.info(`Error exporting diagram '${error}'`); diff --git a/packages/theia-integration/src/browser/diagram/glsp-diagram-commands.ts b/packages/theia-integration/src/browser/diagram/glsp-diagram-commands.ts index 0e6a898a..63c04518 100644 --- a/packages/theia-integration/src/browser/diagram/glsp-diagram-commands.ts +++ b/packages/theia-integration/src/browser/diagram/glsp-diagram-commands.ts @@ -15,18 +15,21 @@ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 ********************************************************************************/ // based on: https://github.com/eclipse-sprotty/sprotty-theia/blob/v0.12.0/src/theia/diagram-commands.ts +import { CenterAction, FitToScreenAction, RedoAction, SelectAllAction, TriggerLayoutAction, UndoAction } from '@eclipse-glsp/client'; +import { ApplicationShell, CommonCommands, QuickInputService } from '@theia/core/lib/browser'; import { - CenterAction, - FitToScreenAction, - RedoAction, - RequestExportSvgAction, - SelectAllAction, - TriggerLayoutAction, - UndoAction -} from '@eclipse-glsp/client'; -import { ApplicationShell, CommonCommands } from '@theia/core/lib/browser'; -import { CommandContribution, CommandRegistry, MAIN_MENU_BAR, MenuContribution, MenuModelRegistry, MenuPath } from '@theia/core/lib/common'; + CommandContribution, + CommandRegistry, + MAIN_MENU_BAR, + MenuContribution, + MenuModelRegistry, + MenuPath, + MessageService +} from '@theia/core/lib/common'; +import { FileDialogService } from '@theia/filesystem/lib/browser/file-dialog/file-dialog-service'; +import { FileService } from '@theia/filesystem/lib/browser/file-service'; import { inject, injectable } from 'inversify'; +import { TheiaExportCommandHandler } from './features/export/theia-export-command-handler'; import { GLSPCommandHandler } from './glsp-command-handler'; export namespace GLSPDiagramCommands { @@ -70,6 +73,18 @@ export class GLSPDiagramCommandContribution implements CommandContribution { @inject(ApplicationShell) protected readonly shell: ApplicationShell; + @inject(FileService) + protected readonly fileService: FileService; + + @inject(FileDialogService) + protected readonly fileDialogService: FileDialogService; + + @inject(QuickInputService) + protected readonly quickInputService: QuickInputService; + + @inject(MessageService) + protected readonly messageService: MessageService; + registerCommands(registry: CommandRegistry): void { registry.registerCommand({ id: GLSPDiagramCommands.CENTER, @@ -102,7 +117,7 @@ export class GLSPDiagramCommandContribution implements CommandContribution { ); registry.registerHandler( GLSPDiagramCommands.EXPORT, - new GLSPCommandHandler(this.shell, { actions: () => RequestExportSvgAction.create(), alwaysVisible: true }) + new TheiaExportCommandHandler(this.shell, this.fileService, this.fileDialogService, this.quickInputService, this.messageService) ); registry.registerHandler( GLSPDiagramCommands.LAYOUT, diff --git a/packages/theia-integration/src/browser/glsp-client-contribution.ts b/packages/theia-integration/src/browser/glsp-client-contribution.ts index 041a87d0..d7bfedea 100644 --- a/packages/theia-integration/src/browser/glsp-client-contribution.ts +++ b/packages/theia-integration/src/browser/glsp-client-contribution.ts @@ -23,7 +23,7 @@ import { MaybePromise, listen } from '@eclipse-glsp/client'; -import { Disposable, DisposableCollection, MessageService } from '@theia/core'; +import { Channel, Disposable, DisposableCollection, MessageService } from '@theia/core'; import { FrontendApplication } from '@theia/core/lib/browser'; import { RemoteConnectionProvider, ServiceConnectionProvider } from '@theia/core/lib/browser/messaging/service-connection-provider'; import { Deferred } from '@theia/core/lib/common/promise-util'; @@ -188,10 +188,7 @@ export abstract class BaseGLSPClientContribution implements GLSPClientContributi reject(new Error('GLSPClientContribution is already disposed')); } const connection = createChannelConnection(channel); - this.toDispose.push(connection); - if (Disposable.is(channel)) { - this.toDispose.push(channel); - } + this.toDispose.push(Disposable.create(() => this.disposeChannel(connection, channel))); resolve(connection); } }, @@ -210,6 +207,22 @@ export abstract class BaseGLSPClientContribution implements GLSPClientContributi } } + /** Best-effort `shutdown` (only if the client started) before the channel is torn down. */ + protected async disposeChannel(connection: MessageConnection, channel: Channel): Promise { + try { + if (this.glspClientDeferred.state === 'resolved') { + await (await this.glspClient).shutdownServer(); + } + } catch { + // ignore — server may already be unreachable + } finally { + connection.dispose(); + if (Disposable.is(channel)) { + channel.dispose(); + } + } + } + protected async initialize(languageClient: GLSPClient): Promise { try { const parameters = await this.createInitializeParameters(); diff --git a/packages/theia-mcp-integration/package.json b/packages/theia-mcp-integration/package.json new file mode 100644 index 00000000..56ff4e94 --- /dev/null +++ b/packages/theia-mcp-integration/package.json @@ -0,0 +1,61 @@ +{ + "name": "@eclipse-glsp/theia-mcp-integration", + "version": "2.7.0-next", + "description": "Glue code to integrate GLSP MCP servers into Eclipse Theia", + "keywords": [ + "theia-extension", + "eclipse", + "graphics", + "diagram", + "modeling", + "visualization", + "glsp", + "diagram editor" + ], + "homepage": "https://www.eclipse.org/glsp/", + "bugs": "https://github.com/eclipse-glsp/glsp/issues", + "repository": { + "type": "git", + "url": "https://github.com/eclipse-glsp/glsp-theia-integration.git" + }, + "license": "(EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0)", + "author": { + "name": "Eclipse GLSP" + }, + "contributors": [ + { + "name": "Eclipse GLSP Project", + "email": "glsp-dev@eclipse.org", + "url": "https://projects.eclipse.org/projects/ecd.glsp" + } + ], + "main": "lib/browser/index", + "files": [ + "lib", + "src", + "css" + ], + "scripts": { + "build": "tsc -b", + "clean": "rimraf lib *.tsbuildinfo ", + "generate:index": "glsp generateIndex src/browser -s -f", + "lint": "eslint --ext .ts,.tsx ./src", + "watch": "tsc -w" + }, + "dependencies": { + "@eclipse-glsp/client": "next", + "@eclipse-glsp/theia-integration": "2.7.0-next" + }, + "peerDependencies": { + "@theia/ai-mcp": "^1.64.0", + "@theia/core": "^1.64.0" + }, + "publishConfig": { + "access": "public" + }, + "theiaExtensions": [ + { + "frontend": "lib/browser/theia-mcp-integration-frontend-module" + } + ] +} diff --git a/packages/theia-mcp-integration/src/browser/glsp-mcp-registration.ts b/packages/theia-mcp-integration/src/browser/glsp-mcp-registration.ts new file mode 100644 index 00000000..fdfc29d2 --- /dev/null +++ b/packages/theia-mcp-integration/src/browser/glsp-mcp-registration.ts @@ -0,0 +1,108 @@ +/******************************************************************************** + * Copyright (c) 2025-2026 EclipseSource and others. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the Eclipse + * Public License v. 2.0 are satisfied: GNU General Public License, version 2 + * with the GNU Classpath Exception which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + ********************************************************************************/ +import { ClientState, McpInitializeResult } from '@eclipse-glsp/protocol'; +import { GLSPClientContribution } from '@eclipse-glsp/theia-integration'; +import { MCPFrontendService, MCPServerManager } from '@theia/ai-mcp'; +import { ContributionProvider, Disposable, DisposableCollection, MaybePromise, MessageService } from '@theia/core'; +import { FrontendApplication, FrontendApplicationContribution } from '@theia/core/lib/browser'; +import { ClipboardService } from '@theia/core/lib/browser/clipboard-service'; +import { inject, injectable, named } from '@theia/core/shared/inversify'; + +@injectable() +export class GlspMcpRegistration implements FrontendApplicationContribution, Disposable { + @inject(ContributionProvider) + @named(GLSPClientContribution) + protected readonly glspClientContributions: ContributionProvider; + + @inject(MCPFrontendService) protected mcpService: MCPFrontendService; + @inject(MCPServerManager) protected mcpServerManager: MCPServerManager; + @inject(MessageService) protected messageService: MessageService; + @inject(ClipboardService) protected clipboardService: ClipboardService; + + /** + * Whether discovered GLSP MCP servers should be auto-started by Theia AI on registration. + * Defaults to `true` so the GLSP MCP integration is immediately available to the agent. + */ + protected readonly autostart: boolean = true; + + protected readonly toDispose = new DisposableCollection(); + + onStart(app: FrontendApplication): MaybePromise { + this.glspClientContributions.getContributions().forEach(contribution => this.registerMcpServer(contribution)); + } + + onStop(): void { + this.dispose(); + } + + dispose(): void { + this.toDispose.dispose(); + } + + protected async registerMcpServer(contribution: GLSPClientContribution): Promise { + // The contribution only resolves the client once it is started and initialized. + const glspClient = await contribution.glspClient; + const mcpServer = McpInitializeResult.getServer(glspClient.initializeResult); + if (!mcpServer) { + return; + } + await this.mcpService.addOrUpdateServer({ + name: mcpServer.name, + serverUrl: mcpServer.url, + // Forward any auth/connection headers announced by the GLSP server. + ...(mcpServer.headers && { headers: mcpServer.headers }), + autostart: this.autostart + }); + + const perRegistration = new DisposableCollection( + Disposable.create(() => this.mcpServerManager.removeServer(mcpServer.name)), + glspClient.onCurrentStateChanged(state => { + if (state === ClientState.Stopped || state === ClientState.ServerError) { + perRegistration.dispose(); + } + }) + ); + this.toDispose.push(perRegistration); + + if (this.autostart) { + // Theia AI's MCPFrontendApplicationContribution only fires `autoStartServers` at frontend + // startup or on preference changes — neither covers our programmatic registration path, + // so the server would otherwise stay registered-but-stopped until the next IDE restart. + // Trigger an explicit start so the GLSP MCP server is usable in the current session. + try { + await this.mcpService.startServer(mcpServer.name); + this.notifyConnected(mcpServer.name, mcpServer.url, 'auto-started'); + } catch (err: unknown) { + // Workspace-trust gates and other MCP startup conditions may surface here. The + // `autostart: true` description we stored above ensures the server will be picked + // up on the next startup once the blocking condition clears. + console.warn(`Failed to auto-start GLSP MCP server '${mcpServer.name}':`, err); + } + } else { + this.notifyConnected(mcpServer.name, mcpServer.url, 'auto-registered'); + } + } + + /** Info notification with a `Copy URL` action; auto-dismisses after 10s. */ + protected notifyConnected(name: string, url: string, state: 'auto-started' | 'auto-registered'): void { + const COPY_URL_ACTION = 'Copy URL'; + this.messageService.info(`MCP server '${name}' ${state} at ${url}`, { timeout: 10_000 }, COPY_URL_ACTION).then(action => { + if (action === COPY_URL_ACTION) { + this.clipboardService.writeText(url); + } + }); + } +} diff --git a/packages/theia-mcp-integration/src/browser/index.ts b/packages/theia-mcp-integration/src/browser/index.ts new file mode 100644 index 00000000..06d586a1 --- /dev/null +++ b/packages/theia-mcp-integration/src/browser/index.ts @@ -0,0 +1,17 @@ +/******************************************************************************** + * Copyright (c) 2026 EclipseSource and others. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the Eclipse + * Public License v. 2.0 are satisfied: GNU General Public License, version 2 + * with the GNU Classpath Exception which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + ********************************************************************************/ +export * from './glsp-mcp-registration'; +export * from './theia-mcp-integration-frontend-module'; diff --git a/packages/theia-mcp-integration/src/browser/theia-mcp-integration-frontend-module.ts b/packages/theia-mcp-integration/src/browser/theia-mcp-integration-frontend-module.ts new file mode 100644 index 00000000..34f3ef5e --- /dev/null +++ b/packages/theia-mcp-integration/src/browser/theia-mcp-integration-frontend-module.ts @@ -0,0 +1,25 @@ +/******************************************************************************** + * Copyright (c) 2025-2026 EclipseSource and others. + * + * This program and the accompanying materials are made available under the + * terms of the Eclipse Public License v. 2.0 which is available at + * http://www.eclipse.org/legal/epl-2.0. + * + * This Source Code may also be made available under the following Secondary + * Licenses when the conditions for such availability set forth in the Eclipse + * Public License v. 2.0 are satisfied: GNU General Public License, version 2 + * with the GNU Classpath Exception which is available at + * https://www.gnu.org/software/classpath/license.html. + * + * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 + ********************************************************************************/ + +import { bindAsService } from '@eclipse-glsp/client'; +import { FrontendApplicationContribution } from '@theia/core/lib/browser'; +import { ContainerModule } from '@theia/core/shared/inversify'; +import { GlspMcpRegistration } from './glsp-mcp-registration'; + +export default new ContainerModule((bind, unbind, isBound, rebind) => { + const context = { bind, unbind, isBound, rebind }; + bindAsService(context, FrontendApplicationContribution, GlspMcpRegistration); +}); diff --git a/packages/theia-mcp-integration/tsconfig.json b/packages/theia-mcp-integration/tsconfig.json new file mode 100644 index 00000000..6d37f0f7 --- /dev/null +++ b/packages/theia-mcp-integration/tsconfig.json @@ -0,0 +1,9 @@ +{ + "extends": "@eclipse-glsp/ts-config/tsconfig.json", + "compilerOptions": { + "rootDir": "src", + "composite": true, + "outDir": "lib" + }, + "include": ["src"] +} diff --git a/tsconfig.json b/tsconfig.json index 3cb99e6b..7acfee21 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -8,6 +8,9 @@ { "path": "./packages/theia-integration" }, + { + "path": "./packages/theia-mcp-integration" + }, { "path": "./examples/workflow-theia" } diff --git a/yarn.lock b/yarn.lock index d7ab3aca..e247124d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,6 +2,13 @@ # yarn lockfile v1 +"@anthropic-ai/sdk@^0.65.0": + version "0.65.0" + resolved "https://registry.yarnpkg.com/@anthropic-ai/sdk/-/sdk-0.65.0.tgz#3f464fe2029eacf8e7e7fb8197579d00c8ca7502" + integrity sha512-zIdPOcrCVEI8t3Di40nH4z9EoeyGZfXbYSvWdDLsB/KkaSYMnEgC7gmcgWu83g2NTn1ZTpbMvpdttWDGGIk6zw== + dependencies: + json-schema-to-ts "^3.1.1" + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.28.6", "@babel/code-frame@^7.29.0": version "7.29.0" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.29.0.tgz#7cd7a59f15b3cc0dcd803038f7792712a7d0b15c" @@ -771,6 +778,11 @@ resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.28.6.tgz#d267a43cb1836dc4d182cce93ae75ba954ef6d2b" integrity sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA== +"@babel/runtime@^7.18.3", "@babel/runtime@^7.20.13": + version "7.29.2" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.29.2.tgz#9a6e2d05f4b6692e1801cd4fb176ad823930ed5e" + integrity sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g== + "@babel/template@^7.28.6": version "7.28.6" resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.28.6.tgz#0e7e56ecedb78aeef66ce7972b082fce76a23e57" @@ -828,51 +840,51 @@ integrity sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw== "@eclipse-glsp-examples/workflow-glsp@next": - version "2.7.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp-examples/workflow-glsp/-/workflow-glsp-2.7.0-next.3.tgz#ce9a8cb7370a2239883fe0da319b5edc7330021f" - integrity sha512-pUeePDx6pTq3DxI3xpSW5aXu8mJfWNdutf1FXp/Jl+rwWRxqaDYkqC+oaaSvu6rRGM1iNxnWSHGGZ0eBKm+pdw== + version "2.7.0-next.25" + resolved "https://registry.yarnpkg.com/@eclipse-glsp-examples/workflow-glsp/-/workflow-glsp-2.7.0-next.25.tgz#be9ea0fd292e30bd72810d73d8d6e1f0c2607262" + integrity sha512-tOcC4GI9Uy+PjVK0rgPsSnYSbUNF6sYyWU49CPQVD3u415sEv4nT5EfRKplKfRiuLCNu0HIU4R4Snt8aI+4tkQ== dependencies: - "@eclipse-glsp/client" "2.7.0-next.3+d60eef8" + "@eclipse-glsp/client" "2.7.0-next.25+40f249a" balloon-css "^0.5.0" "@eclipse-glsp-examples/workflow-server-bundled@next": - version "2.6.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp-examples/workflow-server-bundled/-/workflow-server-bundled-2.6.0-next.3.tgz#d5d8e86cf4e48e168ed1e728b2400b3a45003e50" - integrity sha512-L88rOZsKBCmDgL6IR+reIWczo/nMRf18oQrByG+Gk1Z5Ky0/84hXiXUZ0uq2+eoj8EX7KffpTMgA82Pher9zeA== + version "2.7.0-next.9" + resolved "https://registry.yarnpkg.com/@eclipse-glsp-examples/workflow-server-bundled/-/workflow-server-bundled-2.7.0-next.9.tgz#ecfafd8cabede8a16a16d26ef65b276e68c6ba47" + integrity sha512-7kiaIYyi/3KwFSXh38vBApSkVt0j7ljiqPdMuGAc+hkS4d14FbhPS4QLPL/OpSIQVnyFCkPafVBaaM1dW0rigQ== "@eclipse-glsp-examples/workflow-server@next": - version "2.6.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp-examples/workflow-server/-/workflow-server-2.6.0-next.3.tgz#5fe6779f08a7a96eb1f0a6969425857e1237451f" - integrity sha512-R+P4AzNHxA/IjIqEodeTQ6s4vqlV4G6NwfbXoD0h+xXOGdPtSDcpXqqjeDZtUut+0CfDquL2QDJGkH7nSu0VCA== + version "2.7.0-next.9" + resolved "https://registry.yarnpkg.com/@eclipse-glsp-examples/workflow-server/-/workflow-server-2.7.0-next.9.tgz#036b48785b3c5b326657bc684a59b1d5bde5d14d" + integrity sha512-xMWUyhkGisbc42ezF6SD4Rtj5T/UDY3a56FbwH/S2MnpsYUxkU3V53rVcM2TS0o1+0lJ1kYLjvdAxtrlR7TqlA== dependencies: - "@eclipse-glsp/layout-elk" "2.6.0-next.3+7b1fdd9" - "@eclipse-glsp/server" "2.6.0-next.3+7b1fdd9" + "@eclipse-glsp/layout-elk" "2.7.0-next.9+a58ea45" + "@eclipse-glsp/server" "2.7.0-next.9+a58ea45" + "@eclipse-glsp/server-mcp" "2.7.0-next.9+a58ea45" inversify "^6.1.3" -"@eclipse-glsp/cli@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/cli/-/cli-2.7.0-next.10.tgz#75cf853feb77396b534495fd50f31b26b271db0d" - integrity sha512-/r8TGvp8jE0Tdzp4Sl7QJxyGL8OmaCBOcwl6V53F6xnay9WmO/U6LNDDc4RLDXLXzNiUEFy4J2V5+nPcdTa2jg== +"@eclipse-glsp/cli@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/cli/-/cli-2.7.0-next.17.tgz#b29dab0105e1572e3cbbdf92c529539af1e98a57" + integrity sha512-zA56/BWOkdScIiUumUyqfPySocmgfOl/l9ow0Wcqe1sFyagg8Ser9ZN49j3N+DcvHh/nFD6ALiubvm96FkK5TQ== -"@eclipse-glsp/client@2.7.0-next.3+d60eef8", "@eclipse-glsp/client@next": - version "2.7.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/client/-/client-2.7.0-next.3.tgz#e73c8423ac5425a565fb0c66e2625236f378c3f2" - integrity sha512-wX6wQe9mVZDePCcK18QjzIef/i6LxlhmYXPOdqbOXY547+MSy6EIwMxxXqAqBmswfBVvW3UbNKS1+SlBPk+Y9w== +"@eclipse-glsp/client@2.7.0-next.25+40f249a", "@eclipse-glsp/client@next": + version "2.7.0-next.25" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/client/-/client-2.7.0-next.25.tgz#b4e02c9f5de510a1d0180564c6d5d94a4be69fee" + integrity sha512-7OuToDUYEw8uef/F31i0D0kjJqU3Zjxy9ksvzviGM2z8IlRL0YR/MUahj6snPTqvO71gzfh5sxL7WfU4XgXNrg== dependencies: - "@eclipse-glsp/sprotty" "2.7.0-next.3+d60eef8" + "@eclipse-glsp/sprotty" "2.7.0-next.25+40f249a" autocompleter "^9.1.2" file-saver "^2.0.5" - lodash "4.17.23" snabbdom "~3.5.1" vscode-jsonrpc "8.2.0" -"@eclipse-glsp/config-test@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/config-test/-/config-test-2.7.0-next.10.tgz#aea5b8d3c86027c76b9ee06c42dfbb71746dc22c" - integrity sha512-xhgO3MnDJ5d/xhicXxIQgC6Q5EMXg7pqZfZNdhrhMTmLgx4iR292WAMGNAA8qSVETxddNTaw7zOb8gFoOYXeRA== +"@eclipse-glsp/config-test@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/config-test/-/config-test-2.7.0-next.17.tgz#03acb4fa3fb53cccd2195a97d221e4280b33fad4" + integrity sha512-Zz09JewRvzrBMg+dsa7yaCkHheyEEDe3nLp5vKY5jCcRNJcrruguNY6EA6584Hd6smWrY5RbtvnuLFrhFQz1XA== dependencies: - "@eclipse-glsp/mocha-config" "2.7.0-next.10+743aad5" - "@eclipse-glsp/nyc-config" "2.7.0-next.10+743aad5" + "@eclipse-glsp/mocha-config" "2.7.0-next.17+f394349" + "@eclipse-glsp/nyc-config" "2.7.0-next.17+f394349" "@istanbuljs/nyc-config-typescript" "^1.0.2" "@types/chai" "^4.3.7" "@types/mocha" "^10.0.2" @@ -885,14 +897,14 @@ sinon "^15.1.0" ts-node "^10.9.1" -"@eclipse-glsp/config@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/config/-/config-2.7.0-next.10.tgz#e6aa4ab50057f828facd521cd2dee198aaf973e9" - integrity sha512-ZqIcL8nPAKLduPsoyOYvUrCb6kRv8YQQ7JXcp831YDzj1Ay3vlOq9yG2My6ytyQvR3hs9MFD09467elgYq9xrw== +"@eclipse-glsp/config@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/config/-/config-2.7.0-next.17.tgz#29350fa2bd6ed796c284d912ad85f6c264c37377" + integrity sha512-J16kN4tgXUBrzd7cKO3mJ18LMwIuqOBN0QtfaX58tGiQDZw2QuO4dooDzKp0Zz93tbLc+yT/fFamFMZoMYVyaw== dependencies: - "@eclipse-glsp/eslint-config" "2.7.0-next.10+743aad5" - "@eclipse-glsp/prettier-config" "2.7.0-next.10+743aad5" - "@eclipse-glsp/ts-config" "2.7.0-next.10+743aad5" + "@eclipse-glsp/eslint-config" "2.7.0-next.17+f394349" + "@eclipse-glsp/prettier-config" "2.7.0-next.17+f394349" + "@eclipse-glsp/ts-config" "2.7.0-next.17+f394349" "@eslint/js" "^9.0.0" "@stylistic/eslint-plugin" "^2.0.0" "@tony.ganchev/eslint-plugin-header" "^3.1.1" @@ -909,75 +921,75 @@ typescript-eslint "^8.0.0" "@eclipse-glsp/dev@next": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/dev/-/dev-2.7.0-next.10.tgz#81b1b86c2e17d21074c3e6c8fccaf0d396270fad" - integrity sha512-lsYYLkLoj35Q3Q8Uet+WCHJQQANHFGFR9/o6DcSIMdUrRhUkyX1uS7XezQr7u9+GJ76yIwp5Q1yMYrcEBpCuzg== + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/dev/-/dev-2.7.0-next.17.tgz#bf6d3ebf505ba09c5c21ad31ccacfb264dd99903" + integrity sha512-M6IhxSIPPN492/k2d9ZRP3jyK1DJZR4zr5jI1WZsRpuXiIognYfz5oRB5G3yKldMDjrknCOhbsHKY9zBRw5Jnw== dependencies: - "@eclipse-glsp/cli" "2.7.0-next.10+743aad5" - "@eclipse-glsp/config" "2.7.0-next.10+743aad5" - "@eclipse-glsp/config-test" "2.7.0-next.10+743aad5" + "@eclipse-glsp/cli" "2.7.0-next.17+f394349" + "@eclipse-glsp/config" "2.7.0-next.17+f394349" + "@eclipse-glsp/config-test" "2.7.0-next.17+f394349" -"@eclipse-glsp/eslint-config@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/eslint-config/-/eslint-config-2.7.0-next.10.tgz#c3a0bd614f52ca3d3c25f1512b8bd28c30777b9a" - integrity sha512-3bUCnz/qPQbABYimg0Bfo2TFMV5Qsk5tcy2uxs6ZTefX+7+AkUHOc57/A9XgRt/o3ngt3wCD+XdRkosBO/N6vw== +"@eclipse-glsp/eslint-config@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/eslint-config/-/eslint-config-2.7.0-next.17.tgz#16fa120cff5d7e1730712df49f3e500d8087b485" + integrity sha512-eOZgs8iOb4hVllnjqRlRjPvx3EmpQq06lAWkkUu4zytEaL62rXwbazrfW065Vu3gJfIf69WiJb+JUqYHj7nnxA== -"@eclipse-glsp/graph@2.6.0-next.3+7b1fdd9": - version "2.6.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/graph/-/graph-2.6.0-next.3.tgz#df8ffd57dc181c27acff4a652d9cb01417f2a2b5" - integrity sha512-6YDXKm2GcNqN7YhvTBvRmH6ox51vkkJBsFQXVJJ988jIeSs4iMj/6GWFBKTTkOJstOulFFd7lbQjxHeoHB5grA== +"@eclipse-glsp/graph@2.7.0-next.9+a58ea45": + version "2.7.0-next.9" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/graph/-/graph-2.7.0-next.9.tgz#1fa8616c032671851407e723b49b8011ab940e90" + integrity sha512-j1Klgcw8wf168jxDYYZLGGFEa2XePmFnl1V4xFvO3ps2JbQPgOCFY5PcLlcaIqjOi3oxB5adPixLrVUKQRr7kw== dependencies: "@eclipse-glsp/protocol" next -"@eclipse-glsp/layout-elk@2.6.0-next.3+7b1fdd9": - version "2.6.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/layout-elk/-/layout-elk-2.6.0-next.3.tgz#8057ec5e6893d9798eb7df836e1ffc9aceee25ee" - integrity sha512-6r7IO0uoDGMURAupbgYXTKm8SmLEmjp2qYXI3/bGovwZ5TPDBM5VXkZF/zwsckvxjVUo/yHYbgP4QAiWlRfb/Q== +"@eclipse-glsp/layout-elk@2.7.0-next.9+a58ea45": + version "2.7.0-next.9" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/layout-elk/-/layout-elk-2.7.0-next.9.tgz#58c9d365b7842281737ba992c585f300c36b540d" + integrity sha512-8BO3MLiXB8AvdUtyYuQy/jnZNOifH7ZHgsYoBT33QwRQ18jgxjKodftDDVUQo8PB+ZfikNZhWxPiOoCXrBZJ2w== dependencies: - "@eclipse-glsp/server" "2.6.0-next.3+7b1fdd9" + "@eclipse-glsp/server" "2.7.0-next.9+a58ea45" elkjs "^0.10.1" -"@eclipse-glsp/mocha-config@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/mocha-config/-/mocha-config-2.7.0-next.10.tgz#a804c7d3f60974b3df2dc6893efda2e6b1d97c5b" - integrity sha512-mHQh6XCDnSYloOtON4qN1w8N1mSu9siZi32lfXclh2oVRu16ykUn2oaSQ8aXS6HgMK8FoWaItj5HWNP82qmfwg== +"@eclipse-glsp/mocha-config@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/mocha-config/-/mocha-config-2.7.0-next.17.tgz#d7afef5e705af6001fae82ee9431e4fe2371fa53" + integrity sha512-GCuW1oF/rxvs7lbLsi5gWjE4FsInzC0zpA9VvSFmt5qswoqzVNUceXFHOFadXZQF+J2TfaSUenaKrG7sAnbi2Q== -"@eclipse-glsp/nyc-config@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/nyc-config/-/nyc-config-2.7.0-next.10.tgz#c8cf5a3e00020fefb4d8cd2368bc6da458b9dabb" - integrity sha512-aYHgC8vgdGw8iK9ncNUkHgeHi6xaFso+8dECzeoQ+zLAx8aKqmh1//iyHXSWCIzwg1GsU0LkFX8FWdvX866jUg== +"@eclipse-glsp/nyc-config@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/nyc-config/-/nyc-config-2.7.0-next.17.tgz#a3091eea6b8c09a0ceaac32de041935a21b58fac" + integrity sha512-VBnJJH6DOMLMkyaXjfaQrYizd6hcstAIf7uAgx421/67/RTERMILPWcpvLp4PKB1VWuu2OSOdR0+VkMArem6og== -"@eclipse-glsp/prettier-config@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/prettier-config/-/prettier-config-2.7.0-next.10.tgz#da3c8b84b033b4c2c0ee809c29fc650386527d62" - integrity sha512-ovjSsvyt487lbrJ1+s2bTX4X2L5vZHW8gMUT9w18YjzPUQPAN6wCfmCVa5NqA+NP9U9DeDOSFp9G5g+YePdUqA== +"@eclipse-glsp/prettier-config@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/prettier-config/-/prettier-config-2.7.0-next.17.tgz#323d495bdcff054a61f04d000411ce9813909c43" + integrity sha512-p38q0D7MuXY49r185ZPxBTwCoK45MFkK5kIMAeBF7IcED/XP177Ky8RKavnWzLi4QbL28AXvuI9JXR9VeHkqfQ== dependencies: prettier-plugin-packagejson "~2.4.6" -"@eclipse-glsp/protocol@2.7.0-next.3+d60eef8": - version "2.7.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/protocol/-/protocol-2.7.0-next.3.tgz#446fb5f0b13ca49651b35951903e92c1ef142f28" - integrity sha512-0QAsHKxCDaEqcqjdVIrYFlUhfbzCwcmHruTaYc74hnM/tOQbyk+DMIknhS8fGWGTb5orHjZM2hQTPrTjtHsUgg== +"@eclipse-glsp/protocol@2.7.0-next.25+40f249a", "@eclipse-glsp/protocol@next": + version "2.7.0-next.25" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/protocol/-/protocol-2.7.0-next.25.tgz#dda9362174c68bf1c3e78e50e08fde11679edbbb" + integrity sha512-vFDImSJEaAF1S2PYdwOGJCJjmhZGmzYpq8eYSH93E1/tDEsg5A1tQADx6fx9WlSWTXXno9SZBBS1AIc/fnqFPw== dependencies: sprotty-protocol "1.4.0" - uuid "~10.0.0" + uuid "~14.0.0" vscode-jsonrpc "8.2.0" -"@eclipse-glsp/protocol@next": - version "2.7.0-next.0" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/protocol/-/protocol-2.7.0-next.0.tgz#fa5035fe991c55106478b4947c71f020d29618b0" - integrity sha512-PWQvRPC6RQai3+POvGRYjZyslCtX8sshxm/9EXcWiRyc+WEB6JEaafXf++mUPDVwDUm47y6ANoZYUP9XxCRILg== +"@eclipse-glsp/server-mcp@2.7.0-next.9+a58ea45": + version "2.7.0-next.9" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/server-mcp/-/server-mcp-2.7.0-next.9.tgz#752dc3b8150be9382e8c9c74d439d73b87dbc852" + integrity sha512-2sSWDq+n64fpMQfQK6Wda38JDrAH+ZxB2XwWlZ1MGjuBM4eAKopuz+9wu/cKtk4BAq7GMue50a/Xzyc4X3E69A== dependencies: - sprotty-protocol "1.4.0" - uuid "~10.0.0" - vscode-jsonrpc "8.2.0" + "@eclipse-glsp/server" "2.7.0-next.9+a58ea45" + "@modelcontextprotocol/sdk" "^1.29.0" + express "^5.2.1" -"@eclipse-glsp/server@2.6.0-next.3+7b1fdd9": - version "2.6.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/server/-/server-2.6.0-next.3.tgz#49892f7e93f688e58aad2ec147a3c38d57670b00" - integrity sha512-tbIXCbmhXagWtLjytYBnO7TEnXOmsiZsM5G2v/ZFyYzOrMehxWFOlSUkOL68y0aDfxyY7/POedMUj77/9K58mQ== +"@eclipse-glsp/server@2.7.0-next.9+a58ea45": + version "2.7.0-next.9" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/server/-/server-2.7.0-next.9.tgz#e18e1ad3c0f572db111af59ff0b59535be421b82" + integrity sha512-RcmLBompSgl3tdoQUv0yOLmt9rmJa0+9DIyNT7mJmAgk0KIJFN0ht3hSMjyrE9sGqw9XnJDujbFnvaJApLukqw== dependencies: - "@eclipse-glsp/graph" "2.6.0-next.3+7b1fdd9" + "@eclipse-glsp/graph" "2.7.0-next.9+a58ea45" "@eclipse-glsp/protocol" next "@types/uuid" "8.3.1" commander "^8.3.0" @@ -987,22 +999,22 @@ winston "^3.3.3" ws "^8.12.1" -"@eclipse-glsp/sprotty@2.7.0-next.3+d60eef8": - version "2.7.0-next.3" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/sprotty/-/sprotty-2.7.0-next.3.tgz#a052b85631e46a765bae7c1f8a37c9f4d65f8db0" - integrity sha512-6sH/UclzQlEwnTbhejgY95+AVxgnz6LkftKcS42hWdY7i0yXaBhrk/rj0jPPNL9qn8hjf9ZRRBB+WZlZyFQvzA== +"@eclipse-glsp/sprotty@2.7.0-next.25+40f249a": + version "2.7.0-next.25" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/sprotty/-/sprotty-2.7.0-next.25.tgz#555e1aa3f06d4a3b1155cb91ae1f2990264d8237" + integrity sha512-DJssAfJsqUud6ZyAsgRsp1Hpr8K30/QjQlLE5XoOTigP6STET8ycIyhIqph/oDTV0ry8Xx8DMZHKCt31/u+/1Q== dependencies: - "@eclipse-glsp/protocol" "2.7.0-next.3+d60eef8" + "@eclipse-glsp/protocol" "2.7.0-next.25+40f249a" autocompleter "^9.1.0" snabbdom "~3.5.1" sprotty "1.4.0" sprotty-protocol "1.4.0" vscode-jsonrpc "8.2.0" -"@eclipse-glsp/ts-config@2.7.0-next.10+743aad5": - version "2.7.0-next.10" - resolved "https://registry.yarnpkg.com/@eclipse-glsp/ts-config/-/ts-config-2.7.0-next.10.tgz#b3e4443d720318408ff299b7613521f226b0a2f2" - integrity sha512-Parige4p4pLPt2mlBnH9AKUXOqAQcOSjjQYVJZJ5vVpVIcuVJr7+q8PVyezlQ/8MmHIrCaJ4o+/xcs6Oft+8cg== +"@eclipse-glsp/ts-config@2.7.0-next.17+f394349": + version "2.7.0-next.17" + resolved "https://registry.yarnpkg.com/@eclipse-glsp/ts-config/-/ts-config-2.7.0-next.17.tgz#158c94a8dc54a34d32882960db606b02c4933add" + integrity sha512-9p3Wqw7e7ZoLpJDAzqmUqHT69y6EpkoPPJhf0Le+ZvC1Je7hIzEIgfhneMUaK4alpndJLr8aCW4nQdlFnnGT/w== "@electron/get@^2.0.0": version "2.0.3" @@ -1128,6 +1140,11 @@ "@eslint/core" "^0.17.0" levn "^0.4.1" +"@hono/node-server@^1.19.9": + version "1.19.14" + resolved "https://registry.yarnpkg.com/@hono/node-server/-/node-server-1.19.14.tgz#e30f844bc77e3ce7be442aac3b1f73ad8b58d181" + integrity sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw== + "@humanfs/core@^0.19.1": version "0.19.1" resolved "https://registry.yarnpkg.com/@humanfs/core/-/core-0.19.1.tgz#17c55ca7d426733fe3c561906b8173c336b40a77" @@ -1450,6 +1467,18 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@kwsites/file-exists@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@kwsites/file-exists/-/file-exists-1.1.1.tgz#ad1efcac13e1987d8dbaf235ef3be5b0d96faa99" + integrity sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw== + dependencies: + debug "^4.1.1" + +"@kwsites/promise-deferred@^1.1.1": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz#8ace5259254426ccef57f3175bc64ed7095ed919" + integrity sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw== + "@lerna/create@9.0.3": version "9.0.3" resolved "https://registry.yarnpkg.com/@lerna/create/-/create-9.0.3.tgz#3cbc02adc6a1d7d289764d9814825b105a3f7c79" @@ -1632,6 +1661,29 @@ dependencies: cross-spawn "^7.0.1" +"@modelcontextprotocol/sdk@^1.25.1", "@modelcontextprotocol/sdk@^1.29.0": + version "1.29.0" + resolved "https://registry.yarnpkg.com/@modelcontextprotocol/sdk/-/sdk-1.29.0.tgz#79786d8b525e269de850ac82b1f1f757f3915f44" + integrity sha512-zo37mZA9hJWpULgkRpowewez1y6ML5GsXJPY8FI0tBBCd77HEvza4jDqRKOXgHNn867PVGCyTdzqpz0izu5ZjQ== + dependencies: + "@hono/node-server" "^1.19.9" + ajv "^8.17.1" + ajv-formats "^3.0.1" + content-type "^1.0.5" + cors "^2.8.5" + cross-spawn "^7.0.5" + eventsource "^3.0.2" + eventsource-parser "^3.0.0" + express "^5.2.1" + express-rate-limit "^8.2.1" + hono "^4.11.4" + jose "^6.1.3" + json-schema-typed "^8.0.2" + pkce-challenge "^5.0.0" + raw-body "^3.0.0" + zod "^3.25 || ^4.0" + zod-to-json-schema "^3.25.1" + "@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3": version "3.0.3" resolved "https://registry.yarnpkg.com/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.3.tgz#9edec61b22c3082018a79f6d1c30289ddf3d9d11" @@ -2204,6 +2256,19 @@ resolved "https://registry.yarnpkg.com/@pkgr/core/-/core-0.1.2.tgz#1cf95080bb7072fafaa3cb13b442fab4695c3893" integrity sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ== +"@puppeteer/browsers@2.13.0": + version "2.13.0" + resolved "https://registry.yarnpkg.com/@puppeteer/browsers/-/browsers-2.13.0.tgz#10f980c6d65efeff77f8a3cac6e1a7ac10604500" + integrity sha512-46BZJYJjc/WwmKjsvDFykHtXrtomsCIrwYQPOP7VfMJoZY2bsDF9oROBABR3paDjDcmkUye1Pb1BqdcdiipaWA== + dependencies: + debug "^4.4.3" + extract-zip "^2.0.1" + progress "^2.0.3" + proxy-agent "^6.5.0" + semver "^7.7.4" + tar-fs "^3.1.1" + yargs "^17.7.2" + "@puppeteer/browsers@2.3.1": version "2.3.1" resolved "https://registry.yarnpkg.com/@puppeteer/browsers/-/browsers-2.3.1.tgz#238200dbdce5c00ae28c8f2a55ac053c3be71668" @@ -2264,6 +2329,18 @@ "@sigstore/core" "^3.1.0" "@sigstore/protobuf-specs" "^0.5.0" +"@simple-git/args-pathspec@^1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@simple-git/args-pathspec/-/args-pathspec-1.0.3.tgz#9ef4a2ad5f49ab4056362d03f93f775b93118ca5" + integrity sha512-ngJMaHlsWDTfjyq9F3VIQ8b7NXbBLq5j9i5bJ6XLYtD6qlDXT7fdKY2KscWWUF8t18xx052Y/PUO1K1TRc9yKA== + +"@simple-git/argv-parser@^1.1.0": + version "1.1.1" + resolved "https://registry.yarnpkg.com/@simple-git/argv-parser/-/argv-parser-1.1.1.tgz#275b839c6eeb5030872c73b1ea839a416885da9d" + integrity sha512-Q9lBcfQ+VQCpQqGJFHe5yooOS5hGdLFFbJ5R+R5aDsnkPCahtn1hSkMcORX65J2Z5lxSkD0lQorMsncuBQxYUw== + dependencies: + "@simple-git/args-pathspec" "^1.0.3" + "@sinclair/typebox@^0.34.0": version "0.34.48" resolved "https://registry.yarnpkg.com/@sinclair/typebox/-/typebox-0.34.48.tgz#75b0ead87e59e1adbd6dccdc42bad4fddee73b59" @@ -2356,19 +2433,147 @@ dependencies: defer-to-connect "^2.0.0" -"@theia/application-manager@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/application-manager/-/application-manager-1.70.0.tgz#bbb81a1e5e75b0ed57547c478443364589152e46" - integrity sha512-Vi7qpwJDEEuYse9crkDUMdXvuWWgOp/oInyFzBM3hj3Ji2XE7bqfVPV9uPJmBadrsKiUeMqz1+lzyKgakrF6iQ== +"@theia/ai-anthropic@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-anthropic/-/ai-anthropic-1.70.2.tgz#73e92a4bd962a37f983bd623a5ac5a5a52314bb3" + integrity sha512-k/HyPz0/ftRTQYoQA3ZsGUTxNVbmx9Fm+ErDteN4EqUrWI+keW1B26yW3iMEMuZZKHWJXoL/tzIjKYxH8Gqd0A== + dependencies: + "@anthropic-ai/sdk" "^0.65.0" + "@theia/ai-core" "1.70.2" + "@theia/core" "1.70.2" + +"@theia/ai-chat-ui@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-chat-ui/-/ai-chat-ui-1.70.2.tgz#2189dcecccfc92adc6efe11bf28e8c207feb27dc" + integrity sha512-1U8yUX57cKPUpXjZzvxA5hMc+w113L9ePu0ug+abmn4EYKEmEHKU92kFPGIpk6/WsVc64+aJipv9Mum7A4r0bA== + dependencies: + "@theia/ai-chat" "1.70.2" + "@theia/ai-core" "1.70.2" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/editor-preview" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + "@theia/preferences" "1.70.2" + "@theia/workspace" "1.70.2" + date-fns "^4.1.0" + tslib "^2.6.2" + uuid "^9.0.1" + +"@theia/ai-chat@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-chat/-/ai-chat-1.70.2.tgz#ce2a58df2a66bf9a165124a6b749e5b229b28efd" + integrity sha512-DDjKLFbkYp8mIL9g8pQp1cQNxjk2QoMr+kcJVmhmCtW8R/oKlr/WbGhIIXJWVS+toKmXypB/SPIjk1cUsFKprQ== + dependencies: + "@theia/ai-core" "1.70.2" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/file-search" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + "@theia/workspace" "1.70.2" + js-yaml "^4.1.0" + tslib "^2.6.2" + +"@theia/ai-core@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-core/-/ai-core-1.70.2.tgz#050cac9c985ac6e8b7831f4d05399aa7e075a669" + integrity sha512-YZXKXxTpCgh4xwqErtoM1TUQUifrehxprMAz5vkPqx614JohvWJ0FYSRe/HHNUFTOmHRKyzRdDmtjjOH5OhFxA== + dependencies: + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + "@theia/output" "1.70.2" + "@theia/variable-resolver" "1.70.2" + "@theia/workspace" "1.70.2" + "@types/js-yaml" "^4.0.9" + fast-deep-equal "^3.1.3" + js-yaml "^4.1.0" + tslib "^2.6.2" + undici "^7.16.0" + +"@theia/ai-ide@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-ide/-/ai-ide-1.70.2.tgz#bd28e28b76490eaacd4431944258c8ebda4a3424" + integrity sha512-1jdQp4OvxX+gkQsRjGtZ1f85EoSuLJOnxDE/vI+EPGbg3UFX+DaBpFvS5sRFYctUJaoJP6xR5/eUoPZVzCbx5A== + dependencies: + "@theia/ai-chat" "1.70.2" + "@theia/ai-chat-ui" "1.70.2" + "@theia/ai-core" "1.70.2" + "@theia/ai-mcp" "1.70.2" + "@theia/ai-terminal" "1.70.2" + "@theia/core" "1.70.2" + "@theia/debug" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/markers" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/navigator" "1.70.2" + "@theia/preferences" "1.70.2" + "@theia/scm" "1.70.2" + "@theia/search-in-workspace" "1.70.2" + "@theia/task" "1.70.2" + "@theia/terminal" "1.70.2" + "@theia/workspace" "1.70.2" + date-fns "^4.1.0" + ignore "^6.0.0" + js-yaml "^4.1.0" + minimatch "^10.0.3" + puppeteer-core "^24.10.0" + simple-git "^3.25.0" + +"@theia/ai-mcp@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-mcp/-/ai-mcp-1.70.2.tgz#98be2feeb71a24321890343e59ab08f29be114ba" + integrity sha512-SqtfHb9n1Jy0lpD/Ub/5A0tQwV8g7PaiWo2V89fAAzoISelQOS7uMVnf0W/2nfqzku8SHKAJVGvxSYg5QXMefw== + dependencies: + "@modelcontextprotocol/sdk" "^1.25.1" + "@theia/ai-core" "1.70.2" + "@theia/core" "1.70.2" + "@theia/workspace" "1.70.2" + +"@theia/ai-openai@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-openai/-/ai-openai-1.70.2.tgz#228f9b73d1a4b70ea29b3bf9add3f964849a642a" + integrity sha512-SiVRcXbhD2MEWqN572H4JwL+i9OGoPWiKsTZKWSYBjyEihDlcHlMcit7BhWvnaWLfzSem/b08nZ5xfK+UBxLEA== + dependencies: + "@theia/ai-core" "1.70.2" + "@theia/core" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/workspace" "1.70.2" + openai "^6.3.0" + tslib "^2.6.2" + +"@theia/ai-terminal@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ai-terminal/-/ai-terminal-1.70.2.tgz#e15c9ee6ef65cb3899e778d65b186614918c4e60" + integrity sha512-H7TNkNu2SPmfGP16quNni/abJ6y6qroxQcFiNoGbe7V/HQrkQFxPzbFXynJzKzrf6ZSapioqFnkBVbpFnqwHkQ== + dependencies: + "@theia/ai-chat" "1.70.2" + "@theia/ai-chat-ui" "1.70.2" + "@theia/ai-core" "1.70.2" + "@theia/core" "1.70.2" + "@theia/terminal" "1.70.2" + "@theia/workspace" "1.70.2" + zod "^4.2.1" + +"@theia/application-manager@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/application-manager/-/application-manager-1.70.2.tgz#02b5dc512e2c17fefb74fa74a0982866a0c4a662" + integrity sha512-mzlNjrOa8MKAEzCHf117qvToZAj0w+VsgQ7vULebCl4IukVBnkvEjHV49pSuiuL3vUujvqYuPt+I0M8E6+e93w== dependencies: "@babel/core" "^7.10.0" "@babel/plugin-transform-classes" "^7.10.0" "@babel/plugin-transform-runtime" "^7.10.0" "@babel/preset-env" "^7.10.0" "@electron/rebuild" "^4.0.0" - "@theia/application-package" "1.70.0" - "@theia/ffmpeg" "1.70.0" - "@theia/native-webpack-plugin" "1.70.0" + "@theia/application-package" "1.70.2" + "@theia/ffmpeg" "1.70.2" + "@theia/native-webpack-plugin" "1.70.2" "@types/fs-extra" "^4.0.2" "@types/semver" "^7.5.0" babel-loader "^8.2.2" @@ -2396,12 +2601,12 @@ worker-loader "^3.0.8" yargs "^15.3.1" -"@theia/application-package@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/application-package/-/application-package-1.70.0.tgz#ae99b6cbc175c189519caa018212f2be8f0cf061" - integrity sha512-xqdijslnrZfqdzjf4D9MhAua2L6L/rgPviGdjGqCpgLUkbhHegAPLoBWH5MalX+tSfjdRQn+inpD2SFs/f+oBg== +"@theia/application-package@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/application-package/-/application-package-1.70.2.tgz#d159fa2d185cdb5d15d446a253e8ed1978acdb98" + integrity sha512-lhp2tRcsWIc8Ny+bMcRdQoBcySUv1wY3kK/Tm5ZV1MDvTpSpjYX1gTeaQxdGHH+vxUU1ozSCTZQHp3ZN+VJ7Wg== dependencies: - "@theia/request" "1.70.0" + "@theia/request" "1.70.2" "@types/fs-extra" "^4.0.2" "@types/semver" "^7.5.0" "@types/write-json-file" "^2.2.1" @@ -2415,16 +2620,16 @@ write-json-file "^2.2.0" "@theia/cli@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/cli/-/cli-1.70.0.tgz#54b7b3fa330349665e78c3b2407860294b55817f" - integrity sha512-bHteqbbfjs7AqM1UdBBYJZEKkXAtbJXLTXOyvsA62yXsfP5EsP/LG1MmeLjRHRY8pwoH8fSL6rx60EOTtAhDzw== - dependencies: - "@theia/application-manager" "1.70.0" - "@theia/application-package" "1.70.0" - "@theia/ffmpeg" "1.70.0" - "@theia/localization-manager" "1.70.0" - "@theia/ovsx-client" "1.70.0" - "@theia/request" "1.70.0" + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/cli/-/cli-1.70.2.tgz#0e1506997f975d7988b49ffea284edfad6861f66" + integrity sha512-aNoW2kWcUUc4wbIprg0sNLAzvOz/jSl8KLiaXDVNMfvBR3yDtI9iep5rgxXKNAJBdRXMF2SnpLkA8Eopc6N1Qw== + dependencies: + "@theia/application-manager" "1.70.2" + "@theia/application-package" "1.70.2" + "@theia/ffmpeg" "1.70.2" + "@theia/localization-manager" "1.70.2" + "@theia/ovsx-client" "1.70.2" + "@theia/request" "1.70.2" "@types/chai" "^4.2.7" "@types/mocha" "^10.0.0" "@types/node-fetch" "^2.5.7" @@ -2445,10 +2650,22 @@ tslib "^2.6.2" yargs "^15.3.1" -"@theia/core@1.70.0", "@theia/core@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/core/-/core-1.70.0.tgz#30fb63a836770749e30ca39aae2091d54e333057" - integrity sha512-XeX/rLDdGE7GawE+kR52LuHXaSlcNpREaeAVlFdP0YO5XmrQKaSUIwszWzeOSmMemmXvZEjh3RMr5PelC7cFpg== +"@theia/console@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/console/-/console-1.70.2.tgz#4ab4f2e6e853c962fab401996c4e51d79df27254" + integrity sha512-spsVy44ISz9hCgl0/Yo9+uWUHlI7dqmP28ooVVeUX3ArGbLMhLdo911e3zoBCI2lF+Rc5Hb/1iW8KnVJhNZAJw== + dependencies: + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + anser "^2.0.1" + tslib "^2.6.2" + +"@theia/core@1.70.2", "@theia/core@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/core/-/core-1.70.2.tgz#7aec33e31f9e7c7b8e5870bebb2ee165dd1121ed" + integrity sha512-8bMMN41+09NBbvmE1v3uqTVj+3OLrabEjt6HjigZ5BJkjdBRquwohreGXIRNdvTZTWmZCYwp22jfKzkUWuJP6g== dependencies: "@babel/runtime" "^7.10.0" "@lumino/algorithm" "^2.0.4" @@ -2462,8 +2679,8 @@ "@lumino/virtualdom" "^2.0.4" "@lumino/widgets" "2.7.5" "@parcel/watcher" "^2.5.0" - "@theia/application-package" "1.70.0" - "@theia/request" "1.70.0" + "@theia/application-package" "1.70.2" + "@theia/request" "1.70.2" "@types/body-parser" "^1.16.4" "@types/express" "^4.17.21" "@types/fs-extra" "^4.0.2" @@ -2521,52 +2738,87 @@ ws "^8.17.1" yargs "^15.3.1" -"@theia/editor@1.70.0", "@theia/editor@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/editor/-/editor-1.70.0.tgz#c92827bfcd9010ee4930fabe1f4fb52bf7229bc4" - integrity sha512-Y9X9WdhTAopJU6DKkeUNlDHqP/atCxyzcZuMewfPu3UPFTEYUzxagaDwehXBpCYSeyakLJ5xQVbD/ztnnlES8A== +"@theia/debug@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/debug/-/debug-1.70.2.tgz#bcd78ac6b5cde00ba901971537b36ac83ead48fd" + integrity sha512-CyZ7QlOCojRhBsxNzt55Z0+8oR9aAgMALgGBtBI4OVSCFD2FEa1Wc4woYN13xiu8MC87KEi8k1zxPlERTDjROg== + dependencies: + "@theia/console" "1.70.2" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/markers" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + "@theia/output" "1.70.2" + "@theia/process" "1.70.2" + "@theia/task" "1.70.2" + "@theia/terminal" "1.70.2" + "@theia/test" "1.70.2" + "@theia/variable-resolver" "1.70.2" + "@theia/workspace" "1.70.2" + "@vscode/debugprotocol" "^1.51.0" + fast-deep-equal "^3.1.3" + jsonc-parser "^2.2.0" + p-debounce "^2.1.0" + tslib "^2.6.2" + +"@theia/editor-preview@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/editor-preview/-/editor-preview-1.70.2.tgz#8927e54787fad571387a1d4fc1e123199ae9624e" + integrity sha512-wsA4e4sM4U0rYenKmN9H6l1hDVLI11SXlTXNwaZodU2cbTVZsWgQwCKGW0D2V4mPFMwXauMe1EH1WqplxM504w== + dependencies: + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/navigator" "1.70.2" + tslib "^2.6.2" + +"@theia/editor@1.70.2", "@theia/editor@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/editor/-/editor-1.70.2.tgz#61a6b1499b937b50d26e95955e3d019516c9d3b7" + integrity sha512-O9MSGxt/xpTDbelPgDTlZFynqlDmnWsY84m3Tvko8JtB3nKXMqYcYJud04WqJ1QtbVfHYllUhxFeSzwn1oI64Q== dependencies: - "@theia/core" "1.70.0" - "@theia/variable-resolver" "1.70.0" + "@theia/core" "1.70.2" + "@theia/variable-resolver" "1.70.2" tslib "^2.6.2" "@theia/electron@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/electron/-/electron-1.70.0.tgz#1622e042ce5598f50c72f705c664aa8d3d613584" - integrity sha512-k9AJMNldhtBJJF38J3mTpQaw8BvLj17wRgqpsxZAdq3z5uyOYGOZEMTzsmXnRqz7n2A442Ay5MzQf5HFBZv8Dw== + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/electron/-/electron-1.70.2.tgz#11a0f82a9d2af33ef7d86eb142010fb146ca9939" + integrity sha512-SDBm5/fWkFHqlN27Cw1I2tfLCDqWBP9tdHa/HVP1BFekgp/1nnGWb88iSVMKjHvpqv8UzZMkVZ7fGwF5Di/rcA== dependencies: electron-store "^8.0.0" fix-path "^4.0.0" native-keymap "^2.2.1" -"@theia/ffmpeg@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/ffmpeg/-/ffmpeg-1.70.0.tgz#c5a929cd2c912c33fab49c8a7a2e0e7b5ea725e3" - integrity sha512-wcIEJKY7nUS+PUSOpvbOlVR0eiP6+A2XulAuBZYHt7xml12CvrWLXijMd9kGX9I9RsjPQaz0qeWcLTXKqgro1A== +"@theia/ffmpeg@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ffmpeg/-/ffmpeg-1.70.2.tgz#3af95fdd6470e2972bb0716201195cde610f5126" + integrity sha512-OhPQzTRzLuljBlgVZCirvvLrfkdzXM8Xxf1e1Gfzk+vhGLullV3B8FKmHN46V77nKGcB+b44if5Nj7rr151+jg== dependencies: "@electron/get" "^2.0.0" tslib "^2.6.2" unzipper "^0.9.11" -"@theia/file-search@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/file-search/-/file-search-1.70.0.tgz#6d1abfa67ae842610172a79729cc08b28ad0528f" - integrity sha512-rFCB8QSUW7iQokHU4Jq8HAjL4XznGgoivCcRqvuGpDcyQPCMtg4/+bYkS6O9rpfX/lohtvLRjRJVNkMIV5fZRA== +"@theia/file-search@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/file-search/-/file-search-1.70.2.tgz#830797132e666a8c675075d0a4e2e7f47bcb9b5b" + integrity sha512-sE+9iVT+kZzWusihTflBswFL9DNvgN7xqX4Zgxdd0X4F+lqUmnUjpyAFt4uEqA63XaYHQkVPRVs/rBbYwrEoUA== dependencies: - "@theia/core" "1.70.0" - "@theia/editor" "1.70.0" - "@theia/filesystem" "1.70.0" - "@theia/process" "1.70.0" - "@theia/workspace" "1.70.0" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/process" "1.70.2" + "@theia/workspace" "1.70.2" "@vscode/ripgrep" "^1.14.2" tslib "^2.6.2" -"@theia/filesystem@1.70.0", "@theia/filesystem@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/filesystem/-/filesystem-1.70.0.tgz#57066b166f2089cad477d47ca9fceaf360837d57" - integrity sha512-w1On60D0DGv+4Nhg0kQwwUle8GbGqyp0+/HiOpPZpKdlouTeYRcT2PA30MtSmcthfgnM2NZS8QmLdtBOandi8w== +"@theia/filesystem@1.70.2", "@theia/filesystem@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/filesystem/-/filesystem-1.70.2.tgz#41ca5dfe9ff57fa06c6e86b8618bfe970412ba76" + integrity sha512-CLHNeFaDwq7VRaU+PDq5TB77OdMjfeWEmuwV7/mcuWQeGOMCotbr7MI4I9KDfxLCcA2MLpeWzuqouf1cVmsXrA== dependencies: - "@theia/core" "1.70.0" + "@theia/core" "1.70.2" "@types/body-parser" "^1.17.0" "@types/multer" "^1.4.7" "@types/tar-fs" "^1.16.1" @@ -2586,10 +2838,10 @@ tslib "^2.6.2" vscode-languageserver-textdocument "^1.0.1" -"@theia/localization-manager@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/localization-manager/-/localization-manager-1.70.0.tgz#735886eca7dfa81950608cf5ccc9bec4380bd64a" - integrity sha512-nOzSqlMwARQZyxa2/LbJ6EaWEEVlyW2BvPVRmipvupFll1+VvbvPNG4tJMKwgjbpsR/pcqCQvrJWXnNEmBPO+w== +"@theia/localization-manager@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/localization-manager/-/localization-manager-1.70.2.tgz#144470cda085b18f6dd9639b25489ce60877b83c" + integrity sha512-Bna24C03vH+kApmXhAFVdu61mNBktxBjZtC/0O3wtMVA10IGSIkWoZcxLVn6S60caVi2crvlM+S4HJWNjaja6Q== dependencies: "@types/bent" "^7.0.1" "@types/fs-extra" "^4.0.2" @@ -2602,22 +2854,22 @@ tslib "^2.6.2" typescript "~5.9.3" -"@theia/markers@1.70.0", "@theia/markers@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/markers/-/markers-1.70.0.tgz#30d0fc25001366287375b801e57787f4adfa2c94" - integrity sha512-dPxiZCfLqLynm6og9Akw7q1E3N80BZ/jG+u5RVL5QeXNlSmqaJhwLl7Ri6c3z3UEv/xmZsS2KrSBBal4bFWtgA== +"@theia/markers@1.70.2", "@theia/markers@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/markers/-/markers-1.70.2.tgz#d47e5f8bcb2b57d0c9cd521b2ee3f1eae4d6677b" + integrity sha512-h4OJahvEg6iyIgLnoqJ4gNEUwzsypMW0005NwvbgwD6CPe0EKY9ifkbKxSu83v/DcFrWN2twLvpE6waBZWmAKg== dependencies: - "@theia/core" "1.70.0" - "@theia/filesystem" "1.70.0" - "@theia/workspace" "1.70.0" + "@theia/core" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/workspace" "1.70.2" tslib "^2.6.2" "@theia/messages@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/messages/-/messages-1.70.0.tgz#f877f86259e7d70d995d511aa858693fcec91b13" - integrity sha512-IHs3mZB/8uVprYcLCtFdb7lUAS1mH9kSIKI6oHJcS2j/a8PC6Pr8ALlMQmeVC/InW/BurullDZftNySEEX1sYw== + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/messages/-/messages-1.70.2.tgz#61b21be40a320737ad31f21764309fe868fc892f" + integrity sha512-sFiJNTnQPzJGxmKcSXvvlgeNG5GErjS3ZuwQyArrA2ipwmGSMnHlIG0c8ASIsZP/7BgtIpf5jqs6fq8feZC/SQ== dependencies: - "@theia/core" "1.70.0" + "@theia/core" "1.70.2" react-perfect-scrollbar "^1.5.3" ts-md5 "^1.2.2" tslib "^2.6.2" @@ -2630,18 +2882,18 @@ dompurify "3.2.7" marked "14.0.0" -"@theia/monaco@1.70.0", "@theia/monaco@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/monaco/-/monaco-1.70.0.tgz#ea57938c5cc366ded289251c9d8617c1779d1522" - integrity sha512-kSxnR5TolX7mmMuQN6L2Z6DgpevVpgOq5koiplJrDhwQ6M6VK3qKzE6/oSLqdl5FMXdDKsRpqDqeKx/fjze9dA== +"@theia/monaco@1.70.2", "@theia/monaco@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/monaco/-/monaco-1.70.2.tgz#3716a133e097aabf235b5d38bcddef8c1dfab2c5" + integrity sha512-zteo7PGJ2APHhIgqaJYW1IzPz9/jSJH0p2PU2fDgcq3uknnSDHhOLD962X/GsMUPb6WDs7PIlfTVsv0UM65O0w== dependencies: - "@theia/core" "1.70.0" - "@theia/editor" "1.70.0" - "@theia/filesystem" "1.70.0" - "@theia/markers" "1.70.0" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/markers" "1.70.2" "@theia/monaco-editor-core" "1.108.201" - "@theia/outline-view" "1.70.0" - "@theia/workspace" "1.70.0" + "@theia/outline-view" "1.70.2" + "@theia/workspace" "1.70.2" fast-plist "^0.1.2" idb "^4.0.5" jsonc-parser "^2.2.0" @@ -2649,124 +2901,213 @@ vscode-oniguruma "2.0.1" vscode-textmate "^9.2.0" -"@theia/native-webpack-plugin@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/native-webpack-plugin/-/native-webpack-plugin-1.70.0.tgz#1e95c8bfb22da13d429e2f6fddeee3140d649381" - integrity sha512-visIXX0sDSPAFW0EWM3Ls7KYS/z94p482rbvjSRDhFxKi0ib6jh8aqlic4dIlcdzfsZNM7wmRtct+raYKWuORA== +"@theia/native-webpack-plugin@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/native-webpack-plugin/-/native-webpack-plugin-1.70.2.tgz#cb48cd3f5a1d8f20dda05d400032ceeb64d6e82e" + integrity sha512-iXVDEiWCyNwWLsv7BYVSZcMt95GoU+KR7Dp3n3gX/q6sbJUr6DoFdgAEIS5h1rCK28fpIjQl/564JH6d9vJXew== dependencies: detect-libc "^2.0.2" tslib "^2.6.2" webpack "^5.76.0" -"@theia/navigator@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/navigator/-/navigator-1.70.0.tgz#bb215d8538942343cd20d320ac019c373061dd99" - integrity sha512-O8eIiffJ6Z8quovhShin7TuElgbcpZ8lLLSLyRL/ba25Ih66nRM2R/if0sBSTw3wUkNkQXMEAA0XP7cMCidlqg== +"@theia/navigator@1.70.2", "@theia/navigator@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/navigator/-/navigator-1.70.2.tgz#d327cf15e05a413362b6b0610fd7f67074ec8941" + integrity sha512-MQngqSqfAFX2KFceSln4tDf5P3cBUk/TiKXpjtEpQoTROV0E+qiOTldIsDhC09D+8beAJi72yzxIkf7ieHxmpA== dependencies: - "@theia/core" "1.70.0" - "@theia/filesystem" "1.70.0" - "@theia/workspace" "1.70.0" + "@theia/core" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/workspace" "1.70.2" minimatch "^10.0.3" tslib "^2.6.2" -"@theia/outline-view@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/outline-view/-/outline-view-1.70.0.tgz#f1b65d16819839d239463bea9a7760c212b06ec7" - integrity sha512-xeR2W5pHpmgpvqI6+M4oQcZ+9KKiLey+Ps/Rf3wVpt7rR/k4buTblJ48yHqlt6QKRXvCK0r7ZcEH9Bz1JziPdg== +"@theia/outline-view@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/outline-view/-/outline-view-1.70.2.tgz#491b2099b849664be110071cb3b035cd63196e54" + integrity sha512-MJ60EAeeQiMBvOtZnEIbE4/P40LDG35qtMZM3OoUqWaelg5rUFxfUqTDV23kteFy2k9ByO1ZEhUSdXH3alwmSQ== dependencies: - "@theia/core" "1.70.0" + "@theia/core" "1.70.2" tslib "^2.6.2" -"@theia/ovsx-client@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/ovsx-client/-/ovsx-client-1.70.0.tgz#ce951d5b3cbe258a78b32d5e1134ecdb77bcb400" - integrity sha512-g9Aw2qV1Sn3xj1wFA81VNBuE6ee8+sRG7DeuEmTXxBqAZV7XpVulbLwHey7E5pDfkG2LilGBOYbLePwPl38zKA== +"@theia/output@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/output/-/output-1.70.2.tgz#65a3c98da2ac2dfa2387918b8e8f984bed8f5937" + integrity sha512-8V0DM28yDe0Wm+oHmmySbsfMMr4cdCPWi0T1EF7d04yRhRQeuLRYc/J6IDJNcwz/2IGF7n29gCG1h4lHKip7KQ== dependencies: - "@theia/request" "1.70.0" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + p-queue "^8.0.1" + tslib "^2.6.2" + +"@theia/ovsx-client@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/ovsx-client/-/ovsx-client-1.70.2.tgz#0f7ad5450d36be91ac70aa7548dff037f34be54d" + integrity sha512-t1E8Z8FKzq+4+ACjWwkfLR/+pl02ccx38LxdoI7/ciyFlhdClC1OBxRdLV8U9Z6CJjhwppzsUskr6HgJ2b0bYw== + dependencies: + "@theia/request" "1.70.2" limiter "^2.1.0" semver "^7.5.4" tslib "^2.6.2" -"@theia/preferences@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/preferences/-/preferences-1.70.0.tgz#235a5ba4a4cce902ed03c4c250a76044c8ab58c3" - integrity sha512-ZIq+DQ5a20EhqS/iobDvRXW0gESdRYgaoa+eve29uZxgyPTH6jcFlcmMD4zNe9OFhmWCGFEHoLhAMAsxjVo9yQ== +"@theia/preferences@1.70.2", "@theia/preferences@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/preferences/-/preferences-1.70.2.tgz#c445d2554c4d143b4053d96c247f7e123518c1da" + integrity sha512-CyOV/aqp2E0E/VaaRJ/NOly5FqjOEl65MsbvA1GDlA4Z6bCwbG++URy4OAkKFnKa32BD3a/yRosZx4ekgC56+Q== dependencies: - "@theia/core" "1.70.0" - "@theia/editor" "1.70.0" - "@theia/filesystem" "1.70.0" - "@theia/monaco" "1.70.0" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/monaco" "1.70.2" "@theia/monaco-editor-core" "1.108.201" - "@theia/userstorage" "1.70.0" - "@theia/workspace" "1.70.0" + "@theia/userstorage" "1.70.2" + "@theia/workspace" "1.70.2" async-mutex "^0.3.1" fast-deep-equal "^3.1.3" jsonc-parser "^2.2.0" p-debounce "^2.1.0" tslib "^2.6.2" -"@theia/process@1.70.0", "@theia/process@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/process/-/process-1.70.0.tgz#efc3c640e50091b8566dba1dac8d729479648b95" - integrity sha512-sNJbGAzSeE+8r6tFIoecAyIJo/J9lx5b256jaKz7HO9mOFCek7NFvnwLKRFKiNunSjFLsGDkv3mC1nJteIY6BQ== +"@theia/process@1.70.2", "@theia/process@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/process/-/process-1.70.2.tgz#cc7df21f9db856e30361b6db90f37b500cd38843" + integrity sha512-Jp+oIpJeiZ3p43CuYDB/YMz82SOMMMlt4J/UQSnpmyR/UJ8lqdOsSkyPl1F+qfzbpYtDwhwytAet6+1oJWXT4w== dependencies: - "@theia/core" "1.70.0" + "@theia/core" "1.70.2" node-pty "1.2.0-beta.12" string-argv "^0.1.1" tslib "^2.6.2" -"@theia/request@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/request/-/request-1.70.0.tgz#361da0d77d2f82f9bdc866c7f57f340360e39777" - integrity sha512-Y2l5BYI+VaASnFJKPb7hs6eLW1zDfcfG88EM9C8pEOyaSbz3iIG8q2wq278pq9COevVAPFf6QvagrQfBaZ3Exw== +"@theia/request@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/request/-/request-1.70.2.tgz#014737ddfbbeda1cb5dacd8c163cd8a0374b3174" + integrity sha512-x73Vw95wGTUluuP0FsP/ioetdDPwaizITJV0Pg1AlhJD2WEamMRGA/6wtS+HeHk86bClpKYdSeNXKd8gsTChlg== dependencies: http-proxy-agent "^5.0.0" https-proxy-agent "^5.0.0" tslib "^2.6.2" -"@theia/terminal@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/terminal/-/terminal-1.70.0.tgz#0813d4e727534a93c7915f5311236829162bce72" - integrity sha512-SAM/BqExZEWCgNfaBG90x5q8fPEn8ZPvJ5zriFFolcCAcIbq2+7Zu9JxlQLaV5ZzbTTwRb+cIG+A3X25eLOTyg== - dependencies: - "@theia/core" "1.70.0" - "@theia/editor" "1.70.0" - "@theia/file-search" "1.70.0" - "@theia/filesystem" "1.70.0" - "@theia/process" "1.70.0" - "@theia/variable-resolver" "1.70.0" - "@theia/workspace" "1.70.0" +"@theia/scm@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/scm/-/scm-1.70.2.tgz#12adc946384bc21a0fee7e7497713f427aafd0d5" + integrity sha512-+ZEw4wmYPh8PH4SnsNzDJ2SgE5ybxWaZRxZKUrSZG2Gkw5eu7fuUW8/JUCeZIfx/o974oBKKmTr2qjYkF+OZNQ== + dependencies: + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + "@types/diff" "^5.2.1" + diff "^5.2.0" + p-debounce "^2.1.0" + react-textarea-autosize "^8.5.5" + ts-md5 "^1.2.2" + tslib "^2.6.2" + +"@theia/search-in-workspace@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/search-in-workspace/-/search-in-workspace-1.70.2.tgz#ac39ba53b42c5e8d88a41abd00014a83c6b66f6c" + integrity sha512-1mJ89qcMYAALslU9i6ilL3RnMUU4WiDNJSz12yZh4l07Ul/eKp9gvyVxTZNGN1kB1xka3wr7jm8JKhnPfE8XYA== + dependencies: + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/navigator" "1.70.2" + "@theia/process" "1.70.2" + "@theia/workspace" "1.70.2" + "@vscode/ripgrep" "^1.14.2" + minimatch "^10.0.3" + react-textarea-autosize "^8.5.5" + tslib "^2.6.2" + +"@theia/task@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/task/-/task-1.70.2.tgz#de51753d52194036ef0b192b451ba2b02c69b18f" + integrity sha512-8wgWCTzdNa8/t4szkf74JEefkwEKw9siy+cliDab8wult4Ymh6A0wCNRv5oTJGF/rxjxlNVcYahkCDUwLPCG/w== + dependencies: + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/markers" "1.70.2" + "@theia/monaco" "1.70.2" + "@theia/monaco-editor-core" "1.108.201" + "@theia/process" "1.70.2" + "@theia/terminal" "1.70.2" + "@theia/terminal-manager" "1.70.2" + "@theia/userstorage" "1.70.2" + "@theia/variable-resolver" "1.70.2" + "@theia/workspace" "1.70.2" + async-mutex "^0.3.1" + jsonc-parser "^2.2.0" + p-debounce "^2.1.0" + tslib "^2.6.2" + +"@theia/terminal-manager@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/terminal-manager/-/terminal-manager-1.70.2.tgz#2a6ae60d57464a58cfca35b9bf1bbc9592746edb" + integrity sha512-sh4sLcLvCvQKCln8qBk8WL9Vp7PCuNQOE/bWFe2SQjjrL21an03ITJHlyJhfp31M9jLRk7pba+2EWjmUpWX1yw== + dependencies: + "@theia/core" "1.70.2" + "@theia/preferences" "1.70.2" + "@theia/terminal" "1.70.2" + +"@theia/terminal@1.70.2", "@theia/terminal@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/terminal/-/terminal-1.70.2.tgz#9677a4ecb2f39fbd0da2bdde383dae67a2a9fe8b" + integrity sha512-sH6cA4SOnWC9L3t12yf+9OK7v9Mf6/hccc1s+EDIjeqWFy0nww8cSpzciipEGHi9yS04Hqpvp6uvH/bfwH5IJg== + dependencies: + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/file-search" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/process" "1.70.2" + "@theia/variable-resolver" "1.70.2" + "@theia/workspace" "1.70.2" tslib "^2.6.2" xterm "^5.3.0" xterm-addon-fit "^0.8.0" xterm-addon-search "^0.13.0" xterm-addon-webgl "^0.16.0" -"@theia/userstorage@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/userstorage/-/userstorage-1.70.0.tgz#ad2fd44aa6057a69bea19d47bda75ff2ed9fa248" - integrity sha512-iIngjSTkdZxz7VrGkjhsb2CAgX31He+iiQz0pyYv+mduEQaIeEZj/A0a82QTbc97uBGQDp2z4RHw1fPrq8wbMQ== +"@theia/test@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/test/-/test-1.70.2.tgz#997b8caff89020fc5454064f69baee157ad91436" + integrity sha512-E3L9o8ZBzv0oZ5w9FbZ0Or+1X0HMz+U2yHOaUuJ6iCyho6WMhwQ5ybTJsFlpJBVid56RRcRsh88puUySp7Fl7A== dependencies: - "@theia/core" "1.70.0" - "@theia/filesystem" "1.70.0" + "@theia/core" "1.70.2" + "@theia/editor" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/navigator" "1.70.2" + "@theia/terminal" "1.70.2" + xterm "^5.3.0" + xterm-addon-fit "^0.8.0" + +"@theia/userstorage@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/userstorage/-/userstorage-1.70.2.tgz#a1053d483a3d18d3887099a6488ffb57a90d86f6" + integrity sha512-PvfH5yoBFyFaNjyNNjkp56VcLuBhgTS7NIpsZVT18cZ6sep7WvbxVbNs/kqshz/rqCHqZ7IKiobXspD404rKAQ== + dependencies: + "@theia/core" "1.70.2" + "@theia/filesystem" "1.70.2" tslib "^2.6.2" -"@theia/variable-resolver@1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/variable-resolver/-/variable-resolver-1.70.0.tgz#ff8ec6ef9c2991014d78b52c3b9a0e51ed07b31e" - integrity sha512-E9QrpqB8NV0S8xBYYo/LCC+7MTFOT7EcV7heivghHkhleokxEjf0HIMcUd7W4p8kJP7YA96qPKqrnu02HPd++g== +"@theia/variable-resolver@1.70.2": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/variable-resolver/-/variable-resolver-1.70.2.tgz#e21b080d514f3d45755468714e6bca0a148f97dc" + integrity sha512-8omYch7bN1N1hy+YAQ2cKct5pW4bx+XyJHh4zojyP6wXu70dxr0P0VHYhd//6IGL2BreyXLsqbCZf+oR1Iki+A== dependencies: - "@theia/core" "1.70.0" + "@theia/core" "1.70.2" tslib "^2.6.2" -"@theia/workspace@1.70.0", "@theia/workspace@~1.70.0": - version "1.70.0" - resolved "https://registry.yarnpkg.com/@theia/workspace/-/workspace-1.70.0.tgz#f82d8f37e27e0908a916500659a0855cdbf6167b" - integrity sha512-8ft0hZkexNvbnmpGOo8CwcPRWPNKFBFrP+paOwfwH6jU8e95uI+5+sbmLuuRYkBUcX0l6ojlKNEARIligfzZQQ== +"@theia/workspace@1.70.2", "@theia/workspace@~1.70.0": + version "1.70.2" + resolved "https://registry.yarnpkg.com/@theia/workspace/-/workspace-1.70.2.tgz#503eb6eacb1ef411c82c75540deff71bac31cf43" + integrity sha512-gz0dMmYizB14GscIZcz2dcFiqteG5YEEYJptCvuR/+YCsL56fZYkThpWGvcY0DwGO81f2XQEORsQe82KqVAxrw== dependencies: - "@theia/core" "1.70.0" - "@theia/filesystem" "1.70.0" - "@theia/variable-resolver" "1.70.0" + "@theia/core" "1.70.2" + "@theia/filesystem" "1.70.2" + "@theia/variable-resolver" "1.70.2" jsonc-parser "^2.2.0" tslib "^2.6.2" valid-filename "^2.0.1" @@ -2877,6 +3218,11 @@ dependencies: "@types/node" "*" +"@types/diff@^5.2.1": + version "5.2.3" + resolved "https://registry.yarnpkg.com/@types/diff/-/diff-5.2.3.tgz#dcdcfa40df9f011f9465180e0196dfbd921971d9" + integrity sha512-K0Oqlrq3kQMaO2RhfrNQX5trmt+XLyom88zS0u84nnIcLvFnRUMRRHmrGny5GSM+kNO9IZLARsdQHDzkhAgmrQ== + "@types/eslint-scope@^3.7.7": version "3.7.7" resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.7.tgz#3108bd5f18b0cdb277c867b3dd449c9ed7079ac5" @@ -2954,6 +3300,11 @@ resolved "https://registry.yarnpkg.com/@types/http-errors/-/http-errors-2.0.5.tgz#5b749ab2b16ba113423feb1a64a95dcd30398472" integrity sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg== +"@types/js-yaml@^4.0.9": + version "4.0.9" + resolved "https://registry.yarnpkg.com/@types/js-yaml/-/js-yaml-4.0.9.tgz#cd82382c4f902fed9691a2ed79ec68c5898af4c2" + integrity sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg== + "@types/json-schema@*", "@types/json-schema@^7.0.15", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.8", "@types/json-schema@^7.0.9": version "7.0.15" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.15.tgz#596a1747233694d50f6ad8a7869fcb6f56cf5841" @@ -3436,6 +3787,11 @@ resolved "https://registry.yarnpkg.com/@vscode/codicons/-/codicons-0.0.45.tgz#e5d0531d3c8d0ba26e7b9175ae2e0e579cc73d4f" integrity sha512-1KAZ7XCMagp5Gdrlr4bbbcAqgcIL623iO1wW6rfcSVGAVUQvR0WP7bQx1SbJ11gmV3fdQTSEFIJQ/5C+HuVasw== +"@vscode/debugprotocol@^1.51.0": + version "1.68.0" + resolved "https://registry.yarnpkg.com/@vscode/debugprotocol/-/debugprotocol-1.68.0.tgz#e558ba6affe1be7aff4ec824599f316b61d9a69d" + integrity sha512-2J27dysaXmvnfuhFGhfeuxfHRXunqNPxtBoR3koiTOA9rdxWNDTa1zIFLCFMSHJ9MPTPKFcBeblsyaCJCIlQxg== + "@vscode/ripgrep@^1.14.2": version "1.17.0" resolved "https://registry.yarnpkg.com/@vscode/ripgrep/-/ripgrep-1.17.0.tgz#5ae8d9bf1483b3413025eea61fb28fa0a3f906bd" @@ -3636,6 +3992,14 @@ abbrev@^4.0.0: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-4.0.0.tgz#ec933f0e27b6cd60e89b5c6b2a304af42209bb05" integrity sha512-a1wflyaL0tHtJSmLSOVybYhy22vRih4eduhhrkcjgrWGnRfrZtovJ2FRjxuTtkkj47O/baf0R86QU5OuYpz8fA== +accepts@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-2.0.0.tgz#bbcf4ba5075467f3f2131eab3cffc73c2f5d7895" + integrity sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng== + dependencies: + mime-types "^3.0.0" + negotiator "^1.0.0" + accepts@~1.3.4, accepts@~1.3.8: version "1.3.8" resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" @@ -3698,6 +4062,13 @@ ajv-formats@^2.1.1: dependencies: ajv "^8.0.0" +ajv-formats@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-3.0.1.tgz#3d5dc762bca17679c3c2ea7e90ad6b7532309578" + integrity sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ== + dependencies: + ajv "^8.0.0" + ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" @@ -3730,6 +4101,21 @@ ajv@^8.0.0, ajv@^8.6.3, ajv@^8.9.0: json-schema-traverse "^1.0.0" require-from-string "^2.0.2" +ajv@^8.17.1: + version "8.20.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.20.0.tgz#304b3636add88ba7d936760dd50ece006dea95f9" + integrity sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA== + dependencies: + fast-deep-equal "^3.1.3" + fast-uri "^3.0.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + +anser@^2.0.1: + version "2.3.5" + resolved "https://registry.yarnpkg.com/anser/-/anser-2.3.5.tgz#3435896b68b93e5e744842499d0ce3e6f6d013ee" + integrity sha512-vcZjxvvVoxTeR5XBNJB38oTu/7eDCZlwdz32N1eNgpyPF7j/Z7Idf+CUwQOkKKpJ7RJyjxgLHCM7vdIK0iCNMQ== + ansi-colors@^4.1.1, ansi-colors@^4.1.3: version "4.1.3" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" @@ -4161,6 +4547,21 @@ body-parser@^1.17.2, body-parser@^1.18.3, body-parser@~1.20.3: type-is "~1.6.18" unpipe "~1.0.0" +body-parser@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-2.2.2.tgz#1a32cdb966beaf68de50a9dfbe5b58f83cb8890c" + integrity sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA== + dependencies: + bytes "^3.1.2" + content-type "^1.0.5" + debug "^4.4.3" + http-errors "^2.0.0" + iconv-lite "^0.7.0" + on-finished "^2.4.1" + qs "^6.14.1" + raw-body "^3.0.1" + type-is "^2.0.1" + boolean@^3.0.1: version "3.2.0" resolved "https://registry.yarnpkg.com/boolean/-/boolean-3.2.0.tgz#9e5294af4e98314494cbb17979fa54ca159f116b" @@ -4277,7 +4678,7 @@ byte-size@8.1.1: resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-8.1.1.tgz#3424608c62d59de5bfda05d31e0313c6174842ae" integrity sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg== -bytes@~3.1.2: +bytes@^3.1.2, bytes@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== @@ -4510,6 +4911,14 @@ chromium-bidi@0.6.4: urlpattern-polyfill "10.0.0" zod "3.23.8" +chromium-bidi@14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/chromium-bidi/-/chromium-bidi-14.0.0.tgz#15a12ab083ae519a49a724e94994ca0a9ced9c8e" + integrity sha512-9gYlLtS6tStdRWzrtXaTMnqcM4dudNegMXJxkR0I/CXObHalYeYcAMPrL19eroNZHtJ8DQmu1E+ZNOYu/IXMXw== + dependencies: + mitt "^3.0.1" + zod "^3.24.1" + ci-info@^3.2.0, ci-info@^3.7.0: version "3.9.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.9.0.tgz#4279a62028a7b1f262f3473fc9605f5e218c59b4" @@ -4776,6 +5185,11 @@ console-control-strings@^1.1.0: resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== +content-disposition@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-1.1.0.tgz#f3db789c752d45564cc7e9e1e0b31790d4a38e17" + integrity sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g== + content-disposition@~0.5.4: version "0.5.4" resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" @@ -4783,7 +5197,7 @@ content-disposition@~0.5.4: dependencies: safe-buffer "5.2.1" -content-type@~1.0.4, content-type@~1.0.5: +content-type@^1.0.5, content-type@~1.0.4, content-type@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== @@ -4871,21 +5285,26 @@ convert-source-map@^2.0.0: resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== +cookie-signature@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.2.2.tgz#57c7fc3cc293acab9fec54d73e15690ebe4a1793" + integrity sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg== + cookie-signature@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.7.tgz#ab5dd7ab757c54e60f37ef6550f481c426d10454" integrity sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA== +cookie@^0.7.1, cookie@~0.7.1, cookie@~0.7.2: + version "0.7.2" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" + integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== + cookie@^1.0.2: version "1.1.1" resolved "https://registry.yarnpkg.com/cookie/-/cookie-1.1.1.tgz#3bb9bdfc82369db9c2f69c93c9c3ceb310c88b3c" integrity sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ== -cookie@~0.7.1, cookie@~0.7.2: - version "0.7.2" - resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" - integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== - copy-anything@^2.0.1: version "2.0.6" resolved "https://registry.yarnpkg.com/copy-anything/-/copy-anything-2.0.6.tgz#092454ea9584a7b7ad5573062b2a87f5900fc480" @@ -4918,7 +5337,7 @@ core-util-is@~1.0.0: resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== -cors@~2.8.5: +cors@^2.8.5, cors@~2.8.5: version "2.8.6" resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.6.tgz#ff5dd69bd95e547503820d29aba4f8faf8dfec96" integrity sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw== @@ -4946,7 +5365,7 @@ create-require@^1.1.0: resolved "https://registry.yarnpkg.com/create-require/-/create-require-1.1.1.tgz#c1d7e8f1e5f6cfc9ff65f9cd352d37348756c333" integrity sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ== -cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.3, cross-spawn@^7.0.6: +cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.3, cross-spawn@^7.0.5, cross-spawn@^7.0.6: version "7.0.6" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== @@ -4996,6 +5415,11 @@ date-fns@^2.30.0: dependencies: "@babel/runtime" "^7.21.0" +date-fns@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/date-fns/-/date-fns-4.1.0.tgz#64b3d83fff5aa80438f5b1a633c2e83b8a1c2d14" + integrity sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg== + dateformat@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" @@ -5015,7 +5439,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.3.6, debug@^4.4.1, debug@^4.4.3, debug@~4.4.1: +debug@4, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.3.6, debug@^4.4.0, debug@^4.4.1, debug@^4.4.3, debug@~4.4.1: version "4.4.3" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== @@ -5188,7 +5612,7 @@ delayed-stream@~1.0.0: resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -depd@2.0.0, depd@~2.0.0: +depd@2.0.0, depd@^2.0.0, depd@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== @@ -5233,6 +5657,11 @@ devtools-protocol@0.0.1312386: resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.1312386.tgz#5ab824d6f1669ec6c6eb0fba047e73601d969052" integrity sha512-DPnhUXvmvKT2dFA/j7B+riVLUt9Q6RKJlcppojL5CoRywJJKLDYnRlw0gTFKfgDPHP5E04UoB71SxoJlVZy8FA== +devtools-protocol@0.0.1595872: + version "0.0.1595872" + resolved "https://registry.yarnpkg.com/devtools-protocol/-/devtools-protocol-0.0.1595872.tgz#6f3f537a8518887d30d5181e41788f697f2a4ab2" + integrity sha512-kRfgp8vWVjBu/fbYCiVFiOqsCk3CrMKEo3WbgGT2NXK2dG7vawWPBljixajVgGK9II8rDO9G0oD0zLt3I1daRg== + diff@^4.0.1: version "4.0.4" resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.4.tgz#7a6dbfda325f25f07517e9b518f897c08332e07d" @@ -5392,7 +5821,7 @@ enabled@2.0.x: resolved "https://registry.yarnpkg.com/enabled/-/enabled-2.0.0.tgz#f9dd92ec2d6f4bbc0d5d1e64e21d61cd4665e7c2" integrity sha512-AKrN98kuwOzMIdAizXGI86UFBoo26CL21UM763y1h/GMSJ4/OHU9k2YlsmBpyScFo/wbLzWQJBMCW4+IO3/+OQ== -encodeurl@~2.0.0: +encodeurl@^2.0.0, encodeurl@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== @@ -5538,7 +5967,7 @@ escalade@^3.1.1, escalade@^3.2.0: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== -escape-html@~1.0.3: +escape-html@^1.0.3, escape-html@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== @@ -5734,7 +6163,7 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -etag@~1.8.1: +etag@^1.8.1, etag@~1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== @@ -5744,6 +6173,11 @@ eventemitter3@^4.0.0, eventemitter3@^4.0.4: resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== +eventemitter3@^5.0.1: + version "5.0.4" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-5.0.4.tgz#a86d66170433712dde814707ac52b5271ceb1feb" + integrity sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw== + events-universal@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/events-universal/-/events-universal-1.0.1.tgz#b56a84fd611b6610e0a2d0f09f80fdf931e2dfe6" @@ -5756,6 +6190,18 @@ events@^3.2.0: resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== +eventsource-parser@^3.0.0, eventsource-parser@^3.0.1: + version "3.0.8" + resolved "https://registry.yarnpkg.com/eventsource-parser/-/eventsource-parser-3.0.8.tgz#1c792503e4080455d00701bb1f7a1d60734d0e58" + integrity sha512-70QWGkr4snxr0OXLRWsFLeRBIRPuQOvt4s8QYjmUlmlkyTZkRqS7EDVRZtzU3TiyDbXSzaOeF0XUKy8PchzukQ== + +eventsource@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/eventsource/-/eventsource-3.0.7.tgz#1157622e2f5377bb6aef2114372728ba0c156989" + integrity sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA== + dependencies: + eventsource-parser "^3.0.1" + execa@5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/execa/-/execa-5.0.0.tgz#4029b0007998a841fbd1032e5f4de86a3c1e3376" @@ -5811,6 +6257,13 @@ exponential-backoff@^3.1.1: resolved "https://registry.yarnpkg.com/exponential-backoff/-/exponential-backoff-3.1.3.tgz#51cf92c1c0493c766053f9d3abee4434c244d2f6" integrity sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA== +express-rate-limit@^8.2.1: + version "8.5.0" + resolved "https://registry.yarnpkg.com/express-rate-limit/-/express-rate-limit-8.5.0.tgz#ef4709a569b8e763ae2a2420f3d74537bbbe9795" + integrity sha512-XKhFohWaSBdVJNTi5TaHziqnPkv04I9UQV6q1Wy7Ui6GGQZVW12ojDFwqer14EvCXxjvPG0CyWXx7cAXpALB4Q== + dependencies: + ip-address "10.1.0" + express@^4.21.0: version "4.22.1" resolved "https://registry.yarnpkg.com/express/-/express-4.22.1.tgz#1de23a09745a4fffdb39247b344bb5eaff382069" @@ -5848,6 +6301,40 @@ express@^4.21.0: utils-merge "1.0.1" vary "~1.1.2" +express@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/express/-/express-5.2.1.tgz#8f21d15b6d327f92b4794ecf8cb08a72f956ac04" + integrity sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw== + dependencies: + accepts "^2.0.0" + body-parser "^2.2.1" + content-disposition "^1.0.0" + content-type "^1.0.5" + cookie "^0.7.1" + cookie-signature "^1.2.1" + debug "^4.4.0" + depd "^2.0.0" + encodeurl "^2.0.0" + escape-html "^1.0.3" + etag "^1.8.1" + finalhandler "^2.1.0" + fresh "^2.0.0" + http-errors "^2.0.0" + merge-descriptors "^2.0.0" + mime-types "^3.0.0" + on-finished "^2.4.1" + once "^1.4.0" + parseurl "^1.3.3" + proxy-addr "^2.0.7" + qs "^6.14.0" + range-parser "^1.2.1" + router "^2.2.0" + send "^1.1.0" + serve-static "^2.2.0" + statuses "^2.0.1" + type-is "^2.0.1" + vary "^1.1.2" + extract-zip@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" @@ -5997,6 +6484,18 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" +finalhandler@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-2.1.1.tgz#a2c517a6559852bcdb06d1f8bd7f51b68fad8099" + integrity sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA== + dependencies: + debug "^4.4.0" + encodeurl "^2.0.0" + escape-html "^1.0.3" + on-finished "^2.4.1" + parseurl "^1.3.3" + statuses "^2.0.1" + finalhandler@~1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.2.tgz#1ebc2228fc7673aac4a472c310cc05b77d852b88" @@ -6135,6 +6634,11 @@ forwarded@0.2.0: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== +fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-2.0.0.tgz#8dd7df6a1b3a1b3a5cf186c05a5dd267622635a4" + integrity sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A== + fresh@~0.5.2: version "0.5.2" resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" @@ -6642,6 +7146,11 @@ he@^1.2.0: resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== +hono@^4.11.4: + version "4.12.16" + resolved "https://registry.yarnpkg.com/hono/-/hono-4.12.16.tgz#90fcc63caa713199703bda08d8518f654e98b516" + integrity sha512-jN0ZewiNAWSe5khM3EyCmBb250+b40wWbwNILNfEvq84VREWwOIkuUsFONk/3i3nqkz7Oe1PcpM2mwQEK2L9Kg== + hosted-git-info@^2.1.4: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" @@ -6685,7 +7194,7 @@ http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.1: resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz#205f4db64f8562b76a4ff9235aa5279839a09dd5" integrity sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ== -http-errors@~2.0.0, http-errors@~2.0.1: +http-errors@^2.0.0, http-errors@^2.0.1, http-errors@~2.0.0, http-errors@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.1.tgz#36d2f65bc909c8790018dd36fb4d93da6caae06b" integrity sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ== @@ -6782,7 +7291,7 @@ iconv-lite@0.6.3, iconv-lite@^0.6.0, iconv-lite@^0.6.2: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -iconv-lite@^0.7.0: +iconv-lite@^0.7.0, iconv-lite@~0.7.0: version "0.7.2" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.7.2.tgz#d0bdeac3f12b4835b7359c2ad89c422a4d1cc72e" integrity sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw== @@ -6954,7 +7463,7 @@ inversify@^6.1.3: "@inversifyjs/common" "1.4.0" "@inversifyjs/core" "1.3.5" -ip-address@^10.0.1: +ip-address@10.1.0, ip-address@^10.0.1: version "10.1.0" resolved "https://registry.yarnpkg.com/ip-address/-/ip-address-10.1.0.tgz#d8dcffb34d0e02eb241427444a6e23f5b0595aa4" integrity sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q== @@ -7076,6 +7585,11 @@ is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" +is-promise@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-4.0.0.tgz#42ff9f84206c1991d26debf520dd5c01042dd2f3" + integrity sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ== + is-ssh@^1.4.0: version "1.4.1" resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.4.1.tgz#76de1cdbe8f92a8b905d1a172b6bc09704c20396" @@ -7268,6 +7782,11 @@ jest-worker@^27.4.5: merge-stream "^2.0.0" supports-color "^8.0.0" +jose@^6.1.3: + version "6.2.3" + resolved "https://registry.yarnpkg.com/jose/-/jose-6.2.3.tgz#0975197ad973251221c658a3cddc4b951a250c2d" + integrity sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -7323,6 +7842,14 @@ json-parse-even-better-errors@^5.0.0: resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-5.0.0.tgz#93c89f529f022e5dadc233409324f0167b1e903e" integrity sha512-ZF1nxZ28VhQouRWhUcVlUIN3qwSgPuswK05s/HIaoetAoE/9tngVmCHjSxmSQPav1nd+lPtTL0YZ/2AFdR/iYQ== +json-schema-to-ts@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/json-schema-to-ts/-/json-schema-to-ts-3.1.1.tgz#81f3acaf5a34736492f6f5f51870ef9ece1ca853" + integrity sha512-+DWg8jCJG2TEnpy7kOm/7/AxaYoaRbjVB4LFZLySZlWn8exGs3A4OLJR966cVvU26N7X9TWxl+Jsw7dzAqKT6g== + dependencies: + "@babel/runtime" "^7.18.3" + ts-algebra "^2.0.0" + json-schema-traverse@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" @@ -7338,6 +7865,11 @@ json-schema-typed@^7.0.3: resolved "https://registry.yarnpkg.com/json-schema-typed/-/json-schema-typed-7.0.3.tgz#23ff481b8b4eebcd2ca123b4fa0409e66469a2d9" integrity sha512-7DE8mpG+/fVw+dTpjbxnx47TaMnDfOI1jwft9g1VybltZCduyRQPJPvc+zzKY9WPHxhPWczyFuYa6I8Mw4iU5A== +json-schema-typed@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/json-schema-typed/-/json-schema-typed-8.0.2.tgz#e98ee7b1899ff4a184534d1f167c288c66bbeff4" + integrity sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA== + json-stable-stringify-without-jsonify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" @@ -7725,7 +8257,7 @@ lodash@4.17.21: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -lodash@4.17.23, lodash@^4.17.21: +lodash@^4.17.21: version "4.17.23" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== @@ -7952,6 +8484,11 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== +media-typer@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-1.1.0.tgz#6ab74b8f2d3320f2064b2a87a38e7931ff3a5561" + integrity sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw== + meow@^8.1.2: version "8.1.2" resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" @@ -7974,6 +8511,11 @@ merge-descriptors@1.0.3: resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== +merge-descriptors@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-2.0.0.tgz#ea922f660635a2249ee565e0449f951e6b603808" + integrity sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g== + merge-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" @@ -8002,6 +8544,11 @@ mime-db@1.52.0: resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== +mime-db@^1.54.0: + version "1.54.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" + integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== + mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" @@ -8009,6 +8556,13 @@ mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.24, mime-types@~2.1.34: dependencies: mime-db "1.52.0" +mime-types@^3.0.0, mime-types@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-3.0.2.tgz#39002d4182575d5af036ffa118100f2524b2e2ab" + integrity sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A== + dependencies: + mime-db "^1.54.0" + mime@1.6.0, mime@^1.4.1, mime@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" @@ -8211,7 +8765,7 @@ minizlib@^3.0.1, minizlib@^3.1.0: dependencies: minipass "^7.1.2" -mitt@3.0.1: +mitt@3.0.1, mitt@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/mitt/-/mitt-3.0.1.tgz#ea36cf0cc30403601ae074c8f77b7092cdab36d1" integrity sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw== @@ -8801,7 +9355,7 @@ object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== -on-finished@~2.4.1: +on-finished@^2.4.1, on-finished@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== @@ -8846,6 +9400,11 @@ open@^8.4.0: is-docker "^2.1.1" is-wsl "^2.2.0" +openai@^6.3.0: + version "6.36.0" + resolved "https://registry.yarnpkg.com/openai/-/openai-6.36.0.tgz#9b74deae27628ef2059d8c01c3ef0f9f7d5ac0f8" + integrity sha512-Has2YbIusMq9wQEierFsgf9c783dy1y9arX459LmphNacEkkM5yxi2RIyXP0LmkOroQyW19iTwALHL8Yf26UKA== + opener@^1.5.1: version "1.5.2" resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" @@ -9011,6 +9570,14 @@ p-queue@6.6.2: eventemitter3 "^4.0.4" p-timeout "^3.2.0" +p-queue@^8.0.1: + version "8.1.1" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-8.1.1.tgz#dac3e8c57412fffa18fe6c341b141dbb3a16408b" + integrity sha512-aNZ+VfjobsWryoiPnEApGGmf5WmNsCo9xu8dfaYamG5qaLP7ClhLN6NgsFe6SwJ2UbLEBK5dv9x8Mn5+RVhMWQ== + dependencies: + eventemitter3 "^5.0.1" + p-timeout "^6.1.2" + p-reduce@2.1.0, p-reduce@^2.0.0, p-reduce@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" @@ -9023,6 +9590,11 @@ p-timeout@^3.2.0: dependencies: p-finally "^1.0.0" +p-timeout@^6.1.2: + version "6.1.4" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-6.1.4.tgz#418e1f4dd833fa96a2e3f532547dd2abdb08dbc2" + integrity sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg== + p-try@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" @@ -9171,7 +9743,7 @@ parse-url@^8.1.0: dependencies: parse-path "^7.0.0" -parseurl@~1.3.3: +parseurl@^1.3.3, parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== @@ -9259,6 +9831,11 @@ path-to-regexp@^6.2.1: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.3.0.tgz#2b6a26a337737a8e1416f9272ed0766b1c0389f4" integrity sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ== +path-to-regexp@^8.0.0: + version "8.4.2" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-8.4.2.tgz#795c420c4f7ca45c5b887366f622ee0c9852cccd" + integrity sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA== + path-to-regexp@~0.1.12: version "0.1.12" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7" @@ -9343,6 +9920,11 @@ pinkie@^2.0.0: resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" integrity sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg== +pkce-challenge@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/pkce-challenge/-/pkce-challenge-5.0.1.tgz#3b4446865b17b1745e9ace2016a31f48ddf6230d" + integrity sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ== + pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -9541,7 +10123,7 @@ protocols@^2.0.0, protocols@^2.0.1: resolved "https://registry.yarnpkg.com/protocols/-/protocols-2.0.2.tgz#822e8fcdcb3df5356538b3e91bfd890b067fd0a4" integrity sha512-hHVTzba3wboROl0/aWRRG9dMytgH6ow//STBZh43l/wQgmMhYhOFi0EHWAPtoCz9IAUymsyP0TSBHkhgMEGNnQ== -proxy-addr@~2.0.7: +proxy-addr@^2.0.7, proxy-addr@~2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== @@ -9549,7 +10131,7 @@ proxy-addr@~2.0.7: forwarded "0.2.0" ipaddr.js "1.9.1" -proxy-agent@^6.4.0: +proxy-agent@^6.4.0, proxy-agent@^6.5.0: version "6.5.0" resolved "https://registry.yarnpkg.com/proxy-agent/-/proxy-agent-6.5.0.tgz#9e49acba8e4ee234aacb539f89ed9c23d02f232d" integrity sha512-TmatMXdr2KlRiA2CyDu8GqR8EjahTG3aY3nXjdzFyoZbmB8hrBsTyMezhULIXKnC0jpfjlmiZ3+EaCzoInSu/A== @@ -9603,6 +10185,19 @@ puppeteer-core@23.1.0: typed-query-selector "^2.12.0" ws "^8.18.0" +puppeteer-core@^24.10.0: + version "24.42.0" + resolved "https://registry.yarnpkg.com/puppeteer-core/-/puppeteer-core-24.42.0.tgz#85c1f6c73e6225be0d50fc6a4f2914690280e8cf" + integrity sha512-T4zXokk/izH01fYPhyyev1A4piWiOKrYq7CUFpdoYQxmOnXoV6YjUabmfIjCYkNspSoAXIxRid3Tw+Vg0fthYg== + dependencies: + "@puppeteer/browsers" "2.13.0" + chromium-bidi "14.0.0" + debug "^4.4.3" + devtools-protocol "0.0.1595872" + typed-query-selector "^2.12.1" + webdriver-bidi-protocol "0.4.1" + ws "^8.19.0" + puppeteer-to-istanbul@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/puppeteer-to-istanbul/-/puppeteer-to-istanbul-1.4.0.tgz#451dced6f42652448f55cf0bc780b35512c8d1b0" @@ -9632,6 +10227,13 @@ qs@^6.13.0, qs@^6.4.0: dependencies: side-channel "^1.1.0" +qs@^6.14.0, qs@^6.14.1: + version "6.15.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.15.1.tgz#bdb55aed06bfac257a90c44a446a73fba5575c8f" + integrity sha512-6YHEFRL9mfgcAvql/XhwTvf5jKcOiiupt2FiJxHkiX1z4j7WL8J/jRHYLluORvc1XxB5rV20KoeK00gVJamspg== + dependencies: + side-channel "^1.1.0" + qs@~6.14.0: version "6.14.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.2.tgz#b5634cf9d9ad9898e31fba3504e866e8efb6798c" @@ -9661,11 +10263,21 @@ randombytes@^2.1.0: dependencies: safe-buffer "^5.1.0" -range-parser@~1.2.1: +range-parser@^1.2.1, range-parser@~1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== +raw-body@^3.0.0, raw-body@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-3.0.2.tgz#3e3ada5ae5568f9095d84376fd3a49b8fb000a51" + integrity sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA== + dependencies: + bytes "~3.1.2" + http-errors "~2.0.1" + iconv-lite "~0.7.0" + unpipe "~1.0.0" + raw-body@~2.5.3: version "2.5.3" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.3.tgz#11c6650ee770a7de1b494f197927de0c923822e2" @@ -9712,6 +10324,15 @@ react-perfect-scrollbar@^1.5.3: perfect-scrollbar "^1.5.0" prop-types "^15.6.1" +react-textarea-autosize@^8.5.5: + version "8.5.9" + resolved "https://registry.yarnpkg.com/react-textarea-autosize/-/react-textarea-autosize-8.5.9.tgz#ab8627b09aa04d8a2f45d5b5cd94c84d1d4a8893" + integrity sha512-U1DGlIQN5AwgjTyOEnI1oCcMuEr1pv1qOtklB2l4nyMGbHzWrI0eFsYK0zos2YWqAolJyG0IWJaqWmWj5ETh0A== + dependencies: + "@babel/runtime" "^7.20.13" + use-composed-ref "^1.3.0" + use-latest "^1.2.1" + react-tooltip@^4.2.21: version "4.5.1" resolved "https://registry.yarnpkg.com/react-tooltip/-/react-tooltip-4.5.1.tgz#77eccccdf16adec804132e558ec20ca5783b866a" @@ -10047,6 +10668,17 @@ route-parser@^0.0.5: resolved "https://registry.yarnpkg.com/route-parser/-/route-parser-0.0.5.tgz#7d1d09d335e49094031ea16991a4a79b01bbe1f4" integrity sha512-nsii+MXoNb7NyF05LP9kaktx6AoBVT/7zUgDnzIb5IoYAvYkbZOAuoLJjVdsyEVxWv0swCxWkKDK4cMva+WDBA== +router@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/router/-/router-2.2.0.tgz#019be620b711c87641167cc79b99090f00b146ef" + integrity sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ== + dependencies: + debug "^4.4.0" + depd "^2.0.0" + is-promise "^4.0.0" + parseurl "^1.3.3" + path-to-regexp "^8.0.0" + run-async@^4.0.5: version "4.0.6" resolved "https://registry.yarnpkg.com/run-async/-/run-async-4.0.6.tgz#d53b86acb71f42650fe23de2b3c1b6b6b34b9294" @@ -10153,11 +10785,28 @@ semver@^6.0.0, semver@^6.2.0, semver@^6.3.0, semver@^6.3.1: resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.3, semver@^7.7.1, semver@^7.7.2, semver@^7.7.3: +semver@^7.0.0, semver@^7.1.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.5.3, semver@^7.5.4, semver@^7.6.0, semver@^7.6.3, semver@^7.7.1, semver@^7.7.2, semver@^7.7.3, semver@^7.7.4: version "7.7.4" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.4.tgz#28464e36060e991fa7a11d0279d2d3f3b57a7e8a" integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== +send@^1.1.0, send@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/send/-/send-1.2.1.tgz#9eab743b874f3550f40a26867bf286ad60d3f3ed" + integrity sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ== + dependencies: + debug "^4.4.3" + encodeurl "^2.0.0" + escape-html "^1.0.3" + etag "^1.8.1" + fresh "^2.0.0" + http-errors "^2.0.1" + mime-types "^3.0.2" + ms "^2.1.3" + on-finished "^2.4.1" + range-parser "^1.2.1" + statuses "^2.0.2" + send@~0.19.0, send@~0.19.1: version "0.19.2" resolved "https://registry.yarnpkg.com/send/-/send-0.19.2.tgz#59bc0da1b4ea7ad42736fd642b1c4294e114ff29" @@ -10198,6 +10847,16 @@ serialize-javascript@^6.0.0, serialize-javascript@^6.0.2: dependencies: randombytes "^2.1.0" +serve-static@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-2.2.1.tgz#7f186a4a4e5f5b663ad7a4294ff1bf37cf0e98a9" + integrity sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw== + dependencies: + encodeurl "^2.0.0" + escape-html "^1.0.3" + parseurl "^1.3.3" + send "^1.2.0" + serve-static@~1.16.2: version "1.16.3" resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.3.tgz#a97b74d955778583f3862a4f0b841eb4d5d78cf9" @@ -10351,6 +11010,17 @@ simple-get@^4.0.0: once "^1.3.1" simple-concat "^1.0.0" +simple-git@^3.25.0: + version "3.36.0" + resolved "https://registry.yarnpkg.com/simple-git/-/simple-git-3.36.0.tgz#019b28c0a35847ee34299c6fb63770ab1b2dffb7" + integrity sha512-cGQjLjK8bxJw4QuYT7gxHw3/IouVESbhahSsHrX97MzCL1gu2u7oy38W6L2ZIGECEfIBG4BabsWDPjBxJENv9Q== + dependencies: + "@kwsites/file-exists" "^1.1.1" + "@kwsites/promise-deferred" "^1.1.1" + "@simple-git/args-pathspec" "^1.0.3" + "@simple-git/argv-parser" "^1.1.0" + debug "^4.4.0" + sinon@^15.1.0: version "15.2.0" resolved "https://registry.yarnpkg.com/sinon/-/sinon-15.2.0.tgz#5e44d4bc5a9b5d993871137fd3560bebfac27565" @@ -10634,7 +11304,7 @@ stat-mode@^1.0.0: resolved "https://registry.yarnpkg.com/stat-mode/-/stat-mode-1.0.0.tgz#68b55cb61ea639ff57136f36b216a291800d1465" integrity sha512-jH9EhtKIjuXZ2cWxmXS8ZP80XyC3iasQxMDV8jzhNJpfDb7VbQLVW4Wvsxz9QZvzV+G4YoSfBUVKDOyxLzi/sg== -statuses@~2.0.1, statuses@~2.0.2: +statuses@^2.0.1, statuses@^2.0.2, statuses@~2.0.1, statuses@~2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== @@ -10834,6 +11504,17 @@ tar-fs@^3.0.6, tar-fs@^3.0.9: bare-fs "^4.0.1" bare-path "^3.0.0" +tar-fs@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-3.1.2.tgz#114b012f54796f31e62f3e57792820a80b83ae6e" + integrity sha512-QGxxTxxyleAdyM3kpFs14ymbYmNFrfY+pHj7Z8FgtbZ7w2//VAgLMac7sT6nRpIHjppXO2AwwEOg0bPFVRcmXw== + dependencies: + pump "^3.0.0" + tar-stream "^3.1.5" + optionalDependencies: + bare-fs "^4.0.1" + bare-path "^3.0.0" + tar-stream@^1.5.2: version "1.6.2" resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-1.6.2.tgz#8ea55dab37972253d9a9af90fdcd559ae435c555" @@ -11060,6 +11741,11 @@ triple-beam@^1.3.0: resolved "https://registry.yarnpkg.com/triple-beam/-/triple-beam-1.4.1.tgz#6fde70271dc6e5d73ca0c3b24e2d92afb7441984" integrity sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg== +ts-algebra@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ts-algebra/-/ts-algebra-2.0.0.tgz#4e3e0953878f26518fce7f6bb115064a65388b7a" + integrity sha512-FPAhNPFMrkwz76P7cdjdmiShwMynZYN6SgOujD1urY4oNm80Ou9oMdmbR45LotcKOXoy7wSmHkRFE6Mxbrhefw== + ts-api-utils@^2.4.0: version "2.4.0" resolved "https://registry.yarnpkg.com/ts-api-utils/-/ts-api-utils-2.4.0.tgz#2690579f96d2790253bdcf1ca35d569ad78f9ad8" @@ -11184,6 +11870,15 @@ type-is@^1.6.18, type-is@~1.6.18: media-typer "0.3.0" mime-types "~2.1.24" +type-is@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-2.0.1.tgz#64f6cf03f92fce4015c2b224793f6bdd4b068c97" + integrity sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw== + dependencies: + content-type "^1.0.5" + media-typer "^1.1.0" + mime-types "^3.0.0" + typed-array-buffer@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz#a72395450a4869ec033fd549371b47af3a2ee536" @@ -11198,6 +11893,11 @@ typed-query-selector@^2.12.0: resolved "https://registry.yarnpkg.com/typed-query-selector/-/typed-query-selector-2.12.0.tgz#92b65dbc0a42655fccf4aeb1a08b1dddce8af5f2" integrity sha512-SbklCd1F0EiZOyPiW192rrHZzZ5sBijB6xM+cpmrwDqObvdtunOHHIk9fCGsoK5JVIYXoyEp4iEdE3upFH3PAg== +typed-query-selector@^2.12.1: + version "2.12.2" + resolved "https://registry.yarnpkg.com/typed-query-selector/-/typed-query-selector-2.12.2.tgz#65e2462ac6b0aecfae1bfac1a4f3027070dbabaa" + integrity sha512-EOPFbyIub4ngnEdqi2yOcNeDLaX/0jcE1JoAXQDDMIthap7FoN795lc/SHfIq2d416VufXpM8z/lD+WRm2gfOQ== + typedarray-to-buffer@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" @@ -11262,6 +11962,11 @@ undici-types@~7.16.0: resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.16.0.tgz#ffccdff36aea4884cbfce9a750a0580224f58a46" integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== +undici@^7.16.0: + version "7.25.0" + resolved "https://registry.yarnpkg.com/undici/-/undici-7.25.0.tgz#7d72fc429a0421769ca2966fd07cac875c85b781" + integrity sha512-xXnp4kTyor2Zq+J1FfPI6Eq3ew5h6Vl0F/8d9XU5zZQf1tX9s2Su1/3PiMmUANFULpmksxkClamIZcaUqryHsQ== + unicode-canonical-property-names-ecmascript@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz#cb3173fe47ca743e228216e4a3ddc4c84d628cc2" @@ -11412,6 +12117,23 @@ urlpattern-polyfill@10.0.0: resolved "https://registry.yarnpkg.com/urlpattern-polyfill/-/urlpattern-polyfill-10.0.0.tgz#f0a03a97bfb03cdf33553e5e79a2aadd22cac8ec" integrity sha512-H/A06tKD7sS1O1X2SshBVeA5FLycRpjqiBeqGKmBwBDBy28EnRjORxTNe269KSSr5un5qyWi1iL61wLxpd+ZOg== +use-composed-ref@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/use-composed-ref/-/use-composed-ref-1.4.0.tgz#09e023bf798d005286ad85cd20674bdf5770653b" + integrity sha512-djviaxuOOh7wkj0paeO1Q/4wMZ8Zrnag5H6yBvzN7AKKe8beOaED9SF5/ByLqsku8NP4zQqsvM2u3ew/tJK8/w== + +use-isomorphic-layout-effect@^1.1.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.2.1.tgz#2f11a525628f56424521c748feabc2ffcc962fce" + integrity sha512-tpZZ+EX0gaghDAiFR37hj5MgY6ZN55kLiPkJsKxBMZ6GZdOSPJXiOzPM984oPYZ5AnehYx5WQp1+ME8I/P/pRA== + +use-latest@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/use-latest/-/use-latest-1.3.0.tgz#549b9b0d4c1761862072f0899c6f096eb379137a" + integrity sha512-mhg3xdm9NaM8q+gLT8KryJPnRFOz1/5XPBhmDEVZK1webPzDjrPk7f/mbpeLqTgB9msytYWANxgALOCJKnLvcQ== + dependencies: + use-isomorphic-layout-effect "^1.1.1" + user-home@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f" @@ -11449,10 +12171,10 @@ uuid@^9.0.1: resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.1.tgz#e188d4c8853cc722220392c424cd637f32293f30" integrity sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA== -uuid@~10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-10.0.0.tgz#5a95aa454e6e002725c79055fd42aaba30ca6294" - integrity sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ== +uuid@~14.0.0: + version "14.0.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-14.0.0.tgz#0af883220163d264ffe0c084f6b8a89b9666966d" + integrity sha512-Qo+uWgilfSmAhXCMav1uYFynlQO7fMFiMVZsQqZRMIXp0O7rR7qjkj+cPvBHLgBqi960QCoo/PH2/6ZtVqKvrg== v8-compile-cache-lib@^3.0.1: version "3.0.1" @@ -11494,7 +12216,7 @@ validate-npm-package-name@^7.0.0: resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-7.0.2.tgz#e57c3d721a4c8bbff454a246e7f7da811559ea0d" integrity sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A== -vary@^1, vary@~1.1.2: +vary@^1, vary@^1.1.2, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== @@ -11557,6 +12279,11 @@ wcwidth@^1.0.0, wcwidth@^1.0.1: dependencies: defaults "^1.0.3" +webdriver-bidi-protocol@0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/webdriver-bidi-protocol/-/webdriver-bidi-protocol-0.4.1.tgz#d411e7b8e158408d83bb166b0b4f1054fa3f077e" + integrity sha512-ARrjNjtWRRs2w4Tk7nqrf2gBI0QXWuOmMCx2hU+1jUt6d00MjMxURrhxhGbrsoiZKJrhTSTzbIrc554iKI10qw== + webpack-cli@4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.7.0.tgz#3195a777f1f802ecda732f6c95d24c0004bc5a35" @@ -11842,6 +12569,11 @@ ws@^8.12.1, ws@^8.17.1, ws@^8.18.0: resolved "https://registry.yarnpkg.com/ws/-/ws-8.19.0.tgz#ddc2bdfa5b9ad860204f5a72a4863a8895fd8c8b" integrity sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg== +ws@^8.19.0: + version "8.20.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.20.0.tgz#4cd9532358eba60bc863aad1623dfb045a4d4af8" + integrity sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA== + ws@~8.18.3: version "8.18.3" resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.3.tgz#b56b88abffde62791c639170400c93dcb0c95472" @@ -12016,7 +12748,22 @@ yoctocolors-cjs@^2.1.3: resolved "https://registry.yarnpkg.com/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz#7e4964ea8ec422b7a40ac917d3a344cfd2304baa" integrity sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw== +zod-to-json-schema@^3.25.1: + version "3.25.2" + resolved "https://registry.yarnpkg.com/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz#3fa799a7badd554541472fb65843fdc460b2e5aa" + integrity sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA== + zod@3.23.8: version "3.23.8" resolved "https://registry.yarnpkg.com/zod/-/zod-3.23.8.tgz#e37b957b5d52079769fb8097099b592f0ef4067d" integrity sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g== + +zod@^3.24.1: + version "3.25.76" + resolved "https://registry.yarnpkg.com/zod/-/zod-3.25.76.tgz#26841c3f6fd22a6a2760e7ccb719179768471e34" + integrity sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ== + +"zod@^3.25 || ^4.0", zod@^4.2.1: + version "4.4.3" + resolved "https://registry.yarnpkg.com/zod/-/zod-4.4.3.tgz#b680f172885d18bbebf21a834ea25e55a1bbf356" + integrity sha512-ytENFjIJFl2UwYglde2jchW2Hwm4GJFLDiSXWdTrJQBIN9Fcyp7n4DhxJEiWNAJMV1/BqWfW/kkg71UDcHJyTQ==