This is an automated email from the ASF dual-hosted git repository.

MartijnVisser pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git


The following commit(s) were added to refs/heads/master by this push:
     new e57428cafc9 [FLINK-40590][runtime-web] Update Angular and 
monaco-editor to latest available versions
e57428cafc9 is described below

commit e57428cafc9a79ca989ad8b9a39d621f7e250be0
Author: Purushottam Sinha <[email protected]>
AuthorDate: Tue Sep 8 14:55:12 2026 +0530

    [FLINK-40590][runtime-web] Update Angular and monaco-editor to latest 
available versions
    
    Bumps @angular/* (animations, common, compiler, core, forms,
    platform-browser, platform-browser-dynamic, router, compiler-cli) from
    21.2.17 to 21.2.22, and @angular/build/@angular/cli to 21.2.23.
    Bumps monaco-editor from 0.55.1 to 0.56.0 (latest available), which also
    updates its bundled dompurify to 3.4.8. Runs npm audit fix for the
    remaining in-range dev-tooling dependencies.
    
    monaco-editor's own package.json pins dompurify at exactly 3.4.8; the
    dashboard build copies monaco's prebuilt min/vs bundle into assets/vs,
    which vendors that DOMPurify copy inline and never imports the npm
    package, so npm's own dompurify resolution has no bearing on what's
    actually shipped. The remaining npm audit findings against
    dompurify@<=3.4.12 live in that vendored copy and are tracked upstream
    at microsoft/monaco-editor#5454; we'll bump monaco-editor again once it
    ships with a newer bundled DOMPurify.
    
    Regenerates flink-runtime-web/src/main/resources/META-INF/NOTICE to
    match, keeping dompurify listed as Apache-2.0 (it's dual-licensed
    MPL-2.0/Apache-2.0; Apache-2.0 was the deliberate prior choice).
    
    Generated-by: Claude Code (claude-sonnet-5)
---
 .../src/main/resources/META-INF/NOTICE             |  41 +-
 flink-runtime-web/web-dashboard/package-lock.json  | 722 ++++++++++-----------
 flink-runtime-web/web-dashboard/package.json       |  24 +-
 3 files changed, 380 insertions(+), 407 deletions(-)

diff --git a/flink-runtime-web/src/main/resources/META-INF/NOTICE 
b/flink-runtime-web/src/main/resources/META-INF/NOTICE
index 813998e3070..208254c603b 100644
--- a/flink-runtime-web/src/main/resources/META-INF/NOTICE
+++ b/flink-runtime-web/src/main/resources/META-INF/NOTICE
@@ -10,15 +10,15 @@ The Apache Software Foundation (http://www.apache.org/).
 
 | Package Name | Version | License |
 | ------------ | ------- | ------- |
-| @angular/animations | 21.2.17 | MIT |
+| @angular/animations | 21.2.22 | MIT |
 | @angular/cdk | 21.2.14 | MIT |
-| @angular/common | 21.2.17 | MIT |
-| @angular/compiler | 21.2.17 | MIT |
-| @angular/core | 21.2.17 | MIT |
-| @angular/forms | 21.2.17 | MIT |
-| @angular/platform-browser | 21.2.17 | MIT |
-| @angular/platform-browser-dynamic | 21.2.17 | MIT |
-| @angular/router | 21.2.17 | MIT |
+| @angular/common | 21.2.22 | MIT |
+| @angular/compiler | 21.2.22 | MIT |
+| @angular/core | 21.2.22 | MIT |
+| @angular/forms | 21.2.22 | MIT |
+| @angular/platform-browser | 21.2.22 | MIT |
+| @angular/platform-browser-dynamic | 21.2.22 | MIT |
+| @angular/router | 21.2.22 | MIT |
 | @ant-design/colors | 7.2.1 | MIT |
 | @ant-design/fast-color | 2.0.6 | MIT |
 | @ant-design/icons-angular | 21.0.0 | MIT |
@@ -86,14 +86,14 @@ The Apache Software Foundation (http://www.apache.org/).
 | date-fns | 2.30.0 | MIT |
 | delaunator | 5.1.0 | ISC |
 | detect-browser | 5.3.0 | MIT |
-| dompurify | 3.2.7 | Apache-2.0 |
+| dompurify | 3.4.8 | Apache-2.0 |
 | entities | 8.0.0 | BSD-2-Clause |
 | fecha | 4.2.3 | MIT |
 | gl-matrix | 3.4.4 | MIT |
 | iconv-lite | 0.6.3 | MIT |
 | internmap | 2.0.3 | ISC |
 | marked | 14.0.0 | MIT |
-| monaco-editor | 0.55.1 | MIT |
+| monaco-editor | 0.56.0 | MIT |
 | ng-zorro-antd | 21.3.2 | MIT |
 | parse5 | 8.0.1 | MIT |
 | robust-predicates | 3.0.3 | Unlicense |
@@ -106,7 +106,7 @@ The Apache Software Foundation (http://www.apache.org/).
 
 
 ## Licenses:
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -156,7 +156,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN
 THE SOFTWARE.
 
 ---
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -181,7 +181,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN
 THE SOFTWARE.
 
 ---
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -206,7 +206,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN
 THE SOFTWARE.
 
 ---
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -231,7 +231,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN
 THE SOFTWARE.
 
 ---
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -256,7 +256,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN
 THE SOFTWARE.
 
 ---
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -281,7 +281,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN
 THE SOFTWARE.
 
 ---
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -306,7 +306,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN
 THE SOFTWARE.
 
 ---
-@angular/[email protected]
+@angular/[email protected]
 ---
 The MIT License
 
@@ -1702,7 +1702,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
OTHER DEALINGS IN THE
 SOFTWARE.
 
 ---
[email protected]
[email protected]
 ---
 DOMPurify
 Copyright 2025 Dr.-Ing. Mario Heiderich, Cure53
@@ -1914,6 +1914,7 @@ terms of the Apache License Version 2.0
    See the License for the specific language governing permissions and
    limitations under the License.
 
+---
 ---
 [email protected]
 ---
@@ -2068,7 +2069,7 @@ Redistribution and use in source and binary forms, with 
or without modification,
 This software is provided by the copyright holders and contributors “as is” 
and any express or implied warranties, including, but not limited to, the 
implied warranties of merchantability and fitness for a particular purpose are 
disclaimed. In no event shall the copyright owner or contributors be liable for 
any direct, indirect, incidental, special, exemplary, or consequential damages 
(including, but not limited to, procurement of substitute goods or services; 
loss of use, data, or profi [...]
 
 ---
[email protected]
[email protected]
 ---
 The MIT License (MIT)
 
diff --git a/flink-runtime-web/web-dashboard/package-lock.json 
b/flink-runtime-web/web-dashboard/package-lock.json
index 9362faea97e..51b74db7f6a 100644
--- a/flink-runtime-web/web-dashboard/package-lock.json
+++ b/flink-runtime-web/web-dashboard/package-lock.json
@@ -8,20 +8,20 @@
       "name": "flink-dashboard",
       "version": "2.0.0",
       "dependencies": {
-        "@angular/animations": "^21.2.17",
-        "@angular/common": "^21.2.17",
-        "@angular/compiler": "^21.2.17",
-        "@angular/core": "^21.2.17",
-        "@angular/forms": "^21.2.17",
-        "@angular/platform-browser": "^21.2.17",
-        "@angular/platform-browser-dynamic": "^21.2.17",
-        "@angular/router": "^21.2.17",
+        "@angular/animations": "^21.2.22",
+        "@angular/common": "^21.2.22",
+        "@angular/compiler": "^21.2.22",
+        "@angular/core": "^21.2.22",
+        "@angular/forms": "^21.2.22",
+        "@angular/platform-browser": "^21.2.22",
+        "@angular/platform-browser-dynamic": "^21.2.22",
+        "@angular/router": "^21.2.22",
         "@antv/g2": "^4.2.12",
         "@dagrejs/dagre": "^3.0.0",
         "core-js": "^3.49.0",
         "d3": "^7.9.0",
         "d3-flame-graph": "^5.0.0",
-        "monaco-editor": "^0.55.1",
+        "monaco-editor": "^0.56.0",
         "ng-zorro-antd": "^21.3.2",
         "rxjs": "^7.5.7",
         "tslib": "^2.0.0",
@@ -34,9 +34,9 @@
         "@angular-eslint/eslint-plugin-template": "21.4.0",
         "@angular-eslint/schematics": "^21.4.0",
         "@angular-eslint/template-parser": "21.4.0",
-        "@angular/build": "^21.2.17",
-        "@angular/cli": "^21.2.17",
-        "@angular/compiler-cli": "^21.2.17",
+        "@angular/build": "^21.2.23",
+        "@angular/cli": "^21.2.23",
+        "@angular/compiler-cli": "^21.2.22",
         "@types/d3": "^7.4.3",
         "@types/node": "^22.16.0",
         "angular-eslint": "21.4.0",
@@ -285,13 +285,13 @@
       }
     },
     "node_modules/@angular-devkit/architect": {
-      "version": "0.2102.17",
-      "resolved": 
"https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2102.17.tgz";,
-      "integrity": 
"sha512-+lkmpEfKXuPZaGZRCCT/B2JGSnafudEVMLeolAW0G7de28bwJIwTE5nmr/rcKTy4NnEDX/8B53tWTXGENuQvmg==",
+      "version": "0.2102.23",
+      "resolved": 
"https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2102.23.tgz";,
+      "integrity": 
"sha512-ipRoLCsfI7NiAKKl8EpDYXLFn09df1Cyz2Qy+VOOvoWO1D4VZo9GeW76U2CnrJm7VuBANfMKwhN5FitZr0HPxQ==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@angular-devkit/core": "21.2.17",
+        "@angular-devkit/core": "21.2.23",
         "rxjs": "7.8.2"
       },
       "bin": {
@@ -304,9 +304,9 @@
       }
     },
     "node_modules/@angular-devkit/core": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular-devkit/core/-/core-21.2.17.tgz";,
-      "integrity": 
"sha512-JbGWwFX1Nv4Np0S9b4HP2SUKhR2bz6l/S8zBXnam95+RXzDaqXJDmQHOHZGS+4La06SjlcXwFyrgSI0rm50A1A==",
+      "version": "21.2.23",
+      "resolved": 
"https://registry.npmjs.org/@angular-devkit/core/-/core-21.2.23.tgz";,
+      "integrity": 
"sha512-CUFy9nUzuLwH4GIIe4nqHPKM8OOnW1T0aYBr64yYoz75v3xN4239Pz3fdvF3JvRPR4S1hmWORZsiSQLfWhdlOw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -332,13 +332,13 @@
       }
     },
     "node_modules/@angular-devkit/schematics": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-21.2.17.tgz";,
-      "integrity": 
"sha512-IMsbo/OBG0mdCRxezbq/CLo6JxUJBOAHZfbUDzxbSRwJm8FT5AbXO7rW+Z3haoqcb+WrC5Pr+DQ6WolX2x2brQ==",
+      "version": "21.2.23",
+      "resolved": 
"https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-21.2.23.tgz";,
+      "integrity": 
"sha512-SHrhkO0fdHRl01lxL5SnPGBjnL2o6KiTfD0r9132KbNGe7HjWp0BgwGmUVKROMkPWGAdVpgNmuirPgT6wdISLA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@angular-devkit/core": "21.2.17",
+        "@angular-devkit/core": "21.2.23",
         "jsonc-parser": "3.3.1",
         "magic-string": "0.30.21",
         "ora": "9.3.0",
@@ -460,9 +460,9 @@
       }
     },
     "node_modules/@angular/animations": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/animations/-/animations-21.2.17.tgz";,
-      "integrity": 
"sha512-zOW8FFa9qfbVkZ5TulxDkl1C3+gEjWfAAD5Z2MycA6pjVJQlLYPiTAGq+flOQ3yZfTT0z6kd5rejQMXWI81Dvg==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/animations/-/animations-21.2.22.tgz";,
+      "integrity": 
"sha512-d0ZUmLFOkF+ljrENHOURmCbHGS90jo6pRILT6bZbP0K/O3IxBB7hZIPEOpT45WaME939jcc/khJWVkcH8M2qBw==",
       "deprecated": "@angular/animations is deprecated. Use `animate.enter` 
and `animate.leave` instead. For more information see: 
https://v22.angular.dev/guide/animations.";,
       "license": "MIT",
       "dependencies": {
@@ -472,18 +472,18 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/core": "21.2.17"
+        "@angular/core": "21.2.22"
       }
     },
     "node_modules/@angular/build": {
-      "version": "21.2.18",
-      "resolved": 
"https://registry.npmjs.org/@angular/build/-/build-21.2.18.tgz";,
-      "integrity": 
"sha512-9Jic0Dud6d0ULPR5SceHV86AzZE42cNWPsbLKrK1dUneaAC44GSVRTmLXcaSX/5Exa3gGjFANQw4qashgxUekQ==",
+      "version": "21.2.23",
+      "resolved": 
"https://registry.npmjs.org/@angular/build/-/build-21.2.23.tgz";,
+      "integrity": 
"sha512-Gp//H+p97uR2xa9b9HknNf+o5VHq89c1GvbeOZPjHKIvV0ZnOEoU2PWDb3Gsy84HojIr1tSYOZ8YGJjbXGtvmA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
         "@ampproject/remapping": "2.3.0",
-        "@angular-devkit/architect": "0.2102.18",
+        "@angular-devkit/architect": "0.2102.23",
         "@babel/core": "7.29.7",
         "@babel/helper-annotate-as-pure": "7.27.3",
         "@babel/helper-split-export-declaration": "7.24.7",
@@ -506,7 +506,7 @@
         "semver": "7.7.4",
         "source-map-support": "0.5.21",
         "tinyglobby": "0.2.15",
-        "undici": "7.28.0",
+        "undici": "7.29.0",
         "vite": "7.3.6",
         "watchpack": "2.5.1"
       },
@@ -526,7 +526,7 @@
         "@angular/platform-browser": "^21.0.0",
         "@angular/platform-server": "^21.0.0",
         "@angular/service-worker": "^21.0.0",
-        "@angular/ssr": "^21.2.18",
+        "@angular/ssr": "^21.2.23",
         "karma": "^6.4.0",
         "less": "^4.2.0",
         "ng-packagr": "^21.0.0",
@@ -575,53 +575,6 @@
         }
       }
     },
-    "node_modules/@angular/build/node_modules/@angular-devkit/architect": {
-      "version": "0.2102.18",
-      "resolved": 
"https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2102.18.tgz";,
-      "integrity": 
"sha512-bEkF4ApWa6FJ2+ZyFPdhQr05PgJv/oKwx+3goNRa4lSxzJO+O3KXr0ivTyE5zEJ8l4JdV3h93bsCP54Rk3v7Dw==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "@angular-devkit/core": "21.2.18",
-        "rxjs": "7.8.2"
-      },
-      "bin": {
-        "architect": "bin/cli.js"
-      },
-      "engines": {
-        "node": "^20.19.0 || ^22.12.0 || >=24.0.0",
-        "npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
-        "yarn": ">= 1.13.0"
-      }
-    },
-    "node_modules/@angular/build/node_modules/@angular-devkit/core": {
-      "version": "21.2.18",
-      "resolved": 
"https://registry.npmjs.org/@angular-devkit/core/-/core-21.2.18.tgz";,
-      "integrity": 
"sha512-783AuDmzAjFkOBHey7cx1mXd8CTiMg9LvG+BCxEp8i4EB7cOGYrq3lBzkwhKJq6yYpz7dNgM1QgeLk+NcrFBSA==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "ajv": "8.18.0",
-        "ajv-formats": "3.0.1",
-        "jsonc-parser": "3.3.1",
-        "picomatch": "4.0.4",
-        "rxjs": "7.8.2",
-        "source-map": "0.7.6"
-      },
-      "engines": {
-        "node": "^20.19.0 || ^22.12.0 || >=24.0.0",
-        "npm": "^6.11.0 || ^7.5.6 || >=8.0.0",
-        "yarn": ">= 1.13.0"
-      },
-      "peerDependencies": {
-        "chokidar": "^5.0.0"
-      },
-      "peerDependenciesMeta": {
-        "chokidar": {
-          "optional": true
-        }
-      }
-    },
     "node_modules/@angular/build/node_modules/@vitejs/plugin-basic-ssl": {
       "version": "2.1.4",
       "resolved": 
"https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-2.1.4.tgz";,
@@ -636,9 +589,9 @@
       }
     },
     "node_modules/@angular/build/node_modules/undici": {
-      "version": "7.28.0",
-      "resolved": "https://registry.npmjs.org/undici/-/undici-7.28.0.tgz";,
-      "integrity": 
"sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA==",
+      "version": "7.29.0",
+      "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz";,
+      "integrity": 
"sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -769,19 +722,19 @@
       }
     },
     "node_modules/@angular/cli": {
-      "version": "21.2.17",
-      "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-21.2.17.tgz";,
-      "integrity": 
"sha512-wyEPOszxza7kUa1BWyERUqSDmAC/DF5Iun0YJ1sN22jDriOuOlYh9hXSk1EHs06fQ1JcTYLml+timHVHg4V1/w==",
+      "version": "21.2.23",
+      "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-21.2.23.tgz";,
+      "integrity": 
"sha512-8FLVNm+HnSS7LPNoWv0tIWbEIy09YAaRj3HCRrCNKpfAksn6LHUXNT+EGsY3UvWEnymhQYWXf7y28p9yoOVY4Q==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@angular-devkit/architect": "0.2102.17",
-        "@angular-devkit/core": "21.2.17",
-        "@angular-devkit/schematics": "21.2.17",
+        "@angular-devkit/architect": "0.2102.23",
+        "@angular-devkit/core": "21.2.23",
+        "@angular-devkit/schematics": "21.2.23",
         "@inquirer/prompts": "7.10.1",
         "@listr2/prompt-adapter-inquirer": "3.0.5",
-        "@modelcontextprotocol/sdk": "1.26.0",
-        "@schematics/angular": "21.2.17",
+        "@modelcontextprotocol/sdk": "1.30.0",
+        "@schematics/angular": "21.2.23",
         "@yarnpkg/lockfile": "1.1.0",
         "algoliasearch": "5.48.1",
         "ini": "6.0.0",
@@ -804,9 +757,9 @@
       }
     },
     "node_modules/@angular/common": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/common/-/common-21.2.17.tgz";,
-      "integrity": 
"sha512-hqAQxRfi5ldFE42suAXRcY+JCANrUh7fuSQ/DtZ7L896id5BT/exuv6dWNBC1PyAfQmRbpD5Pt6/pd+tNLyhDQ==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/common/-/common-21.2.22.tgz";,
+      "integrity": 
"sha512-VWvtZL4xfYmXC56q/1BmtW0San8POAuHOADePJV1Hrjt430QTW5xaXuONZA7ujMs/B3u3PBZEWueKl2JH4LznQ==",
       "license": "MIT",
       "dependencies": {
         "tslib": "^2.3.0"
@@ -815,14 +768,14 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/core": "21.2.17",
+        "@angular/core": "21.2.22",
         "rxjs": "^6.5.3 || ^7.4.0"
       }
     },
     "node_modules/@angular/compiler": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/compiler/-/compiler-21.2.17.tgz";,
-      "integrity": 
"sha512-p+NdjYiwAz9Zmu2yul0LlMXaFjMISVVa24+/MVMoKFeQeI82QE8jDywPlnOSHQHvdCcQVpS7saeEriZzX3JuBQ==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/compiler/-/compiler-21.2.22.tgz";,
+      "integrity": 
"sha512-3tdHaE30abvVzGSwtjpK/r4i8gqSZ6Q0Xc79XvLSTB3kuo4HYir9uvvc7L4YmhBLfSE64CkJPW+2tLiyz8U8jw==",
       "license": "MIT",
       "dependencies": {
         "tslib": "^2.3.0"
@@ -832,13 +785,13 @@
       }
     },
     "node_modules/@angular/compiler-cli": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-21.2.17.tgz";,
-      "integrity": 
"sha512-KithZ3b0HBFH0NbUcswBcjpN9y09vLbarMD7qmGWTnGUBk4W8cn4sbT8zJyv9CRKg9ZcuUBeJYKUfUPn/u/5OQ==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-21.2.22.tgz";,
+      "integrity": 
"sha512-lbXXz8e8wCVecHNjb4kXiUPPNSrzZPE7WsQ+nNTEgnMDsFIqWJzmf3FagmNaZ5/wX1G2jnSZFjK4rpacmBIn4Q==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@babel/core": "7.29.0",
+        "@babel/core": "7.29.7",
         "@jridgewell/sourcemap-codec": "^1.4.14",
         "chokidar": "^5.0.0",
         "convert-source-map": "^1.5.1",
@@ -855,7 +808,7 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/compiler": "21.2.17",
+        "@angular/compiler": "21.2.22",
         "typescript": ">=5.9 <6.1"
       },
       "peerDependenciesMeta": {
@@ -864,58 +817,10 @@
         }
       }
     },
-    "node_modules/@angular/compiler-cli/node_modules/@babel/core": {
-      "version": "7.29.0",
-      "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz";,
-      "integrity": 
"sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "@babel/code-frame": "^7.29.0",
-        "@babel/generator": "^7.29.0",
-        "@babel/helper-compilation-targets": "^7.28.6",
-        "@babel/helper-module-transforms": "^7.28.6",
-        "@babel/helpers": "^7.28.6",
-        "@babel/parser": "^7.29.0",
-        "@babel/template": "^7.28.6",
-        "@babel/traverse": "^7.29.0",
-        "@babel/types": "^7.29.0",
-        "@jridgewell/remapping": "^2.3.5",
-        "convert-source-map": "^2.0.0",
-        "debug": "^4.1.0",
-        "gensync": "^1.0.0-beta.2",
-        "json5": "^2.2.3",
-        "semver": "^6.3.1"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      },
-      "funding": {
-        "type": "opencollective",
-        "url": "https://opencollective.com/babel";
-      }
-    },
-    
"node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/convert-source-map":
 {
-      "version": "2.0.0",
-      "resolved": 
"https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz";,
-      "integrity": 
"sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
-      "dev": true,
-      "license": "MIT"
-    },
-    
"node_modules/@angular/compiler-cli/node_modules/@babel/core/node_modules/semver":
 {
-      "version": "6.3.1",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz";,
-      "integrity": 
"sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
-      "dev": true,
-      "license": "ISC",
-      "bin": {
-        "semver": "bin/semver.js"
-      }
-    },
     "node_modules/@angular/core": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/core/-/core-21.2.17.tgz";,
-      "integrity": 
"sha512-wYHpwIdnUnjQFOJJNqRcGx7LS3u64jT+R9L0TnMR/ViBM9dQgGYImlSikkftg2yrFCNo5aKRxhG2LLskQurVdg==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/core/-/core-21.2.22.tgz";,
+      "integrity": 
"sha512-2pqDzm3T7/h7QF8XfDziVieEOZqNBM95qNgStM8vmJpFzhJEyLtD89xMQ0e365XcgaTOBEaMCWPswq6OuCIEUQ==",
       "license": "MIT",
       "dependencies": {
         "tslib": "^2.3.0"
@@ -924,7 +829,7 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/compiler": "21.2.17",
+        "@angular/compiler": "21.2.22",
         "rxjs": "^6.5.3 || ^7.4.0",
         "zone.js": "~0.15.0 || ~0.16.0"
       },
@@ -938,9 +843,9 @@
       }
     },
     "node_modules/@angular/forms": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/forms/-/forms-21.2.17.tgz";,
-      "integrity": 
"sha512-WKu8XeRSNZo+a+aDDZ3M5OtReF7KYqR/PmZ2l1lSf6N5EEAmc+Ky4aqbRhTL/mTSfHrO4+TDJ4C5A2tFmuwIeA==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/forms/-/forms-21.2.22.tgz";,
+      "integrity": 
"sha512-ogO+VbzAPyjgb0sIXgSET8c9x8ml623kDqUMxXE+W/oCFdDMPx4gom5K6gXtLzd1lVhtHlXBCsFf3UUD734Qvg==",
       "license": "MIT",
       "dependencies": {
         "@standard-schema/spec": "^1.0.0",
@@ -950,16 +855,16 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/common": "21.2.17",
-        "@angular/core": "21.2.17",
-        "@angular/platform-browser": "21.2.17",
+        "@angular/common": "21.2.22",
+        "@angular/core": "21.2.22",
+        "@angular/platform-browser": "21.2.22",
         "rxjs": "^6.5.3 || ^7.4.0"
       }
     },
     "node_modules/@angular/platform-browser": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-21.2.17.tgz";,
-      "integrity": 
"sha512-ROdSliejY37g1EphYmweYdm5cHM8HY3X4tbWt4ubxmhTyYgfN3nxrxfGQ/n7Mz5tDY9VXVLIGDgjLOGYOo4uTQ==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-21.2.22.tgz";,
+      "integrity": 
"sha512-+SNwcb/Xg4VjSmlaJ4/RyJLTtRKVMF4VBo5H0WD+ICugSMYiyuiP7AHB9nzuQt0TeLcrv4KY364z43LueA/iwA==",
       "license": "MIT",
       "dependencies": {
         "tslib": "^2.3.0"
@@ -968,9 +873,9 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/animations": "21.2.17",
-        "@angular/common": "21.2.17",
-        "@angular/core": "21.2.17"
+        "@angular/animations": "21.2.22",
+        "@angular/common": "21.2.22",
+        "@angular/core": "21.2.22"
       },
       "peerDependenciesMeta": {
         "@angular/animations": {
@@ -979,9 +884,9 @@
       }
     },
     "node_modules/@angular/platform-browser-dynamic": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-21.2.17.tgz";,
-      "integrity": 
"sha512-r/BU/T8bOTghP3fIXhzYf5wcMcAmhWnAFv3p4asCCPXomaktoas70wYcMaDH+pK1LAFBxLwzBWHm36MpFlTMFg==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-21.2.22.tgz";,
+      "integrity": 
"sha512-EBu3mCNgHPRGwTdzV8XtVtP4Bu9JE4F35Zc6kOr7yt8NRceW1/PlujFL+NfmeIEoAWSdboPgHq3BIBFcRJ81RA==",
       "deprecated": "@angular/platform-browser-dynamic is deprecated. Use 
`@angular/platform-browser` instead.",
       "license": "MIT",
       "dependencies": {
@@ -991,16 +896,16 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/common": "21.2.17",
-        "@angular/compiler": "21.2.17",
-        "@angular/core": "21.2.17",
-        "@angular/platform-browser": "21.2.17"
+        "@angular/common": "21.2.22",
+        "@angular/compiler": "21.2.22",
+        "@angular/core": "21.2.22",
+        "@angular/platform-browser": "21.2.22"
       }
     },
     "node_modules/@angular/router": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@angular/router/-/router-21.2.17.tgz";,
-      "integrity": 
"sha512-RSCtK5ppAV6y6wfRLHSK2a9Wc/vm8j0wsC+/j9PH9yQmppWFVXDWsg5E39MKOIpnoYVx2+hI6eak6+wYtZTe1A==",
+      "version": "21.2.22",
+      "resolved": 
"https://registry.npmjs.org/@angular/router/-/router-21.2.22.tgz";,
+      "integrity": 
"sha512-S3Fl6jWjm4DfkaY6ikDDcd7d8J0BiDNjB3+rFarqD0t58UP/ER6Jv4kamPIAKAV2DfQvCnYE8ks1dY1xFlf7Hg==",
       "license": "MIT",
       "dependencies": {
         "tslib": "^2.3.0"
@@ -1009,9 +914,9 @@
         "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
       },
       "peerDependencies": {
-        "@angular/common": "21.2.17",
-        "@angular/core": "21.2.17",
-        "@angular/platform-browser": "21.2.17",
+        "@angular/common": "21.2.22",
+        "@angular/core": "21.2.22",
+        "@angular/platform-browser": "21.2.22",
         "rxjs": "^6.5.3 || ^7.4.0"
       }
     },
@@ -1408,23 +1313,6 @@
         "semver": "bin/semver.js"
       }
     },
-    "node_modules/@babel/generator": {
-      "version": "7.29.1",
-      "resolved": 
"https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz";,
-      "integrity": 
"sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==",
-      "dev": true,
-      "license": "MIT",
-      "dependencies": {
-        "@babel/parser": "^7.29.0",
-        "@babel/types": "^7.29.0",
-        "@jridgewell/gen-mapping": "^0.3.12",
-        "@jridgewell/trace-mapping": "^0.3.28",
-        "jsesc": "^3.0.2"
-      },
-      "engines": {
-        "node": ">=6.9.0"
-      }
-    },
     "node_modules/@babel/helper-annotate-as-pure": {
       "version": "7.27.3",
       "resolved": 
"https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz";,
@@ -2531,9 +2419,9 @@
       "license": "MIT"
     },
     "node_modules/@eslint/config-array/node_modules/brace-expansion": {
-      "version": "1.1.15",
-      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.15.tgz";,
-      "integrity": 
"sha512-EwOCDEex4quD37XhqM3omwtMoJjr//isUZz1JopUNWms+4Z2ViyM/k1YIRePpoVNnQhENnxtFjLaxNHrT7xIUg==",
+      "version": "1.1.18",
+      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz";,
+      "integrity": 
"sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -2629,9 +2517,9 @@
       "license": "MIT"
     },
     "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
-      "version": "1.1.15",
-      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.15.tgz";,
-      "integrity": 
"sha512-EwOCDEex4quD37XhqM3omwtMoJjr//isUZz1JopUNWms+4Z2ViyM/k1YIRePpoVNnQhENnxtFjLaxNHrT7xIUg==",
+      "version": "1.1.18",
+      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz";,
+      "integrity": 
"sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -2725,13 +2613,13 @@
       "optional": true
     },
     "node_modules/@hono/node-server": {
-      "version": "1.19.14",
-      "resolved": 
"https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.14.tgz";,
-      "integrity": 
"sha512-GwtvgtXxnWsucXvbQXkRgqksiH2Qed37H9xHZocE5sA3N8O8O8/8FA3uclQXxXVzc9XBZuEOMK7+r02FmSpHtw==",
+      "version": "2.1.1",
+      "resolved": 
"https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.1.tgz";,
+      "integrity": 
"sha512-ELuehkj5VCBdgEw9zs+ivkKwyzzUCSQuE96YmiPvn1ECBoZCczbFXJLeEGMTYjphP6gydh4pHMqEYPVMYUVgQg==",
       "dev": true,
       "license": "MIT",
       "engines": {
-        "node": ">=18.14.1"
+        "node": ">=20"
       },
       "peerDependencies": {
         "hono": "^4"
@@ -3362,13 +3250,13 @@
       ]
     },
     "node_modules/@modelcontextprotocol/sdk": {
-      "version": "1.26.0",
-      "resolved": 
"https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.26.0.tgz";,
-      "integrity": 
"sha512-Y5RmPncpiDtTXDbLKswIJzTqu2hyBKxTNsgKqKclDbhIgg1wgtf1fRuvxgTnRfcnxtvvgbIEcqUOzZrJ6iSReg==",
+      "version": "1.30.0",
+      "resolved": 
"https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.30.0.tgz";,
+      "integrity": 
"sha512-xKd8OIzlqNzcqcNumGAa6g+PW2kjD5vrpcKOnfldAUPP3j7lnqMPwlTXQm8gF+UwH72z0lqaRbjr9hqGz0eITA==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@hono/node-server": "^1.19.9",
+        "@hono/node-server": "^1.19.9 || ^2.0.5",
         "ajv": "^8.17.1",
         "ajv-formats": "^3.0.1",
         "content-type": "^1.0.5",
@@ -5027,14 +4915,14 @@
       "license": "MIT"
     },
     "node_modules/@schematics/angular": {
-      "version": "21.2.17",
-      "resolved": 
"https://registry.npmjs.org/@schematics/angular/-/angular-21.2.17.tgz";,
-      "integrity": 
"sha512-rKHz2//1S3j4MKfsRDtJjnNoCfqSj2dNJDN27pLT9h4oLfBs2wJinfRTQywo2fVGdUcDd+mXBnltqdLJlcoFNw==",
+      "version": "21.2.23",
+      "resolved": 
"https://registry.npmjs.org/@schematics/angular/-/angular-21.2.23.tgz";,
+      "integrity": 
"sha512-bsQm5NbmaOhYzplQbanMp/PTTnZkxcK8ZlWTIrEO2kb5GzOUyl8RGddG4uM35mNyDcQHFEwNLbYkNK9WZM3x1g==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
-        "@angular-devkit/core": "21.2.17",
-        "@angular-devkit/schematics": "21.2.17",
+        "@angular-devkit/core": "21.2.23",
+        "@angular-devkit/schematics": "21.2.23",
         "jsonc-parser": "3.3.1"
       },
       "engines": {
@@ -5551,6 +5439,13 @@
         "undici-types": "~6.21.0"
       }
     },
+    "node_modules/@types/trusted-types": {
+      "version": "2.0.7",
+      "resolved": 
"https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz";,
+      "integrity": 
"sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==",
+      "license": "MIT",
+      "optional": true
+    },
     "node_modules/@typescript-eslint/eslint-plugin": {
       "version": "8.62.1",
       "resolved": 
"https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.62.1.tgz";,
@@ -6304,9 +6199,9 @@
       }
     },
     "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.11.21",
+      "resolved": 
"https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.21.tgz";,
+      "integrity": 
"sha512-uh8vpY/1/YyFkunIDFH/12p7/7VdPKA1hejMVEbdkEaWnUz0Hesvx5EbiU6XxjyHZIOju+ZMbQJkRh+es3/spQ==",
       "dev": true,
       "license": "Apache-2.0",
       "bin": {
@@ -6373,9 +6268,9 @@
       }
     },
     "node_modules/body-parser/node_modules/content-type": {
-      "version": "2.0.0",
-      "resolved": 
"https://registry.npmjs.org/content-type/-/content-type-2.0.0.tgz";,
-      "integrity": 
"sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==",
+      "version": "2.1.0",
+      "resolved": 
"https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz";,
+      "integrity": 
"sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -6394,16 +6289,16 @@
       "license": "ISC"
     },
     "node_modules/brace-expansion": {
-      "version": "5.0.7",
-      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.7.tgz";,
-      "integrity": 
"sha512-7oFy703dxfY3/NLxC1fh2SUCQ0H9rmAY+5EpDVfXjUTTs+HEwR2nYaqLv+GWcTsumwxPfiz6CzCNkwXwBUwqCA==",
+      "version": "5.0.9",
+      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz";,
+      "integrity": 
"sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
         "balanced-match": "^4.0.2"
       },
       "engines": {
-        "node": "18 || 20 || >=22"
+        "node": "20 || >=22"
       }
     },
     "node_modules/braces": {
@@ -6420,9 +6315,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.9",
+      "resolved": 
"https://registry.npmjs.org/browserslist/-/browserslist-4.28.9.tgz";,
+      "integrity": 
"sha512-EWazOblFYUvlGZcfGhPUPmYh3nikUxBVb+y9MJun5f3hBi812X+8MSQTujLBtgK3cf51fJWbWfOjyeO954d+Eg==",
       "dev": true,
       "funding": [
         {
@@ -6440,11 +6335,11 @@
       ],
       "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",
-        "update-browserslist-db": "^1.2.3"
+        "baseline-browser-mapping": "^2.11.20",
+        "caniuse-lite": "^1.0.30001810",
+        "electron-to-chromium": "^1.5.420",
+        "node-releases": "^2.0.54",
+        "update-browserslist-db": "^1.3.2"
       },
       "bin": {
         "browserslist": "cli.js"
@@ -6587,9 +6482,9 @@
       }
     },
     "node_modules/caniuse-lite": {
-      "version": "1.0.30001800",
-      "resolved": 
"https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001800.tgz";,
-      "integrity": 
"sha512-MMHtuAz9Ys840zAY5F4k6fV5GaivZ9sPk+nz0mY+GYVzRBnYkN0mpqkSR92oWRQ19yQWo4HvBV/FnC16AJX8MA==",
+      "version": "1.0.30001810",
+      "resolved": 
"https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001810.tgz";,
+      "integrity": 
"sha512-TITQPUkaz+aVk5GL6NhOdwk1aEaNTSDPsGFWrTuhKGtjTF70jL/Oht2W4c6rXUe5fu7Ie19VIahAXHIIiWWNeg==",
       "dev": true,
       "funding": [
         {
@@ -6918,15 +6813,18 @@
       }
     },
     "node_modules/copy-anything": {
-      "version": "2.0.6",
-      "resolved": 
"https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz";,
-      "integrity": 
"sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==",
+      "version": "3.0.5",
+      "resolved": 
"https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz";,
+      "integrity": 
"sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==",
       "dev": true,
       "license": "MIT",
       "optional": true,
       "peer": true,
       "dependencies": {
-        "is-what": "^3.14.1"
+        "is-what": "^4.1.8"
+      },
+      "engines": {
+        "node": ">=12.13"
       },
       "funding": {
         "url": "https://github.com/sponsors/mesqueeb";
@@ -7787,15 +7685,6 @@
         "url": "https://github.com/fb55/domhandler?sponsor=1";
       }
     },
-    "node_modules/dompurify": {
-      "version": "3.2.7",
-      "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.2.7.tgz";,
-      "integrity": 
"sha512-WhL/YuveyGXJaerVlMYGWhvQswa7myDG17P7Vu65EWC05o8vfeNbvNf4d/BOvH99+ZW+LlQsc1GDKMa1vNK6dw==",
-      "license": "(MPL-2.0 OR Apache-2.0)",
-      "optionalDependencies": {
-        "@types/trusted-types": "^2.0.7"
-      }
-    },
     "node_modules/domutils": {
       "version": "3.2.2",
       "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz";,
@@ -7834,9 +7723,9 @@
       "license": "MIT"
     },
     "node_modules/electron-to-chromium": {
-      "version": "1.5.382",
-      "resolved": 
"https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.382.tgz";,
-      "integrity": 
"sha512-8ETaWbV6SZOrno+G93Ffd9ENsMtetqdnqj4nlfxFW90Sm5GgnuV28Kf62hqQVD6VUgzm7qFQKsTsAPmeUiU3Ug==",
+      "version": "1.5.422",
+      "resolved": 
"https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.422.tgz";,
+      "integrity": 
"sha512-UvA/32XqrLDdZSn7Jllo1AYNcWji/G0d5M0GTViE7KoGBiMunw3a34Sb2KO4ZZyrSEhqsxFoVhWWJshdyfKqJA==",
       "dev": true,
       "license": "ISC"
     },
@@ -8352,9 +8241,9 @@
       "license": "MIT"
     },
     "node_modules/eslint-plugin-import/node_modules/brace-expansion": {
-      "version": "1.1.15",
-      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.15.tgz";,
-      "integrity": 
"sha512-EwOCDEex4quD37XhqM3omwtMoJjr//isUZz1JopUNWms+4Z2ViyM/k1YIRePpoVNnQhENnxtFjLaxNHrT7xIUg==",
+      "version": "1.1.18",
+      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz";,
+      "integrity": 
"sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -8547,9 +8436,9 @@
       "license": "MIT"
     },
     "node_modules/eslint/node_modules/brace-expansion": {
-      "version": "1.1.15",
-      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.15.tgz";,
-      "integrity": 
"sha512-EwOCDEex4quD37XhqM3omwtMoJjr//isUZz1JopUNWms+4Z2ViyM/k1YIRePpoVNnQhENnxtFjLaxNHrT7xIUg==",
+      "version": "1.1.18",
+      "resolved": 
"https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz";,
+      "integrity": 
"sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
@@ -8755,9 +8644,9 @@
       }
     },
     "node_modules/eventsource-parser": {
-      "version": "3.1.0",
-      "resolved": 
"https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.0.tgz";,
-      "integrity": 
"sha512-kJezFj9YFAMLeORyi7aCLxLbD5/qWMQnoMVlVPyHIll7lgRJCc3JVln9Vgl9nwQi0YkMnhdGTMNn7CkRRAptMg==",
+      "version": "3.1.1",
+      "resolved": 
"https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.1.tgz";,
+      "integrity": 
"sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -8826,12 +8715,13 @@
       }
     },
     "node_modules/express-rate-limit": {
-      "version": "8.5.2",
-      "resolved": 
"https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.5.2.tgz";,
-      "integrity": 
"sha512-5Kb34ipNX694DH48vN9irak1Qx30nb0PLYHXfJgw4YEjiC3ZEmZJhwOp+VfiCYwFzvFTdB9QkArYS5kXa2cx2A==",
+      "version": "8.7.0",
+      "resolved": 
"https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.7.0.tgz";,
+      "integrity": 
"sha512-hOwV7WOxXfjRpAM1DSJWZDXx3GhplwD8IfwuwvogD8i1Qnkgosw/H45s4ZnFAUHDAhPjlY9hLBvJhKmGMyY26g==",
       "dev": true,
       "license": "MIT",
       "dependencies": {
+        "debug": "^4.4.3",
         "ip-address": "^10.2.0"
       },
       "engines": {
@@ -8903,9 +8793,9 @@
       "license": "MIT"
     },
     "node_modules/fast-uri": {
-      "version": "3.1.3",
-      "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.3.tgz";,
-      "integrity": 
"sha512-i70LwGWUduXqzicKXWshooq+sWL1K3WUU5rKZNG/0i3a1OSoX3HqhH5WbWwTmqWfor4urUakGPiRQcleRZTwOg==",
+      "version": "3.1.7",
+      "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.7.tgz";,
+      "integrity": 
"sha512-dOvZVzjdZdz7phd9v6jCbwxrBW3fK6n8Rc0CtdmM4bumzMnxywBYhuph6J819RRw/ku+rLbelwfMunktuzVVHg==",
       "dev": true,
       "funding": [
         {
@@ -9530,9 +9420,9 @@
       }
     },
     "node_modules/hono": {
-      "version": "4.12.27",
-      "resolved": "https://registry.npmjs.org/hono/-/hono-4.12.27.tgz";,
-      "integrity": 
"sha512-1yrb/+w6HWQJrUCLkJ2IF5jNIPvvFkblV5RNOYl6bV+OA6p9GLcMpHFFGTosSvHvcAUibuUukRqhlYI4z32C7Q==",
+      "version": "4.13.7",
+      "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.7.tgz";,
+      "integrity": 
"sha512-c8/gF9ac8Y78/agExVocyLevgR+JlpNB444Py0FSX8pJoPdYUfUzRcXtYEYGwt6l19qIlVZPN5Mfsw9jFShmQQ==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -9757,21 +9647,6 @@
         "node": "^20.17.0 || >=22.9.0"
       }
     },
-    "node_modules/image-size": {
-      "version": "0.5.5",
-      "resolved": 
"https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz";,
-      "integrity": 
"sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==",
-      "dev": true,
-      "license": "MIT",
-      "optional": true,
-      "peer": true,
-      "bin": {
-        "image-size": "bin/image-size.js"
-      },
-      "engines": {
-        "node": ">=0.10.0"
-      }
-    },
     "node_modules/immutable": {
       "version": "5.1.9",
       "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.9.tgz";,
@@ -9859,9 +9734,9 @@
       }
     },
     "node_modules/ip-address": {
-      "version": "10.2.0",
-      "resolved": 
"https://registry.npmjs.org/ip-address/-/ip-address-10.2.0.tgz";,
-      "integrity": 
"sha512-/+S6j4E9AHvW9SWMSEY9Xfy66O5PWvVEJ08O0y5JGyEKQpojb0K0GKpz/v5HJ/G0vi3D2sjGK78119oXZeE0qA==",
+      "version": "10.7.0",
+      "resolved": 
"https://registry.npmjs.org/ip-address/-/ip-address-10.7.0.tgz";,
+      "integrity": 
"sha512-BGFsyJd5mpXp3rK6jIdADLNgpJUK1jnjzvYF8lK+VyDab9JAmqN0YOKDdP17HlgKb2+ehPgDc8EtnRLbGCAMhA==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -10347,13 +10222,19 @@
       }
     },
     "node_modules/is-what": {
-      "version": "3.14.1",
-      "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz";,
-      "integrity": 
"sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==",
+      "version": "4.1.16",
+      "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz";,
+      "integrity": 
"sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==",
       "dev": true,
       "license": "MIT",
       "optional": true,
-      "peer": true
+      "peer": true,
+      "engines": {
+        "node": ">=12.13"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/mesqueeb";
+      }
     },
     "node_modules/isarray": {
       "version": "2.0.5",
@@ -10409,9 +10290,9 @@
       }
     },
     "node_modules/jose": {
-      "version": "6.2.3",
-      "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.3.tgz";,
-      "integrity": 
"sha512-YYVDInQKFJfR/xa3ojUTl8c2KoTwiL1R5Wg9YCydwH0x0B9grbzlg5HC7mMjCtUJjbQ/YnGEZIhI5tCgfTb4Hw==",
+      "version": "6.2.12",
+      "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.12.tgz";,
+      "integrity": 
"sha512-9NiFmJEex0sy2Dk58j2UGBSHgUs2ypF9eZSu4L6vjOX3Dp96Sw1F3uL+H+D1sx02jZZdzUT0HgvCy59CuvXcWw==",
       "dev": true,
       "license": "MIT",
       "funding": {
@@ -10426,9 +10307,9 @@
       "license": "MIT"
     },
     "node_modules/js-yaml": {
-      "version": "4.3.0",
-      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz";,
-      "integrity": 
"sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==",
+      "version": "4.3.2",
+      "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.2.tgz";,
+      "integrity": 
"sha512-SFNOvSJ+Dgf/9An904Yx+CgSlIPCkIpao4qo51lpee25TIRejdH3rhR4EZMGoNx3/TP3O+wzWuiTFl4sqbltzA==",
       "dev": true,
       "funding": [
         {
@@ -10543,9 +10424,9 @@
       }
     },
     "node_modules/jsdom/node_modules/undici": {
-      "version": "7.28.0",
-      "resolved": "https://registry.npmjs.org/undici/-/undici-7.28.0.tgz";,
-      "integrity": 
"sha512-cRZYrTDwWznlnRiPjggAGxZXanty6M8RV1ff8Wm4LWXBp7/IG8v5DnOm74DtUBp9OONpK75YlPnIjQqX0dBDtA==",
+      "version": "7.29.1",
+      "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.1.tgz";,
+      "integrity": 
"sha512-RYONW2MeafgYlkVOKYKkA/Ag7BmXqgIWCa8t1m0JcxrQg9pI9lEqRhAOruOBCbAohOa/gkCF+iPi9hrgvTzu6Q==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -10654,31 +10535,30 @@
       }
     },
     "node_modules/less": {
-      "version": "4.4.2",
-      "resolved": "https://registry.npmjs.org/less/-/less-4.4.2.tgz";,
-      "integrity": 
"sha512-j1n1IuTX1VQjIy3tT7cyGbX7nvQOsFLoIqobZv4ttI5axP923gA44zUj6miiA6R5Aoms4sEGVIIcucXUbRI14g==",
+      "version": "4.9.1",
+      "resolved": "https://registry.npmjs.org/less/-/less-4.9.1.tgz";,
+      "integrity": 
"sha512-orp15PfJvvNDIqJdVWzMI9Sjpjp3VTiw3sfvbB+67LlISTEn8uVT2EdYSuyl02BLvaftv6sdk9Umnxmm5rckmg==",
       "dev": true,
       "license": "Apache-2.0",
       "optional": true,
       "peer": true,
       "dependencies": {
-        "copy-anything": "^2.0.1",
-        "parse-node-version": "^1.0.1",
-        "tslib": "^2.3.0"
+        "copy-anything": "^3.0.5",
+        "parse-node-version": "^1.0.1"
       },
       "bin": {
         "lessc": "bin/lessc"
       },
       "engines": {
-        "node": ">=14"
+        "node": ">=18"
       },
       "optionalDependencies": {
         "errno": "^0.1.1",
         "graceful-fs": "^4.1.2",
-        "image-size": "~0.5.0",
-        "make-dir": "^2.1.0",
+        "make-dir": "^5.1.0",
         "mime": "^1.4.1",
         "needle": "^3.1.0",
+        "probe-image-size": "^7.2.3",
         "source-map": "~0.6.0"
       }
     },
@@ -11379,31 +11259,18 @@
       }
     },
     "node_modules/make-dir": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz";,
-      "integrity": 
"sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
+      "version": "5.1.0",
+      "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-5.1.0.tgz";,
+      "integrity": 
"sha512-IfpFq6UM39dUNiphpA6uDezNx/AvWyhwfICWPR3t1VspkgkMZrL+Rk1RbN1bx+aeNYwOrqGJgEgV3yotk+ZUVw==",
       "dev": true,
       "license": "MIT",
       "optional": true,
       "peer": true,
-      "dependencies": {
-        "pify": "^4.0.1",
-        "semver": "^5.6.0"
-      },
       "engines": {
-        "node": ">=6"
-      }
-    },
-    "node_modules/make-dir/node_modules/semver": {
-      "version": "5.7.2",
-      "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz";,
-      "integrity": 
"sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
-      "dev": true,
-      "license": "ISC",
-      "optional": true,
-      "peer": true,
-      "bin": {
-        "semver": "bin/semver"
+        "node": ">=18"
+      },
+      "funding": {
+        "url": "https://github.com/sponsors/sindresorhus";
       }
     },
     "node_modules/make-error": {
@@ -11478,13 +11345,17 @@
       "license": "CC0-1.0"
     },
     "node_modules/media-typer": {
-      "version": "1.1.0",
-      "resolved": 
"https://registry.npmjs.org/media-typer/-/media-typer-1.1.0.tgz";,
-      "integrity": 
"sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw==",
+      "version": "1.1.1",
+      "resolved": 
"https://registry.npmjs.org/media-typer/-/media-typer-1.1.1.tgz";,
+      "integrity": 
"sha512-yz3xRaG20c6/BOzvYoDaGtPmGscs7YivItZEEqe6GbwNfHuxu9YNmvnEkMzKldAGY4/80pRcQRZSEnhquk9XuQ==",
       "dev": true,
       "license": "MIT",
       "engines": {
         "node": ">= 0.8"
+      },
+      "funding": {
+        "type": "opencollective",
+        "url": "https://opencollective.com/express";
       }
     },
     "node_modules/meow": {
@@ -11765,15 +11636,24 @@
       }
     },
     "node_modules/monaco-editor": {
-      "version": "0.55.1",
-      "resolved": 
"https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.55.1.tgz";,
-      "integrity": 
"sha512-jz4x+TJNFHwHtwuV9vA9rMujcZRb0CEilTEwG2rRSpe/A7Jdkuj8xPKttCgOh+v/lkHy7HsZ64oj+q3xoAFl9A==",
+      "version": "0.56.0",
+      "resolved": 
"https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.56.0.tgz";,
+      "integrity": 
"sha512-sXboRm3BeBeLm938eaiyLMe0OxzfXIlZvbv4ir/jVgQy1zDhWjgmny0WoN45fuDKhCCQsYMbBJrv/A6jd8aCUg==",
       "license": "MIT",
       "dependencies": {
-        "dompurify": "3.2.7",
+        "dompurify": "3.4.8",
         "marked": "14.0.0"
       }
     },
+    "node_modules/monaco-editor/node_modules/dompurify": {
+      "version": "3.4.8",
+      "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.4.8.tgz";,
+      "integrity": 
"sha512-yb1cEmaOum7wFvOCSQxyfgVlv5D47Rc30iZWoMpbDIWTnJ6grDDQyu2KFJzB2k7u0pMuJcQ1zphH//fFnw2tjQ==",
+      "license": "(MPL-2.0 OR Apache-2.0)",
+      "optionalDependencies": {
+        "@types/trusted-types": "^2.0.7"
+      }
+    },
     "node_modules/mrmime": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz";,
@@ -11836,9 +11716,9 @@
       }
     },
     "node_modules/nanoid": {
-      "version": "3.3.15",
-      "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.15.tgz";,
-      "integrity": 
"sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA==",
+      "version": "3.3.18",
+      "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz";,
+      "integrity": 
"sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==",
       "dev": true,
       "funding": [
         {
@@ -12030,9 +11910,9 @@
       }
     },
     "node_modules/node-releases": {
-      "version": "2.0.50",
-      "resolved": 
"https://registry.npmjs.org/node-releases/-/node-releases-2.0.50.tgz";,
-      "integrity": 
"sha512-J6l92tKHX6w8Jy5nO1Vuc01NoIiRGi/d6qBKVxh+IQ8Cr3b6HbVNfKiF8ZpFKufTwpwxMmce2W3iQZ861ZRyTg==",
+      "version": "2.0.54",
+      "resolved": 
"https://registry.npmjs.org/node-releases/-/node-releases-2.0.54.tgz";,
+      "integrity": 
"sha512-YHs7BmmcsdAI5Ozuf8JZo6PT0mv2GIWC9vMfvUC3dp65M8hn7Ux8CPL+2oBI7juNuj9d0ndhTcznq2ODBps9cQ==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -12720,18 +12600,6 @@
         "url": "https://github.com/sponsors/jonschlinkert";
       }
     },
-    "node_modules/pify": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz";,
-      "integrity": 
"sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
-      "dev": true,
-      "license": "MIT",
-      "optional": true,
-      "peer": true,
-      "engines": {
-        "node": ">=6"
-      }
-    },
     "node_modules/piscina": {
       "version": "5.2.0",
       "resolved": "https://registry.npmjs.org/piscina/-/piscina-5.2.0.tgz";,
@@ -12766,9 +12634,9 @@
       }
     },
     "node_modules/postcss": {
-      "version": "8.5.16",
-      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.16.tgz";,
-      "integrity": 
"sha512-vuwillviilfKZsg0VGj5R/YwwcHx4SLsIOI/7K6mQkWx+l5cUHTjj5g0AasTBcyXsbfTgrwsUNmVUb5xVwyPwg==",
+      "version": "8.5.28",
+      "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.28.tgz";,
+      "integrity": 
"sha512-RRuzqDtt5Y9h3quz5hWhK+TPnsmVs6WwSU6LkJMeY4HstUEDuYTG8UJSdawMRzmzAtV+KEoG8N3Qg2qLy5vM/A==",
       "dev": true,
       "funding": [
         {
@@ -12786,7 +12654,7 @@
       ],
       "license": "MIT",
       "dependencies": {
-        "nanoid": "^3.3.12",
+        "nanoid": "^3.3.18",
         "picocolors": "^1.1.1",
         "source-map-js": "^1.2.1"
       },
@@ -12911,6 +12779,77 @@
         "node": ">=6.0.0"
       }
     },
+    "node_modules/probe-image-size": {
+      "version": "7.4.0",
+      "resolved": 
"https://registry.npmjs.org/probe-image-size/-/probe-image-size-7.4.0.tgz";,
+      "integrity": 
"sha512-cdEprVtZxV+awMde9X+4jILBFYh4CARxVrQaMl4wY4YcPWbul9jntXrIW95NInBDyJwcVUP3U0T6yukN8rMBaQ==",
+      "dev": true,
+      "funding": [
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/puzrin";
+        },
+        {
+          "type": "github",
+          "url": "https://github.com/sponsors/nodeca";
+        }
+      ],
+      "license": "MIT",
+      "optional": true,
+      "peer": true,
+      "dependencies": {
+        "lodash.merge": "^4.6.2",
+        "needle": "^2.5.2",
+        "stream-parser": "~0.3.1"
+      }
+    },
+    "node_modules/probe-image-size/node_modules/debug": {
+      "version": "3.2.7",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz";,
+      "integrity": 
"sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+      "dev": true,
+      "license": "MIT",
+      "optional": true,
+      "peer": true,
+      "dependencies": {
+        "ms": "^2.1.1"
+      }
+    },
+    "node_modules/probe-image-size/node_modules/iconv-lite": {
+      "version": "0.4.24",
+      "resolved": 
"https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz";,
+      "integrity": 
"sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+      "dev": true,
+      "license": "MIT",
+      "optional": true,
+      "peer": true,
+      "dependencies": {
+        "safer-buffer": ">= 2.1.2 < 3"
+      },
+      "engines": {
+        "node": ">=0.10.0"
+      }
+    },
+    "node_modules/probe-image-size/node_modules/needle": {
+      "version": "2.9.1",
+      "resolved": "https://registry.npmjs.org/needle/-/needle-2.9.1.tgz";,
+      "integrity": 
"sha512-6R9fqJ5Zcmf+uYaFgdIHmLwNldn5HbK8L5ybn7Uz+ylX/rnOsSp1AHcvQSrCaFN+qNM1wpymHqD7mVasEOlHGQ==",
+      "dev": true,
+      "license": "MIT",
+      "optional": true,
+      "peer": true,
+      "dependencies": {
+        "debug": "^3.2.6",
+        "iconv-lite": "^0.4.4",
+        "sax": "^1.2.4"
+      },
+      "bin": {
+        "needle": "bin/needle"
+      },
+      "engines": {
+        "node": ">= 4.4.x"
+      }
+    },
     "node_modules/proc-log": {
       "version": "6.1.0",
       "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-6.1.0.tgz";,
@@ -12975,9 +12914,9 @@
       "license": "MIT"
     },
     "node_modules/qs": {
-      "version": "6.15.3",
-      "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz";,
-      "integrity": 
"sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==",
+      "version": "6.16.0",
+      "resolved": "https://registry.npmjs.org/qs/-/qs-6.16.0.tgz";,
+      "integrity": 
"sha512-h6fhOIaRrID2CbEY2fqs+7t+UXZo+MLAnU5gRIq85uFtdiUPCdsApMlHhXogKVM4HM2DVbIjGNTTYH2OcmP1vA==",
       "dev": true,
       "license": "BSD-3-Clause",
       "dependencies": {
@@ -13891,6 +13830,39 @@
         "node": ">= 0.4"
       }
     },
+    "node_modules/stream-parser": {
+      "version": "0.3.1",
+      "resolved": 
"https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz";,
+      "integrity": 
"sha512-bJ/HgKq41nlKvlhccD5kaCr/P+Hu0wPNKPJOH7en+YrJu/9EgqUF+88w5Jb6KNcjOFMhfX4B2asfeAtIGuHObQ==",
+      "dev": true,
+      "license": "MIT",
+      "optional": true,
+      "peer": true,
+      "dependencies": {
+        "debug": "2"
+      }
+    },
+    "node_modules/stream-parser/node_modules/debug": {
+      "version": "2.6.9",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz";,
+      "integrity": 
"sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+      "dev": true,
+      "license": "MIT",
+      "optional": true,
+      "peer": true,
+      "dependencies": {
+        "ms": "2.0.0"
+      }
+    },
+    "node_modules/stream-parser/node_modules/ms": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz";,
+      "integrity": 
"sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+      "dev": true,
+      "license": "MIT",
+      "optional": true,
+      "peer": true
+    },
     "node_modules/string-width": {
       "version": "8.2.2",
       "resolved": 
"https://registry.npmjs.org/string-width/-/string-width-8.2.2.tgz";,
@@ -14353,9 +14325,9 @@
       }
     },
     "node_modules/tar": {
-      "version": "7.5.19",
-      "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.19.tgz";,
-      "integrity": 
"sha512-4LeEWl96twnS2Q7Bz4MGqgazLqO+hJN63GZxXoIqh1T3VweYD997gbU1ItNsQafqqXTXd5WFyFdReLtwvRBNiw==",
+      "version": "7.5.22",
+      "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.22.tgz";,
+      "integrity": 
"sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==",
       "dev": true,
       "license": "BlueOak-1.0.0",
       "dependencies": {
@@ -14659,9 +14631,9 @@
       }
     },
     "node_modules/type-is/node_modules/content-type": {
-      "version": "2.0.0",
-      "resolved": 
"https://registry.npmjs.org/content-type/-/content-type-2.0.0.tgz";,
-      "integrity": 
"sha512-j/O/d7GcZCyNl7/hwZAb606rzqkyvaDctLmckbxLzHvFBzTJHuGEdodATcP3yIRoDrLHkIATJuvzbFlp/ki2cQ==",
+      "version": "2.1.0",
+      "resolved": 
"https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz";,
+      "integrity": 
"sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -14808,9 +14780,9 @@
       }
     },
     "node_modules/undici": {
-      "version": "6.27.0",
-      "resolved": "https://registry.npmjs.org/undici/-/undici-6.27.0.tgz";,
-      "integrity": 
"sha512-YmfV3YnEDzXRC5lZ2jWtWWHKGUm1zIt8AhesR1tens+HTNv+YZlN/dp6G727LOvMJ8xjP9Be7Y2Sdr96LDm+pg==",
+      "version": "6.28.1",
+      "resolved": "https://registry.npmjs.org/undici/-/undici-6.28.1.tgz";,
+      "integrity": 
"sha512-zWpdTVD54H48CIybL0rWQ3ukpb9d23wM7eH5RtfdmeP70cWHNjtfo7P4vZX+5CoDcO53J4Pu5uXp7lNfjc6DRA==",
       "dev": true,
       "license": "MIT",
       "engines": {
@@ -14848,9 +14820,9 @@
       }
     },
     "node_modules/update-browserslist-db": {
-      "version": "1.2.3",
-      "resolved": 
"https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz";,
-      "integrity": 
"sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w==",
+      "version": "1.3.2",
+      "resolved": 
"https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.2.tgz";,
+      "integrity": 
"sha512-UQ+MSxlhRm1bzjhU+DcuXfjFO1FzNtqhK5+9Yvlp90ItDLk5vT932A0rFu619nf7RVS+Y/VeaUW1jaRDqZ8VJw==",
       "dev": true,
       "funding": [
         {
diff --git a/flink-runtime-web/web-dashboard/package.json 
b/flink-runtime-web/web-dashboard/package.json
index b5eed921260..235ba4f4ebe 100644
--- a/flink-runtime-web/web-dashboard/package.json
+++ b/flink-runtime-web/web-dashboard/package.json
@@ -13,20 +13,20 @@
   },
   "private": true,
   "dependencies": {
-    "@angular/animations": "^21.2.17",
-    "@angular/common": "^21.2.17",
-    "@angular/compiler": "^21.2.17",
-    "@angular/core": "^21.2.17",
-    "@angular/forms": "^21.2.17",
-    "@angular/platform-browser": "^21.2.17",
-    "@angular/platform-browser-dynamic": "^21.2.17",
-    "@angular/router": "^21.2.17",
+    "@angular/animations": "^21.2.22",
+    "@angular/common": "^21.2.22",
+    "@angular/compiler": "^21.2.22",
+    "@angular/core": "^21.2.22",
+    "@angular/forms": "^21.2.22",
+    "@angular/platform-browser": "^21.2.22",
+    "@angular/platform-browser-dynamic": "^21.2.22",
+    "@angular/router": "^21.2.22",
     "@antv/g2": "^4.2.12",
     "@dagrejs/dagre": "^3.0.0",
     "core-js": "^3.49.0",
     "d3": "^7.9.0",
     "d3-flame-graph": "^5.0.0",
-    "monaco-editor": "^0.55.1",
+    "monaco-editor": "^0.56.0",
     "ng-zorro-antd": "^21.3.2",
     "rxjs": "^7.5.7",
     "tslib": "^2.0.0",
@@ -39,9 +39,9 @@
     "@angular-eslint/eslint-plugin-template": "21.4.0",
     "@angular-eslint/schematics": "^21.4.0",
     "@angular-eslint/template-parser": "21.4.0",
-    "@angular/build": "^21.2.17",
-    "@angular/cli": "^21.2.17",
-    "@angular/compiler-cli": "^21.2.17",
+    "@angular/build": "^21.2.23",
+    "@angular/cli": "^21.2.23",
+    "@angular/compiler-cli": "^21.2.22",
     "@types/d3": "^7.4.3",
     "@types/node": "^22.16.0",
     "angular-eslint": "21.4.0",

Reply via email to