diff --git a/package.json b/package.json index b8d7844..4611b65 100644 --- a/package.json +++ b/package.json @@ -14,24 +14,25 @@ }, "private": true, "dependencies": { - "@angular/common": "^20.3.31", - "@angular/core": "^20.3.31", - "@angular/fire": "^20.0.1", - "@angular/forms": "^20.3.31", - "@angular/platform-browser": "^20.3.31", - "@angular/router": "^20.3.31", - "@angular/service-worker": "^20.3.31", + "@angular/common": "^20.3.33", + "@angular/core": "^20.3.33", + "@angular/fire": "^20.1.0", + "@angular/forms": "^20.3.33", + "@angular/platform-browser": "^20.3.33", + "@angular/router": "^20.3.33", + "@angular/service-worker": "^20.3.33", "@ionic/angular": "^8.8.19", "@primeuix/themes": "^1.2.5", "core-js": "^3.50.0", "ionicons": "^8.1.0", "laravel-echo": "^2.5.0", + "marked": "^18.0.14", "primeng": "^20.4.0", "pusher-js": "^8.6.0", "rxjs": "^7.8.2", "tslib": "^2.8.1", "ulid": "^3.0.2", - "video.js": "^8.24.0", + "video.js": "^8.24.1", "videojs-hotkeys": "^0.2.30", "videojs-youtube": "^3.0.1", "zone.js": "^0.15.1" @@ -45,18 +46,18 @@ "@angular-eslint/schematics": "^20.7.0", "@angular-eslint/template-parser": "^20.7.0", "@angular/cli": "^20.3.37", - "@angular/compiler": "^20.3.31", - "@angular/compiler-cli": "^20.3.31", - "@angular/language-service": "^20.3.31", + "@angular/compiler": "^20.3.33", + "@angular/compiler-cli": "^20.3.33", + "@angular/language-service": "^20.3.33", "@eslint/eslintrc": "^3.3.7", "@eslint/js": "^9.39.5", "@ionic/angular-toolkit": "^12.3.0", "@types/jasmine": "~6.0.0", "@types/jasminewd2": "^2.0.13", - "@types/node": "^24.13.5", + "@types/node": "^24.19.0", "@types/video.js": "^7.3.58", - "@typescript-eslint/eslint-plugin": "^8.70.0", - "@typescript-eslint/parser": "^8.70.0", + "@typescript-eslint/eslint-plugin": "^8.71.0", + "@typescript-eslint/parser": "^8.71.0", "eslint": "^9.39.5", "jasmine-core": "^6.3.0", "karma": "^6.4.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9ad9c8d..fb9904f 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,29 +9,29 @@ importers: .: dependencies: '@angular/common': - specifier: ^20.3.31 - version: 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + specifier: ^20.3.33 + version: 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) '@angular/core': - specifier: ^20.3.31 - version: 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) + specifier: ^20.3.33 + version: 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) '@angular/fire': - specifier: ^20.0.1 - version: 20.0.1(f4f40c595a40e1daf3cec0c6ae22a471) + specifier: ^20.1.0 + version: 20.1.0(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(chokidar@4.0.3)(rxjs@7.8.2) '@angular/forms': - specifier: ^20.3.31 - version: 20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) + specifier: ^20.3.33 + version: 20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) '@angular/platform-browser': - specifier: ^20.3.31 - version: 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) + specifier: ^20.3.33 + version: 20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) '@angular/router': - specifier: ^20.3.31 - version: 20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) + specifier: ^20.3.33 + version: 20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) '@angular/service-worker': - specifier: ^20.3.31 - version: 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + specifier: ^20.3.33 + version: 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) '@ionic/angular': specifier: ^8.8.19 - version: 8.8.19(188a845974a1e7a2bb441c308020a797) + version: 8.8.19(f10a13cb33191ea4711404b3af19113d) '@primeuix/themes': specifier: ^1.2.5 version: 1.2.5 @@ -44,9 +44,12 @@ importers: laravel-echo: specifier: ^2.5.0 version: 2.5.0(pusher-js@8.6.0)(socket.io-client@4.8.1) + marked: + specifier: ^18.0.14 + version: 18.0.14 primeng: specifier: ^20.4.0 - version: 20.4.0(268d687846b8db06e42ee38df37abffb) + version: 20.4.0(b14a74dd2032f99f8d673bb81f920cd0) pusher-js: specifier: ^8.6.0 version: 8.6.0 @@ -60,14 +63,14 @@ importers: specifier: ^3.0.2 version: 3.0.2 video.js: - specifier: ^8.24.0 - version: 8.24.0 + specifier: ^8.24.1 + version: 8.24.1 videojs-hotkeys: specifier: ^0.2.30 version: 0.2.30 videojs-youtube: specifier: ^3.0.1 - version: 3.0.1(video.js@8.24.0) + version: 3.0.1(video.js@8.24.1) zone.js: specifier: ^0.15.1 version: 0.15.1 @@ -77,34 +80,34 @@ importers: version: 0.2003.37(chokidar@4.0.3) '@angular-devkit/build-angular': specifier: ^20.3.37 - version: 20.3.37(@angular/compiler-cli@20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3))(@angular/compiler@20.3.31)(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.13.5)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.9.3) + version: 20.3.37(@angular/compiler-cli@20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3))(@angular/compiler@20.3.33)(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.19.0)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.9.3) '@angular-eslint/builder': specifier: ^20.7.0 version: 20.7.0(chokidar@4.0.3)(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) '@angular-eslint/eslint-plugin': specifier: ^20.7.0 - version: 20.7.0(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + version: 20.7.0(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) '@angular-eslint/eslint-plugin-template': specifier: ^20.7.0 - version: 20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.70.0)(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + version: 20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.71.0)(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) '@angular-eslint/schematics': specifier: ^20.7.0 - version: 20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.70.0)(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(chokidar@4.0.3)(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + version: 20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.71.0)(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(chokidar@4.0.3)(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) '@angular-eslint/template-parser': specifier: ^20.7.0 version: 20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) '@angular/cli': specifier: ^20.3.37 - version: 20.3.37(@types/node@24.13.5)(chokidar@4.0.3) + version: 20.3.37(@types/node@24.19.0)(chokidar@4.0.3) '@angular/compiler': - specifier: ^20.3.31 - version: 20.3.31 + specifier: ^20.3.33 + version: 20.3.33 '@angular/compiler-cli': - specifier: ^20.3.31 - version: 20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3) + specifier: ^20.3.33 + version: 20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3) '@angular/language-service': - specifier: ^20.3.31 - version: 20.3.31 + specifier: ^20.3.33 + version: 20.3.33 '@eslint/eslintrc': specifier: ^3.3.7 version: 3.3.7 @@ -121,17 +124,17 @@ importers: specifier: ^2.0.13 version: 2.0.13 '@types/node': - specifier: ^24.13.5 - version: 24.13.5 + specifier: ^24.19.0 + version: 24.19.0 '@types/video.js': specifier: ^7.3.58 version: 7.3.58 '@typescript-eslint/eslint-plugin': - specifier: ^8.70.0 - version: 8.70.0(@typescript-eslint/parser@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + specifier: ^8.71.0 + version: 8.71.0(@typescript-eslint/parser@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) '@typescript-eslint/parser': - specifier: ^8.70.0 - version: 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + specifier: ^8.71.0 + version: 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) eslint: specifier: ^9.39.5 version: 9.39.5(jiti@1.21.7) @@ -149,7 +152,7 @@ importers: version: 5.1.0(karma@6.4.4) ts-node: specifier: ^10.9.2 - version: 10.9.2(@types/node@24.13.5)(typescript@5.9.3) + version: 10.9.2(@types/node@24.19.0)(typescript@5.9.3) typescript: specifier: ~5.9.3 version: 5.9.3 @@ -331,12 +334,12 @@ packages: eslint: ^8.57.0 || ^9.0.0 typescript: '*' - '@angular/animations@20.3.31': - resolution: {integrity: sha512-QMaeHF+7D+JQawasqqjt2F4QR0gGdwmmj1XO5bysefesKFZGqYimjL9iwFYQ2tShhG6VPgRNkybUboI0xB+NJQ==} + '@angular/animations@20.3.33': + resolution: {integrity: sha512-z9gPYm1byXYE0tMGzjjDXE4OprxvjUhV4jOXVfLLlU0Sk5ChM3GwR0m2Vh+hDWDrJ2f7nfKKTeoGlLriP7NPZA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} deprecated: '@angular/animations is deprecated. Use `animate.enter` and `animate.leave` instead. For more information see: https://v22.angular.dev/guide/animations.' peerDependencies: - '@angular/core': 20.3.31 + '@angular/core': 20.3.33 '@angular/build@20.3.37': resolution: {integrity: sha512-r4Wdu+O/Dy0WswW/GuNwvLj3ZPbqJgLRonQLN7MJpYr3CeogB83iTsipvWFC1zZbcY8YwOMfJ8zCErYdbhqGvQ==} @@ -396,33 +399,33 @@ packages: 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'} hasBin: true - '@angular/common@20.3.31': - resolution: {integrity: sha512-h2SM62jldHWHN+SFERjOaxDYAdFyJTfx1dSFbg92OiRKRq2oRZkc6NrSk+rwpHCy5hkaqDxZl0UCqT/C6uLbXA==} + '@angular/common@20.3.33': + resolution: {integrity: sha512-PMfSF2j/C3gGHPp6O6c/BL+32msNzhmkzavrxtmBSxIGAOB5Q4KNktnIuolVrvVvu/0UrZj1/zwT91r/GKRaeA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: - '@angular/core': 20.3.31 + '@angular/core': 20.3.33 rxjs: ^6.5.3 || ^7.4.0 - '@angular/compiler-cli@20.3.31': - resolution: {integrity: sha512-EY9Hdvff97oeIlpNAiLS9uifF1lP8FOPHHkvljSY6Rut3nybJjHO9JXJPTI96jEUogvuCDIjduKegWTy7EIMVw==} + '@angular/compiler-cli@20.3.33': + resolution: {integrity: sha512-NKE4N4ssXysHLJQ7xVqvAv/yf3JfJxaFz5H+Ue+EnYToAmTxXe7uyt2MPRIydef/H63n7O9uphVp5P5GkRxVuA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} hasBin: true peerDependencies: - '@angular/compiler': 20.3.31 + '@angular/compiler': 20.3.33 typescript: '>=5.8 <6.0' peerDependenciesMeta: typescript: optional: true - '@angular/compiler@20.3.31': - resolution: {integrity: sha512-PTvUhgAjZQMUVWfv/EdXwK5DVmQn/DwYI886nMRTj1yERO0F2+NFJocVgtiMNCFL/VgJTP46OIJm2EO4+t3rvQ==} + '@angular/compiler@20.3.33': + resolution: {integrity: sha512-tqKZaapDV05r2SXA6bOzTSpiNhSoqZR9Usuacs5myMpbpt4gwNMAZkgaIoIcPutnhbd3qT+Og54VCVvCOXF8pg==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - '@angular/core@20.3.31': - resolution: {integrity: sha512-y67gb2VIAFNmgP3Zl1nuFn+c5BYEwIXsOR8mbFTDasKNM7ZfK4QJAtRYlhZk/NwuySJ+4oLeWiid84xLVOsBAw==} + '@angular/core@20.3.33': + resolution: {integrity: sha512-Ld/AhODjPf8c14xUOWUnJygaZb2TsRy99ZhwFkEsRJOzqauzEFovb8Hb2MEaB1e4RolADN+HWxPvE4n+u3HFmA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: - '@angular/compiler': 20.3.31 + '@angular/compiler': 20.3.33 rxjs: ^6.5.3 || ^7.4.0 zone.js: ~0.15.0 peerDependenciesMeta: @@ -431,15 +434,14 @@ packages: zone.js: optional: true - '@angular/fire@20.0.1': - resolution: {integrity: sha512-iZxE/7d5hJ2WpaENPEjHYBh7m68QybTwBHKOKaeqHz18XCP5Ufl89LuTrnoWkWOk0GdZBVAqpo6n/bM2jYIQAw==} + '@angular/fire@20.1.0': + resolution: {integrity: sha512-cCMTJG7bYKV5hv8szX4Vf1ec/ds7WJl9U+gtik6izXdYS/2YG/4/Z6h6MG9qleKZsJySY9fzEDOcCwAELg4b3A==} peerDependencies: '@angular/common': ^20.0.0 '@angular/core': ^20.0.0 '@angular/platform-browser': ^20.0.0 - '@angular/platform-browser-dynamic': ^20.0.0 '@angular/platform-server': ^20.0.0 - firebase-tools: ^14.0.0 + firebase-tools: ^14.0.0 || ^15.0.0 rxjs: ~7.8.0 peerDependenciesMeta: '@angular/platform-server': @@ -447,55 +449,45 @@ packages: firebase-tools: optional: true - '@angular/forms@20.3.31': - resolution: {integrity: sha512-g3jxoIY/iLLz5+mzW20tkVj4sD1I7zl8k+mosHIY7mVot9N047A/Q8MyZU4FIQlwymXkPfgAv1FubgQOtBv3uQ==} + '@angular/forms@20.3.33': + resolution: {integrity: sha512-UmwKS9toyYhgq8LEbvFxNBfD9dUXr+B6Y5OTwBGwIRy8RhUrOiLwrXTRr+2y/yREGgDtGAWl8zQRVMVk2BNybw==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: - '@angular/common': 20.3.31 - '@angular/core': 20.3.31 - '@angular/platform-browser': 20.3.31 + '@angular/common': 20.3.33 + '@angular/core': 20.3.33 + '@angular/platform-browser': 20.3.33 rxjs: ^6.5.3 || ^7.4.0 - '@angular/language-service@20.3.31': - resolution: {integrity: sha512-+kjhLUNFhHsM5vGrJLidZks1xzuKBhAQ5Bhh1nGjgVfh4lClKtIOqdE6Z5+j60uqQPsMmsJ1UIPTgSMYc2+kSg==} + '@angular/language-service@20.3.33': + resolution: {integrity: sha512-px2D2VBc2FQ4KZd/BZMPXYW7RUkqMGHu+C0BHQoGjthoNP9v344oe/3WVpzgxTVC8FeyZuo0Axo+ZACOQr+e/w==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - '@angular/platform-browser-dynamic@20.3.25': - resolution: {integrity: sha512-3Ku+IsN4tQPVBsw75SoLbLf7TsXAGL0rGPHSsyNYFhG2ZZeQuYNIAi8mc4cwz/qMDnuassHFrCxuLDgN6Yab5w==} + '@angular/platform-browser@20.3.33': + resolution: {integrity: sha512-od2uw6ee68r5TczjoYDsJuIDWoH4op3/req3sdeFtVHWdQgzf/AhM0B5ZBVRya8THon/b/SDHdhxOrUTgcszTA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - deprecated: '@angular/platform-browser-dynamic is deprecated. Use `@angular/platform-browser` instead.' peerDependencies: - '@angular/common': 20.3.25 - '@angular/compiler': 20.3.25 - '@angular/core': 20.3.25 - '@angular/platform-browser': 20.3.25 - - '@angular/platform-browser@20.3.31': - resolution: {integrity: sha512-DCWfLHwLG4c8r/W4SmS8pyRh0416PenIfBPwicnpvgsK2vIIZDRHU4pPlAftv66zfErHa7m12TPzxaAcUey2ag==} - engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - peerDependencies: - '@angular/animations': 20.3.31 - '@angular/common': 20.3.31 - '@angular/core': 20.3.31 + '@angular/animations': 20.3.33 + '@angular/common': 20.3.33 + '@angular/core': 20.3.33 peerDependenciesMeta: '@angular/animations': optional: true - '@angular/router@20.3.31': - resolution: {integrity: sha512-emUcrfcKfS5zQPOb/zmRct/89C9hT0Ee1YwRFlFYCvEpQ6wvHpB/JQyfgPuOpTg0CAvblIZvZaB71UD3R/7wdw==} + '@angular/router@20.3.33': + resolution: {integrity: sha512-M55ibvrJSWGP7sGf+uZFvC66cxRkFlS4TjtI4Owus4gDCqW69/jhUo8pNGXf0T3QpO3iorbHScZfGwVmLATLLA==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: - '@angular/common': 20.3.31 - '@angular/core': 20.3.31 - '@angular/platform-browser': 20.3.31 + '@angular/common': 20.3.33 + '@angular/core': 20.3.33 + '@angular/platform-browser': 20.3.33 rxjs: ^6.5.3 || ^7.4.0 - '@angular/service-worker@20.3.31': - resolution: {integrity: sha512-8osyys2T/n8bpQQcw18pvRUhlinX7BcjyParuAnKqCj6b2aTfSj87PT/ypqgAAEouMSKTdTl5S//lx66ZS+KXA==} + '@angular/service-worker@20.3.33': + resolution: {integrity: sha512-ReOGOQF6YN7xuPQgph74kTA9l5geNVonPfdZDcX1YhVWXOriFpYHnDp9YPAJlJkPal2XAibjGZbLoSntdAaMBg==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} hasBin: true peerDependencies: - '@angular/core': 20.3.31 + '@angular/core': 20.3.33 rxjs: ^6.5.3 || ^7.4.0 '@babel/code-frame@7.29.7': @@ -613,8 +605,8 @@ packages: resolution: {integrity: sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==} engines: {node: '>=6.9.0'} - '@babel/parser@7.29.8': - resolution: {integrity: sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA==} + '@babel/parser@7.29.9': + resolution: {integrity: sha512-CjXrNHTnvqBVqHgdBysY3vk2T8tpJHb5/RMeHJBTyVa9xgugCB0CJTx/3oO8RV2QRQP391RWpB7D6hLjm8V9uA==} engines: {node: '>=6.0.0'} hasBin: true @@ -1444,8 +1436,8 @@ packages: engines: {node: '>=6'} hasBin: true - '@hono/node-server@2.1.1': - resolution: {integrity: sha512-ELuehkj5VCBdgEw9zs+ivkKwyzzUCSQuE96YmiPvn1ECBoZCczbFXJLeEGMTYjphP6gydh4pHMqEYPVMYUVgQg==} + '@hono/node-server@2.1.3': + resolution: {integrity: sha512-TA//nWMqPhbfdfneACk6t5a9eqbS9lABEPyKn0/xZTah3H3U2XaVg85rJFl0/Fyit0I552YDHgXGVSf3GwqbUw==} engines: {node: '>=20'} peerDependencies: hono: ^4 @@ -1695,50 +1687,50 @@ packages: peerDependencies: tslib: '2' - '@jsonjoy.com/fs-core@4.78.0': - resolution: {integrity: sha512-0YE5XQj383AwNj5fG0Mm1gyx/ViVe2DJzS5FeVbJulw0pteEK9mfbeB0MWH3/ARoXb2AhHHuiiNthdWF0Y6EYQ==} + '@jsonjoy.com/fs-core@4.80.0': + resolution: {integrity: sha512-qMKWshnyjbyhm+NbzqGE3w5y1mckFFEMj0aDPU2/JBNh1BzIjVy9esq9lBmRnNVmhMEkxwDzLZ8Gqh5G1P5Dag==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/fs-fsa@4.78.0': - resolution: {integrity: sha512-V1lUo5k4xUypsfdmvCrrUJ44BCixbgvpus71WI3a3BOQt39bK2LasU/HgpJ1P9or8a2d5mWR3kk26sRoehDlaw==} + '@jsonjoy.com/fs-fsa@4.80.0': + resolution: {integrity: sha512-ZBEKl7J6dbkRCfmrFV48Re211A/FHqniTUhsWCsaRteNSOqMgkX3qF1UreVgwB9oSPm81JLAwhIi6Lb/NH/PoA==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/fs-node-builtins@4.78.0': - resolution: {integrity: sha512-yiyMh9uKnQvRVDYzINP9P2AXZPdHYM2iVsQ/2U2V+g+gfTr4vPcT1Ox0aQs0IIXGQRAnksyA63KSqpOOJ/O3lA==} + '@jsonjoy.com/fs-node-builtins@4.80.0': + resolution: {integrity: sha512-OIOIhqaWiwUySFMny4epIAoviXsyMaQQ63PTc3zH+5HEOvarl5hpUmZIhp2m5+OfyKAh5ylxXnQIgew1OgJDVw==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/fs-node-to-fsa@4.78.0': - resolution: {integrity: sha512-L1e0UgRJ/igqt3JUDJh3z8YXTKqJc9r9MY4ZakEMOqqEDq/C5fmSZDDzq03d7HqdG1rehkmCDpKyXWqQEVpQGw==} + '@jsonjoy.com/fs-node-to-fsa@4.80.0': + resolution: {integrity: sha512-ljeaR5xwtX1EyRmB0wvXANUMQZ3mjKcm7z8s2N8D8SLQ04CcAGtUhHFRZQXFb9mhgFyEVMydQGQtSOFS7pcrFQ==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/fs-node-utils@4.78.0': - resolution: {integrity: sha512-Am25+Y/rEFtkJBZCFgs84XPXqeqXq4FvXmCYMZ0bEC/M+vT0e6tHBU4Camp9/Yzuf6NoxaInC3iXIN791wVu9g==} + '@jsonjoy.com/fs-node-utils@4.80.0': + resolution: {integrity: sha512-xwHeVVi3f+Khg/Fmb8i5qoYVmQ08QznE5TWhQokUmIZjz4KBPzU+zt/+bahBI6G1ghtqajt27lWuAciIxApuzA==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/fs-node@4.78.0': - resolution: {integrity: sha512-AhoKCEEzsTU5C+9pSegNkErrQijvpHj10kzVhaXIxjs/0taxjCCLG7zE+Y+EWCMNCVmgFEyca+oTQQWm2RO+sg==} + '@jsonjoy.com/fs-node@4.80.0': + resolution: {integrity: sha512-yiBlUfkMMRFFGy8CD/h2zd5rPnrM6bjlF+nx2LRAxNV6hOSiuObQIUEE7m7y2VTMisjxCRtzINH94bFGySWL7g==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/fs-print@4.78.0': - resolution: {integrity: sha512-Uwk0SvDN1X+5FNW3MxibrFVXXUnd0nTUP6qwvPikg3QDeXRiRww91mz34lXYa/xO5eVuUqa1WXmd0ljy1+Ej0w==} + '@jsonjoy.com/fs-print@4.80.0': + resolution: {integrity: sha512-1ocZLJw/m/xlq0moaIHO7HV9nHRVBUvdc2zMzhsJGkFOrqfwWvexfCv5cYCPPLRhP+9p3yunoi4Ep5YhRORC9Q==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/fs-snapshot@4.78.0': - resolution: {integrity: sha512-+HvPGwV1IcXtwFFxMBK5x8rmqBuIkPpEFZMGkO8BolJH+AuSvQGVwvlKulUjQ9KECpN4GTCcgeQtyUvYC8heSA==} + '@jsonjoy.com/fs-snapshot@4.80.0': + resolution: {integrity: sha512-3AV23Q1H228KTtJKTUE0nNq8FCtxSvtENOLrEat80wkAJCKHuqQEv8yjhpS8Bei2OEFJAnluGXp9Ri2SWBlROw==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' @@ -1985,9 +1977,9 @@ packages: typescript: '>=5.8 <6.0' webpack: ^5.54.0 - '@noble/hashes@1.4.0': - resolution: {integrity: sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==} - engines: {node: '>= 16'} + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -2120,44 +2112,44 @@ packages: resolution: {integrity: sha512-7FNeNl8NCE7aINx7WXiKQrPYZWC/hvrTsmk6zmxbI7LTXE7hVek/n8AfVgpe2y82zl3w0HvCHN0bVKMBoJcC0w==} engines: {node: '>= 10.0.0'} - '@peculiar/asn1-cms@2.9.4': - resolution: {integrity: sha512-cben7oxmQsUGZqotus7yt0srYdncOT6RNWcTQ77T2RFOXejYVYkXadrfePdRcrVpO9K95IRLKKglG2k38jKXuw==} + '@peculiar/asn1-cms@2.10.0': + resolution: {integrity: sha512-CkX0H4NCIOMHOU3rh2xXZywinYZ/EnJlaOlJiGI0e5L4XjFqHf4iH30LMbXWChVppdA9ljbanjtzQFOhDNfTWg==} engines: {node: '>=14'} - '@peculiar/asn1-csr@2.9.4': - resolution: {integrity: sha512-xd4YN4vpRjkDAQWVfZZkeu12IEND7DOpkqaHSIHxZl1uggUNa9Ju0QxY2jHvDAS9pP0zhRBytg8ifsnGo3V0jw==} + '@peculiar/asn1-csr@2.10.0': + resolution: {integrity: sha512-jTPTr/9rxKM+niQLMF3jiAMb0lWHUhUHIuSOhdGCIfpB4FAQYf9SoiXOgxP8bS/68IB+bj+1OHvVnDVCQfVUZw==} engines: {node: '>=14'} - '@peculiar/asn1-ecc@2.9.4': - resolution: {integrity: sha512-JJXefFshRAuVAjWQo/39bkg1ywc1VaiO44S8RRC+Ykvf/u2KDmYffoDb0ZBPCR5uJy4AGKQhl8mX+Q8ShcWaXQ==} + '@peculiar/asn1-ecc@2.10.0': + resolution: {integrity: sha512-GFd3iOjFrWX+QWH2R2dO5QSJyyRGv9CIBKtRlGlPNCvb2RvmCbBDexe91MJgV76c69d998Xsa+CvuQ98seoiPg==} engines: {node: '>=14'} - '@peculiar/asn1-pfx@2.9.4': - resolution: {integrity: sha512-khuGzHTzNzk4GDlIBEILyIs6Lce0yn0ZBdoI9v93kmNncfZRhD+AQ5ODFqdhvoE8cMJF/JMTQ8yA+t1D14kqCw==} + '@peculiar/asn1-pfx@2.10.0': + resolution: {integrity: sha512-1y3QK9ZH1IPleAMmRoJlPS10eGkAWnULETW8zDFNUK1ffqpG7zmDY+kYBMYQgwlcQZ2iitLm2z2EBP0xzRXpaA==} engines: {node: '>=14'} - '@peculiar/asn1-pkcs8@2.9.4': - resolution: {integrity: sha512-duRdotlUx9eDZe6QrQpQKl61RbWykCHBCkKayP8V8XdEFwlKHZ8qGGDMyS6Pye7OX7nLFttTTpRkJeet78ckwQ==} + '@peculiar/asn1-pkcs8@2.10.0': + resolution: {integrity: sha512-Ri+BZT9bnwqlHWmhs7lvWjvJRxKev2hA2+4EbZajgeYWCbR8hyv0znF4DhsFouOhMj2nSDV/iGJ6DMQtwITnCw==} engines: {node: '>=14'} - '@peculiar/asn1-pkcs9@2.9.4': - resolution: {integrity: sha512-kaL4cNxBpdQE2dKlyZBqz4ygCrwffO+8wfoxTEqM1Z8RadvCeELBRzcv0dzM8aY9azHMwODO5nxU65zXmhToOQ==} + '@peculiar/asn1-pkcs9@2.10.0': + resolution: {integrity: sha512-XIXsbDQFezYk6fudczkuvawkRD4GNpISGCqfYhdkJlvcGF/RFknU+0DDJagOaJqBf+PdPzk4J9oMqDGcvfR9HQ==} engines: {node: '>=14'} - '@peculiar/asn1-rsa@2.9.4': - resolution: {integrity: sha512-pZ96eD1PptovcWQ/GSmuNFXd/7EQJNlKfDaNCyE2rx3W0v6QFelkzquVqRSRyyDXXCYD69ZXJDzZ8GhIiQzKoA==} + '@peculiar/asn1-rsa@2.10.0': + resolution: {integrity: sha512-4Jvmwlh3gZAhNZ4/u7JSyLuce9hofOFZ4o3PYKAccCImGnyaT5CMym/ATgvAvqpOYFNW531oPZvJlEBhJy9VfA==} engines: {node: '>=14'} - '@peculiar/asn1-schema@2.9.4': - resolution: {integrity: sha512-GjzePcT9Iw8NzeOPf73iNS9xM+TBhd/FilAfP+RQGkTMQJTVWtytN3JHJACCjf/ABNau5S7mS3g+DcuxmRgYEg==} + '@peculiar/asn1-schema@2.10.0': + resolution: {integrity: sha512-GhokD41lV4gQrrLYm3wCkHfBOnJrnhDMgt4XeMW8gzfE1UdJqIuSwsE+ggf82XBjUXRJylcm+KIGQFa4utIVLw==} engines: {node: '>=14'} - '@peculiar/asn1-x509-attr@2.9.4': - resolution: {integrity: sha512-ehQXbpQaQYycgu8OrvigwSPTFfVRcu0ECNYCWw+yzBp02Lw5paRqzzhUpfOgO2K38+WfFZuEz/0RPtam5g0OMg==} + '@peculiar/asn1-x509-attr@2.10.0': + resolution: {integrity: sha512-/85GtKOKmgvuSJNlaFfwGWNdRSZZ+hpF02NyM01XiCdzpaZONiBltDyfluFPvFx966CR+ZHNSG1jniwpy07oGg==} engines: {node: '>=14'} - '@peculiar/asn1-x509@2.9.4': - resolution: {integrity: sha512-CxhBo/RdEbMMob7T31ZdQjGuoyRFLVwrDzTn25bihzBasRg9kRm/0IxIPvhgQtcK/9dNcO1XQL2fuPugwELL0Q==} + '@peculiar/asn1-x509@2.10.0': + resolution: {integrity: sha512-ucNVg8+ANveTpMN3fy9lA2alryONdXc2A4cEG2hMniWbvQt+YOZoe8BI80YYNO8FBcuDY1qbDQ4uQGQVraHxGA==} engines: {node: '>=14'} '@peculiar/utils@2.0.3': @@ -2426,8 +2418,8 @@ packages: engines: {node: '>=16.0.0', npm: '>=7.10.0'} hasBin: true - '@stencil/core@4.45.0': - resolution: {integrity: sha512-cHd0liRzN+MKf2eoLg4XHzEBQvK04j6g1lhqZb0BR1a5kXUNaYPmS6IlM/YqYMlZ3eSDiGqwjRSx5SIwP1Imow==} + '@stencil/core@4.45.1': + resolution: {integrity: sha512-/b8CItmSwOzZwafxXwomJnN9X/Ic/Fxum9ka/RDHmADVf4DA4152uY7zitzLV+vk8JdXxKA7FKyLT3GKNo9R3A==} engines: {node: '>=16.0.0', npm: '>=7.10.0'} hasBin: true @@ -2505,8 +2497,8 @@ packages: '@types/mime@1.3.5': resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - '@types/node@24.13.5': - resolution: {integrity: sha512-TXyindR+lBr22aJIdMQzCFHPHR6cR4js838mRDCSz5hOKWZvZwsXSSiXDmjRj4iJmgl+sR9O+1mkoVBSMadNug==} + '@types/node@24.19.0': + resolution: {integrity: sha512-zY+5tKxXdhGh1PYI0ac+7juvEu4OI6vWtVVoj5i2m42jxAY1U+zHGt6QCyOFwykdP62sM3MJ9stoYYUw5aCWew==} '@types/qs@6.15.1': resolution: {integrity: sha512-GZHUBZR9hckSUhrxmp1nG6NwdpM9fCunJwyThLW1X3AyHgd9IlHb6VANpQQqDr2o/qQp6McZ3y/IA2rVzKzSbw==} @@ -2535,66 +2527,66 @@ packages: '@types/video.js@7.3.58': resolution: {integrity: sha512-1CQjuSrgbv1/dhmcfQ83eVyYbvGyqhTvb2Opxr0QCV+iJ4J6/J+XWQ3Om59WiwCd1MN3rDUHasx5XRrpUtewYQ==} - '@types/ws@8.18.1': - resolution: {integrity: sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg==} + '@types/ws@8.18.2': + resolution: {integrity: sha512-67MQl+fpWKVTT1NYdnmo3U4sc/xPo/zQBncVnI74qmQa0z/b+1g6iYqNmGCPbxO+zz2aklb08a0oHfegiVd0/w==} - '@typescript-eslint/eslint-plugin@8.70.0': - resolution: {integrity: sha512-/v8HZt6RlyIZxB3ntehELOcUcfxKPVGWXnQdJuHRmzrqgF8nQypcC/oxGW+Ot4VGKDq81XugPKxx0n5PBtf9PA==} + '@typescript-eslint/eslint-plugin@8.71.0': + resolution: {integrity: sha512-pqcS9c1HxZTHt7End4nXqd0s5lJrrFzrgCkKFJrsbUnaL6M3+6oBFZaslg6Gjsl3argl2DDRFROnXARaZ2e4Nw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.70.0 + '@typescript-eslint/parser': ^8.71.0 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/parser@8.70.0': - resolution: {integrity: sha512-zYvrmj9Yxd63UGaXw+kdt6A0F0s0qveJyuatIM77bYC2DE4pgmg7a50u8LR7PRtXd0x+h+Tl3eXabGm06SWd3Q==} + '@typescript-eslint/parser@8.71.0': + resolution: {integrity: sha512-CG4nPk1f2zc8yw4pALqHsFYH2hdo+h1T9daSp21+Hnxi9LOE3GT9hAfTKJCBXVNM2GmYs1eMEP615wPoeOgk3A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/project-service@8.70.0': - resolution: {integrity: sha512-hFHbTNqhU9G+2eKFXCBVb1tjFT/LceiJ4+HfLO4pTpDI0KHi6iajpcFFkaSQ9gXmCh7n82A0PthaayEdN6mspQ==} + '@typescript-eslint/project-service@8.71.0': + resolution: {integrity: sha512-aABjw5rjBacYONVPaPiWOCjJu0vEF4a25iQuodlmQYL1trtLZ0X/y+2Vzl3BKI1odM4LnwLE1oUDXYp1wzx1TQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/scope-manager@8.70.0': - resolution: {integrity: sha512-8nP3Kwh5hlgZ4FicGvmznAmJe8UL4sdU8tLukrPaMuQmDuk4Y8xYfzu/aYZW4xT2JCgc7H/TpDI5cGlxcWJSqQ==} + '@typescript-eslint/scope-manager@8.71.0': + resolution: {integrity: sha512-gWF0BhUcnjZxSpLE8ngS/59n2SB0J3YqRxvX1+2aoRJk9hNtHSLOV+TcarFiOr5ipXm3yc1QrI4c9YZc8zyCxw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.70.0': - resolution: {integrity: sha512-adnkeeNq9Sq1sUf4+FRVc0KdgYghzsgFpZSQVZVvY0LCuUuN0FnQgyGzCJeC4fW1cdXseBAjU2EOqUIjbNcZUw==} + '@typescript-eslint/tsconfig-utils@8.71.0': + resolution: {integrity: sha512-Z1UlWHADEK2Mlb9NpWfDeSjqoZ5EyrOv4R3eQpbkzqn/EwaIdOpXXupEA1+0ZIOSJSZZDBHG0BrQyN8zUG6Pwg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/type-utils@8.70.0': - resolution: {integrity: sha512-NUMKIhYVaVIVLnRL9CRt+VVcuLgSHUCpXn4/+K8wql+vdInUzvx8BjUO1oJ7cG9shjFJKtF8F8Hh2kCh3/KBVw==} + '@typescript-eslint/type-utils@8.71.0': + resolution: {integrity: sha512-i8uO1qbdxeKgRnS5sCRt6On3/nfo2d2DwQe3Yvjx543zLy7r8ySqRuPPiIIXAhS03U0v5NfAFx+rUgxFzKKwNw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/types@8.70.0': - resolution: {integrity: sha512-asTOIYhDg4zdzOScCyaytrsV3cR6B4ecPQlXw/dJIm7J/MZTtCtfVII9JD8Geh4jTCrK/Xe6cg5UevoleMcoJQ==} + '@typescript-eslint/types@8.71.0': + resolution: {integrity: sha512-cJ4OoxPGWvFnBTnSZyaU+qJzGTqPTGJY+gDchj6cRyLRdmIdt4rcsE4twj+zPfrNiWuVi38wijHzShL++Z9atQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.70.0': - resolution: {integrity: sha512-d9NmHMPEKQ7QCLLm1jI3zmoQBwT5KwFYjXBJ9ymZfKCUU+5rmTRykKAFvH5Qn/ZCds3CEAFS9OC9M/jkl0X2bA==} + '@typescript-eslint/typescript-estree@8.71.0': + resolution: {integrity: sha512-PEEF4G5sLLWAS5BpPrUvms4ySZkiBQQZM4z+3ReI46axK5Vqr/vXBQatJQIZZOYdGyPUAKTtsrWzpqKuU+3DEw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/utils@8.70.0': - resolution: {integrity: sha512-oZmtKJz/4fufZ2p3+Cn3ijEojcdfR+1zYDH2xKYrEly0dR/Q/1xUPRCOlKGxod78nWlU2UnDe09GZ3TaknBFGA==} + '@typescript-eslint/utils@8.71.0': + resolution: {integrity: sha512-pKR/tEMVrXZG23UFKUn5BQf3zfmfk7KQceI2cGzywZ5nxM5Eu3hEJU1utjWzydtzBbcJAQhHN8iPCxobHpPcZQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.1.0' - '@typescript-eslint/visitor-keys@8.70.0': - resolution: {integrity: sha512-BoC8PiO4Hkdo0TVJh9Ntxr5MxPDI7/oFsrygN5ADelFSeXG/qgNuucIGA+L5Z6JpPTE/uRfcTWtscjbUaufepQ==} + '@typescript-eslint/visitor-keys@8.71.0': + resolution: {integrity: sha512-8eQ9R218XORK+KLosnf4bu/QsUXvUyVwTbArg7/0NMB1Pu87OJKvj4nhFblkYE8gQV73mW1dx1ptlPCkwRGa7A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@videojs/http-streaming@3.17.5': @@ -2760,8 +2752,8 @@ packages: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} engines: {node: '>=8'} - ansi-regex@6.3.0: - resolution: {integrity: sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==} + ansi-regex@6.4.0: + resolution: {integrity: sha512-KzTVk2tCWAHtYrvvvaP8bJKJq2pVinhLcGEQdtLIYPbmNGNyYe8QwNaTUYQp2J7/vIsUKt5QCqAfUkYyG9DkOw==} engines: {node: '>=12'} ansi-styles@4.3.0: @@ -2833,12 +2825,8 @@ packages: resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} engines: {node: 18 || 20 || >=22} - base64id@2.0.0: - resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} - engines: {node: ^4.5.0 || >= 5.9} - - baseline-browser-mapping@2.11.24: - resolution: {integrity: sha512-hYrgxie335U08WqICoGqKRzV1HFXv6zdxwJE4ekCb80CM9a0SVVsN4QPwT67RraRo+9h8IATk6uxHJw7QSkdOg==} + baseline-browser-mapping@2.11.26: + resolution: {integrity: sha512-GLQdD3y6UF8iVuMJl5fHgE4jdn/ua7n+toKfLgNlg3BqQtOZjpy68T8Tup8/wGWZCDlm7KMg7tPb4MPn7oN0TQ==} engines: {node: '>=6.0.0'} hasBin: true @@ -2881,16 +2869,16 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - browserslist@4.29.0: - resolution: {integrity: sha512-3GSvyjvDI4Dur1Meg2BekJquu5uF+9R9a1+5M1Mde192eZoXbeXjzgOsgqPS2V8D5wrrip0gR5Hf/GhWQ9ZzaA==} + browserslist@4.29.3: + resolution: {integrity: sha512-1R4kiYKXGViqEN0CnoDrXc1StD9niAwu+j2dukWzrD4bJgsD4lDmEp0CRbc6E/vYJIfTHwPmwyaKtVSudICdPA==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true buffer-from@1.1.2: resolution: {integrity: sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==} - bundle-name@4.1.0: - resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} + bundle-name@4.1.1: + resolution: {integrity: sha512-DdH81/zPLVS11EUgWq3tEu/xn+EzljlMYooDNdzWEnFha3R3NBMpMV1UqYIpjYHV/SgpFKMIX1Oh7o06SjM/oA==} engines: {node: '>=18'} bytes@3.1.2: @@ -2917,8 +2905,8 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} - caniuse-lite@1.0.30001810: - resolution: {integrity: sha512-TITQPUkaz+aVk5GL6NhOdwk1aEaNTSDPsGFWrTuhKGtjTF70jL/Oht2W4c6rXUe5fu7Ie19VIahAXHIIiWWNeg==} + caniuse-lite@1.0.30001814: + resolution: {integrity: sha512-/Uaf1lAzr59XcMpW0o96WoEfr+VXK2OX4U9AgFoiSHsVJ4HppnIFUjtYzsyDH2+tgANaQb2/oxYGwCPapN1FpA==} chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -3219,8 +3207,8 @@ packages: ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - electron-to-chromium@1.5.430: - resolution: {integrity: sha512-e1QEj72Y4zd8RlNZVmoTg+iCOSVwpk05IOiiQwdrkwCSVlZfPthevErhE+nckGd2YbsXfp1SkisznhGVIXP2NQ==} + electron-to-chromium@1.5.443: + resolution: {integrity: sha512-TDJG36L9A3CWWwZ97HKaE+Iz1sW80pNp6sAU0owzCIV3Zc9eVyRqZK8Vz6NKuMIU8WjP0pIkoqCa0VRf/yFD0Q==} emoji-regex@10.6.0: resolution: {integrity: sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==} @@ -3240,19 +3228,19 @@ packages: resolution: {integrity: sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==} engines: {node: '>= 0.8'} - engine.io-client@6.6.6: - resolution: {integrity: sha512-iY6QdftLQ9pyiPoX082bpf/u1UewnOaJrtJIF9T0++QB34lZrj0uP+Q/bj8AlUsAxqhnkTV2BS8SBZSxOmoV5Q==} + engine.io-client@6.6.7: + resolution: {integrity: sha512-GyAvmPA7gnRCpDQbYACAy79Lg4ewevrmaPzySZz0OVvgyZc3gEfLLqPTYk8wVBScjOEpM9ZO4KryyFpVItjGEA==} engine.io-parser@5.2.3: resolution: {integrity: sha512-HqD3yTBfnBxIrbnM1DoD6Pcq8NECnh8d4As1Qgh0z5Gg3jRRIqijury0CL3ghu/edArpUYiYqQiDUQBIs4np3Q==} engines: {node: '>=10.0.0'} - engine.io@6.6.10: - resolution: {integrity: sha512-9/lX2bdlizlCXMHRMOIm03VBQHQYC7VvydcxtTAUJRxNW1QzM/2PMFSmr6h/lCiMHcyCP6abK+t9Q+j4vekk8Q==} + engine.io@6.6.11: + resolution: {integrity: sha512-z34mGpLoY/82ZbkX1LqGMIaf3wjVMPL6gVC681QDqnmzJ26synI8qAE32P+a7UazmpJZ8UGrFIeAavgRfXzYrg==} engines: {node: '>=10.2.0'} - enhanced-resolve@5.25.1: - resolution: {integrity: sha512-nGXts5znJzmWPu+mIE9izCOzdg63oJca2mDzGWWTth7sr4aCToKcoyFVBQwN75Ij5Pf6p510EwkTqViTRzDV+w==} + enhanced-resolve@5.26.0: + resolution: {integrity: sha512-9vhedylFonb2YGogzUKX6+Ja72gOJbN1QHAqdrvqLwhdl/QWbKopzoUC9EbQNVsAns/bx/4uyqalrQAoy1IByw==} engines: {node: '>=10.13.0'} ent@2.2.2: @@ -3497,8 +3485,8 @@ packages: flatted@3.4.4: resolution: {integrity: sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==} - follow-redirects@1.16.0: - resolution: {integrity: sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==} + follow-redirects@1.16.1: + resolution: {integrity: sha512-FNvFGzoMLWmE6Yj9spb/zjd7yiNCHiAW9/Tg9CXrQ8wuu32HtlJOwWO11OJafl5FfY3DxTdQ0vj42zU1kvv5jg==} engines: {node: '>=4.0'} peerDependencies: debug: '*' @@ -3548,8 +3536,8 @@ packages: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - get-east-asian-width@1.6.0: - resolution: {integrity: sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==} + get-east-asian-width@1.7.0: + resolution: {integrity: sha512-XjH1AECxf0giL2V1aU8vKyRR2ppRUb5c0EvT7zuJTokQ74bNo52zOtghqdWIqrhUD79fo3x0WfKZdOqxF6LG1Q==} engines: {node: '>=18'} get-intrinsic@1.3.0: @@ -3618,8 +3606,8 @@ packages: resolution: {integrity: sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==} engines: {node: '>= 0.4'} - hono@4.13.8: - resolution: {integrity: sha512-/Gng7NfoykZl2pjukW5Z6+8Yxm3BPRf86GTbQnt0SbySkvax4fyL4H3HhY1cCpBGmiW9XDRFzRV+CXK2W8QudQ==} + hono@4.13.12: + resolution: {integrity: sha512-6E2QDAc9Ick9Sq77ZrGS/dk2WUYni91aufTw6LJKpV7w8kW5/GxVUc650FOADOmlwg3K+f7Pun6XlV+pYmW6gw==} engines: {node: '>=16.9.0'} hosted-git-info@9.0.3: @@ -3707,12 +3695,12 @@ packages: resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==} engines: {node: '>= 4'} - ignore@7.0.5: - resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} + ignore@7.0.11: + resolution: {integrity: sha512-YChdK5txDjwGUvgR7oCJcLGkwi3LDh8Zx8tS7ndYciLEg/oOCL26VUBSUEtgS7EjiybcBqFxh5j0rAdDX7/bbg==} engines: {node: '>= 4'} - ignore@7.0.9: - resolution: {integrity: sha512-brTTsvFRt5C1gGHtPst/281UjPD5t9fBqbgoMPlVWy11ZLTPfu7HxK4ZYqO9H7o/yC9rSTCI85EaQ4OoY12qYw==} + ignore@7.0.5: + resolution: {integrity: sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==} engines: {node: '>= 4'} immutable@5.1.9: @@ -3763,8 +3751,8 @@ packages: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-core-module@2.16.2: - resolution: {integrity: sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==} + is-core-module@2.17.0: + resolution: {integrity: sha512-J/vG0zBCbIKOQFfufSwyXdMrsohyJIUNkrnmo6WZGzoM7tr/lsbfW5b2BvisL6zsyMzK9UxV9L6c7AoFbyXHOA==} engines: {node: '>= 0.4'} is-docker@3.0.0: @@ -4062,8 +4050,8 @@ packages: long@5.3.2: resolution: {integrity: sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==} - lru-cache@11.5.2: - resolution: {integrity: sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==} + lru-cache@11.5.3: + resolution: {integrity: sha512-U4N8FgzmWxc8k1VH8Kr6lQg18U7Fjvby6wXHVRX/ZZ7IwWbRMgrRbP0Wrb5q5NVinryp4SQampHKdvtecItxUg==} engines: {node: 20 || >=22} lru-cache@5.1.1: @@ -4086,6 +4074,11 @@ packages: resolution: {integrity: sha512-Je0fLJ0F5atA7F+eIlLzk+Wkcl57JDf4kf+EW8xiP5E31xOQxkIxTbgf1Oi1Lw9tRI9UEMRdI5Vz2xTzoNU1Jw==} engines: {node: ^20.17.0 || >=22.9.0} + marked@18.0.14: + resolution: {integrity: sha512-mBHK6FBHuBAlhgRe88w9F0O1AbwwXJUcQibUbC/QcdTbVGAD7aWza+xt3N6oT/jCZx3/OMeS+8rnuiHZcQ9s7A==} + engines: {node: '>= 20'} + hasBin: true + math-intrinsics@1.1.0: resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==} engines: {node: '>= 0.4'} @@ -4098,8 +4091,8 @@ packages: resolution: {integrity: sha512-yz3xRaG20c6/BOzvYoDaGtPmGscs7YivItZEEqe6GbwNfHuxu9YNmvnEkMzKldAGY4/80pRcQRZSEnhquk9XuQ==} engines: {node: '>= 0.8'} - memfs@4.78.0: - resolution: {integrity: sha512-gX14RGPP+fyNodL8g9jc5DfKtWNCronEMItOKDyZatTI3CPpMZDPtm7rAbftDqQAFovP4nzR0RO80sESSEnI4g==} + memfs@4.80.0: + resolution: {integrity: sha512-N70W2isi44XdGn7uPo9NJ4zRukcdkwSFHlnYx42SWOH/+hzqNc8P7+tVoA2up4z7faHvNi1RSNCFjxoYQ71VPQ==} merge-descriptors@1.0.3: resolution: {integrity: sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==} @@ -4293,8 +4286,8 @@ packages: engines: {node: ^20.17.0 || >=22.9.0} hasBin: true - node-releases@2.0.55: - resolution: {integrity: sha512-mIrE/Cw9y+9Au6dS5vDKDhQza9YvG6w+ZrS6X+ZzA7yFW/soAeaups4Qzn1bL6g5FVy8WtP79+0j82oPIbqRjQ==} + node-releases@2.0.57: + resolution: {integrity: sha512-kQK9LGGFiHtrWiNhZtA7Qbw17AQz+dmsEKODRIVTXA9+e5MS/2gZEBhYJt13GrAz5/IOZKddH/0Z3TP/Zgo+yw==} engines: {node: '>=18'} nopt@9.0.0: @@ -4383,8 +4376,8 @@ packages: resolution: {integrity: sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==} engines: {node: '>=18'} - ordered-binary@1.6.1: - resolution: {integrity: sha512-QkCdPooczexPLiXIrbVOPYkR3VO3T6v2OyKRkR1Xbhpy7/LAVXwahnRCgRp78Oe/Ehf0C/HATAxfSr6eA1oX+w==} + ordered-binary@1.6.2: + resolution: {integrity: sha512-BY+qgDArmYpvvmij141xbkB4Cw8RFLBQM5Zj4MODFb1SyXBRE/xO4Xj/QWbR7aUEBxbkjuNdsFVCL2TmbYrlNg==} p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} @@ -4483,8 +4476,8 @@ packages: resolution: {integrity: sha512-afRERtHn54AlwaF2/+LFszyAANTCggGilmcmILUzEjvs3XgFZT+xE6+QWQcAGmu4xajy+Xtj7acLOPdx5/eXWQ==} hasBin: true - pkijs@3.4.0: - resolution: {integrity: sha512-emEcLuomt2j03vxD54giVB4SxTjnsqkU692xZOZXHDVoYyypEm+b3jpiTcc+Cf+myooc+/Ly0z01jqeNHVgJGw==} + pkijs@3.4.1: + resolution: {integrity: sha512-Oo/NZcSWccq8KyoG7gLE9fnltgHns+pNCjCAp/WmjsUySi+sX7y4z4Xqu4fVb42CDHzRPl33fjzT15V1wvcyhA==} engines: {node: '>=16.0.0'} postcss-loader@8.1.1: @@ -4645,8 +4638,8 @@ packages: reflect-metadata@0.2.2: resolution: {integrity: sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==} - regenerate-unicode-properties@10.2.2: - resolution: {integrity: sha512-m03P+zhBeQd1RGnYxrGyDAPpWX/epKirLrp8e3qevZdVkKtnCrjjWczIbYc8+xd6vcTStVlqfycTx1KR4LOr0g==} + regenerate-unicode-properties@10.3.0: + resolution: {integrity: sha512-9ns8odR8e9q3otKeHj3DE80jZYKg6zVeZKE+zQmRKXFoVUcuiTGeO6iusDhPRoIQQPVPRvH+SfBhrTud4eczuw==} engines: {node: '>=4'} regenerate@1.4.2: @@ -4655,15 +4648,15 @@ packages: regex-parser@2.3.1: resolution: {integrity: sha512-yXLRqatcCuKtVHsWrNg0JL3l1zGfdXeEvDa0bdu4tCDQw0RpMDZsqbkyRTUnKMR0tXF627V2oEWjBEaEdqTwtQ==} - regexpu-core@6.4.0: - resolution: {integrity: sha512-0ghuzq67LI9bLXpOX/ISfve/Mq33a4aFRzoQYhnnok1JOFpmE/A2TBGkNVenOGEeSBCjIiWcc6MVOG5HEQv0sA==} + regexpu-core@6.5.2: + resolution: {integrity: sha512-zkmVH92DlzjSFc4xKGZp/2BXIFrDIdBQBC8gUXKCsMgKYb1bkCkxfSuoW1werDjaTEMTbULkHtKFHe1L+Abnaw==} engines: {node: '>=4'} regjsgen@0.8.0: resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} - regjsparser@0.13.2: - resolution: {integrity: sha512-NgRBy2Nx/bE+9F27nVHnqcN5HjyLmecqsqx2PJHu3/IEtADD4WuxuXIVExD5PoSDFVrl78dOonfcOe5O+5nbzQ==} + regjsparser@0.13.3: + resolution: {integrity: sha512-ycwFAS14Jw4mppvmK4GR/J6u3WpWpjkEApehuHtLc/8VpPNpDMbQ4WjqwplXifGeyKOzHSFLmSPqzksDQE2Sfg==} hasBin: true require-directory@2.1.1: @@ -4821,8 +4814,8 @@ packages: resolution: {integrity: sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==} engines: {node: '>= 18'} - serialize-javascript@7.1.1: - resolution: {integrity: sha512-k3CMsaIvvdSwm8oLB4MXSl0wH2/cwlH7xGcnRd2DaeRmBkbzYmyT8j0tsX60DwD1eRwHTpNpH8ljKu9oUT1MeQ==} + serialize-javascript@7.1.2: + resolution: {integrity: sha512-GL2BWwVa6JydKO6l/ljVgjAZF4QJ3S7dWDWi53s5GZT8PJzD2fNxi67HANQGKAqPrwEpL5ba7gUBGi0Ls/sEoQ==} engines: {node: '>=20.0.0'} serve-index@1.9.2: @@ -4852,8 +4845,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shell-quote@1.10.0: - resolution: {integrity: sha512-w1aiOKwKuRgtwAReIIj89puqg+I7GvX4IbLrvmhXbzQsj1+Zwi4VO3+fa6ZF91TWSjIxoEkKnMeHcLEODK5ZXA==} + shell-quote@1.11.0: + resolution: {integrity: sha512-JdxDPD0DBTyu08pq0kPC0xSNet/qsU07qT6IsX1AS8oO2ICNRY4ldNa8OAI6PuwAH8tG3lxEhbqmyp4Dw4036g==} engines: {node: '>= 0.4'} side-channel-list@1.0.1: @@ -4903,8 +4896,8 @@ packages: resolution: {integrity: sha512-IH/iSeO9T6gz1KkFleGDWkG9N3dl4jXVYUtMhIqH10Md0ttMer8nUNWiP1DKuNrybD2xBrixLJdCC9J6ECoYkg==} engines: {node: '>=10.0.0'} - socket.io@4.8.3: - resolution: {integrity: sha512-2Dd78bqzzjE6KPkD5fHZmDAKRNe3J15q+YHDrIsy9WEkqttc7GY+kT9OBLSMaPbQaEd0x1BjcmtMtXkfpc+T5A==} + socket.io@4.8.4: + resolution: {integrity: sha512-9ZV9zg8vN8hO3Y25DhR7nUkJ1VDnBhq5O/JrXhFT9s6+F0gqytSASTHVfCFc2mJXaTfARroErplXlzFWwETZqQ==} engines: {node: '>=10.2.0'} sockjs@0.3.24: @@ -4918,8 +4911,8 @@ packages: resolution: {integrity: sha512-e0VyvkVTwVYViNovRkZ9aodhxVlyoMn7eJhVUPxZ+eK9P/7CBkxvvsBOHqFPEH416726W8tLXXXjKwqgTErrCQ==} engines: {node: '>= 10.0.0', npm: '>= 3.0.0'} - source-map-js@1.2.1: - resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} + source-map-js@1.2.2: + resolution: {integrity: sha512-KGj/8Y43x35aZVDtt+J4mK1hoLGHULMYfSkODJNQjNDC3oW1PqPoxMwo0pLUsWM/UEGzON/NxeHywEfNXNP3Vw==} engines: {node: '>=0.10.0'} source-map-loader@5.0.0: @@ -4945,8 +4938,8 @@ packages: spdx-expression-parse@4.0.0: resolution: {integrity: sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==} - spdx-license-ids@3.0.23: - resolution: {integrity: sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==} + spdx-license-ids@3.0.24: + resolution: {integrity: sha512-cLS9TtWkIQFyLkJ3/5aFQAOHOSKTlOs/7WDut/XPSdjom1fJhUdkepeJAKXa9Y05+FabHd0sti+Et559vDtkpQ==} spdy-transport@3.0.0: resolution: {integrity: sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==} @@ -4986,8 +4979,8 @@ packages: resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==} engines: {node: '>=18'} - string-width@8.2.2: - resolution: {integrity: sha512-GaPUh5gfdrYzqeVNZvUfT23vYYxXzKYidUcnMtJg/3rxRV63EFZy3k6xfKlmfeJD0176lnUV/Usr3XcwSvFzpg==} + string-width@8.3.0: + resolution: {integrity: sha512-ZbmZM0JCihQN91dWnxoipT2KOEyHqEyfRXUyjuRhW8b/xnqPDoq4gWEVApTVa9db2wN8mmoikgFBbjh71+cGeQ==} engines: {node: '>=20'} string_decoder@1.1.1: @@ -5180,11 +5173,11 @@ packages: resolution: {integrity: sha512-yu26mwteFYzBAot7KVMqFGCVpsF6g8wXfJzQUHvu1no3+rRRSFcSV2nKeYvNPLD2J4b08jYBDhHUjeH0ygIl9w==} hasBin: true - undici-types@7.18.2: - resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} + undici-types@7.24.6: + resolution: {integrity: sha512-WRNW+sJgj5OBN4/0JpHFqtqzhpbnV0GuB+OozA9gCL7a993SmU+1JBZCzLNxYsbMfIeDL+lTsphD5jN5N+n0zg==} - undici@6.28.1: - resolution: {integrity: sha512-zWpdTVD54H48CIybL0rWQ3ukpb9d23wM7eH5RtfdmeP70cWHNjtfo7P4vZX+5CoDcO53J4Pu5uXp7lNfjc6DRA==} + undici@6.29.0: + resolution: {integrity: sha512-R+RODBqp6i2pPflGdq+xIOUkl+RNfGgHwoinecKu/JCuf2uO06cOKoDbI2P7Dn6KcswdKwrczbU6IYJ6K8X+wg==} engines: {node: '>=18.17'} unicode-canonical-property-names-ecmascript@2.0.1: @@ -5243,8 +5236,8 @@ packages: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} - video.js@8.24.0: - resolution: {integrity: sha512-ZUuxTlDRkEWhpp2mvGCSFzI0Tc3zcC6IUZbIhBcZ3QW0Ms+IRp/tzYkhqexcMYwrcukRFiWWJmRANsLKvv8Vsg==} + video.js@8.24.1: + resolution: {integrity: sha512-Qh2WxVyiw6BEvpS95KCoZM8wt10r2iDvembOjHPftVcxY4QR53WVTDQlJEuI1J46Yo9Zw+6rRDIe62C+J+edfQ==} videojs-contrib-quality-levels@4.1.0: resolution: {integrity: sha512-TfrXJJg1Bv4t6TOCMEVMwF/CoS8iENYsWNKip8zfhB5kTcegiFYezEA0eHAJPU64ZC8NQbxQgOwAsYU8VXbOWA==} @@ -5353,8 +5346,8 @@ packages: resolution: {integrity: sha512-hXXvrjtx2PLYx4qruKl+kyRSLc52V+cCvMxRjmKwoA+CBbbF5GfIBtR6kCvl0fYGqTUPKB+1ktVmTHqMOzgCBg==} engines: {node: '>=18.0.0'} - webpack-sources@3.5.1: - resolution: {integrity: sha512-jyuiGJdtvY434z5bUZrjz67v76/ePNvFZTp9Mdz29IlH4+GPsgyGjiv0fKI+M7BdkU6ADjulUcKAd3tUK3WlEw==} + webpack-sources@3.6.0: + resolution: {integrity: sha512-EIMmPVvNI0CYXyRPp34F2Qk7W37/BZVZIofS6LAUnrNjCVahS+hO4mxwFJDjQjODTGZDtVzLYoN2+1dYkhk9qA==} engines: {node: '>=10.13.0'} webpack-subresource-integrity@5.1.0: @@ -5433,6 +5426,18 @@ packages: utf-8-validate: optional: true + ws@8.22.0: + resolution: {integrity: sha512-Ydggc987+RO0AnWtZ/7Wq9FtNvcrL1b/RO0ud9mWjUPgDrsAAwQSF51sm2hm1XofbU/4jkpGEsLFsZZxU+1DOg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + wsl-utils@0.1.0: resolution: {integrity: sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==} engines: {node: '>=18'} @@ -5479,8 +5484,8 @@ packages: resolution: {integrity: sha512-4UEqdc2RYGHZc7Doyqkrqiln3p9X2DZVxaGbwhn2pi7MrRagKaOcIKe8L3OxYcbhXLgLFUS3zAYuQjKBQgmuNg==} engines: {node: ^20.19.0 || ^22.12.0 || >=23} - yargs@18.1.0: - resolution: {integrity: sha512-2rAgRKu54VsHkqI0/tYkmluGXHD4KW7yZoycuqDQ15QOTnc2VVfy0nN/1eMhnQLO00A+dwtK20xuCnc1YGeUyg==} + yargs@18.2.0: + resolution: {integrity: sha512-9OpKOLeaoNFecEp7P6iYbzze/5CqWoH7N3SMs/6y1XF4nMvFMspEGZzJ6uFi9MmQwXhyzqYoSEKO3tvA3Z/o2w==} engines: {node: ^20.19.0 || ^22.12.0 || >=23} yn@3.1.1: @@ -5604,14 +5609,14 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/build-angular@20.3.37(@angular/compiler-cli@20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3))(@angular/compiler@20.3.31)(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.13.5)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.9.3)': + '@angular-devkit/build-angular@20.3.37(@angular/compiler-cli@20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3))(@angular/compiler@20.3.33)(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.19.0)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(typescript@5.9.3)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2003.37(chokidar@4.0.3) '@angular-devkit/build-webpack': 0.2003.37(chokidar@4.0.3)(webpack-dev-server@5.2.6(webpack@5.105.0(postcss@8.5.23)))(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)) '@angular-devkit/core': 20.3.37(chokidar@4.0.3) - '@angular/build': 20.3.37(@angular/compiler-cli@20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3))(@angular/compiler@20.3.31)(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.13.5)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.9.0)(postcss@8.5.23)(terser@5.43.1)(tslib@2.8.1)(typescript@5.9.3) - '@angular/compiler-cli': 20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3) + '@angular/build': 20.3.37(@angular/compiler-cli@20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3))(@angular/compiler@20.3.33)(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.19.0)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.9.0)(postcss@8.5.23)(terser@5.43.1)(tslib@2.8.1)(typescript@5.9.3) + '@angular/compiler-cli': 20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3) '@babel/core': 7.29.7 '@babel/generator': 7.28.3 '@babel/helper-annotate-as-pure': 7.27.3 @@ -5622,11 +5627,11 @@ snapshots: '@babel/preset-env': 7.28.3(@babel/core@7.29.7) '@babel/runtime': 7.28.3 '@discoveryjs/json-ext': 0.6.3 - '@ngtools/webpack': 20.3.37(@angular/compiler-cli@20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3))(typescript@5.9.3)(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)) + '@ngtools/webpack': 20.3.37(@angular/compiler-cli@20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3))(typescript@5.9.3)(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)) ansi-colors: 4.1.3 autoprefixer: 10.4.21(postcss@8.5.23) babel-loader: 10.0.0(@babel/core@7.29.7)(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)) - browserslist: 4.29.0 + browserslist: 4.29.3 copy-webpack-plugin: 14.0.0(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)) css-loader: 7.1.2(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)) esbuild-wasm: 0.28.1 @@ -5663,9 +5668,9 @@ snapshots: webpack-merge: 6.0.1 webpack-subresource-integrity: 5.1.0(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)) optionalDependencies: - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/platform-browser': 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) - '@angular/service-worker': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/platform-browser': 20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) + '@angular/service-worker': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) esbuild: 0.28.1 karma: 6.4.4 transitivePeerDependencies: @@ -5739,33 +5744,33 @@ snapshots: '@angular-eslint/bundled-angular-compiler@20.7.0': {} - '@angular-eslint/eslint-plugin-template@20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.70.0)(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@angular-eslint/eslint-plugin-template@20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.71.0)(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@angular-eslint/bundled-angular-compiler': 20.7.0 '@angular-eslint/template-parser': 20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) - '@angular-eslint/utils': 20.7.0(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/types': 8.70.0 - '@typescript-eslint/utils': 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@angular-eslint/utils': 20.7.0(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/types': 8.71.0 + '@typescript-eslint/utils': 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) aria-query: 5.3.2 axobject-query: 4.1.0 eslint: 9.39.5(jiti@1.21.7) typescript: 5.9.3 - '@angular-eslint/eslint-plugin@20.7.0(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@angular-eslint/eslint-plugin@20.7.0(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@angular-eslint/bundled-angular-compiler': 20.7.0 - '@angular-eslint/utils': 20.7.0(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/utils': 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@angular-eslint/utils': 20.7.0(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/utils': 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) eslint: 9.39.5(jiti@1.21.7) ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 - '@angular-eslint/schematics@20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.70.0)(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(chokidar@4.0.3)(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@angular-eslint/schematics@20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.71.0)(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(chokidar@4.0.3)(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@angular-devkit/core': 20.3.37(chokidar@4.0.3) '@angular-devkit/schematics': 20.3.37(chokidar@4.0.3) - '@angular-eslint/eslint-plugin': 20.7.0(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) - '@angular-eslint/eslint-plugin-template': 20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.70.0)(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@angular-eslint/eslint-plugin': 20.7.0(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@angular-eslint/eslint-plugin-template': 20.7.0(@angular-eslint/template-parser@20.7.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(@typescript-eslint/types@8.71.0)(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) ignore: 7.0.5 semver: 7.7.3 strip-json-comments: 3.1.1 @@ -5784,31 +5789,31 @@ snapshots: eslint-scope: 9.1.2 typescript: 5.9.3 - '@angular-eslint/utils@20.7.0(@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@angular-eslint/utils@20.7.0(@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@angular-eslint/bundled-angular-compiler': 20.7.0 - '@typescript-eslint/utils': 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/utils': 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) eslint: 9.39.5(jiti@1.21.7) typescript: 5.9.3 - '@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))': + '@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))': dependencies: - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) tslib: 2.8.1 - '@angular/build@20.3.37(@angular/compiler-cli@20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3))(@angular/compiler@20.3.31)(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.13.5)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.9.0)(postcss@8.5.23)(terser@5.43.1)(tslib@2.8.1)(typescript@5.9.3)': + '@angular/build@20.3.37(@angular/compiler-cli@20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3))(@angular/compiler@20.3.33)(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/service-worker@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@types/node@24.19.0)(chokidar@4.0.3)(jiti@1.21.7)(karma@6.4.4)(less@4.9.0)(postcss@8.5.23)(terser@5.43.1)(tslib@2.8.1)(typescript@5.9.3)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.2003.37(chokidar@4.0.3) - '@angular/compiler': 20.3.31 - '@angular/compiler-cli': 20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3) + '@angular/compiler': 20.3.33 + '@angular/compiler-cli': 20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3) '@babel/core': 7.29.7 '@babel/helper-annotate-as-pure': 7.27.3 '@babel/helper-split-export-declaration': 7.24.7 - '@inquirer/confirm': 5.1.14(@types/node@24.13.5) - '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.6(@types/node@24.13.5)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1)) + '@inquirer/confirm': 5.1.14(@types/node@24.19.0) + '@vitejs/plugin-basic-ssl': 2.1.0(vite@7.3.6(@types/node@24.19.0)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1)) beasties: 0.3.5 - browserslist: 4.29.0 + browserslist: 4.29.3 esbuild: 0.28.1 https-proxy-agent: 7.0.6 istanbul-lib-instrument: 6.0.3 @@ -5826,12 +5831,12 @@ snapshots: tinyglobby: 0.2.14 tslib: 2.8.1 typescript: 5.9.3 - vite: 7.3.6(@types/node@24.13.5)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1) + vite: 7.3.6(@types/node@24.19.0)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1) watchpack: 2.4.4 optionalDependencies: - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/platform-browser': 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) - '@angular/service-worker': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/platform-browser': 20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) + '@angular/service-worker': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) karma: 6.4.4 less: 4.9.0 lmdb: 3.4.2 @@ -5849,22 +5854,22 @@ snapshots: - tsx - yaml - '@angular/cdk@19.1.3(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)': + '@angular/cdk@19.1.3(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)': dependencies: - '@angular/common': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/common': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) rxjs: 7.8.2 tslib: 2.8.1 optionalDependencies: parse5: 7.3.0 - '@angular/cli@20.3.37(@types/node@24.13.5)(chokidar@4.0.3)': + '@angular/cli@20.3.37(@types/node@24.19.0)(chokidar@4.0.3)': dependencies: '@angular-devkit/architect': 0.2003.37(chokidar@4.0.3) '@angular-devkit/core': 20.3.37(chokidar@4.0.3) '@angular-devkit/schematics': 20.3.37(chokidar@4.0.3) - '@inquirer/prompts': 7.8.2(@types/node@24.13.5) - '@listr2/prompt-adapter-inquirer': 3.0.1(@inquirer/prompts@7.8.2(@types/node@24.13.5))(@types/node@24.13.5)(listr2@9.0.1) + '@inquirer/prompts': 7.8.2(@types/node@24.19.0) + '@listr2/prompt-adapter-inquirer': 3.0.1(@inquirer/prompts@7.8.2(@types/node@24.19.0))(@types/node@24.19.0)(listr2@9.0.1) '@modelcontextprotocol/sdk': 1.30.0(zod@4.1.13) '@schematics/angular': 20.3.37(chokidar@4.0.3) '@yarnpkg/lockfile': 1.1.0 @@ -5884,15 +5889,15 @@ snapshots: - chokidar - supports-color - '@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)': + '@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)': dependencies: - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) rxjs: 7.8.2 tslib: 2.8.1 - '@angular/compiler-cli@20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3)': + '@angular/compiler-cli@20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3)': dependencies: - '@angular/compiler': 20.3.31 + '@angular/compiler': 20.3.33 '@babel/core': 7.29.7 '@jridgewell/sourcemap-codec': 1.6.0 chokidar: 4.0.3 @@ -5900,31 +5905,30 @@ snapshots: reflect-metadata: 0.2.2 semver: 7.8.5 tslib: 2.8.1 - yargs: 18.1.0 + yargs: 18.2.0 optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@angular/compiler@20.3.31': + '@angular/compiler@20.3.33': dependencies: tslib: 2.8.1 - '@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)': + '@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)': dependencies: rxjs: 7.8.2 tslib: 2.8.1 optionalDependencies: - '@angular/compiler': 20.3.31 + '@angular/compiler': 20.3.33 zone.js: 0.15.1 - '@angular/fire@20.0.1(f4f40c595a40e1daf3cec0c6ae22a471)': + '@angular/fire@20.1.0(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(chokidar@4.0.3)(rxjs@7.8.2)': dependencies: '@angular-devkit/schematics': 20.3.37(chokidar@4.0.3) - '@angular/common': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/platform-browser': 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) - '@angular/platform-browser-dynamic': 20.3.25(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@20.3.31)(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))) + '@angular/common': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/platform-browser': 20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) '@schematics/angular': 20.3.37(chokidar@4.0.3) firebase: 11.10.0 rxfire: 6.2.0(firebase@11.10.0)(rxjs@7.8.2) @@ -5934,43 +5938,35 @@ snapshots: - '@react-native-async-storage/async-storage' - chokidar - '@angular/forms@20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)': + '@angular/forms@20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)': dependencies: - '@angular/common': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/platform-browser': 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) + '@angular/common': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/platform-browser': 20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) rxjs: 7.8.2 tslib: 2.8.1 - '@angular/language-service@20.3.31': {} + '@angular/language-service@20.3.33': {} - '@angular/platform-browser-dynamic@20.3.25(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/compiler@20.3.31)(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))': + '@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))': dependencies: - '@angular/common': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/compiler': 20.3.31 - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/platform-browser': 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) - tslib: 2.8.1 - - '@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))': - dependencies: - '@angular/common': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/common': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) tslib: 2.8.1 optionalDependencies: - '@angular/animations': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) + '@angular/animations': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) - '@angular/router@20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)': + '@angular/router@20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2)': dependencies: - '@angular/common': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/platform-browser': 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) + '@angular/common': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/platform-browser': 20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) rxjs: 7.8.2 tslib: 2.8.1 - '@angular/service-worker@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)': + '@angular/service-worker@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2)': dependencies: - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) rxjs: 7.8.2 tslib: 2.8.1 @@ -5989,7 +5985,7 @@ snapshots: '@babel/helper-compilation-targets': 7.29.7 '@babel/helper-module-transforms': 7.29.7(@babel/core@7.29.7) '@babel/helpers': 7.29.7 - '@babel/parser': 7.29.8 + '@babel/parser': 7.29.9 '@babel/template': 7.29.7 '@babel/traverse': 7.29.8 '@babel/types': 7.29.8 @@ -6004,7 +6000,7 @@ snapshots: '@babel/generator@7.28.3': dependencies: - '@babel/parser': 7.29.8 + '@babel/parser': 7.29.9 '@babel/types': 7.29.8 '@jridgewell/gen-mapping': 0.3.13 '@jridgewell/trace-mapping': 0.3.31 @@ -6012,7 +6008,7 @@ snapshots: '@babel/generator@7.29.8': dependencies: - '@babel/parser': 7.29.8 + '@babel/parser': 7.29.9 '@babel/types': 7.29.8 '@jridgewell/gen-mapping': 0.3.13 '@jridgewell/trace-mapping': 0.3.31 @@ -6030,7 +6026,7 @@ snapshots: dependencies: '@babel/compat-data': 7.29.7 '@babel/helper-validator-option': 7.29.7 - browserslist: 4.29.0 + browserslist: 4.29.3 lru-cache: 5.1.1 semver: 6.3.1 @@ -6051,7 +6047,7 @@ snapshots: dependencies: '@babel/core': 7.29.7 '@babel/helper-annotate-as-pure': 7.29.7 - regexpu-core: 6.4.0 + regexpu-core: 6.5.2 semver: 6.3.1 '@babel/helper-define-polyfill-provider@0.6.8(@babel/core@7.29.7)': @@ -6144,7 +6140,7 @@ snapshots: '@babel/template': 7.29.7 '@babel/types': 7.29.8 - '@babel/parser@7.29.8': + '@babel/parser@7.29.9': dependencies: '@babel/types': 7.29.8 @@ -6638,7 +6634,7 @@ snapshots: '@babel/template@7.29.7': dependencies: '@babel/code-frame': 7.29.7 - '@babel/parser': 7.29.8 + '@babel/parser': 7.29.9 '@babel/types': 7.29.8 '@babel/traverse@7.29.8': @@ -6646,7 +6642,7 @@ snapshots: '@babel/code-frame': 7.29.7 '@babel/generator': 7.29.8 '@babel/helper-globals': 7.29.7 - '@babel/parser': 7.29.8 + '@babel/parser': 7.29.9 '@babel/template': 7.29.7 '@babel/types': 7.29.8 debug: 4.4.3 @@ -7113,7 +7109,7 @@ snapshots: '@grpc/grpc-js@1.9.16': dependencies: '@grpc/proto-loader': 0.7.15 - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@grpc/proto-loader@0.7.15': dependencies: @@ -7122,9 +7118,9 @@ snapshots: protobufjs: 7.6.6 yargs: 17.7.3 - '@hono/node-server@2.1.1(hono@4.13.8)': + '@hono/node-server@2.1.3(hono@4.13.12)': dependencies: - hono: 4.13.8 + hono: 4.13.12 '@humanfs/core@0.19.2': dependencies: @@ -7144,135 +7140,135 @@ snapshots: '@inquirer/ansi@1.0.2': {} - '@inquirer/checkbox@4.3.2(@types/node@24.13.5)': + '@inquirer/checkbox@4.3.2(@types/node@24.19.0)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/type': 3.0.10(@types/node@24.19.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/confirm@5.1.14(@types/node@24.13.5)': + '@inquirer/confirm@5.1.14(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/confirm@5.1.21(@types/node@24.13.5)': + '@inquirer/confirm@5.1.21(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/core@10.3.2(@types/node@24.13.5)': + '@inquirer/core@10.3.2(@types/node@24.19.0)': dependencies: '@inquirer/ansi': 1.0.2 '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/type': 3.0.10(@types/node@24.19.0) cli-width: 4.1.0 mute-stream: 2.0.0 signal-exit: 4.1.0 wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/editor@4.2.23(@types/node@24.13.5)': + '@inquirer/editor@4.2.23(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/external-editor': 1.0.3(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/external-editor': 1.0.3(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/expand@4.0.23(@types/node@24.13.5)': + '@inquirer/expand@4.0.23(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/external-editor@1.0.3(@types/node@24.13.5)': + '@inquirer/external-editor@1.0.3(@types/node@24.19.0)': dependencies: chardet: 2.2.0 iconv-lite: 0.7.3 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@inquirer/figures@1.0.15': {} - '@inquirer/input@4.3.1(@types/node@24.13.5)': + '@inquirer/input@4.3.1(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/number@3.0.23(@types/node@24.13.5)': + '@inquirer/number@3.0.23(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/password@4.0.23(@types/node@24.13.5)': + '@inquirer/password@4.0.23(@types/node@24.19.0)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) optionalDependencies: - '@types/node': 24.13.5 - - '@inquirer/prompts@7.8.2(@types/node@24.13.5)': - dependencies: - '@inquirer/checkbox': 4.3.2(@types/node@24.13.5) - '@inquirer/confirm': 5.1.21(@types/node@24.13.5) - '@inquirer/editor': 4.2.23(@types/node@24.13.5) - '@inquirer/expand': 4.0.23(@types/node@24.13.5) - '@inquirer/input': 4.3.1(@types/node@24.13.5) - '@inquirer/number': 3.0.23(@types/node@24.13.5) - '@inquirer/password': 4.0.23(@types/node@24.13.5) - '@inquirer/rawlist': 4.1.11(@types/node@24.13.5) - '@inquirer/search': 3.2.2(@types/node@24.13.5) - '@inquirer/select': 4.4.2(@types/node@24.13.5) + '@types/node': 24.19.0 + + '@inquirer/prompts@7.8.2(@types/node@24.19.0)': + dependencies: + '@inquirer/checkbox': 4.3.2(@types/node@24.19.0) + '@inquirer/confirm': 5.1.21(@types/node@24.19.0) + '@inquirer/editor': 4.2.23(@types/node@24.19.0) + '@inquirer/expand': 4.0.23(@types/node@24.19.0) + '@inquirer/input': 4.3.1(@types/node@24.19.0) + '@inquirer/number': 3.0.23(@types/node@24.19.0) + '@inquirer/password': 4.0.23(@types/node@24.19.0) + '@inquirer/rawlist': 4.1.11(@types/node@24.19.0) + '@inquirer/search': 3.2.2(@types/node@24.19.0) + '@inquirer/select': 4.4.2(@types/node@24.19.0) optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/rawlist@4.1.11(@types/node@24.13.5)': + '@inquirer/rawlist@4.1.11(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/search@3.2.2(@types/node@24.13.5)': + '@inquirer/search@3.2.2(@types/node@24.19.0)': dependencies: - '@inquirer/core': 10.3.2(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/type': 3.0.10(@types/node@24.19.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/select@4.4.2(@types/node@24.13.5)': + '@inquirer/select@4.4.2(@types/node@24.19.0)': dependencies: '@inquirer/ansi': 1.0.2 - '@inquirer/core': 10.3.2(@types/node@24.13.5) + '@inquirer/core': 10.3.2(@types/node@24.19.0) '@inquirer/figures': 1.0.15 - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/type': 3.0.10(@types/node@24.19.0) yoctocolors-cjs: 2.1.3 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@inquirer/type@3.0.10(@types/node@24.13.5)': + '@inquirer/type@3.0.10(@types/node@24.19.0)': optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@ionic/angular-toolkit@12.3.0(chokidar@4.0.3)': dependencies: @@ -7282,11 +7278,11 @@ snapshots: transitivePeerDependencies: - chokidar - '@ionic/angular@8.8.19(188a845974a1e7a2bb441c308020a797)': + '@ionic/angular@8.8.19(f10a13cb33191ea4711404b3af19113d)': dependencies: - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/forms': 20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) - '@angular/router': 20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/forms': 20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) + '@angular/router': 20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) '@ionic/core': 8.8.19 ionicons: 8.1.0 jsonc-parser: 3.3.1 @@ -7359,59 +7355,59 @@ snapshots: dependencies: tslib: 2.8.1 - '@jsonjoy.com/fs-core@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-core@4.80.0(tslib@2.8.1)': dependencies: - '@jsonjoy.com/fs-node-builtins': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-utils': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-builtins': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-utils': 4.80.0(tslib@2.8.1) thingies: 2.6.1(tslib@2.8.1) tslib: 2.8.1 - '@jsonjoy.com/fs-fsa@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-fsa@4.80.0(tslib@2.8.1)': dependencies: - '@jsonjoy.com/fs-core': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-builtins': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-utils': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-core': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-builtins': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-utils': 4.80.0(tslib@2.8.1) thingies: 2.6.1(tslib@2.8.1) tslib: 2.8.1 - '@jsonjoy.com/fs-node-builtins@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-node-builtins@4.80.0(tslib@2.8.1)': dependencies: tslib: 2.8.1 - '@jsonjoy.com/fs-node-to-fsa@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-node-to-fsa@4.80.0(tslib@2.8.1)': dependencies: - '@jsonjoy.com/fs-fsa': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-builtins': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-utils': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-fsa': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-builtins': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-utils': 4.80.0(tslib@2.8.1) tslib: 2.8.1 - '@jsonjoy.com/fs-node-utils@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-node-utils@4.80.0(tslib@2.8.1)': dependencies: - '@jsonjoy.com/fs-node-builtins': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-builtins': 4.80.0(tslib@2.8.1) glob-to-regex.js: 1.3.1(tslib@2.8.1) tslib: 2.8.1 - '@jsonjoy.com/fs-node@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-node@4.80.0(tslib@2.8.1)': dependencies: - '@jsonjoy.com/fs-core': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-builtins': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-utils': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-print': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-snapshot': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-core': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-builtins': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-utils': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-print': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-snapshot': 4.80.0(tslib@2.8.1) glob-to-regex.js: 1.3.1(tslib@2.8.1) thingies: 2.6.1(tslib@2.8.1) tslib: 2.8.1 - '@jsonjoy.com/fs-print@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-print@4.80.0(tslib@2.8.1)': dependencies: - '@jsonjoy.com/fs-node-utils': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-utils': 4.80.0(tslib@2.8.1) tree-dump: 1.1.0(tslib@2.8.1) tslib: 2.8.1 - '@jsonjoy.com/fs-snapshot@4.78.0(tslib@2.8.1)': + '@jsonjoy.com/fs-snapshot@4.80.0(tslib@2.8.1)': dependencies: '@jsonjoy.com/buffers': 17.67.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-utils': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-utils': 4.80.0(tslib@2.8.1) '@jsonjoy.com/json-pack': 17.67.0(tslib@2.8.1) '@jsonjoy.com/util': 17.67.0(tslib@2.8.1) tslib: 2.8.1 @@ -7465,10 +7461,10 @@ snapshots: '@leichtgewicht/ip-codec@2.0.5': {} - '@listr2/prompt-adapter-inquirer@3.0.1(@inquirer/prompts@7.8.2(@types/node@24.13.5))(@types/node@24.13.5)(listr2@9.0.1)': + '@listr2/prompt-adapter-inquirer@3.0.1(@inquirer/prompts@7.8.2(@types/node@24.19.0))(@types/node@24.19.0)(listr2@9.0.1)': dependencies: - '@inquirer/prompts': 7.8.2(@types/node@24.13.5) - '@inquirer/type': 3.0.10(@types/node@24.13.5) + '@inquirer/prompts': 7.8.2(@types/node@24.19.0) + '@inquirer/type': 3.0.10(@types/node@24.19.0) listr2: 9.0.1 transitivePeerDependencies: - '@types/node' @@ -7496,7 +7492,7 @@ snapshots: '@modelcontextprotocol/sdk@1.30.0(zod@4.1.13)': dependencies: - '@hono/node-server': 2.1.1(hono@4.13.8) + '@hono/node-server': 2.1.3(hono@4.13.12) ajv: 8.20.0 ajv-formats: 3.0.1(ajv@8.20.0) content-type: 1.0.5 @@ -7506,7 +7502,7 @@ snapshots: eventsource-parser: 3.1.1 express: 5.2.1 express-rate-limit: 8.7.0(express@5.2.1) - hono: 4.13.8 + hono: 4.13.12 jose: 6.2.12 json-schema-typed: 8.0.2 pkce-challenge: 5.0.1 @@ -7606,13 +7602,13 @@ snapshots: '@napi-rs/nice-win32-x64-msvc': 1.1.1 optional: true - '@ngtools/webpack@20.3.37(@angular/compiler-cli@20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3))(typescript@5.9.3)(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23))': + '@ngtools/webpack@20.3.37(@angular/compiler-cli@20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3))(typescript@5.9.3)(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23))': dependencies: - '@angular/compiler-cli': 20.3.31(@angular/compiler@20.3.31)(typescript@5.9.3) + '@angular/compiler-cli': 20.3.33(@angular/compiler@20.3.33)(typescript@5.9.3) typescript: 5.9.3 webpack: 5.105.0(esbuild@0.28.1)(postcss@8.5.23) - '@noble/hashes@1.4.0': {} + '@noble/hashes@1.8.0': {} '@nodelib/fs.scandir@2.1.5': dependencies: @@ -7631,7 +7627,7 @@ snapshots: agent-base: 7.1.4 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 - lru-cache: 11.5.2 + lru-cache: 11.5.3 socks-proxy-agent: 8.0.5 transitivePeerDependencies: - supports-color @@ -7645,7 +7641,7 @@ snapshots: '@gar/promise-retry': 1.0.3 '@npmcli/promise-spawn': 9.0.1 ini: 6.0.0 - lru-cache: 11.5.2 + lru-cache: 11.5.3 npm-pick-manifest: 11.0.3 proc-log: 6.1.0 semver: 7.7.2 @@ -7739,78 +7735,78 @@ snapshots: '@parcel/watcher-win32-x64': 2.6.0 optional: true - '@peculiar/asn1-cms@2.9.4': + '@peculiar/asn1-cms@2.10.0': dependencies: - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 - '@peculiar/asn1-x509-attr': 2.9.4 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 + '@peculiar/asn1-x509-attr': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-csr@2.9.4': + '@peculiar/asn1-csr@2.10.0': dependencies: - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-ecc@2.9.4': + '@peculiar/asn1-ecc@2.10.0': dependencies: - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-pfx@2.9.4': + '@peculiar/asn1-pfx@2.10.0': dependencies: - '@peculiar/asn1-cms': 2.9.4 - '@peculiar/asn1-pkcs8': 2.9.4 - '@peculiar/asn1-rsa': 2.9.4 - '@peculiar/asn1-schema': 2.9.4 + '@peculiar/asn1-cms': 2.10.0 + '@peculiar/asn1-pkcs8': 2.10.0 + '@peculiar/asn1-rsa': 2.10.0 + '@peculiar/asn1-schema': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-pkcs8@2.9.4': + '@peculiar/asn1-pkcs8@2.10.0': dependencies: - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-pkcs9@2.9.4': + '@peculiar/asn1-pkcs9@2.10.0': dependencies: - '@peculiar/asn1-cms': 2.9.4 - '@peculiar/asn1-pfx': 2.9.4 - '@peculiar/asn1-pkcs8': 2.9.4 - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 - '@peculiar/asn1-x509-attr': 2.9.4 + '@peculiar/asn1-cms': 2.10.0 + '@peculiar/asn1-pfx': 2.10.0 + '@peculiar/asn1-pkcs8': 2.10.0 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 + '@peculiar/asn1-x509-attr': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-rsa@2.9.4': + '@peculiar/asn1-rsa@2.10.0': dependencies: - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-schema@2.9.4': + '@peculiar/asn1-schema@2.10.0': dependencies: '@peculiar/utils': 2.0.3 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-x509-attr@2.9.4': + '@peculiar/asn1-x509-attr@2.10.0': dependencies: - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 asn1js: 3.0.10 tslib: 2.8.1 - '@peculiar/asn1-x509@2.9.4': + '@peculiar/asn1-x509@2.10.0': dependencies: - '@peculiar/asn1-schema': 2.9.4 + '@peculiar/asn1-schema': 2.10.0 '@peculiar/utils': 2.0.3 asn1js: 3.0.10 tslib: 2.8.1 @@ -7821,13 +7817,13 @@ snapshots: '@peculiar/x509@1.14.3': dependencies: - '@peculiar/asn1-cms': 2.9.4 - '@peculiar/asn1-csr': 2.9.4 - '@peculiar/asn1-ecc': 2.9.4 - '@peculiar/asn1-pkcs9': 2.9.4 - '@peculiar/asn1-rsa': 2.9.4 - '@peculiar/asn1-schema': 2.9.4 - '@peculiar/asn1-x509': 2.9.4 + '@peculiar/asn1-cms': 2.10.0 + '@peculiar/asn1-csr': 2.10.0 + '@peculiar/asn1-ecc': 2.10.0 + '@peculiar/asn1-pkcs9': 2.10.0 + '@peculiar/asn1-rsa': 2.10.0 + '@peculiar/asn1-schema': 2.10.0 + '@peculiar/asn1-x509': 2.10.0 pvtsutils: 1.3.6 reflect-metadata: 0.2.2 tslib: 2.8.1 @@ -8019,7 +8015,7 @@ snapshots: '@rollup/rollup-win32-arm64-msvc': 4.44.0 '@rollup/rollup-win32-x64-msvc': 4.44.0 - '@stencil/core@4.45.0': + '@stencil/core@4.45.1': optionalDependencies: '@rollup/rollup-darwin-arm64': 4.44.0 '@rollup/rollup-darwin-x64': 4.44.0 @@ -8048,24 +8044,24 @@ snapshots: '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/bonjour@3.5.13': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/connect-history-api-fallback@1.5.4': dependencies: '@types/express-serve-static-core': 4.19.9 - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/connect@3.4.38': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/cors@2.8.19': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/eslint-scope@3.7.7': dependencies: @@ -8085,7 +8081,7 @@ snapshots: '@types/express-serve-static-core@4.19.9': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/qs': 6.15.1 '@types/range-parser': 1.2.7 '@types/send': 1.2.1 @@ -8101,7 +8097,7 @@ snapshots: '@types/http-proxy@1.17.17': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/jasmine@6.0.0': {} @@ -8113,9 +8109,9 @@ snapshots: '@types/mime@1.3.5': {} - '@types/node@24.13.5': + '@types/node@24.19.0': dependencies: - undici-types: 7.18.2 + undici-types: 7.24.6 '@types/qs@6.15.1': {} @@ -8126,11 +8122,11 @@ snapshots: '@types/send@0.17.6': dependencies: '@types/mime': 1.3.5 - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/send@1.2.1': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/serve-index@1.9.4': dependencies: @@ -8139,70 +8135,70 @@ snapshots: '@types/serve-static@1.15.10': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/send': 0.17.6 '@types/sockjs@0.3.36': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 '@types/video.js@7.3.58': {} - '@types/ws@8.18.1': + '@types/ws@8.18.2': dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 - '@typescript-eslint/eslint-plugin@8.70.0(@typescript-eslint/parser@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.71.0(@typescript-eslint/parser@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3))(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.70.0 - '@typescript-eslint/type-utils': 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/utils': 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.70.0 + '@typescript-eslint/parser': 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.71.0 + '@typescript-eslint/type-utils': 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/utils': 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.71.0 eslint: 9.39.5(jiti@1.21.7) - ignore: 7.0.9 + ignore: 7.0.11 natural-compare: 1.4.0 ts-api-utils: 2.5.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/parser@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.70.0 - '@typescript-eslint/types': 8.70.0 - '@typescript-eslint/typescript-estree': 8.70.0(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.70.0 + '@typescript-eslint/scope-manager': 8.71.0 + '@typescript-eslint/types': 8.71.0 + '@typescript-eslint/typescript-estree': 8.71.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.71.0 debug: 4.4.3 eslint: 9.39.5(jiti@1.21.7) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.70.0(typescript@5.9.3)': + '@typescript-eslint/project-service@8.71.0(typescript@5.9.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.70.0(typescript@5.9.3) - '@typescript-eslint/types': 8.70.0 + '@typescript-eslint/tsconfig-utils': 8.71.0(typescript@5.9.3) + '@typescript-eslint/types': 8.71.0 debug: 4.4.3 typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.70.0': + '@typescript-eslint/scope-manager@8.71.0': dependencies: - '@typescript-eslint/types': 8.70.0 - '@typescript-eslint/visitor-keys': 8.70.0 + '@typescript-eslint/types': 8.71.0 + '@typescript-eslint/visitor-keys': 8.71.0 - '@typescript-eslint/tsconfig-utils@8.70.0(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.71.0(typescript@5.9.3)': dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.70.0 - '@typescript-eslint/typescript-estree': 8.70.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) + '@typescript-eslint/types': 8.71.0 + '@typescript-eslint/typescript-estree': 8.71.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3) debug: 4.4.3 eslint: 9.39.5(jiti@1.21.7) ts-api-utils: 2.5.0(typescript@5.9.3) @@ -8210,14 +8206,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/types@8.70.0': {} + '@typescript-eslint/types@8.71.0': {} - '@typescript-eslint/typescript-estree@8.70.0(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.71.0(typescript@5.9.3)': dependencies: - '@typescript-eslint/project-service': 8.70.0(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.70.0(typescript@5.9.3) - '@typescript-eslint/types': 8.70.0 - '@typescript-eslint/visitor-keys': 8.70.0 + '@typescript-eslint/project-service': 8.71.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.71.0(typescript@5.9.3) + '@typescript-eslint/types': 8.71.0 + '@typescript-eslint/visitor-keys': 8.71.0 debug: 4.4.3 minimatch: 10.2.6 semver: 7.8.5 @@ -8227,23 +8223,23 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.70.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': + '@typescript-eslint/utils@8.71.0(eslint@9.39.5(jiti@1.21.7))(typescript@5.9.3)': dependencies: '@eslint-community/eslint-utils': 4.10.1(eslint@9.39.5(jiti@1.21.7)) - '@typescript-eslint/scope-manager': 8.70.0 - '@typescript-eslint/types': 8.70.0 - '@typescript-eslint/typescript-estree': 8.70.0(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.71.0 + '@typescript-eslint/types': 8.71.0 + '@typescript-eslint/typescript-estree': 8.71.0(typescript@5.9.3) eslint: 9.39.5(jiti@1.21.7) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/visitor-keys@8.70.0': + '@typescript-eslint/visitor-keys@8.71.0': dependencies: - '@typescript-eslint/types': 8.70.0 + '@typescript-eslint/types': 8.71.0 eslint-visitor-keys: 5.0.1 - '@videojs/http-streaming@3.17.5(video.js@8.24.0)': + '@videojs/http-streaming@3.17.5(video.js@8.24.1)': dependencies: '@babel/runtime': 7.29.7 '@videojs/vhs-utils': 4.1.2 @@ -8252,7 +8248,7 @@ snapshots: m3u8-parser: 7.2.0 mpd-parser: 1.4.0 mux.js: 7.1.0 - video.js: 8.24.0 + video.js: 8.24.1 '@videojs/vhs-utils@4.1.2': dependencies: @@ -8265,9 +8261,9 @@ snapshots: global: 4.4.0 is-function: 1.0.2 - '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.6(@types/node@24.13.5)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1))': + '@vitejs/plugin-basic-ssl@2.1.0(vite@7.3.6(@types/node@24.19.0)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1))': dependencies: - vite: 7.3.6(@types/node@24.13.5)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1) + vite: 7.3.6(@types/node@24.19.0)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1) '@webassemblyjs/ast@1.14.1': dependencies: @@ -8454,7 +8450,7 @@ snapshots: ansi-regex@5.0.1: {} - ansi-regex@6.3.0: {} + ansi-regex@6.4.0: {} ansi-styles@4.3.0: dependencies: @@ -8483,8 +8479,8 @@ snapshots: autoprefixer@10.4.21(postcss@8.5.23): dependencies: - browserslist: 4.29.0 - caniuse-lite: 1.0.30001810 + browserslist: 4.29.3 + caniuse-lite: 1.0.30001814 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.1.1 @@ -8527,9 +8523,7 @@ snapshots: balanced-match@4.0.4: {} - base64id@2.0.0: {} - - baseline-browser-mapping@2.11.24: {} + baseline-browser-mapping@2.11.26: {} batch@0.6.1: {} @@ -8599,17 +8593,17 @@ snapshots: dependencies: fill-range: 7.1.1 - browserslist@4.29.0: + browserslist@4.29.3: dependencies: - baseline-browser-mapping: 2.11.24 - caniuse-lite: 1.0.30001810 - electron-to-chromium: 1.5.430 - node-releases: 2.0.55 - update-browserslist-db: 1.3.3(browserslist@4.29.0) + baseline-browser-mapping: 2.11.26 + caniuse-lite: 1.0.30001814 + electron-to-chromium: 1.5.443 + node-releases: 2.0.57 + update-browserslist-db: 1.3.3(browserslist@4.29.3) buffer-from@1.1.2: {} - bundle-name@4.1.0: + bundle-name@4.1.1: dependencies: run-applescript: 7.1.0 @@ -8622,7 +8616,7 @@ snapshots: '@npmcli/fs': 5.0.0 fs-minipass: 3.0.3 glob: 13.0.6 - lru-cache: 11.5.2 + lru-cache: 11.5.3 minipass: 7.1.3 minipass-collect: 2.0.1 minipass-flush: 1.0.7 @@ -8642,7 +8636,7 @@ snapshots: callsites@3.1.0: {} - caniuse-lite@1.0.30001810: {} + caniuse-lite@1.0.30001814: {} chalk@4.1.2: dependencies: @@ -8779,13 +8773,13 @@ snapshots: glob-parent: 6.0.2 normalize-path: 3.0.0 schema-utils: 4.5.0 - serialize-javascript: 7.1.1 + serialize-javascript: 7.1.2 tinyglobby: 0.2.17 webpack: 5.105.0(esbuild@0.28.1)(postcss@8.5.23) core-js-compat@3.50.0: dependencies: - browserslist: 4.29.0 + browserslist: 4.29.3 core-js@3.50.0: {} @@ -8866,7 +8860,7 @@ snapshots: default-browser@5.5.1: dependencies: - bundle-name: 4.1.0 + bundle-name: 4.1.1 default-browser-id: 5.0.1 define-lazy-prop@3.0.0: {} @@ -8925,7 +8919,7 @@ snapshots: ee-first@1.1.1: {} - electron-to-chromium@1.5.430: {} + electron-to-chromium@1.5.443: {} emoji-regex@10.6.0: {} @@ -8937,7 +8931,7 @@ snapshots: encodeurl@2.0.0: {} - engine.io-client@6.6.6: + engine.io-client@6.6.7: dependencies: '@socket.io/component-emitter': 3.1.2 debug: 4.4.3 @@ -8952,11 +8946,11 @@ snapshots: engine.io-parser@5.2.3: {} - engine.io@6.6.10: + engine.io@6.6.11: dependencies: '@types/cors': 2.8.19 - '@types/node': 24.13.5 - '@types/ws': 8.18.1 + '@types/node': 24.19.0 + '@types/ws': 8.18.2 accepts: 1.3.8 cookie: 0.7.2 cors: 2.8.6 @@ -8968,7 +8962,7 @@ snapshots: - supports-color - utf-8-validate - enhanced-resolve@5.25.1: + enhanced-resolve@5.26.0: dependencies: graceful-fs: 4.2.11 tapable: 2.3.3 @@ -9345,7 +9339,7 @@ snapshots: flatted@3.4.4: {} - follow-redirects@1.16.0(debug@4.4.3): + follow-redirects@1.16.1(debug@4.4.3): optionalDependencies: debug: 4.4.3 @@ -9378,7 +9372,7 @@ snapshots: get-caller-file@2.0.5: {} - get-east-asian-width@1.6.0: {} + get-east-asian-width@1.7.0: {} get-intrinsic@1.3.0: dependencies: @@ -9452,11 +9446,11 @@ snapshots: dependencies: function-bind: 1.1.2 - hono@4.13.8: {} + hono@4.13.12: {} hosted-git-info@9.0.3: dependencies: - lru-cache: 11.5.2 + lru-cache: 11.5.3 hpack.js@2.1.6: dependencies: @@ -9527,7 +9521,7 @@ snapshots: http-proxy@1.18.1(debug@4.4.3): dependencies: eventemitter3: 4.0.7 - follow-redirects: 1.16.0(debug@4.4.3) + follow-redirects: 1.16.1(debug@4.4.3) requires-port: 1.0.0 transitivePeerDependencies: - debug @@ -9565,9 +9559,9 @@ snapshots: ignore@5.3.2: {} - ignore@7.0.5: {} + ignore@7.0.11: {} - ignore@7.0.9: {} + ignore@7.0.5: {} immutable@5.1.9: {} @@ -9591,7 +9585,7 @@ snapshots: ionicons@8.1.0: dependencies: - '@stencil/core': 4.45.0 + '@stencil/core': 4.45.1 ip-address@10.7.2: {} @@ -9605,7 +9599,7 @@ snapshots: dependencies: binary-extensions: 2.3.0 - is-core-module@2.16.2: + is-core-module@2.17.0: dependencies: hasown: 2.0.4 @@ -9619,7 +9613,7 @@ snapshots: is-fullwidth-code-point@5.1.0: dependencies: - get-east-asian-width: 1.6.0 + get-east-asian-width: 1.7.0 is-function@1.0.2: {} @@ -9679,7 +9673,7 @@ snapshots: istanbul-lib-instrument@6.0.3: dependencies: '@babel/core': 7.29.7 - '@babel/parser': 7.29.8 + '@babel/parser': 7.29.9 '@istanbuljs/schema': 0.1.6 istanbul-lib-coverage: 3.2.2 semver: 7.7.2 @@ -9692,7 +9686,7 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 merge-stream: 2.0.0 supports-color: 8.1.1 @@ -9766,7 +9760,7 @@ snapshots: qjobs: 1.2.0 range-parser: 1.3.0 rimraf: 3.0.2 - socket.io: 4.8.3 + socket.io: 4.8.4 source-map: 0.6.1 tmp: 0.2.7 ua-parser-js: 0.7.41 @@ -9791,7 +9785,7 @@ snapshots: launch-editor@2.14.1: dependencies: picocolors: 1.1.1 - shell-quote: 1.10.0 + shell-quote: 1.11.0 less-loader@12.3.0(less@4.9.0)(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)): dependencies: @@ -9821,7 +9815,7 @@ snapshots: license-webpack-plugin@4.0.2(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)): dependencies: - webpack-sources: 3.5.1 + webpack-sources: 3.6.0 optionalDependencies: webpack: 5.105.0(esbuild@0.28.1)(postcss@8.5.23) @@ -9841,7 +9835,7 @@ snapshots: msgpackr: 1.12.1 node-addon-api: 6.1.0 node-gyp-build-optional-packages: 5.2.2 - ordered-binary: 1.6.1 + ordered-binary: 1.6.2 weak-lru-cache: 1.2.2 optionalDependencies: '@lmdb/lmdb-darwin-arm64': 3.4.2 @@ -9900,7 +9894,7 @@ snapshots: long@5.3.2: {} - lru-cache@11.5.2: {} + lru-cache@11.5.3: {} lru-cache@5.1.1: dependencies: @@ -9938,22 +9932,24 @@ snapshots: transitivePeerDependencies: - supports-color + marked@18.0.14: {} + math-intrinsics@1.1.0: {} media-typer@0.3.0: {} media-typer@1.1.1: {} - memfs@4.78.0: + memfs@4.80.0: dependencies: - '@jsonjoy.com/fs-core': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-fsa': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-builtins': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-to-fsa': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-node-utils': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-print': 4.78.0(tslib@2.8.1) - '@jsonjoy.com/fs-snapshot': 4.78.0(tslib@2.8.1) + '@jsonjoy.com/fs-core': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-fsa': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-builtins': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-to-fsa': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-node-utils': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-print': 4.80.0(tslib@2.8.1) + '@jsonjoy.com/fs-snapshot': 4.80.0(tslib@2.8.1) '@jsonjoy.com/json-pack': 1.21.0(tslib@2.8.1) '@jsonjoy.com/util': 1.9.0(tslib@2.8.1) glob-to-regex.js: 1.3.1(tslib@2.8.1) @@ -10146,10 +10142,10 @@ snapshots: semver: 7.7.2 tar: 7.5.22 tinyglobby: 0.2.17 - undici: 6.28.1 + undici: 6.29.0 which: 6.0.1 - node-releases@2.0.55: {} + node-releases@2.0.57: {} nopt@9.0.0: dependencies: @@ -10257,7 +10253,7 @@ snapshots: string-width: 7.2.0 strip-ansi: 7.2.0 - ordered-binary@1.6.1: + ordered-binary@1.6.2: optional: true p-limit@3.1.0: @@ -10342,7 +10338,7 @@ snapshots: path-scurry@2.0.2: dependencies: - lru-cache: 11.5.2 + lru-cache: 11.5.3 minipass: 7.1.3 path-to-regexp@0.1.13: {} @@ -10365,9 +10361,9 @@ snapshots: dependencies: '@babel/runtime': 7.29.7 - pkijs@3.4.0: + pkijs@3.4.1: dependencies: - '@noble/hashes': 1.4.0 + '@noble/hashes': 1.8.0 asn1js: 3.0.10 bytestreamjs: 2.0.1 pvtsutils: 1.3.6 @@ -10419,19 +10415,19 @@ snapshots: dependencies: nanoid: 3.3.19 picocolors: 1.1.1 - source-map-js: 1.2.1 + source-map-js: 1.2.2 prelude-ls@1.2.1: {} - primeng@20.4.0(268d687846b8db06e42ee38df37abffb): + primeng@20.4.0(b14a74dd2032f99f8d673bb81f920cd0): dependencies: - '@angular/animations': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) - '@angular/cdk': 19.1.3(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/common': 20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) - '@angular/core': 20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1) - '@angular/forms': 20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) - '@angular/platform-browser': 20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)) - '@angular/router': 20.3.31(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.31(@angular/animations@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.31(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.31(@angular/compiler@20.3.31)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) + '@angular/animations': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) + '@angular/cdk': 19.1.3(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/common': 20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2) + '@angular/core': 20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1) + '@angular/forms': 20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) + '@angular/platform-browser': 20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)) + '@angular/router': 20.3.33(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(@angular/platform-browser@20.3.33(@angular/animations@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(@angular/common@20.3.33(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1))(rxjs@7.8.2))(@angular/core@20.3.33(@angular/compiler@20.3.33)(rxjs@7.8.2)(zone.js@0.15.1)))(rxjs@7.8.2) '@primeuix/styled': 0.7.4 '@primeuix/styles': 1.2.5 '@primeuix/utils': 0.6.4 @@ -10466,7 +10462,7 @@ snapshots: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.2 - '@types/node': 24.13.5 + '@types/node': 24.19.0 long: 5.3.2 proxy-addr@2.0.8: @@ -10542,7 +10538,7 @@ snapshots: reflect-metadata@0.2.2: {} - regenerate-unicode-properties@10.2.2: + regenerate-unicode-properties@10.3.0: dependencies: regenerate: 1.4.2 @@ -10550,18 +10546,18 @@ snapshots: regex-parser@2.3.1: {} - regexpu-core@6.4.0: + regexpu-core@6.5.2: dependencies: regenerate: 1.4.2 - regenerate-unicode-properties: 10.2.2 + regenerate-unicode-properties: 10.3.0 regjsgen: 0.8.0 - regjsparser: 0.13.2 + regjsparser: 0.13.3 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.2.1 regjsgen@0.8.0: {} - regjsparser@0.13.2: + regjsparser@0.13.3: dependencies: jsesc: 3.1.0 @@ -10583,14 +10579,14 @@ snapshots: resolve@1.22.10: dependencies: - is-core-module: 2.16.2 + is-core-module: 2.17.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 resolve@1.22.12: dependencies: es-errors: 1.3.0 - is-core-module: 2.16.2 + is-core-module: 2.17.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -10688,7 +10684,7 @@ snapshots: dependencies: chokidar: 4.0.3 immutable: 5.1.9 - source-map-js: 1.2.1 + source-map-js: 1.2.2 optionalDependencies: '@parcel/watcher': 2.6.0 @@ -10707,7 +10703,7 @@ snapshots: selfsigned@5.5.0: dependencies: '@peculiar/x509': 1.14.3 - pkijs: 3.4.0 + pkijs: 3.4.1 semver@6.3.1: {} @@ -10751,7 +10747,7 @@ snapshots: transitivePeerDependencies: - supports-color - serialize-javascript@7.1.1: {} + serialize-javascript@7.1.2: {} serve-index@1.9.2: dependencies: @@ -10795,7 +10791,7 @@ snapshots: shebang-regex@3.0.0: {} - shell-quote@1.10.0: {} + shell-quote@1.11.0: {} side-channel-list@1.0.1: dependencies: @@ -10863,7 +10859,7 @@ snapshots: dependencies: '@socket.io/component-emitter': 3.1.2 debug: 4.3.7 - engine.io-client: 6.6.6 + engine.io-client: 6.6.7 socket.io-parser: 4.2.7 transitivePeerDependencies: - bufferutil @@ -10878,13 +10874,12 @@ snapshots: transitivePeerDependencies: - supports-color - socket.io@4.8.3: + socket.io@4.8.4: dependencies: accepts: 1.3.8 - base64id: 2.0.0 cors: 2.8.6 debug: 4.4.3 - engine.io: 6.6.10 + engine.io: 6.6.11 socket.io-adapter: 2.5.8 socket.io-parser: 4.2.7 transitivePeerDependencies: @@ -10911,12 +10906,12 @@ snapshots: ip-address: 10.7.2 smart-buffer: 4.2.0 - source-map-js@1.2.1: {} + source-map-js@1.2.2: {} source-map-loader@5.0.0(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)): dependencies: iconv-lite: 0.6.3 - source-map-js: 1.2.1 + source-map-js: 1.2.2 webpack: 5.105.0(esbuild@0.28.1)(postcss@8.5.23) source-map-support@0.5.21: @@ -10933,9 +10928,9 @@ snapshots: spdx-expression-parse@4.0.0: dependencies: spdx-exceptions: 2.5.0 - spdx-license-ids: 3.0.23 + spdx-license-ids: 3.0.24 - spdx-license-ids@3.0.23: {} + spdx-license-ids@3.0.24: {} spdy-transport@3.0.0: dependencies: @@ -10992,12 +10987,12 @@ snapshots: string-width@7.2.0: dependencies: emoji-regex: 10.6.0 - get-east-asian-width: 1.6.0 + get-east-asian-width: 1.7.0 strip-ansi: 7.2.0 - string-width@8.2.2: + string-width@8.3.0: dependencies: - get-east-asian-width: 1.6.0 + get-east-asian-width: 1.7.0 strip-ansi: 7.2.0 string_decoder@1.1.1: @@ -11014,7 +11009,7 @@ snapshots: strip-ansi@7.2.0: dependencies: - ansi-regex: 6.3.0 + ansi-regex: 6.4.0 strip-json-comments@3.1.1: {} @@ -11090,14 +11085,14 @@ snapshots: dependencies: typescript: 5.9.3 - ts-node@10.9.2(@types/node@24.13.5)(typescript@5.9.3): + ts-node@10.9.2(@types/node@24.19.0)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.13 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 24.13.5 + '@types/node': 24.19.0 acorn: 8.18.0 acorn-walk: 8.3.5 arg: 4.1.3 @@ -11149,9 +11144,9 @@ snapshots: ulid@3.0.2: {} - undici-types@7.18.2: {} + undici-types@7.24.6: {} - undici@6.28.1: {} + undici@6.29.0: {} unicode-canonical-property-names-ecmascript@2.0.1: {} @@ -11168,9 +11163,9 @@ snapshots: unpipe@1.0.0: {} - update-browserslist-db@1.3.3(browserslist@4.29.0): + update-browserslist-db@1.3.3(browserslist@4.29.3): dependencies: - browserslist: 4.29.0 + browserslist: 4.29.3 escalade: 3.2.0 picocolors: 1.1.1 @@ -11190,10 +11185,10 @@ snapshots: vary@1.1.2: {} - video.js@8.24.0: + video.js@8.24.1: dependencies: '@babel/runtime': 7.29.7 - '@videojs/http-streaming': 3.17.5(video.js@8.24.0) + '@videojs/http-streaming': 3.17.5(video.js@8.24.1) '@videojs/vhs-utils': 4.1.2 '@videojs/xhr': 2.7.0 aes-decrypter: 4.0.2 @@ -11201,14 +11196,14 @@ snapshots: m3u8-parser: 7.2.0 mpd-parser: 1.4.0 mux.js: 7.1.0 - videojs-contrib-quality-levels: 4.1.0(video.js@8.24.0) + videojs-contrib-quality-levels: 4.1.0(video.js@8.24.1) videojs-font: 4.2.0 videojs-vtt.js: 0.15.5 - videojs-contrib-quality-levels@4.1.0(video.js@8.24.0): + videojs-contrib-quality-levels@4.1.0(video.js@8.24.1): dependencies: global: 4.4.0 - video.js: 8.24.0 + video.js: 8.24.1 videojs-font@4.2.0: {} @@ -11218,11 +11213,11 @@ snapshots: dependencies: global: 4.4.0 - videojs-youtube@3.0.1(video.js@8.24.0): + videojs-youtube@3.0.1(video.js@8.24.1): dependencies: - video.js: 8.24.0 + video.js: 8.24.1 - vite@7.3.6(@types/node@24.13.5)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1): + vite@7.3.6(@types/node@24.19.0)(jiti@1.21.7)(less@4.9.0)(sass@1.90.0)(terser@5.43.1): dependencies: esbuild: 0.28.1 fdir: 6.5.0(picomatch@4.0.4) @@ -11231,7 +11226,7 @@ snapshots: rollup: 4.59.0 tinyglobby: 0.2.17 optionalDependencies: - '@types/node': 24.13.5 + '@types/node': 24.19.0 fsevents: 2.3.3 jiti: 1.21.7 less: 4.9.0 @@ -11261,7 +11256,7 @@ snapshots: webpack-dev-middleware@7.4.2(webpack@5.105.0(postcss@8.5.23)): dependencies: colorette: 2.0.20 - memfs: 4.78.0 + memfs: 4.80.0 mime-types: 2.1.35 on-finished: 2.4.1 range-parser: 1.3.0 @@ -11278,7 +11273,7 @@ snapshots: '@types/serve-index': 1.9.4 '@types/serve-static': 1.15.10 '@types/sockjs': 0.3.36 - '@types/ws': 8.18.1 + '@types/ws': 8.18.2 ansi-html-community: 0.0.8 bonjour-service: 1.4.4 chokidar: 3.6.0 @@ -11298,7 +11293,7 @@ snapshots: sockjs: 0.3.24 spdy: 4.0.2 webpack-dev-middleware: 7.4.2(webpack@5.105.0(postcss@8.5.23)) - ws: 8.21.3 + ws: 8.22.0 optionalDependencies: webpack: 5.105.0(esbuild@0.28.1)(postcss@8.5.23) transitivePeerDependencies: @@ -11313,7 +11308,7 @@ snapshots: flat: 5.0.2 wildcard: 2.0.1 - webpack-sources@3.5.1: {} + webpack-sources@3.6.0: {} webpack-subresource-integrity@5.1.0(webpack@5.105.0(esbuild@0.28.1)(postcss@8.5.23)): dependencies: @@ -11330,9 +11325,9 @@ snapshots: '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.18.0 acorn-import-phases: 1.0.4(acorn@8.18.0) - browserslist: 4.29.0 + browserslist: 4.29.3 chrome-trace-event: 1.0.4 - enhanced-resolve: 5.25.1 + enhanced-resolve: 5.26.0 es-module-lexer: 2.3.2 eslint-scope: 5.1.1 events: 3.3.0 @@ -11346,7 +11341,7 @@ snapshots: tapable: 2.3.3 terser-webpack-plugin: 5.6.1(esbuild@0.28.1)(postcss@8.5.23)(webpack@5.105.0(postcss@8.5.23)) watchpack: 2.5.2 - webpack-sources: 3.5.1 + webpack-sources: 3.6.0 transitivePeerDependencies: - '@minify-html/node' - '@swc/core' @@ -11407,6 +11402,8 @@ snapshots: ws@8.21.3: {} + ws@8.22.0: {} + wsl-utils@0.1.0: dependencies: is-wsl: 3.1.1 @@ -11457,12 +11454,12 @@ snapshots: y18n: 5.0.8 yargs-parser: 22.0.0 - yargs@18.1.0: + yargs@18.2.0: dependencies: cliui: 9.0.1 escalade: 3.2.0 get-caller-file: 2.0.5 - string-width: 8.2.2 + string-width: 8.3.0 y18n: 5.0.8 yargs-parser: 22.0.0 diff --git a/src/app/home/course/course.page.html b/src/app/home/course/course.page.html index bac1407..d2fb4d4 100644 --- a/src/app/home/course/course.page.html +++ b/src/app/home/course/course.page.html @@ -51,6 +51,12 @@ size="small" tabindex="0" class="set-playback-speed-button"> Set playback speed + @if (currentVideo.id && currentVideo.has_document) { + + + Transcript + + } @if (currentVideo.sourceExternal?.includes('1.mp4')) { | - \ No newline at end of file + diff --git a/src/app/home/course/course.page.ts b/src/app/home/course/course.page.ts index 935c98a..05ff8a2 100644 --- a/src/app/home/course/course.page.ts +++ b/src/app/home/course/course.page.ts @@ -34,11 +34,12 @@ import { import {DomSanitizer} from '@angular/platform-browser'; import {PlayHistory} from '../../play-tracker.service'; import {addIcons} from "ionicons"; -import {checkmarkOutline, closeOutline, documentAttachOutline, download, pauseCircleOutline} from "ionicons/icons"; +import {checkmarkOutline, closeOutline, documentAttachOutline, documentTextOutline, download, pauseCircleOutline} from "ionicons/icons"; import type Player from 'video.js/dist/types/player'; import {ulid} from 'ulid'; import {AsyncPipe, DatePipe, DecimalPipe, NgClass} from '@angular/common'; import {ModalEvaluationComponent} from './modal-evaluation.component'; +import {ModalDocumentComponent} from './modal-document.component'; import {PomodoroTimerComponent} from '../../shared/pomodoro-timer.component'; import {Analytics, logEvent} from '@angular/fire/analytics'; import {ConsentService} from '../../consent.service'; @@ -125,7 +126,7 @@ export class CoursePage implements OnInit, AfterViewInit, OnDestroy { isPlayerReady = false; constructor() { - addIcons({ download, documentAttachOutline, checkmarkOutline, closeOutline, pauseCircleOutline }); + addIcons({ download, documentAttachOutline, documentTextOutline, checkmarkOutline, closeOutline, pauseCircleOutline }); } ngOnInit() { @@ -483,6 +484,60 @@ export class CoursePage implements OnInit, AfterViewInit, OnDestroy { await modal.present(); } + async openDocumentModal() { + if (!await this.confirmAiDisclaimer()) { + return; + } + const modal = await this.modalCtrl.create({ + component: ModalDocumentComponent, + cssClass: 'modal-document', + componentProps: { video: this.currentVideo }, + }); + await modal.present(); + } + + // Resolves true only if the user explicitly accepts the AI disclaimer (or accepted it within the last 7 days + // and ticked "don't show again"). + private async confirmAiDisclaimer(): Promise { + const storageKey = 'aiDocDisclaimerAcceptedAt'; + try { + const acceptedAt = Number(localStorage.getItem(storageKey)); + if (acceptedAt && Date.now() - acceptedAt < 7 * 24 * 60 * 60 * 1000) { + return true; + } + } catch { + // Storage unavailable; just ask again + } + const alert = await this.alertController.create({ + header: 'AI-generated content', + message: 'This document is generated by AI from the lecture recording. ' + + 'This feature is intended only to assist with content mapping and searching, ' + + 'not as a source of study material or a replacement for the lecture and official course materials. ' + + 'AI can make mistakes, so please verify important information before relying on it.', + backdropDismiss: false, + inputs: [ + {type: 'checkbox', label: "Don't show this again for 7 days", value: 'skip', checked: false}, + ], + buttons: [ + {text: 'Cancel', role: 'cancel'}, + {text: 'I understand and accept', role: 'confirm'}, + ], + }); + await alert.present(); + const {role, data} = await alert.onDidDismiss(); + if (role !== 'confirm') { + return false; + } + if (data?.values?.includes('skip')) { + try { + localStorage.setItem(storageKey, String(Date.now())); + } catch { + // Storage unavailable; the user will be asked again next time + } + } + return true; + } + preventMouseEvent($event: MouseEvent) { // Prevent right-click only if video is downloadable if (this.currentVideo?.sources?.filter(s => s.path?.endsWith('.mp4') || s.src?.endsWith('.mp4') || s.path?.endsWith('.webm')).length > 0) { diff --git a/src/app/home/course/modal-document.component.html b/src/app/home/course/modal-document.component.html new file mode 100644 index 0000000..daec96d --- /dev/null +++ b/src/app/home/course/modal-document.component.html @@ -0,0 +1,59 @@ + + + Transcript + + Close + + + + + @if (!loading && !error && html) { + + AI makes mistakes. + This document was generated by AI from the lecture recording and may contain errors or omissions. + It is not a substitute for the lecture or official course materials. Please verify important information. + + } + @if (video) { +
+ Lecture: {{ video.title }}
+ Instructor: {{ video.lecturer }} +
+ } + @if (loading) { +
+ +
+ } @else if (error) { +

Could not load the document. Please try again later.

+ } @else if (html) { +
+ @if (headings.length > 1) { + + } +
+
+ + @if (models.transcription || models.article) { + + by + @if (models.transcription) { + {{ models.transcription }} + } + @if (models.transcription && models.article) { + · + } + @if (models.article) { + {{ models.article }} + } + + } + } @else { +

No document is available for this lecture.

+ } + diff --git a/src/app/home/course/modal-document.component.scss b/src/app/home/course/modal-document.component.scss new file mode 100644 index 0000000..97bbd62 --- /dev/null +++ b/src/app/home/course/modal-document.component.scss @@ -0,0 +1,161 @@ +// Modal sizing: near full-screen on desktop (Ionic's default is a small centered card). +// Targets the ion-modal host that Ionic attaches to the app root, which only works unscoped (see ViewEncapsulation.None). +ion-modal.modal-document { + --width: min(1400px, 95vw); + --height: 92vh; + --max-width: 100%; + --max-height: 100%; +} + +.markdown-body { + line-height: 1.6; + overflow-wrap: anywhere; + + :is(h1, h2, h3, h4, h5, h6) { + margin: 1.5rem 0 0.5rem; + line-height: 1.25; + } + + h1 { + font-size: 2rem; + font-weight: 800; + padding-bottom: 0.3rem; + border-bottom: 2px solid var(--ion-color-step-300, #ccc); + } + + h2 { + font-size: 1.6rem; + font-weight: 700; + padding-bottom: 0.2rem; + border-bottom: 1px solid var(--ion-color-step-200, #ddd); + } + + h3 { + font-size: 1.3rem; + font-weight: 600; + color: var(--ion-color-primary); + } + + h4 { + font-size: 1.1rem; + font-weight: 600; + font-style: italic; + } + + :is(h5, h6) { + font-size: 1rem; + font-weight: 600; + color: var(--ion-color-medium); + } + + table { + border-collapse: collapse; + display: block; + overflow-x: auto; + } + + :is(th, td) { + border: 1px solid var(--ion-color-step-200, #ccc); + padding: 0.25rem 0.5rem; + } + + pre { + overflow-x: auto; + padding: 0.75rem; + background: var(--ion-color-step-100, #f4f4f4); + } + + blockquote { + margin-left: 0; + padding-left: 1rem; + border-left: 4px solid var(--ion-color-step-300, #ccc); + } +} + +.ai-disclaimer { + display: block; + margin: 1rem 0; + padding: 0.5rem 0.75rem; + font-size: 0.85rem; + border-radius: 4px; + border-left: 4px solid var(--ion-color-warning); + background: var(--ion-color-step-100, #f4f4f4); + + // Keep it visible while reading on large screens + @media (min-width: 992px) { + position: sticky; + top: 0; + z-index: 10; + } +} + +.ai-models { + display: block; + margin-top: 0.25rem; + font-size: 0.75rem; + color: var(--ion-color-medium); +} + +.doc-layout { + display: flex; + align-items: flex-start; + gap: 1.5rem; + + .markdown-body { + flex: 1; + min-width: 0; + } +} + +.doc-outline { + position: sticky; + top: 0; + flex: 0 0 240px; + max-height: calc(92vh - 140px); + overflow-y: auto; + padding: 0.5rem 0; + font-size: 0.85rem; + border-right: 1px solid var(--ion-color-step-200, #ddd); + + a { + display: block; + padding: 0.25rem 0.75rem; + cursor: pointer; + color: var(--ion-color-medium); + border-left: 3px solid transparent; + + &:hover { + color: var(--ion-color-primary); + } + + &.active { + color: var(--ion-color-primary); + font-weight: 600; + border-left-color: var(--ion-color-primary); + } + + &.level-1 { + font-weight: 700; + } + + &.level-2 { + padding-left: 1.5rem; + } + + &.level-3 { + padding-left: 2.25rem; + font-size: 0.7rem; + } + } + + // Sit below the sticky disclaimer + @media (min-width: 992px) { + top: 5rem; + max-height: calc(92vh - 13rem); + } + + // Not enough room beside the text on narrow screens + @media (max-width: 767px) { + display: none; + } +} diff --git a/src/app/home/course/modal-document.component.ts b/src/app/home/course/modal-document.component.ts new file mode 100644 index 0000000..173939b --- /dev/null +++ b/src/app/home/course/modal-document.component.ts @@ -0,0 +1,117 @@ +import {Component, ElementRef, inject, Input, OnInit, ViewEncapsulation} from '@angular/core'; +import { + IonButton, + IonButtons, + IonContent, + IonHeader, + IonNote, + IonSpinner, + IonTitle, + IonToolbar, + ModalController, +} from '@ionic/angular/standalone'; +import {marked} from 'marked'; +import {Lecture, ManService} from '../../man.service'; + +// Matches a leading YAML frontmatter block: `---` ... `---` at the very start of the document. +const FRONTMATTER = /^?---[ \t]*\r?\n[\s\S]*?\r?\n(?:---|\.\.\.)[ \t]*(?:\r?\n|$)/; + +export interface DocHeading { + index: number; // position among the rendered h1-h3 elements + text: string; + level: number; +} + +export function stripFrontmatter(markdown: string): string { + return markdown.replace(FRONTMATTER, ''); +} + +const unquote =(value: string | undefined) => value?.trim().replace(/^(["'])(.*)\1$/, '$2') || null; + +// Reads the AI model names from the frontmatter without a full YAML parser (only two simple scalar fields are needed). +export function extractModels(markdown: string): {transcription: string | null, article: string | null} { + const frontmatter = markdown.match(FRONTMATTER)?.[0] ?? ''; + return { + transcription: unquote(frontmatter.match(/^transcription:[ \t]*\r?\n(?:[ \t]+.*\r?\n)*?[ \t]+model:[ \t]*(.+?)[ \t]*\r?$/m)?.[1]), + article: unquote(frontmatter.match(/^article_model:[ \t]*(.+?)[ \t]*\r?$/m)?.[1]), + }; +} + +@Component({ + selector: 'app-modal-document', + templateUrl: 'modal-document.component.html', + styleUrls: ['modal-document.component.scss'], + // [innerHTML] content doesn't get Angular's scoping attributes, so scoped styles would never match it + encapsulation: ViewEncapsulation.None, + imports: [IonButton, IonButtons, IonContent, IonHeader, IonNote, IonSpinner, IonTitle, IonToolbar], +}) +export class ModalDocumentComponent implements OnInit { + private manService = inject(ManService); + private modalCtrl = inject(ModalController); + private host = inject>(ElementRef); + + @Input() video: Lecture; + + loading = true; + error = false; + // Angular's [innerHTML] sanitizes this before rendering. + html = ''; + models: {transcription: string | null, article: string | null} = {transcription: null, article: null}; + headings: DocHeading[] = []; + activeHeading = -1; + + ngOnInit() { + this.manService.getVideo(String(this.video.id)).subscribe({ + next: info => { + const document = info?.document?.trim(); + if (document) { + this.models = extractModels(document); + ({html: this.html, headings: this.headings} = this.addHeadingIds( + marked.parse(stripFrontmatter(document), {async: false}), + )); + this.activeHeading = this.headings.length ? 0 : -1; + } + this.loading = false; + }, + error: () => { + this.error = true; + this.loading = false; + }, + }); + } + + // Collect h1-h3 for the outline. The sanitizer strips id attributes, so headings are looked up by index later. + private addHeadingIds(html: string): {html: string, headings: DocHeading[]} { + const doc = new DOMParser().parseFromString(html, 'text/html'); + const headings: DocHeading[] = []; + doc.body.querySelectorAll('h1, h2, h3').forEach((el, index) => { + headings.push({index, text: el.textContent?.trim() ?? '', level: Number(el.tagName[1])}); + }); + return {html: doc.body.innerHTML, headings}; + } + + private renderedHeadings(): HTMLElement[] { + return Array.from(this.host.nativeElement.querySelectorAll('.markdown-body :is(h1, h2, h3)')); + } + + scrollTo(index: number) { + this.activeHeading = index; + this.renderedHeadings()[index]?.scrollIntoView({behavior: 'smooth', block: 'start'}); + } + + // Highlight the last heading that has scrolled past the top of the content area. + onScroll(event: Event) { + const top = (event.target as HTMLElement).getBoundingClientRect().top + 60; + let active = this.headings.length ? 0 : -1; + this.renderedHeadings().forEach((el, i) => { + if (el.getBoundingClientRect().top <= top) { + active = i; + } + }); + this.activeHeading = active; + } + + close() { + return this.modalCtrl.dismiss(null, 'cancel'); + } +} diff --git a/src/app/man.service.ts b/src/app/man.service.ts index b8a9dfe..21f5caa 100644 --- a/src/app/man.service.ts +++ b/src/app/man.service.ts @@ -103,6 +103,27 @@ export class ManService { })); } + getVideo(videoId: string): Observable { + const body = { + query: `query GetVideo($id: ID!) { + video(id: $id) { + id + document + } + }`, + variables: {id: videoId}, + }; + if (this.httpOptions.headers.get('Authorization').length < 30) { + console.error('ManService ID token is not set.'); + return of(null); + } + return this.http.post<{ data: { video: LectureDocInfo | null } }>( + this.getEndpointLocation() + 'graphql', + body, + this.httpOptions + ).pipe(map(response => response?.data?.video ?? null)); + } + getPlayRecord(year: string, course: string, courseId: string | null, stopPolling: Observable): Observable<{ records: PlayHistory, evaluations: { [key: number]: EvaluationRecord }, @@ -282,6 +303,7 @@ export interface Lecture { durationInMin?: number; history?: PlayHistoryValue; is_evaluated?: boolean; + has_document?: boolean; course?: { id: number; name: string; @@ -289,6 +311,11 @@ export interface Lecture { }; } +export interface LectureDocInfo { + id: number; // Server-side ID + document: string | null; +} + export interface JSend { status: string; message?: string;