From a4c8524851fa020a2fb85efa84554bc42de5a465 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= Date: Wed, 8 Jul 2026 17:59:04 +0200 Subject: [PATCH 1/4] chore: update skill --- .agents/skills/vscode-service-upgrade/SKILL.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/.agents/skills/vscode-service-upgrade/SKILL.md b/.agents/skills/vscode-service-upgrade/SKILL.md index 7d6160e5..46df490e 100644 --- a/.agents/skills/vscode-service-upgrade/SKILL.md +++ b/.agents/skills/vscode-service-upgrade/SKILL.md @@ -33,8 +33,10 @@ disable-model-invocation: false ## Procedure 0. Run preflight dependency sync first (mandatory). - Before any ref analysis or code migration, run: - - npm run update-local-dependencies && npm i + - npm run update-vscode-dependencies && npm i - Do not continue until this command succeeds. +- Also sync Node runtime config used by this repo: + - update `mise.vscode.toml` so `tools.node` matches the Node version from the VSCode `.nvmrc` used for the upgrade source. 1. Resolve refs and scope. - Read the new ref from `package.json` at `config.vscode.ref`. @@ -85,7 +87,9 @@ disable-model-invocation: false ## Completion Checklist - Preflight dependency sync completed successfully: - - npm run update-local-dependencies && npm i + - npm run update-vscode-dependencies && npm i +- Node runtime sync completed: + - `mise.vscode.toml` `tools.node` matches the Node version from VSCode `.nvmrc`. - `src/missing-services.ts` updated before any other service migration work. - Every newly added service has both: - a fake registration in `src/missing-services.ts`, From 9592e02b7d21d6594ac926e2fae98524da3bde83 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= Date: Wed, 8 Jul 2026 17:59:45 +0200 Subject: [PATCH 2/4] lib!: update to VSCode 1.128 --- mise.vscode.toml | 2 +- package-lock.json | 112 ++--- package.json | 30 +- src/extension.api.ts | 4 +- src/missing-services.ts | 313 +++++++++++- src/service-override/chat.ts | 54 +++ src/service-override/comments.ts | 5 +- src/service-override/layout.ts | 10 +- src/service-override/welcome.ts | 8 +- src/services.ts | 14 + ...-feat-add-static-asset-url-mechanism.patch | 6 +- .../0007-fix-use-existing-method.patch | 2 +- vscode-patches/0008-refactor-split-code.patch | 4 +- ...ode-already-done-in-EditorFeaturesIn.patch | 4 +- ...imports-by-regular-esm-dynamic-impor.patch | 20 +- ...-classes-and-make-some-methods-acces.patch | 26 +- ...improve-extension-contribution-types.patch | 2 +- ...ome-modules-to-be-able-to-import-the.patch | 2 +- .../0020-fix-replace-map-by-forEach.patch | 4 +- ...t-only-apply-style-on-specific-class.patch | 4 +- ...FileAccess.asBrowserUri-at-the-root-.patch | 40 +- ...anup-remove-some-checks-and-warnings.patch | 6 +- ...x-use-asBrowserUri-to-get-iframe-src.patch | 2 +- ...dd-some-parameter-to-webview-iframes.patch | 2 +- ...efactor-split-workbench-contribution.patch | 8 +- ...x-that-language-service-refactor-doe.patch | 24 +- ...ode-to-be-able-to-import-only-requir.patch | 12 +- ...046-fix-stop-expecting-a-git-context.patch | 2 +- ...tract-constants-into-separate-module.patch | 6 +- ...tiveChatController-in-another-module.patch | 20 +- .../0056-fix-break-cyclic-dependency.patch | 16 +- .../0060-feat-support-shadow-dom.patch | 92 ++-- ...t-adoptedStyleSheets-for-aux-windows.patch | 4 +- ...xt-key-to-enable-further-customizati.patch | 4 +- .../0064-fix-break-cyclic-dependency.patch | 26 +- ...-feat-allow-to-override-product-icon.patch | 6 +- ...-from-entering-fullscreen-if-not-occ.patch | 8 +- ...-support-loading-VSCode-in-an-iframe.patch | 14 +- ...element-creation-to-be-able-to-creat.patch | 453 ++++++++++++------ ...ary-window-when-the-context-is-unloa.patch | 4 +- ...actor-make-editors-register-themself.patch | 6 +- ...so-register-the-quickinput-container.patch | 2 +- ...ptional-as-sometime-openvsix-doesn-t.patch | 2 +- ...-IExtensionResourceLoaderService-ins.patch | 32 +- .../0076-feat-add-customEditorRestore.patch | 8 +- ...-layout-message-before-actual-view-l.patch | 6 +- ...figuration-editing-built-in-extensio.patch | 2 +- ...code-to-be-able-to-override-behavior.patch | 2 +- ...0083-fix-make-product-field-optional.patch | 36 +- ...l.integrated.preserveDrawingBuffer-s.patch | 8 +- ...port-chat-related-stuff-from-chat-co.patch | 6 +- ...feat-allow-defining-the-workspace-id.patch | 8 +- ...x-do-not-hide-copilot-ui-on-web-mode.patch | 4 +- .../0091-feat-add-AIDisabled-policy.patch | 4 +- ...fix-chat-always-update-auxiliary-bar.patch | 4 +- ...the-sidebar-forcefully-if-the-settin.patch | 4 +- vscode-patches/0095-fix-dedup-import.patch | 6 +- .../0097-fix-remove-unused-import.patch | 2 +- ...ss-check-that-prevents-ai-assist-fro.patch | 8 +- ...02-refactor-move-interface-in-common.patch | 93 ++++ 60 files changed, 1126 insertions(+), 492 deletions(-) create mode 100644 vscode-patches/0102-refactor-move-interface-in-common.patch diff --git a/mise.vscode.toml b/mise.vscode.toml index d56ba756..2c21fdb7 100644 --- a/mise.vscode.toml +++ b/mise.vscode.toml @@ -1,5 +1,5 @@ [tools] -node = "24.15.0" +node = "24.17.0" npm = "11.16.0" [env] diff --git a/package-lock.json b/package-lock.json index 1d7e0cb0..5295b686 100644 --- a/package-lock.json +++ b/package-lock.json @@ -14,21 +14,21 @@ "@rollup/pluginutils": "^5.4.0", "@vscode/diff": "0.0.2-7", "@vscode/iconv-lite-umd": "0.7.1", - "@vscode/proxy-agent": "^0.42.0", + "@vscode/proxy-agent": "^0.43.0", "@vscode/ripgrep": "^1.18.0", "@vscode/spdlog": "^0.15.8", "@vscode/vscode-languagedetection": "npm:@codingame/vscode-languagedetection@1.0.23", "@vscode/windows-process-tree": "^0.7.0", - "@xterm/addon-clipboard": "^0.3.0-beta.220", - "@xterm/addon-image": "^0.10.0-beta.220", - "@xterm/addon-ligatures": "^0.11.0-beta.220", - "@xterm/addon-progress": "^0.3.0-beta.220", - "@xterm/addon-search": "^0.17.0-beta.220", - "@xterm/addon-serialize": "^0.15.0-beta.220", - "@xterm/addon-unicode11": "^0.10.0-beta.220", - "@xterm/addon-webgl": "^0.20.0-beta.219", - "@xterm/headless": "^6.1.0-beta.220", - "@xterm/xterm": "^6.1.0-beta.220", + "@xterm/addon-clipboard": "^0.3.0-beta.288", + "@xterm/addon-image": "^0.10.0-beta.288", + "@xterm/addon-ligatures": "^0.11.0-beta.288", + "@xterm/addon-progress": "^0.3.0-beta.288", + "@xterm/addon-search": "^0.17.0-beta.288", + "@xterm/addon-serialize": "^0.15.0-beta.288", + "@xterm/addon-unicode11": "^0.10.0-beta.288", + "@xterm/addon-webgl": "^0.20.0-beta.287", + "@xterm/headless": "^6.1.0-beta.288", + "@xterm/xterm": "^6.1.0-beta.288", "cookie": "^0.7.2", "css-url-parser": "^1.1.4", "dompurify": "^3.4.11", @@ -73,7 +73,7 @@ "@types/vscode-semver": "npm:@types/semver@=5.5.0", "@types/yargs": "^17.0.35", "@types/yauzl": "^3.4.0", - "@vscode/codicons": "^0.0.46-15", + "@vscode/codicons": "^0.0.46-21", "@vscode/tree-sitter-wasm": "^0.3.1", "acorn": "^8.17.0", "chalk": "^5.6.2", @@ -6771,9 +6771,9 @@ } }, "node_modules/@vscode/codicons": { - "version": "0.0.46-16", - "resolved": "https://registry.npmjs.org/@vscode/codicons/-/codicons-0.0.46-16.tgz", - "integrity": "sha512-pjgpzU5fMIuI3atUdpbWiaUxZtpTak57vjp1hIEvmmmd1dSOTB++5DoKeQCtRLapbB9DU24EHk31njP2ayPvmA==", + "version": "0.0.46-22", + "resolved": "https://registry.npmjs.org/@vscode/codicons/-/codicons-0.0.46-22.tgz", + "integrity": "sha512-gVwKMHwA/lG3evNM5Bc7X3wzqETx/ro7U5jU4xSP2+HK6mliJf5jjMqP+sc+1WUe2Amr0v3zwwD1PcD9ItIltQ==", "dev": true, "license": "CC-BY-4.0" }, @@ -6796,9 +6796,9 @@ "license": "MIT" }, "node_modules/@vscode/proxy-agent": { - "version": "0.42.0", - "resolved": "https://registry.npmjs.org/@vscode/proxy-agent/-/proxy-agent-0.42.0.tgz", - "integrity": "sha512-uFEBHiWPtBdbn+BFBVzyCMqqhdxRaRdPawLen1JZ+zM8pdKHsrVO+smmo/PbM6HgHr+MKGezDmxZ9cEHv49gEQ==", + "version": "0.43.0", + "resolved": "https://registry.npmjs.org/@vscode/proxy-agent/-/proxy-agent-0.43.0.tgz", + "integrity": "sha512-FkZUID6bSDSSMZb981WVGTJSxlnCfGMcNDGNJIzwnyIhVdNTLlSSyIS6K6Ks0ALs5DpS82VhNHRC3PJIqonTBQ==", "license": "MIT", "dependencies": { "@tootallnate/once": "^3.0.0", @@ -7043,27 +7043,27 @@ } }, "node_modules/@xterm/addon-clipboard": { - "version": "0.3.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.3.0-beta.285.tgz", - "integrity": "sha512-3Sw2VvUqTc8r7OWzizLlbVcbJXUwduWqS7jQzWyIVZiRer+olG1++oyE5tD6VLbt5mFwTEm1jdINYE0HRjF26w==", + "version": "0.3.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/addon-clipboard/-/addon-clipboard-0.3.0-beta.288.tgz", + "integrity": "sha512-evM4OakyY26JveIrj4+XlA7sUDHr0GvmMoTIgrhzKrr9jjiTJcWXJE2xK3vvbbIa9ZGHmbo1srVaehVCPytOZg==", "license": "MIT", "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/addon-image": { - "version": "0.10.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.10.0-beta.285.tgz", - "integrity": "sha512-ffpIrUlFj88FVBLdZCThdbwDOAeuKadHNpaJdXbDo5O0ObYyfnXYTL1JmVQxqusJToROnogTPL/MMoqP2oA49g==", + "version": "0.10.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/addon-image/-/addon-image-0.10.0-beta.288.tgz", + "integrity": "sha512-zlgz0IIG3Te/aP4Kg1xRgWvCzgMgAk3LOP+RvGJAfP2g8tMFZBqcVVdX9BWTsp6hZQ4XaBPiiW+bORms/0Y3OQ==", "license": "MIT", "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/addon-ligatures": { - "version": "0.11.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/addon-ligatures/-/addon-ligatures-0.11.0-beta.285.tgz", - "integrity": "sha512-ZBqrv60zrIKGspVfv5+m3lRGHeAGDW2U/imu6vER8D2vhxs75FXh/bA+X2/oSdDJQVgpygsN8G3gNQqt16v3eg==", + "version": "0.11.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/addon-ligatures/-/addon-ligatures-0.11.0-beta.288.tgz", + "integrity": "sha512-82bXLLGHPvyrLF6FByXOJEJEmqHBMH0sIao9kkWBLL3tBSAHty25xo0ulWNUgP6O6sxAZX8Qbfi/zVhrw0A56g==", "license": "MIT", "dependencies": { "lru-cache": "^11.3.6", @@ -7073,67 +7073,67 @@ "node": ">8.0.0" }, "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/addon-progress": { - "version": "0.3.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/addon-progress/-/addon-progress-0.3.0-beta.285.tgz", - "integrity": "sha512-5iD2ANyyIgSexa+Hkf4OmMwNxfpLrPuDAQihGoMXMMjALgESBb6JYvob4C6H+4o5uoNSMV33sb+iwlkCqww32A==", + "version": "0.3.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/addon-progress/-/addon-progress-0.3.0-beta.288.tgz", + "integrity": "sha512-4jBLZIZE13d7veFoSM5GYjdYxoHnUQzYPv8KA+l0u3IzZcIcJZpt6ll0cUA75klCb8tyL7dUhP4y2P4uDCGczQ==", "license": "MIT", "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/addon-search": { - "version": "0.17.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.17.0-beta.285.tgz", - "integrity": "sha512-cGjvwxsCnzlLbDWhMaHF9ZxTbYt6foAvUlURe63XyonXR2DVYH6/sr4YoUhM4S5tUMtdIhPxJhtQ8uF6r+ch3g==", + "version": "0.17.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/addon-search/-/addon-search-0.17.0-beta.288.tgz", + "integrity": "sha512-JQk4n83Zs0A3K2VjQGbfhGAxoQZaMZtgBMSLKOx2Zg2HuikIsjIjUsPpOoJHwAfhVXKXmgd9QmVp61DxJj8tyw==", "license": "MIT", "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/addon-serialize": { - "version": "0.15.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.15.0-beta.285.tgz", - "integrity": "sha512-ae1Fi0Rceby+Ctf39aCjVlJ5+K3OJMEdeU3LIw0Su4z58k6Yz577laM4OJ7CIAUQTCp7K7WliYaTo29vNVCdBw==", + "version": "0.15.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/addon-serialize/-/addon-serialize-0.15.0-beta.288.tgz", + "integrity": "sha512-9wgP/SJeG5ko5ddUDy0gstcziSqlb8ESm8BGtddxz4/56zVGs0DVPVIKQUYKLKKHDCPxm1b6T9YuK3f6WRd3CA==", "license": "MIT", "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/addon-unicode11": { - "version": "0.10.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.10.0-beta.285.tgz", - "integrity": "sha512-rfijFu7UcYpaFx5wzxvTpQbIyyq/amf2PuS9pktywcFQr4ITxRgid5EVzKLRG1vchkApNcQplWeYxGEtjiw0Cw==", + "version": "0.10.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/addon-unicode11/-/addon-unicode11-0.10.0-beta.288.tgz", + "integrity": "sha512-nFQvOBqQEtaPdpiZ2m3A5dkSW+EQGytnyQjMond81bIv3MDRkDKTy8FhAI9fEsZSq2wTbB91tfV5FLjAkSSQ7A==", "license": "MIT", "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/addon-webgl": { - "version": "0.20.0-beta.284", - "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.20.0-beta.284.tgz", - "integrity": "sha512-tzkUiEfdpHCY8mXCbuIaP9V67QDfBJvDr9jdxs5jjxNCIQvw+NCoKD97y5sUrQhrIlr7xrDGniPgPYThQ/1FWg==", + "version": "0.20.0-beta.287", + "resolved": "https://registry.npmjs.org/@xterm/addon-webgl/-/addon-webgl-0.20.0-beta.287.tgz", + "integrity": "sha512-ADDuXRHLfhMk3y+BFvaI1ibGCGxPMNRonzH5M/qTUnigsVxdnEMsYODG6pWAYkfDMPoCRBF8Zf/hj0efyEBjzQ==", "license": "MIT", "peerDependencies": { - "@xterm/xterm": "^6.1.0-beta.285" + "@xterm/xterm": "^6.1.0-beta.288" } }, "node_modules/@xterm/headless": { - "version": "6.1.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-6.1.0-beta.285.tgz", - "integrity": "sha512-NJud+XEUjKMT2LwPqcIh/gazktV+R2AHjEPMQsn/l6+53rgFusuifmJjVkWLwZ228YYsUaN5+lJELeExS26q4A==", + "version": "6.1.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/headless/-/headless-6.1.0-beta.288.tgz", + "integrity": "sha512-b7lKSC8eW2Zk2iwy0BQja4XbBHcai7aJBdVq8jZmPS9GqY8qo6k/rjZiOs5pgqTR9S+/MXYq0c+4szY+0sPBLw==", "license": "MIT", "workspaces": [ "addons/*" ] }, "node_modules/@xterm/xterm": { - "version": "6.1.0-beta.285", - "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-6.1.0-beta.285.tgz", - "integrity": "sha512-S3K58tepMkbpWRBzOGKd0In6AVvt9QPAnNs8DJ8rPUPODYtsCYWAtINHKYtC2OpXcE5EBKM35dl+Dgv03OoE/w==", + "version": "6.1.0-beta.288", + "resolved": "https://registry.npmjs.org/@xterm/xterm/-/xterm-6.1.0-beta.288.tgz", + "integrity": "sha512-XLtX5kO0bgvjOEypUtO5xYUykE+vbJuQPuRK2cIx7oBFwlSYXGCVKPC7pvkLOYsfJWqJ9yusIaeJQqJvrYT1kQ==", "license": "MIT", "workspaces": [ "addons/*" diff --git a/package.json b/package.json index a39df827..3d2d5ba4 100644 --- a/package.json +++ b/package.json @@ -31,9 +31,9 @@ }, "config": { "vscode": { - "version": "1.124.2", - "ref": "1.124.2", - "commit": "1.124.2" + "version": "1.128.0", + "ref": "1.128.0", + "commit": "fc3def6774c76082adf699d366f31a557ce5573f" }, "monaco": { "ref": "v0.55.1", @@ -62,7 +62,7 @@ "@types/vscode-semver": "npm:@types/semver@=5.5.0", "@types/yargs": "^17.0.35", "@types/yauzl": "^3.4.0", - "@vscode/codicons": "^0.0.46-15", + "@vscode/codicons": "^0.0.46-21", "@vscode/tree-sitter-wasm": "^0.3.1", "acorn": "^8.17.0", "chalk": "^5.6.2", @@ -98,21 +98,21 @@ "@rollup/pluginutils": "^5.4.0", "@vscode/diff": "0.0.2-7", "@vscode/iconv-lite-umd": "0.7.1", - "@vscode/proxy-agent": "^0.42.0", + "@vscode/proxy-agent": "^0.43.0", "@vscode/ripgrep": "^1.18.0", "@vscode/spdlog": "^0.15.8", "@vscode/vscode-languagedetection": "npm:@codingame/vscode-languagedetection@1.0.23", "@vscode/windows-process-tree": "^0.7.0", - "@xterm/addon-clipboard": "^0.3.0-beta.220", - "@xterm/addon-image": "^0.10.0-beta.220", - "@xterm/addon-ligatures": "^0.11.0-beta.220", - "@xterm/addon-progress": "^0.3.0-beta.220", - "@xterm/addon-search": "^0.17.0-beta.220", - "@xterm/addon-serialize": "^0.15.0-beta.220", - "@xterm/addon-unicode11": "^0.10.0-beta.220", - "@xterm/addon-webgl": "^0.20.0-beta.219", - "@xterm/headless": "^6.1.0-beta.220", - "@xterm/xterm": "^6.1.0-beta.220", + "@xterm/addon-clipboard": "^0.3.0-beta.288", + "@xterm/addon-image": "^0.10.0-beta.288", + "@xterm/addon-ligatures": "^0.11.0-beta.288", + "@xterm/addon-progress": "^0.3.0-beta.288", + "@xterm/addon-search": "^0.17.0-beta.288", + "@xterm/addon-serialize": "^0.15.0-beta.288", + "@xterm/addon-unicode11": "^0.10.0-beta.288", + "@xterm/addon-webgl": "^0.20.0-beta.287", + "@xterm/headless": "^6.1.0-beta.288", + "@xterm/xterm": "^6.1.0-beta.288", "cookie": "^0.7.2", "css-url-parser": "^1.1.4", "dompurify": "^3.4.11", diff --git a/src/extension.api.ts b/src/extension.api.ts index 6a2d4e8b..91eb86de 100644 --- a/src/extension.api.ts +++ b/src/extension.api.ts @@ -398,9 +398,11 @@ const api: typeof vscode = { ChatDebugEventHookContent: extHostTypes.ChatDebugEventHookContent, ChatDebugHookResult: extHostTypes.ChatDebugHookResult, TaskRunOn: extHostTypes.TaskRunOn, + SyntaxHighlightingTokenFontStyle: extHostTypes.SyntaxHighlightingTokenFontStyle, ChatSessionCustomizationType: extHostTypes.ChatSessionCustomizationType, ChatInputNotificationSeverity: extHostTypes.ChatInputNotificationSeverity, - ChatResponseInfoPart: extHostTypes.ChatResponseInfoPart + ChatResponseInfoPart: extHostTypes.ChatResponseInfoPart, + ChatResponseAutoModeResolutionPart: extHostTypes.ChatResponseAutoModeResolutionPart } // @ts-expect-error the syntax will be transformed by a typescript transformer in the rollup config diff --git a/src/missing-services.ts b/src/missing-services.ts index 2ed77853..b6cee70f 100644 --- a/src/missing-services.ts +++ b/src/missing-services.ts @@ -470,6 +470,7 @@ import { unsupported } from './tools.js' import { NullAgentHostService } from 'vs/platform/agentHost/browser/nullAgentHostService' import { NullSSHRemoteAgentHostService } from 'vs/platform/agentHost/browser/nullSshRemoteAgentHostService' +import { IAgentHostConnectionsService } from 'vs/platform/agentHost/common/agentHostConnectionsService.service' import { IAgentHostResourceService } from 'vs/platform/agentHost/common/agentHostResourceService.service' import { IAgentHostService } from 'vs/platform/agentHost/common/agentService.service' import { NullRemoteAgentHostService } from 'vs/platform/agentHost/common/remoteAgentHostService.js' @@ -484,9 +485,12 @@ import { } from 'vs/workbench/contrib/browserView/common/browserView.service.js' import { IBrowserZoomService } from 'vs/workbench/contrib/browserView/common/browserZoomService.service.js' import { IAgentHostSessionWorkingDirectoryResolver } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service' +import { IAgentHostNewSessionFolderService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.service' +import { IAgentHostToolSetEnablementService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.service' import type { IAICustomizationItemSource } from 'vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemSource' import { IAICustomizationItemsModel } from 'vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationItemsModel.service' import { IChatAttachmentWidgetRegistry } from 'vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgetRegistry.service' +import { IChatResponseFileChangesService } from 'vs/workbench/contrib/chat/browser/chatResponseFileChangesService.service' import { IPlanReviewFeedbackService } from 'vs/workbench/contrib/chat/browser/planReviewFeedback/planReviewFeedbackService.service' import { IChatToolRiskAssessmentService } from 'vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.service' import { IChatInputNotificationService } from 'vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.service' @@ -507,8 +511,18 @@ import { BrowserEditorInput } from 'vs/workbench/contrib/browserView/common/brow import { IWorkbenchMcpGatewayService } from 'vs/workbench/contrib/mcp/common/mcpGatewayService.service.js' import { IMcpSandboxService } from 'vs/workbench/contrib/mcp/common/mcpSandboxService.service.js' import { IAgentHostTerminalService } from 'vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.js' +import { IMicCaptureService } from 'vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.service' +import { ITtsPlaybackService } from 'vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.service' +import { IVoiceSessionController } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.service' +import { IVoiceToolDispatchService } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.service' +import { IVoiceClientService } from 'vs/workbench/contrib/chat/common/voiceClient/voiceClientService.service' +import { IVoicePlaybackService } from 'vs/workbench/contrib/chat/common/voicePlaybackService.service' +import { IAgentsVoiceWindowService } from 'vs/workbench/contrib/agentsVoice/common/agentsVoice.service' +import { IVoiceTranscriptStore } from 'vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.service' import { IOnboardingService } from 'vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.js' +import { IOnboardingScenarioService } from 'vs/workbench/contrib/onboarding/common/onboardingScenarioService.service' import { IAgentHostFileSystemService } from 'vs/workbench/services/agentHost/common/agentHostFileSystemService.service' +import { IAgentEditorCommentsBridge } from 'vs/workbench/services/agentEditorComments/common/agentEditorComments.service' import { IPowerService } from 'vs/workbench/services/power/common/powerService.service.js' import { FileSystemProviderCapabilities } from './service-override/files.js' import { IAgentHostDebugLogsExportService } from 'vs/workbench/contrib/chat/browser/actions/exportAgentHostDebugLogsAction.service' @@ -1936,6 +1950,7 @@ class ExtensionsWorkbenchService implements IExtensionsWorkbenchService { getAutoUpdateValue: IExtensionsWorkbenchService['getAutoUpdateValue'] = unsupported isAutoUpdateDelayed: IExtensionsWorkbenchService['isAutoUpdateDelayed'] = () => false getAutoUpdateDelayRemaining: IExtensionsWorkbenchService['getAutoUpdateDelayRemaining'] = () => 0 + getAutoUpdateDelay: IExtensionsWorkbenchService['getAutoUpdateDelay'] = () => 0 @Unsupported updateAll: IExtensionsWorkbenchService['updateAll'] = unsupported @Unsupported @@ -2457,8 +2472,7 @@ class OutputService implements IOutputService { @Unsupported saveOutputAs: IOutputService['saveOutputAs'] = unsupported getChannelDescriptor: IOutputService['getChannelDescriptor'] = (): - | IOutputChannelDescriptor - | undefined => { + IOutputChannelDescriptor | undefined => { return undefined } getChannelDescriptors: IOutputService['getChannelDescriptors'] = @@ -3409,6 +3423,8 @@ class ChatService implements IChatService { setPendingRequests: IChatService['setPendingRequests'] = unsupported @Unsupported processPendingRequests: IChatService['processPendingRequests'] = unsupported + @Unsupported + sendPendingRequestImmediately: IChatService['sendPendingRequestImmediately'] = unsupported acquireExistingSession: IChatService['acquireExistingSession'] = () => undefined acquireOrLoadSession: IChatService['acquireOrLoadSession'] = async () => undefined @@ -3923,6 +3939,15 @@ class CommentService implements ICommentService { removeContinueOnComment: ICommentService['removeContinueOnComment'] = unsupported } registerSingleton(ICommentService, CommentService, InstantiationType.Delayed) +class AgentEditorCommentsBridge implements IAgentEditorCommentsBridge { + _serviceBrand: undefined + onDidChangeComments: IAgentEditorCommentsBridge['onDidChangeComments'] = Event.None + getComments: IAgentEditorCommentsBridge['getComments'] = () => [] + addComment: IAgentEditorCommentsBridge['addComment'] = () => {} + registerProvider: IAgentEditorCommentsBridge['registerProvider'] = () => Disposable.None +} + +registerSingleton(IAgentEditorCommentsBridge, AgentEditorCommentsBridge, InstantiationType.Delayed) class NotebookCellStatusBarService implements INotebookCellStatusBarService { _serviceBrand: undefined onDidChangeProviders: INotebookCellStatusBarService['onDidChangeProviders'] = Event.None @@ -5422,6 +5447,9 @@ class LanguageModelToolsService implements ILanguageModelToolsService { ToolDataSource.Internal, undefined, undefined, + undefined, + undefined, + undefined, new FakeContextKeyService() ) @@ -5432,6 +5460,9 @@ class LanguageModelToolsService implements ILanguageModelToolsService { ToolDataSource.Internal, undefined, undefined, + undefined, + undefined, + undefined, new FakeContextKeyService() ) readToolSet: ILanguageModelToolsService['readToolSet'] = new ToolSet( @@ -5441,6 +5472,9 @@ class LanguageModelToolsService implements ILanguageModelToolsService { ToolDataSource.Internal, undefined, undefined, + undefined, + undefined, + undefined, new FakeContextKeyService() ) agentToolSet: ILanguageModelToolsService['agentToolSet'] = new ToolSet( @@ -5450,13 +5484,17 @@ class LanguageModelToolsService implements ILanguageModelToolsService { ToolDataSource.Internal, undefined, undefined, + undefined, + undefined, + undefined, new FakeContextKeyService() ) getFullReferenceNames: ILanguageModelToolsService['getFullReferenceNames'] = () => [] getFullReferenceName: ILanguageModelToolsService['getFullReferenceName'] = (tool) => - tool.displayName + 'displayName' in tool ? tool.displayName : tool.referenceName + getFullReferenceNameMap: ILanguageModelToolsService['getFullReferenceNameMap'] = () => new Map() getToolByFullReferenceName: ILanguageModelToolsService['getToolByFullReferenceName'] = () => undefined @@ -5679,7 +5717,6 @@ class ChatEntitlementsService implements IChatEntitlementService { anonymous: IChatEntitlementService['anonymous'] = false anonymousObs: IChatEntitlementService['anonymousObs'] = constObservable(false) - previewFeaturesDisabled: IChatEntitlementService['previewFeaturesDisabled'] = true copilotTrackingId: IChatEntitlementService['copilotTrackingId'] = undefined markAnonymousRateLimited: IChatEntitlementService['markAnonymousRateLimited'] = () => {} markSetupCompleted: IChatEntitlementService['markSetupCompleted'] = () => {} @@ -5693,6 +5730,7 @@ registerSingleton(IChatEntitlementService, ChatEntitlementsService, Instantiatio class PromptsService implements IPromptsService { _serviceBrand: undefined onDidChangeInstructions: IPromptsService['onDidChangeInstructions'] = Event.None + onDidChangeAgentInstructions: IPromptsService['onDidChangeAgentInstructions'] = Event.None onDidChangeSkills: IPromptsService['onDidChangeSkills'] = Event.None listPromptFiles: IPromptsService['listPromptFiles'] = async () => [] getSourceFolders: IPromptsService['getSourceFolders'] = async () => [] @@ -5830,6 +5868,7 @@ class NullDefaultAccountService extends Disposable implements IDefaultAccountSer policyData: IDefaultAccountService['policyData'] = null managedSettingsFetchStatus: IDefaultAccountService['managedSettingsFetchStatus'] = null managedSettingsFetchedAt: IDefaultAccountService['managedSettingsFetchedAt'] = null + managedSettingsRawResponse: IDefaultAccountService['managedSettingsRawResponse'] = undefined currentDefaultAccount: IDefaultAccountService['currentDefaultAccount'] = null @Unsupported getDefaultAccountAuthenticationProvider: IDefaultAccountService['getDefaultAccountAuthenticationProvider'] = @@ -6177,6 +6216,10 @@ class ChatSessionsService implements IChatSessionsService { @Unsupported getOrCreateChatSession: IChatSessionsService['getOrCreateChatSession'] = unsupported + resolveChatResponseUri: IChatSessionsService['resolveChatResponseUri'] = ( + _sessionResource, + href + ) => href getSessionOption: IChatSessionsService['getSessionOption'] = () => undefined @@ -6212,9 +6255,18 @@ class ChatSessionsService implements IChatSessionsService { async () => undefined requiresCustomModelsForSessionType: IChatSessionsService['requiresCustomModelsForSessionType'] = () => false + supportsAutoModelForSessionType: IChatSessionsService['supportsAutoModelForSessionType'] = () => + true + requiresCopilotSignInForSessionType: IChatSessionsService['requiresCopilotSignInForSessionType'] = + () => false createNewChatSessionItem: IChatSessionsService['createNewChatSessionItem'] = async () => undefined registerSessionResourceAlias: IChatSessionsService['registerSessionResourceAlias'] = () => {} + setMaterializedSessionResource: IChatSessionsService['setMaterializedSessionResource'] = () => {} + getMaterializedSessionResource: IChatSessionsService['getMaterializedSessionResource'] = () => + undefined + clearMaterializedSessionResource: IChatSessionsService['clearMaterializedSessionResource'] = + () => {} registerChatSessionContribution: IChatSessionsService['registerChatSessionContribution'] = () => Disposable.None @@ -6232,6 +6284,8 @@ class ChatSessionsService implements IChatSessionsService { forkChatSession: IChatSessionsService['forkChatSession'] = unsupported @Unsupported renameChatSession: IChatSessionsService['renameChatSession'] = unsupported + @Unsupported + deleteChatSessionItem: IChatSessionsService['deleteChatSessionItem'] = unsupported getSessionOptions: IChatSessionsService['getSessionOptions'] = () => undefined @@ -6738,11 +6792,15 @@ class TerminalSandboxService implements ITerminalSandboxService { @Unsupported checkForSandboxingPrereqs: ITerminalSandboxService['checkForSandboxingPrereqs'] = unsupported + @Unsupported + checkFileAccess: ITerminalSandboxService['checkFileAccess'] = unsupported getMissingSandboxDependencies: ITerminalSandboxService['getMissingSandboxDependencies'] = async () => [] @Unsupported installMissingSandboxDependencies: ITerminalSandboxService['installMissingSandboxDependencies'] = unsupported + @Unsupported + runSandboxRemediation: ITerminalSandboxService['runSandboxRemediation'] = unsupported } registerSingleton(ITerminalSandboxService, TerminalSandboxService, InstantiationType.Delayed) @@ -6763,9 +6821,6 @@ class AICustomizationWorkspaceService implements IAICustomizationWorkspaceServic constObservable(undefined) getActiveProjectRoot: IAICustomizationWorkspaceService['getActiveProjectRoot'] = () => undefined managementSections: IAICustomizationWorkspaceService['managementSections'] = [] - getStorageSourceFilter: IAICustomizationWorkspaceService['getStorageSourceFilter'] = () => ({ - sources: [] - }) isSessionsWindow: IAICustomizationWorkspaceService['isSessionsWindow'] = false @Unsupported commitFiles: IAICustomizationWorkspaceService['commitFiles'] = unsupported @@ -6850,6 +6905,8 @@ class PluginMarketplaceService implements IPluginMarketplaceService { isMarketplaceTrusted: IPluginMarketplaceService['isMarketplaceTrusted'] = unsupported @Unsupported trustMarketplace: IPluginMarketplaceService['trustMarketplace'] = unsupported + isStrictMarketplacePolicyActive: IPluginMarketplaceService['isStrictMarketplacePolicyActive'] = + () => false hasUpdatesAvailable: IPluginMarketplaceService['hasUpdatesAvailable'] = constObservable(false) lastFetchedPlugins: IPluginMarketplaceService['lastFetchedPlugins'] = constObservable([]) @@ -6858,6 +6915,7 @@ class PluginMarketplaceService implements IPluginMarketplaceService { readPluginsFromDirectory: IPluginMarketplaceService['readPluginsFromDirectory'] = async () => [] readSinglePluginManifest: IPluginMarketplaceService['readSinglePluginManifest'] = async () => undefined + isPluginDirectory: IPluginMarketplaceService['isPluginDirectory'] = async () => false } registerSingleton(IPluginMarketplaceService, PluginMarketplaceService, InstantiationType.Delayed) @@ -6913,9 +6971,6 @@ class PluginInstallService implements IPluginInstallService { @Unsupported validatePluginSource: IPluginInstallService['validatePluginSource'] = unsupported @Unsupported - installPluginFromValidatedSource: IPluginInstallService['installPluginFromValidatedSource'] = - unsupported - @Unsupported updateAllPlugins: IPluginInstallService['updateAllPlugins'] = unsupported } @@ -6937,6 +6992,7 @@ class ChatDebugService implements IChatDebugService { _serviceBrand: undefined onDidAddEvent: IChatDebugService['onDidAddEvent'] = Event.None + onDidEndSession: IChatDebugService['onDidEndSession'] = Event.None log: IChatDebugService['log'] = () => {} addEvent: IChatDebugService['addEvent'] = () => {} @@ -7091,7 +7147,7 @@ class CustomizationHarnessService implements ICustomizationHarnessService { ) activeHarness: ICustomizationHarnessService['activeHarness'] = constObservable(SessionType.Local) availableHarnesses: ICustomizationHarnessService['availableHarnesses'] = constObservable([ - createVSCodeHarnessDescriptor([]) + createVSCodeHarnessDescriptor() ]) onDidChangeSlashCommands: ICustomizationHarnessService['onDidChangeSlashCommands'] = Event.None onDidChangeCustomAgents: ICustomizationHarnessService['onDidChangeCustomAgents'] = Event.None @@ -7099,8 +7155,6 @@ class CustomizationHarnessService implements ICustomizationHarnessService { findHarnessById: ICustomizationHarnessService['findHarnessById'] = () => undefined setActiveSession: ICustomizationHarnessService['setActiveSession'] = () => {} @Unsupported - getStorageSourceFilter: ICustomizationHarnessService['getStorageSourceFilter'] = unsupported - @Unsupported getActiveDescriptor: ICustomizationHarnessService['getActiveDescriptor'] = unsupported registerExternalHarness: ICustomizationHarnessService['registerExternalHarness'] = () => Disposable.None @@ -7150,12 +7204,20 @@ registerSingleton(IChatImageCarouselService, ChatImageCarouselService, Instantia class BrowserViewWorkbenchService implements IBrowserViewWorkbenchService { _serviceBrand: undefined + willUseRemoteProxy: IBrowserViewWorkbenchService['willUseRemoteProxy'] = () => false + setRemoteProxyInfo: IBrowserViewWorkbenchService['setRemoteProxyInfo'] = () => {} onDidChangeBrowserViews: IBrowserViewWorkbenchService['onDidChangeBrowserViews'] = Event.None isSharingAvailable: IBrowserViewWorkbenchService['isSharingAvailable'] = false onDidChangeSharingAvailable: IBrowserViewWorkbenchService['onDidChangeSharingAvailable'] = Event.None getKnownBrowserViews: IBrowserViewWorkbenchService['getKnownBrowserViews'] = () => new Map() + registerContextualFilter: IBrowserViewWorkbenchService['registerContextualFilter'] = () => + Disposable.None + getContextualBrowserViews: IBrowserViewWorkbenchService['getContextualBrowserViews'] = () => + new Map() + getPreferredGroup: IBrowserViewWorkbenchService['getPreferredGroup'] = async () => undefined + registerOpenHandler: IBrowserViewWorkbenchService['registerOpenHandler'] = () => Disposable.None @Unsupported getOrCreateLazy: IBrowserViewWorkbenchService['getOrCreateLazy'] = unsupported @Unsupported @@ -7287,6 +7349,59 @@ registerSingleton( InstantiationType.Delayed ) +class AgentHostConnectionsService implements IAgentHostConnectionsService { + _serviceBrand: undefined + onDidChangeConnections: IAgentHostConnectionsService['onDidChangeConnections'] = Event.None + connections: IAgentHostConnectionsService['connections'] = [] + @Unsupported + get ambientConnection(): IAgentHostConnectionsService['ambientConnection'] { + return unsupported() + } + getConnectionByAuthority: IAgentHostConnectionsService['getConnectionByAuthority'] = () => + undefined + getConnectionByAddress: IAgentHostConnectionsService['getConnectionByAddress'] = () => undefined + resolveSessionResource: IAgentHostConnectionsService['resolveSessionResource'] = () => undefined +} + +registerSingleton( + IAgentHostConnectionsService, + AgentHostConnectionsService, + InstantiationType.Delayed +) + +class AgentHostNewSessionFolderService implements IAgentHostNewSessionFolderService { + _serviceBrand: undefined + onDidChangeFolder: IAgentHostNewSessionFolderService['onDidChangeFolder'] = Event.None + getFolder: IAgentHostNewSessionFolderService['getFolder'] = () => undefined + setFolder: IAgentHostNewSessionFolderService['setFolder'] = () => {} + clear: IAgentHostNewSessionFolderService['clear'] = () => {} + getDefaultFolder: IAgentHostNewSessionFolderService['getDefaultFolder'] = () => undefined +} + +registerSingleton( + IAgentHostNewSessionFolderService, + AgentHostNewSessionFolderService, + InstantiationType.Delayed +) + +class AgentHostToolSetEnablementService implements IAgentHostToolSetEnablementService { + _serviceBrand: undefined + observe: IAgentHostToolSetEnablementService['observe'] = () => + constObservable({ toolSets: new Map(), tools: new Map() }) + getState: IAgentHostToolSetEnablementService['getState'] = () => ({ + toolSets: new Map(), + tools: new Map() + }) + setToolSetEnabled: IAgentHostToolSetEnablementService['setToolSetEnabled'] = () => {} + setToolEnabled: IAgentHostToolSetEnablementService['setToolEnabled'] = () => {} +} + +registerSingleton( + IAgentHostToolSetEnablementService, + AgentHostToolSetEnablementService, + InstantiationType.Delayed +) + class PluginGitService implements IPluginGitService { _serviceBrand: undefined @@ -7349,6 +7464,19 @@ class OnboardingService implements IOnboardingService { registerSingleton(IOnboardingService, OnboardingService, InstantiationType.Delayed) +class OnboardingScenarioService implements IOnboardingScenarioService { + _serviceBrand: undefined + start: IOnboardingScenarioService['start'] = () => {} + @Unsupported + runScenario: IOnboardingScenarioService['runScenario'] = unsupported + getScenarios: IOnboardingScenarioService['getScenarios'] = () => [] + hasBeenShown: IOnboardingScenarioService['hasBeenShown'] = () => false + reset: IOnboardingScenarioService['reset'] = () => {} + resetAll: IOnboardingScenarioService['resetAll'] = () => {} +} + +registerSingleton(IOnboardingScenarioService, OnboardingScenarioService, InstantiationType.Delayed) + class AgentHostDebugLogsExportService implements IAgentHostDebugLogsExportService { _serviceBrand: undefined @@ -7448,6 +7576,160 @@ class ChatGoalSummaryService implements IChatGoalSummaryService { registerSingleton(IChatGoalSummaryService, ChatGoalSummaryService, InstantiationType.Delayed) +class ChatResponseFileChangesService implements IChatResponseFileChangesService { + _serviceBrand: undefined + registerProvider: IChatResponseFileChangesService['registerProvider'] = () => Disposable.None + getChangesForRequest: IChatResponseFileChangesService['getChangesForRequest'] = () => undefined +} + +registerSingleton( + IChatResponseFileChangesService, + ChatResponseFileChangesService, + InstantiationType.Delayed +) + +class MicCaptureService implements IMicCaptureService { + _serviceBrand: undefined + prepare: IMicCaptureService['prepare'] = () => {} + startCapture: IMicCaptureService['startCapture'] = async () => {} + stopCapture: IMicCaptureService['stopCapture'] = () => {} + isCapturing: IMicCaptureService['isCapturing'] = false + onPttStart: IMicCaptureService['onPttStart'] = Event.None + onPttAudioChunk: IMicCaptureService['onPttAudioChunk'] = Event.None + onPttEnd: IMicCaptureService['onPttEnd'] = Event.None + onPttDiagnostic: IMicCaptureService['onPttDiagnostic'] = Event.None + analyserNode: IMicCaptureService['analyserNode'] = undefined + pttDown: IMicCaptureService['pttDown'] = async () => {} + pttUp: IMicCaptureService['pttUp'] = () => {} + isMuted: IMicCaptureService['isMuted'] = false + suppressUntil: IMicCaptureService['suppressUntil'] = () => {} +} + +registerSingleton(IMicCaptureService, MicCaptureService, InstantiationType.Delayed) + +class TtsPlaybackService implements ITtsPlaybackService { + _serviceBrand: undefined + playAudioChunk: ITtsPlaybackService['playAudioChunk'] = () => {} + stopPlayback: ITtsPlaybackService['stopPlayback'] = () => {} + isPlaying: ITtsPlaybackService['isPlaying'] = false + onPlaybackStarted: ITtsPlaybackService['onPlaybackStarted'] = Event.None + onPlaybackStopped: ITtsPlaybackService['onPlaybackStopped'] = Event.None + getLastPlayedSamples: ITtsPlaybackService['getLastPlayedSamples'] = () => null + analyserNode: ITtsPlaybackService['analyserNode'] = undefined + @Unsupported + ensureContext: ITtsPlaybackService['ensureContext'] = unsupported + closeContext: ITtsPlaybackService['closeContext'] = () => {} +} + +registerSingleton(ITtsPlaybackService, TtsPlaybackService, InstantiationType.Delayed) + +class VoiceClientService implements IVoiceClientService { + _serviceBrand: undefined + connect: IVoiceClientService['connect'] = async () => {} + disconnect: IVoiceClientService['disconnect'] = () => {} + sendPttStart: IVoiceClientService['sendPttStart'] = () => {} + sendPttAudioChunk: IVoiceClientService['sendPttAudioChunk'] = () => {} + sendPttEnd: IVoiceClientService['sendPttEnd'] = () => {} + sendPttDiagnostic: IVoiceClientService['sendPttDiagnostic'] = () => {} + sendSessionContext: IVoiceClientService['sendSessionContext'] = () => {} + flushSessionContext: IVoiceClientService['flushSessionContext'] = () => {} + invalidateSessionCache: IVoiceClientService['invalidateSessionCache'] = () => {} + sendToolResult: IVoiceClientService['sendToolResult'] = () => {} + sendSessionStateChange: IVoiceClientService['sendSessionStateChange'] = () => {} + stopSpeaking: IVoiceClientService['stopSpeaking'] = () => {} + sendStartSession: IVoiceClientService['sendStartSession'] = () => {} + sendResumeSession: IVoiceClientService['sendResumeSession'] = () => {} + submitFeedback: IVoiceClientService['submitFeedback'] = async () => ({ + ok: false, + error: 'Unsupported' + }) + onTranscription: IVoiceClientService['onTranscription'] = Event.None + onAudioResponse: IVoiceClientService['onAudioResponse'] = Event.None + onToolCall: IVoiceClientService['onToolCall'] = Event.None + onSpeechStarted: IVoiceClientService['onSpeechStarted'] = Event.None + onSessionInit: IVoiceClientService['onSessionInit'] = Event.None + onError: IVoiceClientService['onError'] = Event.None + onDidChangeConnectionState: IVoiceClientService['onDidChangeConnectionState'] = Event.None + isConnected: IVoiceClientService['isConnected'] = false + isResuming: IVoiceClientService['isResuming'] = false + currentSessionId: IVoiceClientService['currentSessionId'] = undefined +} + +registerSingleton(IVoiceClientService, VoiceClientService, InstantiationType.Delayed) + +class VoiceSessionController implements IVoiceSessionController { + _serviceBrand: undefined + voiceState: IVoiceSessionController['voiceState'] = constObservable('idle') + statusText: IVoiceSessionController['statusText'] = constObservable('') + transcriptTurns: IVoiceSessionController['transcriptTurns'] = constObservable([]) + isConnected: IVoiceSessionController['isConnected'] = constObservable(false) + isConnecting: IVoiceSessionController['isConnecting'] = constObservable(false) + isReconnecting: IVoiceSessionController['isReconnecting'] = constObservable(false) + pendingToolConfirmations: IVoiceSessionController['pendingToolConfirmations'] = constObservable( + [] + ) + targetSession: IVoiceSessionController['targetSession'] = constObservable(undefined) + connect: IVoiceSessionController['connect'] = async () => {} + disconnect: IVoiceSessionController['disconnect'] = () => {} + pttDown: IVoiceSessionController['pttDown'] = () => {} + pttUp: IVoiceSessionController['pttUp'] = () => {} + markUserCancelled: IVoiceSessionController['markUserCancelled'] = () => {} + setTargetSession: IVoiceSessionController['setTargetSession'] = () => {} + newSessionAsTarget: IVoiceSessionController['newSessionAsTarget'] = () => {} + submitFeedback: IVoiceSessionController['submitFeedback'] = async () => ({ + ok: false, + error: 'Unsupported' + }) + simulateConnection: IVoiceSessionController['simulateConnection'] = () => {} +} + +registerSingleton(IVoiceSessionController, VoiceSessionController, InstantiationType.Delayed) + +class VoiceToolDispatchService implements IVoiceToolDispatchService { + _serviceBrand: undefined + setDelegate: IVoiceToolDispatchService['setDelegate'] = () => {} + dispatchToolCall: IVoiceToolDispatchService['dispatchToolCall'] = async () => '' +} + +registerSingleton(IVoiceToolDispatchService, VoiceToolDispatchService, InstantiationType.Delayed) + +class VoicePlaybackService implements IVoicePlaybackService { + _serviceBrand: undefined + speakingSession: IVoicePlaybackService['speakingSession'] = constObservable(undefined) + lastPlayedVersion: IVoicePlaybackService['lastPlayedVersion'] = constObservable(0) + notifyPlaybackStart: IVoicePlaybackService['notifyPlaybackStart'] = () => {} + notifyPlaybackEnd: IVoicePlaybackService['notifyPlaybackEnd'] = () => {} + getLastPlayed: IVoicePlaybackService['getLastPlayed'] = () => undefined + hasLastPlayed: IVoicePlaybackService['hasLastPlayed'] = () => false + replay: IVoicePlaybackService['replay'] = async () => {} + stop: IVoicePlaybackService['stop'] = () => {} +} + +registerSingleton(IVoicePlaybackService, VoicePlaybackService, InstantiationType.Delayed) + +class VoiceTranscriptStore implements IVoiceTranscriptStore { + _serviceBrand: undefined + appendTurn: IVoiceTranscriptStore['appendTurn'] = async () => {} + loadTurns: IVoiceTranscriptStore['loadTurns'] = async () => [] + getIndexEntry: IVoiceTranscriptStore['getIndexEntry'] = () => undefined + archiveUpTo: IVoiceTranscriptStore['archiveUpTo'] = async () => {} + unarchive: IVoiceTranscriptStore['unarchive'] = async () => {} + deleteAll: IVoiceTranscriptStore['deleteAll'] = async () => {} +} + +registerSingleton(IVoiceTranscriptStore, VoiceTranscriptStore, InstantiationType.Delayed) + +class AgentsVoiceWindowService implements IAgentsVoiceWindowService { + _serviceBrand: undefined + isOpen: IAgentsVoiceWindowService['isOpen'] = false + onDidChangeOpen: IAgentsVoiceWindowService['onDidChangeOpen'] = Event.None + openWindow: IAgentsVoiceWindowService['openWindow'] = async () => {} + closeWindow: IAgentsVoiceWindowService['closeWindow'] = () => {} + toggleWindow: IAgentsVoiceWindowService['toggleWindow'] = async () => {} +} + +registerSingleton(IAgentsVoiceWindowService, AgentsVoiceWindowService, InstantiationType.Delayed) + class AgentHostCustomizationService implements IAgentHostCustomizationService { _serviceBrand: undefined onDidChangeCustomAgents: IAgentHostCustomizationService['onDidChangeCustomAgents'] = Event.None @@ -7456,6 +7738,9 @@ class AgentHostCustomizationService implements IAgentHostCustomizationService { getCustomAgents: IAgentHostCustomizationService['getCustomAgents'] = () => [] getCustomizations: IAgentHostCustomizationService['getCustomizations'] = () => [] getWorkingDirectory: IAgentHostCustomizationService['getWorkingDirectory'] = () => undefined + getMcpServers: IAgentHostCustomizationService['getMcpServers'] = () => [] + addMcpServer: IAgentHostCustomizationService['addMcpServer'] = () => {} + authenticateMcpServer: IAgentHostCustomizationService['authenticateMcpServer'] = async () => false } registerSingleton( @@ -7471,7 +7756,7 @@ class AgentHostActiveClientService implements IAgentHostActiveClientService { @Unsupported getActiveClient: IAgentHostActiveClientService['getActiveClient'] = unsupported getCustomizations: IAgentHostActiveClientService['getCustomizations'] = () => constObservable([]) - clientTools: IAgentHostActiveClientService['clientTools'] = constObservable([]) + getClientTools: IAgentHostActiveClientService['getClientTools'] = () => constObservable([]) } registerSingleton( diff --git a/src/service-override/chat.ts b/src/service-override/chat.ts index 9de025fd..b4a18aa6 100644 --- a/src/service-override/chat.ts +++ b/src/service-override/chat.ts @@ -132,12 +132,16 @@ import { IAgentNetworkFilterService } from 'vs/platform/networkFilter/common/net import { AgentNetworkFilterService } from 'vs/platform/networkFilter/common/networkFilterService' import { IAgentHostFileSystemService } from 'vs/workbench/services/agentHost/common/agentHostFileSystemService.service' import { IAgentHostSessionWorkingDirectoryResolver } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service' +import { IAgentHostNewSessionFolderService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.service' +import { IAgentHostToolSetEnablementService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.service' import { IAgentHostTerminalService } from 'vs/workbench/contrib/terminal/browser/agentHostTerminalService.service' import { AgentHostTerminalService } from 'vs/workbench/contrib/terminal/browser/agentHostTerminalService' import { IRemoteAgentHostService } from 'vs/platform/agentHost/common/remoteAgentHostService.service' import { RemoteAgentHostService } from 'vs/platform/agentHost/browser/remoteAgentHostServiceImpl' import { AgentHostFileSystemService } from 'vs/workbench/services/agentHost/common/agentHostFileSystemService' import { AgentHostSessionWorkingDirectoryResolver } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver' +import { AgentHostNewSessionFolderService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService' +import { AgentHostToolSetEnablementService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService' import { IAgentHostResourceService } from 'vs/platform/agentHost/common/agentHostResourceService.service' import { IToolResultCompressor } from 'vs/workbench/contrib/chat/common/tools/toolResultCompressor.service' import { IChatToolRiskAssessmentService } from 'vs/workbench/contrib/chat/browser/tools/chatToolRiskAssessmentService.service' @@ -162,6 +166,26 @@ import { IChatGoalSummaryService } from 'vs/workbench/contrib/chat/browser/chatG import { ChatGoalSummaryService } from 'vs/workbench/contrib/chat/browser/chatGoalSummaryService' import { EditorRemoteAgentHostServiceClient } from 'vs/workbench/services/agentHost/browser/editorRemoteAgentHostServiceClient' import { IAgentHostService } from 'vs/platform/agentHost/common/agentService.service' +import { IAgentHostConnectionsService } from 'vs/platform/agentHost/common/agentHostConnectionsService.service' +import { AgentHostConnectionsService } from 'vs/platform/agentHost/browser/agentHostConnectionsService' +import { IChatResponseFileChangesService } from 'vs/workbench/contrib/chat/browser/chatResponseFileChangesService.service' +import { ChatResponseFileChangesService } from 'vs/workbench/contrib/chat/browser/chatResponseFileChangesService' +import { IMicCaptureService } from 'vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.service' +import { MicCaptureService } from 'vs/workbench/contrib/chat/browser/voiceClient/micCaptureService' +import { ITtsPlaybackService } from 'vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.service' +import { TtsPlaybackService } from 'vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService' +import { IVoiceClientService } from 'vs/workbench/contrib/chat/common/voiceClient/voiceClientService.service' +import { VoiceClientService } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceClientService' +import { IVoiceSessionController } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.service' +import { VoiceSessionController } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController' +import { IVoiceToolDispatchService } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.service' +import { VoiceToolDispatchService } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService' +import { IVoicePlaybackService } from 'vs/workbench/contrib/chat/common/voicePlaybackService.service' +import { VoicePlaybackService } from 'vs/workbench/contrib/chat/common/voicePlaybackService' +import { IVoiceTranscriptStore } from 'vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.service' +import { VoiceTranscriptStore } from 'vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore' +import { IAgentsVoiceWindowService } from 'vs/workbench/contrib/agentsVoice/common/agentsVoice.service' +import { AgentsVoiceWindowService } from 'vs/workbench/contrib/agentsVoice/browser/agentsVoiceWindowService' import 'vs/workbench/contrib/chat/browser/chat.contribution' import 'vs/workbench/contrib/chat/browser/chat.shared.contribution' import 'vs/workbench/contrib/chat/browser/chat.view.contribution' @@ -170,6 +194,7 @@ import 'vs/workbench/contrib/inlineChat/browser/inlineChat.contribution' import 'vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution' import 'vs/workbench/contrib/chat/browser/contextContrib/chatContext.contribution' import 'vs/workbench/contrib/imageCarousel/browser/imageCarousel.contribution' +import 'vs/workbench/contrib/agentsVoice/browser/agentsVoice.contribution' class DefaultAccountService implements IDefaultAccountService { declare _serviceBrand: undefined @@ -182,6 +207,7 @@ class DefaultAccountService implements IDefaultAccountService { policyData: IDefaultAccountService['policyData'] = null managedSettingsFetchStatus: IDefaultAccountService['managedSettingsFetchStatus'] = null managedSettingsFetchedAt: IDefaultAccountService['managedSettingsFetchedAt'] = null + managedSettingsRawResponse: IDefaultAccountService['managedSettingsRawResponse'] = undefined getDefaultAccountAuthenticationProvider: IDefaultAccountService['getDefaultAccountAuthenticationProvider'] = () => ({ id: 'default', name: 'Default', enterprise: false }) @@ -365,7 +391,30 @@ export default function getServiceOverride({ [], true ), + [IAgentHostNewSessionFolderService.toString()]: new SyncDescriptor( + AgentHostNewSessionFolderService, + [], + true + ), + [IAgentHostToolSetEnablementService.toString()]: new SyncDescriptor( + AgentHostToolSetEnablementService, + [], + true + ), [IAgentHostTerminalService.toString()]: new SyncDescriptor(AgentHostTerminalService, [], true), + [IAgentHostConnectionsService.toString()]: new SyncDescriptor( + AgentHostConnectionsService, + [], + true + ), + [IMicCaptureService.toString()]: new SyncDescriptor(MicCaptureService, [], true), + [ITtsPlaybackService.toString()]: new SyncDescriptor(TtsPlaybackService, [], true), + [IVoiceClientService.toString()]: new SyncDescriptor(VoiceClientService, [], true), + [IVoiceSessionController.toString()]: new SyncDescriptor(VoiceSessionController, [], true), + [IVoiceToolDispatchService.toString()]: new SyncDescriptor(VoiceToolDispatchService, [], true), + [IVoicePlaybackService.toString()]: new SyncDescriptor(VoicePlaybackService, [], true), + [IVoiceTranscriptStore.toString()]: new SyncDescriptor(VoiceTranscriptStore, [], true), + [IAgentsVoiceWindowService.toString()]: new SyncDescriptor(AgentsVoiceWindowService, [], true), [IAgentHostActiveClientService.toString()]: new SyncDescriptor( AgentHostActiveClientService, [], @@ -378,6 +427,11 @@ export default function getServiceOverride({ ), [IToolResultCompressor.toString()]: new SyncDescriptor(ToolResultCompressorService, [], true), [IChatGoalSummaryService.toString()]: new SyncDescriptor(ChatGoalSummaryService, [], true), + [IChatResponseFileChangesService.toString()]: new SyncDescriptor( + ChatResponseFileChangesService, + [], + true + ), [IChatToolRiskAssessmentService.toString()]: new SyncDescriptor( ChatToolRiskAssessmentService, [], diff --git a/src/service-override/comments.ts b/src/service-override/comments.ts index 0d392de9..3d772777 100644 --- a/src/service-override/comments.ts +++ b/src/service-override/comments.ts @@ -2,10 +2,13 @@ import { type IEditorOverrideServices } from 'vs/editor/standalone/browser/stand import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors' import { ICommentService } from 'vs/workbench/contrib/comments/browser/commentService.service' import { CommentService } from 'vs/workbench/contrib/comments/browser/commentService' +import { IAgentEditorCommentsBridge } from 'vs/workbench/services/agentEditorComments/common/agentEditorComments.service' +import { AgentEditorCommentsBridge } from 'vs/workbench/services/agentEditorComments/common/agentEditorComments' import 'vs/workbench/contrib/comments/browser/comments.contribution' export default function getServiceOverride(): IEditorOverrideServices { return { - [ICommentService.toString()]: new SyncDescriptor(CommentService, [], true) + [ICommentService.toString()]: new SyncDescriptor(CommentService, [], true), + [IAgentEditorCommentsBridge.toString()]: new SyncDescriptor(AgentEditorCommentsBridge, [], true) } } diff --git a/src/service-override/layout.ts b/src/service-override/layout.ts index 8b1be187..0c1c96ff 100644 --- a/src/service-override/layout.ts +++ b/src/service-override/layout.ts @@ -107,6 +107,10 @@ export class LayoutService extends Disposable implements ILayoutService, IWorkbe return false } + isFloatingPanelsEnabled(): boolean { + return false + } + centerMainEditorLayout(): void {} private readonly _onDidLayoutContainer = this._register( @@ -436,8 +440,7 @@ export class LayoutService extends Disposable implements ILayoutService, IWorkbe } const viewContainerModel = this.viewDescriptorService.getViewContainerModel(viewContainer) as - | IViewContainerModel - | undefined + IViewContainerModel | undefined if (viewContainerModel == null) { return false } @@ -466,8 +469,7 @@ export class LayoutService extends Disposable implements ILayoutService, IWorkbe } else if (paneComposite == null && !hidden) { // If panel part becomes visible, show last active panel or default panel let panelToOpen = this.paneCompositeService.getLastActivePaneCompositeId(location) as - | string - | undefined + string | undefined // verify that the panel we try to open has views before we default to it // otherwise fall back to any view that has views still refs #111463 diff --git a/src/service-override/welcome.ts b/src/service-override/welcome.ts index 4b97997e..8264e5c8 100644 --- a/src/service-override/welcome.ts +++ b/src/service-override/welcome.ts @@ -1,13 +1,17 @@ import type { IEditorOverrideServices } from 'vs/editor/standalone/browser/standaloneServices' +import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors' +import { IOnboardingScenarioService } from 'vs/workbench/contrib/onboarding/common/onboardingScenarioService.service' +import { OnboardingScenarioService } from 'vs/workbench/contrib/onboarding/browser/onboardingService' import { IOnboardingService } from 'vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service' import { OnboardingVariationA } from 'vs/workbench/contrib/welcomeOnboarding/browser/onboardingVariationA' -import { SyncDescriptor } from 'vs/platform/instantiation/common/descriptors' +import 'vs/workbench/contrib/onboarding/browser/onboarding.contribution' import 'vs/workbench/contrib/welcomeViews/common/viewsWelcome.contribution' import 'vs/workbench/contrib/welcomeViews/common/newFile.contribution' import 'vs/workbench/contrib/welcomeOnboarding/browser/welcomeOnboarding.contribution' export default function getServiceOverride(): IEditorOverrideServices { return { - [IOnboardingService.toString()]: new SyncDescriptor(OnboardingVariationA, [], true) + [IOnboardingService.toString()]: new SyncDescriptor(OnboardingVariationA, [], true), + [IOnboardingScenarioService.toString()]: new SyncDescriptor(OnboardingScenarioService, [], true) } } diff --git a/src/services.ts b/src/services.ts index 7b3d61ad..46f5f9d9 100644 --- a/src/services.ts +++ b/src/services.ts @@ -697,14 +697,27 @@ export { IWorkbenchMcpGatewayService } from 'vs/workbench/contrib/mcp/common/mcp export { IMcpSandboxService } from 'vs/workbench/contrib/mcp/common/mcpSandboxService.service' export { ICustomizationHarnessService } from 'vs/workbench/contrib/chat/common/customizationHarnessService.service' export { IAgentHostService } from 'vs/platform/agentHost/common/agentService.service' +export { IAgentHostConnectionsService } from 'vs/platform/agentHost/common/agentHostConnectionsService.service' export { IRemoteAgentHostService } from 'vs/platform/agentHost/common/remoteAgentHostService.service' export { ISSHRemoteAgentHostService } from 'vs/platform/agentHost/common/sshRemoteAgentHost.service' export { IAgentNetworkFilterService } from 'vs/platform/networkFilter/common/networkFilterService.service.js' export { ITerminalSandboxService } from 'vs/platform/sandbox/common/terminalSandboxService.service.js' export { IAgentHostSessionWorkingDirectoryResolver } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostSessionWorkingDirectoryResolver.service' +export { IAgentHostNewSessionFolderService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostNewSessionFolderService.service' +export { IAgentHostToolSetEnablementService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostToolSetEnablementService.service' export { IPluginGitService } from 'vs/workbench/contrib/chat/common/plugins/pluginGitService.service.js' export { IAgentHostTerminalService } from 'vs/workbench/contrib/terminal/browser/agentHostTerminalService.service.js' +export { IChatResponseFileChangesService } from 'vs/workbench/contrib/chat/browser/chatResponseFileChangesService.service' +export { IMicCaptureService } from 'vs/workbench/contrib/chat/browser/voiceClient/micCaptureService.service' +export { ITtsPlaybackService } from 'vs/workbench/contrib/chat/browser/voiceClient/ttsPlaybackService.service' +export { IVoiceSessionController } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceSessionController.service' +export { IVoiceToolDispatchService } from 'vs/workbench/contrib/chat/browser/voiceClient/voiceToolDispatchService.service' +export { IVoiceClientService } from 'vs/workbench/contrib/chat/common/voiceClient/voiceClientService.service' +export { IVoicePlaybackService } from 'vs/workbench/contrib/chat/common/voicePlaybackService.service' +export { IVoiceTranscriptStore } from 'vs/workbench/contrib/agentsVoice/common/voiceTranscriptStore.service' +export { IAgentsVoiceWindowService } from 'vs/workbench/contrib/agentsVoice/common/agentsVoice.service' export { IOnboardingService } from 'vs/workbench/contrib/welcomeOnboarding/common/onboardingService.service.js' +export { IOnboardingScenarioService } from 'vs/workbench/contrib/onboarding/common/onboardingScenarioService.service' export { IAgentHostFileSystemService } from 'vs/workbench/services/agentHost/common/agentHostFileSystemService.service' export { IAgentHostUntitledProvisionalSessionService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostUntitledProvisionalSessionService.service' export { IChatOutputPartStateCache } from 'vs/workbench/contrib/chat/browser/widget/chatContentParts/chatOutputPartStateCache.service' @@ -715,3 +728,4 @@ export { IGitHubUploadService } from 'vs/workbench/contrib/issue/browser/githubU export { IChatGoalSummaryService } from 'vs/workbench/contrib/chat/browser/chatGoalSummaryService.service' export { IAgentHostCustomizationService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.service' export { IAgentHostActiveClientService } from 'vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostActiveClientService.service' +export { IAgentEditorCommentsBridge } from 'vs/workbench/services/agentEditorComments/common/agentEditorComments.service' diff --git a/vscode-patches/0005-feat-add-static-asset-url-mechanism.patch b/vscode-patches/0005-feat-add-static-asset-url-mechanism.patch index ba146714..b5b3d879 100644 --- a/vscode-patches/0005-feat-add-static-asset-url-mechanism.patch +++ b/vscode-patches/0005-feat-add-static-asset-url-mechanism.patch @@ -13,7 +13,7 @@ Subject: [PATCH] feat: add static asset url mechanism 6 files changed, 219 insertions(+), 61 deletions(-) diff --git a/src/tsec.exemptions.json b/src/tsec.exemptions.json -index e290af37d5c..9a3995a691f 100644 +index 639d85a0476..4e2e8c76194 100644 --- a/src/tsec.exemptions.json +++ b/src/tsec.exemptions.json @@ -7,6 +7,7 @@ @@ -119,10 +119,10 @@ index 4cfaf6a58cb..b7f63a0d276 100644 class ExtensionHostProxy implements IExtensionHostProxy { diff --git a/src/vs/workbench/api/common/extHost.protocol.ts b/src/vs/workbench/api/common/extHost.protocol.ts -index 18b9d89ac06..6cd315046fe 100644 +index ca682429a40..ffe38209bd1 100644 --- a/src/vs/workbench/api/common/extHost.protocol.ts +++ b/src/vs/workbench/api/common/extHost.protocol.ts -@@ -2026,6 +2026,7 @@ export interface MainThreadExtensionServiceShape extends IDisposable { +@@ -2058,6 +2058,7 @@ export interface MainThreadExtensionServiceShape extends IDisposable { $onExtensionRuntimeError(extensionId: ExtensionIdentifier, error: SerializedError): void; $setPerformanceMarks(marks: performance.PerformanceMark[]): Promise; $asBrowserUri(uri: UriComponents): Promise; diff --git a/vscode-patches/0007-fix-use-existing-method.patch b/vscode-patches/0007-fix-use-existing-method.patch index 1eefbd39..b0a89295 100644 --- a/vscode-patches/0007-fix-use-existing-method.patch +++ b/vscode-patches/0007-fix-use-existing-method.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: use existing method 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/editor/standalone/browser/standaloneServices.ts b/src/vs/editor/standalone/browser/standaloneServices.ts -index 09100764ebe..75d01b958d7 100644 +index 52cd2abf96d..7c37e089d15 100644 --- a/src/vs/editor/standalone/browser/standaloneServices.ts +++ b/src/vs/editor/standalone/browser/standaloneServices.ts @@ -561,7 +561,7 @@ export class StandaloneKeybindingService extends AbstractKeybindingService { diff --git a/vscode-patches/0008-refactor-split-code.patch b/vscode-patches/0008-refactor-split-code.patch index c7e8230a..579e026b 100644 --- a/vscode-patches/0008-refactor-split-code.patch +++ b/vscode-patches/0008-refactor-split-code.patch @@ -9,7 +9,7 @@ Subject: [PATCH] refactor: split code 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/vs/editor/standalone/browser/standaloneServices.ts b/src/vs/editor/standalone/browser/standaloneServices.ts -index 75d01b958d7..f806a8c43f3 100644 +index 7c37e089d15..10f9707d556 100644 --- a/src/vs/editor/standalone/browser/standaloneServices.ts +++ b/src/vs/editor/standalone/browser/standaloneServices.ts @@ -532,15 +532,19 @@ export class StandaloneKeybindingService extends AbstractKeybindingService { @@ -35,7 +35,7 @@ index 75d01b958d7..f806a8c43f3 100644 } return this._cachedResolver; diff --git a/src/vs/workbench/services/keybinding/browser/keybindingService.ts b/src/vs/workbench/services/keybinding/browser/keybindingService.ts -index bb0fb4f2643..2af5fbeff0a 100644 +index 5db49b2be12..db7a4fdcee3 100644 --- a/src/vs/workbench/services/keybinding/browser/keybindingService.ts +++ b/src/vs/workbench/services/keybinding/browser/keybindingService.ts @@ -439,10 +439,14 @@ export class WorkbenchKeybindingService extends AbstractKeybindingService { diff --git a/vscode-patches/0009-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch b/vscode-patches/0009-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch index 8664fb59..67ac9804 100644 --- a/vscode-patches/0009-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch +++ b/vscode-patches/0009-cleanup-remove-code-already-done-in-EditorFeaturesIn.patch @@ -9,7 +9,7 @@ Subject: [PATCH] cleanup: remove code already done in 1 file changed, 12 deletions(-) diff --git a/src/vs/editor/standalone/browser/standaloneServices.ts b/src/vs/editor/standalone/browser/standaloneServices.ts -index f806a8c43f3..7bad06a8c75 100644 +index 10f9707d556..a0e60bb896c 100644 --- a/src/vs/editor/standalone/browser/standaloneServices.ts +++ b/src/vs/editor/standalone/browser/standaloneServices.ts @@ -16,7 +16,6 @@ import * as dom from '../../../base/browser/dom.js'; @@ -28,7 +28,7 @@ index f806a8c43f3..7bad06a8c75 100644 import { WorkspaceEdit } from '../../common/languages.js'; import { ILanguageService } from '../../common/languages/language.js'; import { ITextModel, ITextSnapshot } from '../../common/model.js'; -@@ -1267,16 +1265,6 @@ export namespace StandaloneServices { +@@ -1268,16 +1266,6 @@ export namespace StandaloneServices { } } diff --git a/vscode-patches/0010-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch b/vscode-patches/0010-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch index 439ed77b..6ba07e72 100644 --- a/vscode-patches/0010-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch +++ b/vscode-patches/0010-fix-replace-amd-imports-by-regular-esm-dynamic-impor.patch @@ -101,7 +101,7 @@ index 3d83476e176..a80f0b9a7f2 100644 } } diff --git a/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts b/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts -index 8e0a30cea2b..2b0ce2561f1 100644 +index 6d6da9cbfbf..7e5f6224115 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts @@ -79,7 +79,6 @@ import { IHistoryService } from '../../../services/history/common/history.js'; @@ -157,7 +157,7 @@ index 30e6bd1905b..d54aed4b473 100644 if (!addon) { throw new Error(`Could not load addon ${name}`); diff --git a/src/vs/workbench/services/assignment/common/assignmentService.ts b/src/vs/workbench/services/assignment/common/assignmentService.ts -index f7594b944a2..128ff1c20df 100644 +index a75afa8aa6b..ca7a59d4a26 100644 --- a/src/vs/workbench/services/assignment/common/assignmentService.ts +++ b/src/vs/workbench/services/assignment/common/assignmentService.ts @@ -18,7 +18,6 @@ import { Registry } from '../../../../platform/registry/common/platform.js'; @@ -166,17 +166,17 @@ index f7594b944a2..128ff1c20df 100644 import { IWorkbenchEnvironmentService } from '../../environment/common/environmentService.js'; -import { importAMDNodeModule } from '../../../../amdX.js'; import { timeout } from '../../../../base/common/async.js'; + import { StopWatch } from '../../../../base/common/stopwatch.js'; import { CopilotAssignmentFilterProvider } from './assignmentFilters.js'; - import { Disposable, DisposableStore } from '../../../../base/common/lifecycle.js'; -@@ -269,7 +268,7 @@ export class WorkbenchAssignmentService extends Disposable implements IAssignmen - this.tasSetupDisposables.add(extensionsFilterProvider.onDidChangeFilters(() => this.refetchAssignments())); +@@ -258,7 +257,7 @@ export class WorkbenchAssignmentService extends Disposable implements IAssignmen const tasConfig = this.productService.tasConfig!; -- const tasClient = new (await importAMDNodeModule('tas-client', 'dist/tas-client.min.js')).ExperimentationService({ -+ const tasClient = new (await import('tas-client')).ExperimentationService({ - filterProviders: [filterProvider, extensionsFilterProvider], - telemetry: this.telemetry, - storageKey: ASSIGNMENT_STORAGE_KEY, + +- const tasClientModule = await importAMDNodeModule('tas-client', 'dist/tas-client.min.js'); ++ const tasClientModule = await import('tas-client'); + + // Measure the client-side latency of the first network call to the + // Treatment Assignment Service. The fetch is triggered by constructing diff --git a/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.ts b/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.ts index 61fee6de827..6718133f8c2 100644 --- a/src/vs/workbench/services/textMate/browser/backgroundTokenization/textMateWorkerTokenizerController.ts diff --git a/vscode-patches/0011-feat-export-some-classes-and-make-some-methods-acces.patch b/vscode-patches/0011-feat-export-some-classes-and-make-some-methods-acces.patch index df5eaee2..5226f434 100644 --- a/vscode-patches/0011-feat-export-some-classes-and-make-some-methods-acces.patch +++ b/vscode-patches/0011-feat-export-some-classes-and-make-some-methods-acces.patch @@ -138,10 +138,10 @@ index c578441baa9..7b5909d6fac 100644 export namespace PeekContext { export const inPeekEditor = new RawContextKey('inReferenceSearchEditor', true, nls.localize('inReferenceSearchEditor', "Whether the current code editor is embedded inside peek")); diff --git a/src/vs/platform/actionWidget/browser/actionWidget.ts b/src/vs/platform/actionWidget/browser/actionWidget.ts -index cb94356b6ed..e74d964cb41 100644 +index 6feb8e32953..60eb545232f 100644 --- a/src/vs/platform/actionWidget/browser/actionWidget.ts +++ b/src/vs/platform/actionWidget/browser/actionWidget.ts -@@ -44,7 +44,7 @@ export interface IActionWidgetService { +@@ -57,7 +57,7 @@ export interface IActionWidgetService { readonly isVisible: boolean; } @@ -194,7 +194,7 @@ index 493471fe856..3a098814ba1 100644 // convert to file stat diff --git a/src/vs/platform/sandbox/browser/sandboxHelperService.ts b/src/vs/platform/sandbox/browser/sandboxHelperService.ts -index 3ce552fee34..79222e0d134 100644 +index 00394e44052..42a6ea8aec3 100644 --- a/src/vs/platform/sandbox/browser/sandboxHelperService.ts +++ b/src/vs/platform/sandbox/browser/sandboxHelperService.ts @@ -6,7 +6,7 @@ @@ -220,7 +220,7 @@ index c8d1765a7ab..91d78dc1be0 100644 declare readonly _serviceBrand: undefined; diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index ea2da133d86..1f1026f5ad8 100644 +index d5da4b4de33..a9e70490c4c 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts @@ -50,7 +50,7 @@ import { CodeWindow, mainWindow } from '../../base/browser/window.js'; @@ -247,8 +247,8 @@ index ea2da133d86..1f1026f5ad8 100644 readonly views: { readonly defaults: string[] | undefined; readonly containerToRestore: { -@@ -104,11 +104,11 @@ enum LayoutClasses { - NO_SHADOWS = 'no-shadows' +@@ -105,11 +105,11 @@ enum LayoutClasses { + FLOATING_PANELS = 'floating-panels' } -interface IPathToOpen extends IPath { @@ -342,10 +342,10 @@ index ff0d50662cd..d509ce285ee 100644 private readonly _resolvers = new Map URI | undefined; readonly isNewSession?: (sessionResource: URI) => boolean }>(); diff --git a/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.ts b/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.ts -index 4b0c29c92a8..fd065bcab61 100644 +index 9feebda1005..b609df54709 100644 --- a/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.ts +++ b/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationWorkspaceService.ts -@@ -21,7 +21,7 @@ import { +@@ -20,7 +20,7 @@ import { GENERATE_SKILL_COMMAND_ID, } from '../actions/chatActions.js'; @@ -355,10 +355,10 @@ index 4b0c29c92a8..fd065bcab61 100644 readonly activeProjectRoot: IObservable; diff --git a/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.ts b/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.ts -index 91218d8a9de..95203211afc 100644 +index acc5af9624e..c3f5af20976 100644 --- a/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.ts +++ b/src/vs/workbench/contrib/chat/browser/aiCustomization/customizationHarnessService.ts -@@ -21,7 +21,7 @@ import { URI } from '../../../../../base/common/uri.js'; +@@ -20,7 +20,7 @@ import { URI } from '../../../../../base/common/uri.js'; * Only the Local harness is registered statically. All other harnesses * (e.g. Copilot CLI) are contributed by extensions via the provider API. */ @@ -406,10 +406,10 @@ index 4305cc54d72..d4d363592a2 100644 declare readonly _serviceBrand: undefined; diff --git a/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.ts -index 3e29d31feb0..bcde32c9b35 100644 +index bc4f1c2791b..6047193d22e 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputNotificationService.ts -@@ -82,7 +82,7 @@ export interface IChatInputNotificationService { +@@ -97,7 +97,7 @@ export interface IChatInputNotificationService { handleMessageSent(): void; } @@ -662,7 +662,7 @@ index 514873c2d59..707a6a12108 100644 public readonly toAdd: IExtension[], public readonly toRemove: string[] | IExtension[] diff --git a/src/vs/workbench/services/keybinding/browser/keybindingService.ts b/src/vs/workbench/services/keybinding/browser/keybindingService.ts -index 2af5fbeff0a..481d713f969 100644 +index db7a4fdcee3..52af5015e35 100644 --- a/src/vs/workbench/services/keybinding/browser/keybindingService.ts +++ b/src/vs/workbench/services/keybinding/browser/keybindingService.ts @@ -434,7 +434,7 @@ export class WorkbenchKeybindingService extends AbstractKeybindingService { diff --git a/vscode-patches/0012-fix-improve-extension-contribution-types.patch b/vscode-patches/0012-fix-improve-extension-contribution-types.patch index 81f173b6..b39aff63 100644 --- a/vscode-patches/0012-fix-improve-extension-contribution-types.patch +++ b/vscode-patches/0012-fix-improve-extension-contribution-types.patch @@ -10,7 +10,7 @@ Subject: [PATCH] fix: improve extension contribution types 3 files changed, 1394 insertions(+), 66 deletions(-) diff --git a/src/vs/platform/extensions/common/extensions.ts b/src/vs/platform/extensions/common/extensions.ts -index bd90ac80c01..24427248c5b 100644 +index 6a8cc98d148..b974c85ca24 100644 --- a/src/vs/platform/extensions/common/extensions.ts +++ b/src/vs/platform/extensions/common/extensions.ts @@ -3,6 +3,7 @@ diff --git a/vscode-patches/0019-refactor-split-some-modules-to-be-able-to-import-the.patch b/vscode-patches/0019-refactor-split-some-modules-to-be-able-to-import-the.patch index 5168bed5..2365c9e6 100644 --- a/vscode-patches/0019-refactor-split-some-modules-to-be-able-to-import-the.patch +++ b/vscode-patches/0019-refactor-split-some-modules-to-be-able-to-import-the.patch @@ -38,7 +38,7 @@ index 00000000000..185a77baafb + +registerWorkbenchContribution2(EditorAutoSave.ID, EditorAutoSave, WorkbenchPhase.BlockRestore); diff --git a/src/vs/workbench/browser/parts/editor/editor.contribution.ts b/src/vs/workbench/browser/parts/editor/editor.contribution.ts -index 5ac74d36518..b41fecc0b12 100644 +index 52e0d7f5e72..3bbb9239ee1 100644 --- a/src/vs/workbench/browser/parts/editor/editor.contribution.ts +++ b/src/vs/workbench/browser/parts/editor/editor.contribution.ts @@ -61,7 +61,6 @@ import { KeybindingsRegistry, KeybindingWeight } from '../../../../platform/keyb diff --git a/vscode-patches/0020-fix-replace-map-by-forEach.patch b/vscode-patches/0020-fix-replace-map-by-forEach.patch index becc053f..1089ee68 100644 --- a/vscode-patches/0020-fix-replace-map-by-forEach.patch +++ b/vscode-patches/0020-fix-replace-map-by-forEach.patch @@ -22,10 +22,10 @@ index 8d1020b6621..97ffa755b24 100644 : compositeSwitcherBar.getWidth(currentItemsLength + index) )); diff --git a/src/vs/workbench/browser/parts/views/viewPaneContainer.ts b/src/vs/workbench/browser/parts/views/viewPaneContainer.ts -index 22e7133836d..22472730d05 100644 +index 409678580f9..ce09e67210d 100644 --- a/src/vs/workbench/browser/parts/views/viewPaneContainer.ts +++ b/src/vs/workbench/browser/parts/views/viewPaneContainer.ts -@@ -674,7 +674,7 @@ export class ViewPaneContainer extends Comp +@@ -679,7 +679,7 @@ export class ViewPaneContainer extends Comp } this.panes.filter(view => view.isVisible() !== visible) diff --git a/vscode-patches/0021-feat-only-apply-style-on-specific-class.patch b/vscode-patches/0021-feat-only-apply-style-on-specific-class.patch index 7996e892..d4f1069c 100644 --- a/vscode-patches/0021-feat-only-apply-style-on-specific-class.patch +++ b/vscode-patches/0021-feat-only-apply-style-on-specific-class.patch @@ -426,10 +426,10 @@ index 9250ef3f280..b3cde1a1e14 100644 } }); diff --git a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -index 53bfb067b4e..6e201931269 100644 +index 0a893f38ff7..b6099cf807a 100644 --- a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts +++ b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -@@ -429,6 +429,22 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili +@@ -443,6 +443,22 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili private applyCSS(auxiliaryWindow: CodeWindow, disposables: DisposableStore) { mark('code/auxiliaryWindow/willApplyCSS'); diff --git a/vscode-patches/0022-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch b/vscode-patches/0022-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch index d10c3987..dfc57550 100644 --- a/vscode-patches/0022-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch +++ b/vscode-patches/0022-fix-do-not-call-FileAccess.asBrowserUri-at-the-root-.patch @@ -6,14 +6,14 @@ Subject: [PATCH] fix: do not call FileAccess.asBrowserUri at the root of the to be able to register the file before --- - .../browser/extensionsWorkbenchService.ts | 108 ++++++++++-------- - 1 file changed, 60 insertions(+), 48 deletions(-) + .../browser/extensionsWorkbenchService.ts | 114 ++++++++++-------- + 1 file changed, 63 insertions(+), 51 deletions(-) diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -index 82fce39afed..e5ecaf1a6be 100644 +index a58d77d1291..80a883131c7 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -@@ -3,78 +3,90 @@ +@@ -3,79 +3,91 @@ * Licensed under the MIT License. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ @@ -22,11 +22,13 @@ index 82fce39afed..e5ecaf1a6be 100644 -import { Event, Emitter } from '../../../../base/common/event.js'; +import { mainWindow } from '../../../../base/browser/window.js'; import { index } from '../../../../base/common/arrays.js'; - import { CancelablePromise, Promises, ThrottledDelayer, createCancelablePromise, disposableTimeout } from '../../../../base/common/async.js'; - import { CancellationError, getErrorMessage, isCancellationError } from '../../../../base/common/errors.js'; +-import { CancelablePromise, Promises, ThrottledDelayer, createCancelablePromise, disposableTimeout } from '../../../../base/common/async.js'; ++import { CancelablePromise, createCancelablePromise, disposableTimeout, Promises, ThrottledDelayer } from '../../../../base/common/async.js'; +import { CancellationToken } from '../../../../base/common/cancellation.js'; +import { fromNow } from '../../../../base/common/date.js'; + import { CancellationError, getErrorMessage, isCancellationError } from '../../../../base/common/errors.js'; +import { Emitter, Event } from '../../../../base/common/event.js'; ++import { hash } from '../../../../base/common/hash.js'; +import { IMarkdownString, MarkdownString } from '../../../../base/common/htmlContent.js'; import { Disposable, MutableDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; +import { FileAccess } from '../../../../base/common/network.js'; @@ -35,14 +37,14 @@ index 82fce39afed..e5ecaf1a6be 100644 +import { isWeb, language } from '../../../../base/common/platform.js'; +import * as resources from '../../../../base/common/resources.js'; +import * as semver from '../../../../base/common/semver/semver.js'; -+import { isBoolean, isDefined, isString, isUndefined } from '../../../../base/common/types.js'; ++import { isDefined, isString, isUndefined } from '../../../../base/common/types.js'; +import { URI } from '../../../../base/common/uri.js'; +import { ILanguageService } from '../../../../editor/common/languages/language.js'; +import * as nls from '../../../../nls.js'; +import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; +import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; +import { IDialogService, IFileDialogService, IPromptButton } from '../../../../platform/dialogs/common/dialogs.js'; -+import { ExtensionGalleryResourceType, getExtensionGalleryManifestResourceUri, IExtensionGalleryManifestService, ExtensionGalleryServiceUrlConfigKey, IExtensionGalleryManifest } from '../../../../platform/extensionManagement/common/extensionGalleryManifest.js'; ++import { ExtensionGalleryResourceType, ExtensionGalleryServiceUrlConfigKey, getExtensionGalleryManifestResourceUri, IExtensionGalleryManifest, IExtensionGalleryManifestService } from '../../../../platform/extensionManagement/common/extensionGalleryManifest.js'; import { - IExtensionGalleryService, ILocalExtension, IGalleryExtension, IQueryOptions, - InstallExtensionEvent, DidUninstallExtensionEvent, InstallOperation, WEB_EXTENSION_TAG, InstallExtensionResult, @@ -63,6 +65,7 @@ index 82fce39afed..e5ecaf1a6be 100644 + IExtensionInfo, IExtensionQueryOptions, + IExtensionsControlManifest, + IGalleryExtension, ++ IGalleryExtensionVersion, + ILocalExtension, + InstallExtensionEvent, + InstallExtensionInfo, @@ -74,28 +77,28 @@ index 82fce39afed..e5ecaf1a6be 100644 MaliciousExtensionInfo, shouldRequireRepositorySignatureFor, - IGalleryExtensionVersion -+ IGalleryExtensionVersion, -+ WEB_EXTENSION_TAG, + TargetPlatformToString, -+ UninstallExtensionInfo ++ UninstallExtensionInfo, ++ WEB_EXTENSION_TAG } from '../../../../platform/extensionManagement/common/extensionManagement.js'; -import { IWorkbenchExtensionEnablementService, EnablementState, IExtensionManagementServerService, IExtensionManagementServer, IWorkbenchExtensionManagementService, IResourceExtension } from '../../../services/extensionManagement/common/extensionManagement.js'; -import { getGalleryExtensionTelemetryData, getLocalExtensionTelemetryData, areSameExtensions, groupByExtension, getGalleryExtensionId, findMatchingMaliciousEntry } from '../../../../platform/extensionManagement/common/extensionManagementUtil.js'; +import { areSameExtensions, findMatchingMaliciousEntry, getGalleryExtensionId, getGalleryExtensionTelemetryData, getLocalExtensionTelemetryData, groupByExtension } from '../../../../platform/extensionManagement/common/extensionManagementUtil.js'; +import { ExtensionIdentifier, ExtensionType, IExtensionDescription, IExtensionIdentifier, IExtensionManifest, IExtension as IPlatformExtension, isApplicationScopedExtension, TargetPlatform } from '../../../../platform/extensions/common/extensions.js'; -+import { areApiProposalsCompatible, isEngineValid } from '../../../../platform/extensions/common/extensionValidator.js'; ++import { isEngineValid } from '../../../../platform/extensions/common/extensionValidator.js'; +import { IFileService } from '../../../../platform/files/common/files.js'; import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js'; -import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js'; -import { IHostService } from '../../../services/host/browser/host.js'; -import { URI } from '../../../../base/common/uri.js'; --import { IExtension, ExtensionState, IExtensionsWorkbenchService, AutoUpdateConfigurationKey, AutoCheckUpdatesConfigurationKey, HasOutdatedExtensionsContext, AutoUpdateConfigurationValue, InstallExtensionOptions, ExtensionRuntimeState, ExtensionRuntimeActionType, AutoRestartConfigurationKey, VIEWLET_ID, IExtensionsViewPaneContainer, IExtensionsNotification } from '../common/extensions.js'; +-import { IExtension, ExtensionState, IExtensionsWorkbenchService, AutoUpdateConfigurationKey, AutoUpdateDelayConfigurationKey, AutoCheckUpdatesConfigurationKey, HasOutdatedExtensionsContext, AutoUpdateConfigurationValue, InstallExtensionOptions, ExtensionRuntimeState, ExtensionRuntimeActionType, AutoRestartConfigurationKey, VIEWLET_ID, IExtensionsViewPaneContainer, IExtensionsNotification } from '../common/extensions.js'; -import { ACTIVE_GROUP, IEditorService, MODAL_GROUP, SIDE_GROUP } from '../../../services/editor/common/editorService.js'; -import { IURLService, IURLHandler, IOpenURLOptions } from '../../../../platform/url/common/url.js'; -import { ExtensionsInput, IExtensionEditorOptions } from '../common/extensionsInput.js'; +import { getLocale } from '../../../../platform/languagePacks/common/languagePacks.js'; import { ILogService } from '../../../../platform/log/common/log.js'; -import { IProgressOptions, IProgressService, ProgressLocation } from '../../../../platform/progress/common/progress.js'; ++import { IMeteredConnectionService } from '../../../../platform/meteredConnection/common/meteredConnection.js'; import { INotificationService, NotificationPriority, Severity } from '../../../../platform/notification/common/notification.js'; -import * as resources from '../../../../base/common/resources.js'; -import { CancellationToken } from '../../../../base/common/cancellation.js'; @@ -117,7 +120,7 @@ index 82fce39afed..e5ecaf1a6be 100644 import { IIgnoredExtensionsManagementService } from '../../../../platform/userDataSync/common/ignoredExtensions.js'; import { IUserDataAutoSyncService, IUserDataSyncEnablementService, SyncResource } from '../../../../platform/userDataSync/common/userDataSync.js'; -import { IContextKey, IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; --import { isBoolean, isDefined, isString, isUndefined } from '../../../../base/common/types.js'; +-import { isDefined, isString, isUndefined } from '../../../../base/common/types.js'; +import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js'; +import { ACTIVE_GROUP, IEditorService, MODAL_GROUP, SIDE_GROUP } from '../../../services/editor/common/editorService.js'; +import { EnablementState, IExtensionManagementServer, IExtensionManagementServerService, IResourceExtension, IWorkbenchExtensionEnablementService, IWorkbenchExtensionManagementService } from '../../../services/extensionManagement/common/extensionManagement.js'; @@ -135,7 +138,7 @@ index 82fce39afed..e5ecaf1a6be 100644 -import { mainWindow } from '../../../../base/browser/window.js'; -import { IDialogService, IFileDialogService, IPromptButton } from '../../../../platform/dialogs/common/dialogs.js'; -import { IUpdateService, StateType } from '../../../../platform/update/common/update.js'; --import { areApiProposalsCompatible, isEngineValid } from '../../../../platform/extensions/common/extensionValidator.js'; +-import { isEngineValid } from '../../../../platform/extensions/common/extensionValidator.js'; -import { IUriIdentityService } from '../../../../platform/uriIdentity/common/uriIdentity.js'; -import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js'; -import { ShowCurrentReleaseNotesActionId } from '../../update/common/update.js'; @@ -144,11 +147,12 @@ index 82fce39afed..e5ecaf1a6be 100644 -import { IMarkdownString, MarkdownString } from '../../../../base/common/htmlContent.js'; -import { ExtensionGalleryResourceType, ExtensionGalleryServiceUrlConfigKey, getExtensionGalleryManifestResourceUri, IExtensionGalleryManifest, IExtensionGalleryManifestService } from '../../../../platform/extensionManagement/common/extensionGalleryManifest.js'; -import { fromNow } from '../../../../base/common/date.js'; - import { hash } from '../../../../base/common/hash.js'; +-import { hash } from '../../../../base/common/hash.js'; -import { IUserDataProfilesService } from '../../../../platform/userDataProfile/common/userDataProfile.js'; +-import { IMeteredConnectionService } from '../../../../platform/meteredConnection/common/meteredConnection.js'; +import { ShowCurrentReleaseNotesActionId } from '../../update/common/update.js'; -+import { AutoCheckUpdatesConfigurationKey, AutoRestartConfigurationKey, AutoUpdateConfigurationKey, AutoUpdateConfigurationValue, ExtensionRuntimeActionType, ExtensionRuntimeState, ExtensionState, HasOutdatedExtensionsContext, IExtension, IExtensionsNotification, IExtensionsViewPaneContainer, IExtensionsWorkbenchService, InstallExtensionOptions, VIEWLET_ID } from '../common/extensions.js'; ++import { AutoCheckUpdatesConfigurationKey, AutoRestartConfigurationKey, AutoUpdateConfigurationKey, AutoUpdateConfigurationValue, AutoUpdateDelayConfigurationKey, ExtensionRuntimeActionType, ExtensionRuntimeState, ExtensionState, HasOutdatedExtensionsContext, IExtension, IExtensionsNotification, IExtensionsViewPaneContainer, IExtensionsWorkbenchService, InstallExtensionOptions, VIEWLET_ID } from '../common/extensions.js'; +import { ExtensionsInput, IExtensionEditorOptions } from '../common/extensionsInput.js'; - import { IMeteredConnectionService } from '../../../../platform/meteredConnection/common/meteredConnection.js'; interface IExtensionStateProvider { + (extension: Extension): T; diff --git a/vscode-patches/0023-cleanup-remove-some-checks-and-warnings.patch b/vscode-patches/0023-cleanup-remove-some-checks-and-warnings.patch index 8842000f..eb4b14ec 100644 --- a/vscode-patches/0023-cleanup-remove-some-checks-and-warnings.patch +++ b/vscode-patches/0023-cleanup-remove-some-checks-and-warnings.patch @@ -26,7 +26,7 @@ index ed965aae607..35a2ab17e71 100644 } diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index eae70bdf806..c62826ef448 100644 +index 10538d4cc95..4e073206a68 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts @@ -513,11 +513,6 @@ export class WebviewElement extends Disposable implements IWebviewElement, Webvi @@ -54,10 +54,10 @@ index eae70bdf806..c62826ef448 100644 if (this.element && this._messagePort) { this._messagePort.postMessage({ channel, args: data }, transferable); diff --git a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -index 6e201931269..15b221bafb8 100644 +index b6099cf807a..1872d9b598e 100644 --- a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts +++ b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -@@ -387,13 +387,6 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili +@@ -401,13 +401,6 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili } protected createContainer(auxiliaryWindow: CodeWindow, disposables: DisposableStore, options?: IAuxiliaryWindowOpenOptions): { stylesLoaded: Barrier; container: HTMLElement } { diff --git a/vscode-patches/0026-fix-use-asBrowserUri-to-get-iframe-src.patch b/vscode-patches/0026-fix-use-asBrowserUri-to-get-iframe-src.patch index 704f2d5d..ff079241 100644 --- a/vscode-patches/0026-fix-use-asBrowserUri-to-get-iframe-src.patch +++ b/vscode-patches/0026-fix-use-asBrowserUri-to-get-iframe-src.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: use asBrowserUri to get iframe src 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index c62826ef448..37558e01484 100644 +index 4e073206a68..c64dffc458c 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts @@ -13,9 +13,9 @@ import { CancellationToken, CancellationTokenSource } from '../../../../base/com diff --git a/vscode-patches/0027-feat-add-some-parameter-to-webview-iframes.patch b/vscode-patches/0027-feat-add-some-parameter-to-webview-iframes.patch index 82a14249..07b8ea90 100644 --- a/vscode-patches/0027-feat-add-some-parameter-to-webview-iframes.patch +++ b/vscode-patches/0027-feat-add-some-parameter-to-webview-iframes.patch @@ -40,7 +40,7 @@ index 1b722167644..39088a04919 100644 newFrame.style.cssText = 'display: block; margin: 0; overflow: hidden; position: absolute; width: 100%; height: 100%; visibility: hidden'; document.body.appendChild(newFrame); diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index 37558e01484..9f6018c77f5 100644 +index c64dffc458c..69e5c9244b2 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts @@ -462,6 +462,9 @@ export class WebviewElement extends Disposable implements IWebviewElement, Webvi diff --git a/vscode-patches/0037-refactor-split-workbench-contribution.patch b/vscode-patches/0037-refactor-split-workbench-contribution.patch index aeb4e941..d6dd5eeb 100644 --- a/vscode-patches/0037-refactor-split-workbench-contribution.patch +++ b/vscode-patches/0037-refactor-split-workbench-contribution.patch @@ -16,7 +16,7 @@ Subject: [PATCH] refactor: split workbench contribution 9 files changed, 115 insertions(+), 30 deletions(-) diff --git a/src/vs/workbench/api/browser/extensionHost.contribution.ts b/src/vs/workbench/api/browser/extensionHost.contribution.ts -index e3c082b0ff4..d74f5f908a7 100644 +index 72e7f300878..82aee03d809 100644 --- a/src/vs/workbench/api/browser/extensionHost.contribution.ts +++ b/src/vs/workbench/api/browser/extensionHost.contribution.ts @@ -3,17 +3,15 @@ @@ -43,8 +43,8 @@ index e3c082b0ff4..d74f5f908a7 100644 +import '../../services/themes/browser/cssExtensionPoint.js'; // --- mainThread participants - import './mainThreadLocalization.js'; -@@ -104,23 +102,3 @@ import './mainThreadDataChannels.js'; + import './mainThreadAgentEditorComments.js'; +@@ -106,23 +104,3 @@ import './mainThreadDataChannels.js'; import './mainThreadMeteredConnection.js'; import './mainThreadGitExtensionService.js'; import './mainThreadBrowsers.js'; @@ -286,7 +286,7 @@ index d78e65afc3f..56bd057fb3e 100644 + +registerWorkbenchContribution2(TokenClassificationExtensionPointWorkbenchContribution.ID, TokenClassificationExtensionPointWorkbenchContribution, WorkbenchPhase.BlockStartup); diff --git a/src/vs/workbench/workbench.common.main.ts b/src/vs/workbench/workbench.common.main.ts -index 5eb62e5e261..82dd7e4a8e8 100644 +index 176480be5b8..c56960b4c6d 100644 --- a/src/vs/workbench/workbench.common.main.ts +++ b/src/vs/workbench/workbench.common.main.ts @@ -44,6 +44,12 @@ import './browser/actions/widgetNavigationCommands.js'; diff --git a/vscode-patches/0041-fix-change-syntax-that-language-service-refactor-doe.patch b/vscode-patches/0041-fix-change-syntax-that-language-service-refactor-doe.patch index 285390f3..25c119d1 100644 --- a/vscode-patches/0041-fix-change-syntax-that-language-service-refactor-doe.patch +++ b/vscode-patches/0041-fix-change-syntax-that-language-service-refactor-doe.patch @@ -5,9 +5,9 @@ Subject: [PATCH] fix: change syntax that language service refactor doesn't support well --- - src/vs/workbench/contrib/tasks/common/taskService.ts | 5 ++++- - .../chatAgentTools/common/terminalSandboxService.ts | 8 +++++--- - 2 files changed, 9 insertions(+), 4 deletions(-) + src/vs/workbench/contrib/tasks/common/taskService.ts | 5 ++++- + .../chatAgentTools/common/terminalSandboxService.ts | 10 +++++++--- + 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/vs/workbench/contrib/tasks/common/taskService.ts b/src/vs/workbench/contrib/tasks/common/taskService.ts index ec8414ee339..35ac0b396d8 100644 @@ -26,27 +26,29 @@ index ec8414ee339..35ac0b396d8 100644 export const ShellExecutionSupportedContext = new RawContextKey('shellExecutionSupported', false, nls.localize('tasks.shellExecutionSupported', "Whether ShellExecution tasks are supported. Consider using in the when clause of a \'taskDefinition\' contribution.")); export const TaskCommandsRegistered = new RawContextKey('taskCommandsRegistered', false, nls.localize('tasks.taskCommandsRegistered', "Whether the task commands have been registered yet")); diff --git a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.ts b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.ts -index dfef15b9945..0f3c4f6a425 100644 +index bca4856990d..b6296b4ab13 100644 --- a/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.ts +++ b/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.ts @@ -25,7 +25,7 @@ import { SANDBOX_HELPER_CHANNEL_NAME, SandboxHelperChannelClient } from '../../. import { ISandboxDependencyStatus, ISandboxHelperService, type IWindowsMxcConfig, IWindowsMxcFilesystemPolicy, type IWindowsMxcPolicyContainment, type IWindowsMxcSandboxPolicy } from '../../../../../platform/sandbox/common/sandboxHelperService.js'; import { ITerminalSandboxEngineHost, ITerminalSandboxRuntimeInfo, TerminalSandboxEngine } from '../../../../../platform/sandbox/common/terminalSandboxEngine.js'; import { readSandboxSetting, SANDBOX_SETTING_KEYS } from './sandboxSettingsReader.js'; --import { ITerminalSandboxService, type ISandboxDependencyInstallOptions, type ISandboxDependencyInstallResult, type ITerminalSandboxCommand, type ITerminalSandboxPrecheckInputs, type ITerminalSandboxPrerequisiteCheckResult, type ITerminalSandboxResolvedNetworkDomains, type ITerminalSandboxWrapResult } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; -+import { ISandboxDependencyInstallTerminal, ITerminalSandboxService, TerminalSandboxPrerequisiteCheck, type ISandboxDependencyInstallOptions, type ISandboxDependencyInstallResult, type ITerminalSandboxCommand, type ITerminalSandboxPrecheckInputs, type ITerminalSandboxPrerequisiteCheckResult, type ITerminalSandboxResolvedNetworkDomains, type ITerminalSandboxWrapResult } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; +-import { ITerminalSandboxService, TerminalSandboxPreCheckRemediation, type ISandboxDependencyInstallOptions, type ISandboxDependencyInstallResult, type ITerminalSandboxCommand, type ITerminalSandboxFileAccessCheckResult, type ITerminalSandboxPrecheckInputs, type ITerminalSandboxPrerequisiteCheckResult, type ITerminalSandboxResolvedNetworkDomains, type ITerminalSandboxWrapResult, type TerminalSandboxFileAccessPermission } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; ++import { ISandboxDependencyInstallTerminal, ITerminalSandboxService, TerminalSandboxPreCheckRemediation, TerminalSandboxPrerequisiteCheck, type ISandboxDependencyInstallOptions, type ISandboxDependencyInstallResult, type ITerminalSandboxCommand, type ITerminalSandboxFileAccessCheckResult, type ITerminalSandboxPrecheckInputs, type ITerminalSandboxPrerequisiteCheckResult, type ITerminalSandboxResolvedNetworkDomains, type ITerminalSandboxWrapResult, type TerminalSandboxFileAccessPermission } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; import { TerminalCapability } from '../../../../../platform/terminal/common/capabilities/capabilities.js'; import { IWorkspaceContextService } from '../../../../../platform/workspace/common/workspace.js'; import { ChatModel } from '../../../chat/common/model/chatModel.js'; -@@ -34,8 +34,10 @@ import { ElicitationState, IChatService } from '../../../chat/common/chatService +@@ -34,8 +34,12 @@ import { ElicitationState, IChatService } from '../../../chat/common/chatService import { IRemoteAgentService } from '../../../../services/remote/common/remoteAgentService.js'; import { ILifecycleService, WillShutdownJoinerOrder } from '../../../../services/lifecycle/common/lifecycle.js'; --export { ITerminalSandboxService, TerminalSandboxPrerequisiteCheck } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; --export type { ISandboxDependencyInstallOptions, ISandboxDependencyInstallResult, ISandboxDependencyInstallTerminal, ITerminalSandboxCommand, ITerminalSandboxPrecheckInputs, ITerminalSandboxPrerequisiteCheckResult, ITerminalSandboxResolvedNetworkDomains, ITerminalSandboxWrapResult } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; +-export { ITerminalSandboxService, TerminalSandboxPrerequisiteCheck, TerminalSandboxPreCheckRemediation } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; +-export type { ISandboxDependencyInstallOptions, ISandboxDependencyInstallResult, ISandboxDependencyInstallTerminal, ITerminalSandboxCommand, ITerminalSandboxFileAccessCheckResult, ITerminalSandboxPrecheckInputs, ITerminalSandboxPrerequisiteCheckResult, ITerminalSandboxResolvedNetworkDomains, ITerminalSandboxWrapResult, TerminalSandboxFileAccessPermission } from '../../../../../platform/sandbox/common/terminalSandboxService.js'; +export { -+ ITerminalSandboxService, TerminalSandboxPrerequisiteCheck, -+ ISandboxDependencyInstallOptions, ISandboxDependencyInstallResult, ISandboxDependencyInstallTerminal, ITerminalSandboxCommand, ITerminalSandboxPrecheckInputs, ITerminalSandboxPrerequisiteCheckResult, ITerminalSandboxResolvedNetworkDomains, ITerminalSandboxWrapResult ++ ITerminalSandboxService, TerminalSandboxPrerequisiteCheck, TerminalSandboxPreCheckRemediation ++}; ++export type { ++ ISandboxDependencyInstallOptions, ISandboxDependencyInstallResult, ISandboxDependencyInstallTerminal, ITerminalSandboxCommand, ITerminalSandboxPrecheckInputs, ITerminalSandboxPrerequisiteCheckResult, ITerminalSandboxResolvedNetworkDomains, ITerminalSandboxWrapResult, TerminalSandboxFileAccessPermission +}; /** diff --git a/vscode-patches/0043-refactor-split-code-to-be-able-to-import-only-requir.patch b/vscode-patches/0043-refactor-split-code-to-be-able-to-import-only-requir.patch index 59e5c7a7..4f214ae5 100644 --- a/vscode-patches/0043-refactor-split-code-to-be-able-to-import-only-requir.patch +++ b/vscode-patches/0043-refactor-split-code-to-be-able-to-import-only-requir.patch @@ -10,7 +10,7 @@ Subject: [PATCH] refactor: split code to be able to import only required part 3 files changed, 236 insertions(+), 207 deletions(-) diff --git a/src/vs/platform/extensionManagement/common/extensionsScannerService.ts b/src/vs/platform/extensionManagement/common/extensionsScannerService.ts -index f0d9860b091..4902b531103 100644 +index 7fea8e5dc8c..2c91a53da83 100644 --- a/src/vs/platform/extensionManagement/common/extensionsScannerService.ts +++ b/src/vs/platform/extensionManagement/common/extensionsScannerService.ts @@ -578,14 +578,160 @@ export class ExtensionScannerInput { @@ -174,25 +174,25 @@ index f0d9860b091..4902b531103 100644 + +class ExtensionsScanner extends ExtensionManifestTranslator { - private readonly extensionsEnabledWithApiProposalVersion: string[]; private readonly productQuality: string | undefined; -@@ -594,12 +740,12 @@ class ExtensionsScanner extends Disposable { + private readonly productBuiltInExtensionsEnabledWithAutoUpdates: Set; +@@ -593,12 +739,12 @@ class ExtensionsScanner extends Disposable { constructor( @IExtensionsProfileScannerService protected readonly extensionsProfileScannerService: IExtensionsProfileScannerService, @IUriIdentityService protected readonly uriIdentityService: IUriIdentityService, - @IFileService protected readonly fileService: IFileService, + @IFileService fileService: IFileService, @IProductService productService: IProductService, - @IEnvironmentService private readonly environmentService: IEnvironmentService, + @IEnvironmentService environmentService: IEnvironmentService, - @ILogService protected readonly logService: ILogService + @ILogService logService: ILogService ) { - super(); + super(fileService, logService); - this.extensionsEnabledWithApiProposalVersion = productService.extensionsEnabledWithApiProposalVersion?.map(id => id.toLowerCase()) ?? []; this.productQuality = productService.quality; this.productBuiltInExtensionsEnabledWithAutoUpdates = getProductBuiltInExtensionsEnabledWithAutoUpdates(productService, environmentService); -@@ -798,144 +944,6 @@ class ExtensionsScanner extends Disposable { + } +@@ -795,144 +941,6 @@ class ExtensionsScanner extends Disposable { } return manifest; } diff --git a/vscode-patches/0046-fix-stop-expecting-a-git-context.patch b/vscode-patches/0046-fix-stop-expecting-a-git-context.patch index 635ee113..517967a3 100644 --- a/vscode-patches/0046-fix-stop-expecting-a-git-context.patch +++ b/vscode-patches/0046-fix-stop-expecting-a-git-context.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: stop expecting a git context 1 file changed, 5 deletions(-) diff --git a/build/npm/postinstall.ts b/build/npm/postinstall.ts -index 0d00ac39261..2a72ad3e393 100644 +index 5df04a79637..dd857bb01b7 100644 --- a/build/npm/postinstall.ts +++ b/build/npm/postinstall.ts @@ -240,8 +240,6 @@ async function runWithConcurrency(tasks: (() => Promise)[], concurrency: n diff --git a/vscode-patches/0047-fix-extract-constants-into-separate-module.patch b/vscode-patches/0047-fix-extract-constants-into-separate-module.patch index e7928f5d..e1514a9e 100644 --- a/vscode-patches/0047-fix-extract-constants-into-separate-module.patch +++ b/vscode-patches/0047-fix-extract-constants-into-separate-module.patch @@ -17,7 +17,7 @@ so that only the constant is pulled from the root instead of the whole module gr create mode 100644 src/vs/workbench/contrib/chat/browser/widget/input/editor/chatDynamicVariablesConstant.ts diff --git a/src/vs/workbench/api/browser/mainThreadChatAgents2.ts b/src/vs/workbench/api/browser/mainThreadChatAgents2.ts -index 240f5190d83..cb5f4955086 100644 +index a42e2afdce8..2f3c21aeec8 100644 --- a/src/vs/workbench/api/browser/mainThreadChatAgents2.ts +++ b/src/vs/workbench/api/browser/mainThreadChatAgents2.ts @@ -27,8 +27,6 @@ import { ILogService } from '../../../platform/log/common/log.js'; @@ -39,7 +39,7 @@ index 240f5190d83..cb5f4955086 100644 interface AgentData { dispose: () => void; -@@ -657,7 +658,7 @@ export class MainThreadChatAgents2 extends Disposable implements MainThreadChatA +@@ -676,7 +677,7 @@ export class MainThreadChatAgents2 extends Disposable implements MainThreadChatA kind: CompletionItemKind.Text, detail: v.detail, documentation: v.documentation, @@ -133,7 +133,7 @@ index e05b71bd72c..af8fcba33d5 100644 import { ChatAgentLocation } from '../../chat/common/constants.js'; diff --git a/src/vs/workbench/contrib/search/browser/anythingQuickAccess.ts b/src/vs/workbench/contrib/search/browser/anythingQuickAccess.ts -index 72514432fcf..4d89929fb90 100644 +index eea4b5e31c1..4b60b798f12 100644 --- a/src/vs/workbench/contrib/search/browser/anythingQuickAccess.ts +++ b/src/vs/workbench/contrib/search/browser/anythingQuickAccess.ts @@ -54,7 +54,7 @@ import { Lazy } from '../../../../base/common/lazy.js'; diff --git a/vscode-patches/0048-fix-store-activeChatController-in-another-module.patch b/vscode-patches/0048-fix-store-activeChatController-in-another-module.patch index 08e60a29..f3f39916 100644 --- a/vscode-patches/0048-fix-store-activeChatController-in-another-module.patch +++ b/vscode-patches/0048-fix-store-activeChatController-in-another-module.patch @@ -33,10 +33,10 @@ index 734ac7e62a6..8dc5b8133db 100644 const menuActions = menuService.getMenuActions(MENU_TERMINAL_CHAT_WIDGET_STATUS, contextKeyService); for (const action of menuActions) { diff --git a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts -index 9a378d9ff82..7714ba1ab7d 100644 +index fb1da4e5d6b..97ad344230e 100644 --- a/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts +++ b/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.ts -@@ -33,6 +33,7 @@ import { ConfigurationTarget } from '../../../../../platform/configuration/commo +@@ -34,6 +34,7 @@ import { ConfigurationTarget } from '../../../../../platform/configuration/commo import { TerminalChatAgentToolsSettingId } from '../../chatAgentTools/common/terminalChatAgentToolsConfiguration.js'; import { IMarkdownString } from '../../../../../base/common/htmlContent.js'; import { AbstractInlineChatAction } from '../../../inlineChat/browser/inlineChatActions.js'; @@ -44,7 +44,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 registerActiveXtermAction({ id: TerminalChatCommandId.Start, -@@ -61,7 +62,7 @@ registerActiveXtermAction({ +@@ -62,7 +63,7 @@ registerActiveXtermAction({ return; } @@ -53,7 +53,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 if (!contr) { return; } -@@ -111,7 +112,7 @@ registerActiveXtermAction({ +@@ -112,7 +113,7 @@ registerActiveXtermAction({ if (isDetachedTerminalInstance(activeInstance)) { return; } @@ -62,7 +62,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 contr?.terminalChatWidget?.clear(); } }); -@@ -144,7 +145,7 @@ registerActiveXtermAction({ +@@ -145,7 +146,7 @@ registerActiveXtermAction({ if (isDetachedTerminalInstance(activeInstance)) { return; } @@ -71,7 +71,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 contr?.terminalChatWidget?.acceptCommand(true); } }); -@@ -176,7 +177,7 @@ registerActiveXtermAction({ +@@ -177,7 +178,7 @@ registerActiveXtermAction({ if (isDetachedTerminalInstance(activeInstance)) { return; } @@ -80,7 +80,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 contr?.terminalChatWidget?.acceptCommand(true); } }); -@@ -210,7 +211,7 @@ registerActiveXtermAction({ +@@ -211,7 +212,7 @@ registerActiveXtermAction({ if (isDetachedTerminalInstance(activeInstance)) { return; } @@ -89,7 +89,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 contr?.terminalChatWidget?.acceptCommand(false); } }); -@@ -242,7 +243,7 @@ registerActiveXtermAction({ +@@ -243,7 +244,7 @@ registerActiveXtermAction({ if (isDetachedTerminalInstance(activeInstance)) { return; } @@ -98,7 +98,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 contr?.terminalChatWidget?.acceptCommand(false); } }); -@@ -272,7 +273,7 @@ registerActiveXtermAction({ +@@ -273,7 +274,7 @@ registerActiveXtermAction({ run: async (_xterm, _accessor, activeInstance) => { const chatService = _accessor.get(IChatService); const chatWidgetService = _accessor.get(IChatWidgetService); @@ -107,7 +107,7 @@ index 9a378d9ff82..7714ba1ab7d 100644 const model = contr?.terminalChatWidget?.inlineChatWidget.chatWidget.viewModel?.model; if (!model) { return; -@@ -312,7 +313,7 @@ registerActiveXtermAction({ +@@ -313,7 +314,7 @@ registerActiveXtermAction({ if (isDetachedTerminalInstance(activeInstance)) { return; } diff --git a/vscode-patches/0056-fix-break-cyclic-dependency.patch b/vscode-patches/0056-fix-break-cyclic-dependency.patch index a834ef27..4e27af3c 100644 --- a/vscode-patches/0056-fix-break-cyclic-dependency.patch +++ b/vscode-patches/0056-fix-break-cyclic-dependency.patch @@ -5,7 +5,7 @@ Subject: [PATCH] fix: break cyclic dependency --- .../contrib/chat/browser/newChatContextAttachments.ts | 4 ++-- - .../chatMissingSandboxDepsConfirmationSubPart.ts | 2 +- + .../chatSandboxPrerequisiteConfirmationSubPart.ts | 2 +- .../contrib/tasks/browser/task.contribution.ts | 3 ++- .../contrib/tasks/browser/terminalTaskSystem.ts | 3 ++- src/vs/workbench/contrib/tasks/common/constants.ts | 11 +++++++++++ @@ -14,12 +14,12 @@ Subject: [PATCH] fix: break cyclic dependency create mode 100644 src/vs/workbench/contrib/tasks/common/constants.ts diff --git a/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.ts b/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.ts -index 556ec43d2a4..d72a3d920b0 100644 +index 80d9376f8e6..7efe84f4385 100644 --- a/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.ts +++ b/src/vs/sessions/contrib/chat/browser/newChatContextAttachments.ts @@ -36,8 +36,8 @@ import { DEFAULT_LABELS_CONTAINER, ResourceLabels } from '../../../../workbench/ - import { IChatRequestVariableEntry, OmittedState } from '../../../../workbench/contrib/chat/common/attachments/chatVariableEntries.js'; + import { IChatRequestVariableEntry, isAgentHostCompletionVariableEntry, OmittedState } from '../../../../workbench/contrib/chat/common/attachments/chatVariableEntries.js'; import { isLocation } from '../../../../editor/common/languages.js'; -import { resizeImage } from '../../../../workbench/contrib/chat/browser/chatImageUtils.js'; -import { imageToHash, isImage } from '../../../../workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.js'; @@ -28,10 +28,10 @@ index 556ec43d2a4..d72a3d920b0 100644 import { CodeDataTransfers, containsDragType, extractEditorsDropData, getPathForFile } from '../../../../platform/dnd/browser/dnd.js'; import { DataTransfers } from '../../../../base/browser/dnd.js'; import { getExcludes, ISearchConfiguration, ISearchService, QueryType } from '../../../../workbench/services/search/common/search.js'; -diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.ts -index e31d3daf423..aa35bbc601a 100644 ---- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.ts -+++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatMissingSandboxDepsConfirmationSubPart.ts +diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSandboxPrerequisiteConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSandboxPrerequisiteConfirmationSubPart.ts +index 9a9c423df9d..d48fdf2b0a2 100644 +--- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSandboxPrerequisiteConfirmationSubPart.ts ++++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatSandboxPrerequisiteConfirmationSubPart.ts @@ -12,7 +12,7 @@ import { IKeybindingService } from '../../../../../../../platform/keybinding/com import { IMarkdownRenderer } from '../../../../../../../platform/markdown/browser/markdownRenderer.js'; import { IChatToolInvocation, type IChatTerminalToolInvocationData } from '../../../../common/chatService/chatService.js'; @@ -39,8 +39,8 @@ index e31d3daf423..aa35bbc601a 100644 -import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../../actions/chatToolActions.js'; +import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../../actions/chatConstants.js'; import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; + import { IChatToolRiskAssessmentService } from '../../../tools/chatToolRiskAssessmentService.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; - import { AbstractToolConfirmationSubPart } from './abstractToolConfirmationSubPart.js'; diff --git a/src/vs/workbench/contrib/tasks/browser/task.contribution.ts b/src/vs/workbench/contrib/tasks/browser/task.contribution.ts index 1ad6a06d008..d619311bc2b 100644 --- a/src/vs/workbench/contrib/tasks/browser/task.contribution.ts diff --git a/vscode-patches/0060-feat-support-shadow-dom.patch b/vscode-patches/0060-feat-support-shadow-dom.patch index 7b04c45e..912ce011 100644 --- a/vscode-patches/0060-feat-support-shadow-dom.patch +++ b/vscode-patches/0060-feat-support-shadow-dom.patch @@ -327,7 +327,7 @@ index 33562d5d605..4de7d7edf3e 100644 this.hide(); } diff --git a/src/vs/base/browser/ui/dialog/dialog.ts b/src/vs/base/browser/ui/dialog/dialog.ts -index 3169c8326c3..d6dc567e934 100644 +index 4417777cb85..57dff896c5d 100644 --- a/src/vs/base/browser/ui/dialog/dialog.ts +++ b/src/vs/base/browser/ui/dialog/dialog.ts @@ -5,7 +5,7 @@ @@ -339,7 +339,7 @@ index 3169c8326c3..d6dc567e934 100644 import { StandardKeyboardEvent } from '../../keyboardEvent.js'; import { ActionBar } from '../actionbar/actionbar.js'; import { ButtonBar, ButtonBarAlignment, ButtonWithDescription, ButtonWithDropdown, IButton, IButtonStyles, IButtonWithDropdownOptions } from '../button/button.js'; -@@ -255,7 +255,7 @@ export class Dialog extends Disposable { +@@ -262,7 +262,7 @@ export class Dialog extends Disposable { } async show(): Promise { @@ -348,7 +348,7 @@ index 3169c8326c3..d6dc567e934 100644 return new Promise(resolve => { clearNode(this.buttonsContainer); -@@ -609,7 +609,7 @@ export class Dialog extends Disposable { +@@ -623,7 +623,7 @@ export class Dialog extends Disposable { this.modalElement = undefined; } @@ -466,19 +466,19 @@ index 6f2fcb52276..0f9594a7d77 100644 iframe.classList.add(PointerEventsDisabledCssClass); // disable mouse events on iframes as long as we drag the sash } diff --git a/src/vs/base/browser/ui/splitview/paneview.ts b/src/vs/base/browser/ui/splitview/paneview.ts -index fb2e1f406ae..6a3a3d9b045 100644 +index 024b2147986..4c1118b7872 100644 --- a/src/vs/base/browser/ui/splitview/paneview.ts +++ b/src/vs/base/browser/ui/splitview/paneview.ts @@ -5,7 +5,7 @@ import { isFirefox } from '../../browser.js'; import { DataTransfers } from '../../dnd.js'; --import { $, addDisposableListener, append, clearNode, EventHelper, EventType, getWindow, isHTMLElement, trackFocus } from '../../dom.js'; -+import { $, addDisposableListener, append, clearNode, EventHelper, EventType, getActiveElement, getWindow, isHTMLElement, trackFocus } from '../../dom.js'; +-import { $, addDisposableListener, append, clearNode, EventHelper, EventType, getWindow, isHTMLElement, scheduleAtNextAnimationFrame, trackFocus } from '../../dom.js'; ++import { $, addDisposableListener, append, clearNode, EventHelper, EventType, getActiveElement, getWindow, isHTMLElement, scheduleAtNextAnimationFrame, trackFocus } from '../../dom.js'; import { DomEmitter } from '../../event.js'; import { StandardKeyboardEvent } from '../../keyboardEvent.js'; import { Gesture, EventType as TouchEventType } from '../../touch.js'; -@@ -663,7 +663,7 @@ export class PaneView extends Disposable { +@@ -714,7 +714,7 @@ export class PaneView extends Disposable { private focusPrevious(): void { const headers = this.getPaneHeaderElements(); @@ -487,7 +487,7 @@ index fb2e1f406ae..6a3a3d9b045 100644 if (index === -1) { return; -@@ -674,7 +674,7 @@ export class PaneView extends Disposable { +@@ -725,7 +725,7 @@ export class PaneView extends Disposable { private focusNext(): void { const headers = this.getPaneHeaderElements(); @@ -679,7 +679,7 @@ index 7b1a6e93ab9..8ab4cf789a9 100644 } }); diff --git a/src/vs/editor/contrib/hover/browser/contentHoverController.ts b/src/vs/editor/contrib/hover/browser/contentHoverController.ts -index ba0e7d0b161..5a4426465a5 100644 +index afaa209d933..fbef0712283 100644 --- a/src/vs/editor/contrib/hover/browser/contentHoverController.ts +++ b/src/vs/editor/contrib/hover/browser/contentHoverController.ts @@ -24,6 +24,7 @@ import { Emitter } from '../../../../base/common/event.js'; @@ -713,10 +713,10 @@ index c5226cb273f..08f5ace9b37 100644 this._configurationService.getValue('accessibility.verbosity.hover') === true && this._accessibilityService.isScreenReaderOptimized(), this._keybindingService.lookupKeybinding('editor.action.accessibleView')?.getAriaLabel() ?? '' diff --git a/src/vs/platform/actionWidget/browser/actionList.ts b/src/vs/platform/actionWidget/browser/actionList.ts -index d137009d1ef..d8909be2aec 100644 +index cae571a303e..44b66de4ec7 100644 --- a/src/vs/platform/actionWidget/browser/actionList.ts +++ b/src/vs/platform/actionWidget/browser/actionList.ts -@@ -1388,8 +1388,11 @@ export class ActionListWidget extends Disposable { +@@ -1607,8 +1607,11 @@ export class ActionListWidget extends Disposable { } private _getRowElement(index: number): HTMLElement | null { @@ -861,19 +861,19 @@ index 7215f066d45..f55ed918b03 100644 return rules.join('\n'); } diff --git a/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts b/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts -index 0a2baa9cd08..b3a23939373 100644 +index fdaf7d3923f..aac39b1fe29 100644 --- a/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts +++ b/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts -@@ -11,7 +11,7 @@ import { EditorContributionInstantiation, registerEditorContribution } from '../ - import { ICodeEditorService } from '../../../../editor/browser/services/codeEditorService.js'; - import { EditorOption } from '../../../../editor/common/config/editorOptions.js'; +@@ -13,7 +13,7 @@ import { EditorOption } from '../../../../editor/common/config/editorOptions.js' + import { Position } from '../../../../editor/common/core/position.js'; + import { Range } from '../../../../editor/common/core/range.js'; import { Selection, SelectionDirection } from '../../../../editor/common/core/selection.js'; --import { addStandardDisposableListener, getWindow, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; -+import { addStandardDisposableListener, getActiveElement, getWindow, isActiveElement, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; +-import { addStandardDisposableListener, getWindow, isHTMLElement, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; ++import { addStandardDisposableListener, getActiveElement, getWindow, isActiveElement, isHTMLElement, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; + import { URI } from '../../../../base/common/uri.js'; + import { isEqual } from '../../../../base/common/resources.js'; import { KeyCode } from '../../../../base/common/keyCodes.js'; - import { IAgentFeedbackService } from './agentFeedbackService.js'; - import { createAgentFeedbackContext } from './agentFeedbackEditorUtils.js'; -@@ -251,7 +251,7 @@ export class AgentFeedbackEditorInputContribution extends Disposable implements +@@ -329,7 +329,7 @@ export class AgentFeedbackEditorInputContribution extends Disposable implements if (!this._visible) { return; } @@ -882,7 +882,7 @@ index 0a2baa9cd08..b3a23939373 100644 return; } this._autoHide(); -@@ -432,7 +432,7 @@ export class AgentFeedbackEditorInputContribution extends Disposable implements +@@ -686,7 +686,7 @@ export class AgentFeedbackEditorInputContribution extends Disposable implements } // If the input is not focused, focus it and let the keystroke go through @@ -892,10 +892,10 @@ index 0a2baa9cd08..b3a23939373 100644 } })); diff --git a/src/vs/workbench/browser/actions/developerActions.ts b/src/vs/workbench/browser/actions/developerActions.ts -index cdc59743913..14713c199ce 100644 +index e9e5399ba81..06b0aebdffd 100644 --- a/src/vs/workbench/browser/actions/developerActions.ts +++ b/src/vs/workbench/browser/actions/developerActions.ts -@@ -79,7 +79,7 @@ class InspectContextKeysAction extends Action2 { +@@ -85,7 +85,7 @@ class InspectContextKeysAction extends Action2 { const onMouseMove = disposables.add(new DomEmitter(activeDocument, 'mousemove', true)); disposables.add(onMouseMove.event(e => { @@ -904,7 +904,7 @@ index cdc59743913..14713c199ce 100644 const position = getDomNodePagePosition(target); hoverFeedback.style.top = `${position.top}px`; -@@ -96,7 +96,7 @@ class InspectContextKeysAction extends Action2 { +@@ -102,7 +102,7 @@ class InspectContextKeysAction extends Action2 { e.preventDefault(); e.stopPropagation(); @@ -914,7 +914,7 @@ index cdc59743913..14713c199ce 100644 dispose(disposables); diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index 1f1026f5ad8..6a51d30679d 100644 +index a9e70490c4c..4406f7e15ee 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts @@ -47,6 +47,7 @@ import { AuxiliaryBarPart } from './parts/auxiliarybar/auxiliaryBarPart.js'; @@ -925,7 +925,7 @@ index 1f1026f5ad8..6a51d30679d 100644 //#region Layout Implementation -@@ -304,6 +305,8 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi +@@ -305,6 +306,8 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi private readonly layoutOptions?: { resetLayout: boolean } ) { super(); @@ -935,7 +935,7 @@ index 1f1026f5ad8..6a51d30679d 100644 protected initLayout(accessor: ServicesAccessor): void { diff --git a/src/vs/workbench/browser/parts/editor/editorGroupView.ts b/src/vs/workbench/browser/parts/editor/editorGroupView.ts -index 7b3e372a077..bef32d191c0 100644 +index 3f89436bc07..e026c68b30b 100644 --- a/src/vs/workbench/browser/parts/editor/editorGroupView.ts +++ b/src/vs/workbench/browser/parts/editor/editorGroupView.ts @@ -11,7 +11,7 @@ import { EditorInput } from '../../../common/editor/editorInput.js'; @@ -947,7 +947,7 @@ index 7b3e372a077..bef32d191c0 100644 import { ServiceCollection } from '../../../../platform/instantiation/common/serviceCollection.js'; import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.js'; import { ProgressBar } from '../../../../base/browser/ui/progressbar/progressbar.js'; -@@ -1652,7 +1652,7 @@ export class EditorGroupView extends Themable implements IEditorGroupView { +@@ -1660,7 +1660,7 @@ export class EditorGroupView extends Themable implements IEditorGroupView { private shouldRestoreFocus(target: Element): boolean { const activeElement = getActiveElement(); @@ -957,7 +957,7 @@ index 7b3e372a077..bef32d191c0 100644 } diff --git a/src/vs/workbench/browser/parts/editor/modalEditorPart.ts b/src/vs/workbench/browser/parts/editor/modalEditorPart.ts -index 6301ce26e57..0d15376efa3 100644 +index 522f7967950..169bcffd42e 100644 --- a/src/vs/workbench/browser/parts/editor/modalEditorPart.ts +++ b/src/vs/workbench/browser/parts/editor/modalEditorPart.ts @@ -4,7 +4,7 @@ @@ -969,7 +969,7 @@ index 6301ce26e57..0d15376efa3 100644 import { GlobalPointerMoveMonitor } from '../../../../base/browser/globalPointerMoveMonitor.js'; import { StandardKeyboardEvent } from '../../../../base/browser/keyboardEvent.js'; import { ActionBar, prepareActions } from '../../../../base/browser/ui/actionbar/actionbar.js'; -@@ -923,7 +923,7 @@ class ModalEditorPartImpl extends EditorPart implements IModalEditorPart { +@@ -940,7 +940,7 @@ class ModalEditorPartImpl extends EditorPart implements IModalEditorPart { } override create(parent: HTMLElement, options?: object): void { @@ -1056,10 +1056,10 @@ index 7486d45ae40..b3867ac6a12 100644 } })); diff --git a/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts -index 2c67995e535..f11bf0d7a09 100644 +index 82c264ad240..43d1817aba8 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/chatInputPart.ts -@@ -3257,7 +3257,7 @@ export class ChatInputPart extends Disposable implements IHistoryNavigationWidge +@@ -3816,7 +3816,7 @@ export class ChatInputPart extends Disposable implements IHistoryNavigationWidge return; } @@ -1247,7 +1247,7 @@ index 1de54375c42..53d6713f596 100644 } diff --git a/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts b/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts -index 3f491f41b3a..dc864d0f45a 100644 +index 006b15f7d6e..5ba6bca6683 100644 --- a/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts +++ b/src/vs/workbench/contrib/preferences/browser/preferences.contribution.ts @@ -3,6 +3,7 @@ @@ -1258,7 +1258,7 @@ index 3f491f41b3a..dc864d0f45a 100644 import { KeyChord, KeyCode, KeyMod } from '../../../../base/common/keyCodes.js'; import { Disposable, DisposableStore, MutableDisposable } from '../../../../base/common/lifecycle.js'; import { Schemas } from '../../../../base/common/network.js'; -@@ -746,7 +747,7 @@ class PreferencesActionsContribution extends Disposable implements IWorkbenchCon +@@ -810,7 +811,7 @@ class PreferencesActionsContribution extends Disposable implements IWorkbenchCon return; } @@ -1268,10 +1268,10 @@ index 3f491f41b3a..dc864d0f45a 100644 preferencesEditor.focusSettings(true); } diff --git a/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts b/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts -index c754843a640..ab5ca9b057b 100644 +index 499f9e6c73f..2164a64ae5f 100644 --- a/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts +++ b/src/vs/workbench/contrib/preferences/browser/settingsEditor2.ts -@@ -1148,7 +1148,7 @@ export class SettingsEditor2 extends EditorPane { +@@ -1229,7 +1229,7 @@ export class SettingsEditor2 extends EditorPane { })); this._register(this.settingsTree.onDidFocus(() => { @@ -1280,7 +1280,7 @@ index c754843a640..ab5ca9b057b 100644 if (classList && classList.contains('monaco-list') && classList.contains('settings-editor-tree')) { this._currentFocusContext = SettingsFocusContext.SettingTree; this.settingRowFocused.set(true); -@@ -1619,7 +1619,7 @@ export class SettingsEditor2 extends EditorPane { +@@ -1703,7 +1703,7 @@ export class SettingsEditor2 extends EditorPane { private getActiveControlInSettingsTree(): HTMLElement | null { const element = this.settingsTree.getHTMLElement(); @@ -1289,7 +1289,7 @@ index c754843a640..ab5ca9b057b 100644 return (activeElement && DOM.isAncestorOfActiveElement(element)) ? activeElement : null; -@@ -1684,7 +1684,7 @@ export class SettingsEditor2 extends EditorPane { +@@ -1768,7 +1768,7 @@ export class SettingsEditor2 extends EditorPane { } private contextViewFocused(): boolean { @@ -1364,7 +1364,7 @@ index 9a745727415..32b87509ab3 100644 const listener = this._register(Event.once(this._terminalService.onDidChangeConnectionState)(() => { // Only focus the terminal if the activeElement has not changed since focus() was called diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index 9f6018c77f5..25085c88cde 100644 +index 69e5c9244b2..40a109760c3 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts @@ -4,7 +4,7 @@ @@ -1395,7 +1395,7 @@ index 9f6018c77f5..25085c88cde 100644 } private handleKeyEvent(type: 'keydown' | 'keyup', event: KeyEvent) { -@@ -956,8 +957,11 @@ export class WebviewElement extends Disposable implements IWebviewElement, Webvi +@@ -961,8 +962,11 @@ export class WebviewElement extends Disposable implements IWebviewElement, Webvi return; } @@ -1432,7 +1432,7 @@ index 0cb22b9cf17..64f8a2c27d7 100644 let parent = this.container.parentElement; while (parent && parent !== active) { diff --git a/src/vs/workbench/contrib/welcomeOnboarding/browser/onboardingVariationA.ts b/src/vs/workbench/contrib/welcomeOnboarding/browser/onboardingVariationA.ts -index ad276fc2c49..84d56dfff12 100644 +index c1fb3e12ab4..eedae948676 100644 --- a/src/vs/workbench/contrib/welcomeOnboarding/browser/onboardingVariationA.ts +++ b/src/vs/workbench/contrib/welcomeOnboarding/browser/onboardingVariationA.ts @@ -5,7 +5,7 @@ @@ -1499,10 +1499,10 @@ index c6fb17f8525..8691b2f7a37 100644 active = active.parentElement; } diff --git a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -index 15b221bafb8..0dc8b7ce37a 100644 +index 1872d9b598e..595864311f8 100644 --- a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts +++ b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -@@ -469,6 +469,8 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili +@@ -483,6 +483,8 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili mapOriginalToClone.set(originalNode, clonedNode); } @@ -1511,7 +1511,7 @@ index 15b221bafb8..0dc8b7ce37a 100644 // Clone all style elements and stylesheet links from the window to the child window // and keep track of elements to settle to signal that styles have loaded // Increment pending links right from the beginning to ensure we only settle when -@@ -476,7 +478,7 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili +@@ -490,7 +492,7 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili pendingLinksToSettle++; try { // eslint-disable-next-line no-restricted-syntax @@ -1520,7 +1520,7 @@ index 15b221bafb8..0dc8b7ce37a 100644 cloneNode(originalNode); } } finally { -@@ -490,7 +492,7 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili +@@ -504,7 +506,7 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili // Listen to new stylesheets as they are being added or removed in the main window // and apply to child window (including changes to existing stylesheets elements) @@ -1552,7 +1552,7 @@ index 1245acce54c..a2312b0d332 100644 return; } diff --git a/src/vs/workbench/services/themes/browser/workbenchThemeService.ts b/src/vs/workbench/services/themes/browser/workbenchThemeService.ts -index 99405e3d855..2f96d707b62 100644 +index 44f587aeb63..4ca10df641f 100644 --- a/src/vs/workbench/services/themes/browser/workbenchThemeService.ts +++ b/src/vs/workbench/services/themes/browser/workbenchThemeService.ts @@ -18,7 +18,7 @@ import { Event, Emitter } from '../../../../base/common/event.js'; diff --git a/vscode-patches/0061-feat-support-adoptedStyleSheets-for-aux-windows.patch b/vscode-patches/0061-feat-support-adoptedStyleSheets-for-aux-windows.patch index 52f49411..867407ce 100644 --- a/vscode-patches/0061-feat-support-adoptedStyleSheets-for-aux-windows.patch +++ b/vscode-patches/0061-feat-support-adoptedStyleSheets-for-aux-windows.patch @@ -8,7 +8,7 @@ Subject: [PATCH] feat: support adoptedStyleSheets for aux windows 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -index 0dc8b7ce37a..6c094a64793 100644 +index 595864311f8..f65640ada4b 100644 --- a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts +++ b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts @@ -5,7 +5,7 @@ @@ -20,7 +20,7 @@ index 0dc8b7ce37a..6c094a64793 100644 import { CodeWindow, ensureCodeWindow, mainWindow } from '../../../../base/browser/window.js'; import { coalesce } from '../../../../base/common/arrays.js'; import { Barrier } from '../../../../base/common/async.js'; -@@ -436,7 +436,13 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili +@@ -450,7 +450,13 @@ export class BrowserAuxiliaryWindowService extends Disposable implements IAuxili auxiliaryWindow.document.adoptedStyleSheets = [ ...auxiliaryWindow.document.adoptedStyleSheets, globalStyle, diff --git a/vscode-patches/0063-feat-add-a-context-key-to-enable-further-customizati.patch b/vscode-patches/0063-feat-add-a-context-key-to-enable-further-customizati.patch index 4867b0c7..9af43211 100644 --- a/vscode-patches/0063-feat-add-a-context-key-to-enable-further-customizati.patch +++ b/vscode-patches/0063-feat-add-a-context-key-to-enable-further-customizati.patch @@ -73,7 +73,7 @@ index 9db25c4aec8..aa1e5512eeb 100644 + when: IsSandboxWorkspaceContext.toNegated() }); diff --git a/src/vs/workbench/browser/contextkeys.ts b/src/vs/workbench/browser/contextkeys.ts -index 678a225f1df..ac1f028bc30 100644 +index 02ef9f87808..b81d77931d6 100644 --- a/src/vs/workbench/browser/contextkeys.ts +++ b/src/vs/workbench/browser/contextkeys.ts @@ -3,25 +3,25 @@ @@ -115,7 +115,7 @@ index 678a225f1df..ac1f028bc30 100644 export class WorkbenchContextKeysHandler extends Disposable { -@@ -201,6 +201,9 @@ export class WorkbenchContextKeysHandler extends Disposable { +@@ -202,6 +202,9 @@ export class WorkbenchContextKeysHandler extends Disposable { this.auxiliaryBarMaximizedContext = AuxiliaryBarMaximizedContext.bindTo(this.contextKeyService); this.auxiliaryBarMaximizedContext.set(this.layoutService.isAuxiliaryBarMaximized()); diff --git a/vscode-patches/0064-fix-break-cyclic-dependency.patch b/vscode-patches/0064-fix-break-cyclic-dependency.patch index 85848ee0..4fc07e00 100644 --- a/vscode-patches/0064-fix-break-cyclic-dependency.patch +++ b/vscode-patches/0064-fix-break-cyclic-dependency.patch @@ -44,10 +44,10 @@ index 6ce67486a58..17e137b5eb0 100644 +export const SkipToolPostConfirmationActionId = 'workbench.action.chat.skipToolPostExecution'; diff --git a/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts b/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts -index f758e3b155a..405c4eb97c2 100644 +index 7c07e24253f..1d4ab35b143 100644 --- a/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts +++ b/src/vs/workbench/contrib/chat/browser/actions/chatContext.ts -@@ -25,7 +25,7 @@ import { IChatRequestToolEntry, IChatRequestToolSetEntry, IChatRequestVariableEn +@@ -28,7 +28,7 @@ import { IChatRequestToolEntry, IChatRequestToolSetEntry, IChatRequestVariableEn import { isToolSet, ToolDataSource } from '../../common/tools/languageModelToolsService.js'; import { ChatAgentLocation } from '../../common/constants.js'; import { IChatWidget } from '../chat.js'; @@ -56,10 +56,10 @@ index f758e3b155a..405c4eb97c2 100644 import { convertBufferToScreenshotVariable } from '../attachments/chatScreenshotContext.js'; import { ChatInstructionsPickerPick } from '../promptSyntax/attachInstructionsAction.js'; import { IChatSessionsService, isAgentHostTarget } from '../../common/chatSessionsService.js'; -@@ -34,6 +34,7 @@ import { ITerminalService } from '../../../terminal/browser/terminal.js'; - import { URI } from '../../../../../base/common/uri.js'; +@@ -38,6 +38,7 @@ import { URI } from '../../../../../base/common/uri.js'; import { ITerminalCommand, TerminalCapability } from '../../../../../platform/terminal/common/capabilities/capabilities.js'; import { getChatSessionType } from '../../common/model/chatUri.js'; + import { buildHostLocalEventsPath } from '../copilotCliEventsUri.js'; +import { imageToHash } from '../chatImageUtils.js'; /** @@ -104,10 +104,10 @@ index 558fc635277..391b0e86712 100644 export const IChatAttachmentResolveService = createDecorator('IChatAttachmentResolveService'); diff --git a/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts b/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts -index ffb77ed8c91..44a27528ecd 100644 +index 581826188b2..bf3c2bffee5 100644 --- a/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts +++ b/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts -@@ -273,3 +273,10 @@ CommandsRegistry.registerCommand('_chat.resizeImage', async (_accessor, data: Ui +@@ -270,3 +270,10 @@ CommandsRegistry.registerCommand('_chat.resizeImage', async (_accessor, data: Ui } return resizeImage(data, mimeType); }); @@ -132,10 +132,10 @@ index c718be52179..267e2a5b53e 100644 import { ChatConfirmationWidget, IChatConfirmationButton } from '../chatConfirmationWidget.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts -index 518aa7c2bd3..8d5d657f7c9 100644 +index bdb735dea5d..c9fed2a616d 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolConfirmationSubPart.ts -@@ -32,7 +32,7 @@ import { ChatContextKeys } from '../../../../common/actions/chatContextKeys.js'; +@@ -31,7 +31,7 @@ import { ChatContextKeys } from '../../../../common/actions/chatContextKeys.js'; import { migrateLegacyTerminalToolSpecificData } from '../../../../common/chat.js'; import { IChatToolInvocation, ToolConfirmKind, type IChatTerminalToolInvocationData, type ILegacyChatTerminalToolInvocationData } from '../../../../common/chatService/chatService.js'; import { ILanguageModelToolsService } from '../../../../common/tools/languageModelToolsService.js'; @@ -145,7 +145,7 @@ index 518aa7c2bd3..8d5d657f7c9 100644 import { IChatToolRiskAssessmentService } from '../../../tools/chatToolRiskAssessmentService.js'; import { ChatCustomConfirmationWidget, IChatConfirmationButton } from '../chatConfirmationWidget.js'; diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts -index 2ada03f7016..4e896893aa3 100644 +index 1cf66bb3a57..81df053130f 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts @@ -23,7 +23,7 @@ import { IMarkerData, IMarkerService, MarkerSeverity } from '../../../../../../. @@ -155,10 +155,10 @@ index 2ada03f7016..4e896893aa3 100644 -import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../../actions/chatToolActions.js'; +import { AcceptToolConfirmationActionId, SkipToolConfirmationActionId } from '../../../actions/chatConstants.js'; import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; + import { IChatToolRiskAssessmentService } from '../../../tools/chatToolRiskAssessmentService.js'; import { renderFileWidgets } from '../chatInlineAnchorWidget.js'; - import { CodeBlockPart, ICodeBlockRenderOptions } from '../codeBlockPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts -index da2b868f353..2aa997b77a8 100644 +index 654129d0212..872330f3454 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolPostExecuteConfirmationPart.ts @@ -14,7 +14,7 @@ import { ChatResponseResource } from '../../../../common/model/chatModel.js'; @@ -168,10 +168,10 @@ index da2b868f353..2aa997b77a8 100644 -import { AcceptToolPostConfirmationActionId, SkipToolPostConfirmationActionId } from '../../../actions/chatToolActions.js'; +import { AcceptToolPostConfirmationActionId, SkipToolPostConfirmationActionId } from '../../../actions/chatConstants.js'; import { IChatCodeBlockInfo, IChatWidgetService } from '../../../chat.js'; + import { IChatToolRiskAssessmentService } from '../../../tools/chatToolRiskAssessmentService.js'; import { IChatContentPartRenderContext } from '../chatContentParts.js'; - import { ChatCollapsibleIOPart } from '../chatToolInputOutputContentPart.js'; diff --git a/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts -index 450e51de4c2..52ec74a2912 100644 +index 5a470b875b3..f41f0a71553 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatPasteProviders.ts @@ -34,7 +34,7 @@ import { IDynamicVariable } from '../../../../common/attachments/chatVariables.j diff --git a/vscode-patches/0065-feat-allow-to-override-product-icon.patch b/vscode-patches/0065-feat-allow-to-override-product-icon.patch index aaff17fb..be40ced0 100644 --- a/vscode-patches/0065-feat-allow-to-override-product-icon.patch +++ b/vscode-patches/0065-feat-allow-to-override-product-icon.patch @@ -12,10 +12,10 @@ Subject: [PATCH] feat: allow to override product icon 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/build/lib/stylelint/vscode-known-variables.json b/build/lib/stylelint/vscode-known-variables.json -index 0fa08c6bb41..65c9b53be0d 100644 +index 930248b9da5..ce5f2081f73 100644 --- a/build/lib/stylelint/vscode-known-variables.json +++ b/build/lib/stylelint/vscode-known-variables.json -@@ -1078,7 +1078,8 @@ +@@ -1089,7 +1089,8 @@ "--vscode-inline-chat-affordance-height", "--collapse-from-width", "--slide-from-x", @@ -39,7 +39,7 @@ index a0de81f24eb..c71af404312 100644 padding: 0; margin: 0 6px 0 10px; diff --git a/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css b/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css -index be622a4452e..db25f171868 100644 +index 5fc3835131b..155b7f1923d 100644 --- a/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css +++ b/src/vs/workbench/browser/parts/titlebar/media/titlebarpart.css @@ -290,7 +290,7 @@ diff --git a/vscode-patches/0066-feat-prevent-IDE-from-entering-fullscreen-if-not-occ.patch b/vscode-patches/0066-feat-prevent-IDE-from-entering-fullscreen-if-not-occ.patch index 5b1211bb..72c67c5d 100644 --- a/vscode-patches/0066-feat-prevent-IDE-from-entering-fullscreen-if-not-occ.patch +++ b/vscode-patches/0066-feat-prevent-IDE-from-entering-fullscreen-if-not-occ.patch @@ -80,7 +80,7 @@ index 7c7bce3ae00..5bb747208c4 100644 // only guess that we are in fullscreen. It is also possible that // the user has turned off taskbars in the OS and the browser is diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index 6a51d30679d..f185f03f9ef 100644 +index 4406f7e15ee..01c0b2f2c52 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts @@ -3,10 +3,15 @@ @@ -130,7 +130,7 @@ index 6a51d30679d..f185f03f9ef 100644 //#region Layout Implementation -@@ -1706,7 +1706,8 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi +@@ -1725,7 +1725,8 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi layout(): void { if (!this.disposed) { @@ -141,10 +141,10 @@ index 6a51d30679d..f185f03f9ef 100644 this.parent, // in that case the workbench will span the entire site this.contextService.getWorkbenchState() === WorkbenchState.EMPTY ? DEFAULT_EMPTY_WINDOW_DIMENSIONS : DEFAULT_WORKSPACE_WINDOW_DIMENSIONS // running with fallback to ensure no error is thrown (https://github.com/microsoft/vscode/issues/240242) diff --git a/src/vs/workbench/browser/web.main.ts b/src/vs/workbench/browser/web.main.ts -index d2beac1382d..528ca87b263 100644 +index ee42b29aad3..32d9fadacf6 100644 --- a/src/vs/workbench/browser/web.main.ts +++ b/src/vs/workbench/browser/web.main.ts -@@ -123,7 +123,7 @@ export class BrowserMain extends Disposable { +@@ -122,7 +122,7 @@ export class BrowserMain extends Disposable { private init(): void { // Browser config diff --git a/vscode-patches/0067-feat-support-loading-VSCode-in-an-iframe.patch b/vscode-patches/0067-feat-support-loading-VSCode-in-an-iframe.patch index ddebdbc7..c3465e3c 100644 --- a/vscode-patches/0067-feat-support-loading-VSCode-in-an-iframe.patch +++ b/vscode-patches/0067-feat-support-loading-VSCode-in-an-iframe.patch @@ -613,7 +613,7 @@ index 358aa682cda..b41a1f1346b 100644 const supportedImageTypes = ['image/png', 'image/jpeg', 'image/gif', 'image/tiff', 'image/bmp']; diff --git a/src/vs/platform/hover/browser/hoverService.ts b/src/vs/platform/hover/browser/hoverService.ts -index 8e8fd77c08b..24daa472300 100644 +index eb058d65763..a3872deae44 100644 --- a/src/vs/platform/hover/browser/hoverService.ts +++ b/src/vs/platform/hover/browser/hoverService.ts @@ -364,7 +364,7 @@ export class HoverService extends Disposable implements IHoverService { @@ -658,7 +658,7 @@ index d558e4eef58..ac207215fa7 100644 sendErrorNow(new RemoteAuthorityResolverError('Browser is offline', RemoteAuthorityResolverErrorCode.TemporarilyNotAvailable, e)); } else { diff --git a/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.ts b/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.ts -index 82b0d416cfa..7034bd5218e 100644 +index 8d497ae4ec1..95d1c54c126 100644 --- a/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.ts +++ b/src/vs/sessions/contrib/aquarium/browser/aquariumOverlay.ts @@ -3,7 +3,7 @@ @@ -670,7 +670,7 @@ index 82b0d416cfa..7034bd5218e 100644 import { createInstantHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js'; import { Codicon } from '../../../../base/common/codicons.js'; import { Disposable, DisposableStore, IDisposable, MutableDisposable, toDisposable } from '../../../../base/common/lifecycle.js'; -@@ -408,7 +408,7 @@ function createActiveAquarium(mainContainer: HTMLElement, layoutService: IWorkbe +@@ -486,7 +486,7 @@ function createActiveAquarium(mainContainer: HTMLElement, layoutService: IWorkbe const fish: Fish[] = []; updateBounds(); @@ -679,7 +679,7 @@ index 82b0d416cfa..7034bd5218e 100644 updateBounds(); for (const f of fish) { f.positionX = Math.min(f.positionX, Math.max(0, bounds.width - f.size)); -@@ -416,7 +416,7 @@ function createActiveAquarium(mainContainer: HTMLElement, layoutService: IWorkbe +@@ -494,7 +494,7 @@ function createActiveAquarium(mainContainer: HTMLElement, layoutService: IWorkbe } }); resizeObserver.observe(water); @@ -769,7 +769,7 @@ index 09cddff2956..e329232bcb6 100644 if (timeoutDisposables) { dispose(timeoutDisposables); diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.ts -index dc0d1d49f10..4e09eb21eb6 100644 +index bb72e0eb142..4c8df9da656 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatThinkingContentPart.ts @@ -42,6 +42,7 @@ import { IChatCollapsibleIODataPart } from './chatToolInputOutputContentPart.js' @@ -780,7 +780,7 @@ index dc0d1d49f10..4e09eb21eb6 100644 // Context key id mirrored from `vs/sessions/common/contextkeys` (`IsPhoneLayoutContext`). -@@ -572,7 +573,7 @@ export class ChatThinkingContentPart extends ChatCollapsibleContentPart implemen +@@ -601,7 +602,7 @@ export class ChatThinkingContentPart extends ChatCollapsibleContentPart implemen this._register(this.scrollableElement.onScroll(e => this.handleScroll(e.scrollTop))); let pendingMutationRefresh: IDisposable | undefined; @@ -1015,7 +1015,7 @@ index 09b7eec669f..28ca04f71f8 100644 video: true }); diff --git a/src/vs/workbench/services/keybinding/browser/keybindingService.ts b/src/vs/workbench/services/keybinding/browser/keybindingService.ts -index 481d713f969..9d9997d50de 100644 +index 52af5015e35..69ad80c6003 100644 --- a/src/vs/workbench/services/keybinding/browser/keybindingService.ts +++ b/src/vs/workbench/services/keybinding/browser/keybindingService.ts @@ -246,7 +246,7 @@ export class WorkbenchKeybindingService extends AbstractKeybindingService { diff --git a/vscode-patches/0069-feat-centralize-element-creation-to-be-able-to-creat.patch b/vscode-patches/0069-feat-centralize-element-creation-to-be-able-to-creat.patch index 0ba060f9..b355cff6 100644 --- a/vscode-patches/0069-feat-centralize-element-creation-to-be-able-to-creat.patch +++ b/vscode-patches/0069-feat-centralize-element-creation-to-be-able-to-creat.patch @@ -99,7 +99,7 @@ Subject: [PATCH] feat: centralize element creation, to be able to create them .../iPadShowKeyboard/iPadShowKeyboard.ts | 2 +- .../browser/inspectTokens/inspectTokens.ts | 4 +- .../quickInput/standaloneQuickInputService.ts | 3 +- - .../actionWidget/browser/actionList.ts | 30 ++++++------ + .../actionWidget/browser/actionList.ts | 36 +++++++------- .../actionWidget/browser/actionWidget.ts | 6 +-- .../platform/domWidget/browser/domWidget.ts | 5 +- .../imageResize/browser/imageResizeService.ts | 3 +- @@ -118,6 +118,10 @@ Subject: [PATCH] feat: centralize element creation, to be able to create them .../workbench/browser/parts/views/treeView.ts | 4 +- src/vs/workbench/browser/workbench.ts | 4 +- .../accessibility/browser/accessibleView.ts | 10 ++-- + .../browser/components/feedbackDialog.ts | 6 +-- + .../browser/components/headerComponent.ts | 2 +- + .../browser/components/onboardingComponent.ts | 12 ++--- + .../features/browserEditorChatFeatures.ts | 4 +- .../bulkEdit/browser/preview/bulkEditPane.ts | 9 ++-- .../bulkEdit/browser/preview/bulkEditTree.ts | 10 ++-- .../browser/callHierarchyPeek.ts | 10 ++-- @@ -125,6 +129,7 @@ Subject: [PATCH] feat: centralize element creation, to be able to create them .../aiCustomizationListWidget.ts | 2 +- .../browser/aiCustomization/mcpListWidget.ts | 4 +- .../aiCustomization/pluginListWidget.ts | 4 +- + .../aiCustomization/toolsListWidget.ts | 2 +- .../attachments/chatAttachmentWidgets.ts | 2 +- .../chatDebug/chatDebugCacheExplorerView.ts | 4 +- .../browser/chatDebug/chatDebugFlowLayout.ts | 13 ++--- @@ -132,13 +137,14 @@ Subject: [PATCH] feat: centralize element creation, to be able to create them .../chatEditing/chatEditingEditorOverlay.ts | 10 ++-- .../chatEditingExplanationWidget.ts | 4 +- .../notebook/overlayToolbarDecorator.ts | 5 +- - .../contrib/chat/browser/chatImageUtils.ts | 3 +- + .../contrib/chat/browser/chatImageUtils.ts | 7 +-- .../planReviewFeedbackEditorContribution.ts | 14 +++--- .../chatAgentCommandContentPart.ts | 5 +- + .../chatChangesSummaryPart.ts | 6 +-- .../chatConfirmationWidget.ts | 2 +- .../chatMarkdownTableScrolling.ts | 2 +- .../chatToolInputOutputContentPart.ts | 2 +- - .../chatTerminalToolProgressPart.ts | 14 +++--- + .../chatTerminalToolProgressPart.ts | 10 ++-- .../chatToolConfirmationSubPart.ts | 2 +- .../chatToolInvocationPart.ts | 4 +- .../chatToolProgressPart.ts | 4 +- @@ -216,7 +222,7 @@ Subject: [PATCH] feat: centralize element creation, to be able to create them .../browser/webWorkerExtensionHost.ts | 2 +- .../host/browser/browserHostService.ts | 6 +-- .../test/browser/workbenchTestServices.ts | 4 +- - 211 files changed, 686 insertions(+), 608 deletions(-) + 217 files changed, 705 insertions(+), 627 deletions(-) diff --git a/src/vs/base/browser/dom.ts b/src/vs/base/browser/dom.ts index 5ec342e8b9e..337e6e3524c 100644 @@ -477,10 +483,10 @@ index 14f7493fd46..696b920a6d3 100644 child = element; } diff --git a/src/vs/base/browser/markdownRenderer.ts b/src/vs/base/browser/markdownRenderer.ts -index b4dd91602b8..1e54fc2ee74 100644 +index 03793402374..26e92501c0e 100644 --- a/src/vs/base/browser/markdownRenderer.ts +++ b/src/vs/base/browser/markdownRenderer.ts -@@ -235,7 +235,7 @@ export function renderMarkdown(markdown: IMarkdownString, options: MarkdownRende +@@ -246,7 +246,7 @@ export function renderMarkdown(markdown: IMarkdownString, options: MarkdownRende renderedMarkdown = elements.map(e => typeof e === 'string' ? e : e.outerHTML).join(''); } @@ -649,7 +655,7 @@ index f4f9ef9688a..cb5649622b9 100644 element.setAttribute('aria-live', 'polite'); element.setAttribute('aria-atomic', 'true'); diff --git a/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.ts b/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.ts -index 6916063459f..c6d2d4db1fe 100644 +index 9ae1e420207..570849d472f 100644 --- a/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.ts +++ b/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.ts @@ -69,7 +69,7 @@ export class BreadcrumbsWidget { @@ -661,7 +667,7 @@ index 6916063459f..c6d2d4db1fe 100644 this._domNode.className = 'monaco-breadcrumbs'; this._domNode.tabIndex = 0; this._domNode.setAttribute('role', 'list'); -@@ -320,7 +320,7 @@ export class BreadcrumbsWidget { +@@ -322,7 +322,7 @@ export class BreadcrumbsWidget { // case b: more items -> render them for (; start < this._items.length; start++) { const item = this._items[start]; @@ -847,7 +853,7 @@ index cafeb69f17a..67dd648738c 100644 this.scrollbar = this._register(new DomScrollableElement(this.contentsDomNode, { diff --git a/src/vs/base/browser/ui/list/listView.ts b/src/vs/base/browser/ui/list/listView.ts -index 5c62e99faf8..c5e4d782b2e 100644 +index 831e610665e..c44dffd5605 100644 --- a/src/vs/base/browser/ui/list/listView.ts +++ b/src/vs/base/browser/ui/list/listView.ts @@ -4,7 +4,7 @@ @@ -2553,7 +2559,7 @@ index 19bb2acc203..6e372e0e3d7 100644 } const monitor = this._register(new GlobalPointerMoveMonitor()); diff --git a/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.ts b/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.ts -index f15557441bd..42924dc54c7 100644 +index 6d2104a88df..f39a978c7ee 100644 --- a/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.ts +++ b/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerWidget.ts @@ -44,7 +44,7 @@ export class StandaloneColorPickerWidget extends Disposable implements IContentW @@ -2564,8 +2570,8 @@ index f15557441bd..42924dc54c7 100644 + private _body: HTMLElement = dom.createElement('div'); private _colorHover: StandaloneColorPickerHover | null = null; private _selectionSetInEditor: boolean = false; - -@@ -170,7 +170,7 @@ export class StandaloneColorPickerWidget extends Disposable implements IContentW + private _selections: IRange[]; +@@ -173,7 +173,7 @@ export class StandaloneColorPickerWidget extends Disposable implements IContentW } private _render(colorHover: StandaloneColorPickerHover, foundInEditor: boolean) { @@ -2767,7 +2773,7 @@ index c6cda849675..2f6e4f1051b 100644 this.file = this._register(new IconLabel(parent, { supportHighlights: true })); diff --git a/src/vs/editor/contrib/hover/browser/contentHoverRendered.ts b/src/vs/editor/contrib/hover/browser/contentHoverRendered.ts -index 969b7984846..ef9261db1c8 100644 +index 85f4edb6ad3..4a6bfc74527 100644 --- a/src/vs/editor/contrib/hover/browser/contentHoverRendered.ts +++ b/src/vs/editor/contrib/hover/browser/contentHoverRendered.ts @@ -245,7 +245,7 @@ class RenderedContentHoverParts extends Disposable { @@ -2793,10 +2799,10 @@ index 1c741fc3b8b..0126576a44d 100644 for (const msg of messages) { const markdownHoverElement = $('div.hover-row.markdown-hover'); diff --git a/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.ts b/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.ts -index 7693d88fcfd..053e4fc5b6e 100644 +index ac449b8c1da..e0ceae70b7f 100644 --- a/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.ts +++ b/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.ts -@@ -112,7 +112,7 @@ export class InlineCompletionsHoverParticipant implements IEditorHoverParticipan +@@ -113,7 +113,7 @@ export class InlineCompletionsHoverParticipant implements IEditorHoverParticipan } const model = part.controller.model.get()!; @@ -3112,7 +3118,7 @@ index b7e32811605..40a748ee594 100644 this._domNode.appendChild(this._label); diff --git a/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.ts b/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.ts -index 2a7c1cf5b1b..448790953dc 100644 +index d507ef01fc7..b2b9c157342 100644 --- a/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.ts +++ b/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.ts @@ -52,10 +52,10 @@ const STICKY_IS_FOLDING_ICON_ATTR = 'data-sticky-is-folding-icon'; @@ -3130,7 +3136,7 @@ index 2a7c1cf5b1b..448790953dc 100644 private readonly _editor: ICodeEditor; -@@ -291,7 +291,6 @@ export class StickyScrollWidget extends Disposable implements IOverlayWidget { +@@ -295,7 +295,6 @@ export class StickyScrollWidget extends Disposable implements IOverlayWidget { } private _renderChildNode(viewModel: IViewModel, index: number, line: number, top: number, isLastLine: boolean, foldingModel: FoldingModel | undefined, layoutInfo: EditorLayoutInfo): RenderedStickyLine { @@ -3138,7 +3144,7 @@ index 2a7c1cf5b1b..448790953dc 100644 const renderedLine = new RenderedStickyLine( this._editor, viewModel, -@@ -474,7 +473,7 @@ class RenderedStickyLine { +@@ -478,7 +477,7 @@ class RenderedStickyLine { newLine = sb.build(); } @@ -3147,7 +3153,7 @@ index 2a7c1cf5b1b..448790953dc 100644 lineHTMLNode.setAttribute(STICKY_INDEX_ATTR, String(index)); lineHTMLNode.setAttribute(STICKY_IS_LINE_ATTR, ''); lineHTMLNode.setAttribute('role', 'listitem'); -@@ -484,7 +483,7 @@ class RenderedStickyLine { +@@ -488,7 +487,7 @@ class RenderedStickyLine { lineHTMLNode.style.lineHeight = `${lineHeight}px`; lineHTMLNode.innerHTML = newLine as string; @@ -3156,7 +3162,7 @@ index 2a7c1cf5b1b..448790953dc 100644 lineNumberHTMLNode.setAttribute(STICKY_INDEX_ATTR, String(index)); lineNumberHTMLNode.setAttribute(STICKY_IS_LINE_NUMBER_ATTR, ''); lineNumberHTMLNode.className = 'sticky-line-number'; -@@ -492,7 +491,7 @@ class RenderedStickyLine { +@@ -496,7 +495,7 @@ class RenderedStickyLine { const lineNumbersWidth = layoutInfo.contentLeft; lineNumberHTMLNode.style.width = `${lineNumbersWidth}px`; @@ -3165,7 +3171,7 @@ index 2a7c1cf5b1b..448790953dc 100644 if (lineNumberOption.renderType === RenderLineNumbersType.On || lineNumberOption.renderType === RenderLineNumbersType.Interval && lineNumber % 10 === 0) { innerLineNumberHTML.innerText = lineNumber.toString(); } else if (lineNumberOption.renderType === RenderLineNumbersType.Relative) { -@@ -554,7 +553,7 @@ class StickyFoldingIcon { +@@ -558,7 +557,7 @@ class StickyFoldingIcon { public foldingEndLine: number, public dimension: number ) { @@ -3262,10 +3268,10 @@ index 4aa28793eff..9f11f84e309 100644 this.codeEditor.addOverlayWidget(this); } diff --git a/src/vs/platform/actionWidget/browser/actionList.ts b/src/vs/platform/actionWidget/browser/actionList.ts -index d8909be2aec..ed68e357a3e 100644 +index 44b66de4ec7..50d68f65fde 100644 --- a/src/vs/platform/actionWidget/browser/actionList.ts +++ b/src/vs/platform/actionWidget/browser/actionList.ts -@@ -154,7 +154,7 @@ class HeaderRenderer implements IListRenderer, IHeaderTemp +@@ -177,7 +177,7 @@ class HeaderRenderer implements IListRenderer, IHeaderTemp renderTemplate(container: HTMLElement): IHeaderTemplateData { container.classList.add('group-header'); @@ -3274,7 +3280,7 @@ index d8909be2aec..ed68e357a3e 100644 container.append(text); return { container, text }; -@@ -181,7 +181,7 @@ class SeparatorRenderer implements IListRenderer, ISeparat +@@ -204,7 +204,7 @@ class SeparatorRenderer implements IListRenderer, ISeparat renderTemplate(container: HTMLElement): ISeparatorTemplateData { container.classList.add('separator'); @@ -3283,7 +3289,7 @@ index d8909be2aec..ed68e357a3e 100644 container.append(text); return { container, text }; -@@ -215,37 +215,37 @@ class ActionItemRenderer implements IListRenderer, IAction +@@ -238,41 +238,41 @@ class ActionItemRenderer implements IListRenderer, IAction renderTemplate(container: HTMLElement): IActionMenuTemplateData { container.classList.add(this.templateId); @@ -3329,7 +3335,21 @@ index d8909be2aec..ed68e357a3e 100644 submenuIndicator.className = 'action-list-submenu-indicator'; container.append(submenuIndicator); -@@ -586,7 +586,7 @@ export class ActionListWidget extends Disposable { +- const inlineToggleContainer = document.createElement('div'); ++ const inlineToggleContainer = dom.createElement('div'); + inlineToggleContainer.className = 'action-list-item-inline-toggle'; + container.append(inlineToggleContainer); + +@@ -382,7 +382,7 @@ class ActionItemRenderer implements IListRenderer, IAction + dom.clearNode(data.inlineToggleContainer); + if (element.inlineToggle) { + const inlineToggle = element.inlineToggle; +- const toggleLabel = document.createElement('span'); ++ const toggleLabel = dom.createElement('span'); + toggleLabel.className = 'action-list-item-inline-toggle-label'; + toggleLabel.textContent = stripNewlines(inlineToggle.label); + data.inlineToggleContainer.append(toggleLabel); +@@ -680,7 +680,7 @@ export class ActionListWidget extends Disposable { @IInstantiationService private readonly _instantiationService: IInstantiationService, ) { super(); @@ -3338,7 +3358,7 @@ index d8909be2aec..ed68e357a3e 100644 this.domNode.classList.add('actionList'); if (this._options?.inlineDescription) { this.domNode.classList.add('inline-description'); -@@ -594,7 +594,7 @@ export class ActionListWidget extends Disposable { +@@ -694,7 +694,7 @@ export class ActionListWidget extends Disposable { this._actionLineHeight = 24; // Create submenu container appended to domNode @@ -3347,7 +3367,7 @@ index d8909be2aec..ed68e357a3e 100644 this._submenuContainer.className = 'action-list-submenu-panel action-widget'; this._submenuContainer.style.display = 'none'; // Make focusable so clicking the hover panel keeps focus inside the -@@ -693,12 +693,12 @@ export class ActionListWidget extends Disposable { +@@ -805,12 +805,12 @@ export class ActionListWidget extends Disposable { // Create filter input and/or secondary heading if (this._options?.showFilter || this._options?.secondaryHeading) { @@ -3362,7 +3382,7 @@ index d8909be2aec..ed68e357a3e 100644 this._filterInput.type = 'text'; this._filterInput.className = 'action-list-filter-input'; this._filterInput.placeholder = this._options?.filterPlaceholder ?? localize('actionList.filter.placeholder', "Search..."); -@@ -726,7 +726,7 @@ export class ActionListWidget extends Disposable { +@@ -838,14 +838,14 @@ export class ActionListWidget extends Disposable { // Create footer text if (this._options?.footerText) { @@ -3371,11 +3391,19 @@ index d8909be2aec..ed68e357a3e 100644 this._footerContainer.className = 'action-list-footer'; this._footerContainer.textContent = this._options.footerText; } + + // Create header banner + if (this._options?.headerText) { +- this._headerContainer = document.createElement('div'); ++ this._headerContainer = dom.createElement('div'); + this._headerContainer.className = 'action-list-header'; + if (this._options.headerIcon) { + const icon = dom.append(this._headerContainer, dom.$('span.action-list-header-icon')); diff --git a/src/vs/platform/actionWidget/browser/actionWidget.ts b/src/vs/platform/actionWidget/browser/actionWidget.ts -index e74d964cb41..8132e6fca38 100644 +index 60eb545232f..68a49703014 100644 --- a/src/vs/platform/actionWidget/browser/actionWidget.ts +++ b/src/vs/platform/actionWidget/browser/actionWidget.ts -@@ -117,7 +117,7 @@ export class ActionWidgetService extends Disposable implements IActionWidgetServ +@@ -138,7 +138,7 @@ export class ActionWidgetService extends Disposable implements IActionWidgetServ } private _renderWidget(element: HTMLElement, list: ActionList, actionBarActions: readonly IAction[]): IDisposable { @@ -3384,8 +3412,8 @@ index e74d964cb41..8132e6fca38 100644 widget.classList.add('action-widget'); element.appendChild(widget); -@@ -136,13 +136,13 @@ export class ActionWidgetService extends Disposable implements IActionWidgetServ - const renderDisposables = new DisposableStore(); +@@ -167,13 +167,13 @@ export class ActionWidgetService extends Disposable implements IActionWidgetServ + } // Invisible div to block mouse interaction in the rest of the UI - const menuBlock = document.createElement('div'); @@ -3473,19 +3501,19 @@ index 1217633b485..030307e508f 100644 } diff --git a/src/vs/sessions/browser/workbench.ts b/src/vs/sessions/browser/workbench.ts -index c33ec29f7ab..da4312ad06b 100644 +index b76ef4b0af7..b9de359f42f 100644 --- a/src/vs/sessions/browser/workbench.ts +++ b/src/vs/sessions/browser/workbench.ts -@@ -7,7 +7,7 @@ import '../../workbench/browser/style.js'; - import './media/style.css'; +@@ -8,7 +8,7 @@ import './media/style.css'; import { Disposable, DisposableStore, IDisposable, toDisposable } from '../../base/common/lifecycle.js'; + import { DockedAuxiliaryBarController } from './dockedAuxiliaryBarController.js'; import { Emitter, Event, setGlobalLeakWarningThreshold } from '../../base/common/event.js'; --import { getActiveDocument, getActiveElement, getClientArea, getWindowId, getWindows, IDimension, isAncestorUsingFlowTo, isHTMLElement, size, Dimension, runWhenWindowIdle } from '../../base/browser/dom.js'; -+import { getActiveDocument, getActiveElement, getClientArea, getWindowId, getWindows, IDimension, isAncestorUsingFlowTo, isHTMLElement, size, Dimension, runWhenWindowIdle, createElement } from '../../base/browser/dom.js'; +-import { addDisposableListener, getActiveDocument, getActiveElement, getClientArea, getWindowId, getWindows, IDimension, isAncestorUsingFlowTo, isHTMLElement, size, Dimension, runWhenWindowIdle } from '../../base/browser/dom.js'; ++import { addDisposableListener, getActiveDocument, getActiveElement, getClientArea, getWindowId, getWindows, IDimension, isAncestorUsingFlowTo, isHTMLElement, size, Dimension, runWhenWindowIdle, createElement } from '../../base/browser/dom.js'; import { DeferredPromise, RunOnceScheduler } from '../../base/common/async.js'; import { isFullscreen, onDidChangeFullscreen, isChrome, isFirefox, isSafari } from '../../base/browser/browser.js'; import { mark } from '../../base/common/performance.js'; -@@ -200,7 +200,7 @@ export class Workbench extends Disposable implements IAgentWorkbenchLayoutServic +@@ -234,7 +234,7 @@ export class Workbench extends Disposable implements IAgentWorkbenchLayoutServic //#region Properties @@ -3494,7 +3522,7 @@ index c33ec29f7ab..da4312ad06b 100644 get activeContainer(): HTMLElement { return this.getContainerFromDocument(getActiveDocument()); -@@ -908,7 +908,7 @@ export class Workbench extends Disposable implements IAgentWorkbenchLayoutServic +@@ -983,7 +983,7 @@ export class Workbench extends Disposable implements IAgentWorkbenchLayoutServic } private createPartContainer(id: string, role: string, classes: string[]): HTMLElement { @@ -3503,7 +3531,7 @@ index c33ec29f7ab..da4312ad06b 100644 part.classList.add('part', ...classes); part.id = id; part.setAttribute('role', role); -@@ -916,7 +916,7 @@ export class Workbench extends Disposable implements IAgentWorkbenchLayoutServic +@@ -991,7 +991,7 @@ export class Workbench extends Disposable implements IAgentWorkbenchLayoutServic } private createEditorPart(): void { @@ -3513,19 +3541,19 @@ index c33ec29f7ab..da4312ad06b 100644 editorPartContainer.id = Parts.EDITOR_PART; editorPartContainer.setAttribute('role', 'main'); diff --git a/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts b/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts -index b3a23939373..084d42fd59b 100644 +index aac39b1fe29..35b888118ad 100644 --- a/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts +++ b/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorInputContribution.ts -@@ -11,7 +11,7 @@ import { EditorContributionInstantiation, registerEditorContribution } from '../ - import { ICodeEditorService } from '../../../../editor/browser/services/codeEditorService.js'; - import { EditorOption } from '../../../../editor/common/config/editorOptions.js'; +@@ -13,7 +13,7 @@ import { EditorOption } from '../../../../editor/common/config/editorOptions.js' + import { Position } from '../../../../editor/common/core/position.js'; + import { Range } from '../../../../editor/common/core/range.js'; import { Selection, SelectionDirection } from '../../../../editor/common/core/selection.js'; --import { addStandardDisposableListener, getActiveElement, getWindow, isActiveElement, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; -+import { addStandardDisposableListener, createElement, getActiveElement, getWindow, isActiveElement, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; +-import { addStandardDisposableListener, getActiveElement, getWindow, isActiveElement, isHTMLElement, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; ++import { addStandardDisposableListener, createElement, getActiveElement, getWindow, isActiveElement, isHTMLElement, ModifierKeyEmitter } from '../../../../base/browser/dom.js'; + import { URI } from '../../../../base/common/uri.js'; + import { isEqual } from '../../../../base/common/resources.js'; import { KeyCode } from '../../../../base/common/keyCodes.js'; - import { IAgentFeedbackService } from './agentFeedbackService.js'; - import { createAgentFeedbackContext } from './agentFeedbackEditorUtils.js'; -@@ -50,22 +50,22 @@ class AgentFeedbackInputWidget extends Disposable implements IOverlayWidget { +@@ -72,22 +72,22 @@ export class AgentFeedbackInputWidget extends Disposable implements IOverlayWidg private readonly _editor: ICodeEditor, ) { super(); @@ -3553,18 +3581,18 @@ index b3a23939373..084d42fd59b 100644 this._domNode.appendChild(actionsContainer); diff --git a/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorOverlay.ts b/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorOverlay.ts -index 9a2f1cc2201..536754534de 100644 +index 4596ec52f1b..69d32690904 100644 --- a/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorOverlay.ts +++ b/src/vs/sessions/contrib/agentFeedback/browser/agentFeedbackEditorOverlay.ts @@ -25,6 +25,7 @@ import { getActiveResourceCandidates } from './agentFeedbackEditorUtils.js'; import { Menus } from '../../../browser/menus.js'; import { ICodeReviewService } from '../../codeReview/browser/codeReviewService.js'; - import { getSessionEditorComments, hasAgentFeedbackComments } from './sessionEditorComments.js'; + import { getAcceptedAgentFeedbackCommentCount, getSessionEditorComments } from './sessionEditorComments.js'; +import { createElement } from '../../../../base/browser/dom.js'; - class AgentFeedbackActionViewItem extends ActionViewItem { + class SubmitFeedbackActionRunner extends ActionRunner { -@@ -67,10 +68,10 @@ export class AgentFeedbackOverlayWidget extends Disposable { +@@ -114,10 +115,10 @@ export class AgentFeedbackOverlayWidget extends Disposable { ) { super(); @@ -3577,7 +3605,7 @@ index 9a2f1cc2201..536754534de 100644 this._toolbarNode.classList.add('agent-feedback-editor-overlay-toolbar'); } -@@ -136,7 +137,7 @@ export class AgentFeedbackOverlayWidget extends Disposable { +@@ -185,7 +186,7 @@ export class AgentFeedbackOverlayWidget extends Disposable { class AgentFeedbackOverlayController { private readonly _store = new DisposableStore(); @@ -3633,7 +3661,7 @@ index ee7e9d98df6..5e622722dc5 100644 this.afterLineNumber = line; this.afterColumn = 1; diff --git a/src/vs/workbench/browser/actions/developerActions.ts b/src/vs/workbench/browser/actions/developerActions.ts -index 14713c199ce..ad671c69b6c 100644 +index 06b0aebdffd..d7298ca49a5 100644 --- a/src/vs/workbench/browser/actions/developerActions.ts +++ b/src/vs/workbench/browser/actions/developerActions.ts @@ -11,7 +11,7 @@ import { DomEmitter } from '../../../base/browser/event.js'; @@ -3645,7 +3673,7 @@ index 14713c199ce..ad671c69b6c 100644 import { createCSSRule, createStyleSheet } from '../../../base/browser/domStylesheets.js'; import { IConfigurationService } from '../../../platform/configuration/common/configuration.js'; import { ContextKeyExpr, IContextKeyService, RawContextKey } from '../../../platform/contextkey/common/contextkey.js'; -@@ -67,7 +67,7 @@ class InspectContextKeysAction extends Action2 { +@@ -73,7 +73,7 @@ class InspectContextKeysAction extends Action2 { const stylesheet = createStyleSheet(undefined, undefined, disposables); createCSSRule('*', 'cursor: crosshair !important;', stylesheet); @@ -3655,7 +3683,7 @@ index 14713c199ce..ad671c69b6c 100644 activeDocument.body.appendChild(hoverFeedback); disposables.add(toDisposable(() => hoverFeedback.remove())); diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index f185f03f9ef..b28157fccdd 100644 +index 01c0b2f2c52..02fa222e7f6 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts @@ -4,7 +4,7 @@ @@ -3667,7 +3695,7 @@ index f185f03f9ef..b28157fccdd 100644 import { setContainerElement } from '../../base/browser/domStylesheets.js'; import { Direction, ISerializableView, ISerializedGrid, ISerializedLeafNode, ISerializedNode, IViewSize, Orientation, SerializableGrid, Sizing } from '../../base/browser/ui/grid/grid.js'; import { CodeWindow, mainWindow } from '../../base/browser/window.js'; -@@ -187,7 +187,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi +@@ -188,7 +188,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi //#region Properties @@ -3787,10 +3815,10 @@ index 6521536017e..849782e1b31 100644 labelElement.textContent = label; if (isCompactMode) { diff --git a/src/vs/workbench/browser/parts/views/treeView.ts b/src/vs/workbench/browser/parts/views/treeView.ts -index 487cf07936e..f52463cf8be 100644 +index bbbb590c8f1..3e20479a3b0 100644 --- a/src/vs/workbench/browser/parts/views/treeView.ts +++ b/src/vs/workbench/browser/parts/views/treeView.ts -@@ -904,7 +904,7 @@ abstract class AbstractTreeView extends Disposable implements ITreeView { +@@ -907,7 +907,7 @@ abstract class AbstractTreeView extends Disposable implements ITreeView { if (linkedText.nodes.length === 1 && typeof linkedText.nodes[0] !== 'string') { const node = linkedText.nodes[0]; @@ -3799,7 +3827,7 @@ index 487cf07936e..f52463cf8be 100644 buttonContainer.classList.add('button-container'); const button = new Button(buttonContainer, { title: node.title, secondary: hasFoundButton, supportIcons: true, ...defaultButtonStyles }); button.label = node.label; -@@ -936,7 +936,7 @@ abstract class AbstractTreeView extends Disposable implements ITreeView { +@@ -939,7 +939,7 @@ abstract class AbstractTreeView extends Disposable implements ITreeView { } } @@ -3868,6 +3896,110 @@ index 8881c154f60..603f8710540 100644 actionBar.classList.add('accessible-view-action-bar'); titleBar.appendChild(actionBar); this._container.appendChild(titleBar); +diff --git a/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.ts b/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.ts +index c1d68722f7b..beb0ebeea8e 100644 +--- a/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.ts ++++ b/src/vs/workbench/contrib/agentsVoice/browser/components/feedbackDialog.ts +@@ -53,7 +53,7 @@ export function createFeedbackDialog(): FeedbackDialogComponent { + headerText.textContent = localize('agentsVoice.sendFeedback', "Send Feedback"); + headerRow.append(headerIcon, headerText); + +- const textarea = document.createElement('textarea'); ++ const textarea = dom.createElement('textarea'); + textarea.rows = 3; + textarea.placeholder = localize('agentsVoice.feedbackPlaceholder', "What could we improve?"); + textarea.style.cssText = `width:100%;box-sizing:border-box;background:var(--vscode-input-background);color:var(--vscode-input-foreground);border:1px solid var(--vscode-input-border, var(--vscode-editorWidget-border));border-radius:4px;padding:6px 8px;font-family:inherit;font-size:${FONT_SIZE.body};resize:vertical;min-height:48px;max-height:120px;outline:none;-webkit-app-region:no-drag;`; +@@ -70,11 +70,11 @@ export function createFeedbackDialog(): FeedbackDialogComponent { + const buttonRow = dom.$('div'); + buttonRow.style.cssText = 'display:flex;gap:6px;justify-content:flex-end;'; + +- const cancelBtn = document.createElement('button'); ++ const cancelBtn = dom.createElement('button'); + cancelBtn.style.cssText = `-webkit-app-region:no-drag;background:transparent;border:1px solid var(--vscode-button-secondaryBackground, var(--vscode-editorWidget-border));color:var(--vscode-foreground);font-size:${FONT_SIZE.body};padding:3px 10px;border-radius:3px;cursor:pointer;`; + cancelBtn.textContent = localize('agentsVoice.cancel', "Cancel"); + +- const submitBtn = document.createElement('button'); ++ const submitBtn = dom.createElement('button'); + submitBtn.style.cssText = `-webkit-app-region:no-drag;background:var(--vscode-button-background);border:none;color:var(--vscode-button-foreground);font-size:${FONT_SIZE.body};padding:3px 10px;border-radius:3px;cursor:pointer;font-weight:500;`; + submitBtn.addEventListener('mouseenter', () => { if (!submitBtn.disabled) { submitBtn.style.background = 'var(--vscode-button-hoverBackground)'; } }); + submitBtn.addEventListener('mouseleave', () => { submitBtn.style.background = 'var(--vscode-button-background)'; }); +diff --git a/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.ts b/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.ts +index 926551d6569..c4a7f82ad67 100644 +--- a/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.ts ++++ b/src/vs/workbench/contrib/agentsVoice/browser/components/headerComponent.ts +@@ -56,7 +56,7 @@ export function createHeader(): HeaderComponent { + container.style.cssText = 'display:flex;align-items:center;gap:8px;height:30px;flex-shrink:0;'; + + // Copilot icon +- const copilotIcon = document.createElement('img'); ++ const copilotIcon = dom.createElement('img'); + copilotIcon.style.cssText = 'width:18px;height:18px;margin-right:4px;'; + + // Voice mode button +diff --git a/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.ts b/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.ts +index 6a03c6b6703..ebc31cceec6 100644 +--- a/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.ts ++++ b/src/vs/workbench/contrib/agentsVoice/browser/components/onboardingComponent.ts +@@ -62,12 +62,12 @@ export function createOnboarding(): OnboardingComponent { + const pttTextSpan = dom.$('span'); + const pttStrong = dom.$('strong'); + pttStrong.textContent = localize('agentsVoice.pttDesc', "Push-to-talk"); +- const pttHold = document.createTextNode(' ' + localize('agentsVoice.pttHoldDesc', "— hold the key while speaking, release when done.") + ' '); +- const pttLink = document.createElement('a'); ++ const pttHold = dom.createTextNode(' ' + localize('agentsVoice.pttHoldDesc', "— hold the key while speaking, release when done.") + ' '); ++ const pttLink = dom.createElement('a'); + pttLink.href = '#'; + pttLink.style.cssText = 'color:var(--vscode-textLink-foreground);cursor:pointer;text-decoration:none;'; + pttLink.textContent = localize('agentsVoice.configureHotkey', "Configure a keybinding"); +- const pttSuffix = document.createTextNode(' ' + localize('agentsVoice.changeHotkeySuffix', "to use it from any app.")); ++ const pttSuffix = dom.createTextNode(' ' + localize('agentsVoice.changeHotkeySuffix', "to use it from any app.")); + pttTextSpan.append(pttStrong, pttHold, pttLink, pttSuffix); + pttRow.append(pttIconWrap, pttTextSpan); + +@@ -92,18 +92,18 @@ export function createOnboarding(): OnboardingComponent { + miniViewIcon.style.fontSize = FONT_SIZE.iconSm; + miniViewIconWrap.append(miniViewIcon); + const miniViewTextSpan = dom.$('span'); +- const miniViewLink = document.createElement('a'); ++ const miniViewLink = dom.createElement('a'); + miniViewLink.href = '#'; + miniViewLink.style.cssText = 'color:var(--vscode-textLink-foreground);cursor:pointer;text-decoration:none;'; + miniViewLink.textContent = localize('agentsVoice.openMiniView', "Open the mini-view"); +- const miniViewSuffix = document.createTextNode(' ' + localize('agentsVoice.miniViewSuffix', "to multitask while VS Code is not in the foreground.")); ++ const miniViewSuffix = dom.createTextNode(' ' + localize('agentsVoice.miniViewSuffix', "to multitask while VS Code is not in the foreground.")); + miniViewTextSpan.append(miniViewLink, miniViewSuffix); + miniViewRow.append(miniViewIconWrap, miniViewTextSpan); + + descSection.append(welcomeRow, pttRow, feedbackRow, miniViewRow); + + // Get Started button +- const button = document.createElement('button'); ++ const button = dom.createElement('button'); + button.style.cssText = `-webkit-app-region:no-drag;background:var(--vscode-button-background);border:none;color:var(--vscode-button-foreground);font-size:${ONBOARDING_FONT};padding:6px 14px;border-radius:3px;font-weight:500;align-self:stretch;margin-top:2px;`; + button.addEventListener('mouseenter', () => { if (!button.disabled) { button.style.background = 'var(--vscode-button-hoverBackground)'; } }); + button.addEventListener('mouseleave', () => { button.style.background = 'var(--vscode-button-background)'; }); +diff --git a/src/vs/workbench/contrib/browserView/electron-browser/features/browserEditorChatFeatures.ts b/src/vs/workbench/contrib/browserView/electron-browser/features/browserEditorChatFeatures.ts +index 1799b6fe15d..9796bf4d842 100644 +--- a/src/vs/workbench/contrib/browserView/electron-browser/features/browserEditorChatFeatures.ts ++++ b/src/vs/workbench/contrib/browserView/electron-browser/features/browserEditorChatFeatures.ts +@@ -4,7 +4,7 @@ + *--------------------------------------------------------------------------------------------*/ + + import { localize, localize2 } from '../../../../../nls.js'; +-import { $ } from '../../../../../base/browser/dom.js'; ++import { $, createElement } from '../../../../../base/browser/dom.js'; + import { Event } from '../../../../../base/common/event.js'; + import { IContextKey, IContextKeyService, ContextKeyExpr, RawContextKey } from '../../../../../platform/contextkey/common/contextkey.js'; + import { Action2, registerAction2, MenuId, MenuRegistry } from '../../../../../platform/actions/common/actions.js'; +@@ -317,7 +317,7 @@ export class BrowserEditorChatIntegration extends BrowserEditorContribution { + const bounds = elementData.bounds; + const toAttach: IChatRequestVariableEntry[] = []; + +- const container = document.createElement('div'); ++ const container = createElement('div'); + safeSetInnerHtml(container, elementData.outerHTML); + const element = container.firstElementChild; + const innerText = container.textContent; diff --git a/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.ts b/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.ts index 4d5d76768f0..5522921ec53 100644 --- a/src/vs/workbench/contrib/bulkEdit/browser/preview/bulkEditPane.ts @@ -4028,10 +4160,10 @@ index 6f588651cfd..cdd610d640c 100644 const label = new IconLabel(container, { supportHighlights: true }); return new CallRenderingTemplate(icon, label); diff --git a/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.ts b/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.ts -index 45a9ef829b3..c4e89427cab 100644 +index 58d6eb85644..e115f1b299c 100644 --- a/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/aiCustomization/aiCustomizationListWidget.ts -@@ -666,7 +666,7 @@ export class AICustomizationListWidget extends Disposable { +@@ -665,7 +665,7 @@ export class AICustomizationListWidget extends Disposable { this.sectionTitleDescriptionText = DOM.append(this.sectionTitleDescription, $('span.section-title-description-text')); // Real whitespace text node between description and link so the gap collapses // when the link wraps to a new line (a CSS margin-left would push it inward). @@ -4041,10 +4173,10 @@ index 45a9ef829b3..c4e89427cab 100644 this._register(DOM.addDisposableListener(this.sectionLink, 'click', (e) => { e.preventDefault(); diff --git a/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.ts b/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.ts -index ab091a3545a..fb1d821c021 100644 +index e47164c162b..e90d16834a2 100644 --- a/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/aiCustomization/mcpListWidget.ts -@@ -426,7 +426,7 @@ export class McpListWidget extends Disposable { +@@ -587,7 +587,7 @@ export class McpListWidget extends Disposable { sectionTitleDescriptionText.textContent = localize('mcpServersDescription', "An open standard that lets AI use external tools and services. MCP servers provide tools for file operations, databases, APIs, and more."); // Real whitespace text node between description and link so the gap collapses // when the link wraps to a new line (a CSS margin-left would push it inward). @@ -4052,8 +4184,8 @@ index ab091a3545a..fb1d821c021 100644 + sectionTitleDescription.appendChild(DOM.createTextNode(' ')); this.sectionLink = DOM.append(sectionTitleDescription, $('a.section-title-link')) as HTMLAnchorElement; this.sectionLink.textContent = localize('learnMoreMcp', "Learn more about MCP servers"); - this.sectionLink.href = 'https://code.visualstudio.com/docs/copilot/chat/mcp-servers'; -@@ -644,7 +644,7 @@ export class McpListWidget extends Disposable { + this.sectionLink.href = 'https://code.visualstudio.com/docs/agent-customization/mcp-servers?referrer=in-product'; +@@ -813,7 +813,7 @@ export class McpListWidget extends Disposable { if (policyLocked) { this.disabledMessage.textContent = localize('mcpAccessDisabledByPolicy', "Access to MCP servers is disabled by your organization. Contact your organization administrator for more information."); } else { @@ -4063,10 +4195,10 @@ index ab091a3545a..fb1d821c021 100644 link.textContent = localize('mcpAccessDisabledSettingLink', "Configure in settings."); link.href = '#'; diff --git a/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.ts b/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.ts -index 1efee27fd97..0df0a72bff5 100644 +index 5bba8326fe7..11ecb01ad27 100644 --- a/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/aiCustomization/pluginListWidget.ts -@@ -500,7 +500,7 @@ export class PluginListWidget extends Disposable { +@@ -457,7 +457,7 @@ export class PluginListWidget extends Disposable { sectionTitleDescriptionText.textContent = localize('pluginsDescription', "Extend your AI agent with plugins that add commands, skills, agents, hooks, and MCP servers from reusable packages."); // Real whitespace text node between description and link so the gap collapses // when the link wraps to a new line (a CSS margin-left would push it inward). @@ -4074,8 +4206,8 @@ index 1efee27fd97..0df0a72bff5 100644 + sectionTitleDescription.appendChild(DOM.createTextNode(' ')); this.sectionLink = DOM.append(sectionTitleDescription, $('a.section-title-link')) as HTMLAnchorElement; this.sectionLink.textContent = localize('learnMorePlugins', "Learn more about agent plugins"); - this.sectionLink.href = 'https://code.visualstudio.com/docs/copilot/customization/agent-plugins'; -@@ -755,7 +755,7 @@ export class PluginListWidget extends Disposable { + this.sectionLink.href = 'https://code.visualstudio.com/docs/agent-customization/agent-plugins?referrer=in-product'; +@@ -719,7 +719,7 @@ export class PluginListWidget extends Disposable { if (policyLocked) { this.disabledMessage.textContent = localize('pluginsDisabledByPolicy', "Plugin integration in chat is disabled by your organization. Contact your organization administrator for more information."); } else { @@ -4084,11 +4216,24 @@ index 1efee27fd97..0df0a72bff5 100644 const link = DOM.append(this.disabledMessage, $('a.mcp-disabled-settings-link')) as HTMLAnchorElement; link.textContent = localize('pluginsDisabledSettingLink', "Configure in settings."); link.href = '#'; +diff --git a/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.ts b/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.ts +index 4ff7b9fb229..eee2e70877b 100644 +--- a/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.ts ++++ b/src/vs/workbench/contrib/chat/browser/aiCustomization/toolsListWidget.ts +@@ -233,7 +233,7 @@ export class ToolsListWidget extends Disposable { + const description = DOM.append(this._header, $('p.section-title-description')); + DOM.append(description, $('span.section-title-description-text')).textContent = localize('toolsListSubtitle', "Enable or disable the tools available to chat. Disabled tools are not advertised to the agent. Tools other than Copilot CLI run on the client and require it to be connected."); + // Whitespace node so the gap collapses when the link wraps. +- description.appendChild(document.createTextNode(' ')); ++ description.appendChild(DOM.createTextNode(' ')); + + const learnMore = DOM.append(description, $('a.section-title-link')) as HTMLAnchorElement; + learnMore.textContent = localize('learnMoreTools', "Learn more about tools"); diff --git a/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.ts b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.ts -index 5ba5b758273..4d99d4690c0 100644 +index 4d6c8c9395e..ec194fc874d 100644 --- a/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.ts +++ b/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentWidgets.ts -@@ -1202,7 +1202,7 @@ export class ElementChatAttachmentWidget extends AbstractChatAttachmentWidget { +@@ -1209,7 +1209,7 @@ export class ElementChatAttachmentWidget extends AbstractChatAttachmentWidget { swatch.style.backgroundColor = value; valueContainer.appendChild(swatch); } @@ -4098,10 +4243,10 @@ index 5ba5b758273..4d99d4690c0 100644 table.appendChild(row); } diff --git a/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.ts b/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.ts -index 498876596ec..09a2b19d3aa 100644 +index d3ad10570d6..f3ed2e11ef2 100644 --- a/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.ts +++ b/src/vs/workbench/contrib/chat/browser/chatDebug/chatDebugCacheExplorerView.ts -@@ -1450,14 +1450,14 @@ function appendChangedLine(host: HTMLElement, text: string, ranges: readonly IIn +@@ -2235,14 +2235,14 @@ function appendChangedLine(host: HTMLElement, text: string, ranges: readonly IIn const sorted = [...ranges].sort((a, b) => a.startColumn - b.startColumn); for (const r of sorted) { if (r.startColumn > cursor) { @@ -4326,7 +4471,7 @@ index a684d819a88..64824c23610 100644 toolbar.className = 'chat-diff-change-content-widget'; toolbar.classList.add('hover'); // Show by default diff --git a/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts b/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts -index 44a27528ecd..6ee17ce08fc 100644 +index bf3c2bffee5..bf9941cd478 100644 --- a/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts +++ b/src/vs/workbench/contrib/chat/browser/chatImageUtils.ts @@ -6,6 +6,7 @@ @@ -4346,6 +4491,24 @@ index 44a27528ecd..6ee17ce08fc 100644 canvas.width = width; canvas.height = height; const ctx = canvas.getContext('2d'); +@@ -100,7 +101,7 @@ export async function resizeImage(data: Uint8Array | string, mimeType?: string): + function createImageThumbnail(data: Uint8Array, maxSize: number): Promise { + return new Promise((resolve) => { + const blob = new Blob([data as Uint8Array]); +- const img = document.createElement('img'); ++ const img = createElement('img'); + const url = URL.createObjectURL(blob); + img.src = url; + +@@ -111,7 +112,7 @@ function createImageThumbnail(data: Uint8Array, maxSize: number): Promise ({ diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.ts index 8ed1c504586..00636f88dee 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatConfirmationWidget.ts @@ -4455,10 +4644,10 @@ index 517fe538dc6..6d6d0aeb793 100644 const scrollable = store.add(new DomScrollableElement(tableContainer, { // moves tableContainer into scrollNode vertical: ScrollbarVisibility.Hidden, diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.ts -index 9e879755bf1..9b622b609a5 100644 +index b288987c516..e763fae42be 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatToolInputOutputContentPart.ts -@@ -114,7 +114,7 @@ export class ChatCollapsibleInputOutputContentPart extends Disposable { +@@ -115,7 +115,7 @@ export class ChatCollapsibleInputOutputContentPart extends Disposable { subtitle, )); this._titlePart.setOptions({ markdownRenderOptions: getChatMarkdownRenderOptions(), renderFileWidgets: true }); @@ -4468,43 +4657,27 @@ index 9e879755bf1..9b622b609a5 100644 const btn = this._register(new ButtonWithIcon(elements.root, {})); diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts -index 512ad7e6da5..bcfb41438a4 100644 +index 957e53bbbd3..7f5f05b1f1b 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatTerminalToolProgressPart.ts -@@ -1723,11 +1723,11 @@ export class ChatTerminalThinkingCollapsibleWrapper extends ChatCollapsibleConte - const suffixText = this._isRunningInBackground - ? localize('chat.terminal.sandbox.backgroundSuffix', " in sandbox (background)") - : localize('chat.terminal.sandbox.suffix', " in sandbox"); -- labelElement.appendChild(document.createTextNode(prefixText)); -- const codeElement = document.createElement('code'); -+ labelElement.appendChild(dom.createTextNode(prefixText)); -+ const codeElement = dom.createElement('code'); - codeElement.textContent = this._commandText; - labelElement.appendChild(codeElement); -- labelElement.appendChild(document.createTextNode(suffixText)); -+ labelElement.appendChild(dom.createTextNode(suffixText)); - return; - } - -@@ -1736,14 +1736,14 @@ export class ChatTerminalThinkingCollapsibleWrapper extends ChatCollapsibleConte - : this._isComplete - ? localize('chat.terminal.ran.prefix', "Ran ") - : localize('chat.terminal.running.prefix', "Running "); -- const ranText = document.createTextNode(prefixText); +@@ -1769,12 +1769,12 @@ export class ChatTerminalThinkingCollapsibleWrapper extends ChatCollapsibleConte + : this._isComplete + ? localize('chat.terminal.ran.prefix', "Ran ") + : localize('chat.terminal.running.prefix', "Running "); +- labelElement.appendChild(document.createTextNode(prefixText)); - const codeElement = document.createElement('code'); -+ const ranText = dom.createTextNode(prefixText); ++ labelElement.appendChild(dom.createTextNode(prefixText)); + const codeElement = dom.createElement('code'); codeElement.textContent = this._commandText; - - labelElement.appendChild(ranText); labelElement.appendChild(codeElement); - if (this._isRunningInBackground) { -- labelElement.appendChild(document.createTextNode(localize('chat.terminal.backgroundSuffix', " in background"))); +- if (suffixText) { +- labelElement.appendChild(document.createTextNode(suffixText)); ++ if (this._isRunningInBackground) { + labelElement.appendChild(dom.createTextNode(localize('chat.terminal.backgroundSuffix', " in background"))); } } -@@ -1758,7 +1758,7 @@ export class ChatTerminalThinkingCollapsibleWrapper extends ChatCollapsibleConte +@@ -1789,7 +1789,7 @@ export class ChatTerminalThinkingCollapsibleWrapper extends ChatCollapsibleConte const store = new DisposableStore(); this._showLinkDisposables.value = store; const container = dom.$('span.chat-terminal-show-link-container'); @@ -4514,10 +4687,10 @@ index 512ad7e6da5..bcfb41438a4 100644 showLink.textContent = localize('chat.terminal.showTerminal', "Show"); showLink.role = 'button'; diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts -index 4e896893aa3..35f332f5566 100644 +index 81df053130f..869046600c2 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolConfirmationSubPart.ts -@@ -179,7 +179,7 @@ export class ToolConfirmationSubPart extends AbstractToolConfirmationSubPart { +@@ -181,7 +181,7 @@ export class ToolConfirmationSubPart extends AbstractToolConfirmationSubPart { if (toolInvocation.toolSpecificData?.kind === 'input' && toolInvocation.toolSpecificData.rawInput && !isEmptyObject(toolInvocation.toolSpecificData.rawInput)) { @@ -4527,10 +4700,10 @@ index 4e896893aa3..35f332f5566 100644 elements.editor.appendChild(titleEl); diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts -index 8a9bce4dee7..7772451cd23 100644 +index fdee7a0b225..10ede710434 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolInvocationPart.ts -@@ -108,7 +108,7 @@ export class ChatToolInvocationPart extends Disposable implements IChatContentPa +@@ -121,7 +121,7 @@ export class ChatToolInvocationPart extends Disposable implements IChatContentPa // when the model changes, or trying to make the model immutable and swap out one content part for a new one based on user actions in the view. // Note that `node.replaceWith` is used to ensure order is preserved when an mpc app is present. const partStore = this._register(new DisposableStore()); @@ -4539,15 +4712,15 @@ index 8a9bce4dee7..7772451cd23 100644 this.domNode.appendChild(subPartDomNode); const render = () => { -@@ -143,7 +143,7 @@ export class ChatToolInvocationPart extends Disposable implements IChatContentPa - return !!outcome && outcome.type !== ToolConfirmKind.Denied && outcome.type !== ToolConfirmKind.Skipped; - }); +@@ -149,7 +149,7 @@ export class ChatToolInvocationPart extends Disposable implements IChatContentPa + partStore.add(this.subPart.onNeedsRerender(render)); + }; -- let appDomNode: HTMLElement = document.createElement('div'); -+ let appDomNode: HTMLElement = dom.createElement('div'); - this.domNode.appendChild(appDomNode); +- let appDomNode: HTMLElement = document.createElement('div'); ++ let appDomNode: HTMLElement = dom.createElement('div'); + this.domNode.appendChild(appDomNode); - this._register(autorun(r => { + this._register(autorun(r => { diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.ts b/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.ts index 080ed052c5b..6c453bcaad1 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolProgressPart.ts @@ -4605,10 +4778,10 @@ index fa166677003..6564efe8bcf 100644 this.updateOverlayStyles(overlay); overlayContainer.appendChild(overlay); diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.ts b/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.ts -index 63c07965e83..9c766a47e17 100644 +index eb35f678538..057a171bc00 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatListRenderer.ts -@@ -641,7 +641,7 @@ export class ChatListItemRenderer extends Disposable implements ITreeRenderer 0) { - const heading = document.createElement('div'); + const heading = createElement('div'); heading.className = 'review-diag-heading'; - const title = append(heading, $('h3.review-diag-heading-title')); - title.textContent = localize('additionalInformation', "Additional Information"); + + // Master checkbox before "Additional Information" shows/hides and diff --git a/src/vs/workbench/contrib/languageStatus/browser/languageStatus.ts b/src/vs/workbench/contrib/languageStatus/browser/languageStatus.ts index 0c0c0094538..92c503bda8c 100644 --- a/src/vs/workbench/contrib/languageStatus/browser/languageStatus.ts @@ -6004,7 +6177,7 @@ index fbd8325319e..0f451889125 100644 } diff --git a/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts b/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts -index 2b0ce2561f1..d25cd42a890 100644 +index 7e5f6224115..b31b09021c3 100644 --- a/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts +++ b/src/vs/workbench/contrib/terminal/browser/terminalInstance.ts @@ -406,7 +406,7 @@ export class TerminalInstance extends Disposable implements ITerminalInstance { @@ -6299,10 +6472,10 @@ index 27c65807797..9477e1406aa 100644 const label = new IconLabel(container, { supportHighlights: true }); return new TypeRenderingTemplate(icon, label); diff --git a/src/vs/workbench/contrib/update/browser/updateTooltip.ts b/src/vs/workbench/contrib/update/browser/updateTooltip.ts -index 85e34cca1a3..6b564f4620f 100644 +index a2230caed6f..ed26b072827 100644 --- a/src/vs/workbench/contrib/update/browser/updateTooltip.ts +++ b/src/vs/workbench/contrib/update/browser/updateTooltip.ts -@@ -409,7 +409,7 @@ export class UpdateTooltip extends Disposable { +@@ -417,7 +417,7 @@ export class UpdateTooltip extends Disposable { const iconNode = dom.append(this.messageNode, dom.$('.state-message-icon')); iconNode.classList.add(...ThemeIcon.asClassNameArray(icon)); } @@ -6312,7 +6485,7 @@ index 85e34cca1a3..6b564f4620f 100644 } diff --git a/src/vs/workbench/contrib/webview/browser/webviewElement.ts b/src/vs/workbench/contrib/webview/browser/webviewElement.ts -index 25085c88cde..314f88e5d0f 100644 +index 40a109760c3..d48d3d081de 100644 --- a/src/vs/workbench/contrib/webview/browser/webviewElement.ts +++ b/src/vs/workbench/contrib/webview/browser/webviewElement.ts @@ -4,7 +4,7 @@ @@ -6429,7 +6602,7 @@ index 8691b2f7a37..1ec800a7370 100644 } diff --git a/src/vs/workbench/contrib/workspace/browser/workspaceTrustEditor.ts b/src/vs/workbench/contrib/workspace/browser/workspaceTrustEditor.ts -index 95fa069646b..79b8f2286a1 100644 +index 2c82bae817c..2b252cbd441 100644 --- a/src/vs/workbench/contrib/workspace/browser/workspaceTrustEditor.ts +++ b/src/vs/workbench/contrib/workspace/browser/workspaceTrustEditor.ts @@ -3,7 +3,7 @@ @@ -6441,7 +6614,7 @@ index 95fa069646b..79b8f2286a1 100644 import { ActionBar } from '../../../../base/browser/ui/actionbar/actionbar.js'; import { ButtonBar } from '../../../../base/browser/ui/button/button.js'; import { IMessage, InputBox, MessageType } from '../../../../base/browser/ui/inputbox/inputBox.js'; -@@ -873,7 +873,7 @@ export class WorkspaceTrustEditor extends EditorPane { +@@ -875,7 +875,7 @@ export class WorkspaceTrustEditor extends EditorPane { const headerDescriptionActionsText = localize({ key: 'workspaceTrustEditorHeaderActions', comment: ['Please ensure the markdown link syntax is not broken up with whitespace [text block](link block)'] }, "[Configure your settings]({0}) or [learn more](https://aka.ms/vscode-workspace-trust).", `command:workbench.trust.configure`); for (const node of parseLinkedText(headerDescriptionActionsText).nodes) { if (typeof node === 'string') { @@ -6450,7 +6623,7 @@ index 95fa069646b..79b8f2286a1 100644 } else { this.rerenderDisposables.add(this.instantiationService.createInstance(Link, headerDescriptionActions, { ...node, tabIndex: -1 }, {})); } -@@ -1120,7 +1120,7 @@ export class WorkspaceTrustEditor extends EditorPane { +@@ -1108,7 +1108,7 @@ export class WorkspaceTrustEditor extends EditorPane { const linkedText = parseLinkedText(limitation); for (const node of linkedText.nodes) { if (typeof node === 'string') { @@ -6504,7 +6677,7 @@ index 28ca04f71f8..fb7078dfdc8 100644 canvas.height = video.videoHeight; diff --git a/src/vs/workbench/test/browser/workbenchTestServices.ts b/src/vs/workbench/test/browser/workbenchTestServices.ts -index 62f841bd9da..621cdc7a26c 100644 +index b4277f16b2a..798b004ea1f 100644 --- a/src/vs/workbench/test/browser/workbenchTestServices.ts +++ b/src/vs/workbench/test/browser/workbenchTestServices.ts @@ -4,7 +4,7 @@ @@ -6516,7 +6689,7 @@ index 62f841bd9da..621cdc7a26c 100644 import { Direction, IViewSize } from '../../../base/browser/ui/grid/grid.js'; import { mainWindow } from '../../../base/browser/window.js'; import { timeout } from '../../../base/common/async.js'; -@@ -1711,7 +1711,7 @@ export class TestEditorParts extends EditorParts { +@@ -1712,7 +1712,7 @@ export class TestEditorParts extends EditorParts { export async function createEditorParts(instantiationService: IInstantiationService, disposables: DisposableStore): Promise { const parts = instantiationService.createInstance(TestEditorParts); const part = disposables.add(parts).testMainPart; diff --git a/vscode-patches/0070-fix-close-auxiliary-window-when-the-context-is-unloa.patch b/vscode-patches/0070-fix-close-auxiliary-window-when-the-context-is-unloa.patch index 4eafa4a3..cb01d5b2 100644 --- a/vscode-patches/0070-fix-close-auxiliary-window-when-the-context-is-unloa.patch +++ b/vscode-patches/0070-fix-close-auxiliary-window-when-the-context-is-unloa.patch @@ -8,10 +8,10 @@ Subject: [PATCH] fix: close auxiliary window when the context is unloaded 1 file changed, 6 insertions(+) diff --git a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -index 6c094a64793..8ae4e7f8e47 100644 +index f65640ada4b..07de87d3eb7 100644 --- a/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts +++ b/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.ts -@@ -154,6 +154,12 @@ export class AuxiliaryWindow extends BaseWindow implements IAuxiliaryWindow { +@@ -159,6 +159,12 @@ export class AuxiliaryWindow extends BaseWindow implements IAuxiliaryWindow { this._register(addDisposableListener(this.window.document.body, EventType.DRAG_OVER, (e: DragEvent) => EventHelper.stop(e))); // Prevent drag feedback on this._register(addDisposableListener(this.window.document.body, EventType.DROP, (e: DragEvent) => EventHelper.stop(e))); // Prevent default navigation on drop } diff --git a/vscode-patches/0071-refactor-make-editors-register-themself.patch b/vscode-patches/0071-refactor-make-editors-register-themself.patch index 2bb71972..2e4beb39 100644 --- a/vscode-patches/0071-refactor-make-editors-register-themself.patch +++ b/vscode-patches/0071-refactor-make-editors-register-themself.patch @@ -154,7 +154,7 @@ index aead3db9861..e7b71870d77 100644 this._configurationService = configurationService; diff --git a/src/vs/editor/standalone/browser/standaloneServices.ts b/src/vs/editor/standalone/browser/standaloneServices.ts -index 7bad06a8c75..e54b66d050b 100644 +index a0e60bb896c..86ffa576df3 100644 --- a/src/vs/editor/standalone/browser/standaloneServices.ts +++ b/src/vs/editor/standalone/browser/standaloneServices.ts @@ -74,13 +74,11 @@ import { UserInteractionService } from '../../../platform/userInteraction/browse @@ -280,10 +280,10 @@ index 19ec19eaf50..7ff2c02e845 100644 protected abstract _getResolver(): KeybindingResolver; protected abstract _documentHasFocus(): boolean; diff --git a/src/vs/platform/keybinding/common/keybinding.ts b/src/vs/platform/keybinding/common/keybinding.ts -index 6c4baf3a1de..ec5816f5b7f 100644 +index d4ce2da9b88..58d9b8a7e89 100644 --- a/src/vs/platform/keybinding/common/keybinding.ts +++ b/src/vs/platform/keybinding/common/keybinding.ts -@@ -47,6 +47,8 @@ export interface IKeybindingService { +@@ -53,6 +53,8 @@ export interface IKeybindingService { readonly onDidUpdateKeybindings: Event; diff --git a/vscode-patches/0072-fix-also-register-the-quickinput-container.patch b/vscode-patches/0072-fix-also-register-the-quickinput-container.patch index 42d36acd..5600fdc5 100644 --- a/vscode-patches/0072-fix-also-register-the-quickinput-container.patch +++ b/vscode-patches/0072-fix-also-register-the-quickinput-container.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: also register the quickinput container 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/vs/platform/quickinput/browser/quickInputController.ts b/src/vs/platform/quickinput/browser/quickInputController.ts -index ff35a90d0a7..2013952dc1c 100644 +index 2d3710f5dee..2ee549d617f 100644 --- a/src/vs/platform/quickinput/browser/quickInputController.ts +++ b/src/vs/platform/quickinput/browser/quickInputController.ts @@ -39,6 +39,7 @@ import { QuickInputTreeController } from './tree/quickInputTreeController.js'; diff --git a/vscode-patches/0074-fix-make-field-optional-as-sometime-openvsix-doesn-t.patch b/vscode-patches/0074-fix-make-field-optional-as-sometime-openvsix-doesn-t.patch index 446a66f0..30893ff0 100644 --- a/vscode-patches/0074-fix-make-field-optional-as-sometime-openvsix-doesn-t.patch +++ b/vscode-patches/0074-fix-make-field-optional-as-sometime-openvsix-doesn-t.patch @@ -9,7 +9,7 @@ Subject: [PATCH] fix: make field optional, as sometime openvsix doesn't 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/vs/platform/extensionManagement/common/extensionGalleryService.ts b/src/vs/platform/extensionManagement/common/extensionGalleryService.ts -index a87ed6646f4..72bfdb17b0f 100644 +index a48e4629420..668c1b7a09e 100644 --- a/src/vs/platform/extensionManagement/common/extensionGalleryService.ts +++ b/src/vs/platform/extensionManagement/common/extensionGalleryService.ts @@ -53,7 +53,7 @@ export interface IRawGalleryExtensionVersion { diff --git a/vscode-patches/0075-fix-properly-use-IExtensionResourceLoaderService-ins.patch b/vscode-patches/0075-fix-properly-use-IExtensionResourceLoaderService-ins.patch index d448cecc..bfc4f2ff 100644 --- a/vscode-patches/0075-fix-properly-use-IExtensionResourceLoaderService-ins.patch +++ b/vscode-patches/0075-fix-properly-use-IExtensionResourceLoaderService-ins.patch @@ -5,15 +5,15 @@ Subject: [PATCH] fix: properly use IExtensionResourceLoaderService instead of fileService directly --- - .../common/extensionsScannerService.ts | 25 ++++++++++++------- - .../node/extensionsScannerService.ts | 4 ++- - .../server/node/extensionsScannerService.ts | 4 ++- - .../browser/extensionsScannerService.ts | 4 ++- - .../extensionsScannerService.ts | 4 ++- - 5 files changed, 28 insertions(+), 13 deletions(-) + .../common/extensionsScannerService.ts | 22 ++++++++++++------- + .../node/extensionsScannerService.ts | 4 +++- + .../server/node/extensionsScannerService.ts | 4 +++- + .../browser/extensionsScannerService.ts | 4 +++- + .../extensionsScannerService.ts | 4 +++- + 5 files changed, 26 insertions(+), 12 deletions(-) diff --git a/src/vs/platform/extensionManagement/common/extensionsScannerService.ts b/src/vs/platform/extensionManagement/common/extensionsScannerService.ts -index 4902b531103..003f7d90a4b 100644 +index 2c91a53da83..be0093af3c5 100644 --- a/src/vs/platform/extensionManagement/common/extensionsScannerService.ts +++ b/src/vs/platform/extensionManagement/common/extensionsScannerService.ts @@ -34,6 +34,7 @@ import { ExtensionsProfileScanningError, ExtensionsProfileScanningErrorCode, IEx @@ -76,24 +76,22 @@ index 4902b531103..003f7d90a4b 100644 return parse(originalBundleContent, errors); } catch (error) { /* Ignore Error */ -@@ -740,12 +743,14 @@ class ExtensionsScanner extends ExtensionManifestTranslator { +@@ -739,12 +742,13 @@ class ExtensionsScanner extends ExtensionManifestTranslator { constructor( @IExtensionsProfileScannerService protected readonly extensionsProfileScannerService: IExtensionsProfileScannerService, @IUriIdentityService protected readonly uriIdentityService: IUriIdentityService, + @IExtensionResourceLoaderService extensionResourceLoaderService: IExtensionResourceLoaderService, @IFileService fileService: IFileService, @IProductService productService: IProductService, - @IEnvironmentService private readonly environmentService: IEnvironmentService, -- @ILogService logService: ILogService -+ @ILogService logService: ILogService, -+ + @IEnvironmentService environmentService: IEnvironmentService, + @ILogService logService: ILogService ) { - super(fileService, logService); + super(extensionResourceLoaderService, fileService, logService); - this.extensionsEnabledWithApiProposalVersion = productService.extensionsEnabledWithApiProposalVersion?.map(id => id.toLowerCase()) ?? []; this.productQuality = productService.quality; this.productBuiltInExtensionsEnabledWithAutoUpdates = getProductBuiltInExtensionsEnabledWithAutoUpdates(productService, environmentService); -@@ -918,7 +923,7 @@ class ExtensionsScanner extends ExtensionManifestTranslator { + } +@@ -915,7 +919,7 @@ class ExtensionsScanner extends ExtensionManifestTranslator { const manifestLocation = joinPath(extensionLocation, 'package.json'); let content; try { @@ -102,7 +100,7 @@ index 4902b531103..003f7d90a4b 100644 } catch (error) { if (toFileOperationResult(error) !== FileOperationResult.FILE_NOT_FOUND) { this.logService.error(this.formatMessage(extensionLocation, localize('fileReadFail', "Cannot read file {0}: {1}.", manifestLocation.path, error.message))); -@@ -964,12 +969,13 @@ class CachedExtensionsScanner extends ExtensionsScanner { +@@ -961,12 +965,13 @@ class CachedExtensionsScanner extends ExtensionsScanner { @IUserDataProfilesService private readonly userDataProfilesService: IUserDataProfilesService, @IExtensionsProfileScannerService extensionsProfileScannerService: IExtensionsProfileScannerService, @IUriIdentityService uriIdentityService: IUriIdentityService, @@ -117,7 +115,7 @@ index 4902b531103..003f7d90a4b 100644 } override async scanExtensions(input: ExtensionScannerInput): Promise { -@@ -1089,6 +1095,7 @@ export class NativeExtensionsScannerService extends AbstractExtensionsScannerSer +@@ -1086,6 +1091,7 @@ export class NativeExtensionsScannerService extends AbstractExtensionsScannerSer currentProfile: IUserDataProfile, userDataProfilesService: IUserDataProfilesService, extensionsProfileScannerService: IExtensionsProfileScannerService, @@ -125,7 +123,7 @@ index 4902b531103..003f7d90a4b 100644 fileService: IFileService, logService: ILogService, environmentService: IEnvironmentService, -@@ -1101,7 +1108,7 @@ export class NativeExtensionsScannerService extends AbstractExtensionsScannerSer +@@ -1098,7 +1104,7 @@ export class NativeExtensionsScannerService extends AbstractExtensionsScannerSer userExtensionsLocation, joinPath(userHome, '.vscode-oss-dev', 'extensions', 'control.json'), currentProfile, diff --git a/vscode-patches/0076-feat-add-customEditorRestore.patch b/vscode-patches/0076-feat-add-customEditorRestore.patch index 6786ba6a..9e2eb7f3 100644 --- a/vscode-patches/0076-feat-add-customEditorRestore.patch +++ b/vscode-patches/0076-feat-add-customEditorRestore.patch @@ -9,7 +9,7 @@ Subject: [PATCH] feat: add customEditorRestore 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index b28157fccdd..6ef7b3e0ef0 100644 +index 02fa222e7f6..69b9ba08eb2 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts @@ -21,7 +21,7 @@ import { isTemporaryWorkspace, IWorkspaceContextService, WorkbenchState } from ' @@ -38,7 +38,7 @@ index b28157fccdd..6ef7b3e0ef0 100644 //#region Layout Implementation -@@ -302,7 +302,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi +@@ -303,7 +303,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi constructor( protected readonly parent: HTMLElement, @@ -47,7 +47,7 @@ index b28157fccdd..6ef7b3e0ef0 100644 ) { super(); -@@ -957,7 +957,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi +@@ -976,7 +976,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi return this.restored; } @@ -56,7 +56,7 @@ index b28157fccdd..6ef7b3e0ef0 100644 // distinguish long running restore operations that // are required for the layout to be ready from those -@@ -1021,11 +1021,14 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi +@@ -1040,11 +1040,14 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi })); } diff --git a/vscode-patches/0079-fix-remove-empty-layout-message-before-actual-view-l.patch b/vscode-patches/0079-fix-remove-empty-layout-message-before-actual-view-l.patch index fb1a139b..37a60dd7 100644 --- a/vscode-patches/0079-fix-remove-empty-layout-message-before-actual-view-l.patch +++ b/vscode-patches/0079-fix-remove-empty-layout-message-before-actual-view-l.patch @@ -9,10 +9,10 @@ to prevent a flicker when it opens 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/vs/workbench/browser/parts/paneCompositePart.ts b/src/vs/workbench/browser/parts/paneCompositePart.ts -index a35c19c2a06..20223817c11 100644 +index 0f828260077..72f427ef32b 100644 --- a/src/vs/workbench/browser/parts/paneCompositePart.ts +++ b/src/vs/workbench/browser/parts/paneCompositePart.ts -@@ -217,15 +217,15 @@ export abstract class AbstractPaneCompositePart extends CompositePart boolean; diff --git a/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.ts b/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.ts -index e930b6b7df7..d11df378994 100644 +index acdaff6b95c..11a76e680a4 100644 --- a/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.ts +++ b/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.ts -@@ -118,7 +118,7 @@ export class ChatStatusBarEntry extends Disposable implements IWorkbenchContribu +@@ -195,7 +195,7 @@ export class ChatStatusBarEntry extends Disposable implements IWorkbenchContribu this._register(this.editorService.onDidActiveEditorChange(() => this.onDidActiveEditorChange())); this._register(this.configurationService.onDidChangeConfiguration(e => { @@ -107,10 +107,10 @@ index e930b6b7df7..d11df378994 100644 } })); diff --git a/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts b/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts -index 195e57481c6..2d26f00b061 100644 +index b087fb43366..843a04f857f 100644 --- a/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts +++ b/src/vs/workbench/contrib/chat/browser/widget/chatWidget.ts -@@ -1087,8 +1087,8 @@ export class ChatWidget extends Disposable implements IChatWidget { +@@ -1115,8 +1115,8 @@ export class ChatWidget extends Disposable implements IChatWidget { const defaultAgent = this.chatAgentService.getDefaultAgent(this.location, this.input.currentModeKind); let additionalMessage: string | IMarkdownString | undefined; if (this.chatEntitlementService.anonymous && !this.chatEntitlementService.sentiment.completed) { @@ -122,10 +122,10 @@ index 195e57481c6..2d26f00b061 100644 additionalMessage = defaultAgent?.metadata.additionalWelcomeMessage; } diff --git a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -index e5ecaf1a6be..2502b8a9da9 100644 +index 80a883131c7..63d5b8b61e3 100644 --- a/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts +++ b/src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts -@@ -2872,7 +2872,7 @@ export class ExtensionsWorkbenchService extends Disposable implements IExtension +@@ -2876,7 +2876,7 @@ export class ExtensionsWorkbenchService extends Disposable implements IExtension } const extensionsToUninstall: UninstallExtensionInfo[] = [{ extension: extension.local }]; @@ -135,10 +135,10 @@ index e5ecaf1a6be..2502b8a9da9 100644 if (packExtension.local && !extensionsToUninstall.some(e => areSameExtensions(e.extension.identifier, packExtension.identifier))) { extensionsToUninstall.push({ extension: packExtension.local }); diff --git a/src/vs/workbench/services/accounts/browser/defaultAccount.ts b/src/vs/workbench/services/accounts/browser/defaultAccount.ts -index 8f4e86487df..0c03912111d 100644 +index b267dcbd4f7..d466dfeb8a4 100644 --- a/src/vs/workbench/services/accounts/browser/defaultAccount.ts +++ b/src/vs/workbench/services/accounts/browser/defaultAccount.ts -@@ -136,14 +136,16 @@ export class DefaultAccountService extends Disposable implements IDefaultAccount +@@ -137,14 +137,16 @@ export class DefaultAccountService extends Disposable implements IDefaultAccount private readonly _onDidChangeCopilotTokenInfo = this._register(new Emitter()); readonly onDidChangeCopilotTokenInfo = this._onDidChangeCopilotTokenInfo.event; @@ -157,7 +157,7 @@ index 8f4e86487df..0c03912111d 100644 } async getDefaultAccount(): Promise { -@@ -155,6 +157,10 @@ export class DefaultAccountService extends Disposable implements IDefaultAccount +@@ -156,6 +158,10 @@ export class DefaultAccountService extends Disposable implements IDefaultAccount if (this.defaultAccountProvider) { return this.defaultAccountProvider.getDefaultAccountAuthenticationProvider(); } @@ -168,7 +168,7 @@ index 8f4e86487df..0c03912111d 100644 return { ...this.defaultAccountConfig.authenticationProvider.default, enterprise: false -@@ -1174,8 +1180,11 @@ class DefaultAccountProviderContribution extends Disposable implements IWorkbenc +@@ -1175,8 +1181,11 @@ class DefaultAccountProviderContribution extends Disposable implements IWorkbenc @IDefaultAccountService defaultAccountService: IDefaultAccountService, ) { super(); diff --git a/vscode-patches/0086-feat-add-terminal.integrated.preserveDrawingBuffer-s.patch b/vscode-patches/0086-feat-add-terminal.integrated.preserveDrawingBuffer-s.patch index 752882be..327bdf8b 100644 --- a/vscode-patches/0086-feat-add-terminal.integrated.preserveDrawingBuffer-s.patch +++ b/vscode-patches/0086-feat-add-terminal.integrated.preserveDrawingBuffer-s.patch @@ -23,7 +23,7 @@ index 589bb0905b6..2b522149776 100644 RescaleOverlappingGlyphs = 'terminal.integrated.rescaleOverlappingGlyphs', PersistentSessionScrollback = 'terminal.integrated.persistentSessionScrollback', diff --git a/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.ts b/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.ts -index d112240adc5..901d865ca7d 100644 +index dc89e65ce98..ebe4228d7e5 100644 --- a/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.ts +++ b/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.ts @@ -861,7 +861,8 @@ export class XtermTerminal extends Disposable implements IXtermTerminal, IDetach @@ -37,7 +37,7 @@ index d112240adc5..901d865ca7d 100644 try { this.raw.loadAddon(this._webglAddon); diff --git a/src/vs/workbench/contrib/terminal/common/terminal.ts b/src/vs/workbench/contrib/terminal/common/terminal.ts -index aad6a569f74..680f35e1bcd 100644 +index f1bcb84e4d7..740fe28c54b 100644 --- a/src/vs/workbench/contrib/terminal/common/terminal.ts +++ b/src/vs/workbench/contrib/terminal/common/terminal.ts @@ -220,6 +220,7 @@ export interface ITerminalConfiguration { @@ -49,10 +49,10 @@ index aad6a569f74..680f35e1bcd 100644 export interface ITerminalFont { diff --git a/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts b/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts -index 3d3e8f2d0e0..700928cb645 100644 +index e08464a35e4..6975a2eba43 100644 --- a/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts +++ b/src/vs/workbench/contrib/terminal/common/terminalConfiguration.ts -@@ -571,6 +571,11 @@ const terminalConfiguration: IStringDictionary = { +@@ -572,6 +572,11 @@ const terminalConfiguration: IStringDictionary = { type: 'boolean', default: true }, diff --git a/vscode-patches/0087-refactor-only-import-chat-related-stuff-from-chat-co.patch b/vscode-patches/0087-refactor-only-import-chat-related-stuff-from-chat-co.patch index c6a0259a..6c44a27e 100644 --- a/vscode-patches/0087-refactor-only-import-chat-related-stuff-from-chat-co.patch +++ b/vscode-patches/0087-refactor-only-import-chat-related-stuff-from-chat-co.patch @@ -10,13 +10,13 @@ Subject: [PATCH] refactor: only import chat-related stuff from chat 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts b/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts -index c246d343876..3ccf6e75ce7 100644 +index e1619d68dfc..7b3706310ba 100644 --- a/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts -@@ -199,6 +199,7 @@ import { PlanAgentDefaultModel } from './planAgentDefaultModel.js'; +@@ -210,6 +210,7 @@ import { ExploreAgentDefaultModel } from './exploreAgentDefaultModel.js'; + import { PlanAgentDefaultModel } from './planAgentDefaultModel.js'; import { UtilityModelContribution, UtilitySmallModelContribution } from './utilityModelContribution.js'; import { ChatImageCarouselService, IChatImageCarouselService } from './chatImageCarouselService.js'; - import { browserChatToolReferenceNames } from '../../browserView/common/browserChatToolReferenceNames.js'; +import '../../notebook/browser/controller/chat/notebook.chat.contribution.js'; CommandsRegistry.registerCommand('_chat.notifyQuestionCarouselAnswer', (accessor: ServicesAccessor, resolveId: string, answers?: import('../common/chatService/chatService.js').IChatQuestionAnswers) => { diff --git a/vscode-patches/0089-feat-allow-defining-the-workspace-id.patch b/vscode-patches/0089-feat-allow-defining-the-workspace-id.patch index 2b50c633..ee282572 100644 --- a/vscode-patches/0089-feat-allow-defining-the-workspace-id.patch +++ b/vscode-patches/0089-feat-allow-defining-the-workspace-id.patch @@ -10,10 +10,10 @@ Subject: [PATCH] feat: allow defining the workspace id 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/src/vs/platform/window/common/window.ts b/src/vs/platform/window/common/window.ts -index 291648bca96..0093fc74684 100644 +index 2187c2fb6c9..514b086285e 100644 --- a/src/vs/platform/window/common/window.ts +++ b/src/vs/platform/window/common/window.ts -@@ -100,6 +100,7 @@ export interface IOpenEmptyWindowOptions extends IBaseOpenWindowsOptions { } +@@ -107,6 +107,7 @@ export interface IOpenEmptyWindowOptions extends IBaseOpenWindowsOptions { } export type IWindowOpenable = IWorkspaceToOpen | IFolderToOpen | IFileToOpen; export interface IBaseWindowOpenable { @@ -50,10 +50,10 @@ index 95676d86ef3..2c143838b4e 100644 }; } diff --git a/src/vs/workbench/browser/web.main.ts b/src/vs/workbench/browser/web.main.ts -index 528ca87b263..d646fccc322 100644 +index 32d9fadacf6..0de968ef2b6 100644 --- a/src/vs/workbench/browser/web.main.ts +++ b/src/vs/workbench/browser/web.main.ts -@@ -659,12 +659,12 @@ export class BrowserMain extends Disposable { +@@ -662,12 +662,12 @@ export class BrowserMain extends Disposable { // Multi-root workspace if (workspace && isWorkspaceToOpen(workspace)) { diff --git a/vscode-patches/0090-fix-do-not-hide-copilot-ui-on-web-mode.patch b/vscode-patches/0090-fix-do-not-hide-copilot-ui-on-web-mode.patch index 78e84142..da4757d2 100644 --- a/vscode-patches/0090-fix-do-not-hide-copilot-ui-on-web-mode.patch +++ b/vscode-patches/0090-fix-do-not-hide-copilot-ui-on-web-mode.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: do not hide copilot ui on web mode 1 file changed, 6 deletions(-) diff --git a/src/vs/workbench/services/chat/common/chatEntitlementService.ts b/src/vs/workbench/services/chat/common/chatEntitlementService.ts -index c98aaea2c9c..bc6d081596b 100644 +index ddf07ba2df7..037efcc6407 100644 --- a/src/vs/workbench/services/chat/common/chatEntitlementService.ts +++ b/src/vs/workbench/services/chat/common/chatEntitlementService.ts @@ -25,7 +25,6 @@ import { IOpenerService } from '../../../../platform/opener/common/opener.js'; @@ -19,7 +19,7 @@ index c98aaea2c9c..bc6d081596b 100644 import { ILifecycleService } from '../../lifecycle/common/lifecycle.js'; import { Mutable } from '../../../../base/common/types.js'; import { InstantiationType, registerSingleton } from '../../../../platform/instantiation/common/extensions.js'; -@@ -410,11 +409,6 @@ export class ChatEntitlementService extends Disposable implements IChatEntitleme +@@ -449,11 +448,6 @@ export class ChatEntitlementService extends Disposable implements IChatEntitleme ); this.sentimentObs = observableFromEvent(this.onDidChangeSentiment, () => this.sentiment); diff --git a/vscode-patches/0091-feat-add-AIDisabled-policy.patch b/vscode-patches/0091-feat-add-AIDisabled-policy.patch index f2a97673..c13298bc 100644 --- a/vscode-patches/0091-feat-add-AIDisabled-policy.patch +++ b/vscode-patches/0091-feat-add-AIDisabled-policy.patch @@ -8,10 +8,10 @@ Subject: [PATCH] feat: add AIDisabled policy 1 file changed, 11 insertions(+) diff --git a/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts b/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts -index 3ccf6e75ce7..a14f1fadecf 100644 +index 7b3706310ba..a9effd916ad 100644 --- a/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts +++ b/src/vs/workbench/contrib/chat/browser/chat.shared.contribution.ts -@@ -1683,6 +1683,17 @@ configurationRegistry.registerConfiguration({ +@@ -1812,6 +1812,17 @@ configurationRegistry.registerConfiguration({ description: nls.localize('chat.disableAIFeatures', "Disable and hide built-in AI features provided by GitHub Copilot, including chat and inline suggestions."), default: false, scope: ConfigurationScope.WINDOW, diff --git a/vscode-patches/0093-fix-chat-always-update-auxiliary-bar.patch b/vscode-patches/0093-fix-chat-always-update-auxiliary-bar.patch index 68986b8e..9bc4692e 100644 --- a/vscode-patches/0093-fix-chat-always-update-auxiliary-bar.patch +++ b/vscode-patches/0093-fix-chat-always-update-auxiliary-bar.patch @@ -8,10 +8,10 @@ Subject: [PATCH] fix(chat): always update auxiliary bar 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts b/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts -index 2a139ea9ec6..87fd9fc08bb 100644 +index ab618867bd4..1a4c7ec2976 100644 --- a/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts +++ b/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.ts -@@ -795,9 +795,7 @@ export class ChatTeardownContribution extends Disposable implements IWorkbenchCo +@@ -794,9 +794,7 @@ export class ChatTeardownContribution extends Disposable implements IWorkbenchCo const chatDisabled = this.configurationService.inspect(ChatConfiguration.AIDisabled); if (chatDisabled.value === true) { this.maybeEnableOrDisableExtension(typeof chatDisabled.workspaceValue === 'boolean' ? EnablementState.DisabledWorkspace : EnablementState.DisabledGlobally); diff --git a/vscode-patches/0094-fix-do-not-hide-the-sidebar-forcefully-if-the-settin.patch b/vscode-patches/0094-fix-do-not-hide-the-sidebar-forcefully-if-the-settin.patch index 0401242c..160d447d 100644 --- a/vscode-patches/0094-fix-do-not-hide-the-sidebar-forcefully-if-the-settin.patch +++ b/vscode-patches/0094-fix-do-not-hide-the-sidebar-forcefully-if-the-settin.patch @@ -35,7 +35,7 @@ index 55eaae5451c..ea6ed0b941a 100644 /** * If `true`, do not notifies the error to user by showing the message box. Default is `false`. diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index 6ef7b3e0ef0..6c141511d50 100644 +index 69b9ba08eb2..b19764ab844 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts @@ -19,7 +19,7 @@ import { PanelPart } from './parts/panel/panelPart.js'; @@ -47,7 +47,7 @@ index 6ef7b3e0ef0..6c141511d50 100644 import { ITitleService } from '../services/title/browser/titleService.js'; import { ServicesAccessor, IInstantiationService } from '../../platform/instantiation/common/instantiation.js'; import { StartupKind, ILifecycleService } from '../services/lifecycle/common/lifecycle.js'; -@@ -2964,7 +2964,7 @@ class LayoutStateModel extends Disposable { +@@ -2992,7 +2992,7 @@ class LayoutStateModel extends Disposable { // Unless auxiliary bar visibility is explicitly configured, make // sure to not force open it in case we know it was empty before. const configuration = this.configurationService.inspect(WorkbenchLayoutSettings.AUXILIARYBAR_DEFAULT_VISIBILITY); diff --git a/vscode-patches/0095-fix-dedup-import.patch b/vscode-patches/0095-fix-dedup-import.patch index d4659c75..1e7e3522 100644 --- a/vscode-patches/0095-fix-dedup-import.patch +++ b/vscode-patches/0095-fix-dedup-import.patch @@ -8,15 +8,15 @@ Subject: [PATCH] fix: dedup import 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/vs/workbench/contrib/browserView/common/browserEditorInput.ts b/src/vs/workbench/contrib/browserView/common/browserEditorInput.ts -index 7288520f959..670af3e7236 100644 +index 7d3e23e29b1..c736dac1fda 100644 --- a/src/vs/workbench/contrib/browserView/common/browserEditorInput.ts +++ b/src/vs/workbench/contrib/browserView/common/browserEditorInput.ts @@ -9,14 +9,13 @@ import { ThemeIcon } from '../../../../base/common/themables.js'; import { URI } from '../../../../base/common/uri.js'; import { generateUuid } from '../../../../base/common/uuid.js'; import { BrowserViewUri } from '../../../../platform/browserView/common/browserViewUri.js'; --import { BrowserViewSharingState, IBrowserEditorViewState, IBrowserViewWorkbenchService } from './browserView.js'; -+import { BrowserViewSharingState, IBrowserEditorViewState, IBrowserViewModel, IBrowserViewWorkbenchService } from './browserView.js'; +-import { BrowserViewSharingState, INavigateOptions, IBrowserEditorViewState, IBrowserViewWorkbenchService } from './browserView.js'; ++import { BrowserViewSharingState, INavigateOptions, IBrowserEditorViewState, IBrowserViewModel, IBrowserViewWorkbenchService } from './browserView.js'; import { EditorInputCapabilities, IEditorSerializer, IUntypedEditorInput, Verbosity } from '../../../common/editor.js'; import { EditorInput } from '../../../common/editor/editorInput.js'; import { IThemeService } from '../../../../platform/theme/common/themeService.js'; diff --git a/vscode-patches/0097-fix-remove-unused-import.patch b/vscode-patches/0097-fix-remove-unused-import.patch index d97e6cc9..6ab3e27c 100644 --- a/vscode-patches/0097-fix-remove-unused-import.patch +++ b/vscode-patches/0097-fix-remove-unused-import.patch @@ -8,7 +8,7 @@ Subject: [PATCH] fix: remove unused import 1 file changed, 1 deletion(-) diff --git a/src/vs/platform/agentHost/common/agentService.ts b/src/vs/platform/agentHost/common/agentService.ts -index 0e5ec71e9a2..9cd2cf00aec 100644 +index 8ee8016e821..d29469690f3 100644 --- a/src/vs/platform/agentHost/common/agentService.ts +++ b/src/vs/platform/agentHost/common/agentService.ts @@ -3,7 +3,6 @@ diff --git a/vscode-patches/0101-fix-remove-useless-check-that-prevents-ai-assist-fro.patch b/vscode-patches/0101-fix-remove-useless-check-that-prevents-ai-assist-fro.patch index 004f9204..fd93170e 100644 --- a/vscode-patches/0101-fix-remove-useless-check-that-prevents-ai-assist-fro.patch +++ b/vscode-patches/0101-fix-remove-useless-check-that-prevents-ai-assist-fro.patch @@ -9,10 +9,10 @@ Subject: [PATCH] fix: remove useless check that prevents ai-assist from being 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/src/vs/workbench/browser/layout.ts b/src/vs/workbench/browser/layout.ts -index 6c141511d50..c1086090eeb 100644 +index b19764ab844..e2bcd0b9ceb 100644 --- a/src/vs/workbench/browser/layout.ts +++ b/src/vs/workbench/browser/layout.ts -@@ -695,7 +695,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi +@@ -714,7 +714,7 @@ export abstract class Layout extends Disposable implements IWorkbenchLayoutServi private initLayoutState(lifecycleService: ILifecycleService, fileService: IFileService): void { this._mainContainerDimension = getClientArea(this.parent, this.contextService.getWorkbenchState() === WorkbenchState.EMPTY ? DEFAULT_EMPTY_WINDOW_DIMENSIONS : DEFAULT_WORKSPACE_WINDOW_DIMENSIONS); // running with fallback to ensure no error is thrown (https://github.com/microsoft/vscode/issues/240242) @@ -21,7 +21,7 @@ index 6c141511d50..c1086090eeb 100644 this.stateModel.load({ mainContainerDimension: this._mainContainerDimension, resetLayout: Boolean(this.layoutOptions?.resetLayout) -@@ -2881,8 +2881,7 @@ class LayoutStateModel extends Disposable { +@@ -2909,8 +2909,7 @@ class LayoutStateModel extends Disposable { constructor( private readonly storageService: IStorageService, private readonly configurationService: IConfigurationService, @@ -31,7 +31,7 @@ index 6c141511d50..c1086090eeb 100644 ) { super(); -@@ -2953,10 +2952,6 @@ class LayoutStateModel extends Disposable { +@@ -2981,10 +2980,6 @@ class LayoutStateModel extends Disposable { LayoutStateKeys.SIDEBAR_HIDDEN.defaultValue = workbenchState === WorkbenchState.EMPTY || auxiliaryBarForceMaximized === true; LayoutStateKeys.AUXILIARYBAR_SIZE.defaultValue = auxiliaryBarForceMaximized ? Math.max(300, mainContainerDimension.width / 2) : Math.min(300, mainContainerDimension.width / 4); LayoutStateKeys.AUXILIARYBAR_HIDDEN.defaultValue = (() => { diff --git a/vscode-patches/0102-refactor-move-interface-in-common.patch b/vscode-patches/0102-refactor-move-interface-in-common.patch new file mode 100644 index 00000000..038fc4f5 --- /dev/null +++ b/vscode-patches/0102-refactor-move-interface-in-common.patch @@ -0,0 +1,93 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= +Date: Wed, 8 Jul 2026 12:24:06 +0200 +Subject: [PATCH] refactor: move interface in common + +instead of making platform import from sessions +--- + .../agentHost/common/agentHostMcpServer.ts | 22 +++++++++++++++++++ + .../common/agentHostSessionsProvider.ts | 18 ++------------- + .../agentHostCustomizationService.ts | 2 +- + 3 files changed, 25 insertions(+), 17 deletions(-) + create mode 100644 src/vs/platform/agentHost/common/agentHostMcpServer.ts + +diff --git a/src/vs/platform/agentHost/common/agentHostMcpServer.ts b/src/vs/platform/agentHost/common/agentHostMcpServer.ts +new file mode 100644 +index 00000000000..46ef674fefe +--- /dev/null ++++ b/src/vs/platform/agentHost/common/agentHostMcpServer.ts +@@ -0,0 +1,22 @@ ++/*--------------------------------------------------------------------------------------------- ++ * Copyright (c) Microsoft Corporation. All rights reserved. ++ * Licensed under the MIT License. See License.txt in the project root for license information. ++ *--------------------------------------------------------------------------------------------*/ ++ ++import { McpServerState, type McpServerStatus } from './state/protocol/channels-session/state.js'; ++ ++/** ++ * A rich view of a single MCP server exposed by an agent host session. ++ * Encapsulates the dispatch plumbing so consumers can present and toggle ++ * servers without depending on the low-level protocol action surface. ++ */ ++export interface IAgentHostMcpServer { ++ readonly id: string; ++ readonly name: string; ++ readonly enabled: boolean; ++ readonly status: McpServerStatus; ++ readonly state: McpServerState; ++ readonly logOutputChannelId?: string; ++ setEnabled(enabled: boolean): void; ++} ++ +diff --git a/src/vs/sessions/common/agentHostSessionsProvider.ts b/src/vs/sessions/common/agentHostSessionsProvider.ts +index 845166ae5af..059abdc2887 100644 +--- a/src/vs/sessions/common/agentHostSessionsProvider.ts ++++ b/src/vs/sessions/common/agentHostSessionsProvider.ts +@@ -10,9 +10,10 @@ import { URI } from '../../base/common/uri.js'; + import { AuthenticateParams, AuthenticateResult, IAgentConnection } from '../../platform/agentHost/common/agentService.js'; + import { RemoteAgentHostConnectionStatus } from '../../platform/agentHost/common/remoteAgentHostService.js'; + import { ResolveSessionConfigResult, SessionConfigValueItem } from '../../platform/agentHost/common/state/protocol/commands.js'; +-import { AgentCustomization, Customization, McpServerStatus, RootConfigState, type McpServerState } from '../../platform/agentHost/common/state/protocol/state.js'; ++import { AgentCustomization, Customization, RootConfigState } from '../../platform/agentHost/common/state/protocol/state.js'; + import { ISessionsProvider } from '../services/sessions/common/sessionsProvider.js'; + import { ISessionAgentRef } from '../services/sessions/common/session.js'; ++import { IAgentHostMcpServer } from '../../platform/agentHost/common/agentHostMcpServer.js'; + + /** + * Progress emitted while an agent-host provider is establishing a connection. +@@ -22,21 +23,6 @@ export interface IAgentHostConnectProgress { + readonly message: string; + } + +-/** +- * A rich view of a single MCP server exposed by an agent host session. +- * Encapsulates the dispatch plumbing so consumers can present and toggle +- * servers without depending on the low-level protocol action surface. +- */ +-export interface IAgentHostMcpServer { +- readonly id: string; +- readonly name: string; +- readonly enabled: boolean; +- readonly status: McpServerStatus; +- readonly state: McpServerState; +- readonly logOutputChannelId?: string; +- setEnabled(enabled: boolean): void; +-} +- + /** + * Extended sessions provider for agent host providers (local and remote). + * Adds remote connection properties and dynamic session configuration. +diff --git a/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.ts b/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.ts +index 49c60374bc5..26954305713 100644 +--- a/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.ts ++++ b/src/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.ts +@@ -23,8 +23,8 @@ import { ILogService } from '../../../../../../platform/log/common/log.js'; + import { IChatService } from '../../../common/chatService/chatService.js'; + import { isUntitledChatSession } from '../../../common/model/chatUri.js'; + import { IAgentHostUntitledProvisionalSessionService } from './agentHostUntitledProvisionalSessionService.js'; +-import { IAgentHostMcpServer } from '../../../../../../sessions/common/agentHostSessionsProvider.js'; + import { resolveMcpServerAuthentication, agentHostMcpServerId } from './agentHostAuth.js'; ++import { IAgentHostMcpServer } from '../../../../../../platform/agentHost/common/agentHostMcpServer.js'; + + export const IAgentHostCustomizationService = createDecorator('agentHostCustomizationService'); + From 410d4cd4920861ba2a5b7c16a048e826d66b20d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= Date: Wed, 8 Jul 2026 18:01:01 +0200 Subject: [PATCH 3/4] fix(demo): missing package-package --- demo/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/demo/package.json b/demo/package.json index 7e34bacd..62d4f370 100644 --- a/demo/package.json +++ b/demo/package.json @@ -13,7 +13,8 @@ "check-build": "npm run lint && npm run typecheck", "build": "npm run check-build && vite --config vite.config.ts build", "build:netlify": "npm run check-build && vite --config vite.netlify.config.ts build", - "start:debugServer": "tsx src/debugServer.ts" + "start:debugServer": "tsx src/debugServer.ts", + "preprepare": "patch-package" }, "devDependencies": { "@types/dockerode": "^4.0.1", From a0003ef317fb10a44316bbb160c33afca526b6a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Mangeonjean?= Date: Wed, 8 Jul 2026 18:27:23 +0200 Subject: [PATCH 4/4] lib: update dependencies --- demo/package-lock.json | 591 ++- demo/package.json | 6 +- .../{vite+8.0.16.patch => vite+8.1.3.patch} | 62 +- package-lock.json | 3846 ++++++++++++----- package.json | 12 +- 5 files changed, 3312 insertions(+), 1205 deletions(-) rename demo/patches/{vite+8.0.16.patch => vite+8.1.3.patch} (93%) diff --git a/demo/package-lock.json b/demo/package-lock.json index 5b7e8a85..4c22eef8 100644 --- a/demo/package-lock.json +++ b/demo/package-lock.json @@ -203,9 +203,9 @@ "@types/node": "^25.9.3", "@types/wicg-file-system-access": "^2023.10.7", "@types/ws": "^8.18.1", - "oxlint": "^1.71.0", - "typescript": "~6.0.3", - "vite": "~8.1.0" + "oxlint": "^1.73.0", + "typescript": "~7.0.2", + "vite": "~8.1.3" } }, "node_modules/@balena/dockerignore": { @@ -2482,14 +2482,13 @@ } }, "node_modules/@oxlint/binding-android-arm-eabi": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm-eabi/-/binding-android-arm-eabi-1.71.0.tgz", - "integrity": "sha512-ImGmd1njEg4FEJH03jhRnveEegtO3czCtfptvaHivKAZQIYATbVFBrrzbaYMYv0oJioTnxZAZVSyV+oL7W8S2g==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm-eabi/-/binding-android-arm-eabi-1.73.0.tgz", + "integrity": "sha512-HZQRN/UMBu+Ut+/9MiAChkbP4qZqrNOWBcNI45vOT40GVhbGR0JgHB87L48D4iAqFQIdVmeQYtV9RF89AjTKkg==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" @@ -2499,14 +2498,13 @@ } }, "node_modules/@oxlint/binding-android-arm64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm64/-/binding-android-arm64-1.71.0.tgz", - "integrity": "sha512-4A5BEexBrwY1YFF8Kiq/lp/wQPRG79G3BWIE1FuWaM5MvmpYSd+7ZySVcKkHdwo0UDzdQGddp6pD9mpctMqLnw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm64/-/binding-android-arm64-1.73.0.tgz", + "integrity": "sha512-Gp+KJRylv2aW7thRpG5p1KTxZq4ZJFbWowrKzufNq9d3ssl3r3JviYV45/+p+7CN1Nv0zDd1e8Ex0b/HUDq4TQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" @@ -2516,14 +2514,13 @@ } }, "node_modules/@oxlint/binding-darwin-arm64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-arm64/-/binding-darwin-arm64-1.71.0.tgz", - "integrity": "sha512-9wJA9GJulLwS2usU3CEisI/ESDO1n1z9eyTCvApMDrAkbJ1ve0mORgTMjcWWsKxkzkeZ2N/Gpra5IQE7x8tYgQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-arm64/-/binding-darwin-arm64-1.73.0.tgz", + "integrity": "sha512-3de96NdtXhxERMjIz7wsp2HYMY6pMQycGxFWac2mFecAx6VeARF/IqFb1QIaqiCRIdfzBwzTed+pCTCoiS+CYA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2533,14 +2530,13 @@ } }, "node_modules/@oxlint/binding-darwin-x64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-x64/-/binding-darwin-x64-1.71.0.tgz", - "integrity": "sha512-PlLCjS06V0PeJMAJwzjrExw1sYNW9Gch3JtNlcwwZDXGlTYDuwHNN89zYH8LTXFfgkVtsYvs2nv0FqrzyuFDzg==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-x64/-/binding-darwin-x64-1.73.0.tgz", + "integrity": "sha512-5zx/uPW32TiaOeVY1dQ/H5iOf0K1HOdFKOJhLqGl4o63+i1fpzoqqu/mKtd7OFgFjNCdhlyTGgjVkQTZm1ELcg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" @@ -2550,14 +2546,13 @@ } }, "node_modules/@oxlint/binding-freebsd-x64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-freebsd-x64/-/binding-freebsd-x64-1.71.0.tgz", - "integrity": "sha512-Lhil7bWre0ncxbUoDoxfS0JzpTz17BRQKW7iwoAUY8GJ66+WwJEfYPCFJ1P0WgVZR5/O/b3Q2pENlHOjeXLOGQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-freebsd-x64/-/binding-freebsd-x64-1.73.0.tgz", + "integrity": "sha512-qNe4gKHaGnLuZJ8toUg90JAa0S2vTVvDw+0bRi3q1avXZXDT4u5mMeECf3nD4HYrbdn1O7dXqWut4onY/yx/Xg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" @@ -2567,14 +2562,13 @@ } }, "node_modules/@oxlint/binding-linux-arm-gnueabihf": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.71.0.tgz", - "integrity": "sha512-Oo9/L58PYD3RC0x05d2upAPLllHytTjHQGsnC06P6Ynn7jKkp5mdImQxXdJ3+FnBaKspNpGogzgVsi6g872LiA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.73.0.tgz", + "integrity": "sha512-cCehYh5hTbfShm/fxTD6wwrGUWIpvX+N5OxmAMhFhDeTGXvw+BeNj889tpxsFQ9ZLatQ6wImuY8tsKLZ+FMz7w==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2584,14 +2578,13 @@ } }, "node_modules/@oxlint/binding-linux-arm-musleabihf": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-1.71.0.tgz", - "integrity": "sha512-mSHfyfgJrEbyIR29ejaeS50BdPk+GoNPlC1dckpDiUZbJAIel68sjSMdOt4WY0/gva+ECC7FNITQkxMJU+vSBw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-1.73.0.tgz", + "integrity": "sha512-d5j5GDU/2dMgjVhw7TQT9ITrsIr1Y02KEXKyVGIXUkD+KiaxE9TP65FS2ZdgTBemQvoRL+gSBdbrIm3cQIeacg==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -2601,17 +2594,13 @@ } }, "node_modules/@oxlint/binding-linux-arm64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.71.0.tgz", - "integrity": "sha512-n9yY4M2tiy3aij4AqtlnspzpfdpeT5JQfK2/w2d8oyp5W0FRwOb1dIeX99nORNcxGr08iD9bH8N5XFz3I2iy8w==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.73.0.tgz", + "integrity": "sha512-Eyf1SrP3+yR1DI3OJgOY2Pvrr9dWP9TK37xPaDYycwTtlGlI45erJAVIfH5/m/xosDt6BupJYEFi47bvbTuuyw==", "cpu": [ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2621,17 +2610,13 @@ } }, "node_modules/@oxlint/binding-linux-arm64-musl": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.71.0.tgz", - "integrity": "sha512-fJZrs5sDZtTaPIOiemRQQmo82Ezy+vOGXemPc4Ok7iVVsYsFa7SlW6Z5XN819VfsqBHRm3NJ3rTdnR8+bJYJdQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.73.0.tgz", + "integrity": "sha512-IlT/OJApEDKaMmCooHuncgJZbbCe7T5QIWmTZBEtYscWvzPQuuEinVcid6kwQRVQOUdb7PUCz4jQHnaYXdfJXw==", "cpu": [ "arm64" ], "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2641,17 +2626,13 @@ } }, "node_modules/@oxlint/binding-linux-ppc64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.71.0.tgz", - "integrity": "sha512-cwl7VKGERIy9p+G+AvZdfy/06q0aHXaTt/mMRReC751iuNYJgqKjB7NydXSS30nBT9vtr2tunciOtrR4fD6FUA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.73.0.tgz", + "integrity": "sha512-L+JYcb/vdg5fmcH08V6o0YYLU28cTH1SPNulwJdvK9NK49aXSkYy6oNpKBmddArVOXYqNepriDGiZ04G54kh1Q==", "cpu": [ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2661,17 +2642,13 @@ } }, "node_modules/@oxlint/binding-linux-riscv64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-1.71.0.tgz", - "integrity": "sha512-eZ8ieVXvzGi8jr7+ybQGPK2STw3mldfxZlgA2738iflfB/rzA69sE6m5rDRpQaxC7dpm745Enlh1Tod0QAk9Gg==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-1.73.0.tgz", + "integrity": "sha512-Qtk0g3bKV6OwWjIm7R8kQN1uOZRKQt/MODK2a8QfkwhTpXBD53ozx5XLVWLGDQAVyp2otLW4D2wB98XfAfMPGA==", "cpu": [ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2681,17 +2658,13 @@ } }, "node_modules/@oxlint/binding-linux-riscv64-musl": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-1.71.0.tgz", - "integrity": "sha512-puMDbQYe6+NXwfMusojoA7CXGn2b3utukmd23PQqc1E3XhVCwyZ+FueSMzDYeNgDV2dUfIVXAAKZBcFDeCL6sA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-1.73.0.tgz", + "integrity": "sha512-wX0NQKZVxltkAOVmzFcpOaMpdaUvsq1Eqpx9tkAfl71UdkTlSo1R4AdAnGccR1Fm2+TzFgZ22CyyGuZ41RDr/A==", "cpu": [ "riscv64" ], "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2701,17 +2674,13 @@ } }, "node_modules/@oxlint/binding-linux-s390x-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.71.0.tgz", - "integrity": "sha512-4NJLxBs1ujISCt3L/1FcywLs73PWtJuw+piD6feK2V6h6OS6P7xu9/sWt1DTRLibe6QCzmfZzmM/2HPORoV/Lg==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.73.0.tgz", + "integrity": "sha512-vPe7UGBMWyiLTtnqS4xxgMQFSFGmtQwhwCxuiw6lXygaO6bVt0D8dFVg8Xv05eaiN3ybC0HXXHUAohFMFvqoCQ==", "cpu": [ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2721,17 +2690,13 @@ } }, "node_modules/@oxlint/binding-linux-x64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.71.0.tgz", - "integrity": "sha512-cFDaiR8L3430qp88tfZnvFlt3KotFhR/DlbIL0nHOMMYiG/9Wy4l+6f7t8G8pTa9bd8Lt8+M0y/qjRQ/xcB74g==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.73.0.tgz", + "integrity": "sha512-2CwIWr9cemFC/CbRBWZvuk5mffz6ObmfFkfcC/9rTQ7f+icNhYr2kOjf9Rt8lLvugvkdGDOmkoVoFFHh6ClCTw==", "cpu": [ "x64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2741,17 +2706,13 @@ } }, "node_modules/@oxlint/binding-linux-x64-musl": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-musl/-/binding-linux-x64-musl-1.71.0.tgz", - "integrity": "sha512-orfixdt76KlpNly9z0PkWBBNfwjKz+JFVLP/7wnVchlKNU9Dpt9InU/ZggeSej6fC7qwHmHNOGlhLnQXcYoGuA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-musl/-/binding-linux-x64-musl-1.73.0.tgz", + "integrity": "sha512-nDadfJgg7NBBxG0N560wOe7LLX5QiYp6qBaI7viuk5EUORFBktU/NfV0MbTqU3gTqQDCh4VyxKdo5VADxk9w8Q==", "cpu": [ "x64" ], "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -2761,14 +2722,13 @@ } }, "node_modules/@oxlint/binding-openharmony-arm64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-openharmony-arm64/-/binding-openharmony-arm64-1.71.0.tgz", - "integrity": "sha512-9emQu2lAp6yhPB3XuI+++vR+l/o6JR1X+EpxwcumPdQXBWXEPAsquPGL7l158EqU8SebQMXTUa/S5zN98juyHw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-openharmony-arm64/-/binding-openharmony-arm64-1.73.0.tgz", + "integrity": "sha512-wGjJC+NLH9xP+IKGn9RDW94ojJR/wPbg5WCnQjj/oReaOtCQthr8ws1zICe77JFmo4ouUdeTHHZL/ESGiF6Pmw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openharmony" @@ -2778,14 +2738,13 @@ } }, "node_modules/@oxlint/binding-win32-arm64-msvc": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.71.0.tgz", - "integrity": "sha512-bd5kI8spYwTm3BILDtGhi73zoup5dw8MlPQNT8YB3BD5UIsjNe3K9/4ctrzQMX4SZMoK5HgzVLkLJzacEXB7fA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.73.0.tgz", + "integrity": "sha512-I7X47GPGljw225YUQ5SbC/rb1Kkdrd0yQf0x+hYxeKS6DpfjMbo9ccQPQ6LNY6BoJQ1sHhgDUGuMn5Vg5gHT6w==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -2795,14 +2754,13 @@ } }, "node_modules/@oxlint/binding-win32-ia32-msvc": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.71.0.tgz", - "integrity": "sha512-W4HvOHGzVLHcrmFu+bMrJlho+/yrlX5ZNdJZqGe8MEldkQG+RHYhxxad9P4jvWAYFmIqUA5i9DQ8QsJqSU9GIw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.73.0.tgz", + "integrity": "sha512-5lWj+3h+74Fm1jYOO9qkJA4xkAlZA099DkXppuXsk7UpnpZLttsefrZU469vChGaG6hcSqrkKXQOvMTZtbjeNg==", "cpu": [ "ia32" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -2812,14 +2770,13 @@ } }, "node_modules/@oxlint/binding-win32-x64-msvc": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.71.0.tgz", - "integrity": "sha512-D2kyEIPHk/G/wiZLnwTVC/sVst+T/lKldVOjAFpgTIBUAOlry72e5OiapDbDBF4LfJLkN5ypJb/8Eu6yJzkveQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.73.0.tgz", + "integrity": "sha512-WaNRvh4f6zY9CvUQk2YoA1O90ieWrIklI84+HXFr9Isjz9CSESrdqo/RtIYt4Dll/cAchqGDMehfaZd0vqEFZw==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -3349,6 +3306,326 @@ "@types/node": "*" } }, + "node_modules/@typescript/typescript-aix-ppc64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-aix-ppc64/-/typescript-aix-ppc64-7.0.2.tgz", + "integrity": "sha512-MTKKkWB7p/0E9xi1d1tHtZ5PiLkGEMIq88pK2CubZjOsLtYTLqhgIgi6zepFa+9GHZ6h05NMCkQxGKiPXMxXtQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-darwin-arm64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-darwin-arm64/-/typescript-darwin-arm64-7.0.2.tgz", + "integrity": "sha512-gowzar9MwS/aRWp6f3a4KUqzRjAZjOsmGNCM6LcTgXum+dBfgsBVMN+AgvOCCbguXyick6LJhpBszxMebJ8syA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-darwin-x64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-darwin-x64/-/typescript-darwin-x64-7.0.2.tgz", + "integrity": "sha512-SZ9xZInqApNlNGc9s0W1VSsktYSOe9cFqNOIqmN1Gs8SmkjKZYFt017G4VwPxASInODuAdbTW7sXiFUf893RgA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-freebsd-arm64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-freebsd-arm64/-/typescript-freebsd-arm64-7.0.2.tgz", + "integrity": "sha512-W5NH4y/J0plIIS5b2xvTEkU7JFxyqdMAOgf+Ilhl0vHQXKO5dZoxd+C/jEtq56c4F3wk71RB4BMRQ2XdI+bwYQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-freebsd-x64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-freebsd-x64/-/typescript-freebsd-x64-7.0.2.tgz", + "integrity": "sha512-UMGDx5sTpzNw3WiPebH7l90IWfJggEd+egHt/q6p7/Cm3zqoV7VxkGXt+3DxPIw8CcmvAB0j3sVVfbhX+M4Tpw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-arm": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-arm/-/typescript-linux-arm-7.0.2.tgz", + "integrity": "sha512-gffT3xPz9sR7j/YJExkyPntrI0P2EP9XbOyWzth2/Gs0RstK+90RBcO0ncXoXy/beYll1SXw846Nf2zdnEz0QQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-arm64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-arm64/-/typescript-linux-arm64-7.0.2.tgz", + "integrity": "sha512-Qh4eU4/y3yDjnfjjyPYihMj5/ODIlmt+Bzu17OI+fiSRDW57QmU5SiN63exPRNJPKUzcc1INa1NXdrJ+MqHjUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-loong64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-loong64/-/typescript-linux-loong64-7.0.2.tgz", + "integrity": "sha512-uEHck9i8hoAzXPiYRib1O7miOnz23SxIeVl6F4LXox+qov1K35jHcEW6VHKvZI+pyvl7fZEP4MCU5LYvIq1GuQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-mips64el": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-mips64el/-/typescript-linux-mips64el-7.0.2.tgz", + "integrity": "sha512-R4KvAMnE43W5Qeqb0Ly56O3mWMWIAgsMyz36DCaycd5nbg/9kzm0liw3JocfRqyJY0KPmzFjbswozXyW0DnIYA==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-ppc64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-ppc64/-/typescript-linux-ppc64-7.0.2.tgz", + "integrity": "sha512-DORx5b3sd/4S7eayxm4FQv+A7CrkUIGRaHiwI8oiHTAI1fAPWhF4J0vAlkC8biAlHSVVwxMQ3tjZ2/DVbnQiiA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-riscv64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-riscv64/-/typescript-linux-riscv64-7.0.2.tgz", + "integrity": "sha512-wf0jqEDOjrPRnKwYRyyJDRo11KMbvMFrU+q4zqKyChODBzvlkbhNQfKvLxQCcwTpdDaXSHZTVuh0JoCrKCUMHQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-s390x": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-s390x/-/typescript-linux-s390x-7.0.2.tgz", + "integrity": "sha512-IkwJc3L7yhytWd/ewjyxNDfOmswCm9GWMJT/ue/dU4aZNbwZeYAetq42VyLmsmSjvoX7z74X6ZaYCtzAr0EuGw==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-linux-x64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-linux-x64/-/typescript-linux-x64-7.0.2.tgz", + "integrity": "sha512-EYdf2cNg7rgCWJnxCdJ+F3V39O8ihb37eHAu1LK8oAFizgTQbPOK7zHHXbPt8rX24COqODXeI3sIf0fCXG7H/A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-netbsd-arm64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-netbsd-arm64/-/typescript-netbsd-arm64-7.0.2.tgz", + "integrity": "sha512-+polYF4MF04aPpO5FTkHran9yUQDSXqy5GiSDKpsll5jy3l3+g9QLhpf39T+ePtefhXLOGrLl0QIjkQP6VnelA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-netbsd-x64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-netbsd-x64/-/typescript-netbsd-x64-7.0.2.tgz", + "integrity": "sha512-8YIT0EHM/3dq10ZOVF/A7pc/YSMtbcecct4rWtexrnSCHOPcpC2KTLXfTCR6vDpnSiY12heNb1GiN/wu+T/FyA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-openbsd-arm64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-openbsd-arm64/-/typescript-openbsd-arm64-7.0.2.tgz", + "integrity": "sha512-APT8+ClYnuYm1u9+kgGXoMj2VzWzcymwh2gNSQVySHfkRDGOTVkoWLjCmOQSaO+PoqQ57B0flRp9SA+7GnnkzQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-openbsd-x64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-openbsd-x64/-/typescript-openbsd-x64-7.0.2.tgz", + "integrity": "sha512-yX7s+Q0Dln0Dt9tEzZsAjXXR/+ytBM7AlglaqyeMPxQszJ1JhlJdZ6jLA+IzldHtflX81em7lDao1xXu+aRRkg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-sunos-x64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-sunos-x64/-/typescript-sunos-x64-7.0.2.tgz", + "integrity": "sha512-dLJDGaLZ1D4HPQn62u1n8mBDkJREwMsAkCdkwd4Ieqw+x3TUyTsqY0YiBCtE6H6OzzgGk3iuZ3vFWRS+E8/d1g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-win32-arm64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-win32-arm64/-/typescript-win32-arm64-7.0.2.tgz", + "integrity": "sha512-Gyl1Vy6OsWesLzmq+EP0Fb7b4Nid5232AvcA2SFcdYreldpNtYFFofPjnt62y9hQy7VTaZp65ICJjuAQRaVcIQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=16.20.0" + } + }, + "node_modules/@typescript/typescript-win32-x64": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@typescript/typescript-win32-x64/-/typescript-win32-x64-7.0.2.tgz", + "integrity": "sha512-0BQ3HkAHHlKLSp1qRvf3SUhGpGsDuhB/jgFw75guyqbxJqEaS0Cw/VFO8i2nHglJUzQCRtMMR/IBAKE3ETMC4g==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=16.20.0" + } + }, "node_modules/@vscode/diff": { "version": "0.0.2-7", "resolved": "https://registry.npmjs.org/@vscode/diff/-/diff-0.0.2-7.tgz", @@ -4708,9 +4985,9 @@ "optional": true }, "node_modules/nanoid": { - "version": "3.3.12", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", - "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "version": "3.3.15", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.15.tgz", + "integrity": "sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA==", "dev": true, "funding": [ { @@ -4718,7 +4995,6 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -4778,11 +5054,10 @@ } }, "node_modules/oxlint": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/oxlint/-/oxlint-1.71.0.tgz", - "integrity": "sha512-U1m1X+C0vDj7DC1e13IoZULzEcPczE7UOMTs8VlZGHUEIUaSTZKo5qkPsQEfzpgnQ29Pea/w3Xntk62UCecxZw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/oxlint/-/oxlint-1.73.0.tgz", + "integrity": "sha512-u91G9TJzU6yqKWNZUYprQB07W7YvntZXaRxQ6CkoytepYhLWUXWsr1M8zUJ34VatNPuUAr3Z8GH+O2A331CluQ==", "dev": true, - "license": "MIT", "bin": { "oxlint": "bin/oxlint" }, @@ -4793,28 +5068,28 @@ "url": "https://github.com/sponsors/Boshen" }, "optionalDependencies": { - "@oxlint/binding-android-arm-eabi": "1.71.0", - "@oxlint/binding-android-arm64": "1.71.0", - "@oxlint/binding-darwin-arm64": "1.71.0", - "@oxlint/binding-darwin-x64": "1.71.0", - "@oxlint/binding-freebsd-x64": "1.71.0", - "@oxlint/binding-linux-arm-gnueabihf": "1.71.0", - "@oxlint/binding-linux-arm-musleabihf": "1.71.0", - "@oxlint/binding-linux-arm64-gnu": "1.71.0", - "@oxlint/binding-linux-arm64-musl": "1.71.0", - "@oxlint/binding-linux-ppc64-gnu": "1.71.0", - "@oxlint/binding-linux-riscv64-gnu": "1.71.0", - "@oxlint/binding-linux-riscv64-musl": "1.71.0", - "@oxlint/binding-linux-s390x-gnu": "1.71.0", - "@oxlint/binding-linux-x64-gnu": "1.71.0", - "@oxlint/binding-linux-x64-musl": "1.71.0", - "@oxlint/binding-openharmony-arm64": "1.71.0", - "@oxlint/binding-win32-arm64-msvc": "1.71.0", - "@oxlint/binding-win32-ia32-msvc": "1.71.0", - "@oxlint/binding-win32-x64-msvc": "1.71.0" + "@oxlint/binding-android-arm-eabi": "1.73.0", + "@oxlint/binding-android-arm64": "1.73.0", + "@oxlint/binding-darwin-arm64": "1.73.0", + "@oxlint/binding-darwin-x64": "1.73.0", + "@oxlint/binding-freebsd-x64": "1.73.0", + "@oxlint/binding-linux-arm-gnueabihf": "1.73.0", + "@oxlint/binding-linux-arm-musleabihf": "1.73.0", + "@oxlint/binding-linux-arm64-gnu": "1.73.0", + "@oxlint/binding-linux-arm64-musl": "1.73.0", + "@oxlint/binding-linux-ppc64-gnu": "1.73.0", + "@oxlint/binding-linux-riscv64-gnu": "1.73.0", + "@oxlint/binding-linux-riscv64-musl": "1.73.0", + "@oxlint/binding-linux-s390x-gnu": "1.73.0", + "@oxlint/binding-linux-x64-gnu": "1.73.0", + "@oxlint/binding-linux-x64-musl": "1.73.0", + "@oxlint/binding-openharmony-arm64": "1.73.0", + "@oxlint/binding-win32-arm64-msvc": "1.73.0", + "@oxlint/binding-win32-ia32-msvc": "1.73.0", + "@oxlint/binding-win32-x64-msvc": "1.73.0" }, "peerDependencies": { - "oxlint-tsgolint": ">=0.22.1", + "oxlint-tsgolint": ">=0.24.0", "vite-plus": "*" }, "peerDependenciesMeta": { @@ -4856,8 +5131,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - "dev": true, - "license": "ISC" + "dev": true }, "node_modules/picomatch": { "version": "4.0.4", @@ -4873,9 +5147,9 @@ } }, "node_modules/postcss": { - "version": "8.5.15", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz", - "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "version": "8.5.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.16.tgz", + "integrity": "sha512-vuwillviilfKZsg0VGj5R/YwwcHx4SLsIOI/7K6mQkWx+l5cUHTjj5g0AasTBcyXsbfTgrwsUNmVUb5xVwyPwg==", "dev": true, "funding": [ { @@ -4891,7 +5165,6 @@ "url": "https://github.com/sponsors/ai" } ], - "license": "MIT", "dependencies": { "nanoid": "^3.3.12", "picocolors": "^1.1.1", @@ -5213,7 +5486,6 @@ "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "dev": true, - "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" } @@ -5424,16 +5696,37 @@ } }, "node_modules/typescript": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", - "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-7.0.2.tgz", + "integrity": "sha512-8FYau96o3NKOhbjKi/qNvG/W5jhzxkbdm5sj9AbZ/5T5sWqn3hJgLfGx27sRKZWTvyzCP8dLRBTf5tBTSRVUNA==", "dev": true, "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" + "tsc": "bin/tsc" }, "engines": { - "node": ">=14.17" + "node": ">=16.20.0" + }, + "optionalDependencies": { + "@typescript/typescript-aix-ppc64": "7.0.2", + "@typescript/typescript-darwin-arm64": "7.0.2", + "@typescript/typescript-darwin-x64": "7.0.2", + "@typescript/typescript-freebsd-arm64": "7.0.2", + "@typescript/typescript-freebsd-x64": "7.0.2", + "@typescript/typescript-linux-arm": "7.0.2", + "@typescript/typescript-linux-arm64": "7.0.2", + "@typescript/typescript-linux-loong64": "7.0.2", + "@typescript/typescript-linux-mips64el": "7.0.2", + "@typescript/typescript-linux-ppc64": "7.0.2", + "@typescript/typescript-linux-riscv64": "7.0.2", + "@typescript/typescript-linux-s390x": "7.0.2", + "@typescript/typescript-linux-x64": "7.0.2", + "@typescript/typescript-netbsd-arm64": "7.0.2", + "@typescript/typescript-netbsd-x64": "7.0.2", + "@typescript/typescript-openbsd-arm64": "7.0.2", + "@typescript/typescript-openbsd-x64": "7.0.2", + "@typescript/typescript-sunos-x64": "7.0.2", + "@typescript/typescript-win32-arm64": "7.0.2", + "@typescript/typescript-win32-x64": "7.0.2" } }, "node_modules/undici-types": { @@ -5466,15 +5759,15 @@ } }, "node_modules/vite": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/vite/-/vite-8.1.0.tgz", - "integrity": "sha512-BuJcQK/56NQTWDGn4ABea3q4SSBdNPWwNZKTkkUpcMPnLoquSYH8llRtSUIgoL1KSCpHt5eghLShn50mH36y7Q==", + "version": "8.1.3", + "resolved": "https://registry.npmjs.org/vite/-/vite-8.1.3.tgz", + "integrity": "sha512-Ds+gBRbj0lwRO2Y5hwnUBdxSwlAve9LeRyU4sNnAr0ewW0gWF0n5bgXgUzbgZ49MV9BVUAQUFYVcDUcilUExMA==", "dev": true, "dependencies": { "lightningcss": "^1.32.0", "picomatch": "^4.0.4", - "postcss": "^8.5.15", - "rolldown": "~1.1.2", + "postcss": "^8.5.16", + "rolldown": "~1.1.3", "tinyglobby": "^0.2.17" }, "bin": { diff --git a/demo/package.json b/demo/package.json index 62d4f370..d96940a6 100644 --- a/demo/package.json +++ b/demo/package.json @@ -22,9 +22,9 @@ "@types/node": "^25.9.3", "@types/wicg-file-system-access": "^2023.10.7", "@types/ws": "^8.18.1", - "oxlint": "^1.71.0", - "typescript": "~6.0.3", - "vite": "~8.1.0", + "oxlint": "^1.73.0", + "typescript": "~7.0.2", + "vite": "~8.1.3", "@codingame/monaco-vscode-rollup-extension-directory-plugin": "file:../dist/packages/monaco-vscode-rollup-extension-directory-plugin", "@codingame/monaco-vscode-rollup-vsix-plugin": "file:../dist/packages/monaco-vscode-rollup-vsix-plugin" }, diff --git a/demo/patches/vite+8.0.16.patch b/demo/patches/vite+8.1.3.patch similarity index 93% rename from demo/patches/vite+8.0.16.patch rename to demo/patches/vite+8.1.3.patch index f1ecb50f..4ed5c39b 100644 --- a/demo/patches/vite+8.0.16.patch +++ b/demo/patches/vite+8.1.3.patch @@ -1,8 +1,8 @@ diff --git a/node_modules/vite/dist/node/chunks/logger.js b/node_modules/vite/dist/node/chunks/logger.js -index bcaf830..8f10b1b 100644 +index 6e35cb4..f2206a1 100644 --- a/node_modules/vite/dist/node/chunks/logger.js +++ b/node_modules/vite/dist/node/chunks/logger.js -@@ -195,6 +195,7 @@ const SPECIAL_QUERY_RE = /[?&](?:worker|sharedworker|raw|url)\b/; +@@ -202,6 +202,7 @@ const SPECIAL_QUERY_RE = /[?&](?:worker|sharedworker|raw|url)\b/; * Prefix for resolved fs paths, since windows paths may not be valid as URLs. */ const FS_PREFIX = `/@fs/`; @@ -10,23 +10,44 @@ index bcaf830..8f10b1b 100644 const CLIENT_PUBLIC_PATH = `/@vite/client`; const ENV_PUBLIC_PATH = `/@vite/env`; const VITE_PACKAGE_DIR = resolve(fileURLToPath(new URL("../../../src/node/constants.ts", import.meta.url)), "../../.."); -@@ -354,4 +355,4 @@ function printServerUrls(urls, optionsHost, info) { +@@ -361,4 +362,4 @@ function printServerUrls(urls, optionsHost, info) { if (urls.network.length === 0 && optionsHost === void 0) info(import_picocolors.default.dim(` ${import_picocolors.default.green("➜")} ${import_picocolors.default.bold("Network")}: use `) + import_picocolors.default.bold("--host") + import_picocolors.default.dim(" to expose")); } //#endregion -export { OPTIMIZABLE_ENTRY_RE as A, __esmMin as B, ERR_FILE_NOT_FOUND_IN_OPTIMIZED_DEP_DIR as C, JS_TYPES_RE as D, FS_PREFIX as E, defaultAllowedOrigins as F, __require as H, loopbackHosts as I, wildcardHosts as L, SPECIAL_QUERY_RE as M, VERSION as N, KNOWN_ASSET_TYPES as O, VITE_PACKAGE_DIR as P, require_picocolors as R, ENV_PUBLIC_PATH as S, ESBUILD_BASELINE_WIDELY_AVAILABLE_TARGET as T, __toCommonJS as U, __exportAll as V, __toESM as W, DEFAULT_SERVER_CONDITIONS as _, CLIENT_ENTRY as a, DEV_PROD_CONDITION as b, DEFAULT_ASSETS_INLINE_LIMIT as c, DEFAULT_CLIENT_MAIN_FIELDS as d, DEFAULT_CONFIG_FILES as f, DEFAULT_PREVIEW_PORT as g, DEFAULT_EXTERNAL_CONDITIONS as h, CLIENT_DIR as i, ROLLUP_HOOKS as j, METADATA_FILENAME as k, DEFAULT_ASSETS_RE as l, DEFAULT_EXTENSIONS as m, createLogger as n, CLIENT_PUBLIC_PATH as o, DEFAULT_DEV_PORT as p, printServerUrls as r, CSS_LANGS_RE as s, LogLevels as t, DEFAULT_CLIENT_CONDITIONS as u, DEFAULT_SERVER_MAIN_FIELDS as v, ERR_OPTIMIZE_DEPS_PROCESSING_ERROR as w, ENV_ENTRY as x, DEP_VERSION_RE as y, __commonJSMin as z }; +export { OPTIMIZABLE_ENTRY_RE as A, __esmMin as B, ERR_FILE_NOT_FOUND_IN_OPTIMIZED_DEP_DIR as C, JS_TYPES_RE as D, FS_PREFIX as E, FS_RAW_PREFIX, defaultAllowedOrigins as F, __require as H, loopbackHosts as I, wildcardHosts as L, SPECIAL_QUERY_RE as M, VERSION as N, KNOWN_ASSET_TYPES as O, VITE_PACKAGE_DIR as P, require_picocolors as R, ENV_PUBLIC_PATH as S, ESBUILD_BASELINE_WIDELY_AVAILABLE_TARGET as T, __toCommonJS as U, __exportAll as V, __toESM as W, DEFAULT_SERVER_CONDITIONS as _, CLIENT_ENTRY as a, DEV_PROD_CONDITION as b, DEFAULT_ASSETS_INLINE_LIMIT as c, DEFAULT_CLIENT_MAIN_FIELDS as d, DEFAULT_CONFIG_FILES as f, DEFAULT_PREVIEW_PORT as g, DEFAULT_EXTERNAL_CONDITIONS as h, CLIENT_DIR as i, ROLLUP_HOOKS as j, METADATA_FILENAME as k, DEFAULT_ASSETS_RE as l, DEFAULT_EXTENSIONS as m, createLogger as n, CLIENT_PUBLIC_PATH as o, DEFAULT_DEV_PORT as p, printServerUrls as r, CSS_LANGS_RE as s, LogLevels as t, DEFAULT_CLIENT_CONDITIONS as u, DEFAULT_SERVER_MAIN_FIELDS as v, ERR_OPTIMIZE_DEPS_PROCESSING_ERROR as w, ENV_ENTRY as x, DEP_VERSION_RE as y, __commonJSMin as z }; diff --git a/node_modules/vite/dist/node/chunks/node.js b/node_modules/vite/dist/node/chunks/node.js -index 668fc3e..449bc9b 100644 +index 64bb3ec..240042c 100644 --- a/node_modules/vite/dist/node/chunks/node.js +++ b/node_modules/vite/dist/node/chunks/node.js @@ -1,4 +1,4 @@ -import { A as OPTIMIZABLE_ENTRY_RE, B as __esmMin, C as ERR_FILE_NOT_FOUND_IN_OPTIMIZED_DEP_DIR, D as JS_TYPES_RE, E as FS_PREFIX, F as defaultAllowedOrigins, H as __require, I as loopbackHosts, L as wildcardHosts, M as SPECIAL_QUERY_RE, N as VERSION, O as KNOWN_ASSET_TYPES, P as VITE_PACKAGE_DIR, R as require_picocolors, S as ENV_PUBLIC_PATH, T as ESBUILD_BASELINE_WIDELY_AVAILABLE_TARGET, U as __toCommonJS, V as __exportAll, W as __toESM, _ as DEFAULT_SERVER_CONDITIONS, a as CLIENT_ENTRY, b as DEV_PROD_CONDITION, c as DEFAULT_ASSETS_INLINE_LIMIT, d as DEFAULT_CLIENT_MAIN_FIELDS, f as DEFAULT_CONFIG_FILES, g as DEFAULT_PREVIEW_PORT, h as DEFAULT_EXTERNAL_CONDITIONS, i as CLIENT_DIR, j as ROLLUP_HOOKS, k as METADATA_FILENAME, l as DEFAULT_ASSETS_RE, m as DEFAULT_EXTENSIONS, n as createLogger, o as CLIENT_PUBLIC_PATH, p as DEFAULT_DEV_PORT, r as printServerUrls, s as CSS_LANGS_RE, t as LogLevels, u as DEFAULT_CLIENT_CONDITIONS, v as DEFAULT_SERVER_MAIN_FIELDS, w as ERR_OPTIMIZE_DEPS_PROCESSING_ERROR, x as ENV_ENTRY, y as DEP_VERSION_RE, z as __commonJSMin } from "./logger.js"; +import { A as OPTIMIZABLE_ENTRY_RE, B as __esmMin, C as ERR_FILE_NOT_FOUND_IN_OPTIMIZED_DEP_DIR, D as JS_TYPES_RE, E as FS_PREFIX, FS_RAW_PREFIX, F as defaultAllowedOrigins, H as __require, I as loopbackHosts, L as wildcardHosts, M as SPECIAL_QUERY_RE, N as VERSION, O as KNOWN_ASSET_TYPES, P as VITE_PACKAGE_DIR, R as require_picocolors, S as ENV_PUBLIC_PATH, T as ESBUILD_BASELINE_WIDELY_AVAILABLE_TARGET, U as __toCommonJS, V as __exportAll, W as __toESM, _ as DEFAULT_SERVER_CONDITIONS, a as CLIENT_ENTRY, b as DEV_PROD_CONDITION, c as DEFAULT_ASSETS_INLINE_LIMIT, d as DEFAULT_CLIENT_MAIN_FIELDS, f as DEFAULT_CONFIG_FILES, g as DEFAULT_PREVIEW_PORT, h as DEFAULT_EXTERNAL_CONDITIONS, i as CLIENT_DIR, j as ROLLUP_HOOKS, k as METADATA_FILENAME, l as DEFAULT_ASSETS_RE, m as DEFAULT_EXTENSIONS, n as createLogger, o as CLIENT_PUBLIC_PATH, p as DEFAULT_DEV_PORT, r as printServerUrls, s as CSS_LANGS_RE, t as LogLevels, u as DEFAULT_CLIENT_CONDITIONS, v as DEFAULT_SERVER_MAIN_FIELDS, w as ERR_OPTIMIZE_DEPS_PROCESSING_ERROR, x as ENV_ENTRY, y as DEP_VERSION_RE, z as __commonJSMin } from "./logger.js"; - import { builtinModules, createRequire } from "node:module"; + import { Module, builtinModules, createRequire } from "node:module"; import { parseAst, parseAstAsync } from "rolldown/parseAst"; import { esmExternalRequirePlugin, esmExternalRequirePlugin as esmExternalRequirePlugin$1 } from "rolldown/plugins"; -@@ -19207,12 +19207,12 @@ function assetPlugin(config) { +@@ -19511,17 +19511,17 @@ function serveStaticMiddleware(server) { + } + }; + } +-function serveRawFsMiddleware(server) { ++function serveRawFsMiddleware(server, prefix) { + const serveFromRoot = build_default$1("/", sirvOptions({ + config: server.config, + getHeaders: () => server.config.server.headers + })); + return function viteServeRawFsMiddleware(req, res, next) { +- if (req.url.startsWith(FS_PREFIX)) { ++ if (req.url.startsWith(prefix)) { + const url = new URL(req.url, "http://example.com"); + const pathname = decodeURIIfPossible(url.pathname); + if (pathname === void 0) return next(); +- let newPathname = pathname.slice(FS_PREFIX.length); ++ let newPathname = pathname.slice(prefix.length); + if (isWindows) newPathname = newPathname.replace(/^[A-Z]:/i, ""); + url.pathname = encodeURI(newPathname); + req.url = url.href.slice(url.origin.length); +@@ -20504,12 +20504,12 @@ function assetPlugin(config) { } }; } @@ -42,7 +63,7 @@ index 668fc3e..449bc9b 100644 const config = environment.getTopLevelConfig(); const publicFile = checkPublicFile(id, config); if (inlineRE$3.test(id)) { -@@ -19228,6 +19228,7 @@ async function fileToDevUrl(environment, id, asFileUrl = false) { +@@ -20525,6 +20525,7 @@ async function fileToDevUrl(environment, id, asFileUrl = false) { if (asFileUrl) return pathToFileURL(cleanedId).href; let rtn; if (publicFile) rtn = id; @@ -50,28 +71,7 @@ index 668fc3e..449bc9b 100644 else if (id.startsWith(withTrailingSlash(config.root))) rtn = "/" + path.posix.relative(config.root, id); else rtn = path.posix.join(FS_PREFIX, id); return joinUrlSegments(joinUrlSegments(config.server.origin ?? "", config.decodedBase), removeLeadingSlash(rtn)); -@@ -24203,17 +24204,17 @@ function serveStaticMiddleware(server) { - } - }; - } --function serveRawFsMiddleware(server) { -+function serveRawFsMiddleware(server, prefix) { - const serveFromRoot = build_default$1("/", sirvOptions({ - config: server.config, - getHeaders: () => server.config.server.headers - })); - return function viteServeRawFsMiddleware(req, res, next) { -- if (req.url.startsWith(FS_PREFIX)) { -+ if (req.url.startsWith(prefix)) { - const url = new URL(req.url, "http://example.com"); - const pathname = decodeURIIfPossible(url.pathname); - if (pathname === void 0) return next(); -- let newPathname = pathname.slice(FS_PREFIX.length); -+ let newPathname = pathname.slice(prefix.length); - if (isWindows) newPathname = newPathname.replace(/^[A-Z]:/i, ""); - url.pathname = encodeURI(newPathname); - req.url = url.href.slice(url.origin.length); -@@ -26455,8 +26456,9 @@ async function _createServer(inlineConfig = {}, options) { +@@ -25590,8 +25591,9 @@ async function _createServer(inlineConfig = {}, options) { middlewares.use(triggerLazyBundlingMiddleware(server)); middlewares.use(memoryFilesMiddleware(server)); } else { @@ -82,7 +82,7 @@ index 668fc3e..449bc9b 100644 middlewares.use(serveStaticMiddleware(server)); } if (config.appType === "spa" || config.appType === "mpa") middlewares.use(htmlFallbackMiddleware(root, config.appType === "spa", server.environments.client)); -@@ -28715,9 +28717,9 @@ function assetImportMetaUrlPlugin(config) { +@@ -28070,9 +28072,9 @@ function assetImportMetaUrlPlugin(config) { if (file) try { if (publicDir && isParentDirectory(publicDir, file)) { const publicPath = "/" + path.posix.relative(publicDir, file); @@ -94,7 +94,7 @@ index 668fc3e..449bc9b 100644 if (tryStatSync(file)?.isFile()) this.addWatchFile(file); } } catch {} -@@ -31459,7 +31461,7 @@ function rolldownDepPlugin(environment, qualified, external) { +@@ -30821,7 +30823,7 @@ function rolldownDepPlugin(environment, qualified, external) { const rawUrl = code.slice(urlStart, urlEnd); if (rawUrl[0] === "`" && rawUrl.includes("${")) continue; const url = rawUrl.slice(1, -1); diff --git a/package-lock.json b/package-lock.json index 5295b686..14f62a84 100644 --- a/package-lock.json +++ b/package-lock.json @@ -38,7 +38,7 @@ "kerberos": "2.1.1", "keytar": "^7.9.0", "marked": "~14.0.0", - "memfs": "^4.57.8", + "memfs": "^4.64.0", "mime-types": "^3.0.2", "node-pty": "^1.2.0-beta.13", "tas-client": "0.3.1", @@ -60,7 +60,7 @@ "@codingame/commitlint-config-codingame": "^1.2.1", "@codingame/semantic-release-config-github": "^2.2.1", "@codingame/tsconfig": "^1.2.1", - "@commitlint/cli": "^21.1.0", + "@commitlint/cli": "^21.2.1", "@rollup/plugin-commonjs": "^29.0.3", "@rollup/plugin-dynamic-import-vars": "^2.1.5", "@rollup/plugin-json": "^6.1.0", @@ -83,19 +83,19 @@ "fast-glob": "^3.3.3", "graceful-fs": "^4.2.11", "js-cleanup": "^1.2.0", - "oxlint": "^1.71.0", + "oxlint": "^1.73.0", "package-json": "^10.0.1", "patch-package": "^8.0.1", "postcss-url": "^10.1.4", - "prettier": "^3.9.3", + "prettier": "^3.9.4", "recast": "^0.23.12", "rollup": "^4.62.2", "rollup-plugin-copy": "^3.5.0", "rollup-plugin-dts": "^6.4.1", "semantic-release": "25.0.5", "ts-morph": "^28.0.0", - "tsx": "^4.22.4", - "type-fest": "^5.7.0", + "tsx": "^4.23.0", + "type-fest": "^5.8.0", "typescript": "^6.0.3", "vscode-oniguruma": "1.7.0", "vscode-semver": "npm:semver@=5.5.0", @@ -208,31 +208,7 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/@babel/helper-string-parser": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core/node_modules/@babel/types": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/generator": { + "node_modules/@babel/core/node_modules/@babel/generator": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", @@ -249,54 +225,61 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/core/node_modules/@babel/helper-globals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/@babel/types": { + "node_modules/@babel/core/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" - }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-annotate-as-pure": { + "node_modules/@babel/core/node_modules/@babel/template": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", - "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-annotate-as-pure/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/core/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-annotate-as-pure/node_modules/@babel/types": { + "node_modules/@babel/core/node_modules/@babel/types": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", @@ -359,42 +342,37 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-create-regexp-features-plugin": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.29.7.tgz", - "integrity": "sha512-907Uymvqgg1dwUA+7IGwFAOSYzQOuzPXKNJ1yxzwPffzkYFg2q2eHi1fIOs6sXkG9NbIUMunnUlkYsfRFNvomg==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.29.7", - "regexpu-core": "^6.3.1", - "semver": "^6.3.1" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz", - "integrity": "sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==", + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.28.6", - "@babel/helper-plugin-utils": "^7.28.6", - "debug": "^4.4.3", - "lodash.debounce": "^4.0.8", - "resolve": "^1.22.11" + "@babel/types": "^7.29.7" }, - "peerDependencies": { - "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/helper-globals": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-globals": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", @@ -404,7 +382,7 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-member-expression-to-functions": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-member-expression-to-functions": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.29.7.tgz", "integrity": "sha512-j+7JYmk1JYDtACIGj0QJqqWZjoUpMoEikQGADMaHgCMCSDqd2+P32rfcibUNrGOMWrlzK1WJBdxrB3JJQZwWtg==", @@ -418,73 +396,78 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-member-expression-to-functions/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-optimise-call-expression": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.29.7.tgz", + "integrity": "sha512-+kmGVjcT9RGYzoDwdwEqEvGgKe3BYq+O1iGzjFubaNgZHwYHP6lsF2Yghf4kEuv9BV7tYDZ913aBW9am6YKong==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-member-expression-to-functions/node_modules/@babel/types": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-skip-transparent-expression-wrappers": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-module-transforms": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", - "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-module-imports": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7", - "@babel/traverse": "^7.29.7" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-module-imports": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/template": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", - "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/traverse": "^7.29.7", + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-module-transforms/node_modules/@babel/types": { + "node_modules/@babel/helper-create-class-features-plugin/node_modules/@babel/types": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", @@ -498,10 +481,28 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-optimise-call-expression": { + "node_modules/@babel/helper-create-regexp-features-plugin": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.29.7.tgz", - "integrity": "sha512-+kmGVjcT9RGYzoDwdwEqEvGgKe3BYq+O1iGzjFubaNgZHwYHP6lsF2Yghf4kEuv9BV7tYDZ913aBW9am6YKong==", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.29.7.tgz", + "integrity": "sha512-907Uymvqgg1dwUA+7IGwFAOSYzQOuzPXKNJ1yxzwPffzkYFg2q2eHi1fIOs6sXkG9NbIUMunnUlkYsfRFNvomg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "regexpu-core": "^6.3.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", "dev": true, "license": "MIT", "dependencies": { @@ -511,7 +512,7 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-optimise-call-expression/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/helper-string-parser": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", @@ -521,7 +522,7 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-optimise-call-expression/node_modules/@babel/types": { + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/@babel/types": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", @@ -535,25 +536,32 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", - "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", + "node_modules/@babel/helper-define-polyfill-provider": { + "version": "0.6.8", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.8.tgz", + "integrity": "sha512-47UwBLPpQi1NoWzLuHNjRoHlYXMwIJoBf7MFou6viC/sIHWYygpvr0B6IAyh5sBdA2nr2LPIRww8lfaUVQINBA==", "dev": true, "license": "MIT", - "engines": { - "node": ">=6.9.0" + "dependencies": { + "@babel/helper-compilation-targets": "^7.28.6", + "@babel/helper-plugin-utils": "^7.28.6", + "debug": "^4.4.3", + "lodash.debounce": "^4.0.8", + "resolve": "^1.22.11" + }, + "peerDependencies": { + "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/@babel/helper-remap-async-to-generator": { + "node_modules/@babel/helper-module-transforms": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.29.7.tgz", - "integrity": "sha512-16AMiW26DbXWBbr3B8wNozKM0ydMLB892vaOaJW/fPJdnT8vJk5sdkQcU/isqUxyCE0cEoa8wZOcbgDuC4b6Og==", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.29.7", - "@babel/helper-wrap-function": "^7.29.7", + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", "@babel/traverse": "^7.29.7" }, "engines": { @@ -563,28 +571,37 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-replace-supers": { + "node_modules/@babel/helper-module-transforms/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.29.7.tgz", - "integrity": "sha512-atfGXWSeCiF4DnKZIfmJfQRkSw9b9gNNXR1kqKjbhG4pGYCOnkp8OcTB8E3NXjBu8NpheSnOeNKz8KT7UNFTmQ==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-member-expression-to-functions": "^7.29.7", - "@babel/helper-optimise-call-expression": "^7.29.7", - "@babel/traverse": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-globals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", - "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", "dev": true, "license": "MIT", "dependencies": { @@ -595,7 +612,7 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/helper-module-transforms/node_modules/@babel/helper-string-parser": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", @@ -605,143 +622,167 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-skip-transparent-expression-wrappers/node_modules/@babel/types": { + "node_modules/@babel/helper-module-transforms/node_modules/@babel/template": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-validator-identifier": { + "node_modules/@babel/helper-module-transforms/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", - "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-validator-option": { + "node_modules/@babel/helper-module-transforms/node_modules/@babel/types": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", - "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", "dev": true, "license": "MIT", - "engines": { - "node": ">=6.9.0" - } + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } }, - "node_modules/@babel/helper-wrap-function": { + "node_modules/@babel/helper-plugin-utils": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.29.7.tgz", - "integrity": "sha512-iES0Skag9ERIF68aXadpO6dbXa03mNWK3sEqJaMnLNs/eC3l0lkImdfoy6Y09/SfkpawdAB4RjQ7PVA7TcVGdw==", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.29.7.tgz", + "integrity": "sha512-G7sHYigPY17oO5SYWnfD/0MTBwVR781S/JI643e/JhUYgVgWE/61SoW3NH9KWUKyKq5LVh3npif99Wkt6j86Jw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/template": "^7.29.7", - "@babel/traverse": "^7.29.7", - "@babel/types": "^7.29.7" - }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/helper-remap-async-to-generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.29.7.tgz", + "integrity": "sha512-16AMiW26DbXWBbr3B8wNozKM0ydMLB892vaOaJW/fPJdnT8vJk5sdkQcU/isqUxyCE0cEoa8wZOcbgDuC4b6Og==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-wrap-function": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, "engines": { "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-wrap-function/node_modules/@babel/types": { + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helpers": { + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-annotate-as-pure": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", - "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/template": "^7.29.7", "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helpers/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-globals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/helpers/node_modules/@babel/types": { + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" - }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/parser": { + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/template": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", - "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7" }, - "bin": { - "parser": "bin/babel-parser.js" - }, "engines": { - "node": ">=6.0.0" + "node": ">=6.9.0" } }, - "node_modules/@babel/parser/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/parser/node_modules/@babel/types": { + "node_modules/@babel/helper-remap-async-to-generator/node_modules/@babel/types": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", @@ -755,14 +796,15 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "node_modules/@babel/helper-replace-supers": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.29.7.tgz", - "integrity": "sha512-j8SrR0zLZrRsC09DlszEx8FpMiwukKffYXMK0d5LmOglO7vGG6sz/BR/20yHqWH+Lnn31JTt2PE3hIWNgM2J6w==", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.29.7.tgz", + "integrity": "sha512-atfGXWSeCiF4DnKZIfmJfQRkSw9b9gNNXR1kqKjbhG4pGYCOnkp8OcTB8E3NXjBu8NpheSnOeNKz8KT7UNFTmQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-member-expression-to-functions": "^7.29.7", + "@babel/helper-optimise-call-expression": "^7.29.7", "@babel/traverse": "^7.29.7" }, "engines": { @@ -772,141 +814,1844 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "node_modules/@babel/helper-replace-supers/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.29.7.tgz", - "integrity": "sha512-r8j8escF+U2FUHo0KOhPUdMzUO+jp9fInva6+ACVAF3Y97Ev+5iNZwiqTghmzNeWwDkOPlYuTcfb1vDaoZKmAQ==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "node_modules/@babel/helper-replace-supers/node_modules/@babel/helper-globals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.29.7.tgz", - "integrity": "sha512-GE1TFSiuFeGsCxmYXZl8HwoPrVlwe4rHPFE8weieGKZqnDORK+Ar3vgWMgW+AOxQ6/2TgLSKx9p6W7O4rC6qgQ==", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.29.7.tgz", + "integrity": "sha512-j+7JYmk1JYDtACIGj0QJqqWZjoUpMoEikQGADMaHgCMCSDqd2+P32rfcibUNrGOMWrlzK1WJBdxrB3JJQZwWtg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": { + "node_modules/@babel/helper-replace-supers/node_modules/@babel/helper-optimise-call-expression": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/-/plugin-bugfix-safari-rest-destructuring-rhs-array-7.29.7.tgz", - "integrity": "sha512-oBNVCvnO5tND+xSopWvV8WNGfpTfgP4Zr/YXXSj8zfmcPktp5Ku/aZlsIowgSD4fjmgHn6sGmB9APVsU5zOdhA==", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.29.7.tgz", + "integrity": "sha512-+kmGVjcT9RGYzoDwdwEqEvGgKe3BYq+O1iGzjFubaNgZHwYHP6lsF2Yghf4kEuv9BV7tYDZ913aBW9am6YKong==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "node_modules/@babel/helper-replace-supers/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.29.7.tgz", - "integrity": "sha512-QQt9qKHZ2sg/kivaLr7lnQr8HVrQDdBNSfCsTjiDxRuX/K5ORyKq+Bu8Xr0cDE3Dfkv0cw28Ve0EKyKMvulkOw==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", - "@babel/plugin-transform-optional-chaining": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.13.0" } }, - "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "node_modules/@babel/helper-replace-supers/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.29.7.tgz", - "integrity": "sha512-pn6QacGLgvCcwc+syUhKE/qSjV2D1IHDB84RNxWYSt1mW3K/SCtjinZ2p0cETJxAWBjPy3K/1lHwG5BjjPxNlw==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/traverse": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-replace-supers/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" }, - "peerDependencies": { - "@babel/core": "^7.0.0" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-proposal-decorators": { + "node_modules/@babel/helper-validator-identifier": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.29.7.tgz", - "integrity": "sha512-EtU0Hi3GvrTqD56xKmZvV/uCXK2ZbwVNPNLAquVItcAZpUhkXwWlo3Fmj0c2LxgSf2I8IDULeAepwNP1OefLXg==", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "dev": true, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.29.7.tgz", + "integrity": "sha512-iES0Skag9ERIF68aXadpO6dbXa03mNWK3sEqJaMnLNs/eC3l0lkImdfoy6Y09/SfkpawdAB4RjQ7PVA7TcVGdw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/plugin-syntax-decorators": "^7.29.7" + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-proposal-private-property-in-object": { - "version": "7.21.0-placeholder-for-preset-env.2", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", - "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "node_modules/@babel/helper-wrap-function/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", "dev": true, "license": "MIT", "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-decorators": { + "node_modules/@babel/helper-wrap-function/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-wrap-function/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", + "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", + "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/parser/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.29.7.tgz", + "integrity": "sha512-j8SrR0zLZrRsC09DlszEx8FpMiwukKffYXMK0d5LmOglO7vGG6sz/BR/20yHqWH+Lnn31JTt2PE3hIWNgM2J6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.29.7.tgz", + "integrity": "sha512-r8j8escF+U2FUHo0KOhPUdMzUO+jp9fInva6+ACVAF3Y97Ev+5iNZwiqTghmzNeWwDkOPlYuTcfb1vDaoZKmAQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.29.7.tgz", + "integrity": "sha512-GE1TFSiuFeGsCxmYXZl8HwoPrVlwe4rHPFE8weieGKZqnDORK+Ar3vgWMgW+AOxQ6/2TgLSKx9p6W7O4rC6qgQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/-/plugin-bugfix-safari-rest-destructuring-rhs-array-7.29.7.tgz", + "integrity": "sha512-oBNVCvnO5tND+xSopWvV8WNGfpTfgP4Zr/YXXSj8zfmcPktp5Ku/aZlsIowgSD4fjmgHn6sGmB9APVsU5zOdhA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-safari-rest-destructuring-rhs-array/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.29.7.tgz", + "integrity": "sha512-QQt9qKHZ2sg/kivaLr7lnQr8HVrQDdBNSfCsTjiDxRuX/K5ORyKq+Bu8Xr0cDE3Dfkv0cw28Ve0EKyKMvulkOw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", + "@babel/plugin-transform-optional-chaining": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.13.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.29.7.tgz", + "integrity": "sha512-pn6QacGLgvCcwc+syUhKE/qSjV2D1IHDB84RNxWYSt1mW3K/SCtjinZ2p0cETJxAWBjPy3K/1lHwG5BjjPxNlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-proposal-decorators": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.29.7.tgz", + "integrity": "sha512-EtU0Hi3GvrTqD56xKmZvV/uCXK2ZbwVNPNLAquVItcAZpUhkXwWlo3Fmj0c2LxgSf2I8IDULeAepwNP1OefLXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/plugin-syntax-decorators": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-proposal-private-property-in-object": { + "version": "7.21.0-placeholder-for-preset-env.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", + "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-decorators": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.29.7.tgz", + "integrity": "sha512-9MTTLbF39X6sqM92JPEsoI7++26hjZvzkxKZy64aMhWLH2mPkJ/Q3AV4QLmls3R14FpSpkOwQQfUh962JGQxxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-assertions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.29.7.tgz", + "integrity": "sha512-/An1OCBN93thpBAGyfsK2pcf0jvju1SAtKkL2Ny++B5Sy6sqgzXDQH1cZxWbF96Wuk+bn41MDA9bLd4VVAw6rw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.29.7.tgz", + "integrity": "sha512-zGYcYfq/WmZ4V+kBIXQon9dSSc8ircGZqw9ZaNhhGj9nZkeBu1jHLBDQqYYi5WA9uawvA2sIMbry2nCFhf5Djg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.29.7.tgz", + "integrity": "sha512-TSu8+mHCoEaaCDEZ0I3+6mvTBYR4PCxQwf2z9/r5Tbztv6NaLR3B9thGTTxX2WGuGHJqRiAbKPeGTJ5XWXVg6A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.29.7.tgz", + "integrity": "sha512-ngr+82Sh0xMz25TPCZi+nC2iTzjfCdWS2ONXTp/PtSCHCgaCNBpdMqgvJ2ccdLlClVZ7sisIgB914j/JFe+RZA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-unicode-sets-regex": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", + "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.18.6", + "@babel/helper-plugin-utils": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.29.7.tgz", + "integrity": "sha512-N7zArUXWzAMzm+/N0uPBeVB3Fam5lMxtUwMmDK5f/IBBS7a7p1qeUoxd/6CckXoxUdgsntq1Dh8xNW06maZbDQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.7.tgz", + "integrity": "sha512-d98gXZkgswvkyohMBABkhm3GeXhYj8psWfwQ2C7gtfrKGTykQa/iOIi+JJhwMjPlZ6Vm2XN+DCf3Es1EoG4ZLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-remap-async-to-generator": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-generator-functions/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.29.7.tgz", + "integrity": "sha512-pcUb2SS+RMo9TWVBwKGI5ShtoG7R+zBsFmCKDa6fe8c+hPr3XJlZgoE5j6i8W7gDjhyvy+85vmYexanvXh3d1w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-remap-async-to-generator": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/helper-module-imports": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.29.7.tgz", + "integrity": "sha512-cUSmjh72N+rN4PrkFlN1dJwNCwjVp5d38/CQrEsFggkD10UiFlBFgdH3tv5dNsLuHY+3S8db2xCHjhZcv5WgvA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.29.7.tgz", + "integrity": "sha512-ONyr4+AZhKh8yKWInVxU9AXA9EbsyeLcL6V0dJy6M2/62vuvpGm29zzuymbTpdc451GEpDIdAyPLP3r+P61yKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.29.7.tgz", + "integrity": "sha512-GtcpjFvanPfzNQi3eTitsCqtRRmmqzpy/A+yhTR1HaZo1Ly3EA8ZXxlPyHdR8/IuRMYc3E4wdGBewB2QKQjAaA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-class-static-block": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.29.7.tgz", + "integrity": "sha512-kibJgmEdX2iMwsHY2tSZNDgj8PwIlCQz7FK9KuGKO8zsuoUwSEhoNnNVp/emKWrbY4HeO6kkXfdMqRKKKXBm2A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.12.0" + } + }, + "node_modules/@babel/plugin-transform-classes": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.29.7.tgz", + "integrity": "sha512-qV0OGGBVacduzQHE649JyCneOFI/maT+YKsO+K4Yi3xv2wTPNjM/W2o2gdzMwEAZz7fXNTHAe0NcSg30bIN69g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-replace-supers": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-annotate-as-pure": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-classes/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.29.7.tgz", + "integrity": "sha512-RK7/IyU5phpuCdBAuig5VkzG/EnbDaui5SQGdU9BFrHdV+mV4cUjLMQ9lJDjLNtWHsqtiefpGZUXQP2BiTYMsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/template": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-computed-properties/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.29.7.tgz", + "integrity": "sha512-iPX8aD6H9zV5s7ZsqTdNocPN/MGQ5sSMnElKrktxjJRMnB2jN/1p2+R7GkfD6CAYoVFqy5A4XnSIUeGgJzIWpg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-destructuring/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-destructuring/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.29.7.tgz", + "integrity": "sha512-3qc18hsD2RdZiyJNDNc7HQpv6xbncwh8FYtxNFFzclSyh/trPD9KkVR9BDECUjDLvb7yJVF15GfYUuC+LMkkiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.29.7.tgz", + "integrity": "sha512-6IvRRriEMqnBwD6chtxdLpMYCHWEzN+oL5cyQtjykya19UgzbmKhxmhZgKC/LHxS2nYr9Q/qYPZ5Lr6jOL9+yQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.7.tgz", + "integrity": "sha512-2wiIyo2BjtgU7HufSeDnL9L2O7zr8jmhFKuSr65VpRkUiRKRNpb0mdlk56+XPPKoIrfHqzbMuglDvZun0RISsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-dynamic-import": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.29.7.tgz", + "integrity": "sha512-giOlEm/EFjfjr+te9NsdjkUo2v4f8rS/SXPumRVHAtbNcyNlvtREkU1dZzaIDclNpnaVhlCqRdFKhJBjBikzLg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-explicit-resource-management": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.29.7.tgz", + "integrity": "sha512-Rstj7coNz8sE+7Ju7ihpHLI564lsK5pUpNNlvptCIC/16E/S5hbl6n3kESPKdNRmqEWlpn5xpS5Q2dvXBsySLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.29.7.tgz", + "integrity": "sha512-zFpMOTLZBdW5LfObqcSbL6kefg4R4eLdmvS0wbN9M6D5Mym/sKm9toOoWyVOa+xDjvCnuWcHls2YonXwHvH3CQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-export-namespace-from": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.29.7.tgz", + "integrity": "sha512-24B2nOy2TeJSMheqwPD4DDQOV/elLSIlKxjZt4i05H5AgdPdWR3n18HnNrcJ+j76WJd9gbwb9jPjNYUy6RautA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.29.7.tgz", + "integrity": "sha512-zeSIHh0+E1Um1WJRXCFlHQYu2ieJNdivLLjlBEp+dIBu3S51n+SZZmIXjxnItw6pz56Cn+KvK68BIBVsxq2JiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-for-of/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-for-of/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-for-of/node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-for-of/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-for-of/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-for-of/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-for-of/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.29.7.tgz", + "integrity": "sha512-otRWaHXE6fbAGkePvaj/kvs3HsqXfPhlnzwSOlnFgbqCPMd975dW+4wZ00WFBt+/YlBGcJwNrARQTOJOb4ZrIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/traverse": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/generator": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-function-name/node_modules/@babel/types": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.29.7.tgz", - "integrity": "sha512-9MTTLbF39X6sqM92JPEsoI7++26hjZvzkxKZy64aMhWLH2mPkJ/Q3AV4QLmls3R14FpSpkOwQQfUh962JGQxxg==", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-import-assertions": { + "node_modules/@babel/plugin-transform-json-strings": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.29.7.tgz", - "integrity": "sha512-/An1OCBN93thpBAGyfsK2pcf0jvju1SAtKkL2Ny++B5Sy6sqgzXDQH1cZxWbF96Wuk+bn41MDA9bLd4VVAw6rw==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.29.7.tgz", + "integrity": "sha512-RRnE2+eon1rJAq8MnoF1b5kTpY1vU88twHcvcKMrsqP/jxIRqDVs9iJB5fqPuqyeFAW0wJo4MlUIPpQCq/aRsg==", "dev": true, "license": "MIT", "dependencies": { @@ -919,10 +2664,10 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-import-attributes": { + "node_modules/@babel/plugin-transform-literals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.29.7.tgz", - "integrity": "sha512-zGYcYfq/WmZ4V+kBIXQon9dSSc8ircGZqw9ZaNhhGj9nZkeBu1jHLBDQqYYi5WA9uawvA2sIMbry2nCFhf5Djg==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.29.7.tgz", + "integrity": "sha512-DZ/oLP21ZuWx1vKqnoNv6/tvEK48AQOBRai40CX9dTjGluvT/YZCyY3rryDtyUqCEoyNroy5KKPwX2iQCiRvyw==", "dev": true, "license": "MIT", "dependencies": { @@ -935,10 +2680,10 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-jsx": { + "node_modules/@babel/plugin-transform-logical-assignment-operators": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.29.7.tgz", - "integrity": "sha512-TSu8+mHCoEaaCDEZ0I3+6mvTBYR4PCxQwf2z9/r5Tbztv6NaLR3B9thGTTxX2WGuGHJqRiAbKPeGTJ5XWXVg6A==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.29.7.tgz", + "integrity": "sha512-A0H91hh6W8MFRkp5TqJmMr39jzGD1A1E1Ysiv2O06Sfbhkapm+XyIzxWCEh5kqwOZ1/8QZ0dY3SeQ7XBqfJd5Q==", "dev": true, "license": "MIT", "dependencies": { @@ -951,10 +2696,10 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-typescript": { + "node_modules/@babel/plugin-transform-member-expression-literals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.29.7.tgz", - "integrity": "sha512-ngr+82Sh0xMz25TPCZi+nC2iTzjfCdWS2ONXTp/PtSCHCgaCNBpdMqgvJ2ccdLlClVZ7sisIgB914j/JFe+RZA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.29.7.tgz", + "integrity": "sha512-hl1kwFZCCiDyfH25Xmco9jTrkPgnS9pmOzSG7W5I4SaGbLeqKv417hcU2RKmaxoPEgsoJh7ZPOrnPGq99bHoUg==", "dev": true, "license": "MIT", "dependencies": { @@ -967,30 +2712,31 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-syntax-unicode-sets-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz", - "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==", + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.29.7.tgz", + "integrity": "sha512-fxtQoH3m5ywUSIfaH0FGCzWu4McsYon5bD3K4XnskC7f+OyQMj7rsOMi4NvvmJ83WwBAg4UCe+ov4VZlqEvyew==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-arrow-functions": { + "node_modules/@babel/plugin-transform-modules-commonjs": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.29.7.tgz", - "integrity": "sha512-N7zArUXWzAMzm+/N0uPBeVB3Fam5lMxtUwMmDK5f/IBBS7a7p1qeUoxd/6CckXoxUdgsntq1Dh8xNW06maZbDQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.29.7.tgz", + "integrity": "sha512-j0vCldybPC5b5dwCQOJ21uKtHzt7hxLygJTg9eF1ScfaikEDNfzn94XoW5Fi+seBR0nCyL23xaBFFkq7dTM8XQ==", "dev": true, "license": "MIT", "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1000,15 +2746,16 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-async-generator-functions": { + "node_modules/@babel/plugin-transform-modules-systemjs": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.29.7.tgz", - "integrity": "sha512-d98gXZkgswvkyohMBABkhm3GeXhYj8psWfwQ2C7gtfrKGTykQa/iOIi+JJhwMjPlZ6Vm2XN+DCf3Es1EoG4ZLA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.7.tgz", + "integrity": "sha512-TM2ZcQLoG2/y4HODiStCo10DibYhWhGWAwVv+EQKmG/7GFl0N+AAmUiXOMKM+aiJ9XBJ9AHVZBvTzMnJ2sM3cQ==", "dev": true, "license": "MIT", "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-remap-async-to-generator": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7", "@babel/traverse": "^7.29.7" }, "engines": { @@ -1018,49 +2765,78 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-async-to-generator": { + "node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.29.7.tgz", - "integrity": "sha512-pcUb2SS+RMo9TWVBwKGI5ShtoG7R+zBsFmCKDa6fe8c+hPr3XJlZgoE5j6i8W7gDjhyvy+85vmYexanvXh3d1w==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-imports": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-remap-async-to-generator": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/helper-module-imports": { + "node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/helper-globals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", - "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/traverse": "^7.29.7", + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-transform-async-to-generator/node_modules/@babel/types": { + "node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/types": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", @@ -1074,13 +2850,14 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-transform-block-scoped-functions": { + "node_modules/@babel/plugin-transform-modules-umd": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.29.7.tgz", - "integrity": "sha512-cUSmjh72N+rN4PrkFlN1dJwNCwjVp5d38/CQrEsFggkD10UiFlBFgdH3tv5dNsLuHY+3S8db2xCHjhZcv5WgvA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.29.7.tgz", + "integrity": "sha512-B4UkaTK3QpgCwJnrxKfMPKdo92CN7OKXAlpAAnM3UPu0Q0lCCk57ylA9AJbRy2v8dDKOPAAWcoR6CMyeoHwRCA==", "dev": true, "license": "MIT", "dependencies": { + "@babel/helper-module-transforms": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1090,10 +2867,27 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-block-scoping": { + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.29.7.tgz", - "integrity": "sha512-ONyr4+AZhKh8yKWInVxU9AXA9EbsyeLcL6V0dJy6M2/62vuvpGm29zzuymbTpdc451GEpDIdAyPLP3r+P61yKQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.7.tgz", + "integrity": "sha512-vuFoLwr4qnv2xbZ16SQd6uPcH5FNrLHhk/Jzo++0XJFcaDsr4gjJVg6j398oMHiC+83k/GiBzviwF5KBJkPUtQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.29.7.tgz", + "integrity": "sha512-fEo41GmsOUhOBlw8ioo6zvjX5Xc2Lqkzlyfqbpsk3eB6TReV18uhxZ0esfEokVbY2+PVJAQHNKxER6lGrzNd3A==", "dev": true, "license": "MIT", "dependencies": { @@ -1106,14 +2900,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-class-properties": { + "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.29.7.tgz", - "integrity": "sha512-GtcpjFvanPfzNQi3eTitsCqtRRmmqzpy/A+yhTR1HaZo1Ly3EA8ZXxlPyHdR8/IuRMYc3E4wdGBewB2QKQjAaA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.29.7.tgz", + "integrity": "sha512-idmp1dFaekP9GbcMvG24Kvw2BfhFZjHnNJCkV4WuIY4PskJzwI3f1N5OdgYke38T7rftO6ERulFRn2cFeZwRkg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1123,35 +2916,33 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-class-static-block": { + "node_modules/@babel/plugin-transform-numeric-separator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.29.7.tgz", - "integrity": "sha512-kibJgmEdX2iMwsHY2tSZNDgj8PwIlCQz7FK9KuGKO8zsuoUwSEhoNnNVp/emKWrbY4HeO6kkXfdMqRKKKXBm2A==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.29.7.tgz", + "integrity": "sha512-zR7fv/z14OjgHl4AgRtkDBvBMhIzCxqV/qN/2BCRC7LjFwvuzjYe7gDWxC4Wl/SNsLM6SE1IWvRPYMgSJaUvNw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { "node": ">=6.9.0" }, "peerDependencies": { - "@babel/core": "^7.12.0" + "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-classes": { + "node_modules/@babel/plugin-transform-object-rest-spread": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.29.7.tgz", - "integrity": "sha512-qV0OGGBVacduzQHE649JyCneOFI/maT+YKsO+K4Yi3xv2wTPNjM/W2o2gdzMwEAZz7fXNTHAe0NcSg30bIN69g==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.29.7.tgz", + "integrity": "sha512-Ld98jn4c0smUywL57m7SgsHq3OpThOa6LqZJif3G6jYOovPleoFhVrBJ1WegRApSFB2wu4+RelAj9AC9G08Z4A==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.29.7", "@babel/helper-compilation-targets": "^7.29.7", - "@babel/helper-globals": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-replace-supers": "^7.29.7", + "@babel/plugin-transform-destructuring": "^7.29.7", + "@babel/plugin-transform-parameters": "^7.29.7", "@babel/traverse": "^7.29.7" }, "engines": { @@ -1161,32 +2952,100 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-computed-properties": { + "node_modules/@babel/plugin-transform-object-rest-spread/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.29.7.tgz", - "integrity": "sha512-RK7/IyU5phpuCdBAuig5VkzG/EnbDaui5SQGdU9BFrHdV+mV4cUjLMQ9lJDjLNtWHsqtiefpGZUXQP2BiTYMsA==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/template": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread/node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread/node_modules/@babel/template": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread/node_modules/@babel/traverse": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-object-rest-spread/node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-transform-destructuring": { + "node_modules/@babel/plugin-transform-object-super": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.29.7.tgz", - "integrity": "sha512-iPX8aD6H9zV5s7ZsqTdNocPN/MGQ5sSMnElKrktxjJRMnB2jN/1p2+R7GkfD6CAYoVFqy5A4XnSIUeGgJzIWpg==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.29.7.tgz", + "integrity": "sha512-Ea/diGcw0twB5IlZPO5sgET6fJsLJqPABqTuFWIR+iMPGPZJkATEIWx0wa+aEQ5UY1CBQyP/gkAiLEqn1vBiQA==", "dev": true, "license": "MIT", "dependencies": { "@babel/helper-plugin-utils": "^7.29.7", - "@babel/traverse": "^7.29.7" + "@babel/helper-replace-supers": "^7.29.7" }, "engines": { "node": ">=6.9.0" @@ -1195,14 +3054,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-dotall-regex": { + "node_modules/@babel/plugin-transform-optional-catch-binding": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.29.7.tgz", - "integrity": "sha512-3qc18hsD2RdZiyJNDNc7HQpv6xbncwh8FYtxNFFzclSyh/trPD9KkVR9BDECUjDLvb7yJVF15GfYUuC+LMkkiQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.29.7.tgz", + "integrity": "sha512-sLsyndxK2VwX6yNUOakMb7Sh553ZTe/vVM1XJ+9Z5aW1ytsc8xOIwmyk05NNjN60vkc5/KqoTH6hB4V41LJhng==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1212,14 +3070,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-duplicate-keys": { + "node_modules/@babel/plugin-transform-optional-chaining": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.29.7.tgz", - "integrity": "sha512-6IvRRriEMqnBwD6chtxdLpMYCHWEzN+oL5cyQtjykya19UgzbmKhxmhZgKC/LHxS2nYr9Q/qYPZ5Lr6jOL9+yQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.29.7.tgz", + "integrity": "sha512-6GM1dhvK3gNODkXcEcMCOLEDCLSoZ/sBbro2Ax8HURyasQ4NshagQixkRFdh5niI6E4gmA/jYI/4aT7rRos3ZQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" }, "engines": { "node": ">=6.9.0" @@ -1228,127 +3087,109 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": { + "node_modules/@babel/plugin-transform-optional-chaining/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.29.7.tgz", - "integrity": "sha512-2wiIyo2BjtgU7HufSeDnL9L2O7zr8jmhFKuSr65VpRkUiRKRNpb0mdlk56+XPPKoIrfHqzbMuglDvZun0RISsA==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-dynamic-import": { + "node_modules/@babel/plugin-transform-optional-chaining/node_modules/@babel/helper-globals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.29.7.tgz", - "integrity": "sha512-giOlEm/EFjfjr+te9NsdjkUo2v4f8rS/SXPumRVHAtbNcyNlvtREkU1dZzaIDclNpnaVhlCqRdFKhJBjBikzLg==", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-explicit-resource-management": { + "node_modules/@babel/plugin-transform-optional-chaining/node_modules/@babel/helper-skip-transparent-expression-wrappers": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-explicit-resource-management/-/plugin-transform-explicit-resource-management-7.29.7.tgz", - "integrity": "sha512-Rstj7coNz8sE+7Ju7ihpHLI564lsK5pUpNNlvptCIC/16E/S5hbl6n3kESPKdNRmqEWlpn5xpS5Q2dvXBsySLw==", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/plugin-transform-destructuring": "^7.29.7" + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-exponentiation-operator": { + "node_modules/@babel/plugin-transform-optional-chaining/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.29.7.tgz", - "integrity": "sha512-zFpMOTLZBdW5LfObqcSbL6kefg4R4eLdmvS0wbN9M6D5Mym/sKm9toOoWyVOa+xDjvCnuWcHls2YonXwHvH3CQ==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-export-namespace-from": { + "node_modules/@babel/plugin-transform-optional-chaining/node_modules/@babel/template": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.29.7.tgz", - "integrity": "sha512-24B2nOy2TeJSMheqwPD4DDQOV/elLSIlKxjZt4i05H5AgdPdWR3n18HnNrcJ+j76WJd9gbwb9jPjNYUy6RautA==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-for-of": { + "node_modules/@babel/plugin-transform-optional-chaining/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.29.7.tgz", - "integrity": "sha512-zeSIHh0+E1Um1WJRXCFlHQYu2ieJNdivLLjlBEp+dIBu3S51n+SZZmIXjxnItw6pz56Cn+KvK68BIBVsxq2JiQ==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-function-name": { + "node_modules/@babel/plugin-transform-optional-chaining/node_modules/@babel/types": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.29.7.tgz", - "integrity": "sha512-otRWaHXE6fbAGkePvaj/kvs3HsqXfPhlnzwSOlnFgbqCPMd975dW+4wZ00WFBt+/YlBGcJwNrARQTOJOb4ZrIg==", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/traverse": "^7.29.7" + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-json-strings": { + "node_modules/@babel/plugin-transform-parameters": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.29.7.tgz", - "integrity": "sha512-RRnE2+eon1rJAq8MnoF1b5kTpY1vU88twHcvcKMrsqP/jxIRqDVs9iJB5fqPuqyeFAW0wJo4MlUIPpQCq/aRsg==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.29.7.tgz", + "integrity": "sha512-ZDOBqV/qLYJI0YElr8DcENEyARsFQeESqWXH6gZlghYXuPPjvweuDhP4VyEi4BlUBlLRFZVjxoZDMjxhLW766g==", "dev": true, "license": "MIT", "dependencies": { @@ -1361,13 +3202,14 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-literals": { + "node_modules/@babel/plugin-transform-private-methods": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.29.7.tgz", - "integrity": "sha512-DZ/oLP21ZuWx1vKqnoNv6/tvEK48AQOBRai40CX9dTjGluvT/YZCyY3rryDtyUqCEoyNroy5KKPwX2iQCiRvyw==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.29.7.tgz", + "integrity": "sha512-/6Rz4DK1ETDEM/bWHsPHcaEe7ZaT1EqSXjtSP/L0DijOYuaUhiRiOKcwpZ8P7zR4xXEHc2ITdiCgBm9Tpyv9ug==", "dev": true, "license": "MIT", "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1377,13 +3219,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-logical-assignment-operators": { + "node_modules/@babel/plugin-transform-private-property-in-object": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.29.7.tgz", - "integrity": "sha512-A0H91hh6W8MFRkp5TqJmMr39jzGD1A1E1Ysiv2O06Sfbhkapm+XyIzxWCEh5kqwOZ1/8QZ0dY3SeQ7XBqfJd5Q==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.29.7.tgz", + "integrity": "sha512-+BNo06dnrzdNNqCm1X6YUaVv0DKk8Q+JYcoZfOkLhYWNCXzlwTSRq8zGWayT1csjcpNXV9CQTBRRbmTLZac5cA==", "dev": true, "license": "MIT", "dependencies": { + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-create-class-features-plugin": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1393,67 +3237,51 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-member-expression-literals": { + "node_modules/@babel/plugin-transform-private-property-in-object/node_modules/@babel/helper-annotate-as-pure": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.29.7.tgz", - "integrity": "sha512-hl1kwFZCCiDyfH25Xmco9jTrkPgnS9pmOzSG7W5I4SaGbLeqKv417hcU2RKmaxoPEgsoJh7ZPOrnPGq99bHoUg==", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-modules-amd": { + "node_modules/@babel/plugin-transform-private-property-in-object/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.29.7.tgz", - "integrity": "sha512-fxtQoH3m5ywUSIfaH0FGCzWu4McsYon5bD3K4XnskC7f+OyQMj7rsOMi4NvvmJ83WwBAg4UCe+ov4VZlqEvyew==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-module-transforms": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-modules-commonjs": { + "node_modules/@babel/plugin-transform-private-property-in-object/node_modules/@babel/types": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.29.7.tgz", - "integrity": "sha512-j0vCldybPC5b5dwCQOJ21uKtHzt7hxLygJTg9eF1ScfaikEDNfzn94XoW5Fi+seBR0nCyL23xaBFFkq7dTM8XQ==", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-modules-systemjs": { + "node_modules/@babel/plugin-transform-property-literals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.29.7.tgz", - "integrity": "sha512-TM2ZcQLoG2/y4HODiStCo10DibYhWhGWAwVv+EQKmG/7GFl0N+AAmUiXOMKM+aiJ9XBJ9AHVZBvTzMnJ2sM3cQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.29.7.tgz", + "integrity": "sha512-bOMRLQuI0A5ZqHq3OWJ89/rXpJ/NJrbVhXiP4zwPGMs6kpcVsuTUNjwoE30K0Qm3mf48a/TnRYYD6vPNqcg6jA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7", - "@babel/traverse": "^7.29.7" + "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { "node": ">=6.9.0" @@ -1462,14 +3290,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-modules-umd": { + "node_modules/@babel/plugin-transform-regenerator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.29.7.tgz", - "integrity": "sha512-B4UkaTK3QpgCwJnrxKfMPKdo92CN7OKXAlpAAnM3UPu0Q0lCCk57ylA9AJbRy2v8dDKOPAAWcoR6CMyeoHwRCA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.7.tgz", + "integrity": "sha512-rNNFV0DBAJp988xW2DOntfDoYn1eR8GGF5AT5vYc+rjyfaQkM242c9tZUHHPe7KYaiJizXPWhQTzzdbXySyhBw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-module-transforms": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1479,10 +3306,10 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "node_modules/@babel/plugin-transform-regexp-modifiers": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.29.7.tgz", - "integrity": "sha512-vuFoLwr4qnv2xbZ16SQd6uPcH5FNrLHhk/Jzo++0XJFcaDsr4gjJVg6j398oMHiC+83k/GiBzviwF5KBJkPUtQ==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.29.7.tgz", + "integrity": "sha512-mB5Fs0VWrJ42ZCmc8114v60qetdaUVNkj9PmSZRmanCZM3S9hm0CFRLjRmYIsuXav14l2jvZ+4T8iiCGnhj3nQ==", "dev": true, "license": "MIT", "dependencies": { @@ -1496,10 +3323,10 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-new-target": { + "node_modules/@babel/plugin-transform-reserved-words": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.29.7.tgz", - "integrity": "sha512-fEo41GmsOUhOBlw8ioo6zvjX5Xc2Lqkzlyfqbpsk3eB6TReV18uhxZ0esfEokVbY2+PVJAQHNKxER6lGrzNd3A==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.29.7.tgz", + "integrity": "sha512-5+YhdpVgmfSmwZyLMftfaiffLRMHjzIRHFHHLdibcSyJm2pasMrKHrO3Ptrt2DRshjvpgjEJJ1zVW14WPq/6QA==", "dev": true, "license": "MIT", "dependencies": { @@ -1512,10 +3339,10 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { + "node_modules/@babel/plugin-transform-shorthand-properties": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.29.7.tgz", - "integrity": "sha512-idmp1dFaekP9GbcMvG24Kvw2BfhFZjHnNJCkV4WuIY4PskJzwI3f1N5OdgYke38T7rftO6ERulFRn2cFeZwRkg==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.29.7.tgz", + "integrity": "sha512-I+WYbGBAiCn7nA6xBrlgPH+MB7HWb4u8pv5S0Pv7OtwNvIFvCCb24YlttKEeUFVurfBCEaOTnuhlqsb7f0Z5Dg==", "dev": true, "license": "MIT", "dependencies": { @@ -1528,14 +3355,15 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-numeric-separator": { + "node_modules/@babel/plugin-transform-spread": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.29.7.tgz", - "integrity": "sha512-zR7fv/z14OjgHl4AgRtkDBvBMhIzCxqV/qN/2BCRC7LjFwvuzjYe7gDWxC4Wl/SNsLM6SE1IWvRPYMgSJaUvNw==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.29.7.tgz", + "integrity": "sha512-/u5K1QWada7tbYNqTjMh96718g9NTwh9tfPJMsSmVsQwGT447FskV+KcfeXkXq2GWki4EM/MuTdmBec+hOuVTQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" }, "engines": { "node": ">=6.9.0" @@ -1544,100 +3372,112 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-object-rest-spread": { + "node_modules/@babel/plugin-transform-spread/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.29.7.tgz", - "integrity": "sha512-Ld98jn4c0smUywL57m7SgsHq3OpThOa6LqZJif3G6jYOovPleoFhVrBJ1WegRApSFB2wu4+RelAj9AC9G08Z4A==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-compilation-targets": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/plugin-transform-destructuring": "^7.29.7", - "@babel/plugin-transform-parameters": "^7.29.7", - "@babel/traverse": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-spread/node_modules/@babel/helper-globals": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/plugin-transform-spread/node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" + "engines": { + "node": ">=6.9.0" } }, - "node_modules/@babel/plugin-transform-object-super": { + "node_modules/@babel/plugin-transform-spread/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.29.7.tgz", - "integrity": "sha512-Ea/diGcw0twB5IlZPO5sgET6fJsLJqPABqTuFWIR+iMPGPZJkATEIWx0wa+aEQ5UY1CBQyP/gkAiLEqn1vBiQA==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-replace-supers": "^7.29.7" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-optional-catch-binding": { + "node_modules/@babel/plugin-transform-spread/node_modules/@babel/template": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.29.7.tgz", - "integrity": "sha512-sLsyndxK2VwX6yNUOakMb7Sh553ZTe/vVM1XJ+9Z5aW1ytsc8xOIwmyk05NNjN60vkc5/KqoTH6hB4V41LJhng==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-optional-chaining": { + "node_modules/@babel/plugin-transform-spread/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.29.7.tgz", - "integrity": "sha512-6GM1dhvK3gNODkXcEcMCOLEDCLSoZ/sBbro2Ax8HURyasQ4NshagQixkRFdh5niI6E4gmA/jYI/4aT7rRos3ZQ==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-parameters": { + "node_modules/@babel/plugin-transform-spread/node_modules/@babel/types": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.29.7.tgz", - "integrity": "sha512-ZDOBqV/qLYJI0YElr8DcENEyARsFQeESqWXH6gZlghYXuPPjvweuDhP4VyEi4BlUBlLRFZVjxoZDMjxhLW766g==", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-private-methods": { + "node_modules/@babel/plugin-transform-sticky-regex": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.29.7.tgz", - "integrity": "sha512-/6Rz4DK1ETDEM/bWHsPHcaEe7ZaT1EqSXjtSP/L0DijOYuaUhiRiOKcwpZ8P7zR4xXEHc2ITdiCgBm9Tpyv9ug==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.29.7.tgz", + "integrity": "sha512-BCHzNYJGe9l7EpwwDBN/ztlL2NYFFq8hp9ddjtUEM9f2O7S7kKV/lL6Fwo7IF7NSkYhPK2vO+86nIGltA90MsA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1647,15 +3487,13 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-private-property-in-object": { + "node_modules/@babel/plugin-transform-template-literals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.29.7.tgz", - "integrity": "sha512-+BNo06dnrzdNNqCm1X6YUaVv0DKk8Q+JYcoZfOkLhYWNCXzlwTSRq8zGWayT1csjcpNXV9CQTBRRbmTLZac5cA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.29.7.tgz", + "integrity": "sha512-NCSEJ4sLFU2gqAub45HYh4fus2yQ36rr6ei6vpU7NdoJqCpxvEG8E6eJpscGyXP3VHD2Ny+fSXr04k1hoUrFqA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.29.7", - "@babel/helper-create-class-features-plugin": "^7.29.7", "@babel/helper-plugin-utils": "^7.29.7" }, "engines": { @@ -1665,10 +3503,10 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-property-literals": { + "node_modules/@babel/plugin-transform-typeof-symbol": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.29.7.tgz", - "integrity": "sha512-bOMRLQuI0A5ZqHq3OWJ89/rXpJ/NJrbVhXiP4zwPGMs6kpcVsuTUNjwoE30K0Qm3mf48a/TnRYYD6vPNqcg6jA==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.29.7.tgz", + "integrity": "sha512-223mNGoTkBiTEWFoK+Q6Go3tueMRclO8vxxxxquNCYuNI4jWOofFKJRRDu6SDrB8Sgo1UEGW9T4GAQ8ZyRso1A==", "dev": true, "license": "MIT", "dependencies": { @@ -1681,14 +3519,18 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-regenerator": { + "node_modules/@babel/plugin-transform-typescript": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.29.7.tgz", - "integrity": "sha512-rNNFV0DBAJp988xW2DOntfDoYn1eR8GGF5AT5vYc+rjyfaQkM242c9tZUHHPe7KYaiJizXPWhQTzzdbXySyhBw==", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.29.7.tgz", + "integrity": "sha512-jK52h8LaLc7JarhQV2ofeFMts4H7vnOXnqZNA6fYglBTZewRBE51KWt3BUltW1P+KoPsYkHoJeXePuz4zo2LMw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/helper-annotate-as-pure": "^7.29.7", + "@babel/helper-create-class-features-plugin": "^7.29.7", + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", + "@babel/plugin-syntax-typescript": "^7.29.7" }, "engines": { "node": ">=6.9.0" @@ -1697,138 +3539,116 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-regexp-modifiers": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/generator": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regexp-modifiers/-/plugin-transform-regexp-modifiers-7.29.7.tgz", - "integrity": "sha512-mB5Fs0VWrJ42ZCmc8114v60qetdaUVNkj9PmSZRmanCZM3S9hm0CFRLjRmYIsuXav14l2jvZ+4T8iiCGnhj3nQ==", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz", + "integrity": "sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7", + "@jridgewell/gen-mapping": "^0.3.12", + "@jridgewell/trace-mapping": "^0.3.28", + "jsesc": "^3.0.2" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" } }, - "node_modules/@babel/plugin-transform-reserved-words": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/helper-annotate-as-pure": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.29.7.tgz", - "integrity": "sha512-5+YhdpVgmfSmwZyLMftfaiffLRMHjzIRHFHHLdibcSyJm2pasMrKHrO3Ptrt2DRshjvpgjEJJ1zVW14WPq/6QA==", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.29.7.tgz", + "integrity": "sha512-OoK6239jHPuSQOoS0kfTVKn0b/rVTk0seKq4Gd2UMLtmOVLjDC0ki3e+c90Trqv2gMfvJFqkiljrr568+qddiw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-shorthand-properties": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/helper-globals": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.29.7.tgz", - "integrity": "sha512-I+WYbGBAiCn7nA6xBrlgPH+MB7HWb4u8pv5S0Pv7OtwNvIFvCCb24YlttKEeUFVurfBCEaOTnuhlqsb7f0Z5Dg==", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-spread": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/helper-skip-transparent-expression-wrappers": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.29.7.tgz", - "integrity": "sha512-/u5K1QWada7tbYNqTjMh96718g9NTwh9tfPJMsSmVsQwGT447FskV+KcfeXkXq2GWki4EM/MuTdmBec+hOuVTQ==", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.29.7.tgz", + "integrity": "sha512-brcMGQaVzIeUb+6/bs1Av0f8YuNNjKY2JyvfRCsFuFsdKccEQ5Ges2y74D74NZ1Rz8lKJ9ksJkfqwQFJ/iNEyQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7" + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-sticky-regex": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/helper-string-parser": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.29.7.tgz", - "integrity": "sha512-BCHzNYJGe9l7EpwwDBN/ztlL2NYFFq8hp9ddjtUEM9f2O7S7kKV/lL6Fwo7IF7NSkYhPK2vO+86nIGltA90MsA==", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" - }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-template-literals": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/template": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.29.7.tgz", - "integrity": "sha512-NCSEJ4sLFU2gqAub45HYh4fus2yQ36rr6ei6vpU7NdoJqCpxvEG8E6eJpscGyXP3VHD2Ny+fSXr04k1hoUrFqA==", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/types": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-typeof-symbol": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/traverse": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.29.7.tgz", - "integrity": "sha512-223mNGoTkBiTEWFoK+Q6Go3tueMRclO8vxxxxquNCYuNI4jWOofFKJRRDu6SDrB8Sgo1UEGW9T4GAQ8ZyRso1A==", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", + "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7" + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-globals": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/types": "^7.29.7", + "debug": "^4.3.1" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-typescript": { + "node_modules/@babel/plugin-transform-typescript/node_modules/@babel/types": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.29.7.tgz", - "integrity": "sha512-jK52h8LaLc7JarhQV2ofeFMts4H7vnOXnqZNA6fYglBTZewRBE51KWt3BUltW1P+KoPsYkHoJeXePuz4zo2LMw==", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/helper-annotate-as-pure": "^7.29.7", - "@babel/helper-create-class-features-plugin": "^7.29.7", - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-skip-transparent-expression-wrappers": "^7.29.7", - "@babel/plugin-syntax-typescript": "^7.29.7" + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" }, "engines": { "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" } }, "node_modules/@babel/plugin-transform-unicode-escapes": { @@ -1963,78 +3783,19 @@ "@babel/plugin-transform-reserved-words": "^7.29.7", "@babel/plugin-transform-shorthand-properties": "^7.29.7", "@babel/plugin-transform-spread": "^7.29.7", - "@babel/plugin-transform-sticky-regex": "^7.29.7", - "@babel/plugin-transform-template-literals": "^7.29.7", - "@babel/plugin-transform-typeof-symbol": "^7.29.7", - "@babel/plugin-transform-unicode-escapes": "^7.29.7", - "@babel/plugin-transform-unicode-property-regex": "^7.29.7", - "@babel/plugin-transform-unicode-regex": "^7.29.7", - "@babel/plugin-transform-unicode-sets-regex": "^7.29.7", - "@babel/preset-modules": "0.1.6-no-external-plugins", - "babel-plugin-polyfill-corejs2": "^0.4.15", - "babel-plugin-polyfill-corejs3": "^0.14.0", - "babel-plugin-polyfill-regenerator": "^0.6.6", - "core-js-compat": "^3.48.0", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/preset-modules": { - "version": "0.1.6-no-external-plugins", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", - "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/types": "^7.4.4", - "esutils": "^2.0.2" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" - } - }, - "node_modules/@babel/preset-modules/node_modules/@babel/helper-string-parser": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/preset-modules/node_modules/@babel/types": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/preset-typescript": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.29.7.tgz", - "integrity": "sha512-/Foi8vKY2EVbed/1eZx0gJEEwHAIxogrySI7rULcRIvhZzbvoE/b5qG5Ghc0WKAFKOHA9SD1x7RsFlOYdutIiQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-plugin-utils": "^7.29.7", - "@babel/helper-validator-option": "^7.29.7", - "@babel/plugin-syntax-jsx": "^7.29.7", - "@babel/plugin-transform-modules-commonjs": "^7.29.7", - "@babel/plugin-transform-typescript": "^7.29.7" + "@babel/plugin-transform-sticky-regex": "^7.29.7", + "@babel/plugin-transform-template-literals": "^7.29.7", + "@babel/plugin-transform-typeof-symbol": "^7.29.7", + "@babel/plugin-transform-unicode-escapes": "^7.29.7", + "@babel/plugin-transform-unicode-property-regex": "^7.29.7", + "@babel/plugin-transform-unicode-regex": "^7.29.7", + "@babel/plugin-transform-unicode-sets-regex": "^7.29.7", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "babel-plugin-polyfill-corejs2": "^0.4.15", + "babel-plugin-polyfill-corejs3": "^0.14.0", + "babel-plugin-polyfill-regenerator": "^0.6.6", + "core-js-compat": "^3.48.0", + "semver": "^6.3.1" }, "engines": { "node": ">=6.9.0" @@ -2043,22 +3804,22 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/template": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", - "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", + "node_modules/@babel/preset-modules": { + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.29.7", - "@babel/parser": "^7.29.7", - "@babel/types": "^7.29.7" + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" }, - "engines": { - "node": ">=6.9.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0" } }, - "node_modules/@babel/template/node_modules/@babel/helper-string-parser": { + "node_modules/@babel/preset-modules/node_modules/@babel/helper-string-parser": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", @@ -2068,7 +3829,7 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/template/node_modules/@babel/types": { + "node_modules/@babel/preset-modules/node_modules/@babel/types": { "version": "7.29.7", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", @@ -2082,47 +3843,24 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse": { + "node_modules/@babel/preset-typescript": { "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz", - "integrity": "sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw==", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.29.7.tgz", + "integrity": "sha512-/Foi8vKY2EVbed/1eZx0gJEEwHAIxogrySI7rULcRIvhZzbvoE/b5qG5Ghc0WKAFKOHA9SD1x7RsFlOYdutIiQ==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.29.7", - "@babel/generator": "^7.29.7", - "@babel/helper-globals": "^7.29.7", - "@babel/parser": "^7.29.7", - "@babel/template": "^7.29.7", - "@babel/types": "^7.29.7", - "debug": "^4.3.1" + "@babel/helper-plugin-utils": "^7.29.7", + "@babel/helper-validator-option": "^7.29.7", + "@babel/plugin-syntax-jsx": "^7.29.7", + "@babel/plugin-transform-modules-commonjs": "^7.29.7", + "@babel/plugin-transform-typescript": "^7.29.7" }, "engines": { "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@babel/helper-string-parser": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", - "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/traverse/node_modules/@babel/types": { - "version": "7.29.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", - "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-string-parser": "^7.29.7", - "@babel/helper-validator-identifier": "^7.29.7" }, - "engines": { - "node": ">=6.9.0" + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, "node_modules/@codingame/commitlint-config-codingame": { @@ -2177,17 +3915,17 @@ } }, "node_modules/@commitlint/cli": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-21.1.0.tgz", - "integrity": "sha512-CVwY6TxGv5naEaWxBdgNHko1xgL95Mb4WcIqp9iik33H0ctVqRv6YtekCntayhEP0T/apuiGvHu5HcCwFuVxEA==", + "version": "21.2.1", + "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-21.2.1.tgz", + "integrity": "sha512-blsZGe29hJ72VGEFVl72IVYX+1vsfINpjA9yWQA6i7OKD/McGEOXg08sKIRKjFk4JvzhV/9n0l3i6NooPLTNfg==", "dev": true, "dependencies": { - "@commitlint/config-conventional": "^21.1.0", - "@commitlint/format": "^21.1.0", - "@commitlint/lint": "^21.1.0", - "@commitlint/load": "^21.1.0", - "@commitlint/read": "^21.1.0", - "@commitlint/types": "^21.1.0", + "@commitlint/config-conventional": "^21.2.0", + "@commitlint/format": "^21.2.0", + "@commitlint/lint": "^21.2.0", + "@commitlint/load": "^21.2.0", + "@commitlint/read": "^21.2.1", + "@commitlint/types": "^21.2.0", "tinyexec": "^1.0.0", "yargs": "^18.0.0" }, @@ -2199,18 +3937,30 @@ } }, "node_modules/@commitlint/cli/node_modules/@commitlint/config-conventional": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-21.1.0.tgz", - "integrity": "sha512-BIFl8xM+3SLy3jrblUC3wmQLCVbLty+++6o859BDCmybVrQdXmIWO+dlkGIbv/M2bBoC55wGuh0zGiw3TPjL1g==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-21.2.0.tgz", + "integrity": "sha512-Qf8WRDVcyVd14if6VTWenebxFbKnVnbzPUJjlzjkyJGeHK2xCGd63Dr1XZzj0plXKQb9P0BfOxoc1HVeCo2BWQ==", "dev": true, "dependencies": { - "@commitlint/types": "^21.1.0", - "conventional-changelog-conventionalcommits": "^9.2.0" + "@commitlint/types": "^21.2.0", + "conventional-changelog-conventionalcommits": "^10.0.0" }, "engines": { "node": ">=22.12.0" } }, + "node_modules/@commitlint/cli/node_modules/conventional-changelog-conventionalcommits": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-10.2.1.tgz", + "integrity": "sha512-n4Kr1HFMTf3iMbES0TMxKIcYtUUv4rKqyQQp2JwfOEfFCOfGT3Tq4mCyJ8S9/YPyWhydjfKrrvnyl+gCjA+mJQ==", + "dev": true, + "dependencies": { + "@conventional-changelog/template": "^1.2.1" + }, + "engines": { + "node": ">=22" + } + }, "node_modules/@commitlint/config-conventional": { "version": "19.8.1", "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-19.8.1.tgz", @@ -2253,12 +4003,12 @@ } }, "node_modules/@commitlint/config-validator": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-21.1.0.tgz", - "integrity": "sha512-gHczt1xqQSwfNqBmOI3HjejtTljkiBEUneExMmTBLD0WwTC78lAqDvNMyydbySt3DhpH0F9oX7Vvuks6s5XPFw==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-21.2.0.tgz", + "integrity": "sha512-t7AzNHAKeIdo/3NRGwzpufKHsKkPHmFs/56N2Fnsh0/r0rGtnQzTxk6vnFgjaGr4hdSQKNB50/KAhR9Yk4LJKA==", "dev": true, "dependencies": { - "@commitlint/types": "^21.1.0", + "@commitlint/types": "^21.2.0", "ajv": "^8.11.0" }, "engines": { @@ -2266,12 +4016,12 @@ } }, "node_modules/@commitlint/ensure": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-21.1.0.tgz", - "integrity": "sha512-/S8Mo3Q1NtQUYDQjDmyQVPxfIwtnxq+guzMOkuGk8OSdwlzanm1WB9wDPIuuzlbMDDnBNbiAuBEUCcCNlfjrTQ==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-21.2.0.tgz", + "integrity": "sha512-76IF9vDNS13lAzEEik9eKwzt8f9hYhWiwVXZ2AnyLCz5/f511FsEQ3pw1X3/zSQpdRLQU7i5qDMVKyXi1GWjSg==", "dev": true, "dependencies": { - "@commitlint/types": "^21.1.0", + "@commitlint/types": "^21.2.0", "es-toolkit": "^1.46.0" }, "engines": { @@ -2288,12 +4038,12 @@ } }, "node_modules/@commitlint/format": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-21.1.0.tgz", - "integrity": "sha512-ySymqKYBfjNrQ5N4W/l1iF2ISW1W7Eu/Oi/wRxlri31N0yjNyzUyUzQwyuZLDzTXIlMs4IZ7hIOfAZx8lO18gA==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-21.2.0.tgz", + "integrity": "sha512-c4q64xaav2U83t7k7RyzJerBZurPer7FxUOY0RL5L/6CZijZ7K+s6HIBGIghj0ey1P2+seRX0J9XQYtDued6tg==", "dev": true, "dependencies": { - "@commitlint/types": "^21.1.0", + "@commitlint/types": "^21.2.0", "picocolors": "^1.1.1" }, "engines": { @@ -2301,12 +4051,12 @@ } }, "node_modules/@commitlint/is-ignored": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-21.1.0.tgz", - "integrity": "sha512-RoRh1/YI+fYH+aid5lMQ2UD0vZ3p3Vf1KeUWT1ir3H/p/7T/6SFv1OiXLgLwUT8dP72EVWeEIyOfkiSWLZYVvw==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-21.2.0.tgz", + "integrity": "sha512-4/eB0vBN7L88O/oC4ajAEqi7j2ZfNgxl/+11RfAV9YosejZgDXhY2C9VcHnHJhOzPLoSy5P3Mg/46kqeyJfXKw==", "dev": true, "dependencies": { - "@commitlint/types": "^21.1.0", + "@commitlint/types": "^21.2.0", "semver": "^7.6.0" }, "engines": { @@ -2326,30 +4076,30 @@ } }, "node_modules/@commitlint/lint": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-21.1.0.tgz", - "integrity": "sha512-0DbfVVUjAWBfixW6v7CXXWVxMcj6Ukf/oB7O8NAbouP3jxmqUaC4eVQphxl3B3M0ii3cCQiR3sRAYxICwU2gAA==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-21.2.0.tgz", + "integrity": "sha512-ceO5dp9pLjEZ6y6qbq/uXWXDPykqqlTsyzoQ0NzecpisSJhK3kTy9qzQoPeJuWG/IMNdV1lO0RgmzqoAlSi1uw==", "dev": true, "dependencies": { - "@commitlint/is-ignored": "^21.1.0", - "@commitlint/parse": "^21.1.0", - "@commitlint/rules": "^21.1.0", - "@commitlint/types": "^21.1.0" + "@commitlint/is-ignored": "^21.2.0", + "@commitlint/parse": "^21.2.0", + "@commitlint/rules": "^21.2.0", + "@commitlint/types": "^21.2.0" }, "engines": { "node": ">=22.12.0" } }, "node_modules/@commitlint/load": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-21.1.0.tgz", - "integrity": "sha512-juiClVEcoreNB0TNVkseO2EmNcpEs/Yhnmgbnm/hQAKBFRynKwIaoNIljXkx/3yvZcMO0EE8I2XOEI7d5KZG8Q==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-21.2.0.tgz", + "integrity": "sha512-RjlzWQqruRwIenJEfZtq7kG97co97nKoHpflE5YnF61tDLXxHPrdWImgzw6VL6MlFyaOcVlk74eBV8ZQmc3oIA==", "dev": true, "dependencies": { - "@commitlint/config-validator": "^21.1.0", + "@commitlint/config-validator": "^21.2.0", "@commitlint/execute-rule": "^21.0.1", - "@commitlint/resolve-extends": "^21.1.0", - "@commitlint/types": "^21.1.0", + "@commitlint/resolve-extends": "^21.2.0", + "@commitlint/types": "^21.2.0", "cosmiconfig": "^9.0.1", "cosmiconfig-typescript-loader": "^6.1.0", "es-toolkit": "^1.46.0", @@ -2361,51 +4111,153 @@ } }, "node_modules/@commitlint/message": { - "version": "21.0.2", - "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-21.0.2.tgz", - "integrity": "sha512-5n4aqHGD/FNnom/D5L8i7cYtV+xjuXcBL832C3w9VglEsZzIsoHpJsvxzJ7cgiOsOdc/2jU4t5+7qMHh7GBX3g==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-21.2.0.tgz", + "integrity": "sha512-YxGoiXD/HXNXLJPrQwE5poXa+XH0CBEm+mdvbHQP0g6MV/dmJyUFCzPNzZbxL93GvZ70TmtTK0Z0/IBpAqHv8g==", "dev": true, "engines": { "node": ">=22.12.0" } }, "node_modules/@commitlint/parse": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-21.1.0.tgz", - "integrity": "sha512-HdAqbbjQS8eEtbR74Ysg2VNmbvAfeWLVYMkip/lHibNrtjRsC/97XAYN3/H5P0pEJtDfyTb3iLs8x6y0eu4OYA==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-21.2.0.tgz", + "integrity": "sha512-QHWxG4d0PLTF634/AdyZ0MQS+CLn5YOuJlCFhMMlSGKFxzYGUetkHBj18xgBD+6fVzUrA2lrCdi/vlS2f/oYXg==", "dev": true, "dependencies": { - "@commitlint/types": "^21.1.0", - "conventional-changelog-angular": "^8.2.0", - "conventional-commits-parser": "^6.3.0" + "@commitlint/types": "^21.2.0", + "conventional-changelog-angular": "^9.0.0", + "conventional-commits-parser": "^7.0.0" }, "engines": { "node": ">=22.12.0" } }, + "node_modules/@commitlint/parse/node_modules/@simple-libs/stream-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@simple-libs/stream-utils/-/stream-utils-2.0.0.tgz", + "integrity": "sha512-fCTuZK4QBa+39Oz9l4OGfJfz+GpwCp3AqO7Zch3to99xHPgstVsRFpeQ8LNd2o1Gv8raL2mCFwiaHh7bFSp5DQ==", + "dev": true, + "engines": { + "node": ">=22" + }, + "funding": { + "url": "https://ko-fi.com/dangreen" + } + }, + "node_modules/@commitlint/parse/node_modules/conventional-changelog-angular": { + "version": "9.2.1", + "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-9.2.1.tgz", + "integrity": "sha512-oWSL6ZhnXbYraOFTK3PgRAQJ8fADDAEv5K6AdeyQPLvjFmhG8+ejL0jZZp/R7vTmGJaBvZEE+sE7dB4bCv7sAw==", + "dev": true, + "dependencies": { + "@conventional-changelog/template": "^1.2.1" + }, + "engines": { + "node": ">=22" + } + }, + "node_modules/@commitlint/parse/node_modules/conventional-commits-parser": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-7.0.1.tgz", + "integrity": "sha512-6VtskFpPsNkGVk/TY2RnV/MEdKfvCPBtQZN9x8jh9+k5RWBQ+tiaWn5UFCzTr0Dd88iKx7xghxbjBRp5uIzp3g==", + "dev": true, + "dependencies": { + "@simple-libs/stream-utils": "^2.0.0", + "meow": "^14.0.0" + }, + "bin": { + "conventional-commits-parser": "dist/cli/index.js" + }, + "engines": { + "node": ">=22" + } + }, + "node_modules/@commitlint/parse/node_modules/meow": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-14.1.0.tgz", + "integrity": "sha512-EDYo6VlmtnumlcBCbh1gLJ//9jvM/ndXHfVXIFrZVr6fGcwTUyCTFNTLCKuY3ffbK8L/+3Mzqnd58RojiZqHVw==", + "dev": true, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/@commitlint/read": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-21.1.0.tgz", - "integrity": "sha512-ID7m79aw8d0dMlxuXHD2QGxEX3Fhl/mUPA80WwEW5VgeOpUHNahhwWJefDdoBDVZcDfbHuf429NrcK0gxQsQjA==", + "version": "21.2.1", + "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-21.2.1.tgz", + "integrity": "sha512-hUW7EJQnNTL0vPOmVMNK4CrnrNBN0nN+JJHReFkdHO5y4iyHeEmTBwuC15OCqUTjxWo7idnH1LftfpWVIaPWIA==", "dev": true, "dependencies": { - "@commitlint/top-level": "^21.0.2", - "@commitlint/types": "^21.1.0", - "git-raw-commits": "^5.0.0", + "@commitlint/top-level": "^21.2.0", + "@commitlint/types": "^21.2.0", + "@conventional-changelog/git-client": "^3.0.0", "tinyexec": "^1.0.0" }, "engines": { "node": ">=22.12.0" } }, + "node_modules/@commitlint/read/node_modules/@conventional-changelog/git-client": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@conventional-changelog/git-client/-/git-client-3.1.0.tgz", + "integrity": "sha512-Tqa/gHco2WJWa740NRjOrfKVvzIqxkZpecb8bemaQ8sKM5PXb1UK4uTyTb/1wIqNuOVaDOFxyBdhTIQZn6gdjQ==", + "dev": true, + "dependencies": { + "@simple-libs/child-process-utils": "^2.0.0", + "@simple-libs/stream-utils": "^2.0.0", + "semver": "^7.5.2" + }, + "engines": { + "node": ">=22" + }, + "peerDependencies": { + "conventional-commits-filter": "^6.0.1", + "conventional-commits-parser": "^7.0.1" + }, + "peerDependenciesMeta": { + "conventional-commits-filter": { + "optional": true + }, + "conventional-commits-parser": { + "optional": true + } + } + }, + "node_modules/@commitlint/read/node_modules/@simple-libs/stream-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@simple-libs/stream-utils/-/stream-utils-2.0.0.tgz", + "integrity": "sha512-fCTuZK4QBa+39Oz9l4OGfJfz+GpwCp3AqO7Zch3to99xHPgstVsRFpeQ8LNd2o1Gv8raL2mCFwiaHh7bFSp5DQ==", + "dev": true, + "engines": { + "node": ">=22" + }, + "funding": { + "url": "https://ko-fi.com/dangreen" + } + }, + "node_modules/@commitlint/read/node_modules/semver": { + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/@commitlint/resolve-extends": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-21.1.0.tgz", - "integrity": "sha512-SANYkxJDfMl3TvnyALWHEaiF5nc6FFaOnh7VvfxjT4X2vD4i2gVHhmfMm1fsrBwDRX98/XyM1XDo5sAd/KXcyQ==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-21.2.0.tgz", + "integrity": "sha512-4O/1j51+79Wth9s/MGxt/5gs0XYLDgNlYpltQfhAvLE0itusLKs9zruxbiNg1oOkmkb9L9L4USYGjEj7n87NxA==", "dev": true, "dependencies": { - "@commitlint/config-validator": "^21.1.0", - "@commitlint/types": "^21.1.0", + "@commitlint/config-validator": "^21.2.0", + "@commitlint/types": "^21.2.0", "es-toolkit": "^1.46.0", "global-directory": "^5.0.0", "resolve-from": "^5.0.0" @@ -2415,15 +4267,15 @@ } }, "node_modules/@commitlint/rules": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-21.1.0.tgz", - "integrity": "sha512-fOPEYSmKn1ZJptjLmCEjJfYqz0PUYr8ng6VY2ZW26sB7KtENR90CmAXHEmScBbOIZip+d/+OwqK12DFBuHTqsQ==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-21.2.0.tgz", + "integrity": "sha512-C2yXMNpiB8ETZKfx5JD8+ExgF8vTU1VQMKPSUUYwqKpw9oJWQBrlXBpdU038mj2WPjof7o9UzFpmTyBeGMZwZg==", "dev": true, "dependencies": { - "@commitlint/ensure": "^21.1.0", - "@commitlint/message": "^21.0.2", + "@commitlint/ensure": "^21.2.0", + "@commitlint/message": "^21.2.0", "@commitlint/to-lines": "^21.0.1", - "@commitlint/types": "^21.1.0" + "@commitlint/types": "^21.2.0" }, "engines": { "node": ">=22.12.0" @@ -2439,9 +4291,9 @@ } }, "node_modules/@commitlint/top-level": { - "version": "21.0.2", - "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-21.0.2.tgz", - "integrity": "sha512-s9KKM+e+mXgFeIh4n7KmOGAVT3mkJ3Fp1bBYHIK5pjeUwlEMzp/tZfb5u0Poa680AsQTXMEMRxZi1vQ9m2X5ug==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-21.2.0.tgz", + "integrity": "sha512-Y5gmQ+KxzqCrBFJfLvFEPvvwD3LDiNZoTT2yeFBm96M8qhmqSzQc5DvX3rheAaAMjyIvMXOCLS/mWfdpONsjyQ==", "dev": true, "dependencies": { "escalade": "^3.2.0" @@ -2451,54 +4303,65 @@ } }, "node_modules/@commitlint/types": { - "version": "21.1.0", - "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-21.1.0.tgz", - "integrity": "sha512-YodnnnH1Cp+08nP8HGNJAIuB6L3/vdCTHVRTfF8Ik/wRCLOTsU9zwv3yO1cSPQRDa9CLYtE+UJ2K67r7CwMSFw==", + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-21.2.0.tgz", + "integrity": "sha512-7zVFCDB2reMvJH5dmbKnOQPjZEvjdJTH8jc0U/PIPU1r3/+vf5pD1HlfitV2MWsWXrvu7u39iY1lyLUPOaN0Gw==", "dev": true, "dependencies": { - "conventional-commits-parser": "^6.3.0", + "conventional-commits-parser": "^7.0.0", "picocolors": "^1.1.1" }, "engines": { "node": ">=22.12.0" } }, - "node_modules/@conventional-changelog/git-client": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@conventional-changelog/git-client/-/git-client-2.7.0.tgz", - "integrity": "sha512-j7A8/LBEQ+3rugMzPXoKYzyUPpw/0CBQCyvtTR7Lmu4olG4yRC/Tfkq79Mr3yuPs0SUitlO2HwGP3gitMJnRFw==", + "node_modules/@commitlint/types/node_modules/@simple-libs/stream-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@simple-libs/stream-utils/-/stream-utils-2.0.0.tgz", + "integrity": "sha512-fCTuZK4QBa+39Oz9l4OGfJfz+GpwCp3AqO7Zch3to99xHPgstVsRFpeQ8LNd2o1Gv8raL2mCFwiaHh7bFSp5DQ==", "dev": true, - "dependencies": { - "@simple-libs/child-process-utils": "^1.0.0", - "@simple-libs/stream-utils": "^1.2.0", - "semver": "^7.5.2" - }, "engines": { - "node": ">=18" - }, - "peerDependencies": { - "conventional-commits-filter": "^5.0.0", - "conventional-commits-parser": "^6.4.0" + "node": ">=22" }, - "peerDependenciesMeta": { - "conventional-commits-filter": { - "optional": true - }, - "conventional-commits-parser": { - "optional": true - } + "funding": { + "url": "https://ko-fi.com/dangreen" } }, - "node_modules/@conventional-changelog/git-client/node_modules/semver": { - "version": "7.8.5", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", - "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", + "node_modules/@commitlint/types/node_modules/conventional-commits-parser": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-7.0.1.tgz", + "integrity": "sha512-6VtskFpPsNkGVk/TY2RnV/MEdKfvCPBtQZN9x8jh9+k5RWBQ+tiaWn5UFCzTr0Dd88iKx7xghxbjBRp5uIzp3g==", "dev": true, + "dependencies": { + "@simple-libs/stream-utils": "^2.0.0", + "meow": "^14.0.0" + }, "bin": { - "semver": "bin/semver.js" + "conventional-commits-parser": "dist/cli/index.js" }, "engines": { - "node": ">=10" + "node": ">=22" + } + }, + "node_modules/@commitlint/types/node_modules/meow": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-14.1.0.tgz", + "integrity": "sha512-EDYo6VlmtnumlcBCbh1gLJ//9jvM/ndXHfVXIFrZVr6fGcwTUyCTFNTLCKuY3ffbK8L/+3Mzqnd58RojiZqHVw==", + "dev": true, + "engines": { + "node": ">=20" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@conventional-changelog/template": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@conventional-changelog/template/-/template-1.2.1.tgz", + "integrity": "sha512-TzlTVpKPjaqW6qOYjQcYUDuGsLCNsvFHVBXkYGTAnf5V37jCWrE5haKNXzz0WZUtVHjrpV76L1buANjwXMfT8w==", + "dev": true, + "engines": { + "node": ">=22" } }, "node_modules/@esbuild/aix-ppc64": { @@ -3015,12 +4878,12 @@ } }, "node_modules/@jsonjoy.com/fs-core": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-core/-/fs-core-4.57.8.tgz", - "integrity": "sha512-YzVbwggV9452VCeHgo0bjsTaUt1O7JE0XpEsPar93nn/+RAwXk0mb1Y+f5EDJ3TRtRCFe+Ck5RuojdfB4jeHVw==", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-core/-/fs-core-4.64.0.tgz", + "integrity": "sha512-zs2TAq7Six5jgMuoMNjpspAvOP3mhtgq/k1UyQodEzCtQi/N83y2/y+zcvnZSGp/Rxq96DBN+bValOBQAyn/ew==", "dependencies": { - "@jsonjoy.com/fs-node-builtins": "4.57.8", - "@jsonjoy.com/fs-node-utils": "4.57.8", + "@jsonjoy.com/fs-node-builtins": "4.64.0", + "@jsonjoy.com/fs-node-utils": "4.64.0", "thingies": "^2.5.0" }, "engines": { @@ -3035,13 +4898,13 @@ } }, "node_modules/@jsonjoy.com/fs-fsa": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-fsa/-/fs-fsa-4.57.8.tgz", - "integrity": "sha512-vmClyvCQMxgqz7uamDiGtRfp4MjzOznk3pcQjCxlIwJcw7TWeyr+bF30hI0x8NxdtNOGMg1pHM74VDIXOeyjuw==", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-fsa/-/fs-fsa-4.64.0.tgz", + "integrity": "sha512-nMWOVbkLFyEgmXZih3wyvxA9XpgyyqyfrINMHvEFqhi7uqfRl7c9ERJt6yX7vgMPrB9Uo+OJO+Spa0cFzPD01w==", "dependencies": { - "@jsonjoy.com/fs-core": "4.57.8", - "@jsonjoy.com/fs-node-builtins": "4.57.8", - "@jsonjoy.com/fs-node-utils": "4.57.8", + "@jsonjoy.com/fs-core": "4.64.0", + "@jsonjoy.com/fs-node-builtins": "4.64.0", + "@jsonjoy.com/fs-node-utils": "4.64.0", "thingies": "^2.5.0" }, "engines": { @@ -3056,15 +4919,15 @@ } }, "node_modules/@jsonjoy.com/fs-node": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node/-/fs-node-4.57.8.tgz", - "integrity": "sha512-IPEOlDYSnTDYpjQlQg2F8h+eqxKQN3sdbroI0WrteRiQZ462HzVpBo9ZZX485njz4nAacoe3fd4iDiIhk+k5Hg==", - "dependencies": { - "@jsonjoy.com/fs-core": "4.57.8", - "@jsonjoy.com/fs-node-builtins": "4.57.8", - "@jsonjoy.com/fs-node-utils": "4.57.8", - "@jsonjoy.com/fs-print": "4.57.8", - "@jsonjoy.com/fs-snapshot": "4.57.8", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node/-/fs-node-4.64.0.tgz", + "integrity": "sha512-dO+NNkODbUli4uV42bcNrrLvq5rE7SNpdZ5TNd0dtbLsAaNK3MDiIC9lUi+brboGoIjW6vd2fB1qao60nrk5xA==", + "dependencies": { + "@jsonjoy.com/fs-core": "4.64.0", + "@jsonjoy.com/fs-node-builtins": "4.64.0", + "@jsonjoy.com/fs-node-utils": "4.64.0", + "@jsonjoy.com/fs-print": "4.64.0", + "@jsonjoy.com/fs-snapshot": "4.64.0", "glob-to-regex.js": "^1.0.0", "thingies": "^2.5.0" }, @@ -3080,9 +4943,9 @@ } }, "node_modules/@jsonjoy.com/fs-node-builtins": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-builtins/-/fs-node-builtins-4.57.8.tgz", - "integrity": "sha512-mxXSXw8zZwRVakcjLqR2I/psy4gURFSASZS10kKJ2kJw05GC2nXGroGrWVHxwgkxXgQLsFQnB74QaLzsxzdL/w==", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-builtins/-/fs-node-builtins-4.64.0.tgz", + "integrity": "sha512-/o7WRFhUWaM/fOrslwLZGnzn4RmRILykn+lAL+mNObqqRNw+CQSiij6hpCeZ+C7buhdoVo7go/OYqzaSUfDYmA==", "engines": { "node": ">=10.0" }, @@ -3095,13 +4958,13 @@ } }, "node_modules/@jsonjoy.com/fs-node-to-fsa": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-to-fsa/-/fs-node-to-fsa-4.57.8.tgz", - "integrity": "sha512-AWZcT/4+H+iDl4XCukbXrarvwEgOrf/prFI5/7eg4ix9FxqVsZysIDJd1Kjd+AjlCeHKHJOaRqjLd5HiGSCJEw==", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-to-fsa/-/fs-node-to-fsa-4.64.0.tgz", + "integrity": "sha512-WDD9WVs0hb7UAEKTgZW2f66WDrbj7gIIWwpP3spbLyXa0rghtUaFTB8L4gdR3ZCWwiKIsj38/CNijpVmpnuPUw==", "dependencies": { - "@jsonjoy.com/fs-fsa": "4.57.8", - "@jsonjoy.com/fs-node-builtins": "4.57.8", - "@jsonjoy.com/fs-node-utils": "4.57.8" + "@jsonjoy.com/fs-fsa": "4.64.0", + "@jsonjoy.com/fs-node-builtins": "4.64.0", + "@jsonjoy.com/fs-node-utils": "4.64.0" }, "engines": { "node": ">=10.0" @@ -3115,11 +4978,12 @@ } }, "node_modules/@jsonjoy.com/fs-node-utils": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-utils/-/fs-node-utils-4.57.8.tgz", - "integrity": "sha512-E/bJ7sQAb4pu9nbeJhbULU3WnqWrswte4N9Js/oHt7aHB746S8/XBqKlcbrqIgnD3095XluovNEZuu5ONT230g==", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-node-utils/-/fs-node-utils-4.64.0.tgz", + "integrity": "sha512-k5Indsx9hWW9xSF7Y6oSKKwtCUNhzZxadub3owhIlitc+iMRVlPPdX2duTKQWBL3qNWpXya8jykgaaWpheeS4w==", "dependencies": { - "@jsonjoy.com/fs-node-builtins": "4.57.8" + "@jsonjoy.com/fs-node-builtins": "4.64.0", + "glob-to-regex.js": "^1.0.1" }, "engines": { "node": ">=10.0" @@ -3133,11 +4997,11 @@ } }, "node_modules/@jsonjoy.com/fs-print": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-print/-/fs-print-4.57.8.tgz", - "integrity": "sha512-DfzhOBpmvNu5P/KSe4NNQaOnvNliTdcf0qrh/4EReErF/XUQXYkd0vZl/OiJCm/qjEEo8DWRstliw2/JNS84dA==", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-print/-/fs-print-4.64.0.tgz", + "integrity": "sha512-PHZFccchvkhWrwPWHjmVAhbC3vSHCtyZvlZfJJ3ho2bnzl450hXri6/8e6pbkWdH+SkmLXNml0sV8e5HDAfxKw==", "dependencies": { - "@jsonjoy.com/fs-node-utils": "4.57.8", + "@jsonjoy.com/fs-node-utils": "4.64.0", "tree-dump": "^1.1.0" }, "engines": { @@ -3152,12 +5016,12 @@ } }, "node_modules/@jsonjoy.com/fs-snapshot": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-snapshot/-/fs-snapshot-4.57.8.tgz", - "integrity": "sha512-L+eqKaWOHLDaiMv1dh/EWQ4hA+o6xAhWSumTo3Teg7OM18jU/KE13/e8Mfal+eAZ/pSl4wIhKHcDiwapJzC8Wg==", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/@jsonjoy.com/fs-snapshot/-/fs-snapshot-4.64.0.tgz", + "integrity": "sha512-oM7UDeL83q6NBzzsfKAsYKXKVXlykKFqqOLh4xZZKAzzROTlInkPbc6LTDGThEOnPiFiUzA7tYziHG9xavd76Q==", "dependencies": { "@jsonjoy.com/buffers": "^17.65.0", - "@jsonjoy.com/fs-node-utils": "4.57.8", + "@jsonjoy.com/fs-node-utils": "4.64.0", "@jsonjoy.com/json-pack": "^17.65.0", "@jsonjoy.com/util": "^17.65.0" }, @@ -3605,14 +5469,13 @@ } }, "node_modules/@oxlint/binding-android-arm-eabi": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm-eabi/-/binding-android-arm-eabi-1.71.0.tgz", - "integrity": "sha512-ImGmd1njEg4FEJH03jhRnveEegtO3czCtfptvaHivKAZQIYATbVFBrrzbaYMYv0oJioTnxZAZVSyV+oL7W8S2g==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm-eabi/-/binding-android-arm-eabi-1.73.0.tgz", + "integrity": "sha512-HZQRN/UMBu+Ut+/9MiAChkbP4qZqrNOWBcNI45vOT40GVhbGR0JgHB87L48D4iAqFQIdVmeQYtV9RF89AjTKkg==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" @@ -3622,14 +5485,13 @@ } }, "node_modules/@oxlint/binding-android-arm64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm64/-/binding-android-arm64-1.71.0.tgz", - "integrity": "sha512-4A5BEexBrwY1YFF8Kiq/lp/wQPRG79G3BWIE1FuWaM5MvmpYSd+7ZySVcKkHdwo0UDzdQGddp6pD9mpctMqLnw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-android-arm64/-/binding-android-arm64-1.73.0.tgz", + "integrity": "sha512-Gp+KJRylv2aW7thRpG5p1KTxZq4ZJFbWowrKzufNq9d3ssl3r3JviYV45/+p+7CN1Nv0zDd1e8Ex0b/HUDq4TQ==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "android" @@ -3639,14 +5501,13 @@ } }, "node_modules/@oxlint/binding-darwin-arm64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-arm64/-/binding-darwin-arm64-1.71.0.tgz", - "integrity": "sha512-9wJA9GJulLwS2usU3CEisI/ESDO1n1z9eyTCvApMDrAkbJ1ve0mORgTMjcWWsKxkzkeZ2N/Gpra5IQE7x8tYgQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-arm64/-/binding-darwin-arm64-1.73.0.tgz", + "integrity": "sha512-3de96NdtXhxERMjIz7wsp2HYMY6pMQycGxFWac2mFecAx6VeARF/IqFb1QIaqiCRIdfzBwzTed+pCTCoiS+CYA==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" @@ -3656,14 +5517,13 @@ } }, "node_modules/@oxlint/binding-darwin-x64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-x64/-/binding-darwin-x64-1.71.0.tgz", - "integrity": "sha512-PlLCjS06V0PeJMAJwzjrExw1sYNW9Gch3JtNlcwwZDXGlTYDuwHNN89zYH8LTXFfgkVtsYvs2nv0FqrzyuFDzg==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-darwin-x64/-/binding-darwin-x64-1.73.0.tgz", + "integrity": "sha512-5zx/uPW32TiaOeVY1dQ/H5iOf0K1HOdFKOJhLqGl4o63+i1fpzoqqu/mKtd7OFgFjNCdhlyTGgjVkQTZm1ELcg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "darwin" @@ -3673,14 +5533,13 @@ } }, "node_modules/@oxlint/binding-freebsd-x64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-freebsd-x64/-/binding-freebsd-x64-1.71.0.tgz", - "integrity": "sha512-Lhil7bWre0ncxbUoDoxfS0JzpTz17BRQKW7iwoAUY8GJ66+WwJEfYPCFJ1P0WgVZR5/O/b3Q2pENlHOjeXLOGQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-freebsd-x64/-/binding-freebsd-x64-1.73.0.tgz", + "integrity": "sha512-qNe4gKHaGnLuZJ8toUg90JAa0S2vTVvDw+0bRi3q1avXZXDT4u5mMeECf3nD4HYrbdn1O7dXqWut4onY/yx/Xg==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "freebsd" @@ -3690,14 +5549,13 @@ } }, "node_modules/@oxlint/binding-linux-arm-gnueabihf": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.71.0.tgz", - "integrity": "sha512-Oo9/L58PYD3RC0x05d2upAPLllHytTjHQGsnC06P6Ynn7jKkp5mdImQxXdJ3+FnBaKspNpGogzgVsi6g872LiA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.73.0.tgz", + "integrity": "sha512-cCehYh5hTbfShm/fxTD6wwrGUWIpvX+N5OxmAMhFhDeTGXvw+BeNj889tpxsFQ9ZLatQ6wImuY8tsKLZ+FMz7w==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -3707,14 +5565,13 @@ } }, "node_modules/@oxlint/binding-linux-arm-musleabihf": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-1.71.0.tgz", - "integrity": "sha512-mSHfyfgJrEbyIR29ejaeS50BdPk+GoNPlC1dckpDiUZbJAIel68sjSMdOt4WY0/gva+ECC7FNITQkxMJU+vSBw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-1.73.0.tgz", + "integrity": "sha512-d5j5GDU/2dMgjVhw7TQT9ITrsIr1Y02KEXKyVGIXUkD+KiaxE9TP65FS2ZdgTBemQvoRL+gSBdbrIm3cQIeacg==", "cpu": [ "arm" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "linux" @@ -3724,17 +5581,13 @@ } }, "node_modules/@oxlint/binding-linux-arm64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.71.0.tgz", - "integrity": "sha512-n9yY4M2tiy3aij4AqtlnspzpfdpeT5JQfK2/w2d8oyp5W0FRwOb1dIeX99nORNcxGr08iD9bH8N5XFz3I2iy8w==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.73.0.tgz", + "integrity": "sha512-Eyf1SrP3+yR1DI3OJgOY2Pvrr9dWP9TK37xPaDYycwTtlGlI45erJAVIfH5/m/xosDt6BupJYEFi47bvbTuuyw==", "cpu": [ "arm64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3744,17 +5597,13 @@ } }, "node_modules/@oxlint/binding-linux-arm64-musl": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.71.0.tgz", - "integrity": "sha512-fJZrs5sDZtTaPIOiemRQQmo82Ezy+vOGXemPc4Ok7iVVsYsFa7SlW6Z5XN819VfsqBHRm3NJ3rTdnR8+bJYJdQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.73.0.tgz", + "integrity": "sha512-IlT/OJApEDKaMmCooHuncgJZbbCe7T5QIWmTZBEtYscWvzPQuuEinVcid6kwQRVQOUdb7PUCz4jQHnaYXdfJXw==", "cpu": [ "arm64" ], "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3764,17 +5613,13 @@ } }, "node_modules/@oxlint/binding-linux-ppc64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.71.0.tgz", - "integrity": "sha512-cwl7VKGERIy9p+G+AvZdfy/06q0aHXaTt/mMRReC751iuNYJgqKjB7NydXSS30nBT9vtr2tunciOtrR4fD6FUA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.73.0.tgz", + "integrity": "sha512-L+JYcb/vdg5fmcH08V6o0YYLU28cTH1SPNulwJdvK9NK49aXSkYy6oNpKBmddArVOXYqNepriDGiZ04G54kh1Q==", "cpu": [ "ppc64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3784,17 +5629,13 @@ } }, "node_modules/@oxlint/binding-linux-riscv64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-1.71.0.tgz", - "integrity": "sha512-eZ8ieVXvzGi8jr7+ybQGPK2STw3mldfxZlgA2738iflfB/rzA69sE6m5rDRpQaxC7dpm745Enlh1Tod0QAk9Gg==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-1.73.0.tgz", + "integrity": "sha512-Qtk0g3bKV6OwWjIm7R8kQN1uOZRKQt/MODK2a8QfkwhTpXBD53ozx5XLVWLGDQAVyp2otLW4D2wB98XfAfMPGA==", "cpu": [ "riscv64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3804,17 +5645,13 @@ } }, "node_modules/@oxlint/binding-linux-riscv64-musl": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-1.71.0.tgz", - "integrity": "sha512-puMDbQYe6+NXwfMusojoA7CXGn2b3utukmd23PQqc1E3XhVCwyZ+FueSMzDYeNgDV2dUfIVXAAKZBcFDeCL6sA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-riscv64-musl/-/binding-linux-riscv64-musl-1.73.0.tgz", + "integrity": "sha512-wX0NQKZVxltkAOVmzFcpOaMpdaUvsq1Eqpx9tkAfl71UdkTlSo1R4AdAnGccR1Fm2+TzFgZ22CyyGuZ41RDr/A==", "cpu": [ "riscv64" ], "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3824,17 +5661,13 @@ } }, "node_modules/@oxlint/binding-linux-s390x-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.71.0.tgz", - "integrity": "sha512-4NJLxBs1ujISCt3L/1FcywLs73PWtJuw+piD6feK2V6h6OS6P7xu9/sWt1DTRLibe6QCzmfZzmM/2HPORoV/Lg==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.73.0.tgz", + "integrity": "sha512-vPe7UGBMWyiLTtnqS4xxgMQFSFGmtQwhwCxuiw6lXygaO6bVt0D8dFVg8Xv05eaiN3ybC0HXXHUAohFMFvqoCQ==", "cpu": [ "s390x" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3844,17 +5677,13 @@ } }, "node_modules/@oxlint/binding-linux-x64-gnu": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.71.0.tgz", - "integrity": "sha512-cFDaiR8L3430qp88tfZnvFlt3KotFhR/DlbIL0nHOMMYiG/9Wy4l+6f7t8G8pTa9bd8Lt8+M0y/qjRQ/xcB74g==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.73.0.tgz", + "integrity": "sha512-2CwIWr9cemFC/CbRBWZvuk5mffz6ObmfFkfcC/9rTQ7f+icNhYr2kOjf9Rt8lLvugvkdGDOmkoVoFFHh6ClCTw==", "cpu": [ "x64" ], "dev": true, - "libc": [ - "glibc" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3864,17 +5693,13 @@ } }, "node_modules/@oxlint/binding-linux-x64-musl": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-musl/-/binding-linux-x64-musl-1.71.0.tgz", - "integrity": "sha512-orfixdt76KlpNly9z0PkWBBNfwjKz+JFVLP/7wnVchlKNU9Dpt9InU/ZggeSej6fC7qwHmHNOGlhLnQXcYoGuA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-linux-x64-musl/-/binding-linux-x64-musl-1.73.0.tgz", + "integrity": "sha512-nDadfJgg7NBBxG0N560wOe7LLX5QiYp6qBaI7viuk5EUORFBktU/NfV0MbTqU3gTqQDCh4VyxKdo5VADxk9w8Q==", "cpu": [ "x64" ], "dev": true, - "libc": [ - "musl" - ], - "license": "MIT", "optional": true, "os": [ "linux" @@ -3884,14 +5709,13 @@ } }, "node_modules/@oxlint/binding-openharmony-arm64": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-openharmony-arm64/-/binding-openharmony-arm64-1.71.0.tgz", - "integrity": "sha512-9emQu2lAp6yhPB3XuI+++vR+l/o6JR1X+EpxwcumPdQXBWXEPAsquPGL7l158EqU8SebQMXTUa/S5zN98juyHw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-openharmony-arm64/-/binding-openharmony-arm64-1.73.0.tgz", + "integrity": "sha512-wGjJC+NLH9xP+IKGn9RDW94ojJR/wPbg5WCnQjj/oReaOtCQthr8ws1zICe77JFmo4ouUdeTHHZL/ESGiF6Pmw==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "openharmony" @@ -3901,14 +5725,13 @@ } }, "node_modules/@oxlint/binding-win32-arm64-msvc": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.71.0.tgz", - "integrity": "sha512-bd5kI8spYwTm3BILDtGhi73zoup5dw8MlPQNT8YB3BD5UIsjNe3K9/4ctrzQMX4SZMoK5HgzVLkLJzacEXB7fA==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.73.0.tgz", + "integrity": "sha512-I7X47GPGljw225YUQ5SbC/rb1Kkdrd0yQf0x+hYxeKS6DpfjMbo9ccQPQ6LNY6BoJQ1sHhgDUGuMn5Vg5gHT6w==", "cpu": [ "arm64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -3918,14 +5741,13 @@ } }, "node_modules/@oxlint/binding-win32-ia32-msvc": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.71.0.tgz", - "integrity": "sha512-W4HvOHGzVLHcrmFu+bMrJlho+/yrlX5ZNdJZqGe8MEldkQG+RHYhxxad9P4jvWAYFmIqUA5i9DQ8QsJqSU9GIw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-ia32-msvc/-/binding-win32-ia32-msvc-1.73.0.tgz", + "integrity": "sha512-5lWj+3h+74Fm1jYOO9qkJA4xkAlZA099DkXppuXsk7UpnpZLttsefrZU469vChGaG6hcSqrkKXQOvMTZtbjeNg==", "cpu": [ "ia32" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -3935,14 +5757,13 @@ } }, "node_modules/@oxlint/binding-win32-x64-msvc": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.71.0.tgz", - "integrity": "sha512-D2kyEIPHk/G/wiZLnwTVC/sVst+T/lKldVOjAFpgTIBUAOlry72e5OiapDbDBF4LfJLkN5ypJb/8Eu6yJzkveQ==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/@oxlint/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.73.0.tgz", + "integrity": "sha512-WaNRvh4f6zY9CvUQk2YoA1O90ieWrIklI84+HXFr9Isjz9CSESrdqo/RtIYt4Dll/cAchqGDMehfaZd0vqEFZw==", "cpu": [ "x64" ], "dev": true, - "license": "MIT", "optional": true, "os": [ "win32" @@ -6531,15 +8352,27 @@ } }, "node_modules/@simple-libs/child-process-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@simple-libs/child-process-utils/-/child-process-utils-1.0.2.tgz", - "integrity": "sha512-/4R8QKnd/8agJynkNdJmNw2MBxuFTRcNFnE5Sg/G+jkSsV8/UBgULMzhizWWW42p8L5H7flImV2ATi79Ove2Tw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@simple-libs/child-process-utils/-/child-process-utils-2.0.0.tgz", + "integrity": "sha512-dvNoRKLijXnD0XoJAz94pbNuB5GQgDr55UhpSPhffDkTT0Cmcqh9jSCOtwfT2d4H6MI9E7c4SgtMuJXZ6F3c6A==", "dev": true, "dependencies": { - "@simple-libs/stream-utils": "^1.2.0" + "@simple-libs/stream-utils": "^2.0.0" }, "engines": { - "node": ">=18" + "node": ">=22" + }, + "funding": { + "url": "https://ko-fi.com/dangreen" + } + }, + "node_modules/@simple-libs/child-process-utils/node_modules/@simple-libs/stream-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@simple-libs/stream-utils/-/stream-utils-2.0.0.tgz", + "integrity": "sha512-fCTuZK4QBa+39Oz9l4OGfJfz+GpwCp3AqO7Zch3to99xHPgstVsRFpeQ8LNd2o1Gv8raL2mCFwiaHh7bFSp5DQ==", + "dev": true, + "engines": { + "node": ">=22" }, "funding": { "url": "https://ko-fi.com/dangreen" @@ -7373,9 +9206,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.10.40", - "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.40.tgz", - "integrity": "sha512-BSSLZ9/Cjjv7Gtj5B68ZzXcXUg8iOf3fme+FCuh8rC/Go+Kmh8cox7M3A8dolou16s64QjLPOSdngh7GxXvkSw==", + "version": "2.10.42", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.42.tgz", + "integrity": "sha512-c/jurFrDLyui7o1J86yLkRu4LMsTYcBohveus7/I2Hzdn9KIP2bdJPTue/lR1KH46enoPbD77GKeSYNdyPoD3Q==", "dev": true, "license": "Apache-2.0", "bin": { @@ -7458,9 +9291,9 @@ } }, "node_modules/browserslist": { - "version": "4.28.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.4.tgz", - "integrity": "sha512-MTc8i/x9jBQd1iMw2CFGS+rwMa07eYjLR0CCTLDACl9xhxy+nIs3KeML/biicXtk9JrZ6dnnTatmc7ErPXIxqw==", + "version": "4.28.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.5.tgz", + "integrity": "sha512-Cu2E6QejHWzuDMTkuwgpABFgDfZrXLQq5V13YOACZx4mFAG4IwGTbTfHPMr4WtxlHoXSM8FIuRwYYCz5XiabaQ==", "dev": true, "funding": [ { @@ -7478,10 +9311,10 @@ ], "license": "MIT", "dependencies": { - "baseline-browser-mapping": "^2.10.38", - "caniuse-lite": "^1.0.30001799", - "electron-to-chromium": "^1.5.376", - "node-releases": "^2.0.48", + "baseline-browser-mapping": "^2.10.42", + "caniuse-lite": "^1.0.30001800", + "electron-to-chromium": "^1.5.387", + "node-releases": "^2.0.50", "update-browserslist-db": "^1.2.3" }, "bin": { @@ -7585,9 +9418,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001799", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001799.tgz", - "integrity": "sha512-hG1bReV+OUU+MOqK4t/ZWI0tZOyz3rqS9XuhOUz1cIcbwBKjOyJEJuw9ER5JuNyqxNk8u/JUVbGibBOL1yrjFw==", + "version": "1.0.30001803", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001803.tgz", + "integrity": "sha512-g/uHREV2ZpK9qMalCsWaxmA6ol+DX8GYhuf3T40RKoP+oL7vhRJh8LNt73PCjpnR6l14FzfPrB5Yux4PKm2meg==", "dev": true, "funding": [ { @@ -8330,9 +10163,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.5.381", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.381.tgz", - "integrity": "sha512-n9Wa6yB+vDsGuA8AKbl/0z7HbvWqt5jxIdvr1IUicd0ryPrk7/xzwqLv8D9AbbvZ6avVNtXYLTfmgFHkwkyelg==", + "version": "1.5.389", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.389.tgz", + "integrity": "sha512-cEto7aeOqBfU1D+c5py5pE+ooscKE75JifxLBdFUZsqAxRS6y7kebtxAZvICszSl05gPjYHDTjY+lXpyGvpJbg==", "dev": true, "license": "ISC" }, @@ -8719,8 +10552,7 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true, - "license": "MIT" + "dev": true }, "node_modules/fast-glob": { "version": "3.3.3", @@ -9047,23 +10879,6 @@ "traverse": "0.6.8" } }, - "node_modules/git-raw-commits": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-5.0.1.tgz", - "integrity": "sha512-Y+csSm2GD/PCSh6Isd/WiMjNAydu0VBiG9J7EdQsNA5P9uXvLayqjmTsNlK5Gs9IhblFZqOU0yid5Il5JPoLiQ==", - "deprecated": "Deprecated and no longer maintained. Use @conventional-changelog/git-client instead.", - "dev": true, - "dependencies": { - "@conventional-changelog/git-client": "^2.6.0", - "meow": "^13.0.0" - }, - "bin": { - "git-raw-commits": "src/cli.js" - }, - "engines": { - "node": ">=18" - } - }, "node_modules/github-from-package": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", @@ -9702,7 +11517,6 @@ "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz", "integrity": "sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==", "dev": true, - "license": "MIT", "bin": { "jiti": "lib/jiti-cli.mjs" } @@ -10136,18 +11950,18 @@ } }, "node_modules/memfs": { - "version": "4.57.8", - "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.57.8.tgz", - "integrity": "sha512-bApYhn8BLpFAnAQmFfEl/NPN+8qx5Ar3V4Qt3ek23mVwBEElzV7c6XoPkb/PCG8ZFpowCEpHcPwMFTwHS7tSMA==", - "dependencies": { - "@jsonjoy.com/fs-core": "4.57.8", - "@jsonjoy.com/fs-fsa": "4.57.8", - "@jsonjoy.com/fs-node": "4.57.8", - "@jsonjoy.com/fs-node-builtins": "4.57.8", - "@jsonjoy.com/fs-node-to-fsa": "4.57.8", - "@jsonjoy.com/fs-node-utils": "4.57.8", - "@jsonjoy.com/fs-print": "4.57.8", - "@jsonjoy.com/fs-snapshot": "4.57.8", + "version": "4.64.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-4.64.0.tgz", + "integrity": "sha512-Kw72fgY7Wn+sD8KmtNWSafl1dz0UvAsE/PHs3YVfLiaZuA3HxNm9sRLqAu0ATiBGJvME1PxZXbBZPv5GycDeAw==", + "dependencies": { + "@jsonjoy.com/fs-core": "4.64.0", + "@jsonjoy.com/fs-fsa": "4.64.0", + "@jsonjoy.com/fs-node": "4.64.0", + "@jsonjoy.com/fs-node-builtins": "4.64.0", + "@jsonjoy.com/fs-node-to-fsa": "4.64.0", + "@jsonjoy.com/fs-node-utils": "4.64.0", + "@jsonjoy.com/fs-print": "4.64.0", + "@jsonjoy.com/fs-snapshot": "4.64.0", "@jsonjoy.com/json-pack": "^1.11.0", "@jsonjoy.com/util": "^1.9.0", "glob-to-regex.js": "^1.0.1", @@ -10595,11 +12409,10 @@ } }, "node_modules/oxlint": { - "version": "1.71.0", - "resolved": "https://registry.npmjs.org/oxlint/-/oxlint-1.71.0.tgz", - "integrity": "sha512-U1m1X+C0vDj7DC1e13IoZULzEcPczE7UOMTs8VlZGHUEIUaSTZKo5qkPsQEfzpgnQ29Pea/w3Xntk62UCecxZw==", + "version": "1.73.0", + "resolved": "https://registry.npmjs.org/oxlint/-/oxlint-1.73.0.tgz", + "integrity": "sha512-u91G9TJzU6yqKWNZUYprQB07W7YvntZXaRxQ6CkoytepYhLWUXWsr1M8zUJ34VatNPuUAr3Z8GH+O2A331CluQ==", "dev": true, - "license": "MIT", "bin": { "oxlint": "bin/oxlint" }, @@ -10610,28 +12423,28 @@ "url": "https://github.com/sponsors/Boshen" }, "optionalDependencies": { - "@oxlint/binding-android-arm-eabi": "1.71.0", - "@oxlint/binding-android-arm64": "1.71.0", - "@oxlint/binding-darwin-arm64": "1.71.0", - "@oxlint/binding-darwin-x64": "1.71.0", - "@oxlint/binding-freebsd-x64": "1.71.0", - "@oxlint/binding-linux-arm-gnueabihf": "1.71.0", - "@oxlint/binding-linux-arm-musleabihf": "1.71.0", - "@oxlint/binding-linux-arm64-gnu": "1.71.0", - "@oxlint/binding-linux-arm64-musl": "1.71.0", - "@oxlint/binding-linux-ppc64-gnu": "1.71.0", - "@oxlint/binding-linux-riscv64-gnu": "1.71.0", - "@oxlint/binding-linux-riscv64-musl": "1.71.0", - "@oxlint/binding-linux-s390x-gnu": "1.71.0", - "@oxlint/binding-linux-x64-gnu": "1.71.0", - "@oxlint/binding-linux-x64-musl": "1.71.0", - "@oxlint/binding-openharmony-arm64": "1.71.0", - "@oxlint/binding-win32-arm64-msvc": "1.71.0", - "@oxlint/binding-win32-ia32-msvc": "1.71.0", - "@oxlint/binding-win32-x64-msvc": "1.71.0" - }, - "peerDependencies": { - "oxlint-tsgolint": ">=0.22.1", + "@oxlint/binding-android-arm-eabi": "1.73.0", + "@oxlint/binding-android-arm64": "1.73.0", + "@oxlint/binding-darwin-arm64": "1.73.0", + "@oxlint/binding-darwin-x64": "1.73.0", + "@oxlint/binding-freebsd-x64": "1.73.0", + "@oxlint/binding-linux-arm-gnueabihf": "1.73.0", + "@oxlint/binding-linux-arm-musleabihf": "1.73.0", + "@oxlint/binding-linux-arm64-gnu": "1.73.0", + "@oxlint/binding-linux-arm64-musl": "1.73.0", + "@oxlint/binding-linux-ppc64-gnu": "1.73.0", + "@oxlint/binding-linux-riscv64-gnu": "1.73.0", + "@oxlint/binding-linux-riscv64-musl": "1.73.0", + "@oxlint/binding-linux-s390x-gnu": "1.73.0", + "@oxlint/binding-linux-x64-gnu": "1.73.0", + "@oxlint/binding-linux-x64-musl": "1.73.0", + "@oxlint/binding-openharmony-arm64": "1.73.0", + "@oxlint/binding-win32-arm64-msvc": "1.73.0", + "@oxlint/binding-win32-ia32-msvc": "1.73.0", + "@oxlint/binding-win32-x64-msvc": "1.73.0" + }, + "peerDependencies": { + "oxlint-tsgolint": ">=0.24.0", "vite-plus": "*" }, "peerDependenciesMeta": { @@ -11193,9 +13006,9 @@ } }, "node_modules/prettier": { - "version": "3.9.3", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.9.3.tgz", - "integrity": "sha512-HWmu+K+zvHNpaMfSnYeqdqrDbR16cuIXaPx8WoHaviQkDJh1/0BNtOZmHVQI5jc3wXv0H1yXc9wjvFdXh+n3hQ==", + "version": "3.9.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.9.4.tgz", + "integrity": "sha512-yWG/o/4oJfo036EKAfK6ACAoDOfHeRHx4tuxkfBZiauURiaSmYwlpOr5LQqKtIkRD2z1PLteme2WoxEnj4tHTg==", "dev": true, "bin": { "prettier": "bin/prettier.cjs" @@ -12747,9 +14560,9 @@ "license": "0BSD" }, "node_modules/tsx": { - "version": "4.22.4", - "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.22.4.tgz", - "integrity": "sha512-X8EX+XV4QR5xCsrgxaED954zTDfY8KqlDtskKEL0cHhyS/P8b4IFOvGDQpsC9Q1XnLq915wEfwwY/zzskCtmhg==", + "version": "4.23.0", + "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.23.0.tgz", + "integrity": "sha512-eUdUIaCr963q2h5u3+QwvYp0+eqPvn+egeqZUm0hwERCqqx1E3kK5ehbGCvqSE5MQAULr67ww0cA3jKc3YkM1w==", "dev": true, "dependencies": { "esbuild": "~0.28.0" @@ -12787,9 +14600,9 @@ } }, "node_modules/type-fest": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.7.0.tgz", - "integrity": "sha512-1URUxUqfHFM1c+zfSPsa3gnkO7Aq21qyH75SIduNYz4SzY964rn1X2vCMQaHSHhktiw+0kPa2iyb6PUpXqB6Vg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.8.0.tgz", + "integrity": "sha512-YGYEVz3Fm5iy/AybuA0oyNFq7H4CgQNfRp/qfe8nurE1kuCeNm3/vfm9X4Mtl+qLyaKJUh5xrFZwogr41SMjYA==", "dev": true, "dependencies": { "tagged-tag": "^1.0.0" @@ -12806,6 +14619,7 @@ "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" diff --git a/package.json b/package.json index 3d2d5ba4..bd480a0c 100644 --- a/package.json +++ b/package.json @@ -49,7 +49,7 @@ "@codingame/commitlint-config-codingame": "^1.2.1", "@codingame/semantic-release-config-github": "^2.2.1", "@codingame/tsconfig": "^1.2.1", - "@commitlint/cli": "^21.1.0", + "@commitlint/cli": "^21.2.1", "@rollup/plugin-commonjs": "^29.0.3", "@rollup/plugin-dynamic-import-vars": "^2.1.5", "@rollup/plugin-json": "^6.1.0", @@ -72,19 +72,19 @@ "fast-glob": "^3.3.3", "graceful-fs": "^4.2.11", "js-cleanup": "^1.2.0", - "oxlint": "^1.71.0", + "oxlint": "^1.73.0", "package-json": "^10.0.1", "patch-package": "^8.0.1", "postcss-url": "^10.1.4", - "prettier": "^3.9.3", + "prettier": "^3.9.4", "recast": "^0.23.12", "rollup": "^4.62.2", "rollup-plugin-copy": "^3.5.0", "rollup-plugin-dts": "^6.4.1", "semantic-release": "25.0.5", "ts-morph": "^28.0.0", - "tsx": "^4.22.4", - "type-fest": "^5.7.0", + "tsx": "^4.23.0", + "type-fest": "^5.8.0", "typescript": "^6.0.3", "vscode-oniguruma": "1.7.0", "vscode-semver": "npm:semver@=5.5.0", @@ -122,7 +122,7 @@ "kerberos": "2.1.1", "keytar": "^7.9.0", "marked": "~14.0.0", - "memfs": "^4.57.8", + "memfs": "^4.64.0", "mime-types": "^3.0.2", "node-pty": "^1.2.0-beta.13", "tas-client": "0.3.1",