From d6e0b37ced23030298de4dde69f265d4670a5350 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 10:25:07 +0900 Subject: [PATCH 01/12] test(e2e): compare Ionic 8 and 9 screenshots --- .github/workflows/e2e-main.yml | 17 ++- .github/workflows/e2e-pull_request.yml | 29 +++-- .github/workflows/update-screenshots.yml | 21 +++- demo/angular.json | 15 ++- demo/package-lock.json | 51 ++++++-- demo/package.json | 4 +- demo/playwright.config.ts | 2 +- demo/src/app/album/album-page.component.ts | 2 +- demo/src/app/app.component.ts | 2 +- demo/src/app/app.config.ts | 2 +- demo/src/app/docs/docs-page.component.ts | 2 +- demo/src/app/index/index-page.component.ts | 2 +- .../index/pages/accordion/accordion.page.ts | 2 +- .../pages/action-sheet/action-sheet.page.ts | 2 +- demo/src/app/index/pages/alert/alert.page.ts | 2 +- .../pages/breadcrumbs/breadcrumbs.page.ts | 2 +- .../src/app/index/pages/button/button.page.ts | 2 +- demo/src/app/index/pages/card/card.page.ts | 2 +- .../app/index/pages/checkbox/checkbox.page.ts | 2 +- demo/src/app/index/pages/chip/chip.page.ts | 2 +- .../date-and-time-pickers.page.ts | 2 +- .../floating-action-button-fixed.page.ts | 2 +- .../floating-action-button.page.ts | 2 +- .../src/app/index/pages/inputs/inputs.page.ts | 2 +- .../index/pages/item-list/item-list.page.ts | 2 +- demo/src/app/index/pages/menu/menu.page.ts | 2 +- demo/src/app/index/pages/modal/modal.page.ts | 2 +- .../app/index/pages/popover/popover.page.ts | 2 +- .../progress-indicators.page.ts | 2 +- demo/src/app/index/pages/radio/radio.page.ts | 2 +- demo/src/app/index/pages/range/range.page.ts | 2 +- .../app/index/pages/reorder/reorder.page.ts | 2 +- .../index/pages/searchbar/searchbar.page.ts | 2 +- .../app/index/pages/segment/segment.page.ts | 2 +- .../src/app/index/pages/select/select.page.ts | 2 +- demo/src/app/index/pages/tabs/tabs.page.ts | 2 +- demo/src/app/index/pages/toast/toast.page.ts | 2 +- .../src/app/index/pages/toggle/toggle.page.ts | 2 +- .../app/index/pages/toolbar/toolbar.page.ts | 2 +- .../app/settings/settings-page.component.ts | 2 +- demo/src/app/tabs/tabs.page.ts | 2 +- demo/src/ionic/ionic.ts | 2 + demo/src/ionic/ionic.v8.ts | 2 + demo/tsconfig.json | 3 + demo/util/test.config.ts | 3 +- package-lock.json | 117 +++++++++--------- package.json | 4 +- src/popover/animations/ios.enter.ts | 2 +- src/popover/animations/ios.leave.ts | 2 +- src/sheets-of-glass/animations.ts | 2 +- src/sheets-of-glass/index.ts | 10 +- src/transition/ios.transition.ts | 2 +- 52 files changed, 216 insertions(+), 140 deletions(-) create mode 100644 demo/src/ionic/ionic.ts create mode 100644 demo/src/ionic/ionic.v8.ts diff --git a/.github/workflows/e2e-main.yml b/.github/workflows/e2e-main.yml index 5b3fda13..dcf78376 100644 --- a/.github/workflows/e2e-main.yml +++ b/.github/workflows/e2e-main.yml @@ -8,6 +8,14 @@ jobs: test: timeout-minutes: 10 runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + include: + - ionic-major: 8 + ionic-version: 8.8.19 + - ionic-major: 9 + ionic-version: 9.0.0 container: image: mcr.microsoft.com/playwright:v1.58.2-noble steps: @@ -23,20 +31,25 @@ jobs: ${{ runner.os }}-node- - run: npm ci + - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} - run: npm run build - run: npm ci working-directory: './demo' + - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + working-directory: './demo' - name: Run Playwright tests run: npm run test:e2e working-directory: ./demo + env: + IONIC_MAJOR: ${{ matrix.ionic-major }} - name: Upload test results uses: actions/upload-artifact@v5 if: always() with: - name: playwright-report + name: playwright-report-ionic${{ matrix.ionic-major }} path: demo/playwright-report/ retention-days: 3 @@ -44,6 +57,6 @@ jobs: uses: actions/upload-artifact@v5 if: failure() with: - name: test-results + name: test-results-ionic${{ matrix.ionic-major }} path: demo/test-results/ retention-days: 3 diff --git a/.github/workflows/e2e-pull_request.yml b/.github/workflows/e2e-pull_request.yml index 866973a4..14971c89 100644 --- a/.github/workflows/e2e-pull_request.yml +++ b/.github/workflows/e2e-pull_request.yml @@ -15,6 +15,14 @@ jobs: if: github.event.action != 'closed' timeout-minutes: 10 runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + include: + - ionic-major: 8 + ionic-version: 8.8.19 + - ionic-major: 9 + ionic-version: 9.0.0 container: image: mcr.microsoft.com/playwright:v1.58.2-noble steps: @@ -30,20 +38,25 @@ jobs: ${{ runner.os }}-node- - run: npm ci + - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} - run: npm run build - run: npm ci working-directory: './demo' + - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + working-directory: './demo' - name: Run Playwright tests - run: PLAYWRIGHT_JSON_OUTPUT_NAME=e2e/screenshot.spec.ts.json npm run test:e2e -- --reporter=json,html + run: PLAYWRIGHT_JSON_OUTPUT_NAME=e2e/screenshot.spec.ts-ionic${{ matrix.ionic-major }}.json npm run test:e2e -- --reporter=json,html working-directory: ./demo + env: + IONIC_MAJOR: ${{ matrix.ionic-major }} - name: Upload test results uses: actions/upload-artifact@v5 if: always() with: - name: playwright-report + name: playwright-report-ionic${{ matrix.ionic-major }} path: demo/playwright-report/ retention-days: 3 @@ -51,21 +64,21 @@ jobs: uses: actions/upload-artifact@v5 if: failure() with: - name: test-results + name: test-results-ionic${{ matrix.ionic-major }} path: demo/test-results/ retention-days: 3 - name: Comment PR with test results uses: daun/playwright-report-comment@v3 - if: always() + if: always() && matrix.ionic-major == 9 with: - report-file: demo/e2e/screenshot.spec.ts.json + report-file: demo/e2e/screenshot.spec.ts-ionic9.json job-summary: true custom-info: 'Please check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for details. And if you want to update the screenshots, please comment with `/update-screenshots`.' - name: Upload HTML report artifact uses: actions/upload-artifact@v5 - if: always() + if: always() && matrix.ionic-major == 9 with: name: html-report-${{ github.event.pull_request.number }} path: demo/playwright-report/ @@ -95,7 +108,7 @@ jobs: if [ ! -d "gh-pages" ]; then mkdir -p gh-pages fi - + # PR用のディレクトリを作成(既存の場合は削除して再作成) rm -rf gh-pages/pr-${{ github.event.pull_request.number }} mkdir -p gh-pages/pr-${{ github.event.pull_request.number }} @@ -118,7 +131,7 @@ jobs: script: | const prNumber = context.payload.pull_request.number; const reportUrl = `https://${context.repo.owner}.github.io/${context.repo.repo}/pr-${prNumber}/`; - + await github.rest.issues.createComment({ owner: context.repo.owner, repo: context.repo.repo, diff --git a/.github/workflows/update-screenshots.yml b/.github/workflows/update-screenshots.yml index 7b28f22d..0e35b373 100644 --- a/.github/workflows/update-screenshots.yml +++ b/.github/workflows/update-screenshots.yml @@ -64,9 +64,21 @@ jobs: run: npm ci working-directory: './demo' - - name: Update screenshots + - name: Update screenshots with Ionic 9 run: npm run test:e2e:update working-directory: ./demo + env: + IONIC_MAJOR: 9 + + - name: Install Ionic 8 + run: npm install --no-save --package-lock=false @ionic/angular@8.8.19 @ionic/core@8.8.19 + working-directory: './demo' + + - name: Verify Ionic 8 against the same screenshots + run: npm run test:e2e + working-directory: ./demo + env: + IONIC_MAJOR: 8 - name: Commit and push changes run: | @@ -89,7 +101,7 @@ jobs: issue-number: ${{ github.event.issue.number }} body: | ✅ Screenshots have been updated successfully! - + The new screenshots have been committed to this PR. - name: Comment no changes @@ -99,7 +111,7 @@ jobs: issue-number: ${{ github.event.issue.number }} body: | ℹ️ No screenshot changes detected. - + The current screenshots are already up to date. - name: Comment failure @@ -109,6 +121,5 @@ jobs: issue-number: ${{ github.event.issue.number }} body: | ❌ Failed to update screenshots. - - Please check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for details. + Please check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for details. diff --git a/demo/angular.json b/demo/angular.json index 6594a721..6cd8e152 100644 --- a/demo/angular.json +++ b/demo/angular.json @@ -60,6 +60,14 @@ }, "ci": { "progress": false + }, + "ionic8": { + "fileReplacements": [ + { + "replace": "src/ionic/ionic.ts", + "with": "src/ionic/ionic.v8.ts" + } + ] } }, "defaultConfiguration": "production" @@ -75,6 +83,9 @@ }, "ci": { "progress": false + }, + "ionic8": { + "buildTarget": "app:build:ionic8" } }, "defaultConfiguration": "development" @@ -107,9 +118,7 @@ } }, "cli": { - "schematicCollections": [ - "@ionic/angular-toolkit" - ], + "schematicCollections": ["@ionic/angular-toolkit"], "analytics": "cbe1df8d-204f-4a38-b88d-9f3a65fd6af4" }, "schematics": { diff --git a/demo/package-lock.json b/demo/package-lock.json index f8aea12b..89a52719 100644 --- a/demo/package-lock.json +++ b/demo/package-lock.json @@ -22,7 +22,7 @@ "@capacitor/ios": "^8.0.0", "@capacitor/keyboard": "^8.0.0", "@capacitor/status-bar": "^8.0.0", - "@ionic/angular": "^8.8.1", + "@ionic/angular": "^9.0.0", "@rdlabo/ionic-theme-ios26": "file:..", "rxjs": "~7.8.0", "tslib": "^2.3.0", @@ -6708,20 +6708,27 @@ } }, "node_modules/@ionic/angular": { - "version": "8.8.11", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-9.0.0.tgz", + "integrity": "sha512-WpFHpdwnZ0vbZys63tNro/BEGxsZwLom1T3odZptT0xV5ImREG37X0n8tahhoHiNM5FlGtuHPpp/5KTOgqnPxQ==", "license": "MIT", "dependencies": { - "@ionic/core": "8.8.11", + "@ionic/core": "9.0.0", "ionicons": "^8.0.13", "jsonc-parser": "^3.0.0", "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/core": ">=16.0.0", - "@angular/forms": ">=16.0.0", - "@angular/router": ">=16.0.0", + "@angular/core": ">=18.0.0", + "@angular/forms": ">=18.0.0", + "@angular/router": ">=18.0.0", "rxjs": ">=7.5.0", "zone.js": ">=0.13.0" + }, + "peerDependenciesMeta": { + "zone.js": { + "optional": true + } } }, "node_modules/@ionic/angular-toolkit": { @@ -6941,11 +6948,13 @@ } }, "node_modules/@ionic/core": { - "version": "8.8.11", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-9.0.0.tgz", + "integrity": "sha512-ouHmLIdyP0vTV0PK/kj0QNtQTcDjyoWi2vKRaCkwj0xY3oU9qq3lB0N6w3Cm93ol0inBuXgn3/IN71BTp88c+g==", "license": "MIT", "dependencies": { - "@stencil/core": "4.43.5", - "ionicons": "^8.0.13", + "@stencil/core": "^4.43.5", + "ionicons": "^8.1.0", "tslib": "^2.1.0" }, "engines": { @@ -8519,6 +8528,8 @@ }, "node_modules/@rollup/rollup-darwin-arm64": { "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.44.0.tgz", + "integrity": "sha512-VGF3wy0Eq1gcEIkSCr8Ke03CWT+Pm2yveKLaDvq51pPpZza3JX/ClxXOCmTYYq3us5MvEuNRTaeyFThCKRQhOA==", "cpu": [ "arm64" ], @@ -8604,6 +8615,9 @@ "cpu": [ "arm64" ], + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -8617,6 +8631,9 @@ "cpu": [ "arm64" ], + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -8728,6 +8745,9 @@ "cpu": [ "x64" ], + "libc": [ + "glibc" + ], "license": "MIT", "optional": true, "os": [ @@ -8741,6 +8761,9 @@ "cpu": [ "x64" ], + "libc": [ + "musl" + ], "license": "MIT", "optional": true, "os": [ @@ -8922,7 +8945,9 @@ "license": "MIT" }, "node_modules/@stencil/core": { - "version": "4.43.5", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.44.0.tgz", + "integrity": "sha512-A3kArg+80t9zJdul7FLUcxcjqvYrF76nDavfm2L8R7hGKWPbTTGM/tkOSf7MJqMd1ED0ztYoa9X90UlEXY3nLA==", "license": "MIT", "bin": { "stencil": "bin/stencil" @@ -12064,10 +12089,12 @@ } }, "node_modules/ionicons": { - "version": "8.0.13", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-8.1.0.tgz", + "integrity": "sha512-XSM2gYWTXxSYTwjmKWAoy4yR7AbAFDjpc5ZIivAiGXskM0fe5CdMPfs6InQRUcrYtVb2WZ/0HQ1/jeh3JW78SA==", "license": "MIT", "dependencies": { - "@stencil/core": "^4.35.3" + "@stencil/core": "^4.43.5" } }, "node_modules/ip-address": { diff --git a/demo/package.json b/demo/package.json index ef521d7f..fe54205b 100644 --- a/demo/package.json +++ b/demo/package.json @@ -34,7 +34,7 @@ "@capacitor/ios": "^8.0.0", "@capacitor/keyboard": "^8.0.0", "@capacitor/status-bar": "^8.0.0", - "@ionic/angular": "^8.8.1", + "@ionic/angular": "^9.0.0", "@rdlabo/ionic-theme-ios26": "file:..", "rxjs": "~7.8.0", "tslib": "^2.3.0", @@ -46,9 +46,9 @@ "@angular/compiler-cli": "^21.0.0", "@angular/language-service": "^21.0.0", "@capacitor/cli": "^8.0.0", + "@eslint/js": "^9.39.4", "@ionic/angular-toolkit": "^12.0.0", "@playwright/test": "1.58.2", - "@eslint/js": "^9.39.4", "@rdlabo/eslint-plugin-rules": "^21.0.0", "angular-eslint": "21.4.0", "eslint": "^9.39.4", diff --git a/demo/playwright.config.ts b/demo/playwright.config.ts index f4ef051f..b115f593 100644 --- a/demo/playwright.config.ts +++ b/demo/playwright.config.ts @@ -27,7 +27,7 @@ export default defineConfig({ }, ], webServer: { - command: 'npm run start', + command: process.env['IONIC_MAJOR'] === '8' ? 'npm run start -- --configuration=ionic8' : 'npm run start', url: 'http://localhost:4200', reuseExistingServer: !process.env['CI'], timeout: 120000, diff --git a/demo/src/app/album/album-page.component.ts b/demo/src/app/album/album-page.component.ts index 78bbf10d..aa07befb 100644 --- a/demo/src/app/album/album-page.component.ts +++ b/demo/src/app/album/album-page.component.ts @@ -14,7 +14,7 @@ import { IonTitle, IonToolbar, ViewDidEnter, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { attachTabBarSearchable, TabBarSearchableFunction, TabBarSearchableType } from '../../../../src'; @Component({ diff --git a/demo/src/app/app.component.ts b/demo/src/app/app.component.ts index ca719e8d..05fbc119 100644 --- a/demo/src/app/app.component.ts +++ b/demo/src/app/app.component.ts @@ -1,5 +1,5 @@ import { ChangeDetectionStrategy, Component } from '@angular/core'; -import { IonApp, IonRouterOutlet } from '@ionic/angular/standalone'; +import { IonApp, IonRouterOutlet } from '@demo/ionic'; import { addIcons } from 'ionicons'; import * as allIcons from 'ionicons/icons'; diff --git a/demo/src/app/app.config.ts b/demo/src/app/app.config.ts index 82e0e442..83d3ce5f 100644 --- a/demo/src/app/app.config.ts +++ b/demo/src/app/app.config.ts @@ -3,7 +3,7 @@ import { provideRouter, withComponentInputBinding } from '@angular/router'; import * as allIcons from 'ionicons/icons'; import { routes } from './app.routes'; -import { provideIonicAngular } from '@ionic/angular/standalone'; +import { provideIonicAngular } from '@demo/ionic'; import { addIcons } from 'ionicons'; import { popoverEnterAnimation, popoverLeaveAnimation, iosTransitionAnimation } from '../../../src'; diff --git a/demo/src/app/docs/docs-page.component.ts b/demo/src/app/docs/docs-page.component.ts index 8f51ee88..99a48173 100644 --- a/demo/src/app/docs/docs-page.component.ts +++ b/demo/src/app/docs/docs-page.component.ts @@ -19,7 +19,7 @@ import { IonTitle, IonToolbar, Platform, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-docs-page', diff --git a/demo/src/app/index/index-page.component.ts b/demo/src/app/index/index-page.component.ts index 2fe30a65..7b0ef645 100644 --- a/demo/src/app/index/index-page.component.ts +++ b/demo/src/app/index/index-page.component.ts @@ -17,7 +17,7 @@ import { IonToggle, IonToolbar, ToggleCustomEvent, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { ActivatedRoute, Router } from '@angular/router'; interface IComponent { diff --git a/demo/src/app/index/pages/accordion/accordion.page.ts b/demo/src/app/index/pages/accordion/accordion.page.ts index 571bd55a..26bfd2e6 100644 --- a/demo/src/app/index/pages/accordion/accordion.page.ts +++ b/demo/src/app/index/pages/accordion/accordion.page.ts @@ -17,7 +17,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-accordion', diff --git a/demo/src/app/index/pages/action-sheet/action-sheet.page.ts b/demo/src/app/index/pages/action-sheet/action-sheet.page.ts index f3bb765b..fe8aaf41 100644 --- a/demo/src/app/index/pages/action-sheet/action-sheet.page.ts +++ b/demo/src/app/index/pages/action-sheet/action-sheet.page.ts @@ -15,7 +15,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { actionSheetUtil } from './action-sheet.util'; import { ActivatedRoute } from '@angular/router'; import { toSignal } from '@angular/core/rxjs-interop'; diff --git a/demo/src/app/index/pages/alert/alert.page.ts b/demo/src/app/index/pages/alert/alert.page.ts index e39747a8..e4507b4a 100644 --- a/demo/src/app/index/pages/alert/alert.page.ts +++ b/demo/src/app/index/pages/alert/alert.page.ts @@ -15,7 +15,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { alertUtil } from './alert.util'; import { ActivatedRoute } from '@angular/router'; import { toSignal } from '@angular/core/rxjs-interop'; diff --git a/demo/src/app/index/pages/breadcrumbs/breadcrumbs.page.ts b/demo/src/app/index/pages/breadcrumbs/breadcrumbs.page.ts index a1ddf158..c09d6744 100644 --- a/demo/src/app/index/pages/breadcrumbs/breadcrumbs.page.ts +++ b/demo/src/app/index/pages/breadcrumbs/breadcrumbs.page.ts @@ -16,7 +16,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-breadcrumbs', diff --git a/demo/src/app/index/pages/button/button.page.ts b/demo/src/app/index/pages/button/button.page.ts index ffd99124..d99fca41 100644 --- a/demo/src/app/index/pages/button/button.page.ts +++ b/demo/src/app/index/pages/button/button.page.ts @@ -17,7 +17,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-button', diff --git a/demo/src/app/index/pages/card/card.page.ts b/demo/src/app/index/pages/card/card.page.ts index 385056c2..feab13b0 100644 --- a/demo/src/app/index/pages/card/card.page.ts +++ b/demo/src/app/index/pages/card/card.page.ts @@ -21,7 +21,7 @@ import { IonThumbnail, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-card', diff --git a/demo/src/app/index/pages/checkbox/checkbox.page.ts b/demo/src/app/index/pages/checkbox/checkbox.page.ts index 2117d5e0..049bbf19 100644 --- a/demo/src/app/index/pages/checkbox/checkbox.page.ts +++ b/demo/src/app/index/pages/checkbox/checkbox.page.ts @@ -15,7 +15,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-checkbox', diff --git a/demo/src/app/index/pages/chip/chip.page.ts b/demo/src/app/index/pages/chip/chip.page.ts index e939354f..a17e4d15 100644 --- a/demo/src/app/index/pages/chip/chip.page.ts +++ b/demo/src/app/index/pages/chip/chip.page.ts @@ -16,7 +16,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-chip', diff --git a/demo/src/app/index/pages/date-and-time-pickers/date-and-time-pickers.page.ts b/demo/src/app/index/pages/date-and-time-pickers/date-and-time-pickers.page.ts index 4ede9184..03cbacd5 100644 --- a/demo/src/app/index/pages/date-and-time-pickers/date-and-time-pickers.page.ts +++ b/demo/src/app/index/pages/date-and-time-pickers/date-and-time-pickers.page.ts @@ -20,7 +20,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-date-and-time-pickers', diff --git a/demo/src/app/index/pages/floating-action-button-fixed/floating-action-button-fixed.page.ts b/demo/src/app/index/pages/floating-action-button-fixed/floating-action-button-fixed.page.ts index dda42e35..3c3b1137 100644 --- a/demo/src/app/index/pages/floating-action-button-fixed/floating-action-button-fixed.page.ts +++ b/demo/src/app/index/pages/floating-action-button-fixed/floating-action-button-fixed.page.ts @@ -17,7 +17,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-floating-action-button', diff --git a/demo/src/app/index/pages/floating-action-button/floating-action-button.page.ts b/demo/src/app/index/pages/floating-action-button/floating-action-button.page.ts index ac496d97..6a1dd738 100644 --- a/demo/src/app/index/pages/floating-action-button/floating-action-button.page.ts +++ b/demo/src/app/index/pages/floating-action-button/floating-action-button.page.ts @@ -17,7 +17,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-floating-action-button', diff --git a/demo/src/app/index/pages/inputs/inputs.page.ts b/demo/src/app/index/pages/inputs/inputs.page.ts index d4adafe7..6195114e 100644 --- a/demo/src/app/index/pages/inputs/inputs.page.ts +++ b/demo/src/app/index/pages/inputs/inputs.page.ts @@ -17,7 +17,7 @@ import { IonTextarea, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-inputs', diff --git a/demo/src/app/index/pages/item-list/item-list.page.ts b/demo/src/app/index/pages/item-list/item-list.page.ts index ed9e0f85..97648039 100644 --- a/demo/src/app/index/pages/item-list/item-list.page.ts +++ b/demo/src/app/index/pages/item-list/item-list.page.ts @@ -20,7 +20,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-item-list', diff --git a/demo/src/app/index/pages/menu/menu.page.ts b/demo/src/app/index/pages/menu/menu.page.ts index 3eb24326..3ebef161 100644 --- a/demo/src/app/index/pages/menu/menu.page.ts +++ b/demo/src/app/index/pages/menu/menu.page.ts @@ -1,7 +1,7 @@ import { Component, OnInit } from '@angular/core'; import { FormsModule } from '@angular/forms'; -import { IonContent, IonHeader, IonTitle, IonToolbar } from '@ionic/angular/standalone'; +import { IonContent, IonHeader, IonTitle, IonToolbar } from '@demo/ionic'; @Component({ selector: 'app-menu', diff --git a/demo/src/app/index/pages/modal/modal.page.ts b/demo/src/app/index/pages/modal/modal.page.ts index 9047cf71..a24eb3b1 100644 --- a/demo/src/app/index/pages/modal/modal.page.ts +++ b/demo/src/app/index/pages/modal/modal.page.ts @@ -16,7 +16,7 @@ import { IonTitle, IonToolbar, ModalController, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { modalTypes } from '../../../overlay-types'; import { ActivatedRoute } from '@angular/router'; import { toSignal } from '@angular/core/rxjs-interop'; diff --git a/demo/src/app/index/pages/popover/popover.page.ts b/demo/src/app/index/pages/popover/popover.page.ts index b15c0b72..29f06c48 100644 --- a/demo/src/app/index/pages/popover/popover.page.ts +++ b/demo/src/app/index/pages/popover/popover.page.ts @@ -18,7 +18,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-popover', diff --git a/demo/src/app/index/pages/progress-indicators/progress-indicators.page.ts b/demo/src/app/index/pages/progress-indicators/progress-indicators.page.ts index e5aaa99f..98aa6089 100644 --- a/demo/src/app/index/pages/progress-indicators/progress-indicators.page.ts +++ b/demo/src/app/index/pages/progress-indicators/progress-indicators.page.ts @@ -16,7 +16,7 @@ import { IonTitle, IonToolbar, LoadingController, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { ActivatedRoute } from '@angular/router'; import { toSignal } from '@angular/core/rxjs-interop'; import { loadingTypes } from '../../../overlay-types'; diff --git a/demo/src/app/index/pages/radio/radio.page.ts b/demo/src/app/index/pages/radio/radio.page.ts index b5afee74..3dc98dbb 100644 --- a/demo/src/app/index/pages/radio/radio.page.ts +++ b/demo/src/app/index/pages/radio/radio.page.ts @@ -16,7 +16,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-radio', diff --git a/demo/src/app/index/pages/range/range.page.ts b/demo/src/app/index/pages/range/range.page.ts index d39e473d..d14002cf 100644 --- a/demo/src/app/index/pages/range/range.page.ts +++ b/demo/src/app/index/pages/range/range.page.ts @@ -17,7 +17,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-range', diff --git a/demo/src/app/index/pages/reorder/reorder.page.ts b/demo/src/app/index/pages/reorder/reorder.page.ts index 50f358ca..bd8a7cb5 100644 --- a/demo/src/app/index/pages/reorder/reorder.page.ts +++ b/demo/src/app/index/pages/reorder/reorder.page.ts @@ -16,7 +16,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-reorder', diff --git a/demo/src/app/index/pages/searchbar/searchbar.page.ts b/demo/src/app/index/pages/searchbar/searchbar.page.ts index bd45f459..f339faa4 100644 --- a/demo/src/app/index/pages/searchbar/searchbar.page.ts +++ b/demo/src/app/index/pages/searchbar/searchbar.page.ts @@ -16,7 +16,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-searchbar', diff --git a/demo/src/app/index/pages/segment/segment.page.ts b/demo/src/app/index/pages/segment/segment.page.ts index 47f4e9dc..feb3e4c0 100644 --- a/demo/src/app/index/pages/segment/segment.page.ts +++ b/demo/src/app/index/pages/segment/segment.page.ts @@ -18,7 +18,7 @@ import { IonToolbar, ViewDidEnter, ViewDidLeave, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { registeredEffect, registerSegmentEffect } from '../../../../../../src'; @Component({ diff --git a/demo/src/app/index/pages/select/select.page.ts b/demo/src/app/index/pages/select/select.page.ts index 9ab0699e..64775ee8 100644 --- a/demo/src/app/index/pages/select/select.page.ts +++ b/demo/src/app/index/pages/select/select.page.ts @@ -18,7 +18,7 @@ import { IonTitle, IonToolbar, ViewDidEnter, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { selectTypes } from '../../../overlay-types'; import { ActivatedRoute } from '@angular/router'; import { toSignal } from '@angular/core/rxjs-interop'; diff --git a/demo/src/app/index/pages/tabs/tabs.page.ts b/demo/src/app/index/pages/tabs/tabs.page.ts index 8c37589f..61489530 100644 --- a/demo/src/app/index/pages/tabs/tabs.page.ts +++ b/demo/src/app/index/pages/tabs/tabs.page.ts @@ -16,7 +16,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-tabs', diff --git a/demo/src/app/index/pages/toast/toast.page.ts b/demo/src/app/index/pages/toast/toast.page.ts index ef61f418..1b661fa1 100644 --- a/demo/src/app/index/pages/toast/toast.page.ts +++ b/demo/src/app/index/pages/toast/toast.page.ts @@ -15,7 +15,7 @@ import { IonTitle, IonToolbar, ToastController, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { ActivatedRoute } from '@angular/router'; import { toSignal } from '@angular/core/rxjs-interop'; import { colorTypes, toastTypes } from '../../../overlay-types'; diff --git a/demo/src/app/index/pages/toggle/toggle.page.ts b/demo/src/app/index/pages/toggle/toggle.page.ts index a718bc00..ef39be5f 100644 --- a/demo/src/app/index/pages/toggle/toggle.page.ts +++ b/demo/src/app/index/pages/toggle/toggle.page.ts @@ -17,7 +17,7 @@ import { IonTitle, IonToggle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-toggle', diff --git a/demo/src/app/index/pages/toolbar/toolbar.page.ts b/demo/src/app/index/pages/toolbar/toolbar.page.ts index 06acf635..a1b7a8e7 100644 --- a/demo/src/app/index/pages/toolbar/toolbar.page.ts +++ b/demo/src/app/index/pages/toolbar/toolbar.page.ts @@ -19,7 +19,7 @@ import { IonText, IonTitle, IonToolbar, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-toolbar', diff --git a/demo/src/app/settings/settings-page.component.ts b/demo/src/app/settings/settings-page.component.ts index 4da5648d..243282d1 100644 --- a/demo/src/app/settings/settings-page.component.ts +++ b/demo/src/app/settings/settings-page.component.ts @@ -21,7 +21,7 @@ import { IonToggle, IonToolbar, Platform, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; @Component({ selector: 'app-settings-page', diff --git a/demo/src/app/tabs/tabs.page.ts b/demo/src/app/tabs/tabs.page.ts index 88c756b6..10cf5bc9 100644 --- a/demo/src/app/tabs/tabs.page.ts +++ b/demo/src/app/tabs/tabs.page.ts @@ -13,7 +13,7 @@ import { IonTabs, ViewDidEnter, ViewDidLeave, -} from '@ionic/angular/standalone'; +} from '@demo/ionic'; import { NavigationEnd, Router } from '@angular/router'; import { filter } from 'rxjs'; diff --git a/demo/src/ionic/ionic.ts b/demo/src/ionic/ionic.ts new file mode 100644 index 00000000..89d8907f --- /dev/null +++ b/demo/src/ionic/ionic.ts @@ -0,0 +1,2 @@ +export * from '@ionic/angular'; +export { AngularDelegate } from '@ionic/angular/lazy'; diff --git a/demo/src/ionic/ionic.v8.ts b/demo/src/ionic/ionic.v8.ts new file mode 100644 index 00000000..6f941474 --- /dev/null +++ b/demo/src/ionic/ionic.v8.ts @@ -0,0 +1,2 @@ +export * from '@ionic/angular/standalone'; +export { AngularDelegate } from '@ionic/angular'; diff --git a/demo/tsconfig.json b/demo/tsconfig.json index eaf60c28..be67a836 100644 --- a/demo/tsconfig.json +++ b/demo/tsconfig.json @@ -15,6 +15,9 @@ "declaration": false, "experimentalDecorators": true, "moduleResolution": "bundler", + "paths": { + "@demo/ionic": ["./src/ionic/ionic.ts"] + }, "importHelpers": true, "target": "es2022", "module": "es2020", diff --git a/demo/util/test.config.ts b/demo/util/test.config.ts index d154b733..ddb483d6 100644 --- a/demo/util/test.config.ts +++ b/demo/util/test.config.ts @@ -3,7 +3,7 @@ import { ApplicationConfig, importProvidersFrom, provideZonelessChangeDetection } from '@angular/core'; import { provideHttpClientTesting } from '@angular/common/http/testing'; import { FormsModule, ReactiveFormsModule } from '@angular/forms'; -import { IonNav, IonRouterOutlet, ModalController, NavController, NavParams, PopoverController } from '@ionic/angular/standalone'; +import { AngularDelegate, IonNav, IonRouterOutlet, ModalController, NavController, NavParams, PopoverController } from '@demo/ionic'; import { provideHttpClient, withInterceptorsFromDi } from '@angular/common/http'; import { IonRouterOutletMock } from './mocks/angular/ion-router-outlet'; @@ -13,7 +13,6 @@ import { PopoverControllerMock } from './mocks/angular/popover-controller'; import { MockAngularDelegate } from './mocks/angular/angular-delegate'; import { provideRouter, withComponentInputBinding } from '@angular/router'; -import { AngularDelegate } from '@ionic/angular'; /** * Standalone configuration for Angular tests diff --git a/package-lock.json b/package-lock.json index b1e36517..ec0a427a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "2.3.2", "license": "MIT", "devDependencies": { - "@ionic/angular": "^8.8.1", + "@ionic/angular": "^9.0.0", "husky": "^9.1.7", "lint-staged": "^16.2.1", "np": "^10.2.0", @@ -586,33 +586,38 @@ } }, "node_modules/@ionic/angular": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-8.8.1.tgz", - "integrity": "sha512-Jp7LbouSHAnR00Dsa8qE1CSOZNqAfBCO0XKXScJNz8NKVoZe5fPGy/CboehGtAQ1xgzh2eDa15zMmyetXjAkYA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-9.0.0.tgz", + "integrity": "sha512-WpFHpdwnZ0vbZys63tNro/BEGxsZwLom1T3odZptT0xV5ImREG37X0n8tahhoHiNM5FlGtuHPpp/5KTOgqnPxQ==", "dev": true, "license": "MIT", "dependencies": { - "@ionic/core": "8.8.1", + "@ionic/core": "9.0.0", "ionicons": "^8.0.13", "jsonc-parser": "^3.0.0", "tslib": "^2.3.0" }, "peerDependencies": { - "@angular/core": ">=16.0.0", - "@angular/forms": ">=16.0.0", - "@angular/router": ">=16.0.0", + "@angular/core": ">=18.0.0", + "@angular/forms": ">=18.0.0", + "@angular/router": ">=18.0.0", "rxjs": ">=7.5.0", "zone.js": ">=0.13.0" + }, + "peerDependenciesMeta": { + "zone.js": { + "optional": true + } } }, "node_modules/@ionic/core": { - "version": "8.8.1", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.8.1.tgz", - "integrity": "sha512-ksOUHyOEqoyUIVWcwCNSFZVGwNfP1DKrUVeN/Cdk/Xl9Rdd/5MLHGsrOQpWQfoCf3Csdnw+KHHPrXz/2fzMkMA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-9.0.0.tgz", + "integrity": "sha512-ouHmLIdyP0vTV0PK/kj0QNtQTcDjyoWi2vKRaCkwj0xY3oU9qq3lB0N6w3Cm93ol0inBuXgn3/IN71BTp88c+g==", "license": "MIT", "dependencies": { - "@stencil/core": "4.43.0", - "ionicons": "^8.0.13", + "@stencil/core": "^4.43.5", + "ionicons": "^8.1.0", "tslib": "^2.1.0" }, "engines": { @@ -1020,9 +1025,9 @@ } }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.34.9.tgz", - "integrity": "sha512-0CY3/K54slrzLDjOA7TOjN1NuLKERBgk9nY5V34mhmuu673YNb+7ghaDUs6N0ujXR7fz5XaS5Aa6d2TNxZd0OQ==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.44.0.tgz", + "integrity": "sha512-VGF3wy0Eq1gcEIkSCr8Ke03CWT+Pm2yveKLaDvq51pPpZza3JX/ClxXOCmTYYq3us5MvEuNRTaeyFThCKRQhOA==", "cpu": [ "arm64" ], @@ -1033,9 +1038,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.34.9.tgz", - "integrity": "sha512-eOojSEAi/acnsJVYRxnMkPFqcxSMFfrw7r2iD9Q32SGkb/Q9FpUY1UlAu1DH9T7j++gZ0lHjnm4OyH2vCI7l7Q==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.44.0.tgz", + "integrity": "sha512-fBkyrDhwquRvrTxSGH/qqt3/T0w5Rg0L7ZIDypvBPc1/gzjJle6acCpZ36blwuwcKD/u6oCE/sRWlUAcxLWQbQ==", "cpu": [ "x64" ], @@ -1046,9 +1051,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.34.9.tgz", - "integrity": "sha512-6TZjPHjKZUQKmVKMUowF3ewHxctrRR09eYyvT5eFv8w/fXarEra83A2mHTVJLA5xU91aCNOUnM+DWFMSbQ0Nxw==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.44.0.tgz", + "integrity": "sha512-ZTR2mxBHb4tK4wGf9b8SYg0Y6KQPjGpR4UWwTFdnmjB4qRtoATZ5dWn3KsDwGa5Z2ZBOE7K52L36J9LueKBdOQ==", "cpu": [ "arm64" ], @@ -1059,9 +1064,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.34.9.tgz", - "integrity": "sha512-LD2fytxZJZ6xzOKnMbIpgzFOuIKlxVOpiMAXawsAZ2mHBPEYOnLRK5TTEsID6z4eM23DuO88X0Tq1mErHMVq0A==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.44.0.tgz", + "integrity": "sha512-GFWfAhVhWGd4r6UxmnKRTBwP1qmModHtd5gkraeW2G490BpFOZkFtem8yuX2NyafIP/mGpRJgTJ2PwohQkUY/Q==", "cpu": [ "arm64" ], @@ -1072,9 +1077,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.34.9.tgz", - "integrity": "sha512-FwBHNSOjUTQLP4MG7y6rR6qbGw4MFeQnIBrMe161QGaQoBQLqSUEKlHIiVgF3g/mb3lxlxzJOpIBhaP+C+KP2A==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.44.0.tgz", + "integrity": "sha512-iUVJc3c0o8l9Sa/qlDL2Z9UP92UZZW1+EmQ4xfjTc1akr0iUFZNfxrXJ/R1T90h/ILm9iXEY6+iPrmYB3pXKjw==", "cpu": [ "x64" ], @@ -1085,9 +1090,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.34.9.tgz", - "integrity": "sha512-cYRpV4650z2I3/s6+5/LONkjIz8MBeqrk+vPXV10ORBnshpn8S32bPqQ2Utv39jCiDcO2eJTuSlPXpnvmaIgRA==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.44.0.tgz", + "integrity": "sha512-PQUobbhLTQT5yz/SPg116VJBgz+XOtXt8D1ck+sfJJhuEsMj2jSej5yTdp8CvWBSceu+WW+ibVL6dm0ptG5fcA==", "cpu": [ "x64" ], @@ -1098,9 +1103,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.34.9.tgz", - "integrity": "sha512-z4mQK9dAN6byRA/vsSgQiPeuO63wdiDxZ9yg9iyX2QTzKuQM7T4xlBoeUP/J8uiFkqxkcWndWi+W7bXdPbt27Q==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.44.0.tgz", + "integrity": "sha512-M0CpcHf8TWn+4oTxJfh7LQuTuaYeXGbk0eageVjQCKzYLsajWS/lFC94qlRqOlyC2KvRT90ZrfXULYmukeIy7w==", "cpu": [ "arm64" ], @@ -1111,9 +1116,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.34.9", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.34.9.tgz", - "integrity": "sha512-AyleYRPU7+rgkMWbEh71fQlrzRfeP6SyMnRf9XX4fCdDPAJumdSBqYEcWPMzVQ4ScAl7E4oFfK0GUVn77xSwbw==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.44.0.tgz", + "integrity": "sha512-Q2Mgwt+D8hd5FIPUuPDsvPR7Bguza6yTkJxspDGkZj7tBRn2y4KSWYuIXpftFSjBra76TbKerCV7rgFPQrn+wQ==", "cpu": [ "x64" ], @@ -1166,9 +1171,9 @@ "peer": true }, "node_modules/@stencil/core": { - "version": "4.43.0", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.43.0.tgz", - "integrity": "sha512-6Uj2Z3lzLuufYAE7asZ6NLKgSwsB9uxl84Eh34PASnUjfj32GkrP4DtKK7fNeh1WFGGyffsTDka3gwtl+4reUg==", + "version": "4.44.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.44.0.tgz", + "integrity": "sha512-A3kArg+80t9zJdul7FLUcxcjqvYrF76nDavfm2L8R7hGKWPbTTGM/tkOSf7MJqMd1ED0ztYoa9X90UlEXY3nLA==", "license": "MIT", "bin": { "stencil": "bin/stencil" @@ -1178,14 +1183,14 @@ "npm": ">=7.10.0" }, "optionalDependencies": { - "@rollup/rollup-darwin-arm64": "4.34.9", - "@rollup/rollup-darwin-x64": "4.34.9", - "@rollup/rollup-linux-arm64-gnu": "4.34.9", - "@rollup/rollup-linux-arm64-musl": "4.34.9", - "@rollup/rollup-linux-x64-gnu": "4.34.9", - "@rollup/rollup-linux-x64-musl": "4.34.9", - "@rollup/rollup-win32-arm64-msvc": "4.34.9", - "@rollup/rollup-win32-x64-msvc": "4.34.9" + "@rollup/rollup-darwin-arm64": "4.44.0", + "@rollup/rollup-darwin-x64": "4.44.0", + "@rollup/rollup-linux-arm64-gnu": "4.44.0", + "@rollup/rollup-linux-arm64-musl": "4.44.0", + "@rollup/rollup-linux-x64-gnu": "4.44.0", + "@rollup/rollup-linux-x64-musl": "4.44.0", + "@rollup/rollup-win32-arm64-msvc": "4.44.0", + "@rollup/rollup-win32-x64-msvc": "4.44.0" } }, "node_modules/@types/normalize-package-data": { @@ -2707,12 +2712,12 @@ "license": "0BSD" }, "node_modules/ionicons": { - "version": "8.0.13", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-8.0.13.tgz", - "integrity": "sha512-2QQVyG2P4wszne79jemMjWYLp0DBbDhr4/yFroPCxvPP1wtMxgdIV3l5n+XZ5E9mgoXU79w7yTWpm2XzJsISxQ==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-8.1.0.tgz", + "integrity": "sha512-XSM2gYWTXxSYTwjmKWAoy4yR7AbAFDjpc5ZIivAiGXskM0fe5CdMPfs6InQRUcrYtVb2WZ/0HQ1/jeh3JW78SA==", "license": "MIT", "dependencies": { - "@stencil/core": "^4.35.3" + "@stencil/core": "^4.43.5" } }, "node_modules/is-arrayish": { @@ -5605,14 +5610,6 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } - }, - "node_modules/zone.js": { - "version": "0.16.1", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.16.1.tgz", - "integrity": "sha512-dpvY17vxYIW3+bNrP0ClUlaiY0CiIRK3tnoLaGoQsQcY9/I/NpzIWQ7tQNhbV7LacQMpCII6wVzuL3tuWOyfuA==", - "dev": true, - "license": "MIT", - "peer": true } } } diff --git a/package.json b/package.json index 1ef8e270..6d35754b 100644 --- a/package.json +++ b/package.json @@ -48,7 +48,7 @@ }, "homepage": "https://github.com/rdlabo-dev/ionic-theme-ios26#readme", "devDependencies": { - "@ionic/angular": "^8.8.1", + "@ionic/angular": "^9.0.0", "husky": "^9.1.7", "lint-staged": "^16.2.1", "np": "^10.2.0", @@ -57,6 +57,6 @@ "typescript": "^5.9.3" }, "peerDependencies": { - "@ionic/core": ">= 8.8.1" + "@ionic/core": ">=8.8.1 <10" } } diff --git a/src/popover/animations/ios.enter.ts b/src/popover/animations/ios.enter.ts index ce8d5810..18721b5e 100644 --- a/src/popover/animations/ios.enter.ts +++ b/src/popover/animations/ios.enter.ts @@ -1,5 +1,5 @@ import { createAnimation } from '@ionic/core'; -import type { Animation } from '@ionic/core/dist/types/utils/animation/animation-interface'; +import type { Animation } from '@ionic/core'; import { getElementRoot } from '../../utils'; import { calculateWindowAdjustment, getPopoverDimensions, getPopoverPosition } from '../utils'; diff --git a/src/popover/animations/ios.leave.ts b/src/popover/animations/ios.leave.ts index b346efce..e71b7a92 100644 --- a/src/popover/animations/ios.leave.ts +++ b/src/popover/animations/ios.leave.ts @@ -1,7 +1,7 @@ import { createAnimation } from '@ionic/core'; import { getElementRoot } from '../../utils'; -import type { Animation } from '@ionic/core/dist/types/utils/animation/animation-interface'; +import type { Animation } from '@ionic/core'; /** * iOS Popover Leave Animation diff --git a/src/sheets-of-glass/animations.ts b/src/sheets-of-glass/animations.ts index 60366e36..3206037a 100644 --- a/src/sheets-of-glass/animations.ts +++ b/src/sheets-of-glass/animations.ts @@ -1,4 +1,4 @@ -import { Animation, AnimationKeyFrames } from '@ionic/core/dist/types/utils/animation/animation-interface'; +import type { Animation, AnimationKeyFrames } from '@ionic/core'; import { AnimationPosition, EffectScales } from './interfaces'; import { createAnimation, GestureDetail } from '@ionic/core'; import { getStep } from '../utils'; diff --git a/src/sheets-of-glass/index.ts b/src/sheets-of-glass/index.ts index 5112f798..18d180fe 100644 --- a/src/sheets-of-glass/index.ts +++ b/src/sheets-of-glass/index.ts @@ -1,7 +1,6 @@ import { AnimationPosition, EffectScales, registeredEffect } from './interfaces'; -import { createAnimation, createGesture, GestureDetail } from '@ionic/core'; -import type { Animation } from '@ionic/core/dist/types/utils/animation/animation-interface'; -import { Gesture } from '@ionic/core/dist/types/utils/gesture'; +import { createAnimation, createGesture } from '@ionic/core'; +import type { Animation, Gesture, GestureDetail } from '@ionic/core'; import { changeSelectedElement, cloneElement, getStep } from '../utils'; import { createMoveAnimation, createPreMoveAnimation, getMoveAnimationKeyframe, getScaleAnimation } from './animations'; @@ -94,7 +93,7 @@ export const registerEffect = ( targetElement.classList.add(ANIMATED_NAME); changeSelectedElement(targetElement, currentTouchedElement, effectTagName, selectedClassName); - startAnimationPromise = (() => { + const startAnimation = (() => { if (tabSelectedElement === currentTouchedElement) { return new Promise((resolve) => resolve()); } else { @@ -102,7 +101,8 @@ export const registerEffect = ( return preMoveAnimation.play().finally(() => preMoveAnimation.destroy()); } })(); - startAnimationPromise.then(() => { + startAnimationPromise = startAnimation; + startAnimation.then(() => { if (!currentTouchedElement) { return; } diff --git a/src/transition/ios.transition.ts b/src/transition/ios.transition.ts index 6264524a..c99ab4a1 100644 --- a/src/transition/ios.transition.ts +++ b/src/transition/ios.transition.ts @@ -1,4 +1,4 @@ -import type { Animation } from '@ionic/core/dist/types/utils/animation/animation-interface'; +import type { Animation } from '@ionic/core'; import { createAnimation } from '@ionic/core'; import type { TransitionOptions } from './index'; import { getIonPageElement } from './index'; From 6bc797452debc105493e22e0d3010a930df01378 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 11:26:14 +0900 Subject: [PATCH 02/12] test(e2e): cover Ionic 9 compatibility changes --- demo/e2e/animation.spec.ts | 92 ++++++++++++++++++ .../inputs-dark.png | Bin 58732 -> 56912 bytes .../screenshot.spec.ts-snapshots/inputs.png | Bin 61654 -> 63137 bytes demo/playwright.config.ts | 4 +- demo/src/app/app.config.ts | 6 +- demo/src/global.scss | 4 + demo/src/ionic/ionic.ts | 2 + demo/src/ionic/ionic.v8.ts | 2 + 8 files changed, 107 insertions(+), 3 deletions(-) create mode 100644 demo/e2e/animation.spec.ts diff --git a/demo/e2e/animation.spec.ts b/demo/e2e/animation.spec.ts new file mode 100644 index 00000000..32d5b79a --- /dev/null +++ b/demo/e2e/animation.spec.ts @@ -0,0 +1,92 @@ +import { expect, test, type Page } from '@playwright/test'; + +const installAnimationObserver = async (page: Page) => { + await page.addInitScript(() => { + const originalAnimate = Element.prototype.animate; + + (window as any).__IONIC_ANIMATION_CALLS__ = []; + Element.prototype.animate = function (keyframes, options) { + const animation = originalAnimate.call(this, keyframes, options); + const properties = Array.isArray(keyframes) + ? [ + ...new Set( + keyframes.flatMap((keyframe) => Object.keys(keyframe).filter((key) => !['offset', 'easing', 'composite'].includes(key))), + ), + ] + : Object.keys(keyframes ?? {}).filter((key) => !['offset', 'easing', 'composite'].includes(key)); + const duration = typeof options === 'number' ? options : typeof options?.duration === 'number' ? options.duration : 0; + + (window as any).__IONIC_ANIMATION_CALLS__.push({ + animation, + duration, + properties, + targetClass: this.getAttribute('class') ?? '', + targetTag: this.localName, + }); + + return animation; + }; + }); +}; + +const clearAnimationCalls = async (page: Page) => { + await page.evaluate(() => ((window as any).__IONIC_ANIMATION_CALLS__ = [])); +}; + +const hasRunningAnimation = (page: Page, targetClass?: string) => { + return page.evaluate((expectedClass) => { + return (window as any).__IONIC_ANIMATION_CALLS__.some( + (call: { animation: Animation; duration: number; properties: string[]; targetClass: string }) => + call.animation.playState === 'running' && + call.duration > 0 && + call.properties.includes('transform') && + (expectedClass === undefined || call.targetClass.split(' ').includes(expectedClass)), + ); + }, targetClass); +}; + +const hasAnimationCall = (page: Page, targetClass: string) => { + return page.evaluate((expectedClass) => { + return (window as any).__IONIC_ANIMATION_CALLS__.some( + (call: { duration: number; properties: string[]; targetClass: string }) => + call.duration > 0 && call.properties.includes('transform') && call.targetClass.split(' ').includes(expectedClass), + ); + }, targetClass); +}; + +test.describe('Animation Tests', () => { + test.beforeEach(async ({ page }) => { + await installAnimationObserver(page); + }); + + test('runs and completes the iOS page transition', async ({ page }) => { + await page.goto('/main/index', { waitUntil: 'networkidle' }); + await clearAnimationCalls(page); + + await page.getByRole('button', { name: 'button', exact: true }).click(); + + await expect.poll(() => hasRunningAnimation(page), { timeout: 2000 }).toBe(true); + await expect(page).toHaveURL('/main/index/button'); + await expect(page.locator('app-button.ion-page:not(.ion-page-hidden)')).toBeVisible(); + await expect.poll(() => hasRunningAnimation(page), { timeout: 2000 }).toBe(false); + }); + + test('runs and completes the iOS popover animations', async ({ page }) => { + await page.goto('/main/index/popover', { waitUntil: 'networkidle' }); + await clearAnimationCalls(page); + + await page.locator('#click-trigger-left').click(); + + await expect.poll(() => hasRunningAnimation(page, 'popover-content'), { timeout: 2000 }).toBe(true); + const popover = page.locator('ion-popover:not(.overlay-hidden)'); + await expect(popover).toBeVisible(); + await expect.poll(() => hasRunningAnimation(page, 'popover-content'), { timeout: 2000 }).toBe(false); + + await clearAnimationCalls(page); + await page.keyboard.press('Escape'); + + await expect.poll(() => hasAnimationCall(page, 'popover-content'), { timeout: 2000 }).toBe(true); + await expect(popover).toBeHidden(); + await expect.poll(() => hasRunningAnimation(page, 'popover-content'), { timeout: 2000 }).toBe(false); + }); +}); diff --git a/demo/e2e/screenshot.spec.ts-snapshots/inputs-dark.png b/demo/e2e/screenshot.spec.ts-snapshots/inputs-dark.png index 01bca6b63a4d74a1d82ba86b29f394436d9180a8..9fbfbcf41a4122e8ad12fa7c84444ac64ff38d8c 100644 GIT binary patch literal 56912 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 S86k@O4k-!w$GPH$Z~g}aiS7LW literal 58732 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�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

    ZKb4`emOh z&u&{1m$jAEB8d{{qG5xpd1V`RdIWy-$!Txdbmy$Qi^hge`}rd+=Xk48ANw(sew|HEhFg*Gv_Yu-A2$ zE}gHvw6rGq`mXa-I-NvE@6)r7W#povrFA_(?3nlng`%aQp%KpQhn~-^O0*JE=L+H4 zq-ayRVk^9IN)j>%fBxB(MP=BHz>ie52EF}h4N0Y};yDX_L1}427L{?90lQo~ncmpK z$CA7GehY0Uy=^jx;?h^MERQ(Fq`DHhJS+I+!^444=Vs>|?)J7{5Sj_06UZ#cv1`C7op}yX*WsBswRs$pRCRFuP zOrhA*$_xgxLYWk>_gZ4%$@{7|r(juF%w=|G3!S%mF5PQo(YE~;ubUHNRPIpkgPdXY zY>k=WT}M)_*6wwP>bxPkJ7|KKr&H$R<>Q{J^1>G8-?Gr6ifh;lqp-qkEFy-CC!*Sa z#lz#enK$xebVc%>c9-zt9ipPC2Z<{V^Y>q^ytHuyx+OM zDnuy$;>9hV`}HeX@u{b0?ce7Tap7a7pc>U9aqB^4bEMfjI+m4{xUsB!fg)Lqgh&)N z-pJIeB3JlWS-Vm)Vni^%)~kZP2t5l}#c;l=R8{+}6(iXdq|3W|L7M`b=uSquX#$d% zP16cZ&jHxD<$f~$qlBRuf@zjH0NBXmA;1p_7s`TB8E`{C5aNJ;HTGd2Y*Gz?LqyI< znxrDLIKc}CO0UR}=s2)NtC--vCfUaXS=%UZJIuX+VQ#^>7W*(3OPb{BTR^%1MTs4oz3@4?tHCdKwylktK74hy#e`$ahB1*NB9@ z6e2UHm6{vj7P>+68lwpMJrc2G5Ep=Mp-jn89#1vWr7Rok4Qzw| zwCr{3+?1BrWnW9yus1z!XY{t9E2;SF;cccl0Zg>z)}tIg zS@>K}nlO&`Af|rmy*B63f-R(Pz?q6*ROuSc{YbF9FC|clX5b;A|A5%N=DUcF8^8|| zV;8zk0FePnbhpqc$C%mlMXfa!fZM;iEn`)9e!uN_@vEenV-QUa?{ytQp8+sGZhU^= z(`eb^lhK?WdIK}{*WS&#O+RunvihfOn@nQomUcljq*AFvdD;b1{nn9@BnW{+q@<_k znh?tf!xG>Zl{AvC^?&y78jcEaMMy7{Z!umeCPnFs6(COUW*P*0KZeFbtN`Tu|5W|& z`dt-I99;#)J2=j$-6kEND%t~<`3x}9-Jc6YaG#lYiQ~s^FoZykF{00pgfiP~VKhiiWiye*$xekbuFT#>jVxi;5}- zZEr{6FyN$6JwxpWr=A~V2yMV3gCQd`u&HiO;dJ!4#j>g^s>m#^y?GLy0DBa zK%64S`B`s|+r-YeAdPA24@je+O~{277cN2Y=StWxn=+)taWou(Zi41y0p?b*JB$MG z&%~aW>=X^fHT2;FfkkY- zXnV76OLVh(j_yGenr;jcJ+i@|E!ahl13}98sns9+>uKERkP5OY&5SLk`8SbKQP6pj z;TjfS5PM?6WS2o? zzmEZ~zSy8ni-kl4b-ej`x92?|33O|=H48UdU{WD9SmTai-|p|Ku$wU)VRP{~0^a*c z;v(D{AE@41TU+HUMj;sK*L~(aN@)|5Ox{jm)GI_91h=7t*+~w3GDEo`6o7Jf5nND z_Dd@7>T`A>Aw5nW(1%kpp`PmLjYGRs4@Dz@7He@s5IIu)2+v1W6=bCb5!ka*6W|1@#gnJ4yVHx37VQM(8yk?t8F?yKdGjLF3cgg9&E8cE%0bFgVaxNdb?6@lu?81~+*v?noHG(d?T6jzWzeZr7oF z8iu6z2Oe%?mpnoNcln~*=v5ByZoiF#A5AZ*wKKuY7KN3~B{Xw~) z0|o>*Z|-vbMZ#?x&wUGE&hi1c>%)gpL;O&GeMq`~K$(-8kRS-txe63hg!aJ_97i_` z?fx`$)=>9bCPNx7sOJ7HT}n*J^hl^3eOGegkg{XiHI-_5#uYepF#0p63Hm|A1vTs&I@r|c(^^tE@2wr68tki_+L|h*h-heczUX5 zgKlLb`3aCeXaUhW!0sZ3X~3ZOQFNg{fIonh4Y_3JAKR!D6cwFE{D7833Bry88|4b= z8SHX!RP-axVL*UDf#d@|lptd^m~;yKG~!8xX+)+JW06Ro4Z|m3kKc!tm5m0U6#R`9 zMED~^}v89I#ok}9&IPbIBmTP%4DEh3>mkBC&s!{pFiANZMr}nYH5uKE+t<((Di^rpdoTw5%V(u4En$B;$}kZ*2;Mq^{>MiF#*HsK+_`I`?mDhBBYqPN!}c&Sff5#E&TRv%Q_aHkb8m|b3z zqEAVjM4{(Fj6=wM@}ETd7FZx@E+e`-kq90e4=&sTfat&`UkLxf;S&^4iR{^sRRs5x z)jzYf7L1t8#>kZ-)w8wr{Z~o3Hv=@`lH2o0&5z{IiYGE(sLGa|RQ?k5^?sllh^%ws zWE=YgLId~`S*in4B!e?NRv+^^gCpj^2?4VZ@Tgi@smV*z#`B08p zCT3>&Uy2=?2*CgoZRqKxBV#i-=2K2y_si|uVT1^s5CF|I*PxQ=RSq<9Ie6XVf)V0{48-q2@% z7zzgz6eGT{A%f4emdyTzkZvAUEP#$qVqQb4vN2}JU80f@$4S@N6JY@ffIbLL-MqkF zs!{M2PT;1I|92<5uQ2%s#1}~4mSG*5c%v zs<4oh)6>zle*G$#@NI9;d61X>P$zac|LI#nnSUK7f(Fdbo1zW2oS{8HDj{BA%cI~y z`>!5TfwKtm};XzB;5bKM4_L#@fm_IKF3JNv`Ln|eQ@{LjY zr#c3G1<4;o-+<^I;ZZLC2fzpdmMg!!aac^x$|TH@f zf>acceLzRg^l<_7FB6ClRz3<|-LUKx2sn`PkFULp-{!|QfGzSkEXJvZ!?1)F0--C9 z#fG$;TmQuaflUg1TJ{^N5F}~_u*Uho&Ja?C8mOwDcfOfW!U$GtopzOck@l4a__J}? z|GK-8c$h*cT3~PN?}GXDDl;@6fcA%a18{={s6^;Aq68jEGQTbYNc0qrC-BY`kW8(l z$&K7Gj%j^j%rCwZf~+oZb0Y0i`(LOyf5T@-h98t^9$WE8dLfQ1I0@})R~UTm&*3sA zZ^NmM5@)J;D8B|z3u-zOj^N1q(N%B=e8P&_QTb%F<4ckYE7d6Tk?u3N3CV;tfE*4m zsjdO2NJj_$ucXhF6vt7-krqlUDCTs4xj1hfB#rP*Cs zz{R=n{r|(y;M<{e$Vt)dQO84kE=-<})YM)ehh($7LYEf$i{O8AAArX(Mr?C^pGeB5|`0zu2j>j6Jw|FFAWdo7ujm8CHK2?Ec& zVAlnqS9DeE8_;Af32+#JvIO@+lQ;Xb@&MBYnKebrq8^9jM6AE zV2y!9m1S4mSr}PUH=}t92Mcm(v+n{ia_a+l6<|Xa>aFE}EUD|0b6Z{s68jy417t)5<@FscYfC`KRiHpBVj0TG%c*HG2;8B=hhK?Cnz zDMqp$cpu(fyE8kRE)PjZKfasuHRAIxs4bA_MZ`Ikm*T2tab;!NreICyH+-ee-d@7m z`c~N4)8Q?jAWW!nqc%khHWCG6HzS&d25+bugdZvEk|n`c@k*BBt+E-*B#0)Mru*ZJ z47AnUQ2=C}UcM2qO?iRB$Dla-QSI>5{KBD`g27$If+2AH`ep(;@uQxlg94Gx{y=Q2 zO-O&(Aax3g$7~zOAGWnEX|;n}JF)?tJV8iVCmf^3+Z)EAiXSRT21`~j(W4NOV$*u$Pj3Q9sAmJ{+W$vky zTxDQjKz!cgh}of6tEWRPQbns^}J8ytOF#_fTYGS0dA$k1Cc51xF z%UB2M4v0Y60h2F%Bhrl{Ue6D;&nE7BXP?!|s7M*q;$^H*ZjXvLtygY+osT$Z-fT4tig&~B3*aHXxq95{x z_3{q__#YVSPq|y%rgDI=A%!1wr;zYh3|hGun`{IUBW}Y!#JFt!*4uDt6cXZlCVC)B5PjUkR{FIJKTAOo3uuv+-Ymx~! z3NHept?@)xw}wIXExe$6j3PE#GM@kwzJ$O0z4!zV6)E_~7%UtKcvPmYKu6{Oz{Bfa zw^3q%ciK)aDteHBSNQT;7KVoXF+(;k?neXvyWvGxSn^9T8{{2{6&SoID8_}9Zh>i$lvisnD`I0%iNh^1 z^E8{o^54W&Va}3xA%j7x&HS=9T}7oP=uxvIMhq3)9$ai`2l`yBi~c4KQB;eP7%XMm zbrt$A4dYc*0&m@aedU6N7INXT7=^wvUi==8eI*YiN+iBu*5-8_aV045Y3_bB@qJ8Z zcIca~!pnICY!0|$y9Wk`p^T~Va#+tiVT|ez1vU)vg`e4HFI+VB|kc zR^=eN+@ZDJ~`D8U2-u_&4e? zA4R*+lwdB|tC#RzOm}?cNRXy7YpeJDi;1`{smM3S^V7AT6B|vv)IW6{QYr^0&eJr@ zR{?h^HW02c`<~s}Dxk~F$S5Y(ct_0WAdIYC><~RdiHE@w*cb8Wl8DH0$33Q(#pIXE~7H4V?|hmo$FLx;G};xOEqhmcdAn5wZxcHU$G&BLgk(|RhUJI zj+y5&Mxa)*n7u(Z!^qhy*xbe`>pvgDF*2Rakxl7Sy(;?dQji*ayS- zyi#LvTsXB{PdYZZc^tNqN3=!5&-WAj{RKlSRR>bzbpUq2(rsPhNlDHK*SW{YD2uW- zxz41CZBB`G>&||4wL3E@hEB3&D1~FAR&dze{(f#^H3|yd=C^lKUU8#z$E2<4{kwXX zBXkSVH#;oz>XXNhuq+5|`42X_DwKHflEpUk?NlxYXu$v$BAl#0&+X%|Xt^yvFkC(h zS4oXNFT&ohkW{9{%(1O9W6ZG{&8o4j@+`4Tqt|(IX)_nS+7sOHPOPk#i8&hMkalIRBEM6Tn*J7bnz$*Bd$QLnCqmDIYQ1@;zIbv9o-1S8v9Ylc zadGC4GBVfu?x8rXl|zzgc8S8aD+YZ{kq_!tb*rF27bPf_QD*k$*wi}3YP+N8BOLLt zX2O4AHUp%*h83d*XGz^C_TkMbDi)i%m0qFM!E;PItF~aJUOpF79Y6>F{IN**E|>Rd z#7s`~9xW}cnAptz4XV{<5(=#XHBCv#%;nhpGD&gWB`d57WG^)}4bjmWE#qzG*UheE zY5cSm34CVOZV4fI$lZTcxr^Jkxp=#Nk<-BZE-3}|h3M2e<(e-0)Au$T$8xHaKga59 z_7<-G^-u53Q?~!jsa|eY7Ld#Rx*xx5a|1x+?Ck7iSZh1-HHS90Vjc)Yr-|_Kp|_?* zYHDgg7l-}EYqP(X_hLEyNjRSRCAHVMXq8F^wXt6O<)xXHe_0g)*3P>AlPeK(fEiLF3EZWVlJ6&d9 zV%(7%Em6xURKfU6vre=`b>*dui#6AvM~0|3uZW0!4#k?j1Nc8UiWahxi4Cb$JfCEV z(9_c|5ObV5X`NW`4)W+R;eoAL zNJqz@r8**gV-KeYQ+RM+r_qW|5_ykcfTy8#npD1>urV-zp|DA*Ns2Ew`os_~-j=NEA}?I-pO9&*yj!nwJvLKG)0R!PnGPCSE~e=3+~2I6^UfRT(T;eS z`2`3OW(<`t*BG>)rr+ht;8jq}-y;xP^OiiJ|6)!O`=EJH$;;#4qK`g%-X||cF7q>7 zRah#&x|2yIx$n6OX+2?v?jB24ZC&+2-}Tr7RCC4J^FEx(m(xB38KQ<2cbE%2ZEPwU z>I3F4IXOB?W_{Ty1(&iGm9EAgHFe} z!~VhsiuG>;?Ifq99jB0DB+FPoXx7GLx;pi)yP0)}LMuo`@Z@Q-506qKYsQr3q4|2T zHR&J46WePJ4%}pK`cJF@ilDpce4mzNF}L?j$3;p{aXCm%!M|YBKx^aIoD-)Qje>O0 z`nnD7T+L>_IYf9K0#x)BI?P;xc7TmQP&UyTaCxq@@e{xuyR~b!;lx`&;BSs@MFLCl z9_QzkW|n)QJLj=ZPP^zoF%rO1jMhG=v!o_hOXpNpPyF{N*dvdE@x;C_Tlu`&1tvZb z8s~k=a^8A28)ntCN;lm+>Wl0Li8=U5uV23w;%7>@>hnl7n8l7{r+E6-;~nlQPL!wJ zv&<0kganG7ukJtjfFj?xeEVvM+jIi2%j)&OvWXg}wlE56g#{qkD1`RDK}sO7NTV&m zGf09nD(gX|*C7Y#g-NORB??43#d@UHyd1X^rk+*~x;Ob@1IfbtPMjjk>G?=1drQZy zZ7*#YCCT(`bE7XYzl3$BS+fpV(@h*>J@JM1d z7nzu_n$MZ?&@)7%=I3#FxCg9< zet}`NcKw-w>Uj-~9=m3iHOH$GWx)z80M8kenL0H3o-yjX0MNw4V#@OBpO(OQ+I*_p#TVK>v5MVP=!`6U*mr%OesIgIRH7(sIZ2>YSCZs7;-5nhr-@jMROuY&hy@e*v z8||^yFMi?{`&-s3;-c)Se`Wzm=Eb@++sEV3dx7%$AC za zdycpK{#~rge4f&&{m2nk{^il9MTuT%{sRitZ~d6gH7=@TEQ{u@r{;QTY4o3wPHsuA z9pfn6sGY_t$cw4(u>OrzmrdXc}8ySTw5q-b&a`blH#P-gU=Oxd52NqQ`;iz z-1l9z9em7N6xZYvV!#3o8ie<+fM*6JS5JRNgV2d|8jx%x@{#iBc z`8dNJP*vg8d{13n-BCl~KQ9S$-v8k9HejURV$>$KwMSyiC>$%kF*YVv3Uzqb3#R$?Uqr@YoiE*MiB@EHqgp z9WMQG`PuF*iYbYO5p?;*OEAB zO`Z4o#HgYdE)~Cg6*3v$P_#D6S|$1AMN_5p_ZK($B3<}N{6J z*f><}su4>7EH|u`oXeqqd`L?5JNx?MN7-rZJJ6TU_;E^gcB$_L3z~Jm1XOAU!n@8U zot_T+A0IXbi=C|R;?aYE4*b`tpmU~jo7-wEje4#!iuR6*-~M*16bWyA0Gi%Sx0zz5 zLptNW_M$cJW`!VK!aoNzG^m+!L(V2|TyeTkhp(^vX}>2ASgB%kwobi__L1hy(NHmB zMeC~kY&cBs`Ej!KkaOkB=g;1j5gI{WJ;sf8f`5d0R$ox?@!;FNSSG}|y!dd5Y+j@` zbNt5@`_%tn0r~e=)a!Eg&WmKMQpFhl9&8C5Em0Yl2r}KIJU+h+fk?U%mqn+=Z&W@(8qv#sl(t7jWX|TP4bhdV-1OQuWZ!s$S z20#B`3aNf5Ma92|jdm~=y&w2}VDiUb5w}3>gp0IV01$ zUlCU=&CeI<7bs-c%%GQNjX#c?w8rCppwGC20hI$caV~1t<3q!T7-_*oyTUeJNkp9-c(n zH6+ZG7S_5iRlaoI`n|S-XMq}0h3s<7-tM$m4t&sf}Zj^`^nQC==~+;Y(V z`gSQAenn`0%Wqn~5sw;wnjnh$-WcY>hmV1NvY*wQAORZ}`UX|fv+G8jINF32t>0u6 z#F<AamFY^(kgu>*d9nKs`FZg+<_`iXez|7bja4s%cdyDwKF@*TJQ4g)44Vq*`W5@U%@H16LAEIK{! z;Kb3VpxANVTO{OLz}Xi;ett%j>kI5}9!udwQUy>?A`hHwHQR&cjAhlUJ-%$D9>Sac zuX4TKZ0c%B8TXbQ5|JHL|LS709(ej=lTGYlQE(%dFZMwDG$9Jd5aTDL(W?J``L)+@|u|0Vv}#96fa zV;10x7E9`6gu1#)=W>(I_7wN85*jX5pdBC^Yp(E=F`>o$|`X;E;o|zE~3lH@^zc%yT2>ic}}2 z!{3>;V(%RRox46*qP4;P87IKT+tXLW(HmPpux9caaYkfhB-qu6myF@Lf)Af*FHnEH zx+WE*zxCh&2vL{5KL*WF6%evaxAVb~s@paI>WjBn6P>HJSu#_sxGg+A0#E1Ly{1&t z9#lfTR{)V70lANq`?}(2MFQ2NTO`qM{CfnpYWeF`M_9FF0wE6;Hd=xXwpdW#TBjB9gNDU-0s`McsWsVad}V03Q8fU zZpYNmwA!@e*XwIDv7In4@rC2_oguKsXB5pTz^ZO&ufhBBN4Dp^h+h(Y802>J+VE2~wo{7u#Fivby`K5}aif}kXf{jwix7N{+p9*R}}e6eXv z2F-b&Y&Zdh;}i(D81^q*kAewWR z(k(1JkFJE^I0O!jh2yo;sx0^Uh&GOz>~lyf?>uD)AfUCch-tJ$;0 z>OWqO{|+uJcP0uKXa9;O1&wToR^n?0dsEVbtnjm(!&a=-%>$EFl$$1cE3QA7ZiRqt zHe^tq)zdBpr|RjcH>vU6?ePA?ne!PCT4r+_H$UbM-W*!{0$3CV-5#t#ax8|^JSG-Q8*?PUSVnZY*$mw^r}hwy7qqAc@VQGLPFV^I!>*isrb z>praX3LB3^TfgND+2npjp`Q?7YWw+jE%*zis6Yj+4mBqWrv`D8J!Q(QhH1;y7W+5n zUugZ7jj&dSy0Us0#YL()E@YHnR?y8+7F()dh33DLp>xwRXzk|3AV&jjnVOPm4aKPs zBkE78ncohd7EA*-uW0ewH?CyClfc{P0P<4=8(9QG>aRavld`OKdv#8uvKk z7Dz+->%9mW@9eo5uwEcXWqtt;7sZQkehNJ-%VUs4xl&XvL_!oB)anoRiIu6kUKm)I zQu>ju{uZBAa$;f`(&{90&0RzL*wLpzc6AsCi>cfuf3uXWw8*72VsFj2Q9QJqJ2+W|GM=mM?8A_MvZZ_y*P#ZwbUaA8VSMG!KHKGlV{IdU0rt<^Ez9A zTGpB+^7u2`78zNn4bj;F=wyrSk8P_8=wMmD@8am4R72F2q8N7(9XGul+_x&2qF;?svQy4EA%s+fd zAQCa)($cu3B<74-;Ml;8fo(vZ!ZPPPlY5iAKM`YP{ozl6rx@s^G{WWAFVt5JbEyM2 zlT;_!EzcZ+GVr&NuvO%1Tl~t@-;AJtL;@m4%YLz9%%VH0Ul~VLPJbG#Z0~3g7P0TWz zh|OwUW0z|QhJXFagcp9Q!+1w`5VHk!NTFo@aZ~HIS)fe&8QGx8Ikk$)&-Z$K^3&3u z<}xxeW@fnq*6*J82$(DU4KKA`ha`!t?=cr$HQy9tcqNfsdoPzO_r>eevys<~5l>XeFTuXb90bAfhDyi?-?Q<&;xa z<_oiEk$%^gLwy8bw%jKGv#BiPrHFG z_FeO;5Z~7KW}>H| z8Cha&@9ab=E5FM>b8pLBRUcu94reT)dc3W3QgJTK@vDUTnpUNiJb*WNsq?!>pwVMm zX&5lF(GvRUvE&l7ez#_!^E(@N6kb3e_Ym|Y9lk==f3>wNSJeO#&^TO5fWrggM zIw)zL-4Gca3%QtbB}0rhgC_t*YRI5a!%&I0O{MLpswB>o(?irr*YrW4{6fwPVWs{v zUDK4HwYQo#&PmbPjH`weWMoE_R+(4`39${WIP8szyNbsb@^+lRRf@T+y+|jaH4cVgRakxQbpFPvN$Y z=}$k&xp{`K{in#&U-Q_=vYH`9hVGHLKW*;{ri4gm=L&OPSHg(HL$mgVS?-t}J(2f) zZbGrR!B_#cB0!gc@VX)`F01gPS>3Tm;jhp)Z|HAg5p^c8)!ah=`QFi?b%2ZM+3of% z{N-QPe@CxQ7gJvD`dBfaBk8hgx8a@b=o>-=nA7vlm$gUxv?=z>Yhx^_-xW)q=;^L@ z8h|inuMgtg%%3Kog-YGMe_!c>xN48eIztQO#rgZ9gkSZi3hlS(Ao$QHD$Qn+&eW~d zu1Vo!F4YTEi_RDFtlN{DgnERC@Kzb8s@}P+_EhWZPfcChh<<8p_x=0#;n!`|)dGhH z=+h3_8Z~BBe(&An@{nsWZA#V5LVXNX@@gH$D*GKB{RbloD;&rIOJI|P5#nLwDf3997Md-}Udd0&P6I&f~{JxaoS z@NFeRoY>?)SO90|G|w+*ELN%Iy^nWKnesJgyw;mPy>I?(60y0si+vyjENr6m5)hAsR64P1J3Z45A7ep*H>n@PLNE70~K>Z3;NbDW;t@WcPsJdZarc4K&DWfn?tT zIcObz%2FRScFgz+Z?#ct7vh}#O;OdWacx?;rKCga8tp}=eX#6<@$ae4MV{K0PqL(k z$-<2hX-4k5*5;oqe_a2`6;!WGpFfp&W4^{|y>nb*b120%uPvt5&|RriREL*`XRtOS z5JZidc}qfDCb2WAi4h7>oBGLg9ZlAaN@pJL#5xXI2{ncN^w&B$txV^2zm%&Ta=st2 zvn^vQclVlXxScg8TRFHB=2N4prb;ZnXunfX*sj&+`!X+$>I6)~az2nT0ah?Ad7olht1AYy*^s5(4nFT2dLDnP}84L=&MK~BBi(+%PXN@gw z6%f_EQKN|-!91xd+a&{6-E+VdS0C`1b)Q1+MX_PWcYeYYKI@>JPhnwKmNb^2)B=H1 zmKuzqE%SEXL166I;HnwXUr=?rFK1kagFOT4uahxzr~Re#wDU>ViDy-ER=+{&d9sp6 zjqZSvw%G=CJRJ3VBu6<#1}ANh*PP8UwgYy*#l^+K7G?|m%2od(HE?*CnZ>I0=oH(D zy(e(40Fd$?0#XJSw_$ztKZv=qA7NKpva{p(h({vA8-p#Eb$T#4*i+5qx=h$*-x$G# z@ms}4?|T=A>m29bcsH&nC2yF-nM=7l&aIjC&t8$fS$ z`RYxk7-HI>#?u2~##HwKfGt>X6KtnA!aWW?d*IUxL^D^;ho6IAO1FFw!k>3TIYqUZ z@Nv!P=!MOD^1u@C2SlYXb$6%Int!O+D>~pV{F!1ffjNwv3sukk>~*@&znlkdimAe3 zOAikZXo6uv0tgfZ7M{f!+*dhxB)1KbjAYA6yq$;J8&!<(gZ7Ti)-+j)pKsM{i=EF} zF+aG{D9Om68mPzTSoWRqp^f2td*s~!HfX=&l_L45>DaGyO)!r8H?;Tg_E;VVAmoSI zHBU(}XY4YyV$?7QK;#%l#->xQzv8d$HU zJ0^#V32=XBS63W`pO#kaW~v$1?XOcGeM@XiQd(aajHx!}v?gouh}}mGD=`V=m^D18 zbJQ+s4d`+^jtUko%QQ`RuiUe`Yx(HtW2!}3Zf8>W9Bb$IWl*y&jHaZeHM(sXzP^;R z0O=*VPyqoI{??+u z694KwyZU|5#PT44hZQThn|Yv$qLufA`D8Qle?MCd_qt7TWqKXr z*EtIw!cIEO_zaS+mDK!pbV&~#$JS_Q4L8PJkZ=kxoC1`j(C0p+y5A#^_2z-FMV}_E z>@c7MnM9{u76)$?4h0nPT(@T;f?`bfFruPowZqpH1Leon7?g0aCNqXKTg3pd4 zMG0xXLS9YJyP}si#>yXa4@Z*U7TROzs01BzX@@LJfh6nJ@ex4OTcf3ZxSX6vhUq)F z=K$Mw;?WNxQS${Y-4wAYG$S_;(6@WsddRg)bbddP0We1l6CwYF(X)a9L44sWwJe^> zn!0Sl!d(e}f(Rn;w!``ipB&ynr!=5{h)8PVojm?g|CN3;rON&|%lDhr@6rc6JW^>z zcWdq}t#ao|OUr!Pp1*lyeQ;FDmKbaPw|3O%NH*m&TKLq>xxGjGso##QQE3rseOjPS zp(R;cJ8m~epM->DvdT5g6#QmXe5=!3PpP7#%^(*Hw2PTVQMePIM0SBjJOAAl6Uh}j z`BUuNV;|z@#Qr=QOC*hf;$KT(w;AcUbc6D{BkECli7d%HC z!VUA?pbRy&d!><$uTg3^_i18N00f_~Bjga|r8^8)(6)qyDT~Gz+9qd?v_Hxn}^L7++`u*gz)_BKLY8`uIF0;p&L?XITGphY0^+dinBQJKsG62j2^76x)t!w>R zN!_Un!mu$t5}J319dN5=$##soAN929p73XNNA0oAzx`uzIyGcImyc#?uUK7TfD z34-}()sg}vmI7|6?#C`N~D9np4Eur z!4cj%{V8Wvo9x;87uN3Z^2;&j79W?P7FdarDcVdgD852NxSmQt>+f+ zDc*WWmUwggvc>s^@q7V<^q`{2$N8sNWtkGj7#Tkg&CLpT8BaGw2gyPSaK zzyt*E#D0WvhWIejBa0v@z5mBBdA`nQB(vP3NBc&9#u^XxFP&TXkaC>{H|Y-h$|542 z$bTZ8XPl1CUdHdO7p)8wz72VOE-Q01CDQQMHQWApO+3f^h9Cn^pY@)v$)QOtkDw0= z?@it=cblrUDSTRyx+!Sf$|Y6&W{_zoP9q_^ES?q}^Vi<1(vID^*(xysSrHWG714^L zA0NI9PTU(LWsOxpZG+P_W~fT2`-O~>H4_2v>g#Yif6Y77>c{%FUJa%JloNzc=JQex zq^1G+@%rHkh}`I2xHc~t%|<6mI3D}hcf!n{?-{oXN3))G#9sO?6<$7Dcen-0?dp{6 z)D;yZ=P%e)OJi~Cf`nU+TWt(62fAvec8dC9z4p$*2r;Tw`&c-at{R|`6iJ_=&5_3_d_i4pz%*=FS7Ocais}KgU|?4L zNvag|;DG70|HE`f@XK$on3h>!z11v#D%+SpG<02LKH-33c$1hX-y||l{Hy7W8XNJ5 z4*y|FOhT7ZBpHt_`;ek;G`&uKS#yz~h$_0O%A6*s(&MboB`44PTPs$NL4j_0ZiCy4 z*$_sl6K2@fBBQKHu439>@;-cSiS_Gq^H;i?iV9s7Z@UlQ-O^Gd|HEn=uuiRgSp@l9 z7XSC>;t9y5yqb8U#eP$2x%{o#F29~f^NZ!>c<=!od1Dva*HU=j%urP%FBF(1ifFrn z`}ajd#U_1Xm%de=3=~!2PF~(x2kIu>*yF4_optUs=d8+ z;I|H$f63gjU~|-Xg(qmX+Vt=A@J60WvRF{qNp!93rX<%5+&asW!B3tWT=y_HiD7Z@ z@Hk7zueWMps1)hDGI!`tUG(YiyLELLEj27Iz!hHtgjSb9Ce1yc5muX`!#548c;m z%ov6y0r=QbWaZ~KuvT+j9;vqYJ&=`zAm<__Qkc5_*nWDcRNfJ=jmR;8vwKc@hLQ{ukCrAaDO3( z%4$K$8U`VSS`cklr#ti-tX`P$V3L9>ThVL2IZ@R+KBpzHI5FomTht*~yZZBg{9$2A9(y-0TSx^dEEP!(k}4KvURDxd$9r{UvlQJ&rb)WN zF2u!T^w;M^%}4ay<7JS~P`J~H#NgXY``vezS)9z`>)Fw^+BB!SWLoCzpA|Ab-{s(F zK*eCKq(*jB5pY}$h#ngo1D)fMmamcKDiw>EoVWMq))qC#1@fjj6#2%~Al0dgqy)t_ z+BPbI`J&ldit4&_OCtptkj&hsF{w3aet8=aVSf0BTQ!L6-ImPLxX*J>bhRe8v2Rzd zZmQ@P8RKkb_r3kDtJ)eXHvX7*lXj(Dw4DviE|Kh^%@$E6Dx@L`eF+o-E{r#?Oq3He zXc!;-Uf#vMx@360vvxYnMoLl=p8nq>nEv(m-$JegE>mgeD8t zH>{+%*rXT%I4P?FrulKF7TitdrtQ<^Hr8U*8C#;ITl^MS1l>%I)9DnBpPAtBLQ6BZ zq)9CgO-bcBF5F$eKbR_deCxgD`+cQTFg;*r%0HCQhz%#AC4GHmYFFv-F^l%A{O3E1 zXZJ7psPg$d&u5ECNl8mhH50j2{WgD4eNSSjHuG_Ji{E7yb9{sSrkVy<^2a~SbLt_~ z7Z=yTQ;BwJP@cS249|^F(^(B8M!N6A4c;DWt=r`2l!Ht-dboKmo}5ie)vpm;%c;#} za#@Yg`UmkCss;5?a7nFp)_e;q3)b$CCihhZfUfMN=>7Yho~V^}73$s_6~y8J_UF>0 zM#>`WM3G`$-@kYD^bCxS^R3grC}FmWZSytJtgu^U?bNw4MV+G9Q2E^QRG$knHyj*3 za&ZL>hvJVurFKRUVyjrL&?phk_k7^|&K*CI<@2d`Y4D^c*$KNiPES3V$*0o%P&G@| zwmT0&!xho-Cq#vrUc}w@9+E8$WPxgdJgSVSp|uE)JePH?um_P`(YtO$M@0tYJJ^SL z)w?@8MY}T2jrWqLjdj)^WXy`%sT{_&I7~lr*eGFlOT*3b%JB=K<+)`}abk7ZfA`Wg zlD{XmMdf#{PRYNXc9*c#w{W|IKS7yEZn9qp$;iJ=C7RJXGKN6&Jx=#;O zM%AfKQ&rT|w3Y{Os=g`< z>DLeNP0%$ZxLNI2FLHLH2emP)Q!^*8$@^Y4@h}HeP(%B1>S6=C7)uHzWcYhTC-eue zU--uea5}tY#;ea=CjP67camH3ql<~>&WED%&-*0j#8W+#+(ixR-UJe9gfj^!1RLCp z@a)K{_c9)BX;R;$mDta~w#+*Z)uoBhXmM(3?-W@HuS469D zbuIgum%vpRnf%U_VoyXP5VQR9(pLT1VqsJ2Q_{U63W}50E~U;h*j>ZQJ_nJi88s4~ zu$a&b9EZZ=WR&$6JtVzSO$Fw>``AJz@4#Q=Fo%K~)0o_N;-!h?l*uSQt@vO}MBgNj z+2QSq=q&}|jo<Inb{98bA0BrSB?j_%tapSXw&RskaCE!%?ym)a|^YmAT2o` zkOC+{MD+&$_{5yYAM0SpZ^(C{=jgI0$RH*$x^y+mtUn>2Ws;Pvg1@ADOFHE^qF};r z>(pp8-3jyMYA$OQxxZMbCG(@YGQzhZKhgq^jSB%uJ#?HB8NbY~J~{St!6jC}Wi{;Y z5TRSWy-}Q_k2Xr(tyBTx3ZK-M)G6x7&QOd9j(N@`IgUP3pDAtrPF!`QdEWJ2b9{l__pUURDYn~IExI|CISw?+ zKC?`8l5_E=#)awqAyej`-uqYU$$Q76e|Kishk%+l)f;Rx?j?!Hz6~`j*0eLfrR@tc z->>q)bAf6505fDATJY0bt1W^P-R7F{CiaQAP@+?tc-*z1akWa1aj*u z?oIFs&WNBC1VRLnl@L|)NZXplOY6fzyLT~LTN`Gjx=yPtPV<^&A-MI~s=24(1lcmd z?4i$}I>`?ZNyexBC9X$=%v+o<}1djQ$xjvZWzGE_edID7!yS|Z3xm}QOF!u>un*25m z`}^yU-Zr?f9KhkS>B{g%+UJ{32(L%_wjqB%bC&&4aMClJ>wo+IUDsMKwaa|#QOhTj zCi9-v{fzDg_H4uwjH7}GO#j6YshGS;ZvP~r(WmtExE{*{v!B{N zoM0eom^yskH5&@%;<=84lX{V7mg`23lb%CEO+s!@t{KY*v}>d6x8b zKOzY=OS!s_CyGt&{P8>9>uAmHxoR16?UdUVIw=lM4CIEq)`##Dk=Nj1gdAn`r~ zGm$bVT68^4{Z88|o(vx>5e)cLFr}mp37BzKXLmPpdU|u!G{Kk7M>?1El+C7gI@g1i zm^kZkHjbX7!9?j#i;_k5=0zIEXgD2IJox^k?*Yzx?NSW`11O4N$jF-lI}(3oQ}ZVz zL?*RA-}pyTQj*}n!?j4GC0`;l&*<)mP$tX1=DYP6rV0Uyn}7(Tv|mj@DEO} zGi|!94&TUo6gv7sU~l$vP0T4KqvB0aVBjVqr0POLD)wXoN6X56`5i5SK?Q+USQjJ{ zw3?fq?nWY!R@gm{?}l6V3i{0m2??VkA_fuin)h>13Ek#B=9FN>Y~f)a-Ejk>w8SSG zHSW0LylMzsTE$>E=tW%{?Wvm6lXK>rUp!SM3@_-F;j<%TbAChom!XsL{p3|BsiFKXtsRluniWlDuk^R1gVO>nR%wb+cXgr%AB7xgM4zotHzxRZ||m@-p{pX`~7mvrrB-Ev#2bIcsNde0{>PhAdkPwCKI@b}#EuSPS1^50?+S7sy z?3q7(^-68r)}*~oF39^Qh@0UOk6T%Ea><_3D7&KnG*Fl(PEYSD zdt~8+j<#cMH$q%*xFgAE5>3{+B0n_FuJy_2ml^(*`OGZYp(-XEv6mSg9j&(EO5)-r z)iZKgS2~UjMc;Zy|42$gV*Tc#kjGar#Jbugg1{)g0Szb0x~1_LOG>WW6g0{N&&5v{ zLioG#tsBD#b~Nbzfv{oWKe1q859x*_-U||3Ed*{X+l6p{EhA0CiN| z>w*z`4-W|oix6TTSf*u|$h+(GrK`d@$Z{!3&FPgs#HP}$C?et~8^A?pIk>dJWw)c7 z(;G6{Z`|Z4|JmvN+`j?H8VB@-`O7LV!PpV3%HKt|59S9qvU_;&&Hj8*DQKH8=w~D~ z{xf*Hh6R-p{5tiW1`7*sM!xkkbxy((_3PXgAb7id0>__{Ml{D@9RpoJqm9Eisoq2w zcL}<&%$|<_7Rwd0!ze`C!(e11(A(*Ft8`DGx9JkywqSbq*|pWg5UN1sG2DJz%BpM{W?mZ0gPh%j!v>wwR{jn8b{cY1bKTN zIPnts{nO21V)>H&T|LY&ybo8NldwXutnRx57iN3gxZ0DSAD_~Thz7F&Z-;|BOIU`^WhCP+_rt{fDmZ$7z0S2CkA8k&T`awO z({wL0-wFO{a~%1WKt!Z9Bm{TzJIIv2pRTctrLqg;z=a?ygOdP{n;>vxRaEl)RvIh& zEyN#%w{QI$uy{@)>jIWz-0~$=@JJ48Zyz7mwFopx_i;L(qtWF#e3#>qm-<6@)11nU ziL>PoO^l%a{`|YoA6Ow5L|_gd{N5YDe4}IXmf44`Rns8ifzvHeqVY})%GPH~Ext;!8L>s*9455lp?exb% zVrL2E+J?aL@@QS+Cn;luPqxE+5@9Zj1Kp)|Yp2b!Vcx0-4W$|!NFhg$2D?D%$FFTH zX6l9_AM=_BzkF#fs9WLDpcAqGK_y(cDUDG0x_UCu2nN@p2SedvjZ}n9aK0_(A$LF zk^AN#ZWF=Vs@oVyFKfNHxOnPs zgDTk2NLHNs}veXV}b&E1u()a80}`Sf|2c2&Md=?6Qw7eHE5ciPnH2d4Y0xD0WhI#xOSA{H<%}_R6ODlQwr1i?zu6^Xg zfpA^Yr3-Bo^&(C4JR0!!xz52cT~h^r2)#INg706RqV2JpV?yw~ z6>@`!n#pIa$4l}F6r6;_wP=QI>SeX7cY|yXm~R2l*+t=_X`gfa%}DJzb;Wf0g~$NS zO}kM3!~D+br>FbbX#qXYcje>Or@j$*ovH>Ou1hu3bI{%E;u*Ba5+l64JZqS$w$9*p zHrtx0P@PPDX_zfXQH!X%JeD?a5Zgd2tv4`=_kt1TvPq%(S>}R_(l{y38qDKy40S3* zaJ$SU@_rY}S3vF5ZrZ+162q2U)ZU6S|NlNCcjnuhjucAQ5#;w2@emXij z^*+>NgdKSCCp_WYM8g%gVwp~$&uZ-rv!ezM_U;i9x;GOTioMn>(W>CF9$)(tBToO~ zkwC<)9@w+8q$Ej<|8%wau_rFLo{fuua?Gbi*Eq5P-*ho74cEfahb&@Qa%?-GjHWEf zN@lbNMo2xj9~1LBMUHFq={tk$!R_pj3QetSiN6MZu=lOLv&EX_axdZ&cb6Hunq7k( zNeX=hq~OXmtJFrD7O%Alx6XpA0k>R4@=u5SFhX(sQD}9$(3g} zEu8)^649GU?r7ZT@9y^8T{7ihI0^B9&r&&e^8Mldm`Q~+7R4TOc1f$+ne`>hjoujYN<=gm=$6FnjKldTh-?YLS8FuP!opJ=MZQDkM{FrT`EU`{F#gl>xef>rQ zUgVb#N&pgAtLldOm_vZPVXQZMWGtPBY&1vgRGA|hUMDiEGy7fMyeH$Mxy^eOSFs)bLHOq++ zMqS5wU06a;YEt`&si@YPkn#osqLzREmkV%xxi*-i7kn2iHok*C)w`orYW<<$+`QrU zw{RYK2)R*>KBJ>UkC!&v&+Few?kE-KPVfHqIWSO0jC;pP==VVsno0TFhjYt8KB-ZQ z-MziN!@~wRw*9r)7}yadKe?q6t7KGrgI<^_v1lb4`Rcucr^Ur-2rLAG#vP(>k;Bj10iaV zJUPlW$g{TXA!b8Yj?3D@!s5I)jo*1KMw;s4aC&N~li!WxC~~^{Ha^%as&?0fh-;+Axz9{HQmSx&NsNaal(r}zmb5zTUaq}M~ACW}%2 zNY8If%N{Dv40YP<@2&lQ1HJyQVuLnw2LngvpE>z1(7@qve5zMko+($CXPCYeZaqxw zH;agJ#*`oM{TJwQ+rA`@%$vjHwajTwFT~;dXkvf+8Qg(1{+y0192~db`V-Z&%dRW4 z%wA>EVVjgi_&tbf>o(O2Bve2sEyDUdNAQ0l%!ijFfms%%>Y2&KZ8PD8X*s)$XBzQ6 zwUh+7sp8k>SaB{dH5nP@!-wo5XGc&uGpd8b8t=nN+yt5OmZ@^9v0zfwxP^reCsA+n z?n@1Z(Y{_Ar@w(86QcsXVUN*;uGA4My!w=x>M{IHbohgejFyQ>pkhE5Uf@7_1;rg% zMW*W(H@r!m8SI=4ruQ!}bIorA1r=%|XwFV7$=+D8rhGhO*6k#X1d1pU|ogVtWT%GMY~uddh^kJayFgy8WXS*xPgo+*(*^re(C(qI$?c# z>YwD6jq*jM50cs4mXnp4CINI3;^KN@EagYaLo!mTPzc@e)X18a{oM7g_E}bj+@GI1 zY`pfLH(nK%OO#_?4Lr^LZ*j)+%EYBmeJR@&;Of0bjG4&3LiAmHDt5i&fY#R5hSYnc z%rEU`G&x$1#VU+~oKXXlIoGl~t28~UG!-e; z-k%O3&RlQQ_bfu>zkBR=YS}qce}BB(pw|0@Ygr}svESuMK?=7yRL~>WtY4@9D-XZh zR`O3m=%tF5)Av{Ygh-8Nfw3$bYDGob zQ<~wR{1pcm*V1qvi=iR0u(1B=!yr59z^*F+3h_UGIyyS&I1E~-h>7h=^nwxV@8%T) z;&HB`ypRO#IVOIntNXESObDz3tttq|!#;g8VxMknO zsciOLt>|<;ht0KKX=$cJn_J|{+hy$g*vcBYfj1Mq#3VEY6rffz)?^N^yz--q#bD^w z@$ztmaktE2?^m8;!CbE+J0+2etv8qlMJhRK+z7#9horxncVqEt?dN@Wm+t%x1T9Ci zd41=0Ra```VjUN|XqKjFXp2LklfLr7_)snvJ^=v%-fmAkQ%-sLm{}YmeirN9?!lE6 zC~R+E9)f#@Mf0X*{+_1m{_`T2Y{$E#vu+@;SAZ03g<(cyuOfx!V2i!rp$2%~Vf%fb zIWJ7W;2=>>g=DyNrtfJ=(ffkJ#vH4$?_J(CHj@WWbHIjF83-wyZf^XSHn8wt$nu_eA6!<_** zg!xsRW_ovN5|kp7gyqztdFh6BH^;2!=7eLze7sAB3pw=5p{DLH{;cPu(+q4Hj2ifd z;7)@EDX(vx^{%I65`;~PhwHRlB0@+7j78?X3$KzpO~QWrfgJSK+SY#2S+DVx)B0eo z^I9MOhhJ~$*a1NUniH7|>7qtbTo{L=A%LBg3RNb5jeeRSGGGW$3!HJ!)rbAN@dekJ8yK`{yOyREZ^K|?Lq9fI*TDA zZ&zcw!#0hjaL?mPgZzkJGSpCy0z@Y$-UYyiL0Z8A0;wLBlYZf_|g9ZsLb9Bcse(ZvqR0=x$c99L1eq#@$h}hVKzd zDSO-VewdlYqhISoIr=`;2FqR1CjDR47wzuh{U+qB>_rC zC2HN$&POZER?({88f9sGjzsoS2);b_p6!cuL<00v(5n`(&={{CJ_teqPe4;J>%N^(R|ZLRcai zqqa|yO2U(}?fR3IdA{e48zIDWP@h*;)T5{juNtFHIas6H`+?r45j1ahQte-q!5TFd zcLptAg1S1qaMAek0(SNMO|QFKPAC2TrU^v?I*n6FlKd(=8V5U^6caME)716NH{PlK zM_>ofS-rPyJo^>b|GsR>SKCcN?sbsn_4PGU`^%zvtETf14DUBCBw;t&?P@1&qP~5j zCMH(lg%L2nXU-#h9JgbJnM3%UZLb8fQa^ksY}oFBq?)CRex==VZjNN>>_~IlnSrnN ztO~;S=C%zbh4i;)kx0*-8Oh?YO>dUD2IX(GlahX$dIW0YA`dB`|M!Zc=|gIBcQZA3DnamjM>)zj;mJYBm^ICw`XQm3=hcG1x0nuQ$o+`5nye zGbwjL`9#)I-C9asJ3&jLY=^~mUc1|?y-7;5N?oWw5BIrOE9f`grw>Pr+=Q_|f-cAI zN|_?C^3#LP3+tU2y-z?nW@d4Ls_}^k$e$AjVR$8CSc0b@Lj=aHO_b!r> z*WG?5MWR%j%y+jl34rb#yYw5Yri(Wx9eUFE!_Q{|c*O-%9hx8d+=C?x`>JH>`>c8< zshI0k&6kqZ&c6H{7dmUCSF6mlx)2BY>n}Tegaoej=Rb!~&X3L5q0D?DAMyTpr*rh!R|5H9w#*Fk+LbTDlzPCF)$R=O z|K82#U0$oXyM#NC0%k?S8(dvd#Ak&Y)DVnGDUD^u-3-C_k3G9P8{B-t-iE045nF%X zSw;OJqS;xR{usy#nos`&`tSGG9|WtA=Od|yQU;eAl>5My9=pLHCWK6TRzM^JY~QWF z@DYdBVy;QDKoLgr#Z%izarx8)6l2IyZz;s0-i=K{l19hP`iUq?VKm0f^OtAi>bxIwP_VnSPX`fn_~ zc)(p(eZS_`SIoJhZEbC!*-_c}8cq0LtZ+Ur4Nq>kxwzO7jO}X+z){K+rXL9uIb7>c zedG3=rQPRWTX3<)MUBN!EUi!mzt5>l0&~LY!A9PfacX`ikE_cI970;<4b8psw_w2j zE-x%$zejoG43TBChnRWP^72TYJQA>3ppc#Y`WWbj27Sy#vln5)gFN}9GK1ES8GdUi z89Y{_-q&Bk$j{ln#AJ@4j^`|E!t8X2$A&xqyB%7WMBx<=px7uUmIo*%v=2 zw?aKbR;Q|oPBJ?d2Wz+88ato8xBT(Oekzxqk@4lTcCu=h(a^A3g!<3iBzYsuOuhK# z$NS`$|0axW^`@cl+(p1lDW(e)*k2xuR4#VR&sUi%0h$jK;IrNC%)571huwXS7jdf0 z`uW^<^qM`f!2~oKSz?l;>L|f~Z8(@xP_LW5KIAZf=lPZDRFm$s{P^*s^>T{+{mHx8 zW(5mxt89D8*#m5K#vAt`7CAMWDlL<)XGedo4xIj8jUJ!Co!hQm2*1f_X(`FbQVN3| z7PP$u+`RVy@j%X=mUIG0s*B_0(&=hzzw_h2+Er^dQ$Ke@8EBE=k<|QRzPW{buA2wn zzI}V~j*3RaS7BJD$}HN$%Zo$*e0gt`rP3TRmnGi#h>l7A== zR>VRS_4sHknbY8p!iNt7?63wm^fKMet#Bv2Gh>3|QC<^^T!Pp>rc@3hbI<>xf1#M?LXPDNr6I7-rzz6n;ESkQ{UHDy~ zb-H99sWj~+WzkRw``85|2+pyc9^aej2qpwO8OG0|20$vHr7Tr{%{F@_wF?36?)%6G zzyXbn;9bw(+k0}Z0Z4-;57CEeAdp6dYTYq&tlE{EC#$`F)Iy$WfV|N6tuMEu6mZe% zP3*rW19oP;ShZeWmDb(`w6C6O_6&AhS6ukiqORYp7&M=irt+Glr>hr7!I^*-OELG{ znydnE?j=tJkW>j^C7z21HFB`BDhz+{@HmDwZ(Y~EFM!EF6Uj}MIxgSk+CRgft;fF4 zHXb<#6G9aij6pJD1o*Mp1t}EepDjx(1c~saJ*CRpb6Q>^B#9eNIQ8iq8qSZmMMn!mW^H`%~8TYNa~w z7THHEm6-$G-{8-cqlwH0w#u)UK&i}t@ZIPh2ynT{?GYuB#FVyxd0#N9aB_~=!r~mj-;s+L?zYGCgOeuwHvb$T_jMn?dzaNH}Nt>EL zktW+|w|n^vm^6?SK;C7#e%P)Yj8yCiewG+O1^%NiY&HKw5s;$?|G&cpfQtGf9k8g@ zD4GK5ZVuf6n7baHIze!UQ3W4$kC6&z0n=ngzrkvc4O9HA3TI~C)U8B?mV1!C&}+o9 z6YvEW+hN!J2^RI(u%V6EM@cO#ykT4T-QUCBr+dqM4vM9M3x8Hn76x;}WhI?ScEphV z-D~~#XuRKn$D`h7N~0S)SQxVAFoP)C>KJ8Iw$*HGTYkV1&?L zdsvTre9?Ggeiau7Ja-`ZVoyM{97U~^4_R+Blu^JHX5~x?l1|P>ea|aTotkGCl_4K! zuNS}pbM7=)v7Ost=sv!xR}iJec9i3T#tYucx(OKpU<2as^?WAZ%r0Cpz%!n_(J4iV zbi1mC-$dlbujdqsK;fF9dwk`X*0NbAbXia}1jjY+a}-^+JE~-a7WZtH_pDZv5c~vg z9J=RXFhWgUv9XHYsP~%cxojI~@`5sfnsam^Y$6-->-IGST%gtVI~Z5_I>2(fL1DW> z$Eff3{f?q;T zE1x<{Z4iNqx45-*5~>CFzVO&5zOjGi_xfbl3Z_BRyin~?yPb3^(Lp!6wr*eK4&;UC ze{=Pxb3r$>*SVQ}{ME1Sq2}+^;+?r9=&%*Fi^p1-CAnRtwf4ex?h>RAA2ndnh7l~c zezE@d%KEsqOsIr;Sl3~MyUwdY&fFCDk2cKwd#38pp9cco`kR3&kA?kUKDD!M$L%yV zzI1AmQ}MOxH{Lc#|M%Qa+@YZA_AcDKa&EQ$Or{~Ld^v$c(q*8y&3#u`07 zfvq7HOY(P|+Nngu$lxlPZdiMFBs!K~)={4jSJc$ulQcrSAr?j)8|iepYbi3rFC5%e%C!kXLS+t z2j> zWriLbZU$u1T?v*MabO&UUYqhewe220oGy-JjZWP4UN>KS%fu)purzmlr-eMQJ9hAr zDs+tuFruda9GlJxmB_9r2>IdK*b`x+eMi&iYHvOC(0+_tcbl{0PH1%PY83hgg!|id zve-%Y=sNVy&#zXFqPP!jUiYvyTv<(JUNnwtP;}1><3?@^n^sLOd$B^2Z+LQK=iHD@dF7nTDTB@~%zoAyKO=I#`9{Owl?qH`yy|!lgz!JCi6JK3|wnX{q z_2wHWWu7Tj5wb^!z-BMxH`~JLlwj{`tpYfcj<6N+e{+~g515l@V|ji#T{bKq(|1F= zsju{%B&Lj6uQoVpB3cry2j#&?7RQTX&CBY?XJDH#i$$M z&(I|A^Y%Udsuq-gH*ExsPq2?eswU(EK@lSn&`5R-e6``{$GZ|j%r9U5&~H8kNVWtN zK`T_B4jC#YC2@NHoqT=t9Rb^_eG-xIv%OoX9<{8GQFt7r_jQ=b4lY;7rz>G@%N3Ow z)xl#^;;&JwsL1d^-ScMk1RORr0em8}&=m5ET2=l@8ZYLI9VSqed%6%nh(kb~3m(Hv zwyfhf^u9PL&u)l<(tdaT@V(|tIey_*6mP1hh|b|a2lRoB5q`8w$&7VtbAr}1Tl_np zp&`_aYj=ZqjNMs>EAEYCIV(!FwVdeB#U{rGBhf&MEWRGV+K=C~2ySyJ>7j2Fr1kHl zZEAO1wOe44<l6rW$I<05lUVFlds3N>iUtw+ zYv(53Ta2NTK2Ru9%@aQVxBOkbc=Zo)axy8Sz5PJ&ZO9Y#@b9Cu0v|?<`jUFd>DFL` z?{zO->)7IWexWyXLXU&zkh<6sTbjz}!)DPH8Ts_hcV9O)XF#B)k<}sqKY@40Q{lCj zf*CU!w0O5()VzNA64e<_p0AYowQwH~04ngrxu2HY_q#7{LB8ln8X(*1HUpUBxw}MW z8kMH#p3No|Y3iBYR}NJzPfikCF>;8&p1b|w{GlDuxo4s-JTfaVgNuSLaqq_7lp5{=qpkjPy;mT-_>;L{sjXfe%TFqyt@nt#(B`CavA*i zFqdSo)B889NYBCHU*uyXfN(hwNKr)9Wj;EP%ve}6pW@2OfFM+-&o+fQDAp-feoRbX zWV@oijG;YW>{<4`fX`buoXTfiDTN3jFJcLq!5m=NSk_wVooq z`kpUOF^su1fDNB(^}7O%9SP(Kw%+x^{cIcE?o~vwi?#}B*+1mc;E;FoOSlcM@~pRI zc{WpV1&HY z-T&#d2!YJ25l|6!(8Dk1 zON;|7jV#t=QOZaI6b+E*KH2##eDr?w!du8<&_9j83fAl?sUv)KUPZ?C_3j;0Af+5E zwB5qW#x4~VGzeZCydTMb$E4r%Pa2AUv|9n_=@-TqjqaG(!~_;i#^(u{nFgI<3D-ED zpX(_kmpy7?Lq15lOU6L^rk*s;7}EfHsz3MnPwOns@tm~fPLt4+cTQTlXP4`6$jeYQ za@okc~I}Hr5D-x)<*yA6ZoXwEKJ!oshRsHVR45!i=waFP^sh~dj`*3` zlosE*(#_6@#7fZ1hxZWg$9FEgJh}+Yz=6D%DNeF-*j}3N-SPeWfD$w#4BXK|<7=l_ zYXcviLv%TV+_~~V?olVXG1iDpSNIT>IW3pSnrBZd>}@gjJpt3|$MR@rzV#}}z_&k< zt+7w!Y|A-ED)RhbBu3RMK2<)69Z=ql8PZNN5=jcjNP}q(y}BnUKNM0bABfzC6p3!_ z3L^AEcQGDO4-zMOZ3JyFTJ%F#e3y=D28frxlluUQ`=2ucU2XwJciXSnrxOY)lt82o zTLn4nE=d9bu5x-CS#FRic=8z8xML+8pPk8RkSC`OBn7+mRP|yF?wxyh_57B@zk3o` zOa`bImW=_mO8wEs6 zzyYX1{Lk3jhU5NLgu5XDS9r9Cbu%!VZasVy%KDIf-n5Z+vn7M;gq5A)lLWu-5b+y) zCks5tzRcr~4*wQvuYjt4G>`BC%%V$ghL9Jn#}mHV*sKYO$8Rb$OYxA~3r+dsFY z(93Hqm$mp9TrLJnLj44neuus%CXT9|qgrZ+Ezz!`-2eEIf4at&*L{aN1>_fBph*H5 zy6B5jQ*%zw0txKK6W1RS3}w^%XNvso&+Ivf7jmpf4xMygwCCsB{w(^P+`u_ZYpv@V z)_IItz&uhR&vww2LIAuRJW7juad823=JTCK45}xg5!QJ4nAZ+8%5{$A-MccF&6tm% z8FfoVfW*GlnaE)<4wxI@l^Dy~UHSWHw`6~#AQJ}W5v00k5%z5$r;FVKe!j_yWsa1) zckhxhsjA(8?C{nO869{#Bu_arOU3+9R4JdxX=0tFWRh&XZMVKHNvwM6Je{b{zey54 zv_E-R-oK_?Q7Z{b3Osl7Ed>e5PpdI|K)bxwaY79Mj;291Pp;_9q~kNTt4WOsn7u*k zhN)2i-5?f?qz_zAO=5@XRhl>oqT^?hfq@L~QOo6W^t)?4<0*aM=g)Ff5g{R8kcp3Q zZ#)@upcH-OIk)3bB1Az)B&^z{^TaE{^x(Wvo~}ikobu`}`<>!TXFA_W>+t5%uDs@Z zce;*IA3ABhwl0SDK|}Ktd$&DXG8_mXS)N!byKPnGcm=Io8Di1|LTA6D*&_y}jB8px z;!f;&=^S98{H}Z=cdOw0(2AsMmhET<7ELQu>9&pGHd8k>7~X_S#!>zQ8@J!TZze9mi4mzhrGc<>43ho;97=3%nwc$zwWYC4Cog4fhU zqubAv_@fMdc+EfoInqa09l^z%R|8n3WsLn~rK#V^DiY8_g6vI3oe1e@+Wt(D)=|Q6 z(r|%K2jLuD<7Kb{cMJ-+0kUE@w`*}4=UDZdj^~;=rJhwx+LX7Po&pP_e1a#V*Wng0 zeLm(i%I#Kvm%`=q%O7byTBuWHR{HT4P6E?=Gf;(2_EBK6GP_rGYizIsZ^RqiRy~GD zzKwiSpvMQ^C!HG*RYKHma_uFCtJy`I?P~ha;$)iPxSH7>Rw?AvElb#o5w=8gwP{p* z%i9ak@XIXx_hSAGb}x#VJEO^^n1T3ACH=dnP%?MdQNa8KrJ-}w%T34Y#6J2E_wg%> z;}NCaNI69ibIWo8pnh-6HR}R}FXC09>()e(L})Ci{;HvxSz?_bxCp-s1CK??lcD_r z#q<$wZgXE$%|u&(H0+vYxh%-kXs9_qoYoQIhVP9|=%(=6+X0#>mDf-0=_CR51eA*E zD-iUrDJg&vLVxp|6wFaBvfAy(jY~G%728$8Y1Mx(uB3PPqv>}2_LV>lO>{^zZS+3A zoJaEnqZIt#pmy-S#}FU%K7a~31eCTw!4M4=iSw3y&UGr?lEE-b*`S7qPPwaRpoCA=}Lb^4&NaKGLn}8jh z0zBa}$uJq)A0OIq)EWjGT;&^Qg~o71j_)2P{Cr@$jB?v<+mH|~KOwjGZz2w?YX1l31Q#l)etLdW~iGZf3S zow~cA(fSg0Gs}tWE-3iZ)m}?L`Mky-fI31N3`t4^MpK`p^o^Fm%xCJ#1%+R8aT#GZ z)w$>hH38L+t%n80&EyI8U3m@dogNt)H=dl-A1GIvDi2qBW^Sj>(_Qh~*G>wFj3?LX zQ1gWATpfi(TUV&O@fhd)V3#~gJTJTszkY*;n^}h&1$3nvXy9ha;9K++I%0a?5{dd) zZ8fIz)57s&j}-9cG6~eGtIkogPS)SEQ90AKQ1=IE_ z)+P+Cb>oky^9j-_8r|epDugxEYu={K`uh#MIqkz0^4lhu=2@$4ef$kr2ODv?J)@F6qCo7d5ryf%6ZP zehXiBs7gSJJCczy@5da*r0gmlWjg+R{D{l>eXiW+t1`a32ttg=8$dkXthL@^fF$2g z=eur(SNcrqiLI25WwM?UC&q{bA*P6ivc9?(ht1VjK3^(4v+dpruaP`Ia36)g#GB8~ zSnK=Ey9Vj|KOJlEo>ml0=Ainvl7XvtJ+sryX2>ahX{4Mk3t8nFg3O$22HxI+E!^&= zsqy2Ow2yr8^|+Y4$CnxM66Zg*OPVTiPrrgip-6(d*;0Xy#tN&SdhX#>l$OFa7VarT zv`)&Soa9WMJovKuOk}!d`A{acaxxNMAhw2WQV9gqulYCEgLuViir;5Z@6h4M(mmU- zlbNA;>O|;nlk~^^G|YI{Ew#f?e!z3dim=Zl=0Xj0#MIA#jctcm#2za~2Q`gASw=V9 z^gd{kqu=(SIyv4A;{RWo3>Er)jwf8wRU~^j$uZvSdrG-VpZuZnjsIn4mQ7VMT@SsU z3@#Z4DoIn*`OOs{F4eQqH6Ft`zde9(KmCtvV~)#QZ6v?2COwkd8hf&{sdi{?#o;%} zdk13nKb)S<3%}lD^K%2s&A7?=*g%!H@7@Z?QOB(ILDFRUU{G-fXHURzugWrC}Eq4 zL12NRWCLvtE$5PRcxU$Y*AUr+sashjccr5*fpO8aEE0_@2S4+X) zAPzB9w}6hs0(x&?V0*gX*2YUfD@fs$Li6TQb)c@!W^x$lY$AS_X<&|ubU`n3PzO0` z5#;l`^al5*AG^~IOjJK@CY#I==Dbv@VaB%UO19|PZBoRIW^*evcTWd3!Z4bnv17OPYUJ7OS^y!ma0yB2E8`|sMa{3eq zLG}7;!21I_6JVZ_2JF5@g;6IM1VwSFM(J19fB!lNAG2AHmkdRJeQm2_Vv^e@16Q6R zq!D<&50dF{xX;za5kO$T_N)c0cfdg|{Nb1XBL+oA$ji7^Q8#e`n{d|j0PyAnIN_Nndf@U4q3*Rs@dS!{7r1IMD9Zm=Q2a~dZPL%1r z7t`KMN=@y3xJ7vfB7=SYc_Rgw?W!$D*8VMa0I%f)=)21Tm$DNtTJJ%CG|hlAsbvdQt= zQ52kFm8$^ElR%QCKts-Lt~g&|94r@`B|h&)6Z)z`z}?qrrmg}66QzjnQlW~$E1L<6 zrQf?i6m43*b+kRL+i)P>)sF*ZbvQrf6ar14b%eJwhKAos>rzF;Wm7k;r-P{m7PHtLn`ZU}L#BMVHe_N5wZ79d1qLtp*SZ%ly$W!3WZi{Ay2v zsj%PWIoH*grorDP5<=6d0wrkCy)xa}9ng^>gpTxp0tb{Q1$xp*F6LD}rk+mMa_L`S??~X23?pUfQ2>^%Jgr(+w8n`Q z!mhSaA6^Ii)&kVvH^`c4QM)lpmx#L$A{ChvTx%40p+U)P7!LI zGkWBpS+!Li;;&XN5&E#JN%8YuP)VQ= z(v;TwpQtgQDw=xuYi591Q%yAz1lr|BlJGBJJkBG< zn(ri`wEI}3foz8N$!ZJW27DHS$Xn0sfO(FN^x<1`v6BHUuEh+YM&m278<3(fw8;D( z@60k6S$JnMApt>Dvp?G4EYLd$94)E>d{!hScRu(7+Nw7`rw3r6^BjTvcMqaK2c`zt z)WC9W02-_DHPHX6W#i0rYweg|4Zp#XV`fhNf-FhGe6VnJNxuBO5_pyM0TY=e9$fT1 z=GSZYoln8gGS*Z^-5RxxVM6T2NG~6$viIpmH!z=Ft>-8K8@x)ZZ$Rxlt$^h)Z)n4K zCtx@Y{CwVmoM(#9(R|SQ<;$1W%diHgF0kBtCQ0-mO;^Q$1tNi zFwfg|hN+hwJ@ZwaN>E^IoxHYx;@x;c^HM7I5n$Rh2K-v?lQ4eE#>wFK`1b+iSN#RR zl;UX@c+;G>UR~IOMrbd(lcV)qwZ=x9@DCfe=0eM*ZyjWPKbOCI7-X4#$t= zUIP`ldUrP0q zWo*IL;|88_Ce5-Yu}`vBZ_V2Q6-O)JqI?4~Tv^_Fse`;A115P?reBZ3{#t)t+_&t3 zA;!YA`Q|d6YB~OL(W_2!gE}F-Oa3n#_0A|43qeq}&JMR%-)Q?p6vi_`;VZ;GKfg~i zJ%@a0$!kCp*-h>hpxI?J2B#Seii+k9Ccv{zj|KBm!vK zUY95O^WNMlVR43rhM@QI!898R3zJ>!F9fJu{Yw*0uiGaRq+Rm_mPe3qDS5HqCZ?(o z!nGc|(W>%WpqT}m9_sTmg|+01OhfsXpT?meWP{H~3_zCu%46-e?qGfU+R?F*LM!CC zo&r3)GKFysnY8cK>Zzr_7yE&{2XMq@oRV+~hk-B?cZPr~px!kAj<6cel?A29d?2kT zZ8-{n)JRY$$yt+;`R`beWGAs0z#4&)IwUO**dYR{gT(Uka^bn*AHY>26}d@&vgr)0 zOLm$}e`4vwX@9tYR16O30e{P7>lGGOy~&G&7A+K+#NlpwR(F7m+c-D<)3OSfXaGav zc77asc7*X-4AQ@c_d;98*M}>iHd4)p6dWKsI~Y*{=9+>uQbF0zpoGLdDZs??F_?-;iwKDc zIPBX0RjAVEY`#ofjbZTLBIaGXfa%qxxOSxp4;2>6W)jY9^}9+ASU7-Le$XAb5}_i# ztOhOT%#*Yp3m<_uh}RAnn6|CA1~P=IRP%!66PRg8;)~6J+LitWI1|)@0v%~b&XUf@ zbIp|-Tqu!QK-@c$=U`Yi1O71M%w?f*rbFXZj*|}ztFpQbNU~ZUa#k$|;O;78t9M%c zx{?d|^;=aXXpoP1raxQqK0rL@Ky&~}_6nR0X}6FWo4TO5MEw z>+TuGdc}Ni#XiGhX&1P7*I9ZAA0N(vq}FnIS`2Pt12`e+Xgk%Ckq$$07LBdnp^rc+ z@;LsN1&X?SFYsg3*v-cNdRJ?E_8Vvz-4T>NCwqC|Xi2$VeS4jJ%|yMkbZAKB5CB@1 zT@jXmepHw7|BvfvW{Dkbzj~&5YZ1lu_FDU>n5Rm^Xgxi#i7T5Z90bFkSf7pBTa4P%0Z?w5I zDM_Wsuojt88jvwl)aaqK^?>$-22wbpr_zu$NG4By|e{CfIsNIUkp{*qDH=^Drt z4Dnrt&b?QPlV4r{qf(gn&N%Vn`iB%_OUo2tQOh33g3u7!I)K9Igp z&%wzFAh--`vc$T!L$pn;x%L^my%QM=VMOUh z83@=@gP$@t=k)`T9#QG{TUByHD`&Pq-&<)PpR^xu%tvo=>TCb$X_Cfm4DVT&(c7fDA;%jfVpiju2XZ@)?y@Ae*_WoJ=_jO9 zZRch#UTiJMnVTquVRrmC+>NT&i6_SI?+$1;=? zKvI7_Qr~{QUGd!D)1i)1{xw2}!o^Mc5B~Ys>n}GL@;8ibTpG7hj4QDAM_tTstSh^k zqN(r4eN0v~E0}0lUf{}$NF?O3d^wcQ8&zKSuztUmVxBzy%Q{G-`%D-iCSAbCM*AIm zlRm+{|NOSX);tm)ezt(mhStF!XJ=*n?EKUSmVbo?p#c-twOHC>3~4F)zXqYqfS|{Z zde>E`A9&lCYzVXmKjmaD`%A6+#g5Po{4e^%qy}Fe72Kcj-KR7H0~4Y>socQtb|YZ~ z*932sKFn1J*C=(>@b}kp4que7S$X}84fv3164#%Fl>faZf+)ps&Bh`p&~(5`jPGZL zRPH-B^<#-*Pd)_uXk(ZoS05^E!mk47`H{-PbrN3^F|pmVSEA!IG-k+@@pOLc_7PM* zl1HCBEC_HNXnPQ{sU?mu2UZEk)S@GR3h-DHn2kRGvz@MsF1D(oqb@O2E>Oi2CYd`p zJbCfe9i3Lm`@pMpBg0<}+dL=jRvY0S>UM<{E@_ z*p;T$*Hetrrg0<5R@9**3%l1tMWI|R=P_)Bo&xn4qPnhDyt*{?mFf0_KRhcFN1sBQ zDyX&JrrrwHcgM6N2hP-Q4a*qZ?mhSi(Fom>*3H#QN(Rve7l#P?Q#9BD0s^decDbd) z)ndcuzR1N^4-f~MRuOyJbF2q?;S2DDy^A|!*utVdbZZ(mviP)j1vfb}D zdT;re!516}@ik()rKmQBS3(Xr^x3|YsUfmq>C&ZDTm(Sd#Mk-_aKV|H@HBXtu;AX` zhD4RPJ+l#sBQOSbYb5!P_BQE8M=%ZnRK3_b`R>qmm;M$LDtX#iuzY)0t>*CEZ3mn+ zZ|#y2Z0&N7ZbG5b$&6^^?lp*hwy|l1UZ@eYnZMM?dO-Ku-- z6?>JOQCn`7dahxWMOAXpz2U;}AN{VCXMZ(0;CXZ0v-BQPw-GmcmbyMhzT`(aG_2OU zd7j}BayN~5_T@A=OEf_5XEY4+>1MYoxz`uWKzN4d#{YUEFKK=u-0iNnZ`T-O$=vsQ z_SKRG^VRYtvK<1eUMgxdb=ZP!^~*WmOmkJ{DDgIMi938%W&SdZAlbeqowH$2>4G6f zgd$4BzOyp4KJ)kNL_1ulbx45+rFWV>{fQLoXs$hM29s=jlP{RaT=b>|J|Oy#rLkNX zM6~iag<=G=Nzx4G<%(`?>QqLHO zvJZ*N+qKBBnSz309zF*LnseN*abz6Q=1S_a)tjGK*Kl?HDu+BlnRZLwr|NRO+&o$| z=AMM5%a&CSb3Aue3Hc?eYvj9>!??4mTI~FJu$(1fUGbadU@)YNshSdz$|H3qt7K-l zhF|siuai{WbTcdoRtdH?u!kvK6yHu63HHOQu7XSUHRod>@hr0`VaZset$W1by_L#(=t z{ve1|;5YB<@-kx_j5v(CP0{!U|C8`F`(1AYQ0Bn z=j-F=wG_wH1G$*(cZ$AtX|3~dc>F7kq%mbpDVXaF)9t(%`_1>FC#kn-K(|RFI3qTd z>PqY^=Iin~3)Q)E6al7l@_jwa5{*#ZuqEyuD@9y9MMIMRTz9(FC+j`v-U7ulNC@RQ zk)v%a$sLyUzyK*dD)a~6EYqB|d{wUjMtP8$d9C;r9)0uRg7 zFJ!9dAl=3Xi=eBb|eya;HI=qzRlr&1h>~vs(RC#<^h5pHdJ4 zckR1bIFxE6x{J0r2`HdJdXO>!N{XDI1U5V%U8nFE=He|ZsAO6;{R_YDA!CuQ?$VJr za#>1rdGbarep`6PX&>C7;bondasK%h)xM_bTicMIkDB;M96Nr52B0Ehc6E(Kbe>v$ zk6$vW;T-FhfQ>}7<)cHx!vqZ1PcNq5WrbRO`(*U%2RY*suYkI%D*eKYNKIUxg)0Bj z?Kf{o-9A&f!DCBTlW@j8m^oV*{`M{8W?BhP$gQZNEmm7>LI+l0MW;wyJ~nPyuCwwI z?G00yY!-1w*h4k9rmz>FTF4GD{hJEIjaOf8WOEwUpf?>6jmqM0y2{^Lebupekz?_7 z+7zR)dV+hH*Wq=PUFT~N%e+eaL*qs&deDRz2wb~i+ z>R#q039bG1ZO5{rI?pwS6m4)ekxQ4>UQ|BDO+CjfJ)9*mMHm|h zo46irn*nCYnyK$fxec4K!NTsfkR*o;qsC4GALQ71tt|IZV!c2CY)hi zP0WsQmX5a-v!NCw16XJXNT3#LmdrJ2QR`@RmBTdihC_^f=RXo4nP@1Y&Gv9Vt9JgPE&^x zVaE!P_&Uf68**S@6#8!7e zt;?~#k2kk#$Rl52sZZ^>GF<*SjlnwsjO9Rf`SnjZtS9UPojhk-7@H3DG-icOKmKgL zXMfT%Ese(Y)P}T^iyHvV2q|GrTP93+MdxZ=P$cXFWSN zKRDenyr#X~Ql-R+_g!*syi)$KRo5noQqQW>(-$5F%QV_A?kMgX zS|ey^)Wj1qeL^0R#eLgk93C1}#y{FzSS=x$Du0lYJpK6f>97pZ&OqU2g{f71Wc{Tq zIcT1htF}owbD#YA#k()hY z`8Ppg-khMTG6nIO9Cg>Y{N`q4aQ! zdiV4Wo}Sfq!Hulv)vLF7?sUWVd zlEeqd;ILGzEy>j@&mw=wyF)geCd+=mA3!L|E7r075KH9k?<@HJam3PZHphGSSJS6K zfv=2}V|XI0XuI3K3Cvw1PZSg{-lw3P`8c2_)FE-e$!qIN-xr$JbuP=Dzu?79PxRt6 zXfM(0N%_|YyD(bn(gXBQNM-X*y@x&5q7(lGuZdAMs+qM>61T| zmv$m6jn@7t@_`lI1gQ!J5|nO&OP8B_9C@SCjPy5JwEJv;xTN{uWT1;1X($UC3Xl(> z>9OYzq?fZQ`3#qe9Nc^;vqClbhTU>2>T=U+HJa6X>G(HsG3SphRE|#Vf5)rjd+e5Q z))UT_pn#YIF4cCqH7gBUg;U?b&O%PnT(S51E*G!7&J9Ti``Sw_+nu*&R9-mYF{0V&KHhxB z`da$Hnxr#5ncAQ+#9h*^9Nr{pvG>johQ_QGV?YWM7K9o_U4*N=*DxfY?t;Y?$9EB1W}m?umgo@8^%Qy)jlR(bZf&9R z^W&fGx7vne_y%3wL|Q|=zPFz~;Das$X88kzOu9vyV>3!?m{2CD_U@42rZ4{KHHx-G zbGaKTShPP817pmQJVhU_4~Q^UtNA|yUxv^j6)gmyLxO;?V|0=CuHC%r3(#<?C(pZdb1h`q46yp}Jh?;C&Qkb#E zbOuq&qmVe@`fGC?cUf7P)d>%a`cNn@JTRL8%AnoNFVOr~t{NlivsHAsT=IB#HYP&? zL%nh<_2B7mN*#K#y{9-TnHSY!^1_pjW4}_x$*4xCGwqw_(Ss;-yKdIl?i~0E9F^+Qkf&u)FKU>aH(PM|=?!SL z^EROT&0_9H*nYzy=w*B^@DjU06()4PWx+FX;(a?_t~ zzN)G@=P})#U`-hMFeodqV3_Yg5#o=Qz2WqY`k3(9n`cyq9h%M9ZewahlH-=e-7?iH zA-H=75W%jspnT7g!)P$8(IFQ&+pwL^dU7iwH5)yGXJGxs#@qGg;oNZymW5|G*~0|7 zSMEA)tO9;RK@$rq7ZF&T9Yxb;tb!UriCFkbzNr!dPi--(f;?ieTA#R1bTP{XF7GX}G6vvBSrNVU%XNb$XvulUwf9bL8kA2v#lHflrY9^g4gJEQXs zf2UljjhfwfT#?>R`rNWR<)zTZ1>FK@*9_wI=}TCTLpuW<7cZ!f>TTNK=0unjlszw^ zP=k&vM#&Fmx7)*Mr41AaV+K3lbm%X{QYnk^;|tlJd17PlYXfyYet@5Uef>s*s*bb; zEXQd9*4&&T@nPTj$d@_u_wU2!v6D7bPpB?jSi%*Eo2`7{yMyM1UA3pRqArtUtT;7= z&+qqga5y^5PTWT2Wb%XJFJIm=s8?ZnX9=$jn7O<{YuK6s+%DuUMOycOmxx@2JZ^Ni z4&gF~<@WdV@WSO#ICKt zg>GFoxZQTL+tyb34-1aa*&y>0=L$4#Ae~FbOGEB{?5p>=_%o?fnR2zKANTb!pWl)G z*X_7D3t0Sr+V=iCJ^J{R|Cwmyk_Zg(ZEY4H8pY0W>@&oxG|;>*%%p z^PRFgZGEPOMn>4!gBdY}>sMg~dUpKy(brpZ2+xIYHl*#rjHb})Re=T~w=4uheBC`v z7A^9YRU$^$n$xv^_FX9U*wYf~l%w)Sd{I4HN~72*4JE?gu6#h~fkO9i{FfE$v2qj! zhcZuBet{QdK}eg4IQ4*U{j9#oWmS#Kdv)iwP5%D91HXy9-an_V_R(M%Mxy%tDUE@9 ziG`+8&!#<>8Aq(j?4yq~LWwavyU5)usR2jGi*Y?Kq^t&WcHLNw#c$F*!e%J74j%mK zy1IM2)vMS!h*6wYR#AXPlhp;7Kdj>V${W)?Cn8GeJq6(II4urA>>h^h*pCc0!x|J`4!FeDR zVYJQC<;zoEeujS?)G=OSiAvL*tG7NL6L5?n&*rU@La+mfYY8C&b+v~9$ekBuWd`4L zB6pntK$ZD9#V|!k@*%#ircP0DF*eyZ-bV{qBH^Spd;n%ds??<}!bJ^ajvW~dwH0&~ z8Q}J2*q=6^r$6Qe%}x-uYJ@#As?d=HKt8sOu$?mNe#zdn^C!3^_YE4KU_3pmiD%C5lTz=voJ*C$yKZw8(Qf$PH?f z2X)V$zR$UJk-Ot+mn>hd^~V#CfHZ-ytVZc}@3`$HkbpGrj^e%-vRRNU)pQ&7`QNl; z`t54^sfwVRXC@$Pc^`Ku7=nq@fIBg>2^YV+e|TsplpfI{CN~b*5%B2Gc{LsSc`1aK z8pQw*Y0at8oF)se-n3jUNel5l+9IEk*V5LffyQnS(tf)NT$t0xCnr!}fbE^wfBxgc ztw6ygY(u)bm@|_d!L1)8-KvB--AH1=XULFEdkmFtB9tvY`WD+g9;*3>EXn{_kFv~Z z1hp@gAIl912m>kh3fXKd`v}q_5?n6Z9w|RiM<||wR9t8;nFXB4j6$W4Vf|Pnhj3suCl_C6C6NH1{#n%wc4NWI8=T=u?j6sS= zed7YJ$8QP6B}IMBU5e8 zgdS=ZNF`10S5rnz%NUU1vHn)G(^e6_lV1bCPJ5#|%{qkbK!GtDM~&ke0oYbXX`WqG0RRG3*@vGQH$pWXr7=Z8`3STEY7)Q)e)p#PX-QNjQxC%Osk-3z=Z*3+WDI!w3@+KTwS5rYXKM*+YF8+>fx zwhjbjP(K2ROo~Agz1AT8n8`C=%ml1TNndqHL!&yS0WvU9P&Kc?vu{Id0F_Txk;TKa z?;asM+;o%de?mu*TU8^Vt0W-s4X>of6T-bk0NzH1M@HTYx>7?z?$YnjR3071=nasr z+;Td&uYSZvhNgr({&SiD%?+sF%A3Hc#5WM*l3Pz2tYGe0-V+6=Max=yoTR7ApDDjq zRPbO!B#b>zc1z0cA3vIkD!ACG>lWiz5SIu)$kz|2v%BvdIQ~j9nyDE}yA_XnX!7)I zXbaxu%%WGp*qtE8zPo^oRq*cWexE=#&Es+2dE2fAps{98NcCsD5QNp%b?e?fIibp| zhXjgWq`xb|at?qsc|`LU<8Ey4BKl(UA1DJExRFcTwi#3aI4{?tx=J+$_!Q7DC7dB? zB+K1AL-yp;7vY6gu;KG(v!2^{%zP(S_+O%2`1s`O^UI5|V8f>{#rEcgfufN+y^E%A z=olkRg*&wbZP|lHAlVE>KUY(g4V@R0<1C5~V519a1ik&yR3+5HmFGQ`70PC95z)jk z$=Sck=k`j4b$4vNFtQ1EA$*4UGYat&PgP7x$_b$r0zo1Pv!So8-6110iB12$Bd1bF zWI_VO8&nq>#K!Z<3|`u(F4|G%NmnMNH74mF`krl7CGZ}hy|-}ZvAlJ1mE@4~>K`7z ze;B#{!rjk{@C(0RnXecZ`LgP$45-3r6J@+-@hp>6!&#$YKj5k8S+akhV z0?8%E3bK~gNjHTMEEB$+K~gItulNV-d-wg#12K{QFMnJO6W0CUl7O#7$@84*ikOEO zKs8`(F$Ok(UXt2*>i7=uAXap6N?J3K()Q7e4vZL{z-$rBlu~? zpb>DDlH+!oDsqnBULtfP1}qy(L{Q5LO6?i#eh*0?gjr8G`Qz2w#pHIKefto?CQOHf zvMrYG7mY3MuXK&HV$B+bpOl$k`po0|P3DZ_;!y;j1bnb1$2KDM0wu(4q2A_QILQ>{7Z6~n!E0yxnI8B`v{0K zlNW%3bfe{)Q;a3^MW)oUZjtti^jCc%rD(?1ZQffx_%kjTk^$WwFOV&pL5Zv~(0kBS7>NlkglSWJAxIu+a%pQ@Ic+6lH(t8yR@tW)gRX% zcWZk}(K>SExSE>5t2Z9vANqE0rFAZ9R_3<;4>NEYHui{fMP*hh3@a5M8&=vEwP(*I z65dq4&{tuvUX4EC1^=Jcv&4`8ADDRcpM1LVf!wL!Kie-GoiT1^V=JZ+)aQGRBoJTM zX8nJ|B#r-DH=(|CEzbea)=I9wv6xg;RZ#}Q%vb=3A<@e0$?=2Gxzxod#X#oUG!9I5 zY@l69TwHuE;0I(Rc+yvwt)a0I+Y{nwjA<%CozvrsO0f*((8*lm6r(<@LgJ94q^+0N z?Yag3cV+%0(kuL7W7=+HU^nkC2&l_fZ(fHvH1rcN$PyEv zFvgxrM^53Db4`V)9Pu}jgLuQg%050yAo z5u@C|)BzQYMX@IjYTO#hQg5)eZJxbp&=YF?hI9!yqfXS8y=UM0vuzkH1B18?dPxNH z_|t_aUMxFBrm4?he?oM{m*K6cd82pQx-07@0Tx!f1fK5&&lk=tg3Jtjr;E(Cdg7c1 zOmH0nKKZ^zlX8SN55GW2Kp}V7_xIm*TqH((DKh|S5-b%>qG5~ncZ92P@UPV~5H2A^ z86_O%NkS;zYXfN>nD3_GyBI_%9OEs()`>t|iPk~o)@?fN`dS{*u4;_GIs9P{DtZhH z+dAP3c?RlJU{G!nCRr~lWs&+qJ4N_=AmReNTd;)J;~{m7)L!j8H#0TdQx({Zr1x+2 z8pB!G4IRTFpk79ADraA?D?L5?PQ^l(QiG+k`>@XF_;`3Nred{0=B=cp)HK%n;!=#q z_b3R|MbG5xN?9OZc1hRc&(U5Ga{PJ=1gokxxIpWJ?<#mbQ|rfw;!4HJvMl>yFYzM} zFQKvdPDncJLPyE6YAO+=ogy2lD~2W}B3vn(XbeL15+AxL%_0ohLfVo?615T(pC|tb%!Y4?ZbUsL$s1Lk=nxrAk zOgbteQE=(r<``_nL<8kpDYO$8Z5bzzBhid{LskdWle7o7_{}}(0X)2}F=ulbOk0L_ zG`#5Y(A^%#f@8_Z0K!!w7FJf)z(cQTz z7o_x!8#nM=xO3149d}xy@|+Xkvw-8995T8MSauyRggSjdyP}VaP@137mx^UDoeN2- zNjh8DBU(7PxeIXJSQDD}(L4rbUPr}GWd-@^+O-vlY|&kLl7q)uq5hlcJtu{CdalY` zioh&k*f@-igHoTDf*pYGw_kMQpiH7R1|bD`B$aTF(A}?Iz1qs9h>^Q9J6Tp|o@(AV zD|AhJefs@Aji!AsRegEVC6A-<>?G6gCNq}Dw~1}>0_~p#IipukBK$-siM090cf=jA z$qS`3I2pic$3f`#hC}RkQ|!h4V-bw|uCvoF6lZ8AcXMO!ruTQEA`Cykd?{Pyl~u$@ zL)G=oagFC3(kQ4QdKBuO!ZcCl{c+b<2d%xmy$y<3R>Jx|9}~nVH$7L^U%IrwMVNM) zakqyf;Uk{WlVay?n#g_>2=Fa0kijHH{TsFnJ!zbb5>nQ%0Ry9e+bYdXs;b0+mtB$# zxmGe(Pr4SDn2|WvH2oUMfAej&E&KKBzoUSpcARr!8rC71Zw?B*b5Wl>QXAPD_8LxkNkWLF!M z2tJ_RXqEIMBpV0x%*b-|o=2Rdv9tG~Z^@_fkTkcClI9L|m$f3#b*hK|AlM@C6#bua zv|?hWpxuTZMAEJ0=}ZYpVgR-De&HbqK=-4nvOw{N$X#?DwQ=CL%*HC zS7cQab*0AzOekzyLr{KeHJ1QJd+rVC;SHqNaMYiao4PTBAFy;G8#Y>bokI&OxP-Mb z+i~Q{@R=jPqmie(zcCr>;*SbzQO`m=JCp!61G*ERMdsnP!Qa|6-+smGCC(p_mnThnN!{0&ruXRX zX9~vfeXljiuuu>QsSfk$VjA;8mY#Htx*B@!b0~hv`(d%7kuOU$;1aU z`>G6Wfr65=R@h-yx`faW1^CZZ<~I-lD^oB>eHdgxmE;6+DY8ZP=UjVidZ47cw$$X< z>P5(Y*d)nSABGu;qHA1#=-hj{Wa&~6eK-(Mw)RWk<&~|=B$jBGPd2Ev-zwq*7`zn=W}b6~sT0qUR+B;03TQ4ny6e+2J^=CgYo34`oS27k1}yx=J{ z2vMeJuxyo`1k5Lt@6-6X40uAc{~Yj;~hvIiUd6Z{ow59m)TK){zce7*9Nomc)S z0^{?S#FW=fTwLP-Jv0p^h`uNL3?}FQKvl`RdGklCZJKFVWtooYA=xGxB+8ZM)2cPkXB_6BrxFVU|LA@vUNY z{;l8|38<7@GTzgu^{pMCphhsS#5-r8w0_WtqG$ZK?>P_8+|GTu>jgC$08!!6GIgKd zLjw#5*ZMIsE^37EEtFtd2^?H{zzyS%5`Ev%`$$$#QNk0p6iNL!jWs6OwKars@TY?e zQN0OAyO#m=c+`3-Sb?i)XL;Kr4CM^bXnv&j5)t+oK+g{tjZ#;gjO+-pYZsvf#3SbG z0#H6$S5spfdiC11{qGZkS%pY`FI+C;B#fpsGvnb%gH<>U$jN90`Fj3N!4taN zF2}P?(>$YqDCsR%w<$vPjW!;@3xll1H5&rIVxFtWIF~w*wb7uLrMOO9nBo52P&OCe z#500%LJ8f$0+9gFJQopS_pY?%NU=aq4{{sfx#s8>04d04IJSePsac7n;BpG1TuH&* zQ&7DTxQA@r&~Lm85XK~93=hG~(nA4(n2|_LB!twy4;52(?GHBN1g`vH4{~OfOY`#P zmskWgsqHSgxbP5fVEPYWDtHgL4GeCqJyNe~^;J|rAVLCzf*3t5LmjU$Hw9UF=LA(V zY?n|Ul0z%bsDf3{YVO)5i=ze3N&b|iNs8t@8OKMAE%6*5iRrkg09y-F~PS>UQV+;Truk35AYS} zA#E2~U)ec+Rf212By%X~X30jEe~t<`(`+Ixbt=@W)6X;i?^yu|Rl-df0Yc|I>;^3g= z+L;GW;Eb>D@Xs>yCR^RwUq6sDu6Bet1W;Wk(V=<`D3~0F^acSonHGPmmf#g2l_wyy zEbGAB+=<2P@(+y#4AlT*H@`)fhlDcF(QzuZ6x2vo8PH2?+Q+Eh>YZ@)lrW*HXCNam z-hOG-t>LW7m49_I*w<-qZ9-<*F zYmX`EP1;|GJ9k_!_cuqlfho+2*BoT3<_zFgf5vh^0v|x*;MP?gzyzM|fdOJbt%Eet z;pBBZluAD{>p>#RMfJQ;G^bD-PK7L6vLsP1RH_50O}I?CMSe(X-oLg+Uv{EU&|K$p z`xY#MDB$v+5fWZ~*(YL3ww}^#KA+~}&(~*58#~l8$)xL=TvICS*2tGPrP9)-+ zYjSIBS*nc#c1Iry4=GVM^i19SYY7ugFrpZ@m1}&&X z&L93}iTex{YY_q@+^)c$i7pn~fWClib~s8({Z;_rQ$iR*>=d1Qr*l7#*;THEmQqKI?_8B}tI69Vdi~~fHpwJP#4+CGqu`eIuwKg?}VKq&mj+<85^awcskKLri z+XJfxErSn4aH!%&5sTsf`74qjkJQ!_*<@A*srQG@cX!d}ldA4VWlCe&e`y};jlF3ay^MzgZPp9|1L!Z@$LSJKua#=E5>B5tL0(f#0Q$Q51l5s zS6W$~V+YQ7HC##HlySj|-1AZdV>Am@S21;Uvo6pqg#P26kPqqaFid8!_;M>?q1cX@ z*yOr@a_7}V$%=NDhsYCqF%l+H1qcR?l6lyF1sQ0|NaKAX`P8piyJe}vXG999074Pp zQ3@;0j=qPHW>5b#syCPr0f&tv0kLnB83dPCKMA`LO4-@Bv8r5w*0qtl(*uGqR=qDN zA(~sx^*oLf$+D_~TQ>|~saCrSfLiPzVwM5IFa~D3Pqey;86>WoClm)01MQ_K&a&)5 zcg#T5cx+$|J9~t=s8MRcKy>tJLiY+bUUXjt0Xkl3#tym8zI`XmgsVdr7$IT=ym*I!BuzOU zUKmFI4d-$yO6~1S zroR70Ri9~o`l~ZgvIIviQ9CS(yU~vCvul~erpF~XM%RrqkgqA zi(eH0{A>0CMbpqido#ut?-*Kel1PZ0B2vg%Sp5}mLedK*Mh=KYEBfG+EPNyfNN|Fn zxB-``_SZXcLDh?Z4Wcx?^$xldaum2sGuh?$wm`b-c;oxc4Z;Sr?m?li?=kA=tI7;J z^q9GvvyhMTI~wF}Lu~^QK*b{BGw8dlg>bY~^gAGl=EmfGs>BXG3w7X^a8%`m7O|L% z;}>CrPbz!yf?Nv6QO`J%RzZBKnutMSh|_6#AN^!Mn8wX!*z=LjwQutrMJoLKaaVdF zp%}#u?oq(5G6gomt>%R+fEJg?Z0l|-ulN!UVlWNI(qgfO2zYKeChEn3OTfX1$X*gz zxlp7eVu>8i$M=1UdEa(6K&kLW$O#IgZ&eAz3ETQKh5!uE_ikRd?g&78o9&=Q5Gx36 z1DbHKjY>GO4(Zhkto8T0n3(5lFb$C4G(qeTNCMf+DA}MY&olNAoR*P@Jh=S$5+G7p z05zyb66(DIjB-MvAw9u!=ZpZ0lj}XQvghezQW0ajbD^XGcmRz8g z4K=F3{6(2<)6ZJ%a{mJaHC7<*6qD8B`=tEQf@~?peeZG~*-cNI);%cvxsiOXk}FXC zw7667jILzFjIPf2+BwnNg{X-f930S+jlIS~(Q1IL^%+qh3?D1yy_?ttc~@SOClo<= zgaFZIaEs9o$${uL5d5B*}0n-TYNTH>Mce9TF zv8Z_p4H6+jWUV8jEQZLQBf5+Z2N}{zpc_xY;{fRLf{BSp*EB|JtkE{ZR~aeqn;7Ov z*Vz-7U1LP3$Ey%L4WccCJc||D0fxcjto6VF2QoutM~H$o`PT;A&DJe0Hk!S-ujg?& zN28Q?nCGsP>Gl`N_8YBrtX~ml5Fgh-n##baR=^FTuaOua(~Ea!7#S~7*9NoKnMX>2HoNqdF{&)MlI9Cmdk+IiUa~ekJ1LhdSLO6%N z{#sVTANedA4AQA3PzJ57LI7!V+j_#(BPmv^o~U-tnrA$nDuYx;P}6BHml zA>;VJ1Z4=Jn*ug70wAEtR1ks{jcu5lBbCc9oo;2hK4?O zO`U%lasJZRyWnMN-k0F2n6k_;IC;aZ(l<$_dm1gz81|eX4iS^}T1^C=2;t+oTK_UQ zQLp{A*`w%|K2=MJa08Fc;tsl-WA6Sm)BCr%4JQrtV%GmVImPc3wVt=JFMvc5$H*4P zaa5sw$p&ps7!{B`>L-!5L0a-7qDuLJG)wwT@ejHGAxU4j${i^p&La4wQa&1rsk~3y zJ%7f|%MxH~wGYS=oO$DKC2yipMrflj-1Hi5D^lbTD9aDQ=1-1a_J1LP=|TvunxO)? z)uA^M2kON@9F>${Owbv&5cqMLen;&(#rhCJ=Tr%7s>M(x&5zuQuezUmtRaQ{5n1MR!u^e5cE)vdEU^w`562+ zy8YV*{?6Q-z!>NPC%}?fFQi>Mwc2UXq=&W2XVn$)p`;Me5(pPb(G2PtkG3L%RN#8zbN6N#HAWhn%Ocsg4BykwI z2ymb#fHPze`I;y)8`H~MEPq4C$jHPW|vM0>MR=(v8TV*Dbf*{?!<5m6zy7F(^HweIY)M#;hS{*L@+60i^MOXpWL zfFz<DMo*?280?Y%kYHDo$H2H=?{w=!fo8!7iK9Cag z`UnjN;9EpcpHDe&?o;r*?*m7v*?_QiIdv)us6WUsj1!FZo$e-Tb}pQipbPpvN?4cI zgNMaw@<@$MB$Yr`UA@qUXDR;*V7>ddfbh+@@KQDN>-g(LeyjA9JMnh8Pj@C4rGY^I zEHP))_~-_8jZDBg%}0AZ*Pb|!z8*5yw`ahOm`j6$ZE!z4OF9 z01V}QvMxcEL31!OKR2ONb&EcW@itJ`jpJOQ;)yn|tgY1^oe57R&7Ns1jpMxr8j{`< zP%q@QIcWMkdw>Qux?#Yw#!2m4_f?^tcQC#n%d_uF;=6ahAEtXgyFcxoeb-BQpIB;J za?<|$26f`4E*Z{i{my6bN+kC$BV^RFQzaVli3I#*VvpVtV+nZSfrL;5bH4Z_oB)1i z!xjfYq*GEiB@y+EDL}don@zOKGZ1aYuSg0WPc<)mW>pFvr+34Oa-=|`^kW3!T6xMk zj*#skMvsZyumck;sh$QR_)zi6O({to#SMpC z8iNBGZBy)9$u@)czPpL75&DM*Cz4sk$#+eT%?4vL4u%Qouu`RcXNUm_KFGMpFH9CO zI1rT~(IkilAlr zW|~&El@g@nW}qOJSV)3U9X&q%r!S8b_qs0~eHRSz2AV#H+mG1KB%hW$ z#MnLUQ}B7x-Em)5sOWv2R)x?|%;vtKrT{Mw>D}x~e_vn4tc^sI($LenFK0M%`o}G2 zj=16XSDPCIuNlOq_Smgr&%JhyymK9nnY6j}TFCMP;mBV=%UER6kloc-{NvXSp|wBY zN6@xn>EIU&GXEjbk0yCf5ay;)2^(`Y!Upm4q9^ft)%t=Pg#Y1dB4N77qnK_A1#6?Q zHUQYJ0e*5R%z15?YvwupiO{uc>W@d4_TbM#gebX34g`o&Kp~oL8Lj3qybKjk}M-Hp`?0NGy79a%q-mV8BAuGC9CU*`QEvT3ASx@ux!`V3t z7F-OWE8jYH?=C)jIi0QRckHDFmVtyfgpcQ<3~T@9)7kO0${c9?SR3}=Q;?Anp9+9a zYyn>*{f&i#!&z$lLBc$;AwYFb*`GX>#lr72U$gEBKPYDKoQj5pWmHIBp5{9|_ zbqV*8wYH4 z%fD^hck?dMcd>+A3sryGSg~49XQvbf<6fI_%y@gJ(ifB0{P}ykHyOVqjBFcsoJI!wM`0F*iQe6^G{% z;;T7u*q5~7`Ze`rPW6oSno31Q;xL)r-;RJ6vXde-I{vJ!XiL9lzA671u7%zHjXliW zaocSO!xB%}n`q}LnuGretRmjY$)kI$2LIfJ1L9m{9;NQNB*t_8IOV&-ersoDeTYI| zTh(nI$DWFMK;U6>udxRM__5IVyO#*ff7ByZsEN2Sz^qgviCr)4^lvM2)(90q+oanSaiAQa+Eaq3nr4)tL)mpu$WD}yy+aO zyp5%P^AJ`s-OUB^Wpo9ugQixJ8H${w6f^rZ`mt_lYm8lR3_cS*GFcD@5{V{Jp?@j^B zpuHk!%<~4}+i<{xd|@ttAMhmxsYiFCoFL|Iq9S#S2o4Tr6m?oOXQE7Y#{;Y|=Zz^d zC(JTH@E|o+u1EV(9=NlE)taa?)BGdV~I4V(k_wwM80)dtzChTbF6h`%XA{tVLD}ztvyEDL1+IxC8Bsh#J(60hqzFNb{|2TL7z*;Z6_l&z ze4Mh;DASc$?(zSr5s9`fY~?+(xbvBqtLjM{0|jn^9z|5fAF$a)JsMq3Bt5J8Pi#oa z9L6ZIzO@F*rLrJ`0Tui{7{{!H2$>uh=Z06E9HM1y_~YZHOAAEKQ$xZdOl4CZ4Bu-U zq1iGMn^8!D=c>_R^QG-)$PmVeNn_$3#Qo){+AXQFdGL=zg~~3*&w3# z=p`1&sRWTEK_A=#=qAEH#`W40fUw8~1V7YiOxkCFh0cL`{048fC7waUvXi;HIZRFA z+RI^?#Goa5rz{eLbe!~lWfCLeyt=A4iZpMLps7IPOUPEGU7p{uloty|&I3i6!p8Q3qYU$yp+)@#T^5u?6~*bl`99N+i)>VB3cwjay?4Y= z{7gjTN@E)jv`FdF|F5{Dj2O{7}^+l4rvP=zX%9^U`;*>mKe+uA!u3W~y? zCpcLCv^Ds7+2PpdJ=WEvoSe=KwYpTy&XqE=vg$+&i7VgiwFdb>0wlZRK208$0^NoB z$*(&;;@H;Wq9TqQkc18ctjcCIc~6WV2-Ht#`s7pPoN?`O@M?>F3(>=PpkX{WB~ojMKeMgi?M-`PHRbmTXN7T zu=%Z=xYoH>WDoVh`^3EnSuegipah9;pdtzicKspU=B~OZ*2;$RD}8y^IgWScfhn-m z9Xj@z9wNC4B%K^?enHo_^7(AH?SncE^V?sQ+8ns7Vp2`R(GdoZwXG{Ttde$oQ#N?3 zq&h32>L243mp6NvZ)M^oJ}rmrB}+J$s#&wIZ+6bLq0b9X?QgQBhd<-IJ8n_;YQW9+ zV*auErxRUm6ZyZ}^d88Mln{4jeB<#$p?VsZPd+}rQH70NY0?`?Vfr@=ddNW9?JanZ z6iz;-04NSv$R{9gQ17G{_8;ijzwA2F!%?X!+l*qNp;MSNNxReAn9>B8uqz3=Dodv_ zVA=Kc^(Zo=Ab>&5u+(=o)3=w?*o&c z0Tm@|goi()7{-Ldi`cz5Wh3ebF%BCZSWPXhn%OQCK0F7Ue*(ERh`!LA)rE{@neSu` zkj_BQ{V%)vI+;>*DibXigYoEA;4qWt96R$nIVje?dr%lfhlC8GrtKlEZxNWekatg9K2 zHD35K6B!u^c0~04^`Ad~u994rblK}~ETHH}7opRy+m#cSjqJxDLVmr zO|3RQ=6DVEGDl*%E^7D*gc$FR+tR!+xI^Uw`RgXBd6eYb&?fAK$db?ubYCk)?Tgli zkdmHz23e4lk$~Y#5VWtO_8cmiVlX&I;4d5IBJ2swUfE#_ylGKtC(7%2!bNJATYC%z zIdspc_w9>=7)!dYK?~B0xc}^A`O2xjnioLnYH*z8_-DC+BEf+j+Xo<8kntQ%^u6i5 zU`nU&V`c|1Wf;uDYpW_N396+lS8`yiUQ4p7J$NX|$rS9!ii6mbyx_&SrS0w;ta4cv z=86c4p;}^n$j;y@#y}-7h_Ufu&`rsoe7Rya8L@gEBHEB8S!fL}zL6D{EZ3lj5GjKp z2B=n~H`JLpzj1RN)fY!)*ps~~_0c>?JH3Irf$XLE985#IV6eOZzuGJMI^ij!$55k( z+v}FpqMJf(uQ^ON;3T(J>C-cy)K=`e-2%|DwSUf=U>fP17mU?zLT|M0`fMlHMq0BWzmu*t`U34N#k#iApK!NPGSJ2k4Gm@aR*6pUkso}% z7>_*SnHrDC!>S+MpK~)-F8s48XxA25hDty`7fqrcuyJY!G{-pVpa-Q**YCZO;*HP1 zZdbZt8o$2BN1(vy@rdC};Z3VFdGR+f2R54A>?}YHp=Bm@2CEK?-3OooA}Q6zINuAM zwcNI~Y&IHwO{w59=>>33rd~X+tsTUrS6T8;`(cXIoRk?NDf*TZ3P*4PwB$9*VC>a5f95x^zQAvX2 zoI!#C0g;Sk$w`ujoD|792m-ht5A(j(hvuV<~f z<{Wd3F-6`uF9<_DjIbU(Bi6p0ZTg=9Uw#l=;TRItyA-_|8Dz$Hgp4?A7zG4e0nvrH z6?xAc4mrhhWVWen*H6heX6HIRNNzKTba|OYnBAJy!-hm`;h4<;cEP~JbP7pO6hnCK z<0?B2C=D{Dr3UVsLq`4dv#a$G!%ap;#siLHL<7Gmt?1T9^~M>(6a)#8M~P#Rga@t( zP0epPYvmj1F4?1R$9R>Pt-;0IB?7QWUS=cB0U3;1oJX{Q@k_?xk-Bzf!n39jNMs}u zgh#vZN8{;Jo!}O@lLgSN(nTtBE#@nd=%}c`A!yhlG%|5!4i1&yT^?N6sHkBQ5)!j_ zFfyXNtp_M8g_A>j4U7hLD2Iz{j3L@>qC5o)(BOrWFJGN7A zjiEsY1+8<{1nw{O0oPW{Qb^e6xnCUU<=Hq{j{d4us_o@kLNZ+SnAC(O#l$>#4t-#A@XXjc!O*Mu@W`%=|{{FHFU$XH=|0 z=s1p2hIg*ib|>-hHW|ssIcDDec+7_`J_Rp`;C7=$i4x-9)15ycXCsTF<}W0;)yp|a zxMP2yPXb;!nCi^TzM1=-_|aj9&F6>{EW!L_{yFlrq_ECr&U~vMu0X5E&v&j<81-3pb!@cay(=pie25hpeHie z24QNGmNSqlP=GS$7*d0*S{6J7af(GSK`xLEI=|c$*mww@@2T}8uFqh;Ae!kIa zn90|70i0G&A?HuqDxTkCwDJTG$1OLKGav+%LAe4SeIK3Z^9rKqDcCA7;3!rmgQE{A zF_c-X+6d3N%YD_UX1hI-_z!%f;`!J$jvaBm@6bHF+eGh~=ahG7|L8)Pf*qrLx5*SS|@ZWATJ3LX9!iV(yCj0TS%PrwGvDtH8`2V6+R6#PqY zIzQ=_{f4~+%EBLj`@s?QhQp4Qwwd_64AwYDKnGgBsYv@5q;5rziYFjl<>loKBdayw z^!yINnBDeLBAm!)5O5$mMF33coUEEVf&#(z54czXZJ^IpBip84cRPYG)+fA}T==Qh z8kiAY3m`|Hgs=o;WJ&N&*&0Ra%n;C>#W=t{1ZmnNwfj%n8YD@L6$TrIvR(_AEp+o^ zW+sv)104kT!H=A#fL^-^p9GnfZk#aqI~lr9?ZC6jYd8Y#W8bh7SB4`uBR=jiAN%TV`i3@QPg-x#1D8GEk_ zyvad`opAl|x~^y;YyTBo<`f}Z<|y>8!(D(VcHxuGaWy9aCG7Pz`m8|!^&t^ck{Qa3 z*#vN>7790oGC)|K2$sOw*g>WN@n*1_9}L$<*=;?6N$tPkRtJCg5oBtwUcFNKTsQNQ z(&N91(0UQR?{$xiz0jcONfTkDxVA}ZUafFHslhg+vW z2QKRQB)i&9TQu-iFS)*X^X4$*u;8oIeT)WNWd=gfj;*irx#0O0-erq!(}5{8b$@Lm zHTowoGy#Lz$H2?>gY72AN{panY;0`w^fCp`5MUv1{{+>p*j-wcuL(VyP(i^)0-8R@ zI%FdL09leSW&dWTT}S#xyqQ|KqOL2S;lhK0$k1pX%v{A`n!?aCz{B8GaTdmoQ~}d9 zorZNuR8dq|*c0;pA%v<@QvI8Nl?0eEdq5J8c=s+o5s~si0gv=73BWIeW#;$q--vMu zV1Z-cE%h77jI%)Ta_nS`|JK%K1Z5dW-=ewQK%*~YH6)9h%1*xy*L)|U8(aqVA>@Z> z^bjHy`&T#U)Et2GAKf5G7t{fpMy3pqqf=vtFmR?hVax&)%Rt#@UaC%qvX9v3q23mh zi3oRpeg>*GX61xCN^VO7Gkv0)Hc$*9x

    c{(anc91;=_JWGg%-kGQMSVZUdIC#>C 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 Date: Fri, 21 Aug 2026 11:42:12 +0900 Subject: [PATCH 03/12] ci: deploy Ionic 8 and 9 demos to Cloudflare --- .github/workflows/deploy-demo.yml | 54 ++ README.md | 7 +- package-lock.json | 1505 ++++++++++++++++++++++++++++- package.json | 3 +- wrangler.jsonc | 26 + 5 files changed, 1587 insertions(+), 8 deletions(-) create mode 100644 .github/workflows/deploy-demo.yml create mode 100644 wrangler.jsonc diff --git a/.github/workflows/deploy-demo.yml b/.github/workflows/deploy-demo.yml new file mode 100644 index 00000000..161bf422 --- /dev/null +++ b/.github/workflows/deploy-demo.yml @@ -0,0 +1,54 @@ +name: Deploy Demo + +on: + push: + branches: + - main + workflow_dispatch: + +permissions: + contents: read + +jobs: + deploy: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + include: + - ionic-major: 9 + ionic-version: 9.0.0 + configuration: production + wrangler-args: '--env=""' + - ionic-major: 8 + ionic-version: 8.8.19 + configuration: production,ionic8 + wrangler-args: '--env ionic8' + name: Deploy Ionic ${{ matrix.ionic-major }} demo + steps: + - uses: actions/checkout@v5 + + - uses: actions/setup-node@v5 + with: + node-version: 24 + cache: npm + cache-dependency-path: | + package-lock.json + demo/package-lock.json + + - run: npm ci + - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + - run: npm run build + + - run: npm ci + working-directory: ./demo + - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + working-directory: ./demo + - run: npm run build -- --configuration=${{ matrix.configuration }} + working-directory: ./demo + + - name: Deploy to Cloudflare Workers + run: npx wrangler deploy ${{ matrix.wrangler-args }} + env: + CLOUDFLARE_ACCOUNT_ID: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + CLOUDFLARE_API_TOKEN: ${{ secrets.CLOUDFLARE_API_TOKEN }} diff --git a/README.md b/README.md index 94fd4591..ff6cf566 100644 --- a/README.md +++ b/README.md @@ -109,7 +109,12 @@ Start with [Installation](#installation), then [Using ion-item-group](./docs/usi ### Demo Application -The `demo/` directory contains an Angular application for testing and demonstrating the theme. To run the demo: +The same demo is deployed against both supported Ionic versions: + +- [Ionic 9 demo](https://ionic-theme-ios26.rdlabo.dev) — canonical +- [Ionic 8 demo](https://ionic8-theme-ios26.rdlabo.dev) — compatibility + +The `demo/` directory contains the Angular application used by both deployments. To run it locally: ```bash cd demo diff --git a/package-lock.json b/package-lock.json index ec0a427a..2a0b7393 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,10 +15,11 @@ "np": "^10.2.0", "prettier": "^3.6.2", "sass": "^1.93.2", - "typescript": "^5.9.3" + "typescript": "^5.9.3", + "wrangler": "^4.125.0" }, "peerDependencies": { - "@ionic/core": ">= 8.8.1" + "@ionic/core": ">=8.8.1 <10" } }, "node_modules/@angular/common": { @@ -156,6 +157,1110 @@ "node": ">=6.9.0" } }, + "node_modules/@cloudflare/kv-asset-handler": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@cloudflare/kv-asset-handler/-/kv-asset-handler-0.5.0.tgz", + "integrity": "sha512-jxQYkj8dSIzc0cD6cMMNdOc1UVjqSqu8BZdor5s8cGjW2I8BjODt/kWPVdY+u9zj3ms75Q5qaZgnxUad83+eAg==", + "dev": true, + "license": "MIT OR Apache-2.0", + "engines": { + "node": ">=22.0.0" + } + }, + "node_modules/@cloudflare/unenv-preset": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/@cloudflare/unenv-preset/-/unenv-preset-2.16.1.tgz", + "integrity": "sha512-ECxObrMfyTl5bhQf/lZCXwo5G6xX9IAUo+nDMKK4SZ8m4Jvvxp52vilxyySSWh2YTZz8+HQ07qGH/2rEom1vDw==", + "dev": true, + "license": "MIT OR Apache-2.0", + "peerDependencies": { + "unenv": "2.0.0-rc.24", + "workerd": ">1.20260305.0 <2.0.0-0" + }, + "peerDependenciesMeta": { + "workerd": { + "optional": true + } + } + }, + "node_modules/@cloudflare/workerd-darwin-64": { + "version": "1.20260820.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-64/-/workerd-darwin-64-1.20260820.1.tgz", + "integrity": "sha512-5F2/t7SVnugG3rscSe9da1LoHst+GiuVGPaE9BP6j5AonlFpiYi0eoJrl3wof9zDBIIgJZ87NjRj9TKjbbYgHg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=16" + } + }, + "node_modules/@cloudflare/workerd-darwin-arm64": { + "version": "1.20260820.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-darwin-arm64/-/workerd-darwin-arm64-1.20260820.1.tgz", + "integrity": "sha512-jFnG7715+r9FXRZPpuWWe5Ayd9v/IJKDODARg56ffFJWWtte6bFNi5VY3GazBM04hEmxny6OjXQBh3j2E/wNZw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=16" + } + }, + "node_modules/@cloudflare/workerd-linux-64": { + "version": "1.20260820.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-64/-/workerd-linux-64-1.20260820.1.tgz", + "integrity": "sha512-TbTYaCBht0OaOWmnVpg43hXVYtIti/Kg6lvO819H2DwbxPpK1BH0z2C+Y7ySrVJLlxZQeic5eN7/noqbP80hJg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16" + } + }, + "node_modules/@cloudflare/workerd-linux-arm64": { + "version": "1.20260820.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260820.1.tgz", + "integrity": "sha512-FQmri1UF7hBnnpeyC5SZJCAnsSRs3+Ykn9wlO5zxmE2qIgKfbJZ+toJ6qrQyugWlxE65juT33HU6aYLtutLJHw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=16" + } + }, + "node_modules/@cloudflare/workerd-windows-64": { + "version": "1.20260820.1", + "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260820.1.tgz", + "integrity": "sha512-BPvCuMxIQfA47wtYsGbBG6Bcar57Qs7yHqU2jWkT1+sRnL/741/ZbQGP9kVRMQ5fwBMuqNFmQRzAu8gSm7ri/w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=16" + } + }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.3.tgz", + "integrity": "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz", + "integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz", + "integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz", + "integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz", + "integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz", + "integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz", + "integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz", + "integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz", + "integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz", + "integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz", + "integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz", + "integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz", + "integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz", + "integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==", + "cpu": [ + "mips64el" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz", + "integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz", + "integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz", + "integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.1.tgz", + "integrity": "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz", + "integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz", + "integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz", + "integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz", + "integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/openharmony-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz", + "integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz", + "integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz", + "integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz", + "integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz", + "integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=18" + } + }, + "node_modules/@img/colour": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@img/colour/-/colour-1.1.0.tgz", + "integrity": "sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/@img/sharp-darwin-arm64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.35.2.tgz", + "integrity": "sha512-eEieHsMksAW4IiO5NzauESRl2D2qz3J/kwUxUrSfV06A93eEaRfMpHXyUb1mAqrR7i8U9A0GRqE9pjn6u1Jjpg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-arm64": "1.3.1" + } + }, + "node_modules/@img/sharp-darwin-x64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.35.2.tgz", + "integrity": "sha512-BaktuGPCeHJMARpodR8jK4uKiZrPAy9WrfQW0sdI37clracq8Bp01AYS3SZgi5FS/y5twa9t4+LIuuxQjqRrWw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-darwin-x64": "1.3.1" + } + }, + "node_modules/@img/sharp-freebsd-wasm32": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-freebsd-wasm32/-/sharp-freebsd-wasm32-0.35.2.tgz", + "integrity": "sha512-YoAxdnd8hPUkvLHd3bWY+YA8nw3xM/RyRopYucNsWHVSan8NLVM3X2volsfoRDcXdUJPg6tXahSd7HXPK7lRnw==", + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "dependencies": { + "@img/sharp-wasm32": "0.35.2" + }, + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-arm64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.3.1.tgz", + "integrity": "sha512-4V/M3roRMTYjiwZY9IOVQOE8OyeCxFAkYmyZDrZl51uOKjibm3oeEJ4WAmLxutAfzFbC9jqUiPs2gbnGflH+7g==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-darwin-x64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.3.1.tgz", + "integrity": "sha512-c0/DxItpJv2+dGhgycJBBgotdqruGYDvA79drdh0MD1dFpy7JzJ/PlXwi1H4rFf0eTy8tgbI91aHDnZIceY3jQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "darwin" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.3.1.tgz", + "integrity": "sha512-aGGy9aWzXgHBG7HNyQPWorZthlp7+x6fDRoPAQbGO3ThcttuTyKIx3NuSHb6zb4gBNq6/yNn9f1cy9nFKS/Vmg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-arm64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.3.1.tgz", + "integrity": "sha512-JznefmcK9j1JKPz8AkQDh89kjojubyfOasWBPKfzMIhPwsgDy9evpE/naJTXXXmghS1iFwR8u/kTwh/I2/+GCw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-ppc64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-ppc64/-/sharp-libvips-linux-ppc64-1.3.1.tgz", + "integrity": "sha512-1EkwGNCZk6iWNCMWqrvdJ+r1j0PT1zIz60CNPhYnJlK/zyeWqlsPZIe+ocBVqPF8k/Ssee/NCk+tE9Ryrko6ng==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-riscv64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-riscv64/-/sharp-libvips-linux-riscv64-1.3.1.tgz", + "integrity": "sha512-Ilays+w2bXdnxzxtQdmXR62u8o8GYa3eL4+Gr+1KiE4xperMZUslRaVPJwwPkzlHEjGfXAfRVAa/7CYCtSqsBw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-s390x": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.3.1.tgz", + "integrity": "sha512-VfBwVHQTbRoj4XlpA/KLZ7ltgMpz+4WSejFzQ+GnoImjo1PtEJ59QB2qR1xQEeRPYIkNrPIm2L4cICMvz4C2ew==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linux-x64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.3.1.tgz", + "integrity": "sha512-+c8ukgwU62DS54nCAjw7keOfHUkmr0B5QHEdcOqRnodF/MNXJbVI8Eopoj4B/0H8Asr65I+A4Amrn7a85/md6A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-arm64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.3.1.tgz", + "integrity": "sha512-qlKb/pwbkAi1WMsJrYHk7CuDrd12s27U2QnRhFYUoJNrRCmkosMTttuRFat/DDB3IlDm5qE1TJgZ4JDnHX8Ldw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-libvips-linuxmusl-x64": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.3.1.tgz", + "integrity": "sha512-yO21HwoUVLN8Qa+/SBjQLMYwBWAVJjeGPNe+hc0OUeMeifEtJqu5a1c4HayE1nNpDih9y3/KkoltfkDodmKAlg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "LGPL-3.0-or-later", + "optional": true, + "os": [ + "linux" + ], + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-linux-arm": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.35.2.tgz", + "integrity": "sha512-SE4kzF2mepn6z+6E7L6lsV8FzuLL6IPQdyX8ZiwROAG/G8td+hP/m7FsFPwidtrF19gvajuC9l6TxAVcsA4S7A==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm": "1.3.1" + } + }, + "node_modules/@img/sharp-linux-arm64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.35.2.tgz", + "integrity": "sha512-af12Pnd0ZGu2HfP8NayB0kk6eC/lrfbQE6HlR4jD+34wdJ1Vw9TF6TMn6ZvffT+WgqVsl0hRbmNvz2u/23VmwA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-arm64": "1.3.1" + } + }, + "node_modules/@img/sharp-linux-ppc64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-ppc64/-/sharp-linux-ppc64-0.35.2.tgz", + "integrity": "sha512-hYSBm7zcNtDCozCxQHYZJiu63b/bXsgRZuOxCIBZsStMM9Vap47iFHdbX4kCvQsblPB/k+clhELpdQJHQLSHvg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-ppc64": "1.3.1" + } + }, + "node_modules/@img/sharp-linux-riscv64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-riscv64/-/sharp-linux-riscv64-0.35.2.tgz", + "integrity": "sha512-qQt0Kc13+Hoan/Awq/qMSQw3L+RI1NCRPgD5cUJ/1WSSmIoysLOc72jlRM3E0OHN9Yr313jgeQ2T+zW+F03QFA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-riscv64": "1.3.1" + } + }, + "node_modules/@img/sharp-linux-s390x": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.35.2.tgz", + "integrity": "sha512-E4fLLfRPzDLlEeDaTzI98OFLcv++WL5ChLLMwPoVd0CIoZQqupBSNbOisPL5am9XsbQ9T84+iiMpUvbFtkunbA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-s390x": "1.3.1" + } + }, + "node_modules/@img/sharp-linux-x64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.35.2.tgz", + "integrity": "sha512-gi0zFJJRLswfCZmHtJdikXPOc5u7qamSOS3NHedLqLd4W8Q0NqjdBr6TTRIgsfFjqfTsHFgdfvJ9LwqSgcHiAA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linux-x64": "1.3.1" + } + }, + "node_modules/@img/sharp-linuxmusl-arm64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.35.2.tgz", + "integrity": "sha512-siWbOW1u6HFnFLrp0waKyW7VEf7jYvcDWdrXEFa8AkdAQgEvuu5Fz8/Y70w9EeqAdwDtfU012BhEHHaDqvQNzg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-arm64": "1.3.1" + } + }, + "node_modules/@img/sharp-linuxmusl-x64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.35.2.tgz", + "integrity": "sha512-YBqMMcjDi4QGYiSn4vNOYBhmlC4z5AXqkOUUqI2e0AFA4urNv4ESgOgwNl3K+4etQhha0twXlzeF20bbULm9Yg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-libvips-linuxmusl-x64": "1.3.1" + } + }, + "node_modules/@img/sharp-wasm32": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.35.2.tgz", + "integrity": "sha512-Mrv4JQNYVQ94xH+jzZ9r+gowleN8mv2FTgKT+PI6bx5C0G8TdNYndu161pg2i7uoBwxy2ImPMHrJOM2LZef7Bw==", + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later AND MIT", + "optional": true, + "dependencies": { + "@emnapi/runtime": "^1.11.1" + }, + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-webcontainers-wasm32": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-webcontainers-wasm32/-/sharp-webcontainers-wasm32-0.35.2.tgz", + "integrity": "sha512-QNV27pxs9wpApEiCfvHM1RDoP1w1+2KrUWWDPEhEwg+latvOrfuhWrHWZKwdSFwU6jh3myjw/yOCRsUIuOft3g==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "Apache-2.0", + "optional": true, + "dependencies": { + "@img/sharp-wasm32": "0.35.2" + }, + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-arm64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-arm64/-/sharp-win32-arm64-0.35.2.tgz", + "integrity": "sha512-BiVRYc/t6/Vl3e1hBx0hugG4oN9Pydf4fgMSpxTQJmwGUg/YoXTWHiFeRymHfCZzifxu4F4rpk/I67D0LQ20wQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-ia32": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.35.2.tgz", + "integrity": "sha512-YYEhx9PImCC7T0tI8JDMi4DB9LwLCXCU5OWNYEXAxh5Q1ShKkyC6byxzoBJ3gEFDnH2lQckWuDe70G7mB2XJog==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, + "node_modules/@img/sharp-win32-x64": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.35.2.tgz", + "integrity": "sha512-imoOyBcoM/iiUr4J6VPpCNjPnjvP/Gks95898yB8YqoGGYmHYbOyCuNv9FMhFgtaiHFGbHW8bxKqRV6VjtXThQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "Apache-2.0 AND LGPL-3.0-or-later", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + } + }, "node_modules/@inquirer/ansi": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-1.0.2.tgz", @@ -624,6 +1729,34 @@ "node": ">= 16" } }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "dev": true, + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -1024,6 +2157,48 @@ "node": ">=12" } }, + "node_modules/@poppinss/colors": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@poppinss/colors/-/colors-4.1.6.tgz", + "integrity": "sha512-H9xkIdFswbS8n1d6vmRd8+c10t2Qe+rZITbbDHHkQixH5+2x1FDGmi/0K+WgWiqQFKPSlIYB7jlH6Kpfn6Fleg==", + "dev": true, + "license": "MIT", + "dependencies": { + "kleur": "^4.1.5" + } + }, + "node_modules/@poppinss/dumper": { + "version": "0.6.5", + "resolved": "https://registry.npmjs.org/@poppinss/dumper/-/dumper-0.6.5.tgz", + "integrity": "sha512-NBdYIb90J7LfOI32dOewKI1r7wnkiH6m920puQ3qHUeZkxNkQiFnXVWoE6YtFSv6QOiPPf7ys6i+HWWecDz7sw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@poppinss/colors": "^4.1.5", + "@sindresorhus/is": "^7.0.2", + "supports-color": "^10.0.0" + } + }, + "node_modules/@poppinss/dumper/node_modules/supports-color": { + "version": "10.2.2", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-10.2.2.tgz", + "integrity": "sha512-SS+jx45GF1QjgEXQx4NJZV9ImqmO2NPz5FNsIHrsDjh2YsHnawpan7SNQ1o8NuhrbHZy9AZhIoCUiCeaW/C80g==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/@poppinss/exception": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@poppinss/exception/-/exception-1.2.3.tgz", + "integrity": "sha512-dCED+QRChTVatE9ibtoaxc+WkdzOSjYTKi/+uacHWIsfodVfpsueo3+DKpgU5Px8qXjgmXkSvhXvSCz3fnP9lw==", + "dev": true, + "license": "MIT" + }, "node_modules/@rollup/rollup-darwin-arm64": { "version": "4.44.0", "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.44.0.tgz", @@ -1149,6 +2324,19 @@ } } }, + "node_modules/@sindresorhus/is": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-7.2.0.tgz", + "integrity": "sha512-P1Cz1dWaFfR4IR+U13mqqiGsLFf1KbayybWwdd2vfctdV6hDpUkgCY0nKOLLTMSoRd/jJNjtbqzf13K8DCCXQw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, "node_modules/@sindresorhus/merge-streams": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", @@ -1162,6 +2350,13 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@speed-highlight/core": { + "version": "1.2.24", + "resolved": "https://registry.npmjs.org/@speed-highlight/core/-/core-1.2.24.tgz", + "integrity": "sha512-qeW2e1l78afw8VhRPfPQ1Gjj+KU5XFQ/OFV5ti6eTa9bruO7mJyZtA4vw0ofqmA3tKCkROE9xLk3VZoeRc98nw==", + "dev": true, + "license": "CC0-1.0" + }, "node_modules/@standard-schema/spec": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", @@ -1335,6 +2530,13 @@ "dev": true, "license": "MIT" }, + "node_modules/blake3-wasm": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/blake3-wasm/-/blake3-wasm-2.1.5.tgz", + "integrity": "sha512-F1+K8EbfOZE49dtoPtmxUQrpXaBIl3ICvasLh+nJta0xkz+9kF/7uet9fLnwKqhDrmj6g+6K3Tw9yQPUg2ka5g==", + "dev": true, + "license": "MIT" + }, "node_modules/boxen": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/boxen/-/boxen-8.0.1.tgz", @@ -1657,6 +2859,20 @@ "dev": true, "license": "ISC" }, + "node_modules/cookie": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.1.1.tgz", + "integrity": "sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/cosmiconfig": { "version": "8.3.6", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", @@ -1787,7 +3003,6 @@ "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", "dev": true, "license": "Apache-2.0", - "optional": true, "engines": { "node": ">=8" } @@ -1861,6 +3076,58 @@ "is-arrayish": "^0.2.1" } }, + "node_modules/error-stack-parser-es": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/error-stack-parser-es/-/error-stack-parser-es-1.0.5.tgz", + "integrity": "sha512-5qucVt2XcuGMcEGgWI7i+yZpmpByQ8J1lHhcL7PwqCwu9FPP3VUXzT4ltHe5i2z9dePwEHcDVOAfSnHsOlCXRA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/esbuild": { + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.1.tgz", + "integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=18" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.28.1", + "@esbuild/android-arm": "0.28.1", + "@esbuild/android-arm64": "0.28.1", + "@esbuild/android-x64": "0.28.1", + "@esbuild/darwin-arm64": "0.28.1", + "@esbuild/darwin-x64": "0.28.1", + "@esbuild/freebsd-arm64": "0.28.1", + "@esbuild/freebsd-x64": "0.28.1", + "@esbuild/linux-arm": "0.28.1", + "@esbuild/linux-arm64": "0.28.1", + "@esbuild/linux-ia32": "0.28.1", + "@esbuild/linux-loong64": "0.28.1", + "@esbuild/linux-mips64el": "0.28.1", + "@esbuild/linux-ppc64": "0.28.1", + "@esbuild/linux-riscv64": "0.28.1", + "@esbuild/linux-s390x": "0.28.1", + "@esbuild/linux-x64": "0.28.1", + "@esbuild/netbsd-arm64": "0.28.1", + "@esbuild/netbsd-x64": "0.28.1", + "@esbuild/openbsd-arm64": "0.28.1", + "@esbuild/openbsd-x64": "0.28.1", + "@esbuild/openharmony-arm64": "0.28.1", + "@esbuild/sunos-x64": "0.28.1", + "@esbuild/win32-arm64": "0.28.1", + "@esbuild/win32-ia32": "0.28.1", + "@esbuild/win32-x64": "0.28.1" + } + }, "node_modules/escape-goat": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-4.0.0.tgz", @@ -2083,6 +3350,21 @@ "node": ">=8" } }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, "node_modules/get-east-asian-width": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.5.0.tgz", @@ -3051,6 +4333,16 @@ "dev": true, "license": "MIT" }, + "node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/ky": { "version": "1.14.3", "resolved": "https://registry.npmjs.org/ky/-/ky-1.14.3.tgz", @@ -4107,6 +5399,24 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/miniflare": { + "version": "5.20260820.0-alpha", + "resolved": "https://registry.npmjs.org/miniflare/-/miniflare-5.20260820.0-alpha.tgz", + "integrity": "sha512-Bv1j2kcKKNwXLWuCx+j0xGt7z318mqQkJmEN6ellM9sCESbPBDTM9ofZMbKqx47jSnoGA3CiaUkAmzGVXUa/wQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@cspotcode/source-map-support": "0.8.1", + "sharp": "0.35.2", + "undici": "7.29.0", + "workerd": "1.20260820.1", + "ws": "8.21.0", + "youch": "4.1.0-beta.10" + }, + "engines": { + "node": ">=22.0.0" + } + }, "node_modules/minimatch": { "version": "9.0.9", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz", @@ -4564,6 +5874,13 @@ "node": ">=8" } }, + "node_modules/path-to-regexp": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.3.0.tgz", + "integrity": "sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==", + "dev": true, + "license": "MIT" + }, "node_modules/path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", @@ -4574,6 +5891,13 @@ "node": ">=8" } }, + "node_modules/pathe": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", + "dev": true, + "license": "MIT" + }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", @@ -5008,9 +6332,9 @@ } }, "node_modules/semver": { - "version": "7.7.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", + "version": "7.8.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.5.tgz", + "integrity": "sha512-Y7/KDsb8LjooZpwaqGyulO6DQlksgCncchHGk+sZIY4SBvUocMBEFH5Ur1fI4dV+Jvl0w6cjvucaIi40puRioA==", "dev": true, "license": "ISC", "bin": { @@ -5020,6 +6344,51 @@ "node": ">=10" } }, + "node_modules/sharp": { + "version": "0.35.2", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.35.2.tgz", + "integrity": "sha512-FVtFjtBCMiJS6yb5CX7Sop45WFMpeGw6oRKuJnXYgf/f1ms/D7LE/ZUSNxnW7rZ/dbslQWYkoqFHGPaDBtaK4w==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "@img/colour": "^1.1.0", + "detect-libc": "^2.1.2", + "semver": "^7.8.4" + }, + "engines": { + "node": ">=20.9.0" + }, + "funding": { + "url": "https://opencollective.com/libvips" + }, + "optionalDependencies": { + "@img/sharp-darwin-arm64": "0.35.2", + "@img/sharp-darwin-x64": "0.35.2", + "@img/sharp-freebsd-wasm32": "0.35.2", + "@img/sharp-libvips-darwin-arm64": "1.3.1", + "@img/sharp-libvips-darwin-x64": "1.3.1", + "@img/sharp-libvips-linux-arm": "1.3.1", + "@img/sharp-libvips-linux-arm64": "1.3.1", + "@img/sharp-libvips-linux-ppc64": "1.3.1", + "@img/sharp-libvips-linux-riscv64": "1.3.1", + "@img/sharp-libvips-linux-s390x": "1.3.1", + "@img/sharp-libvips-linux-x64": "1.3.1", + "@img/sharp-libvips-linuxmusl-arm64": "1.3.1", + "@img/sharp-libvips-linuxmusl-x64": "1.3.1", + "@img/sharp-linux-arm": "0.35.2", + "@img/sharp-linux-arm64": "0.35.2", + "@img/sharp-linux-ppc64": "0.35.2", + "@img/sharp-linux-riscv64": "0.35.2", + "@img/sharp-linux-s390x": "0.35.2", + "@img/sharp-linux-x64": "0.35.2", + "@img/sharp-linuxmusl-arm64": "0.35.2", + "@img/sharp-linuxmusl-x64": "0.35.2", + "@img/sharp-webcontainers-wasm32": "0.35.2", + "@img/sharp-win32-arm64": "0.35.2", + "@img/sharp-win32-ia32": "0.35.2", + "@img/sharp-win32-x64": "0.35.2" + } + }, "node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", @@ -5374,6 +6743,26 @@ "node": ">=14.17" } }, + "node_modules/undici": { + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz", + "integrity": "sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=20.18.1" + } + }, + "node_modules/unenv": { + "version": "2.0.0-rc.24", + "resolved": "https://registry.npmjs.org/unenv/-/unenv-2.0.0-rc.24.tgz", + "integrity": "sha512-i7qRCmY42zmCwnYlh9H2SvLEypEFGye5iRmEMKjcGi7zk9UquigRjFtTLz0TYqr0ZGLZhaMHl/foy1bZR+Cwlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "pathe": "^2.0.3" + } + }, "node_modules/unicorn-magic": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz", @@ -5497,6 +6886,63 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/workerd": { + "version": "1.20260820.1", + "resolved": "https://registry.npmjs.org/workerd/-/workerd-1.20260820.1.tgz", + "integrity": "sha512-/wk4rFNHH6IVMXFe6aPEZsT5YWpWtfKTUMt7+rFkyeGbXcGCy4yxODmJatbqYj0jmqHETdz0+m2mT+vNjXnF7w==", + "dev": true, + "hasInstallScript": true, + "license": "Apache-2.0", + "bin": { + "workerd": "bin/workerd" + }, + "engines": { + "node": ">=16" + }, + "optionalDependencies": { + "@cloudflare/workerd-darwin-64": "1.20260820.1", + "@cloudflare/workerd-darwin-arm64": "1.20260820.1", + "@cloudflare/workerd-linux-64": "1.20260820.1", + "@cloudflare/workerd-linux-arm64": "1.20260820.1", + "@cloudflare/workerd-windows-64": "1.20260820.1" + } + }, + "node_modules/wrangler": { + "version": "4.125.0", + "resolved": "https://registry.npmjs.org/wrangler/-/wrangler-4.125.0.tgz", + "integrity": "sha512-yFpvggu+xk1Hdm/Uxwaqa19bb7GArME4CrCS3Vov68a2TZq2MPO+wLocKbbnIC9K0oLowcdau7/ycxbbNHKCEg==", + "dev": true, + "license": "MIT OR Apache-2.0", + "dependencies": { + "@cloudflare/kv-asset-handler": "0.5.0", + "@cloudflare/unenv-preset": "2.16.1", + "blake3-wasm": "2.1.5", + "esbuild": "0.28.1", + "miniflare": "5.20260820.0-alpha", + "path-to-regexp": "6.3.0", + "unenv": "2.0.0-rc.24", + "workerd": "1.20260820.1" + }, + "bin": { + "cf-wrangler": "bin/cf-wrangler.js", + "wrangler": "bin/wrangler.js", + "wrangler2": "bin/wrangler.js" + }, + "engines": { + "node": ">=22.0.0" + }, + "optionalDependencies": { + "fsevents": "2.3.3" + }, + "peerDependencies": { + "@cloudflare/workers-types": "^5.20260820.1" + }, + "peerDependenciesMeta": { + "@cloudflare/workers-types": { + "optional": true + } + } + }, "node_modules/wrap-ansi": { "version": "9.0.2", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", @@ -5540,6 +6986,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/ws": { + "version": "8.21.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz", + "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==", + "dev": true, + "license": "MIT", + "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 + } + } + }, "node_modules/wsl-utils": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/wsl-utils/-/wsl-utils-0.1.0.tgz", @@ -5610,6 +7078,31 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/youch": { + "version": "4.1.0-beta.10", + "resolved": "https://registry.npmjs.org/youch/-/youch-4.1.0-beta.10.tgz", + "integrity": "sha512-rLfVLB4FgQneDr0dv1oddCVZmKjcJ6yX6mS4pU82Mq/Dt9a3cLZQ62pDBL4AUO+uVrCvtWz3ZFUL2HFAFJ/BXQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@poppinss/colors": "^4.1.5", + "@poppinss/dumper": "^0.6.4", + "@speed-highlight/core": "^1.2.7", + "cookie": "^1.0.2", + "youch-core": "^0.3.3" + } + }, + "node_modules/youch-core": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/youch-core/-/youch-core-0.3.3.tgz", + "integrity": "sha512-ho7XuGjLaJ2hWHoK8yFnsUGy2Y5uDpqSTq1FkHLK4/oqKtyUU1AFbOOxY4IpC9f0fTLjwYbslUz0Po5BpD1wrA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@poppinss/exception": "^1.2.2", + "error-stack-parser-es": "^1.0.5" + } } } } diff --git a/package.json b/package.json index 6d35754b..04d325a2 100644 --- a/package.json +++ b/package.json @@ -54,7 +54,8 @@ "np": "^10.2.0", "prettier": "^3.6.2", "sass": "^1.93.2", - "typescript": "^5.9.3" + "typescript": "^5.9.3", + "wrangler": "^4.125.0" }, "peerDependencies": { "@ionic/core": ">=8.8.1 <10" diff --git a/wrangler.jsonc b/wrangler.jsonc new file mode 100644 index 00000000..78ca5e92 --- /dev/null +++ b/wrangler.jsonc @@ -0,0 +1,26 @@ +{ + "$schema": "node_modules/wrangler/config-schema.json", + "name": "ionic-theme-ios26-demo", + "compatibility_date": "2026-08-21", + "assets": { + "directory": "./demo/www", + "not_found_handling": "single-page-application", + }, + "routes": [ + { + "pattern": "ionic-theme-ios26.rdlabo.dev", + "custom_domain": true, + }, + ], + "env": { + "ionic8": { + "name": "ionic-theme-ios26-demo-v8", + "routes": [ + { + "pattern": "ionic8-theme-ios26.rdlabo.dev", + "custom_domain": true, + }, + ], + }, + }, +} From 7d11890753e3d2b9511ba22d794c748493becdb4 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 11:57:08 +0900 Subject: [PATCH 04/12] fix(e2e): restore localhost web server URL --- demo/playwright.config.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/demo/playwright.config.ts b/demo/playwright.config.ts index 4f9f47ed..b115f593 100644 --- a/demo/playwright.config.ts +++ b/demo/playwright.config.ts @@ -11,7 +11,7 @@ export default defineConfig({ retries: process.env['CI'] ? 2 : 0, reporter: 'html', use: { - baseURL: 'http://127.0.0.1:4200', + baseURL: 'http://localhost:4200', trace: 'on-first-retry', screenshot: 'only-on-failure', }, @@ -28,7 +28,7 @@ export default defineConfig({ ], webServer: { command: process.env['IONIC_MAJOR'] === '8' ? 'npm run start -- --configuration=ionic8' : 'npm run start', - url: 'http://127.0.0.1:4200', + url: 'http://localhost:4200', reuseExistingServer: !process.env['CI'], timeout: 120000, }, From 38b83577d4b0e4826fc331db155b3982efb34980 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 12:11:43 +0900 Subject: [PATCH 05/12] fix(demo): align Ionic 8 textarea rows with Ionic 9 --- demo/src/global.scss | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/demo/src/global.scss b/demo/src/global.scss index 9b7297f5..120156e5 100644 --- a/demo/src/global.scss +++ b/demo/src/global.scss @@ -47,7 +47,11 @@ } html.ionic-v8 ion-textarea { - --padding-bottom: 5px; + --padding-bottom: 8px; +} + +html.ionic-v8 ion-textarea:is([label-placement='stacked'], [label-placement='floating']) { + min-height: 50px; } code { From 90490e0c9ba4d05eefaa983344b0efd7be0631e5 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 12:17:21 +0900 Subject: [PATCH 06/12] fix(demo): account for Ionic 8 textarea minimum height --- demo/src/global.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demo/src/global.scss b/demo/src/global.scss index 120156e5..75c8ad1e 100644 --- a/demo/src/global.scss +++ b/demo/src/global.scss @@ -51,7 +51,7 @@ html.ionic-v8 ion-textarea { } html.ionic-v8 ion-textarea:is([label-placement='stacked'], [label-placement='floating']) { - min-height: 50px; + margin-block-end: -6px; } code { From 964755bb73484df680c4b0dec753313d5f12f5f8 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 12:44:04 +0900 Subject: [PATCH 07/12] fix(demo): align Ionic 8 input layout with Ionic 9 --- demo/src/global.scss | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/demo/src/global.scss b/demo/src/global.scss index 75c8ad1e..be3cacff 100644 --- a/demo/src/global.scss +++ b/demo/src/global.scss @@ -46,12 +46,32 @@ --ios26-menu-width: 300px; } -html.ionic-v8 ion-textarea { - --padding-bottom: 8px; -} +/** + * Align Ionic 8 input and textarea layout with the Ionic 9 demo baseline. + * Ionic 9 introduced new internal control wrappers and spacing, so v8 needs + * equivalent flex sizing, native input spacing, and textarea row heights. + */ +html.ionic-v8 { + ion-input:is(.input-label-placement-start, .input-label-placement-end, .input-label-placement-fixed), + ion-textarea:is(.textarea-label-placement-start, .textarea-label-placement-end, .textarea-label-placement-fixed) { + .native-wrapper { + flex: 1 1 0; + } + } -html.ionic-v8 ion-textarea:is([label-placement='stacked'], [label-placement='floating']) { - margin-block-end: -6px; + ion-input:is(.input-label-placement-stacked, .input-label-placement-floating) { + .native-input { + margin-block-start: 0; + } + } + + ion-textarea { + --padding-bottom: 8px; + + &:is(.textarea-label-placement-stacked, .textarea-label-placement-floating) { + block-size: 68px; + } + } } code { From e3e4862b9eee27663d6c468c7af45a54ba38cc33 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 12:54:42 +0900 Subject: [PATCH 08/12] fix(ci): isolate screenshot update permissions --- .github/workflows/update-screenshots.yml | 190 +++++++++++++++++++---- 1 file changed, 164 insertions(+), 26 deletions(-) diff --git a/.github/workflows/update-screenshots.yml b/.github/workflows/update-screenshots.yml index 0e35b373..b6ea74ce 100644 --- a/.github/workflows/update-screenshots.yml +++ b/.github/workflows/update-screenshots.yml @@ -5,17 +5,21 @@ on: types: [created] permissions: - contents: write - pull-requests: write + contents: read jobs: - update-screenshots: + pr-metadata: # Only run if comment is on a PR and contains the trigger phrase if: github.event.issue.pull_request && contains(github.event.comment.body, '/update-screenshots') - timeout-minutes: 10 runs-on: ubuntu-latest - container: - image: mcr.microsoft.com/playwright:v1.58.2-noble + permissions: + issues: write + pull-requests: read + outputs: + head-ref: ${{ fromJson(steps.get-pr.outputs.result).ref }} + head-repo: ${{ fromJson(steps.get-pr.outputs.result).repo }} + head-sha: ${{ fromJson(steps.get-pr.outputs.result).sha }} + same-repository: ${{ fromJson(steps.get-pr.outputs.result).sameRepository }} steps: - name: Add reaction to comment uses: peter-evans/create-or-update-comment@v5 @@ -23,7 +27,7 @@ jobs: comment-id: ${{ github.event.comment.id }} reactions: eyes - - name: Get PR branch + - name: Get PR metadata uses: actions/github-script@v7 id: get-pr with: @@ -36,13 +40,25 @@ jobs: return { ref: pr.data.head.ref, sha: pr.data.head.sha, - repo: pr.data.head.repo.full_name + repo: pr.data.head.repo.full_name, + sameRepository: pr.data.head.repo.full_name === `${context.repo.owner}/${context.repo.repo}` }; + update-screenshots: + needs: pr-metadata + if: needs.pr-metadata.outputs.same-repository == 'true' + timeout-minutes: 10 + runs-on: ubuntu-latest + container: + image: mcr.microsoft.com/playwright:v1.58.2-noble + permissions: + contents: read + steps: - uses: actions/checkout@v5 with: - ref: ${{ fromJson(steps.get-pr.outputs.result).ref }} - token: ${{ secrets.GITHUB_TOKEN }} + repository: ${{ needs.pr-metadata.outputs.head-repo }} + ref: ${{ needs.pr-metadata.outputs.head-sha }} + persist-credentials: false - name: Fix git safe directory run: git config --system --add safe.directory $GITHUB_WORKSPACE @@ -60,6 +76,7 @@ jobs: - run: npm ci - run: npm run build + - name: Install dependencies run: npm ci working-directory: './demo' @@ -80,22 +97,134 @@ jobs: env: IONIC_MAJOR: 8 - - name: Commit and push changes - run: | - git config --global user.name "github-actions[bot]" - git config --global user.email "github-actions[bot]@users.noreply.github.com" - git add demo/e2e/screenshot.spec.ts-snapshots/ - if git diff --staged --quiet; then - echo "No changes to commit" - echo "HAS_CHANGES=false" >> $GITHUB_ENV - else - git commit -m "chore: update E2E screenshots" - git push - echo "HAS_CHANGES=true" >> $GITHUB_ENV - fi + - name: Upload updated screenshots + uses: actions/upload-artifact@v5 + with: + name: updated-screenshots + path: demo/e2e/screenshot.spec.ts-snapshots/*.png + if-no-files-found: error + + commit-screenshots: + needs: [pr-metadata, update-screenshots] + runs-on: ubuntu-latest + permissions: + contents: write + issues: write + pull-requests: read + steps: + - name: Download updated screenshots + uses: actions/download-artifact@v5 + with: + name: updated-screenshots + path: updated-screenshots + + - name: Commit screenshots through the GitHub API + id: commit + uses: actions/github-script@v7 + env: + EXPECTED_HEAD_REF: ${{ needs.pr-metadata.outputs.head-ref }} + EXPECTED_HEAD_REPO: ${{ needs.pr-metadata.outputs.head-repo }} + EXPECTED_HEAD_SHA: ${{ needs.pr-metadata.outputs.head-sha }} + with: + script: | + const fs = require('fs'); + const path = require('path'); + const snapshotPrefix = 'demo/e2e/screenshot.spec.ts-snapshots'; + const artifactDirectory = 'updated-screenshots'; + const expectedHeadSha = process.env.EXPECTED_HEAD_SHA; + const expectedHeadRef = process.env.EXPECTED_HEAD_REF; + const expectedHeadRepo = process.env.EXPECTED_HEAD_REPO; + + const pr = await github.rest.pulls.get({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number + }); + if ( + pr.data.head.repo.full_name !== expectedHeadRepo || + pr.data.head.ref !== expectedHeadRef || + pr.data.head.sha !== expectedHeadSha + ) { + core.setFailed('The PR head changed while screenshots were being generated. Run /update-screenshots again.'); + return; + } + + const filenames = fs.readdirSync(artifactDirectory).sort(); + if (filenames.length === 0 || filenames.some((filename) => !/^[A-Za-z0-9._-]+\.png$/.test(filename))) { + core.setFailed('The screenshot artifact contains an unexpected file.'); + return; + } + + const commit = await github.rest.git.getCommit({ + owner: context.repo.owner, + repo: context.repo.repo, + commit_sha: expectedHeadSha + }); + const currentTree = await github.rest.git.getTree({ + owner: context.repo.owner, + repo: context.repo.repo, + tree_sha: commit.data.tree.sha, + recursive: 'true' + }); + const uploadedPaths = new Set( + filenames.map((filename) => `${snapshotPrefix}/${filename}`) + ); + const tree = currentTree.data.tree + .filter((entry) => + entry.type === 'blob' && + entry.path.startsWith(`${snapshotPrefix}/`) && + !uploadedPaths.has(entry.path) + ) + .map((entry) => ({ path: entry.path, mode: '100644', type: 'blob', sha: null })); + + for (const filename of filenames) { + const blob = await github.rest.git.createBlob({ + owner: context.repo.owner, + repo: context.repo.repo, + content: fs.readFileSync(path.join(artifactDirectory, filename)).toString('base64'), + encoding: 'base64' + }); + tree.push({ + path: `${snapshotPrefix}/${filename}`, + mode: '100644', + type: 'blob', + sha: blob.data.sha + }); + } + + const updatedTree = await github.rest.git.createTree({ + owner: context.repo.owner, + repo: context.repo.repo, + base_tree: commit.data.tree.sha, + tree + }); + if (updatedTree.data.sha === commit.data.tree.sha) { + core.setOutput('has-changes', 'false'); + return; + } + + const updatedCommit = await github.rest.git.createCommit({ + owner: context.repo.owner, + repo: context.repo.repo, + message: 'chore: update E2E screenshots', + tree: updatedTree.data.sha, + parents: [expectedHeadSha], + author: { + name: 'github-actions[bot]', + email: '41898282+github-actions[bot]@users.noreply.github.com' + } + }); + await github.rest.git.updateRef({ + owner: context.repo.owner, + repo: context.repo.repo, + ref: `heads/${expectedHeadRef}`, + sha: updatedCommit.data.sha, + force: false + }); + core.setOutput('has-changes', 'true'); - name: Comment success - if: env.HAS_CHANGES == 'true' + if: steps.commit.outputs.has-changes == 'true' uses: peter-evans/create-or-update-comment@v5 with: issue-number: ${{ github.event.issue.number }} @@ -105,7 +234,7 @@ jobs: The new screenshots have been committed to this PR. - name: Comment no changes - if: env.HAS_CHANGES == 'false' + if: steps.commit.outputs.has-changes == 'false' uses: peter-evans/create-or-update-comment@v5 with: issue-number: ${{ github.event.issue.number }} @@ -114,8 +243,17 @@ jobs: The current screenshots are already up to date. + comment-failure: + needs: [pr-metadata, update-screenshots, commit-screenshots] + if: >- + always() && + needs.pr-metadata.result == 'success' && + (needs.update-screenshots.result == 'failure' || needs.commit-screenshots.result == 'failure') + runs-on: ubuntu-latest + permissions: + issues: write + steps: - name: Comment failure - if: failure() uses: peter-evans/create-or-update-comment@v5 with: issue-number: ${{ github.event.issue.number }} From 5bed5b534f3973fd0fc2740e52c3186e86372429 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 12:58:59 +0900 Subject: [PATCH 09/12] fix(ci): restrict screenshot updates to maintainers --- .github/workflows/update-screenshots.yml | 57 ++++++++++++++++++------ 1 file changed, 44 insertions(+), 13 deletions(-) diff --git a/.github/workflows/update-screenshots.yml b/.github/workflows/update-screenshots.yml index b6ea74ce..9d408f01 100644 --- a/.github/workflows/update-screenshots.yml +++ b/.github/workflows/update-screenshots.yml @@ -19,34 +19,47 @@ jobs: head-ref: ${{ fromJson(steps.get-pr.outputs.result).ref }} head-repo: ${{ fromJson(steps.get-pr.outputs.result).repo }} head-sha: ${{ fromJson(steps.get-pr.outputs.result).sha }} + authorized: ${{ fromJson(steps.get-pr.outputs.result).authorized }} same-repository: ${{ fromJson(steps.get-pr.outputs.result).sameRepository }} steps: - - name: Add reaction to comment - uses: peter-evans/create-or-update-comment@v5 - with: - comment-id: ${{ github.event.comment.id }} - reactions: eyes - - - name: Get PR metadata + - name: Get PR metadata and verify permission uses: actions/github-script@v7 id: get-pr with: script: | - const pr = await github.rest.pulls.get({ - owner: context.repo.owner, - repo: context.repo.repo, - pull_number: context.issue.number - }); + const [pr, permission] = await Promise.all([ + github.rest.pulls.get({ + owner: context.repo.owner, + repo: context.repo.repo, + pull_number: context.issue.number + }), + github.rest.repos.getCollaboratorPermissionLevel({ + owner: context.repo.owner, + repo: context.repo.repo, + username: context.payload.comment.user.login + }) + ]); + const authorized = ['admin', 'maintain', 'write'].includes(permission.data.permission); return { ref: pr.data.head.ref, sha: pr.data.head.sha, repo: pr.data.head.repo.full_name, + authorized, sameRepository: pr.data.head.repo.full_name === `${context.repo.owner}/${context.repo.repo}` }; + - name: Add reaction to authorized comment + if: fromJson(steps.get-pr.outputs.result).authorized + uses: peter-evans/create-or-update-comment@v5 + with: + comment-id: ${{ github.event.comment.id }} + reactions: eyes + update-screenshots: needs: pr-metadata - if: needs.pr-metadata.outputs.same-repository == 'true' + if: >- + needs.pr-metadata.outputs.authorized == 'true' && + needs.pr-metadata.outputs.same-repository == 'true' timeout-minutes: 10 runs-on: ubuntu-latest container: @@ -243,6 +256,24 @@ jobs: The current screenshots are already up to date. + comment-fork: + needs: pr-metadata + if: >- + needs.pr-metadata.outputs.authorized == 'true' && + needs.pr-metadata.outputs.same-repository != 'true' + runs-on: ubuntu-latest + permissions: + issues: write + steps: + - name: Explain unsupported fork update + uses: peter-evans/create-or-update-comment@v5 + with: + issue-number: ${{ github.event.issue.number }} + body: | + ⚠️ Screenshots cannot be updated automatically on a fork PR. + + Push the branch to this repository or update the screenshots locally. + comment-failure: needs: [pr-metadata, update-screenshots, commit-screenshots] if: >- From 6ddd52f04b56c8126f7215edbd5a89538d7dfc97 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 13:12:01 +0900 Subject: [PATCH 10/12] fix(ci): harden Ionic compatibility workflows --- .github/workflows/deploy-demo.yml | 3 ++ .github/workflows/e2e-pull_request.yml | 54 +++++++++++++++++++----- .github/workflows/update-screenshots.yml | 8 +++- demo/playwright.config.ts | 2 +- 4 files changed, 54 insertions(+), 13 deletions(-) diff --git a/.github/workflows/deploy-demo.yml b/.github/workflows/deploy-demo.yml index 161bf422..cdbcd403 100644 --- a/.github/workflows/deploy-demo.yml +++ b/.github/workflows/deploy-demo.yml @@ -12,6 +12,9 @@ permissions: jobs: deploy: runs-on: ubuntu-latest + concurrency: + group: deploy-demo-ionic${{ matrix.ionic-major }} + cancel-in-progress: true strategy: fail-fast: false matrix: diff --git a/.github/workflows/e2e-pull_request.yml b/.github/workflows/e2e-pull_request.yml index 14971c89..c06190d7 100644 --- a/.github/workflows/e2e-pull_request.yml +++ b/.github/workflows/e2e-pull_request.yml @@ -5,16 +5,15 @@ on: types: [opened, synchronize, closed] permissions: - contents: write - pull-requests: write - pages: write - id-token: write + contents: read jobs: test: if: github.event.action != 'closed' timeout-minutes: 10 runs-on: ubuntu-latest + permissions: + contents: read strategy: fail-fast: false matrix: @@ -68,13 +67,13 @@ jobs: path: demo/test-results/ retention-days: 3 - - name: Comment PR with test results - uses: daun/playwright-report-comment@v3 + - name: Upload JSON report artifact + uses: actions/upload-artifact@v5 if: always() && matrix.ionic-major == 9 with: - report-file: demo/e2e/screenshot.spec.ts-ionic9.json - job-summary: true - custom-info: 'Please check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for details. And if you want to update the screenshots, please comment with `/update-screenshots`.' + name: json-report-${{ github.event.pull_request.number }} + path: demo/e2e/screenshot.spec.ts-ionic9.json + retention-days: 3 - name: Upload HTML report artifact uses: actions/upload-artifact@v5 @@ -84,10 +83,39 @@ jobs: path: demo/playwright-report/ retention-days: 30 + comment-results: + needs: test + if: >- + always() && + github.event.action != 'closed' && + github.event.pull_request.head.repo.full_name == github.repository + runs-on: ubuntu-latest + permissions: + pull-requests: write + steps: + - name: Download JSON report + uses: actions/download-artifact@v5 + with: + name: json-report-${{ github.event.pull_request.number }} + path: report + + - name: Comment PR with test results + uses: daun/playwright-report-comment@v3 + with: + report-file: report/screenshot.spec.ts-ionic9.json + job-summary: true + custom-info: 'Please check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for details. And if you want to update the screenshots, please comment with `/update-screenshots`.' + deploy-report: needs: test - if: always() && github.event.action != 'closed' + if: >- + always() && + github.event.action != 'closed' && + github.event.pull_request.head.repo.full_name == github.repository runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write steps: - name: Download HTML report uses: actions/download-artifact@v5 @@ -140,8 +168,12 @@ jobs: }); cleanup-report: - if: github.event.action == 'closed' + if: >- + github.event.action == 'closed' && + github.event.pull_request.head.repo.full_name == github.repository runs-on: ubuntu-latest + permissions: + contents: write steps: - name: Checkout gh-pages uses: actions/checkout@v5 diff --git a/.github/workflows/update-screenshots.yml b/.github/workflows/update-screenshots.yml index 9d408f01..4ed5fa58 100644 --- a/.github/workflows/update-screenshots.yml +++ b/.github/workflows/update-screenshots.yml @@ -100,7 +100,13 @@ jobs: env: IONIC_MAJOR: 9 - - name: Install Ionic 8 + - name: Install Ionic 8 in theme + run: npm install --no-save --package-lock=false @ionic/angular@8.8.19 @ionic/core@8.8.19 + + - name: Rebuild theme with Ionic 8 + run: npm run build + + - name: Install Ionic 8 in demo run: npm install --no-save --package-lock=false @ionic/angular@8.8.19 @ionic/core@8.8.19 working-directory: './demo' diff --git a/demo/playwright.config.ts b/demo/playwright.config.ts index b115f593..02892146 100644 --- a/demo/playwright.config.ts +++ b/demo/playwright.config.ts @@ -29,7 +29,7 @@ export default defineConfig({ webServer: { command: process.env['IONIC_MAJOR'] === '8' ? 'npm run start -- --configuration=ionic8' : 'npm run start', url: 'http://localhost:4200', - reuseExistingServer: !process.env['CI'], + reuseExistingServer: !process.env['CI'] && process.env['IONIC_MAJOR'] === undefined, timeout: 120000, }, }); From 52e9ab3a0fb09ba2b2c56c257abee00cdba9a957 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 17:03:40 +0900 Subject: [PATCH 11/12] ci: use canonical Ionic 9 dependencies --- .github/workflows/e2e-main.yml | 6 +- .github/workflows/e2e-pull_request.yml | 6 +- demo/package-lock.json | 7442 ++++++++---------------- demo/package.json | 1 - 4 files changed, 2403 insertions(+), 5052 deletions(-) diff --git a/.github/workflows/e2e-main.yml b/.github/workflows/e2e-main.yml index dcf78376..fe4607e5 100644 --- a/.github/workflows/e2e-main.yml +++ b/.github/workflows/e2e-main.yml @@ -31,12 +31,14 @@ jobs: ${{ runner.os }}-node- - run: npm ci - - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + - if: matrix.ionic-major == 8 + run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} - run: npm run build - run: npm ci working-directory: './demo' - - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + - if: matrix.ionic-major == 8 + run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} working-directory: './demo' - name: Run Playwright tests diff --git a/.github/workflows/e2e-pull_request.yml b/.github/workflows/e2e-pull_request.yml index c06190d7..917d887d 100644 --- a/.github/workflows/e2e-pull_request.yml +++ b/.github/workflows/e2e-pull_request.yml @@ -37,12 +37,14 @@ jobs: ${{ runner.os }}-node- - run: npm ci - - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + - if: matrix.ionic-major == 8 + run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} - run: npm run build - run: npm ci working-directory: './demo' - - run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} + - if: matrix.ionic-major == 8 + run: npm install --no-save --package-lock=false @ionic/angular@${{ matrix.ionic-version }} @ionic/core@${{ matrix.ionic-version }} working-directory: './demo' - name: Run Playwright tests diff --git a/demo/package-lock.json b/demo/package-lock.json index 89a52719..e9999e76 100644 --- a/demo/package-lock.json +++ b/demo/package-lock.json @@ -23,7 +23,6 @@ "@capacitor/keyboard": "^8.0.0", "@capacitor/status-bar": "^8.0.0", "@ionic/angular": "^9.0.0", - "@rdlabo/ionic-theme-ios26": "file:..", "rxjs": "~7.8.0", "tslib": "^2.3.0", "zone.js": "~0.15.0" @@ -49,4493 +48,10 @@ "vitest": "^4.0.0" } }, - "..": { - "name": "@rdlabo/ionic-theme-ios26", - "version": "2.3.2", - "license": "MIT", - "devDependencies": { - "@ionic/angular": "^8.8.1", - "husky": "^9.1.7", - "lint-staged": "^16.2.1", - "np": "^10.2.0", - "prettier": "^3.6.2", - "sass": "^1.93.2", - "typescript": "^5.9.3" - }, - "peerDependencies": { - "@ionic/core": ">= 8.8.1" - } - }, - "../node_modules/@angular/common": { - "version": "21.2.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/core": "21.2.1", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "../node_modules/@angular/core": { - "version": "21.2.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/compiler": "21.2.1", - "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.15.0 || ~0.16.0" - }, - "peerDependenciesMeta": { - "@angular/compiler": { - "optional": true - }, - "zone.js": { - "optional": true - } - } - }, - "../node_modules/@angular/forms": { - "version": "21.2.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "@standard-schema/spec": "^1.0.0", - "tslib": "^2.3.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/common": "21.2.1", - "@angular/core": "21.2.1", - "@angular/platform-browser": "21.2.1", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "../node_modules/@angular/platform-browser": { - "version": "21.2.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/animations": "21.2.1", - "@angular/common": "21.2.1", - "@angular/core": "21.2.1" - }, - "peerDependenciesMeta": { - "@angular/animations": { - "optional": true - } - } - }, - "../node_modules/@angular/router": { - "version": "21.2.1", - "dev": true, - "license": "MIT", - "peer": true, - "dependencies": { - "tslib": "^2.3.0" - }, - "engines": { - "node": "^20.19.0 || ^22.12.0 || >=24.0.0" - }, - "peerDependencies": { - "@angular/common": "21.2.1", - "@angular/core": "21.2.1", - "@angular/platform-browser": "21.2.1", - "rxjs": "^6.5.3 || ^7.4.0" - } - }, - "../node_modules/@babel/code-frame": { - "version": "7.29.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/helper-validator-identifier": "^7.28.5", - "js-tokens": "^4.0.0", - "picocolors": "^1.1.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "../node_modules/@babel/helper-validator-identifier": { - "version": "7.28.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6.9.0" - } - }, - "../node_modules/@inquirer/ansi": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "../node_modules/@inquirer/checkbox": { - "version": "4.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/confirm": { - "version": "5.1.21", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/core": { - "version": "10.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "cli-width": "^4.1.0", - "mute-stream": "^2.0.0", - "signal-exit": "^4.1.0", - "wrap-ansi": "^6.2.0", - "yoctocolors-cjs": "^2.1.3" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/core/node_modules/ansi-regex": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/@inquirer/core/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "../node_modules/@inquirer/core/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/@inquirer/core/node_modules/string-width": { - "version": "4.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/@inquirer/core/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/@inquirer/core/node_modules/wrap-ansi": { - "version": "6.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/@inquirer/editor": { - "version": "4.2.23", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/external-editor": "^1.0.3", - "@inquirer/type": "^3.0.10" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/expand": { - "version": "4.0.23", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/external-editor": { - "version": "1.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "chardet": "^2.1.1", - "iconv-lite": "^0.7.0" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/figures": { - "version": "1.0.15", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "../node_modules/@inquirer/input": { - "version": "4.3.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/number": { - "version": "3.0.23", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/password": { - "version": "4.0.23", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/prompts": { - "version": "7.10.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/checkbox": "^4.3.2", - "@inquirer/confirm": "^5.1.21", - "@inquirer/editor": "^4.2.23", - "@inquirer/expand": "^4.0.23", - "@inquirer/input": "^4.3.1", - "@inquirer/number": "^3.0.23", - "@inquirer/password": "^4.0.23", - "@inquirer/rawlist": "^4.1.11", - "@inquirer/search": "^3.2.2", - "@inquirer/select": "^4.4.2" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/rawlist": { - "version": "4.1.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/search": { - "version": "3.2.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/select": { - "version": "4.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/figures": "^1.0.15", - "@inquirer/type": "^3.0.10", - "yoctocolors-cjs": "^2.1.3" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@inquirer/type": { - "version": "3.0.10", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/@ionic/angular": { - "version": "8.8.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@ionic/core": "8.8.1", - "ionicons": "^8.0.13", - "jsonc-parser": "^3.0.0", - "tslib": "^2.3.0" - }, - "peerDependencies": { - "@angular/core": ">=16.0.0", - "@angular/forms": ">=16.0.0", - "@angular/router": ">=16.0.0", - "rxjs": ">=7.5.0", - "zone.js": ">=0.13.0" - } - }, - "../node_modules/@ionic/core": { - "version": "8.8.1", - "license": "MIT", - "dependencies": { - "@stencil/core": "4.43.0", - "ionicons": "^8.0.13", - "tslib": "^2.1.0" - }, - "engines": { - "node": ">= 16" - } - }, - "../node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" - }, - "engines": { - "node": ">= 8" - } - }, - "../node_modules/@nodelib/fs.stat": { - "version": "2.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "../node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "../node_modules/@parcel/watcher": { - "version": "2.5.6", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "dependencies": { - "detect-libc": "^2.0.3", - "is-glob": "^4.0.3", - "node-addon-api": "^7.0.0", - "picomatch": "^4.0.3" - }, - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - }, - "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.5.6", - "@parcel/watcher-darwin-arm64": "2.5.6", - "@parcel/watcher-darwin-x64": "2.5.6", - "@parcel/watcher-freebsd-x64": "2.5.6", - "@parcel/watcher-linux-arm-glibc": "2.5.6", - "@parcel/watcher-linux-arm-musl": "2.5.6", - "@parcel/watcher-linux-arm64-glibc": "2.5.6", - "@parcel/watcher-linux-arm64-musl": "2.5.6", - "@parcel/watcher-linux-x64-glibc": "2.5.6", - "@parcel/watcher-linux-x64-musl": "2.5.6", - "@parcel/watcher-win32-arm64": "2.5.6", - "@parcel/watcher-win32-ia32": "2.5.6", - "@parcel/watcher-win32-x64": "2.5.6" - } - }, - "../node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.5.6", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, - "../node_modules/@parcel/watcher/node_modules/picomatch": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "optional": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "../node_modules/@pnpm/config.env-replace": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12.22.0" - } - }, - "../node_modules/@pnpm/network.ca-file": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "4.2.10" - }, - "engines": { - "node": ">=12.22.0" - } - }, - "../node_modules/@pnpm/npm-conf": { - "version": "3.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "@pnpm/config.env-replace": "^1.1.0", - "@pnpm/network.ca-file": "^1.0.1", - "config-chain": "^1.1.11" - }, - "engines": { - "node": ">=12" - } - }, - "../node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.34.9", - "cpu": [ - "arm64" - ], - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "../node_modules/@samverschueren/stream-to-observable": { - "version": "0.3.1", - "dev": true, - "license": "MIT", - "dependencies": { - "any-observable": "^0.3.0" - }, - "engines": { - "node": ">=6" - }, - "peerDependenciesMeta": { - "rxjs": { - "optional": true - }, - "zen-observable": { - "optional": true - } - } - }, - "../node_modules/@sindresorhus/merge-streams": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/@standard-schema/spec": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "peer": true - }, - "../node_modules/@stencil/core": { - "version": "4.43.0", - "license": "MIT", - "bin": { - "stencil": "bin/stencil" - }, - "engines": { - "node": ">=16.0.0", - "npm": ">=7.10.0" - }, - "optionalDependencies": { - "@rollup/rollup-darwin-arm64": "4.34.9", - "@rollup/rollup-darwin-x64": "4.34.9", - "@rollup/rollup-linux-arm64-gnu": "4.34.9", - "@rollup/rollup-linux-arm64-musl": "4.34.9", - "@rollup/rollup-linux-x64-gnu": "4.34.9", - "@rollup/rollup-linux-x64-musl": "4.34.9", - "@rollup/rollup-win32-arm64-msvc": "4.34.9", - "@rollup/rollup-win32-x64-msvc": "4.34.9" - } - }, - "../node_modules/@types/normalize-package-data": { - "version": "2.4.4", - "dev": true, - "license": "MIT" - }, - "../node_modules/ansi-align": { - "version": "3.0.1", - "dev": true, - "license": "ISC", - "dependencies": { - "string-width": "^4.1.0" - } - }, - "../node_modules/ansi-align/node_modules/ansi-regex": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/ansi-align/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/ansi-align/node_modules/string-width": { - "version": "4.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/ansi-align/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/ansi-escapes": { - "version": "7.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "environment": "^1.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/ansi-regex": { - "version": "6.2.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" - } - }, - "../node_modules/ansi-styles": { - "version": "6.2.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "../node_modules/any-observable": { - "version": "0.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "../node_modules/argparse": { - "version": "2.0.1", - "dev": true, - "license": "Python-2.0" - }, - "../node_modules/atomically": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "stubborn-fs": "^2.0.0", - "when-exit": "^2.1.4" - } - }, - "../node_modules/balanced-match": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "../node_modules/boxen": { - "version": "8.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-align": "^3.0.1", - "camelcase": "^8.0.0", - "chalk": "^5.3.0", - "cli-boxes": "^3.0.0", - "string-width": "^7.2.0", - "type-fest": "^4.21.0", - "widest-line": "^5.0.0", - "wrap-ansi": "^9.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/boxen/node_modules/emoji-regex": { - "version": "10.6.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/boxen/node_modules/string-width": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^10.3.0", - "get-east-asian-width": "^1.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/boxen/node_modules/type-fest": { - "version": "4.41.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/brace-expansion": { - "version": "2.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "balanced-match": "^1.0.0" - } - }, - "../node_modules/braces": { - "version": "3.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "fill-range": "^7.1.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/bundle-name": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "run-applescript": "^7.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/callsites": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "../node_modules/camelcase": { - "version": "8.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/chalk": { - "version": "5.6.2", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "../node_modules/chalk-template": { - "version": "1.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^5.2.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/chalk/chalk-template?sponsor=1" - } - }, - "../node_modules/chardet": { - "version": "2.1.1", - "dev": true, - "license": "MIT" - }, - "../node_modules/chokidar": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "readdirp": "^4.0.1" - }, - "engines": { - "node": ">= 14.16.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - } - }, - "../node_modules/cli-boxes": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/cli-cursor": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/cli-truncate": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "slice-ansi": "^8.0.0", - "string-width": "^8.2.0" - }, - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/cli-width": { - "version": "4.1.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 12" - } - }, - "../node_modules/code-point-at": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/color-convert": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "../node_modules/color-name": { - "version": "1.1.4", - "dev": true, - "license": "MIT" - }, - "../node_modules/colorette": { - "version": "2.0.20", - "dev": true, - "license": "MIT" - }, - "../node_modules/commander": { - "version": "14.0.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=20" - } - }, - "../node_modules/config-chain": { - "version": "1.1.13", - "dev": true, - "license": "MIT", - "dependencies": { - "ini": "^1.3.4", - "proto-list": "~1.2.1" - } - }, - "../node_modules/config-chain/node_modules/ini": { - "version": "1.3.8", - "dev": true, - "license": "ISC" - }, - "../node_modules/configstore": { - "version": "7.1.0", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "atomically": "^2.0.3", - "dot-prop": "^9.0.0", - "graceful-fs": "^4.2.11", - "xdg-basedir": "^5.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/configstore/node_modules/graceful-fs": { - "version": "4.2.11", - "dev": true, - "license": "ISC" - }, - "../node_modules/cosmiconfig": { - "version": "8.3.6", - "dev": true, - "license": "MIT", - "dependencies": { - "import-fresh": "^3.3.0", - "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/d-fischer" - }, - "peerDependencies": { - "typescript": ">=4.9.5" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "../node_modules/cross-spawn": { - "version": "7.0.6", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "../node_modules/date-fns": { - "version": "1.30.1", - "dev": true, - "license": "MIT" - }, - "../node_modules/deep-extend": { - "version": "0.6.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4.0.0" - } - }, - "../node_modules/default-browser": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "bundle-name": "^4.1.0", - "default-browser-id": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/default-browser-id": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/define-lazy-prop": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/del": { - "version": "8.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "globby": "^14.0.2", - "is-glob": "^4.0.3", - "is-path-cwd": "^3.0.0", - "is-path-inside": "^4.0.0", - "p-map": "^7.0.2", - "presentable-error": "^0.0.1", - "slash": "^5.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/detect-libc": { - "version": "2.1.2", - "dev": true, - "license": "Apache-2.0", - "optional": true, - "engines": { - "node": ">=8" - } - }, - "../node_modules/dot-prop": { - "version": "9.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^4.18.2" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/dot-prop/node_modules/type-fest": { - "version": "4.41.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/elegant-spinner": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/emoji-regex": { - "version": "8.0.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/environment": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/error-ex": { - "version": "1.3.4", - "dev": true, - "license": "MIT", - "dependencies": { - "is-arrayish": "^0.2.1" - } - }, - "../node_modules/escape-goat": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/escape-string-regexp": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/eventemitter3": { - "version": "5.0.4", - "dev": true, - "license": "MIT" - }, - "../node_modules/execa": { - "version": "8.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "../node_modules/execa/node_modules/onetime": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/exit-hook": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/external-editor": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/external-editor/node_modules/chardet": { - "version": "0.7.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/external-editor/node_modules/iconv-lite": { - "version": "0.4.24", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/fast-glob": { - "version": "3.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.8" - }, - "engines": { - "node": ">=8.6.0" - } - }, - "../node_modules/fastq": { - "version": "1.20.1", - "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "../node_modules/figures": { - "version": "1.7.0", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5", - "object-assign": "^4.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "../node_modules/fill-range": { - "version": "7.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/find-up": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/find-up-simple": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/find-up/node_modules/path-exists": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/get-east-asian-width": { - "version": "1.5.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/get-stream": { - "version": "8.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/github-url-from-git": { - "version": "1.5.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/glob-parent": { - "version": "5.1.2", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "../node_modules/global-directory": { - "version": "4.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ini": "4.1.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/globby": { - "version": "14.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@sindresorhus/merge-streams": "^2.1.0", - "fast-glob": "^3.3.3", - "ignore": "^7.0.3", - "path-type": "^6.0.0", - "slash": "^5.1.0", - "unicorn-magic": "^0.3.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/globby/node_modules/path-type": { - "version": "6.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/graceful-fs": { - "version": "4.2.10", - "dev": true, - "license": "ISC" - }, - "../node_modules/has-ansi": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/has-flag": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/hosted-git-info": { - "version": "8.1.0", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "../node_modules/human-signals": { - "version": "5.0.0", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=16.17.0" - } - }, - "../node_modules/husky": { - "version": "9.1.7", - "dev": true, - "license": "MIT", - "bin": { - "husky": "bin.js" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/typicode" - } - }, - "../node_modules/iconv-lite": { - "version": "0.7.2", - "dev": true, - "license": "MIT", - "dependencies": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - }, - "engines": { - "node": ">=0.10.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/express" - } - }, - "../node_modules/ignore": { - "version": "7.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "../node_modules/ignore-walk": { - "version": "7.0.0", - "dev": true, - "license": "ISC", - "dependencies": { - "minimatch": "^9.0.0" - }, - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "../node_modules/immutable": { - "version": "5.1.5", - "dev": true, - "license": "MIT" - }, - "../node_modules/import-fresh": { - "version": "3.3.1", - "dev": true, - "license": "MIT", - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/import-local": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/indent-string": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/index-to-position": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/ini": { - "version": "4.1.1", - "dev": true, - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "../node_modules/inquirer": { - "version": "12.11.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@inquirer/ansi": "^1.0.2", - "@inquirer/core": "^10.3.2", - "@inquirer/prompts": "^7.10.1", - "@inquirer/type": "^3.0.10", - "mute-stream": "^2.0.0", - "run-async": "^4.0.6", - "rxjs": "^7.8.2" - }, - "engines": { - "node": ">=18" - }, - "peerDependencies": { - "@types/node": ">=18" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - } - } - }, - "../node_modules/inquirer-autosubmit-prompt": { - "version": "0.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^2.4.1", - "inquirer": "^6.2.1", - "rxjs": "^6.3.3" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/ansi-escapes": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/ansi-regex": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/chalk": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/cli-cursor": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/cli-width": { - "version": "2.2.1", - "dev": true, - "license": "ISC" - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/figures": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/inquirer": { - "version": "6.5.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/mimic-fn": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/mute-stream": { - "version": "0.0.7", - "dev": true, - "license": "ISC" - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/onetime": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/restore-cursor": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/run-async": { - "version": "2.4.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/rxjs": { - "version": "6.6.7", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/signal-exit": { - "version": "3.0.7", - "dev": true, - "license": "ISC" - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/string-width": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/string-width/node_modules/ansi-regex": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/string-width/node_modules/strip-ansi": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/strip-ansi": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/inquirer-autosubmit-prompt/node_modules/tslib": { - "version": "1.14.1", - "dev": true, - "license": "0BSD" - }, - "../node_modules/ionicons": { - "version": "8.0.13", - "license": "MIT", - "dependencies": { - "@stencil/core": "^4.35.3" - } - }, - "../node_modules/is-arrayish": { - "version": "0.2.1", - "dev": true, - "license": "MIT" - }, - "../node_modules/is-docker": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-extglob": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/is-fullwidth-code-point": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "get-east-asian-width": "^1.3.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-glob": { - "version": "4.0.3", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/is-in-ci": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "bin": { - "is-in-ci": "cli.js" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-inside-container": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-docker": "^3.0.0" - }, - "bin": { - "is-inside-container": "cli.js" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-installed-globally": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "global-directory": "^4.0.1", - "is-path-inside": "^4.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-interactive": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-npm": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-number": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "../node_modules/is-observable": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "symbol-observable": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/is-observable/node_modules/symbol-observable": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/is-path-cwd": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-path-inside": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-promise": { - "version": "2.2.2", - "dev": true, - "license": "MIT" - }, - "../node_modules/is-scoped": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "scoped-regex": "^3.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-stream": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-unicode-supported": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-url-superb": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/is-wsl": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-inside-container": "^1.0.0" - }, - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/isexe": { - "version": "2.0.0", - "dev": true, - "license": "ISC" - }, - "../node_modules/issue-regex": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/js-tokens": { - "version": "4.0.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/js-yaml": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "../node_modules/json-parse-even-better-errors": { - "version": "2.3.1", - "dev": true, - "license": "MIT" - }, - "../node_modules/jsonc-parser": { - "version": "3.3.1", - "dev": true, - "license": "MIT" - }, - "../node_modules/ky": { - "version": "1.14.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sindresorhus/ky?sponsor=1" - } - }, - "../node_modules/latest-version": { - "version": "9.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "package-json": "^10.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/lines-and-columns": { - "version": "1.2.4", - "dev": true, - "license": "MIT" - }, - "../node_modules/lint-staged": { - "version": "16.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "commander": "^14.0.3", - "listr2": "^9.0.5", - "micromatch": "^4.0.8", - "string-argv": "^0.3.2", - "tinyexec": "^1.0.2", - "yaml": "^2.8.2" - }, - "bin": { - "lint-staged": "bin/lint-staged.js" - }, - "engines": { - "node": ">=20.17" - }, - "funding": { - "url": "https://opencollective.com/lint-staged" - } - }, - "../node_modules/listr": { - "version": "0.14.3", - "dev": true, - "license": "MIT", - "dependencies": { - "@samverschueren/stream-to-observable": "^0.3.0", - "is-observable": "^1.1.0", - "is-promise": "^2.1.0", - "is-stream": "^1.1.0", - "listr-silent-renderer": "^1.1.1", - "listr-update-renderer": "^0.5.0", - "listr-verbose-renderer": "^0.5.0", - "p-map": "^2.0.0", - "rxjs": "^6.3.3" - }, - "engines": { - "node": ">=6" - } - }, - "../node_modules/listr-input": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "inquirer": "^7.0.0", - "inquirer-autosubmit-prompt": "^0.2.0", - "rxjs": "^6.5.3", - "through": "^2.3.8" - }, - "engines": { - "node": ">=6" - } - }, - "../node_modules/listr-input/node_modules/ansi-escapes": { - "version": "4.3.2", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^0.21.3" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/listr-input/node_modules/ansi-regex": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/listr-input/node_modules/ansi-styles": { - "version": "4.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "../node_modules/listr-input/node_modules/chalk": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "../node_modules/listr-input/node_modules/cli-cursor": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/listr-input/node_modules/cli-width": { - "version": "3.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">= 10" - } - }, - "../node_modules/listr-input/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "../node_modules/listr-input/node_modules/figures": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/listr-input/node_modules/inquirer": { - "version": "7.3.3", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "../node_modules/listr-input/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/listr-input/node_modules/mimic-fn": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "../node_modules/listr-input/node_modules/mute-stream": { - "version": "0.0.8", - "dev": true, - "license": "ISC" - }, - "../node_modules/listr-input/node_modules/onetime": { - "version": "5.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/listr-input/node_modules/restore-cursor": { - "version": "3.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/listr-input/node_modules/run-async": { - "version": "2.4.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "../node_modules/listr-input/node_modules/rxjs": { - "version": "6.6.7", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "../node_modules/listr-input/node_modules/signal-exit": { - "version": "3.0.7", - "dev": true, - "license": "ISC" - }, - "../node_modules/listr-input/node_modules/string-width": { - "version": "4.2.3", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/listr-input/node_modules/strip-ansi": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/listr-input/node_modules/tslib": { - "version": "1.14.1", - "dev": true, - "license": "0BSD" - }, - "../node_modules/listr-input/node_modules/type-fest": { - "version": "0.21.3", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/listr-silent-renderer": { - "version": "1.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer": { - "version": "0.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^1.1.3", - "cli-truncate": "^0.2.1", - "elegant-spinner": "^1.0.1", - "figures": "^1.7.0", - "indent-string": "^3.0.0", - "log-symbols": "^1.0.2", - "log-update": "^2.3.0", - "strip-ansi": "^3.0.1" - }, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "listr": "^0.14.2" - } - }, - "../node_modules/listr-update-renderer/node_modules/ansi-escapes": { - "version": "3.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/ansi-regex": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/ansi-styles": { - "version": "2.2.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/chalk": { - "version": "1.1.3", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/cli-cursor": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/cli-truncate": { - "version": "0.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "slice-ansi": "0.0.4", - "string-width": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/log-symbols": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/log-update": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^3.0.0", - "cli-cursor": "^2.0.0", - "wrap-ansi": "^3.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/mimic-fn": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/onetime": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/restore-cursor": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/signal-exit": { - "version": "3.0.7", - "dev": true, - "license": "ISC" - }, - "../node_modules/listr-update-renderer/node_modules/slice-ansi": { - "version": "0.0.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/string-width": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/strip-ansi": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/supports-color": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "../node_modules/listr-update-renderer/node_modules/wrap-ansi": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/wrap-ansi/node_modules/string-width": { - "version": "2.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-update-renderer/node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer": { - "version": "0.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^2.4.1", - "cli-cursor": "^2.1.0", - "date-fns": "^1.27.2", - "figures": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/ansi-styles": { - "version": "3.2.1", - "dev": true, - "license": "MIT", - "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/chalk": { - "version": "2.4.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/cli-cursor": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/color-convert": { - "version": "1.9.3", - "dev": true, - "license": "MIT", - "dependencies": { - "color-name": "1.1.3" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/color-name": { - "version": "1.1.3", - "dev": true, - "license": "MIT" - }, - "../node_modules/listr-verbose-renderer/node_modules/escape-string-regexp": { - "version": "1.0.5", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8.0" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/figures": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/has-flag": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/mimic-fn": { - "version": "1.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/onetime": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/restore-cursor": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr-verbose-renderer/node_modules/signal-exit": { - "version": "3.0.7", - "dev": true, - "license": "ISC" - }, - "../node_modules/listr-verbose-renderer/node_modules/supports-color": { - "version": "5.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "../node_modules/listr/node_modules/is-stream": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/listr/node_modules/p-map": { - "version": "2.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "../node_modules/listr/node_modules/rxjs": { - "version": "6.6.7", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^1.9.0" - }, - "engines": { - "npm": ">=2.0.0" - } - }, - "../node_modules/listr/node_modules/tslib": { - "version": "1.14.1", - "dev": true, - "license": "0BSD" - }, - "../node_modules/listr2": { - "version": "9.0.5", - "dev": true, - "license": "MIT", - "dependencies": { - "cli-truncate": "^5.0.0", - "colorette": "^2.0.20", - "eventemitter3": "^5.0.1", - "log-update": "^6.1.0", - "rfdc": "^1.4.1", - "wrap-ansi": "^9.0.0" - }, - "engines": { - "node": ">=20.0.0" - } - }, - "../node_modules/locate-path": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-locate": "^4.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/lodash": { - "version": "4.17.23", - "dev": true, - "license": "MIT" - }, - "../node_modules/lodash.zip": { - "version": "4.2.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/log-symbols": { - "version": "7.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-unicode-supported": "^2.0.0", - "yoctocolors": "^2.1.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/log-update": { - "version": "6.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^7.0.0", - "cli-cursor": "^5.0.0", - "slice-ansi": "^7.1.0", - "strip-ansi": "^7.1.0", - "wrap-ansi": "^9.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/log-update/node_modules/slice-ansi": { - "version": "7.1.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.2.1", - "is-fullwidth-code-point": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "../node_modules/lru-cache": { - "version": "10.4.3", - "dev": true, - "license": "ISC" - }, - "../node_modules/meow": { - "version": "13.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/merge-stream": { - "version": "2.0.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/merge2": { - "version": "1.4.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "../node_modules/micromatch": { - "version": "4.0.8", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "../node_modules/mimic-fn": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/mimic-function": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/minimatch": { - "version": "9.0.9", - "dev": true, - "license": "ISC", - "dependencies": { - "brace-expansion": "^2.0.2" - }, - "engines": { - "node": ">=16 || 14 >=14.17" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "../node_modules/minimist": { - "version": "1.2.8", - "dev": true, - "license": "MIT", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "../node_modules/mute-stream": { - "version": "2.0.0", - "dev": true, - "license": "ISC", - "engines": { - "node": "^18.17.0 || >=20.5.0" - } - }, - "../node_modules/new-github-release-url": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^2.5.1" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/node-addon-api": { - "version": "7.1.1", - "dev": true, - "license": "MIT", - "optional": true - }, - "../node_modules/normalize-package-data": { - "version": "6.0.2", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "hosted-git-info": "^7.0.0", - "semver": "^7.3.5", - "validate-npm-package-license": "^3.0.4" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "../node_modules/normalize-package-data/node_modules/hosted-git-info": { - "version": "7.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "lru-cache": "^10.0.1" - }, - "engines": { - "node": "^16.14.0 || >=18.0.0" - } - }, - "../node_modules/np": { - "version": "10.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^5.4.1", - "chalk-template": "^1.1.0", - "cosmiconfig": "^8.3.6", - "del": "^8.0.0", - "escape-goat": "^4.0.0", - "escape-string-regexp": "^5.0.0", - "execa": "^8.0.1", - "exit-hook": "^4.0.0", - "github-url-from-git": "^1.5.0", - "hosted-git-info": "^8.0.2", - "ignore-walk": "^7.0.0", - "import-local": "^3.2.0", - "inquirer": "^12.3.2", - "is-installed-globally": "^1.0.0", - "is-interactive": "^2.0.0", - "is-scoped": "^3.0.0", - "issue-regex": "^4.3.0", - "listr": "^0.14.3", - "listr-input": "^0.2.1", - "log-symbols": "^7.0.0", - "meow": "^13.2.0", - "new-github-release-url": "^2.0.0", - "npm-name": "^8.0.0", - "onetime": "^7.0.0", - "open": "^10.0.4", - "p-memoize": "^7.1.1", - "p-timeout": "^6.1.4", - "package-directory": "^8.0.0", - "path-exists": "^5.0.0", - "read-package-up": "^11.0.0", - "read-pkg": "^9.0.1", - "rxjs": "^7.8.1", - "semver": "^7.6.0", - "symbol-observable": "^4.0.0", - "terminal-link": "^3.0.0", - "update-notifier": "^7.3.1" - }, - "bin": { - "np": "source/cli.js" - }, - "engines": { - "bun": ">=1", - "git": ">=2.11.0", - "node": ">=18", - "npm": ">=9", - "pnpm": ">=8", - "yarn": ">=1.7.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/np?sponsor=1" - } - }, - "../node_modules/npm-name": { - "version": "8.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-scoped": "^3.0.0", - "is-url-superb": "^6.1.0", - "ky": "^1.2.0", - "lodash.zip": "^4.2.0", - "org-regex": "^1.0.0", - "p-map": "^7.0.1", - "registry-auth-token": "^5.0.2", - "registry-url": "^6.0.1", - "validate-npm-package-name": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/npm-run-path": { - "version": "5.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/number-is-nan": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/object-assign": { - "version": "4.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/onetime": { - "version": "7.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-function": "^5.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/open": { - "version": "10.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "default-browser": "^5.2.1", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "wsl-utils": "^0.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/org-regex": { - "version": "1.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/os-tmpdir": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/p-limit": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/p-locate": { - "version": "4.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "p-limit": "^2.2.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/p-map": { - "version": "7.0.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/p-memoize": { - "version": "7.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^4.0.0", - "type-fest": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sindresorhus/p-memoize?sponsor=1" - } - }, - "../node_modules/p-memoize/node_modules/type-fest": { - "version": "3.13.1", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/p-timeout": { - "version": "6.1.4", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/p-try": { - "version": "2.2.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "../node_modules/package-directory": { - "version": "8.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up-simple": "^1.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/package-json": { - "version": "10.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "ky": "^1.2.0", - "registry-auth-token": "^5.0.2", - "registry-url": "^6.0.1", - "semver": "^7.6.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/parent-module": { - "version": "1.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "callsites": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "../node_modules/parse-json": { - "version": "5.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/path-exists": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - } - }, - "../node_modules/path-key": { - "version": "3.1.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/path-type": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/picocolors": { - "version": "1.1.1", - "dev": true, - "license": "ISC" - }, - "../node_modules/picomatch": { - "version": "2.3.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "../node_modules/pkg-dir": { - "version": "4.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/presentable-error": { - "version": "0.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/prettier": { - "version": "3.8.1", - "dev": true, - "license": "MIT", - "bin": { - "prettier": "bin/prettier.cjs" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/prettier/prettier?sponsor=1" - } - }, - "../node_modules/proto-list": { - "version": "1.2.4", - "dev": true, - "license": "ISC" - }, - "../node_modules/pupa": { - "version": "3.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "escape-goat": "^4.0.0" - }, - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/queue-microtask": { - "version": "1.2.3", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT" - }, - "../node_modules/rc": { - "version": "1.2.8", - "dev": true, - "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, - "../node_modules/rc/node_modules/ini": { - "version": "1.3.8", - "dev": true, - "license": "ISC" - }, - "../node_modules/read-package-up": { - "version": "11.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "find-up-simple": "^1.0.0", - "read-pkg": "^9.0.0", - "type-fest": "^4.6.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/read-package-up/node_modules/type-fest": { - "version": "4.41.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/read-pkg": { - "version": "9.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/normalize-package-data": "^2.4.3", - "normalize-package-data": "^6.0.0", - "parse-json": "^8.0.0", - "type-fest": "^4.6.0", - "unicorn-magic": "^0.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/read-pkg/node_modules/parse-json": { - "version": "8.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "@babel/code-frame": "^7.26.2", - "index-to-position": "^1.1.0", - "type-fest": "^4.39.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/read-pkg/node_modules/type-fest": { - "version": "4.41.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/read-pkg/node_modules/unicorn-magic": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/readdirp": { - "version": "4.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 14.18.0" - }, - "funding": { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - }, - "../node_modules/registry-auth-token": { - "version": "5.1.1", - "dev": true, - "license": "MIT", - "dependencies": { - "@pnpm/npm-conf": "^3.0.2" - }, - "engines": { - "node": ">=14" - } - }, - "../node_modules/registry-url": { - "version": "6.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "rc": "1.2.8" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/resolve-cwd": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/resolve-cwd/node_modules/resolve-from": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/resolve-from": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=4" - } - }, - "../node_modules/restore-cursor": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "onetime": "^7.0.0", - "signal-exit": "^4.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/reusify": { - "version": "1.1.0", - "dev": true, - "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" - } - }, - "../node_modules/rfdc": { - "version": "1.4.1", - "dev": true, - "license": "MIT" - }, - "../node_modules/run-applescript": { - "version": "7.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/run-async": { - "version": "4.0.6", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "../node_modules/run-parallel": { - "version": "1.2.0", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "license": "MIT", - "dependencies": { - "queue-microtask": "^1.2.2" - } - }, - "../node_modules/rxjs": { - "version": "7.8.2", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, - "../node_modules/safer-buffer": { - "version": "2.1.2", - "dev": true, - "license": "MIT" - }, - "../node_modules/sass": { - "version": "1.97.3", - "dev": true, - "license": "MIT", - "dependencies": { - "chokidar": "^4.0.0", - "immutable": "^5.0.2", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" - }, - "optionalDependencies": { - "@parcel/watcher": "^2.4.1" - } - }, - "../node_modules/scoped-regex": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/semver": { - "version": "7.7.4", - "dev": true, - "license": "ISC", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "../node_modules/shebang-command": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/shebang-regex": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "../node_modules/signal-exit": { - "version": "4.1.0", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "../node_modules/slash": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/slice-ansi": { - "version": "8.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.2.3", - "is-fullwidth-code-point": "^5.1.0" - }, - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "../node_modules/source-map-js": { - "version": "1.2.1", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/spdx-correct": { - "version": "3.2.0", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" - } - }, - "../node_modules/spdx-exceptions": { - "version": "2.5.0", - "dev": true, - "license": "CC-BY-3.0" - }, - "../node_modules/spdx-expression-parse": { - "version": "3.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" - } - }, - "../node_modules/spdx-license-ids": { - "version": "3.0.23", - "dev": true, - "license": "CC0-1.0" - }, - "../node_modules/string-argv": { - "version": "0.3.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.6.19" - } - }, - "../node_modules/string-width": { - "version": "8.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "get-east-asian-width": "^1.5.0", - "strip-ansi": "^7.1.2" - }, - "engines": { - "node": ">=20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/strip-ansi": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-regex": "^6.2.2" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "../node_modules/strip-final-newline": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/strip-json-comments": { - "version": "2.0.1", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "../node_modules/stubborn-fs": { - "version": "2.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "stubborn-utils": "^1.0.1" - } - }, - "../node_modules/stubborn-utils": { - "version": "1.0.2", - "dev": true, - "license": "MIT" - }, - "../node_modules/supports-color": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/supports-hyperlinks": { - "version": "2.3.0", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "../node_modules/symbol-observable": { - "version": "4.0.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10" - } - }, - "../node_modules/terminal-link": { - "version": "3.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-escapes": "^5.0.0", - "supports-hyperlinks": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/terminal-link/node_modules/ansi-escapes": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "type-fest": "^1.0.2" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/terminal-link/node_modules/type-fest": { - "version": "1.4.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/through": { - "version": "2.3.8", - "dev": true, - "license": "MIT" - }, - "../node_modules/tinyexec": { - "version": "1.0.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - } - }, - "../node_modules/tmp": { - "version": "0.0.33", - "dev": true, - "license": "MIT", - "dependencies": { - "os-tmpdir": "~1.0.2" - }, - "engines": { - "node": ">=0.6.0" - } - }, - "../node_modules/to-regex-range": { - "version": "5.0.1", - "dev": true, - "license": "MIT", - "dependencies": { - "is-number": "^7.0.0" - }, - "engines": { - "node": ">=8.0" - } - }, - "../node_modules/tslib": { - "version": "2.8.1", - "license": "0BSD" - }, - "../node_modules/type-fest": { - "version": "2.19.0", - "dev": true, - "license": "(MIT OR CC0-1.0)", - "engines": { - "node": ">=12.20" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/typescript": { - "version": "5.9.3", - "dev": true, - "license": "Apache-2.0", - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "../node_modules/unicorn-magic": { - "version": "0.3.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/update-notifier": { - "version": "7.3.1", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "boxen": "^8.0.1", - "chalk": "^5.3.0", - "configstore": "^7.0.0", - "is-in-ci": "^1.0.0", - "is-installed-globally": "^1.0.0", - "is-npm": "^6.0.0", - "latest-version": "^9.0.0", - "pupa": "^3.1.0", - "semver": "^7.6.3", - "xdg-basedir": "^5.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/yeoman/update-notifier?sponsor=1" - } - }, - "../node_modules/validate-npm-package-license": { - "version": "3.0.4", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" - } - }, - "../node_modules/validate-npm-package-name": { - "version": "5.0.1", - "dev": true, - "license": "ISC", - "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "../node_modules/when-exit": { - "version": "2.1.5", - "dev": true, - "license": "MIT" - }, - "../node_modules/which": { - "version": "2.0.2", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "../node_modules/widest-line": { - "version": "5.0.0", - "dev": true, - "license": "MIT", - "dependencies": { - "string-width": "^7.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/widest-line/node_modules/emoji-regex": { - "version": "10.6.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/widest-line/node_modules/string-width": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^10.3.0", - "get-east-asian-width": "^1.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/wrap-ansi": { - "version": "9.0.2", - "dev": true, - "license": "MIT", - "dependencies": { - "ansi-styles": "^6.2.1", - "string-width": "^7.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - } - }, - "../node_modules/wrap-ansi/node_modules/emoji-regex": { - "version": "10.6.0", - "dev": true, - "license": "MIT" - }, - "../node_modules/wrap-ansi/node_modules/string-width": { - "version": "7.2.0", - "dev": true, - "license": "MIT", - "dependencies": { - "emoji-regex": "^10.3.0", - "get-east-asian-width": "^1.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/wsl-utils": { - "version": "0.1.0", - "dev": true, - "license": "MIT", - "dependencies": { - "is-wsl": "^3.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/xdg-basedir": { - "version": "5.1.0", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/yaml": { - "version": "2.8.2", - "dev": true, - "license": "ISC", - "bin": { - "yaml": "bin.mjs" - }, - "engines": { - "node": ">= 14.6" - }, - "funding": { - "url": "https://github.com/sponsors/eemeli" - } - }, - "../node_modules/yoctocolors": { - "version": "2.1.2", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/yoctocolors-cjs": { - "version": "2.1.3", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "../node_modules/zone.js": { - "version": "0.16.1", - "dev": true, - "license": "MIT", - "peer": true - }, "node_modules/@algolia/abtesting": { "version": "1.14.1", + "resolved": "https://registry.npmjs.org/@algolia/abtesting/-/abtesting-1.14.1.tgz", + "integrity": "sha512-Dkj0BgPiLAaim9sbQ97UKDFHJE/880wgStAM18U++NaJ/2Cws34J5731ovJifr6E3Pv4T2CqvMXf8qLCC417Ew==", "dev": true, "license": "MIT", "dependencies": { @@ -4550,6 +66,8 @@ }, "node_modules/@algolia/client-abtesting": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/client-abtesting/-/client-abtesting-5.48.1.tgz", + "integrity": "sha512-LV5qCJdj+/m9I+Aj91o+glYszrzd7CX6NgKaYdTOj4+tUYfbS62pwYgUfZprYNayhkQpVFcrW8x8ZlIHpS23Vw==", "dev": true, "license": "MIT", "dependencies": { @@ -4564,6 +82,8 @@ }, "node_modules/@algolia/client-analytics": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-5.48.1.tgz", + "integrity": "sha512-/AVoMqHhPm14CcHq7mwB+bUJbfCv+jrxlNvRjXAuO+TQa+V37N8k1b0ijaRBPdmSjULMd8KtJbQyUyabXOu6Kg==", "dev": true, "license": "MIT", "dependencies": { @@ -4578,6 +98,8 @@ }, "node_modules/@algolia/client-common": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.48.1.tgz", + "integrity": "sha512-VXO+qu2Ep6ota28ktvBm3sG53wUHS2n7bgLWmce5jTskdlCD0/JrV4tnBm1l7qpla1CeoQb8D7ShFhad+UoSOw==", "dev": true, "license": "MIT", "engines": { @@ -4586,6 +108,8 @@ }, "node_modules/@algolia/client-insights": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/client-insights/-/client-insights-5.48.1.tgz", + "integrity": "sha512-zl+Qyb0nLg+Y5YvKp1Ij+u9OaPaKg2/EPzTwKNiVyOHnQJlFxmXyUZL1EInczAZsEY8hVpPCLtNfhMhfxluXKQ==", "dev": true, "license": "MIT", "dependencies": { @@ -4600,6 +124,8 @@ }, "node_modules/@algolia/client-personalization": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-5.48.1.tgz", + "integrity": "sha512-r89Qf9Oo9mKWQXumRu/1LtvVJAmEDpn8mHZMc485pRfQUMAwSSrsnaw1tQ3sszqzEgAr1c7rw6fjBI+zrAXTOw==", "dev": true, "license": "MIT", "dependencies": { @@ -4614,6 +140,8 @@ }, "node_modules/@algolia/client-query-suggestions": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/client-query-suggestions/-/client-query-suggestions-5.48.1.tgz", + "integrity": "sha512-TPKNPKfghKG/bMSc7mQYD9HxHRUkBZA4q1PEmHgICaSeHQscGqL4wBrKkhfPlDV1uYBKW02pbFMUhsOt7p4ZpA==", "dev": true, "license": "MIT", "dependencies": { @@ -4628,6 +156,8 @@ }, "node_modules/@algolia/client-search": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.48.1.tgz", + "integrity": "sha512-4Fu7dnzQyQmMFknYwTiN/HxPbH4DyxvQ1m+IxpPp5oslOgz8m6PG5qhiGbqJzH4HiT1I58ecDiCAC716UyVA8Q==", "dev": true, "license": "MIT", "dependencies": { @@ -4642,6 +172,8 @@ }, "node_modules/@algolia/ingestion": { "version": "1.48.1", + "resolved": "https://registry.npmjs.org/@algolia/ingestion/-/ingestion-1.48.1.tgz", + "integrity": "sha512-/RFq3TqtXDUUawwic/A9xylA2P3LDMO8dNhphHAUOU51b1ZLHrmZ6YYJm3df1APz7xLY1aht6okCQf+/vmrV9w==", "dev": true, "license": "MIT", "dependencies": { @@ -4656,6 +188,8 @@ }, "node_modules/@algolia/monitoring": { "version": "1.48.1", + "resolved": "https://registry.npmjs.org/@algolia/monitoring/-/monitoring-1.48.1.tgz", + "integrity": "sha512-Of0jTeAZRyRhC7XzDSjJef0aBkgRcvRAaw0ooYRlOw57APii7lZdq+layuNdeL72BRq1snaJhoMMwkmLIpJScw==", "dev": true, "license": "MIT", "dependencies": { @@ -4670,6 +204,8 @@ }, "node_modules/@algolia/recommend": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-5.48.1.tgz", + "integrity": "sha512-bE7JcpFXzxF5zHwj/vkl2eiCBvyR1zQ7aoUdO+GDXxGp0DGw7nI0p8Xj6u8VmRQ+RDuPcICFQcCwRIJT5tDJFw==", "dev": true, "license": "MIT", "dependencies": { @@ -4684,6 +220,8 @@ }, "node_modules/@algolia/requester-browser-xhr": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.48.1.tgz", + "integrity": "sha512-MK3wZ2koLDnvH/AmqIF1EKbJlhRS5j74OZGkLpxI4rYvNi9Jn/C7vb5DytBnQ4KUWts7QsmbdwHkxY5txQHXVw==", "dev": true, "license": "MIT", "dependencies": { @@ -4695,6 +233,8 @@ }, "node_modules/@algolia/requester-fetch": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.48.1.tgz", + "integrity": "sha512-2oDT43Y5HWRSIQMPQI4tA/W+TN/N2tjggZCUsqQV440kxzzoPGsvv9QP1GhQ4CoDa+yn6ygUsGp6Dr+a9sPPSg==", "dev": true, "license": "MIT", "dependencies": { @@ -4706,6 +246,8 @@ }, "node_modules/@algolia/requester-node-http": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.48.1.tgz", + "integrity": "sha512-xcaCqbhupVWhuBP1nwbk1XNvwrGljozutEiLx06mvqDf3o8cHyEgQSHS4fKJM+UAggaWVnnFW+Nne5aQ8SUJXg==", "dev": true, "license": "MIT", "dependencies": { @@ -4717,6 +259,8 @@ }, "node_modules/@ampproject/remapping": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -4728,11 +272,13 @@ } }, "node_modules/@angular-devkit/architect": { - "version": "0.2102.16", + "version": "0.2102.21", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.2102.21.tgz", + "integrity": "sha512-WqITVviALevNpCQoI50e3YY9qNOQT+gqTow/4FhWsxlAJFMb5uyilFpVz2hGYWPgosF3OAKmT1h9r+Jm9S6SUQ==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "21.2.16", + "@angular-devkit/core": "21.2.21", "rxjs": "7.8.2" }, "bin": { @@ -4745,7 +291,9 @@ } }, "node_modules/@angular-devkit/core": { - "version": "21.2.16", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-21.2.21.tgz", + "integrity": "sha512-xOr6mZ00M6hgM/xltAVkPVc/Yd1a/Wa0CGecV64JTITaVaSH8p8+wXe62Xavdr3pcc9cLKKUUB4mAup4k7Kkyw==", "dev": true, "license": "MIT", "dependencies": { @@ -4771,11 +319,13 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "21.2.16", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-21.2.21.tgz", + "integrity": "sha512-LgTd/0CpyWSxMJLLk0X85F5RyDlJekssLlapU1C8fKqOUdWONYncTXYvZUQ+zbRAGXHcSZrst1Vm8qdXbo11Mg==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "21.2.16", + "@angular-devkit/core": "21.2.21", "jsonc-parser": "3.3.1", "magic-string": "0.30.21", "ora": "9.3.0", @@ -4789,6 +339,8 @@ }, "node_modules/@angular-eslint/builder": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/builder/-/builder-21.4.0.tgz", + "integrity": "sha512-3kgGmrVaCYbLtDjC8g4BmMBbdz4thsOB8/NYly8JtXM8EuDZEk5Pz6VTRpJR02ARprwayraTTmhyvq6OGBlQ9w==", "dev": true, "license": "MIT", "dependencies": { @@ -4803,11 +355,15 @@ }, "node_modules/@angular-eslint/bundled-angular-compiler": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/bundled-angular-compiler/-/bundled-angular-compiler-21.4.0.tgz", + "integrity": "sha512-/3H4BPbQ1BHJkkrUsfusZtmHc+qiFWBBZ9UDPWah4xZMjflexOK9U4GYeH7nMjcuyqFnIlMMeJJNwNLGt/hmdg==", "dev": true, "license": "MIT" }, "node_modules/@angular-eslint/eslint-plugin": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin/-/eslint-plugin-21.4.0.tgz", + "integrity": "sha512-mow2DMj+xBvGl5t7jzC34R8YfbHbaGNyCNFzpovtl9qc0JbuqLyg6htmt8xb05f8ZjATOr4nz0ESt6HV4c51hw==", "dev": true, "license": "MIT", "dependencies": { @@ -4823,6 +379,8 @@ }, "node_modules/@angular-eslint/eslint-plugin-template": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/eslint-plugin-template/-/eslint-plugin-template-21.4.0.tgz", + "integrity": "sha512-sJEHx2WYnvOgPpzP1eHnUdRS06zgKmRxbiIR0JiCcaSen5iv1HlsMieXy//FS9TtNW+abHOy4UtDuGuSPflPFA==", "dev": true, "license": "MIT", "dependencies": { @@ -4841,6 +399,8 @@ }, "node_modules/@angular-eslint/schematics": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/schematics/-/schematics-21.4.0.tgz", + "integrity": "sha512-crD6Hfxs7x5bN9FCqTZI7uVSiGvprfCS3MCPOpyIQl87bRr/9aNhnicJ3ROUHv+2A713BgPHIgiCII/bxzrfPw==", "dev": true, "license": "MIT", "dependencies": { @@ -4858,8 +418,11 @@ }, "node_modules/@angular-eslint/template-parser": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/template-parser/-/template-parser-21.4.0.tgz", + "integrity": "sha512-BaUSLSyS+43fzDoJkTMkGqNdCXq3fGnUZsfXTmrlZPJf5AYFbgAlAPGZXDJyoNWw43fux+DafdlrlKcYUSgSIw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@angular-eslint/bundled-angular-compiler": "21.4.0", "eslint-scope": "9.1.2" @@ -4871,6 +434,8 @@ }, "node_modules/@angular-eslint/utils": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/@angular-eslint/utils/-/utils-21.4.0.tgz", + "integrity": "sha512-7pi+Ga7QmdH5Ig/diau6fR5L4yubgKr9TOjdCg7OeuE/zo0O3osTCNT6JOodzS/iQM1kSCJFDoIBKFeUOttiNw==", "dev": true, "license": "MIT", "dependencies": { @@ -4883,8 +448,12 @@ } }, "node_modules/@angular/animations": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-21.2.21.tgz", + "integrity": "sha512-ywgwBi6V/6WDnVH956q+tMfXoM1VsTUzp0XtUoloMqzDQ0FgJF9tDuBgt8ixHrUUTziZ3oudzgPza2YFBMafLA==", + "deprecated": "@angular/animations is deprecated. Use `animate.enter` and `animate.leave` instead. For more information see: https://v22.angular.dev/guide/animations.", "license": "MIT", + "peer": true, "dependencies": { "tslib": "^2.3.0" }, @@ -4892,24 +461,26 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/core": "21.2.17" + "@angular/core": "21.2.21" } }, "node_modules/@angular/build": { - "version": "21.2.16", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/build/-/build-21.2.21.tgz", + "integrity": "sha512-Z88uTaPte8uEYW+Sn5BUz7YoGAbi1dcoz8X1eaJi30bT7qtZ5Bph0vELMBu2VCtp9JFgZhsLn+uy8F6iIPiOUQ==", "dev": true, "license": "MIT", "dependencies": { "@ampproject/remapping": "2.3.0", - "@angular-devkit/architect": "0.2102.16", - "@babel/core": "7.29.0", + "@angular-devkit/architect": "0.2102.21", + "@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.21", "@vitejs/plugin-basic-ssl": "2.1.4", "beasties": "0.4.1", "browserslist": "^4.26.0", - "esbuild": "0.27.3", + "esbuild": "0.28.1", "https-proxy-agent": "7.0.6", "istanbul-lib-instrument": "6.0.3", "jsonc-parser": "3.3.1", @@ -4918,14 +489,14 @@ "mrmime": "2.0.1", "parse5-html-rewriting-stream": "8.0.0", "picomatch": "4.0.4", - "piscina": "5.1.4", + "piscina": "5.2.0", "rolldown": "1.0.0-rc.4", "sass": "1.97.3", "semver": "7.7.4", "source-map-support": "0.5.21", "tinyglobby": "0.2.15", - "undici": "7.24.4", - "vite": "7.3.2", + "undici": "7.29.0", + "vite": "7.3.6", "watchpack": "2.5.1" }, "engines": { @@ -4944,7 +515,7 @@ "@angular/platform-browser": "^21.0.0", "@angular/platform-server": "^21.0.0", "@angular/service-worker": "^21.0.0", - "@angular/ssr": "^21.2.16", + "@angular/ssr": "^21.2.21", "karma": "^6.4.0", "less": "^4.2.0", "ng-packagr": "^21.0.0", @@ -4994,17 +565,20 @@ } }, "node_modules/@angular/cli": { - "version": "21.2.16", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-21.2.21.tgz", + "integrity": "sha512-9TqWGpguYGpAsycSYX/Ji6csuPrEntdd+D2iK0TWIVQ1APCma7UmBgI1ltcATQNezxWiLTiJIMIOEuPG+cIVnw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@angular-devkit/architect": "0.2102.16", - "@angular-devkit/core": "21.2.16", - "@angular-devkit/schematics": "21.2.16", + "@angular-devkit/architect": "0.2102.21", + "@angular-devkit/core": "21.2.21", + "@angular-devkit/schematics": "21.2.21", "@inquirer/prompts": "7.10.1", "@listr2/prompt-adapter-inquirer": "3.0.5", - "@modelcontextprotocol/sdk": "1.26.0", - "@schematics/angular": "21.2.16", + "@modelcontextprotocol/sdk": "1.30.0", + "@schematics/angular": "21.2.21", "@yarnpkg/lockfile": "1.1.0", "algoliasearch": "5.48.1", "ini": "6.0.0", @@ -5027,8 +601,11 @@ } }, "node_modules/@angular/common": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-21.2.21.tgz", + "integrity": "sha512-ntouT80emF5osQW5XOI6PHSa6E3ZxPGIbwtIYznuiz9bBboW0TRs9YUSNg8TRfOiTBqwG8FKXCr19eyCaaTsgA==", "license": "MIT", + "peer": true, "dependencies": { "tslib": "^2.3.0" }, @@ -5036,13 +613,16 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/core": "21.2.17", + "@angular/core": "21.2.21", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/compiler": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-21.2.21.tgz", + "integrity": "sha512-v2cxgmfsXVPCFivnbTmCdr1X+iDct9ZZUy7InDdKbTSwJld8zSyWwBVr3/8xzZ9hV4F41la5IxIyRyej52Mslw==", "license": "MIT", + "peer": true, "dependencies": { "tslib": "^2.3.0" }, @@ -5051,11 +631,14 @@ } }, "node_modules/@angular/compiler-cli": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-21.2.21.tgz", + "integrity": "sha512-6xOrFUYYO9rDAUf+CnlqPtO1qFR4wOnKfWh9HXN3hWJ5nboo5R0K66arpw+TFYoqjhDLZcH4k7pVVnvUCJTlYg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@babel/core": "7.29.0", + "@babel/core": "7.29.7", "@jridgewell/sourcemap-codec": "^1.4.14", "chokidar": "^5.0.0", "convert-source-map": "^1.5.1", @@ -5072,7 +655,7 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/compiler": "21.2.17", + "@angular/compiler": "21.2.21", "typescript": ">=5.9 <6.1" }, "peerDependenciesMeta": { @@ -5082,8 +665,11 @@ } }, "node_modules/@angular/core": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-21.2.21.tgz", + "integrity": "sha512-87moY/3TmowvBcM7zYJQcpXg8O5Ro/6uQ2OdVILl7Tq9lBZbQlZcw5N+6b8s8LwRX4ka6srFVeVLW6JoJ1cFUw==", "license": "MIT", + "peer": true, "dependencies": { "tslib": "^2.3.0" }, @@ -5091,7 +677,7 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/compiler": "21.2.17", + "@angular/compiler": "21.2.21", "rxjs": "^6.5.3 || ^7.4.0", "zone.js": "~0.15.0 || ~0.16.0" }, @@ -5105,8 +691,11 @@ } }, "node_modules/@angular/forms": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-21.2.21.tgz", + "integrity": "sha512-PqsY1NtvHyQ9bxnguiChXfbqFRCBJiL3wfW6wzVcYIA59QLsKKNmYitoJf3KOKN0vqCU8ley18AvJwbohJPsCw==", "license": "MIT", + "peer": true, "dependencies": { "@standard-schema/spec": "^1.0.0", "tslib": "^2.3.0" @@ -5115,14 +704,16 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "21.2.17", - "@angular/core": "21.2.17", - "@angular/platform-browser": "21.2.17", + "@angular/common": "21.2.21", + "@angular/core": "21.2.21", + "@angular/platform-browser": "21.2.21", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/language-service": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-21.2.21.tgz", + "integrity": "sha512-WWaXBzCJHKUY5nxPFxx2twB9/vytBrOhtokQGMT5TRbC7n/5uBsn69vv21KnsCSxgU3E+JiEmql/D3ejahkU5w==", "dev": true, "license": "MIT", "engines": { @@ -5130,8 +721,11 @@ } }, "node_modules/@angular/platform-browser": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-21.2.21.tgz", + "integrity": "sha512-WtdVQzbAZEcUuRCV4kUG2z3zeePek60zW5WNCAdMgqoNWuxlt38BOOwTL9d7WohojJB55Ny4WeRrQYF7xyQgMQ==", "license": "MIT", + "peer": true, "dependencies": { "tslib": "^2.3.0" }, @@ -5139,9 +733,9 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/animations": "21.2.17", - "@angular/common": "21.2.17", - "@angular/core": "21.2.17" + "@angular/animations": "21.2.21", + "@angular/common": "21.2.21", + "@angular/core": "21.2.21" }, "peerDependenciesMeta": { "@angular/animations": { @@ -5150,7 +744,10 @@ } }, "node_modules/@angular/platform-browser-dynamic": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-21.2.21.tgz", + "integrity": "sha512-bV1GDyyD+KqntBJbzEXy4ojmp4usgaCpipYnLQEkR6tnm+2sEMbtecf/6fX0EICXceH1nxWoJ4yE/HCUkEMP8A==", + "deprecated": "@angular/platform-browser-dynamic is deprecated. Use `@angular/platform-browser` instead.", "license": "MIT", "dependencies": { "tslib": "^2.3.0" @@ -5159,15 +756,18 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "21.2.17", - "@angular/compiler": "21.2.17", - "@angular/core": "21.2.17", - "@angular/platform-browser": "21.2.17" + "@angular/common": "21.2.21", + "@angular/compiler": "21.2.21", + "@angular/core": "21.2.21", + "@angular/platform-browser": "21.2.21" } }, "node_modules/@angular/router": { - "version": "21.2.17", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-21.2.21.tgz", + "integrity": "sha512-Db7PfrZob1cUzwNVBSyT6Swyvw+s5uXdmUyEEYo2r0XiK5eXZFsVBeynu5I4Lltw91ktky6+SCn17aA6s+DvDA==", "license": "MIT", + "peer": true, "dependencies": { "tslib": "^2.3.0" }, @@ -5175,14 +775,16 @@ "node": "^20.19.0 || ^22.12.0 || >=24.0.0" }, "peerDependencies": { - "@angular/common": "21.2.17", - "@angular/core": "21.2.17", - "@angular/platform-browser": "21.2.17", + "@angular/common": "21.2.21", + "@angular/core": "21.2.21", + "@angular/platform-browser": "21.2.21", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@asamuzakjp/css-color": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", "dev": true, "license": "MIT", "dependencies": { @@ -5195,11 +797,15 @@ }, "node_modules/@asamuzakjp/css-color/node_modules/lru-cache": { "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", "dev": true, "license": "ISC" }, "node_modules/@babel/code-frame": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz", + "integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==", "dev": true, "license": "MIT", "dependencies": { @@ -5213,6 +819,8 @@ }, "node_modules/@babel/compat-data": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz", + "integrity": "sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg==", "dev": true, "license": "MIT", "engines": { @@ -5220,19 +828,21 @@ } }, "node_modules/@babel/core": { - "version": "7.29.0", + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz", + "integrity": "sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/code-frame": "^7.29.0", - "@babel/generator": "^7.29.0", - "@babel/helper-compilation-targets": "^7.28.6", - "@babel/helper-module-transforms": "^7.28.6", - "@babel/helpers": "^7.28.6", - "@babel/parser": "^7.29.0", - "@babel/template": "^7.28.6", - "@babel/traverse": "^7.29.0", - "@babel/types": "^7.29.0", + "@babel/code-frame": "^7.29.7", + "@babel/generator": "^7.29.7", + "@babel/helper-compilation-targets": "^7.29.7", + "@babel/helper-module-transforms": "^7.29.7", + "@babel/helpers": "^7.29.7", + "@babel/parser": "^7.29.7", + "@babel/template": "^7.29.7", + "@babel/traverse": "^7.29.7", + "@babel/types": "^7.29.7", "@jridgewell/remapping": "^2.3.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", @@ -5250,11 +860,15 @@ }, "node_modules/@babel/core/node_modules/convert-source-map": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true, "license": "MIT" }, "node_modules/@babel/core/node_modules/semver": { "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "license": "ISC", "bin": { @@ -5262,12 +876,14 @@ } }, "node_modules/@babel/generator": { - "version": "7.29.7", + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.8.tgz", + "integrity": "sha512-gZbepsdh3WDtgZKWL+vTPh71LSBrm/Y4/QDZBVCcYfmeTEEuoOYwlSy+G1StfJg+/Zy550u/3TATbm7qDbbMtg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/parser": "^7.29.7", - "@babel/types": "^7.29.7", + "@babel/parser": "^7.29.8", + "@babel/types": "^7.29.8", "@jridgewell/gen-mapping": "^0.3.12", "@jridgewell/trace-mapping": "^0.3.28", "jsesc": "^3.0.2" @@ -5278,6 +894,8 @@ }, "node_modules/@babel/helper-annotate-as-pure": { "version": "7.27.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.27.3.tgz", + "integrity": "sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==", "dev": true, "license": "MIT", "dependencies": { @@ -5289,6 +907,8 @@ }, "node_modules/@babel/helper-compilation-targets": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz", + "integrity": "sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g==", "dev": true, "license": "MIT", "dependencies": { @@ -5304,6 +924,8 @@ }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "license": "ISC", "bin": { @@ -5312,6 +934,8 @@ }, "node_modules/@babel/helper-globals": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz", + "integrity": "sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA==", "dev": true, "license": "MIT", "engines": { @@ -5320,6 +944,8 @@ }, "node_modules/@babel/helper-module-imports": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz", + "integrity": "sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g==", "dev": true, "license": "MIT", "dependencies": { @@ -5332,6 +958,8 @@ }, "node_modules/@babel/helper-module-transforms": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz", + "integrity": "sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg==", "dev": true, "license": "MIT", "dependencies": { @@ -5348,6 +976,8 @@ }, "node_modules/@babel/helper-split-export-declaration": { "version": "7.24.7", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz", + "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==", "dev": true, "license": "MIT", "dependencies": { @@ -5359,6 +989,8 @@ }, "node_modules/@babel/helper-string-parser": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", "dev": true, "license": "MIT", "engines": { @@ -5367,6 +999,8 @@ }, "node_modules/@babel/helper-validator-identifier": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", "dev": true, "license": "MIT", "engines": { @@ -5375,6 +1009,8 @@ }, "node_modules/@babel/helper-validator-option": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz", + "integrity": "sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw==", "dev": true, "license": "MIT", "engines": { @@ -5383,6 +1019,8 @@ }, "node_modules/@babel/helpers": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz", + "integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==", "dev": true, "license": "MIT", "dependencies": { @@ -5394,11 +1032,13 @@ } }, "node_modules/@babel/parser": { - "version": "7.29.7", + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.8.tgz", + "integrity": "sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/types": "^7.29.7" + "@babel/types": "^7.29.8" }, "bin": { "parser": "bin/babel-parser.js" @@ -5409,6 +1049,8 @@ }, "node_modules/@babel/template": { "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz", + "integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==", "dev": true, "license": "MIT", "dependencies": { @@ -5421,16 +1063,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.29.7", + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.8.tgz", + "integrity": "sha512-I5z7H3bf/41ktsNVLtpN0wAa336HkqIHQ5BuPLEhTkt1jVSyZpeNKIzTgEWmlxjdg81R0IgUCcaE+Ok3NvrfZg==", "dev": true, "license": "MIT", "dependencies": { "@babel/code-frame": "^7.29.7", - "@babel/generator": "^7.29.7", + "@babel/generator": "^7.29.8", "@babel/helper-globals": "^7.29.7", - "@babel/parser": "^7.29.7", + "@babel/parser": "^7.29.8", "@babel/template": "^7.29.7", - "@babel/types": "^7.29.7", + "@babel/types": "^7.29.8", "debug": "^4.3.1" }, "engines": { @@ -5438,7 +1082,9 @@ } }, "node_modules/@babel/types": { - "version": "7.29.7", + "version": "7.29.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.8.tgz", + "integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==", "dev": true, "license": "MIT", "dependencies": { @@ -5450,14 +1096,18 @@ } }, "node_modules/@capacitor/app": { - "version": "8.1.0", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/@capacitor/app/-/app-8.1.1.tgz", + "integrity": "sha512-xM2ZTX5jK60tFtmjsmJv+Cdj1Qsb6NcavkqmdEnCPQBeya9oKhamZJxYOnQNj1ZvcJM7sWfG6BEtSLx42pisbA==", "license": "MIT", "peerDependencies": { "@capacitor/core": ">=8.0.0" } }, "node_modules/@capacitor/cli": { - "version": "8.4.0", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-8.5.0.tgz", + "integrity": "sha512-rLdzMUM5QV4WITcqoWv04p32i14BXgUH2diqEH6MWQlWaJfiyNrvOyt/+d5vHAfOxOm1klBu637VDEobctlwBA==", "dev": true, "license": "MIT", "dependencies": { @@ -5477,6 +1127,7 @@ "semver": "^7.6.3", "tar": "^7.5.3", "tslib": "^2.8.1", + "xcode": "^3.0.1", "xml2js": "^0.6.2" }, "bin": { @@ -5488,35 +1139,46 @@ } }, "node_modules/@capacitor/core": { - "version": "8.4.0", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-8.5.0.tgz", + "integrity": "sha512-Ca4krtqH1hothjtBIwf2J2TW7IhYq1ujp8QeItTiJohNsqij8ja2DYYH3DU0l8RmxCWaBAFTGA2TgOgOMCSNsQ==", "license": "MIT", + "peer": true, "dependencies": { "tslib": "^2.1.0" } }, "node_modules/@capacitor/haptics": { "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@capacitor/haptics/-/haptics-8.0.2.tgz", + "integrity": "sha512-c2hZzRR5Fk1tbTvhG1jhh2XBAf3EhnIerMIb2sl7Mt41Gxx1fhBJFDa0/BI1IbY4loVepyyuqNC9820/GZuoWQ==", "license": "MIT", "peerDependencies": { "@capacitor/core": ">=8.0.0" } }, "node_modules/@capacitor/ios": { - "version": "8.4.0", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/@capacitor/ios/-/ios-8.5.0.tgz", + "integrity": "sha512-7k1TfohJu5BzRXc1F3g04Q8QQ0fyQgms6h1AvhnHb04VaNr9EdHOx03hL8O+OigEKMQnyJd1ZOjTPPNHCqL5Yw==", "license": "MIT", "peerDependencies": { - "@capacitor/core": "^8.4.0" + "@capacitor/core": "^8.5.0" } }, "node_modules/@capacitor/keyboard": { "version": "8.0.5", + "resolved": "https://registry.npmjs.org/@capacitor/keyboard/-/keyboard-8.0.5.tgz", + "integrity": "sha512-oFXygC4eKYA5l2MdpTR06L2M/4x6e2SLD5yS1T9+UBDKTkzyvhWKEhbYLUaTIBPpLKqlfGudJw1X73S1H9eUzQ==", "license": "MIT", "peerDependencies": { "@capacitor/core": ">=8.0.0" } }, "node_modules/@capacitor/status-bar": { - "version": "8.0.2", + "version": "8.0.3", + "resolved": "https://registry.npmjs.org/@capacitor/status-bar/-/status-bar-8.0.3.tgz", + "integrity": "sha512-csSpfNeN49Hx9JaQBSJEIiEbOLtXg3kcc2IpScq2fu5L520h3AWEvsxoH8Srk1jxfRKepaJ4S4sqSC3foI4AgA==", "license": "MIT", "peerDependencies": { "@capacitor/core": ">=8.0.0" @@ -5524,6 +1186,8 @@ }, "node_modules/@csstools/color-helpers": { "version": "5.1.0", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.1.0.tgz", + "integrity": "sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==", "dev": true, "funding": [ { @@ -5542,6 +1206,8 @@ }, "node_modules/@csstools/css-calc": { "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", "dev": true, "funding": [ { @@ -5564,6 +1230,8 @@ }, "node_modules/@csstools/css-color-parser": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.1.0.tgz", + "integrity": "sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==", "dev": true, "funding": [ { @@ -5590,6 +1258,8 @@ }, "node_modules/@csstools/css-parser-algorithms": { "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", "dev": true, "funding": [ { @@ -5602,6 +1272,7 @@ } ], "license": "MIT", + "peer": true, "engines": { "node": ">=18" }, @@ -5611,6 +1282,8 @@ }, "node_modules/@csstools/css-tokenizer": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", "dev": true, "funding": [ { @@ -5623,27 +1296,28 @@ } ], "license": "MIT", + "peer": true, "engines": { "node": ">=18" } }, "node_modules/@emnapi/core": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.1.tgz", - "integrity": "sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.3.tgz", + "integrity": "sha512-zLpS5asjEb7lq8jYLq37N6XKaE41DIexlY1rF/z4/tIl3wo13Sqm28fRyfIsKZD+NZ8mM5RoKkpW/rBcuoSZSg==", "dev": true, "license": "MIT", "optional": true, "peer": true, "dependencies": { - "@emnapi/wasi-threads": "1.2.2", + "@emnapi/wasi-threads": "1.2.3", "tslib": "^2.4.0" } }, "node_modules/@emnapi/runtime": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.1.tgz", - "integrity": "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==", + "version": "1.11.3", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.3.tgz", + "integrity": "sha512-Xz4Tpyki7XyrpbUK1jR1AhdAdaXyhhY4lZ3neLodmhpuWfy2PAQN5B46sAiU4liOXGLkHypn/qU+jvfWSCYYLA==", "dev": true, "license": "MIT", "optional": true, @@ -5653,19 +1327,20 @@ } }, "node_modules/@emnapi/wasi-threads": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.2.tgz", - "integrity": "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.3.tgz", + "integrity": "sha512-ELEBe8PsLvvJ6QMr0zLt8ffvOHW/dc1m3CEzNMg7aJUv3bMaoDtw2TXyDAwkYBuroxxuHEwhRTLJSe5sya547g==", "dev": true, "license": "MIT", "optional": true, - "peer": true, "dependencies": { "tslib": "^2.4.0" } }, "node_modules/@es-joy/jsdoccomment": { "version": "0.46.0", + "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.46.0.tgz", + "integrity": "sha512-C3Axuq1xd/9VqFZpW4YAzOx5O9q/LP46uIQy/iNDpHG3fmPa6TBtvfglMCs3RBiBxAIi0Go97r8+jvTt55XMyQ==", "dev": true, "license": "MIT", "dependencies": { @@ -5678,9 +1353,9 @@ } }, "node_modules/@esbuild/aix-ppc64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", - "integrity": "sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz", + "integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==", "cpu": [ "ppc64" ], @@ -5695,9 +1370,9 @@ } }, "node_modules/@esbuild/android-arm": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.3.tgz", - "integrity": "sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz", + "integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==", "cpu": [ "arm" ], @@ -5712,9 +1387,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz", - "integrity": "sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz", + "integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==", "cpu": [ "arm64" ], @@ -5729,9 +1404,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.3.tgz", - "integrity": "sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz", + "integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==", "cpu": [ "x64" ], @@ -5746,7 +1421,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.27.3", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz", + "integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==", "cpu": [ "arm64" ], @@ -5761,9 +1438,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz", - "integrity": "sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz", + "integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==", "cpu": [ "x64" ], @@ -5778,9 +1455,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz", - "integrity": "sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz", + "integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==", "cpu": [ "arm64" ], @@ -5795,9 +1472,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz", - "integrity": "sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz", + "integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==", "cpu": [ "x64" ], @@ -5812,9 +1489,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz", - "integrity": "sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz", + "integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==", "cpu": [ "arm" ], @@ -5829,9 +1506,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz", - "integrity": "sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz", + "integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==", "cpu": [ "arm64" ], @@ -5846,9 +1523,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz", - "integrity": "sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz", + "integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==", "cpu": [ "ia32" ], @@ -5863,9 +1540,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz", - "integrity": "sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz", + "integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==", "cpu": [ "loong64" ], @@ -5880,9 +1557,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz", - "integrity": "sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz", + "integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==", "cpu": [ "mips64el" ], @@ -5897,9 +1574,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz", - "integrity": "sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz", + "integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==", "cpu": [ "ppc64" ], @@ -5914,9 +1591,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz", - "integrity": "sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz", + "integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==", "cpu": [ "riscv64" ], @@ -5931,9 +1608,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz", - "integrity": "sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz", + "integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==", "cpu": [ "s390x" ], @@ -5948,9 +1625,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz", - "integrity": "sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.1.tgz", + "integrity": "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==", "cpu": [ "x64" ], @@ -5965,9 +1642,9 @@ } }, "node_modules/@esbuild/netbsd-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz", - "integrity": "sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz", + "integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==", "cpu": [ "arm64" ], @@ -5982,9 +1659,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz", - "integrity": "sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz", + "integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==", "cpu": [ "x64" ], @@ -5999,9 +1676,9 @@ } }, "node_modules/@esbuild/openbsd-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz", - "integrity": "sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz", + "integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==", "cpu": [ "arm64" ], @@ -6016,9 +1693,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz", - "integrity": "sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz", + "integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==", "cpu": [ "x64" ], @@ -6033,9 +1710,9 @@ } }, "node_modules/@esbuild/openharmony-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz", - "integrity": "sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz", + "integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==", "cpu": [ "arm64" ], @@ -6050,9 +1727,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz", - "integrity": "sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz", + "integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==", "cpu": [ "x64" ], @@ -6067,9 +1744,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz", - "integrity": "sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz", + "integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==", "cpu": [ "arm64" ], @@ -6084,9 +1761,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz", - "integrity": "sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz", + "integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==", "cpu": [ "ia32" ], @@ -6101,9 +1778,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.27.3", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz", - "integrity": "sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz", + "integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==", "cpu": [ "x64" ], @@ -6118,7 +1795,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.9.1", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.10.1.tgz", + "integrity": "sha512-cuadcxVFE8sDK6iWJbs8Sn0av2Nrh2QSGQhVlBW9AaAHqHwjWsZHT8LJ4hFGPh7ASBV2deFdM7H/DPjulmh8rg==", "dev": true, "license": "MIT", "dependencies": { @@ -6136,6 +1815,8 @@ }, "node_modules/@eslint-community/regexpp": { "version": "4.12.2", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.12.2.tgz", + "integrity": "sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==", "dev": true, "license": "MIT", "engines": { @@ -6144,6 +1825,8 @@ }, "node_modules/@eslint/config-array": { "version": "0.21.2", + "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.21.2.tgz", + "integrity": "sha512-nJl2KGTlrf9GjLimgIru+V/mzgSK0ABCDQRvxw5BjURL7WfH5uoWmizbH7QB6MmnMBd8cIC9uceWnezL1VZWWw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6157,11 +1840,15 @@ }, "node_modules/@eslint/config-array/node_modules/balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true, "license": "MIT" }, "node_modules/@eslint/config-array/node_modules/brace-expansion": { - "version": "1.1.15", + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz", + "integrity": "sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==", "dev": true, "license": "MIT", "dependencies": { @@ -6171,6 +1858,8 @@ }, "node_modules/@eslint/config-array/node_modules/minimatch": { "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -6182,6 +1871,8 @@ }, "node_modules/@eslint/config-helpers": { "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.2.tgz", + "integrity": "sha512-gBrxN88gOIf3R7ja5K9slwNayVcZgK6SOUORm2uBzTeIEfeVaIhOpCtTox3P6R7o2jLFwLFTLnC7kU/RGcYEgw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6193,6 +1884,8 @@ }, "node_modules/@eslint/core": { "version": "0.17.0", + "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.17.0.tgz", + "integrity": "sha512-yL/sLrpmtDaFEiUj1osRP4TI2MDz1AddJL+jZ7KSqvBuliN4xqYY54IfdN8qD8Toa6g1iloph1fxQNkjOxrrpQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6203,7 +1896,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "3.3.5", + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.3.6.tgz", + "integrity": "sha512-l2Ul9PrHsPCKcEY/ac7VgFj9D80C7S68sOKc618SyHDPK36s1XcFebXY0iTzUVn4Yq+YbwvSnDmCz9yxjX+QrA==", "dev": true, "license": "MIT", "dependencies": { @@ -6213,7 +1908,7 @@ "globals": "^14.0.0", "ignore": "^5.2.0", "import-fresh": "^3.2.1", - "js-yaml": "^4.1.1", + "js-yaml": "^4.3.0", "minimatch": "^3.1.5", "strip-json-comments": "^3.1.1" }, @@ -6226,6 +1921,8 @@ }, "node_modules/@eslint/eslintrc/node_modules/ajv": { "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", "dev": true, "license": "MIT", "dependencies": { @@ -6241,11 +1938,15 @@ }, "node_modules/@eslint/eslintrc/node_modules/balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true, "license": "MIT" }, "node_modules/@eslint/eslintrc/node_modules/brace-expansion": { - "version": "1.1.15", + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz", + "integrity": "sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==", "dev": true, "license": "MIT", "dependencies": { @@ -6255,6 +1956,8 @@ }, "node_modules/@eslint/eslintrc/node_modules/ignore": { "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, "license": "MIT", "engines": { @@ -6263,11 +1966,15 @@ }, "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true, "license": "MIT" }, "node_modules/@eslint/eslintrc/node_modules/minimatch": { "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -6278,7 +1985,9 @@ } }, "node_modules/@eslint/js": { - "version": "9.39.4", + "version": "9.39.5", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.5.tgz", + "integrity": "sha512-QywQuszQh77pIXCsq998c8hbhSTI/azTty1Z6N53dmAudKHhy573j3yvRLsX2BSp8YpLtoCEG8E9DJe+8zUh4A==", "dev": true, "license": "MIT", "engines": { @@ -6290,6 +1999,8 @@ }, "node_modules/@eslint/object-schema": { "version": "2.1.7", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.7.tgz", + "integrity": "sha512-VtAOaymWVfZcmZbp6E2mympDIHvyjXs/12LqWYjVw6qjrfF+VK+fyG33kChz3nnK+SU5/NeHOqrTEHS8sXO3OA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -6298,6 +2009,8 @@ }, "node_modules/@eslint/plugin-kit": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.1.tgz", + "integrity": "sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6310,6 +2023,8 @@ }, "node_modules/@gar/promise-retry": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@gar/promise-retry/-/promise-retry-1.0.3.tgz", + "integrity": "sha512-GmzA9ckNokPypTg10pgpeHNQe7ph+iIKKmhKu3Ob9ANkswreCx7R3cKmY781K8QK3AqVL3xVh9A42JvIAbkkSA==", "dev": true, "license": "MIT", "engines": { @@ -6318,16 +2033,20 @@ }, "node_modules/@harperfast/extended-iterable": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@harperfast/extended-iterable/-/extended-iterable-1.0.3.tgz", + "integrity": "sha512-sSAYhQca3rDWtQUHSAPeO7axFIUJOI6hn1gjRC5APVE1a90tuyT8f5WIgRsFhhWA7htNkju2veB9eWL6YHi/Lw==", "dev": true, "license": "Apache-2.0", "optional": true }, "node_modules/@hono/node-server": { - "version": "1.19.14", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.1.tgz", + "integrity": "sha512-ELuehkj5VCBdgEw9zs+ivkKwyzzUCSQuE96YmiPvn1ECBoZCczbFXJLeEGMTYjphP6gydh4pHMqEYPVMYUVgQg==", "dev": true, "license": "MIT", "engines": { - "node": ">=18.14.1" + "node": ">=20" }, "peerDependencies": { "hono": "^4" @@ -6335,6 +2054,8 @@ }, "node_modules/@humanfs/core": { "version": "0.19.2", + "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.2.tgz", + "integrity": "sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6346,6 +2067,8 @@ }, "node_modules/@humanfs/node": { "version": "0.16.8", + "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.8.tgz", + "integrity": "sha512-gE1eQNZ3R++kTzFUpdGlpmy8kDZD/MLyHqDwqjkVQI0JMdI1D51sy1H958PNXYkM2rAac7e5/CnIKZrHtPh3BQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -6359,6 +2082,8 @@ }, "node_modules/@humanfs/types": { "version": "0.15.0", + "resolved": "https://registry.npmjs.org/@humanfs/types/-/types-0.15.0.tgz", + "integrity": "sha512-ZZ1w0aoQkwuUuC7Yf+7sdeaNfqQiiLcSRbfI08oAxqLtpXQr9AIVX7Ay7HLDuiLYAaFPu8oBYNq/QIi9URHJ3Q==", "dev": true, "license": "Apache-2.0", "engines": { @@ -6367,6 +2092,8 @@ }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -6379,6 +2106,8 @@ }, "node_modules/@humanwhocodes/retry": { "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.4.3.tgz", + "integrity": "sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -6391,6 +2120,8 @@ }, "node_modules/@inquirer/ansi": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@inquirer/ansi/-/ansi-1.0.2.tgz", + "integrity": "sha512-S8qNSZiYzFd0wAcyG5AXCvUHC5Sr7xpZ9wZ2py9XR88jUz8wooStVx5M6dRzczbBWjic9NP7+rY0Xi7qqK/aMQ==", "dev": true, "license": "MIT", "engines": { @@ -6399,6 +2130,8 @@ }, "node_modules/@inquirer/checkbox": { "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.3.2.tgz", + "integrity": "sha512-VXukHf0RR1doGe6Sm4F0Em7SWYLTHSsbGfJdS9Ja2bX5/D5uwVOEjr07cncLROdBvmnvCATYEWlHqYmXv2IlQA==", "dev": true, "license": "MIT", "dependencies": { @@ -6422,6 +2155,8 @@ }, "node_modules/@inquirer/confirm": { "version": "5.1.21", + "resolved": "https://registry.npmjs.org/@inquirer/confirm/-/confirm-5.1.21.tgz", + "integrity": "sha512-KR8edRkIsUayMXV+o3Gv+q4jlhENF9nMYUZs9PA2HzrXeHI8M5uDag70U7RJn9yyiMZSbtF5/UexBtAVtZGSbQ==", "dev": true, "license": "MIT", "dependencies": { @@ -6442,6 +2177,8 @@ }, "node_modules/@inquirer/core": { "version": "10.3.2", + "resolved": "https://registry.npmjs.org/@inquirer/core/-/core-10.3.2.tgz", + "integrity": "sha512-43RTuEbfP8MbKzedNqBrlhhNKVwoK//vUFNW3Q3vZ88BLcrs4kYpGg+B2mm5p2K/HfygoCxuKwJJiv8PbGmE0A==", "dev": true, "license": "MIT", "dependencies": { @@ -6468,6 +2205,8 @@ }, "node_modules/@inquirer/editor": { "version": "4.2.23", + "resolved": "https://registry.npmjs.org/@inquirer/editor/-/editor-4.2.23.tgz", + "integrity": "sha512-aLSROkEwirotxZ1pBaP8tugXRFCxW94gwrQLxXfrZsKkfjOYC1aRvAZuhpJOb5cu4IBTJdsCigUlf2iCOu4ZDQ==", "dev": true, "license": "MIT", "dependencies": { @@ -6489,6 +2228,8 @@ }, "node_modules/@inquirer/expand": { "version": "4.0.23", + "resolved": "https://registry.npmjs.org/@inquirer/expand/-/expand-4.0.23.tgz", + "integrity": "sha512-nRzdOyFYnpeYTTR2qFwEVmIWypzdAx/sIkCMeTNTcflFOovfqUk+HcFhQQVBftAh9gmGrpFj6QcGEqrDMDOiew==", "dev": true, "license": "MIT", "dependencies": { @@ -6510,6 +2251,8 @@ }, "node_modules/@inquirer/external-editor": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@inquirer/external-editor/-/external-editor-1.0.3.tgz", + "integrity": "sha512-RWbSrDiYmO4LbejWY7ttpxczuwQyZLBUyygsA9Nsv95hpzUWwnNTVQmAq3xuh7vNwCp07UTmE5i11XAEExx4RA==", "dev": true, "license": "MIT", "dependencies": { @@ -6530,6 +2273,8 @@ }, "node_modules/@inquirer/figures": { "version": "1.0.15", + "resolved": "https://registry.npmjs.org/@inquirer/figures/-/figures-1.0.15.tgz", + "integrity": "sha512-t2IEY+unGHOzAaVM5Xx6DEWKeXlDDcNPeDyUpsRc6CUhBfU3VQOEl+Vssh7VNp1dR8MdUJBWhuObjXCsVpjN5g==", "dev": true, "license": "MIT", "engines": { @@ -6538,6 +2283,8 @@ }, "node_modules/@inquirer/input": { "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@inquirer/input/-/input-4.3.1.tgz", + "integrity": "sha512-kN0pAM4yPrLjJ1XJBjDxyfDduXOuQHrBB8aLDMueuwUGn+vNpF7Gq7TvyVxx8u4SHlFFj4trmj+a2cbpG4Jn1g==", "dev": true, "license": "MIT", "dependencies": { @@ -6558,6 +2305,8 @@ }, "node_modules/@inquirer/number": { "version": "3.0.23", + "resolved": "https://registry.npmjs.org/@inquirer/number/-/number-3.0.23.tgz", + "integrity": "sha512-5Smv0OK7K0KUzUfYUXDXQc9jrf8OHo4ktlEayFlelCjwMXz0299Y8OrI+lj7i4gCBY15UObk76q0QtxjzFcFcg==", "dev": true, "license": "MIT", "dependencies": { @@ -6578,6 +2327,8 @@ }, "node_modules/@inquirer/password": { "version": "4.0.23", + "resolved": "https://registry.npmjs.org/@inquirer/password/-/password-4.0.23.tgz", + "integrity": "sha512-zREJHjhT5vJBMZX/IUbyI9zVtVfOLiTO66MrF/3GFZYZ7T4YILW5MSkEYHceSii/KtRk+4i3RE7E1CUXA2jHcA==", "dev": true, "license": "MIT", "dependencies": { @@ -6599,8 +2350,11 @@ }, "node_modules/@inquirer/prompts": { "version": "7.10.1", + "resolved": "https://registry.npmjs.org/@inquirer/prompts/-/prompts-7.10.1.tgz", + "integrity": "sha512-Dx/y9bCQcXLI5ooQ5KyvA4FTgeo2jYj/7plWfV5Ak5wDPKQZgudKez2ixyfz7tKXzcJciTxqLeK7R9HItwiByg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@inquirer/checkbox": "^4.3.2", "@inquirer/confirm": "^5.1.21", @@ -6627,6 +2381,8 @@ }, "node_modules/@inquirer/rawlist": { "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@inquirer/rawlist/-/rawlist-4.1.11.tgz", + "integrity": "sha512-+LLQB8XGr3I5LZN/GuAHo+GpDJegQwuPARLChlMICNdwW7OwV2izlCSCxN6cqpL0sMXmbKbFcItJgdQq5EBXTw==", "dev": true, "license": "MIT", "dependencies": { @@ -6648,6 +2404,8 @@ }, "node_modules/@inquirer/search": { "version": "3.2.2", + "resolved": "https://registry.npmjs.org/@inquirer/search/-/search-3.2.2.tgz", + "integrity": "sha512-p2bvRfENXCZdWF/U2BXvnSI9h+tuA8iNqtUKb9UWbmLYCRQxd8WkvwWvYn+3NgYaNwdUkHytJMGG4MMLucI1kA==", "dev": true, "license": "MIT", "dependencies": { @@ -6670,6 +2428,8 @@ }, "node_modules/@inquirer/select": { "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@inquirer/select/-/select-4.4.2.tgz", + "integrity": "sha512-l4xMuJo55MAe+N7Qr4rX90vypFwCajSakx59qe/tMaC1aEHWLyw68wF4o0A4SLAY4E0nd+Vt+EyskeDIqu1M6w==", "dev": true, "license": "MIT", "dependencies": { @@ -6693,6 +2453,8 @@ }, "node_modules/@inquirer/type": { "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@inquirer/type/-/type-3.0.10.tgz", + "integrity": "sha512-BvziSRxfz5Ov8ch0z/n3oijRSEcEsHnhggm4xFZe93DHcUCTlutlq9Ox4SVENAfcRD22UQq7T/atg9Wr3k09eA==", "dev": true, "license": "MIT", "engines": { @@ -6733,6 +2495,8 @@ }, "node_modules/@ionic/angular-toolkit": { "version": "12.3.0", + "resolved": "https://registry.npmjs.org/@ionic/angular-toolkit/-/angular-toolkit-12.3.0.tgz", + "integrity": "sha512-9cPTMmwggviB2W7wf4sv4vFeQnYq5HbO6V89UqQHopShokdhSvUFpaQ2w1/Mdf/ot8PghGjR3t5IdnXV7i1LvA==", "dev": true, "license": "MIT", "dependencies": { @@ -6742,7 +2506,9 @@ } }, "node_modules/@ionic/angular-toolkit/node_modules/@angular-devkit/core": { - "version": "20.3.29", + "version": "20.3.34", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-20.3.34.tgz", + "integrity": "sha512-vcDaXzF3E+gGD62gdPa0AZlEertqB3raufEjT5Y0bl9MO4t2CCanEbbIfIyPtpLp22SJOyOErx/39weeEbfmjQ==", "dev": true, "license": "MIT", "dependencies": { @@ -6768,11 +2534,13 @@ } }, "node_modules/@ionic/angular-toolkit/node_modules/@angular-devkit/schematics": { - "version": "20.3.29", + "version": "20.3.34", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-20.3.34.tgz", + "integrity": "sha512-JW+RmDOeCGrzcdiTthw/ZlYMmsI3n2akWAdOUeczMdnbWfygMcbft3r8D+k1uefuxfAhJ4PgTtvECKhDqLN67g==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "20.3.29", + "@angular-devkit/core": "20.3.34", "jsonc-parser": "3.3.1", "magic-string": "0.30.17", "ora": "8.2.0", @@ -6785,12 +2553,14 @@ } }, "node_modules/@ionic/angular-toolkit/node_modules/@schematics/angular": { - "version": "20.3.29", + "version": "20.3.34", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-20.3.34.tgz", + "integrity": "sha512-Yja14zhlb59TaADWx2/4FptSJ85FuhSfSlB6RgQx9t8N7mVLNyUVhxBw6RaCcgazhSP4i4XcgOvY9pMiqO8a2g==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "20.3.29", - "@angular-devkit/schematics": "20.3.29", + "@angular-devkit/core": "20.3.34", + "@angular-devkit/schematics": "20.3.34", "jsonc-parser": "3.3.1" }, "engines": { @@ -6800,7 +2570,9 @@ } }, "node_modules/@ionic/angular-toolkit/node_modules/ansi-regex": { - "version": "6.2.2", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.3.0.tgz", + "integrity": "sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==", "dev": true, "license": "MIT", "engines": { @@ -6812,6 +2584,8 @@ }, "node_modules/@ionic/angular-toolkit/node_modules/chalk": { "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", "dev": true, "license": "MIT", "engines": { @@ -6821,8 +2595,28 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/@ionic/angular-toolkit/node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/@ionic/angular-toolkit/node_modules/cli-spinners": { "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", "dev": true, "license": "MIT", "engines": { @@ -6834,11 +2628,15 @@ }, "node_modules/@ionic/angular-toolkit/node_modules/emoji-regex": { "version": "10.6.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", "dev": true, "license": "MIT" }, "node_modules/@ionic/angular-toolkit/node_modules/log-symbols": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz", + "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==", "dev": true, "license": "MIT", "dependencies": { @@ -6854,6 +2652,8 @@ }, "node_modules/@ionic/angular-toolkit/node_modules/log-symbols/node_modules/is-unicode-supported": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", "dev": true, "license": "MIT", "engines": { @@ -6865,6 +2665,8 @@ }, "node_modules/@ionic/angular-toolkit/node_modules/magic-string": { "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", "dev": true, "license": "MIT", "dependencies": { @@ -6873,6 +2675,8 @@ }, "node_modules/@ionic/angular-toolkit/node_modules/ora": { "version": "8.2.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-8.2.0.tgz", + "integrity": "sha512-weP+BZ8MVNnlCm8c0Qdc1WSWq4Qn7I+9CJGm7Qali6g44e/PUzbjNqJX5NJ9ljlNMosfJvg1fKEGILklK9cwnw==", "dev": true, "license": "MIT", "dependencies": { @@ -6893,8 +2697,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@ionic/angular-toolkit/node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/@ionic/angular-toolkit/node_modules/stdin-discarder": { "version": "0.2.2", + "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.2.2.tgz", + "integrity": "sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==", "dev": true, "license": "MIT", "engines": { @@ -6906,6 +2727,8 @@ }, "node_modules/@ionic/angular-toolkit/node_modules/string-width": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "license": "MIT", "dependencies": { @@ -6922,6 +2745,8 @@ }, "node_modules/@ionic/angular-toolkit/node_modules/strip-ansi": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { @@ -6934,8 +2759,24 @@ "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, + "node_modules/@ionic/angular/node_modules/@ionic/core": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-9.0.0.tgz", + "integrity": "sha512-ouHmLIdyP0vTV0PK/kj0QNtQTcDjyoWi2vKRaCkwj0xY3oU9qq3lB0N6w3Cm93ol0inBuXgn3/IN71BTp88c+g==", + "license": "MIT", + "dependencies": { + "@stencil/core": "^4.43.5", + "ionicons": "^8.1.0", + "tslib": "^2.1.0" + }, + "engines": { + "node": ">= 16" + } + }, "node_modules/@ionic/cli-framework-output": { "version": "2.2.8", + "resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.8.tgz", + "integrity": "sha512-TshtaFQsovB4NWRBydbNFawql6yul7d5bMiW1WYYf17hd99V6xdDdk3vtF51bw6sLkxON3bDQpWsnUc9/hVo3g==", "dev": true, "license": "MIT", "dependencies": { @@ -6948,21 +2789,50 @@ } }, "node_modules/@ionic/core": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-9.0.0.tgz", - "integrity": "sha512-ouHmLIdyP0vTV0PK/kj0QNtQTcDjyoWi2vKRaCkwj0xY3oU9qq3lB0N6w3Cm93ol0inBuXgn3/IN71BTp88c+g==", + "version": "8.8.19", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-8.8.19.tgz", + "integrity": "sha512-eAAKZi/qR0U44OxH3MXAyoyLxTl1AeQCoOWvGdzywKbpl/JTVlGnfZJCiJGTmXszQlRsNXsl7fMDOvpsOtf6sQ==", + "dev": true, "license": "MIT", + "optional": true, "dependencies": { - "@stencil/core": "^4.43.5", - "ionicons": "^8.1.0", + "@stencil/core": "4.43.5", + "ionicons": "^8.0.13", "tslib": "^2.1.0" }, "engines": { - "node": ">= 16" + "node": ">= 16" + } + }, + "node_modules/@ionic/core/node_modules/@stencil/core": { + "version": "4.43.5", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-4.43.5.tgz", + "integrity": "sha512-cgWD+GeuvJpTe1WQn40p02+BJ2j0j1YJ17GdkF2qKIQ23s2e3Zivq5yISXS3dcuV6oUJFN93jprdk+nk/sq99Q==", + "dev": true, + "license": "MIT", + "optional": true, + "bin": { + "stencil": "bin/stencil" + }, + "engines": { + "node": ">=16.0.0", + "npm": ">=7.10.0" + }, + "optionalDependencies": { + "@rollup/rollup-darwin-arm64": "4.44.0", + "@rollup/rollup-darwin-x64": "4.44.0", + "@rollup/rollup-linux-arm64-gnu": "4.44.0", + "@rollup/rollup-linux-arm64-musl": "4.44.0", + "@rollup/rollup-linux-x64-gnu": "4.44.0", + "@rollup/rollup-linux-x64-musl": "4.44.0", + "@rollup/rollup-win32-arm64-msvc": "4.44.0", + "@rollup/rollup-win32-x64-msvc": "4.44.0" } }, "node_modules/@ionic/utils-array": { "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.6.tgz", + "integrity": "sha512-0JZ1Zkp3wURnv8oq6Qt7fMPo5MpjbLoUoa9Bu2Q4PJuSDWM8H8gwF3dQO7VTeUj3/0o1IB1wGkFWZZYgUXZMUg==", "dev": true, "license": "MIT", "dependencies": { @@ -6975,6 +2845,8 @@ }, "node_modules/@ionic/utils-fs": { "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", + "integrity": "sha512-2EknRvMVfhnyhL1VhFkSLa5gOcycK91VnjfrTB0kbqkTFCOXyXgVLI5whzq7SLrgD9t1aqos3lMMQyVzaQ5gVA==", "dev": true, "license": "MIT", "dependencies": { @@ -6989,6 +2861,8 @@ }, "node_modules/@ionic/utils-fs/node_modules/fs-extra": { "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", "dev": true, "license": "MIT", "dependencies": { @@ -7003,6 +2877,8 @@ }, "node_modules/@ionic/utils-object": { "version": "2.1.6", + "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.6.tgz", + "integrity": "sha512-vCl7sl6JjBHFw99CuAqHljYJpcE88YaH2ZW4ELiC/Zwxl5tiwn4kbdP/gxi2OT3MQb1vOtgAmSNRtusvgxI8ww==", "dev": true, "license": "MIT", "dependencies": { @@ -7015,6 +2891,8 @@ }, "node_modules/@ionic/utils-process": { "version": "2.1.12", + "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.12.tgz", + "integrity": "sha512-Jqkgyq7zBs/v/J3YvKtQQiIcxfJyplPgECMWgdO0E1fKrrH8EF0QGHNJ9mJCn6PYe2UtHNS8JJf5G21e09DfYg==", "dev": true, "license": "MIT", "dependencies": { @@ -7031,11 +2909,15 @@ }, "node_modules/@ionic/utils-process/node_modules/signal-exit": { "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true, "license": "ISC" }, "node_modules/@ionic/utils-stream": { "version": "3.1.7", + "resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.7.tgz", + "integrity": "sha512-eSELBE7NWNFIHTbTC2jiMvh1ABKGIpGdUIvARsNPMNQhxJB3wpwdiVnoBoTYp+5a6UUIww4Kpg7v6S7iTctH1w==", "dev": true, "license": "MIT", "dependencies": { @@ -7048,6 +2930,8 @@ }, "node_modules/@ionic/utils-subprocess": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-3.0.1.tgz", + "integrity": "sha512-cT4te3AQQPeIM9WCwIg8ohroJ8TjsYaMb2G4ZEgv9YzeDqHZ4JpeIKqG2SoaA3GmVQ3sOfhPM6Ox9sxphV/d1A==", "dev": true, "license": "MIT", "dependencies": { @@ -7066,6 +2950,8 @@ }, "node_modules/@ionic/utils-terminal": { "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.5.tgz", + "integrity": "sha512-3cKScz9Jx2/Pr9ijj1OzGlBDfcmx7OMVBt4+P1uRR0SSW4cm1/y3Mo4OY3lfkuaYifMNBW8Wz6lQHbs1bihr7A==", "dev": true, "license": "MIT", "dependencies": { @@ -7085,11 +2971,15 @@ }, "node_modules/@ionic/utils-terminal/node_modules/signal-exit": { "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true, "license": "ISC" }, "node_modules/@ionic/utils-terminal/node_modules/wrap-ansi": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", "dev": true, "license": "MIT", "dependencies": { @@ -7106,6 +2996,8 @@ }, "node_modules/@isaacs/fs-minipass": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz", + "integrity": "sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==", "dev": true, "license": "ISC", "dependencies": { @@ -7117,6 +3009,8 @@ }, "node_modules/@istanbuljs/schema": { "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.6.tgz", + "integrity": "sha512-+Sg6GCR/wy1oSmQDFq4LQDAhm3ETKnorxN+y5nbLULOR3P0c14f2Wurzj3/xqPXtasLFfHd5iRFQ7AJt4KH2cw==", "dev": true, "license": "MIT", "engines": { @@ -7125,6 +3019,8 @@ }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.13", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", + "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", "dev": true, "license": "MIT", "dependencies": { @@ -7134,6 +3030,8 @@ }, "node_modules/@jridgewell/remapping": { "version": "2.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", + "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", "dev": true, "license": "MIT", "dependencies": { @@ -7143,6 +3041,8 @@ }, "node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", "dev": true, "license": "MIT", "engines": { @@ -7151,11 +3051,15 @@ }, "node_modules/@jridgewell/sourcemap-codec": { "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", "dev": true, "license": "MIT" }, "node_modules/@jridgewell/trace-mapping": { "version": "0.3.31", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", + "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", "dev": true, "license": "MIT", "dependencies": { @@ -7165,6 +3069,8 @@ }, "node_modules/@listr2/prompt-adapter-inquirer": { "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@listr2/prompt-adapter-inquirer/-/prompt-adapter-inquirer-3.0.5.tgz", + "integrity": "sha512-WELs+hj6xcilkloBXYf9XXK8tYEnKsgLj01Xl5ONUJpKjmT5hGVUzNUS5tooUxs7pGMrw+jFD/41WpqW4V3LDA==", "dev": true, "license": "MIT", "dependencies": { @@ -7180,6 +3086,8 @@ }, "node_modules/@lmdb/lmdb-darwin-arm64": { "version": "3.5.1", + "resolved": "https://registry.npmjs.org/@lmdb/lmdb-darwin-arm64/-/lmdb-darwin-arm64-3.5.1.tgz", + "integrity": "sha512-tpfN4kKrrMpQ+If1l8bhmoNkECJi0iOu6AEdrTJvWVC+32sLxTARX5Rsu579mPImRP9YFWfWgeRQ5oav7zApQQ==", "cpu": [ "arm64" ], @@ -7275,11 +3183,13 @@ ] }, "node_modules/@modelcontextprotocol/sdk": { - "version": "1.26.0", + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.30.0.tgz", + "integrity": "sha512-xKd8OIzlqNzcqcNumGAa6g+PW2kjD5vrpcKOnfldAUPP3j7lnqMPwlTXQm8gF+UwH72z0lqaRbjr9hqGz0eITA==", "dev": true, "license": "MIT", "dependencies": { - "@hono/node-server": "^1.19.9", + "@hono/node-server": "^1.19.9 || ^2.0.5", "ajv": "^8.17.1", "ajv-formats": "^3.0.1", "content-type": "^1.0.5", @@ -7315,6 +3225,8 @@ }, "node_modules/@msgpackr-extract/msgpackr-extract-darwin-arm64": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@msgpackr-extract/msgpackr-extract-darwin-arm64/-/msgpackr-extract-darwin-arm64-3.0.4.tgz", + "integrity": "sha512-LCkGo6JDfaBhgST7UpPWgNgLINpcpabaHfyz5OBx75nUYxBsaEPxjnyNjWpeb/xBup/682QnBfRBy2/LvPutZQ==", "cpu": [ "arm64" ], @@ -7395,8 +3307,27 @@ "win32" ] }, + "node_modules/@napi-rs/lzma-linux-x64-gnu": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/@napi-rs/lzma-linux-x64-gnu/-/lzma-linux-x64-gnu-1.5.1.tgz", + "integrity": "sha512-oTXEIha4SsuXdTA4Iyskj0kpdx2yVXdhd75c2v3xGrHFfVMsbhTPZU/nMPL4sWKo4pBHm3aucLaqGlF696dTyQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^22.20 || ^24.12 || >=25" + } + }, "node_modules/@napi-rs/nice": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice/-/nice-1.1.1.tgz", + "integrity": "sha512-xJIPs+bYuc9ASBl+cvGsKbGrJmS6fAKaSZCnT0lhahT5rhA2VVy9/EcIgd2JhtEuFOJNx7UHNn/qiTPTY4nrQw==", "dev": true, "license": "MIT", "optional": true, @@ -7463,6 +3394,8 @@ }, "node_modules/@napi-rs/nice-darwin-arm64": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@napi-rs/nice-darwin-arm64/-/nice-darwin-arm64-1.1.1.tgz", + "integrity": "sha512-s/E7w45NaLqTGuOjC2p96pct4jRfo61xb9bU1unM/MJ/RFkKlJyJDx7OJI/O0ll/hrfpqKopuAFDV8yo0hfT7A==", "cpu": [ "arm64" ], @@ -7715,26 +3648,31 @@ } }, "node_modules/@napi-rs/wasm-runtime": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.5.tgz", - "integrity": "sha512-AWPoBRJ9tsnVhor4sjO7rkni+7p+2IAEFj6cx06UgP10jkQHqay/36uRV/bFkgrh18D9vb4cr8Q0Pthskgzy+Q==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.2.3.tgz", + "integrity": "sha512-UMduMbqO5s5zF2NkNacMT/yK5Y5QiKvWr2+50bzIIxFDwVJ2h49b+oyjaCGPhJxd2/gC2x39EHv/gHVuu36x2Q==", "dev": true, "license": "MIT", "optional": true, "dependencies": { - "@tybys/wasm-util": "^0.10.2" + "@tybys/wasm-util": "^0.10.3" + }, + "engines": { + "node": "^20.19.0 || ^22.13.0 || >=23.5.0" }, "funding": { "type": "github", "url": "https://github.com/sponsors/Brooooooklyn" }, "peerDependencies": { - "@emnapi/core": "^1.7.1", - "@emnapi/runtime": "^1.7.1" + "@emnapi/core": "^1.7.1 || ^2.0.0-alpha.4", + "@emnapi/runtime": "^1.7.1 || ^2.0.0-alpha.4" } }, "node_modules/@npmcli/agent": { "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-4.0.2.tgz", + "integrity": "sha512-EUEuWAxnL07Sp5/iC/1X6Xj+XThUvnbei9zfRWZdEXa7lss9RTHMhAHBeg+MZ5To9s/gGaSI+UwZTPdYMvKSeg==", "dev": true, "license": "ISC", "dependencies": { @@ -7749,7 +3687,9 @@ } }, "node_modules/@npmcli/agent/node_modules/lru-cache": { - "version": "11.5.1", + "version": "11.5.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz", + "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -7758,6 +3698,8 @@ }, "node_modules/@npmcli/fs": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-5.0.0.tgz", + "integrity": "sha512-7OsC1gNORBEawOa5+j2pXN9vsicaIOH5cPXxoR6fJOmH6/EXpJB2CajXOu1fPRFun2m1lktEFX11+P89hqO/og==", "dev": true, "license": "ISC", "dependencies": { @@ -7769,6 +3711,8 @@ }, "node_modules/@npmcli/git": { "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-7.0.2.tgz", + "integrity": "sha512-oeolHDjExNAJAnlYP2qzNjMX/Xi9bmu78C9dIGr4xjobrSKbuMYCph8lTzn4vnW3NjIqVmw/f8BCfouqyJXlRg==", "dev": true, "license": "ISC", "dependencies": { @@ -7787,6 +3731,8 @@ }, "node_modules/@npmcli/git/node_modules/isexe": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-4.0.0.tgz", + "integrity": "sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -7794,7 +3740,9 @@ } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "11.5.1", + "version": "11.5.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz", + "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -7803,6 +3751,8 @@ }, "node_modules/@npmcli/git/node_modules/which": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-6.0.1.tgz", + "integrity": "sha512-oGLe46MIrCRqX7ytPUf66EAYvdeMIZYn3WaocqqKZAxrBpkqHfL/qvTyJ/bTk5+AqHCjXmrv3CEWgy368zhRUg==", "dev": true, "license": "ISC", "dependencies": { @@ -7817,6 +3767,8 @@ }, "node_modules/@npmcli/installed-package-contents": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-4.0.0.tgz", + "integrity": "sha512-yNyAdkBxB72gtZ4GrwXCM0ZUedo9nIbOMKfGjt6Cu6DXf0p8y1PViZAKDC8q8kv/fufx0WTjRBdSlyrvnP7hmA==", "dev": true, "license": "ISC", "dependencies": { @@ -7832,6 +3784,8 @@ }, "node_modules/@npmcli/node-gyp": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-5.0.0.tgz", + "integrity": "sha512-uuG5HZFXLfyFKqg8QypsmgLQW7smiRjVc45bqD/ofZZcR/uxEjgQU8qDPv0s9TEeMUiAAU/GC5bR6++UdTirIQ==", "dev": true, "license": "ISC", "engines": { @@ -7840,6 +3794,8 @@ }, "node_modules/@npmcli/package-json": { "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-7.0.5.tgz", + "integrity": "sha512-iVuTlG3ORq2iaVa1IWUxAO/jIp77tUKBhoMjuzYW2kL4MLN1bi/ofqkZ7D7OOwh8coAx1/S2ge0rMdGv8sLSOQ==", "dev": true, "license": "ISC", "dependencies": { @@ -7857,6 +3813,8 @@ }, "node_modules/@npmcli/promise-spawn": { "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-9.0.1.tgz", + "integrity": "sha512-OLUaoqBuyxeTqUvjA3FZFiXUfYC1alp3Sa99gW3EUDz3tZ3CbXDdcZ7qWKBzicrJleIgucoWamWH1saAmH/l2Q==", "dev": true, "license": "ISC", "dependencies": { @@ -7868,6 +3826,8 @@ }, "node_modules/@npmcli/promise-spawn/node_modules/isexe": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-4.0.0.tgz", + "integrity": "sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -7876,6 +3836,8 @@ }, "node_modules/@npmcli/promise-spawn/node_modules/which": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-6.0.1.tgz", + "integrity": "sha512-oGLe46MIrCRqX7ytPUf66EAYvdeMIZYn3WaocqqKZAxrBpkqHfL/qvTyJ/bTk5+AqHCjXmrv3CEWgy368zhRUg==", "dev": true, "license": "ISC", "dependencies": { @@ -7890,6 +3852,8 @@ }, "node_modules/@npmcli/redact": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/redact/-/redact-4.0.0.tgz", + "integrity": "sha512-gOBg5YHMfZy+TfHArfVogwgfBeQnKbbGo3pSUyK/gSI0AVu+pEiDVcKlQb0D8Mg1LNRZILZ6XG8I5dJ4KuAd9Q==", "dev": true, "license": "ISC", "engines": { @@ -7898,6 +3862,8 @@ }, "node_modules/@npmcli/run-script": { "version": "10.0.4", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-10.0.4.tgz", + "integrity": "sha512-mGUWr1uMnf0le2TwfOZY4SFxZGXGfm4Jtay/nwAa2FLNAKXUoUwaGwBMNH36UHPtinWfTSJ3nqFQr0091CxVGg==", "dev": true, "license": "ISC", "dependencies": { @@ -7913,6 +3879,8 @@ }, "node_modules/@oxc-project/types": { "version": "0.113.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.113.0.tgz", + "integrity": "sha512-Tp3XmgxwNQ9pEN9vxgJBAqdRamHibi76iowQ38O2I4PMpcvNRQNVsU2n1x1nv9yh0XoTrGFzf7cZSGxmixxrhA==", "dev": true, "license": "MIT", "funding": { @@ -7920,7 +3888,9 @@ } }, "node_modules/@parcel/watcher": { - "version": "2.5.6", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.6.0.tgz", + "integrity": "sha512-7FNeNl8NCE7aINx7WXiKQrPYZWC/hvrTsmk6zmxbI7LTXE7hVek/n8AfVgpe2y82zl3w0HvCHN0bVKMBoJcC0w==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -7929,7 +3899,7 @@ "detect-libc": "^2.0.3", "is-glob": "^4.0.3", "node-addon-api": "^7.0.0", - "picomatch": "^4.0.3" + "picomatch": "^4.0.4" }, "engines": { "node": ">= 10.0.0" @@ -7939,25 +3909,24 @@ "url": "https://opencollective.com/parcel" }, "optionalDependencies": { - "@parcel/watcher-android-arm64": "2.5.6", - "@parcel/watcher-darwin-arm64": "2.5.6", - "@parcel/watcher-darwin-x64": "2.5.6", - "@parcel/watcher-freebsd-x64": "2.5.6", - "@parcel/watcher-linux-arm-glibc": "2.5.6", - "@parcel/watcher-linux-arm-musl": "2.5.6", - "@parcel/watcher-linux-arm64-glibc": "2.5.6", - "@parcel/watcher-linux-arm64-musl": "2.5.6", - "@parcel/watcher-linux-x64-glibc": "2.5.6", - "@parcel/watcher-linux-x64-musl": "2.5.6", - "@parcel/watcher-win32-arm64": "2.5.6", - "@parcel/watcher-win32-ia32": "2.5.6", - "@parcel/watcher-win32-x64": "2.5.6" + "@parcel/watcher-android-arm64": "2.6.0", + "@parcel/watcher-darwin-arm64": "2.6.0", + "@parcel/watcher-darwin-x64": "2.6.0", + "@parcel/watcher-freebsd-x64": "2.6.0", + "@parcel/watcher-linux-arm-glibc": "2.6.0", + "@parcel/watcher-linux-arm-musl": "2.6.0", + "@parcel/watcher-linux-arm64-glibc": "2.6.0", + "@parcel/watcher-linux-arm64-musl": "2.6.0", + "@parcel/watcher-linux-x64-glibc": "2.6.0", + "@parcel/watcher-linux-x64-musl": "2.6.0", + "@parcel/watcher-win32-arm64": "2.6.0", + "@parcel/watcher-win32-x64": "2.6.0" } }, "node_modules/@parcel/watcher-android-arm64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.6.tgz", - "integrity": "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.6.0.tgz", + "integrity": "sha512-trgpLSCKRC/huFjXX/Smh+0sWe4+YtKfktIToiMl59ghz7z+qkH6kMvNnUbLyRs9N11t8l4svSCs1+5B3rOAhA==", "cpu": [ "arm64" ], @@ -7976,7 +3945,9 @@ } }, "node_modules/@parcel/watcher-darwin-arm64": { - "version": "2.5.6", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.6.0.tgz", + "integrity": "sha512-Y3QV0gl7Q1zbfueunkWIERICbEojQFCgpyG7YqOGNFLsckXyI1xu9mAIUpKY9QBYzBtSkN8dBPwd3yiAO9ovMw==", "cpu": [ "arm64" ], @@ -7995,9 +3966,9 @@ } }, "node_modules/@parcel/watcher-darwin-x64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.6.tgz", - "integrity": "sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.6.0.tgz", + "integrity": "sha512-Ohv6OpzhUfKYD7Beb8kDvG0jbIxORCYY1JRdZnaBtnjjkJxgD7ZVL0nw2sCYd0yTMKTvz3nnTnOF3cDifK+kvw==", "cpu": [ "x64" ], @@ -8016,9 +3987,9 @@ } }, "node_modules/@parcel/watcher-freebsd-x64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.6.tgz", - "integrity": "sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.6.0.tgz", + "integrity": "sha512-5HmXvDgs8VK+74jF9y9/2FE3/OnlcKmc56tjmSrEuZjpSZOGL+fvAu+HKJBdPs9uwoP2hE6TlSUpXZ/C5jUFmQ==", "cpu": [ "x64" ], @@ -8037,9 +4008,9 @@ } }, "node_modules/@parcel/watcher-linux-arm-glibc": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.6.tgz", - "integrity": "sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.6.0.tgz", + "integrity": "sha512-Ps/hui3A+vMbjdqlqAowK2ZL8+BO8dBjxeWXj6npTBs3jx4wWmbPpaLuqwrQrSqIVMCnpWo238bJ1U37GhQOYg==", "cpu": [ "arm" ], @@ -8058,9 +4029,9 @@ } }, "node_modules/@parcel/watcher-linux-arm-musl": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.6.tgz", - "integrity": "sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.6.0.tgz", + "integrity": "sha512-9c6AUHgHoG+IY88MRIHupztQiQnrbqHYQjkM2btA+Bf/wQnQMuiD0Wfk1EVv3TlNT3x41uU71rn6E4xh/+zvkw==", "cpu": [ "arm" ], @@ -8079,9 +4050,9 @@ } }, "node_modules/@parcel/watcher-linux-arm64-glibc": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.6.tgz", - "integrity": "sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.6.0.tgz", + "integrity": "sha512-yHRqS2owEXe6Hic9z6Mh1ECsCd+ODVOGvZDyciqRd21+v+o+DnXMOrw50DSpIG2sb8GPEaPPmfeCAWKPJdq46g==", "cpu": [ "arm64" ], @@ -8100,9 +4071,9 @@ } }, "node_modules/@parcel/watcher-linux-arm64-musl": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.6.tgz", - "integrity": "sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.6.0.tgz", + "integrity": "sha512-WhB2e/V7rqdHHWZusBSPuy5Ei8S6lSz6FE5TKKQz5h3a0O+C+mhY7vxU9b/stqvMb8beLnPY82ZrFTLKs+SrKA==", "cpu": [ "arm64" ], @@ -8121,9 +4092,9 @@ } }, "node_modules/@parcel/watcher-linux-x64-glibc": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.6.tgz", - "integrity": "sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.6.0.tgz", + "integrity": "sha512-ulGE6x6Oz6iAwg75T8YQSoguBWasniIbX+QWpaYPcCnDOpdWX3k+4xbEYPZVLxOuoJI+svJJPD3sEj8G7lrQ3A==", "cpu": [ "x64" ], @@ -8142,9 +4113,9 @@ } }, "node_modules/@parcel/watcher-linux-x64-musl": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.6.tgz", - "integrity": "sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.6.0.tgz", + "integrity": "sha512-tkBYKt7YQrjIJWYDnto2YgO8MRkjlMTSNoRHzsXinBqbLdeOM3L32wPZJvIZxqaLMfSlS/4sUjH/6STVP/XDLw==", "cpu": [ "x64" ], @@ -8163,9 +4134,9 @@ } }, "node_modules/@parcel/watcher-win32-arm64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.6.tgz", - "integrity": "sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.6.0.tgz", + "integrity": "sha512-gIZAP23jaHjGWasY/TY6yL7NHFClf0Ga7FN+iINvk+KN94rhm94lYZhFsbYFNcA04/onvGD9kKmiJLJB2HbNwQ==", "cpu": [ "arm64" ], @@ -8183,31 +4154,10 @@ "url": "https://opencollective.com/parcel" } }, - "node_modules/@parcel/watcher-win32-ia32": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.6.tgz", - "integrity": "sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g==", - "cpu": [ - "ia32" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "win32" - ], - "engines": { - "node": ">= 10.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/parcel" - } - }, "node_modules/@parcel/watcher-win32-x64": { - "version": "2.5.6", - "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.6.tgz", - "integrity": "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.6.0.tgz", + "integrity": "sha512-cA+/pXV2YkfxlIcXOQ5fSWqAzzPyD78/x5qbK/I0vUkrlYHA8TIz+MXjAbGouguKVSI4bOmkTSJ1/poVSsgt+A==", "cpu": [ "x64" ], @@ -8227,12 +4177,16 @@ }, "node_modules/@parcel/watcher/node_modules/node-addon-api": { "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", "dev": true, "license": "MIT", "optional": true }, "node_modules/@pkgr/core": { "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.2.tgz", + "integrity": "sha512-fdDH1LSGfZdTH2sxdpVMw31BanV28K/Gry0cVFxaNP77neJSkd82mM8ErPNYs9e+0O7SdHBLTDzDgwUuy18RnQ==", "dev": true, "license": "MIT", "engines": { @@ -8244,6 +4198,8 @@ }, "node_modules/@playwright/test": { "version": "1.58.2", + "resolved": "https://registry.npmjs.org/@playwright/test/-/test-1.58.2.tgz", + "integrity": "sha512-akea+6bHYBBfA9uQqSYmlJXn61cTa+jbO87xVLCWbTqbWadRVmhxlXATaOjOgcBaWU4ePo0wB41KMFv3o35IXA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -8257,23 +4213,32 @@ } }, "node_modules/@rdlabo/eslint-plugin-rules": { - "version": "21.0.0", + "version": "21.3.0", + "resolved": "https://registry.npmjs.org/@rdlabo/eslint-plugin-rules/-/eslint-plugin-rules-21.3.0.tgz", + "integrity": "sha512-EjCDLpsbbd1NXmel4h4qKw/Z+l1qS/6BB//zIlF/9ia0ugHApcdB93J7uGrouDpE0qdZ4iiU6KyKX99Tqe4whw==", "dev": true, "license": "MIT", "dependencies": { - "@ionic/angular": "> 8.0.0" + "ts-api-utils": "2.1.0" }, "engines": { "node": ">=20.0.0" }, "peerDependencies": { + "@angular-eslint/template-parser": ">=21.0.0 <22.0.0", + "@ionic/core": ">=8.0.0 <9.0.0", + "@typescript-eslint/utils": ">=8.33.0 <9.0.0", "eslint": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@angular-eslint/template-parser": { + "optional": true + }, + "@ionic/core": { + "optional": true + } } }, - "node_modules/@rdlabo/ionic-theme-ios26": { - "resolved": "..", - "link": true - }, "node_modules/@rolldown/binding-android-arm64": { "version": "1.0.0-rc.4", "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.0-rc.4.tgz", @@ -8293,6 +4258,8 @@ }, "node_modules/@rolldown/binding-darwin-arm64": { "version": "1.0.0-rc.4", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.0-rc.4.tgz", + "integrity": "sha512-kFgEvkWLqt3YCgKB5re9RlIrx9bRsvyVUnaTakEpOPuLGzLpLapYxE9BufJNvPg8GjT6mB1alN4yN1NjzoeM8Q==", "cpu": [ "arm64" ], @@ -8495,13 +4462,15 @@ }, "node_modules/@rolldown/pluginutils": { "version": "1.0.0-rc.4", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.4.tgz", + "integrity": "sha512-1BrrmTu0TWfOP1riA8uakjFc9bpIUGzVKETsOtzY39pPga8zELGDl8eu1Dx7/gjM5CAz14UknsUMpBO8L+YntQ==", "dev": true, "license": "MIT" }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.62.0.tgz", - "integrity": "sha512-IPIQ55ythEHkfEd9jMEi32OQ7SxURsGA43JI22lj01OLZNt2NUbJX8YUHxkVWyQ6daHPNn0truF5nSj3DQp6YQ==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.62.5.tgz", + "integrity": "sha512-jfkGfTwhQpsiSckPF8r9bU3pn3vyd72NlWaO+TgEO6WPSDnUhXzrNYCHBMOYj0ACaUgjm6eERLF+XV9a6RstoA==", "cpu": [ "arm" ], @@ -8513,9 +4482,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.62.0.tgz", - "integrity": "sha512-M6s9cr10MibETyo8JsOkq+Lo1+lU6hcvb1MApnUql5qte/5hMEgzlN8/ReIKNfRV8rrqX50W1BX9zoUhC192RA==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.62.5.tgz", + "integrity": "sha512-oGVqyQlxnrz9/ty89oHpU857VUHEl5/Xu4R2lS+aivCTrNnSsbiENzTnNaBsjxH0CNWGPhzHArOLFwo+oKXveA==", "cpu": [ "arm64" ], @@ -8553,9 +4522,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-arm64": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.62.0.tgz", - "integrity": "sha512-ezjfSQMP7ArdUsbBwbQIfwAlhE84I2iVnzQNCFSveqV42q+BmKlzVpf7mxv5EchLcoWU4y6/heFzVg1F+hodUQ==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.62.5.tgz", + "integrity": "sha512-2fST8lILgl7cKbme/1KDdPCmbXbG+gqoV3bHp19L0ypX/3akYMBVdOunPleRCwonoLnXOZ/0F+Mt/v8POFmfcQ==", "cpu": [ "arm64" ], @@ -8567,9 +4536,9 @@ ] }, "node_modules/@rollup/rollup-freebsd-x64": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.62.0.tgz", - "integrity": "sha512-9+qTWGW9AZRhnUgwtTwzNwcPlL87ngkeN0LA+q1bADvmY9aNvWaF2TFW8BZgnQPYxpDI7+rMVLivcd4V737TAQ==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.62.5.tgz", + "integrity": "sha512-cpIxQCP9J+EVad0a6LO1kY3ZGODlk80VlI+2I96B8xMcdHZ4pLVhfQ49JFpYqjPF91FFkQWftf57YlDcTiw9yQ==", "cpu": [ "x64" ], @@ -8581,9 +4550,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.62.0.tgz", - "integrity": "sha512-T1dMEQhXA/jkJ/jyMIw9IovK8bSUq7A8kLIlvZTb/6YIVsp2zLavr4F3oyllHWo7eIVJRyE5n3tUjQJEbE1IuQ==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.62.5.tgz", + "integrity": "sha512-r9fGh3eFs3e/udWh5ZjXQtxiYK/xoFxQaYR/cELxac/Udkl5Th+IsFm0CX3Kl9hmUH/we7EoMpjJgeQNnE0+IA==", "cpu": [ "arm" ], @@ -8595,9 +4564,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.62.0.tgz", - "integrity": "sha512-2as0LgT7qQpyceQq6VUJYnumUMUrgGQCWIiDIN9DE0/tglsk6o66uCB4f3djRawAltvfCNLyZZrsqbPA6inCsA==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.62.5.tgz", + "integrity": "sha512-xdvFdp7OM6KLJviJT2g/YuRSUjnZgGHk4RNgwIbN7X6cPugOucV60DdHXWzsBVCUdrGb6qSXnJQrrAKMmQuj3Q==", "cpu": [ "arm" ], @@ -8615,9 +4584,6 @@ "cpu": [ "arm64" ], - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -8631,9 +4597,6 @@ "cpu": [ "arm64" ], - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -8641,9 +4604,9 @@ ] }, "node_modules/@rollup/rollup-linux-loong64-gnu": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.62.0.tgz", - "integrity": "sha512-9Gp/DgrkzfUBmNPVTyPTvay+4xEP7M/clXpj3efXBcm6uTIVIgDg4rqUpqKXvLEuFRVuEpSAOkhgNeecvaZ4Cg==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.62.5.tgz", + "integrity": "sha512-+s5qA0TNM0qm8PK/a5gt/1Hpx+NV08uSuCncvhziIlQzT6AEV2fnUQo7eBtFTFO0nA9scauvoR2HusfXmQnO4w==", "cpu": [ "loong64" ], @@ -8655,9 +4618,9 @@ ] }, "node_modules/@rollup/rollup-linux-loong64-musl": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.62.0.tgz", - "integrity": "sha512-m9tsJz54LUXkSYM8+8PG81B9IKK5r+2T0clMq4QrS16xFosufU7firBDAZEsDheDs7wTlP7h3++S7lMsU955HA==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.62.5.tgz", + "integrity": "sha512-ybb6QvWwWJCbBWqERpc8K3pYVGIrXlG8MEQ8IIuJY6Y9KdHQxoFoNyfkAOtKn1VHu3KuLidXvwrvGR1mEjeWCw==", "cpu": [ "loong64" ], @@ -8669,9 +4632,9 @@ ] }, "node_modules/@rollup/rollup-linux-ppc64-gnu": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.62.0.tgz", - "integrity": "sha512-3UvJ5PNVU16aJf6M3tFI24pWzAl2/ynfbyRN3ICyQajK1lSkrnVYNnLz3v04J32qKa0FczJc22zeToc0lr2A3w==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.62.5.tgz", + "integrity": "sha512-nZb1DtnOyhCmYvsC8A2CwOkopVg+IS1+fPUa7rMOAXtNw5+lLCLLPqd6XAiNrGtoQKsbvIBOwsHnBH/3wnb4HQ==", "cpu": [ "ppc64" ], @@ -8683,9 +4646,9 @@ ] }, "node_modules/@rollup/rollup-linux-ppc64-musl": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.62.0.tgz", - "integrity": "sha512-vRWUAbYLGHBZS6Q8Msb2sfnf1fvJf+47t8l/TwOerM2qArzy+IeNMTHrYLHXh95h8MoatPHI5hhSZNs+mGXKPg==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.62.5.tgz", + "integrity": "sha512-yMbj63Sp89ryrXLWyz+sy+fYD2HpOnMCLGbe4Oa1smclFSUukdtD/BgdiHaAetJNb74URD8U4hM+qG5KVzMEkg==", "cpu": [ "ppc64" ], @@ -8697,9 +4660,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.62.0.tgz", - "integrity": "sha512-c00T5SYENHAt86cfW47URaP3Us5vLC/4QO7GYud1G5VNRffCwwCuBspwqYrriuJB+5m0WFzClCn9wed0FBjKvg==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.62.5.tgz", + "integrity": "sha512-mhoan3OJw2kYV/e1jtIdmvUZgyBFeA6zGWsOswmR0Tg19TQbowZuR+JMLID6spbbBN7Zee2ejrgmy3+FxGrIdA==", "cpu": [ "riscv64" ], @@ -8711,9 +4674,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-musl": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.62.0.tgz", - "integrity": "sha512-krrCDilhXOwFkSkO3Wm9I/f9H0L92XHHwy2fwxjukxIbh0dem8gZqOW5Y8BsHrpJv5qwlRBV+Wl4ZFyRWhUpwg==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.62.5.tgz", + "integrity": "sha512-5ZTLmjWbb1VZdjuyhe83K/8QO0/h11midQCBP+X5OYn32ra7eOBoM0ZqtaY4nkgNsYgmdVhMYPoyVPTjUpHf3w==", "cpu": [ "riscv64" ], @@ -8725,9 +4688,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.62.0.tgz", - "integrity": "sha512-7pfYFSTc4/rUC/FtAI0Qp6QthDBCIi6/AuP1xYqFk5vanI6KnL5dWKP60OM/05LOsbwTmIcvr6eXC4CJuJ75IA==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.62.5.tgz", + "integrity": "sha512-m53kG+br6PGxOTmgBEM2DHSDs9RVjsyEbUwjJPJGTFm1grWOG8EKJggDCTb60unD4Tjby8fi7/m9XfkEWasVWg==", "cpu": [ "s390x" ], @@ -8745,9 +4708,6 @@ "cpu": [ "x64" ], - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -8761,9 +4721,6 @@ "cpu": [ "x64" ], - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -8771,9 +4728,9 @@ ] }, "node_modules/@rollup/rollup-openbsd-x64": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.62.0.tgz", - "integrity": "sha512-3oVS7FLGa4U1qcvao9ylGxrjXZyUQqR8UwxEcnUEyPX53O/C/mKDZegNXTdHCP+h3e6ta/f1EN38Yif1mmZHYg==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.62.5.tgz", + "integrity": "sha512-e7hD+sl3s+mcLQDZ8pbudBVsdG6r5yN4w3LqG2TJ8sQHDpblWj5lrJs/3m01Cvlxbt4x13zu5thLjgypgtkYzw==", "cpu": [ "x64" ], @@ -8785,9 +4742,9 @@ ] }, "node_modules/@rollup/rollup-openharmony-arm64": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.62.0.tgz", - "integrity": "sha512-yTB9TgfWj5wHe5QgktAgXTLLot1gvEjl1NiPPAUiCs4oPrIWFl5V4nC3GrkNdj9LaAU4s94nVrGbGOCqUpyWsg==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.62.5.tgz", + "integrity": "sha512-GiyJaCf+WpMub/17aPcKk27QMl5W6f+KhdPTjlFOn5akH5Wa/DCM9Stdx5cDfmasyKB08MqpVQ1uJE2RkkpbXg==", "cpu": [ "arm64" ], @@ -8812,9 +4769,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.62.0.tgz", - "integrity": "sha512-yYkWHhmbhRTWTnWos5HC4GcPQfjlzzCNbM9e/+GXrLuaBXYA3qSDR9f0Vgufd5S8yX81U8jPKp7ZnAjZFMtRnw==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.62.5.tgz", + "integrity": "sha512-KanvAZrPKbDBFwrgiU9yEVpQoox9QPV1WZOXX7HudJQY+eSlu82CtWxDU8WtuRRvtN5EGkLczkd6Y6DTcvm9wA==", "cpu": [ "ia32" ], @@ -8826,9 +4783,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-gnu": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.62.0.tgz", - "integrity": "sha512-SoTb6lPg25xZlA2ibwQ++ahCCnH+FP0qmEuafMJ4gznZKOlXioKEAeJLgCrqjM98ACziXM9V1amFjICVL4IFoA==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.62.5.tgz", + "integrity": "sha512-1aC3UEWTtRl3RK3VpDJ/Tqk1XI4SLTmXIthAq6wRWo8XiSXJNd+VprJM4/1P4+i6HIaFEFlVi9sTTziniD2tOQ==", "cpu": [ "x64" ], @@ -8854,16 +4811,20 @@ }, "node_modules/@rtsao/scc": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz", + "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==", "dev": true, "license": "MIT" }, "node_modules/@schematics/angular": { - "version": "21.2.16", + "version": "21.2.21", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-21.2.21.tgz", + "integrity": "sha512-ZiR5CcDMBI+0TkP4WeazhJmu1SdIq81VvO9CbXEHBO9KQWTtuE0EQCnzQkpIo4Dyh6jDRpA6sA3gkh79vW4aNQ==", "dev": true, "license": "MIT", "dependencies": { - "@angular-devkit/core": "21.2.16", - "@angular-devkit/schematics": "21.2.16", + "@angular-devkit/core": "21.2.21", + "@angular-devkit/schematics": "21.2.21", "jsonc-parser": "3.3.1" }, "engines": { @@ -8874,6 +4835,8 @@ }, "node_modules/@sigstore/bundle": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-4.0.0.tgz", + "integrity": "sha512-NwCl5Y0V6Di0NexvkTqdoVfmjTaQwoLM236r89KEojGmq/jMls8S+zb7yOwAPdXvbwfKDlP+lmXgAL4vKSQT+A==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -8885,6 +4848,8 @@ }, "node_modules/@sigstore/core": { "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/core/-/core-3.2.1.tgz", + "integrity": "sha512-qRsxPnCrbC/puegGxKuynfnxgLiHqWStrSjxkoB4YKqq3Z3s4cyZyj42ZdWFAEblNP65C+rBH8EuREHIXoi83g==", "dev": true, "license": "Apache-2.0", "engines": { @@ -8893,6 +4858,8 @@ }, "node_modules/@sigstore/protobuf-specs": { "version": "0.5.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.5.1.tgz", + "integrity": "sha512-/ScWUhhoFasJsSRGTVBwId1loQjjnjAfE4djL6ZhrXRpNCmPTnUKF5Jokd58ILseOMjzET3UrMOtJPS9sYeI0g==", "dev": true, "license": "Apache-2.0", "engines": { @@ -8901,6 +4868,8 @@ }, "node_modules/@sigstore/sign": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-4.1.1.tgz", + "integrity": "sha512-Hf4xglukg0XXQ2RiD5vSoLjdPe8OBUPA8XeVjUObheuDcWdYWrnH/BNmxZCzkAy68MzmNCxXLeurJvs6hcP2OQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -8917,6 +4886,8 @@ }, "node_modules/@sigstore/tuf": { "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-4.0.2.tgz", + "integrity": "sha512-TCAzTy0xzdP79EnxSjq9KQ3eaR7+FmudLC6eRKknVKZbV7ZNlGLClAAQb/HMNJ5n2OBNk2GT1tEmU0xuPr+SLQ==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -8929,6 +4900,8 @@ }, "node_modules/@sigstore/verify": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@sigstore/verify/-/verify-3.1.1.tgz", + "integrity": "sha512-qv7+G3J2cc6wwFj3yKvXOamzqhMwSk1ogPGmhpS8iXllcPrJaIIBA+4HbttlHVu1pqWTdmaCH/WE7UOC51kdoA==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -8942,6 +4915,8 @@ }, "node_modules/@standard-schema/spec": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz", + "integrity": "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w==", "license": "MIT" }, "node_modules/@stencil/core": { @@ -8969,6 +4944,8 @@ }, "node_modules/@tufjs/canonical-json": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true, "license": "MIT", "engines": { @@ -8977,6 +4954,8 @@ }, "node_modules/@tufjs/models": { "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-4.1.0.tgz", + "integrity": "sha512-Y8cK9aggNRsqJVaKUlEYs4s7CvQ1b1ta2DVPyAimb0I2qhzjNk+A+mxvll/klL0RlfuIUei8BF7YWiua4kQqww==", "dev": true, "license": "MIT", "dependencies": { @@ -8988,9 +4967,9 @@ } }, "node_modules/@tybys/wasm-util": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz", - "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==", + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.3.tgz", + "integrity": "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==", "dev": true, "license": "MIT", "optional": true, @@ -9000,6 +4979,8 @@ }, "node_modules/@types/chai": { "version": "5.2.3", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz", + "integrity": "sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==", "dev": true, "license": "MIT", "dependencies": { @@ -9009,21 +4990,29 @@ }, "node_modules/@types/deep-eql": { "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz", + "integrity": "sha512-c9h9dVVMigMPc4bwTvC5dxqtqJZwQPePsWjPlpSOnojbor6pGqdk541lfA7AqFQr5pB1BRdq0juY9db81BwyFw==", "dev": true, "license": "MIT" }, "node_modules/@types/esrecurse": { "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@types/esrecurse/-/esrecurse-4.3.1.tgz", + "integrity": "sha512-xJBAbDifo5hpffDBuHl0Y8ywswbiAp/Wi7Y/GtAgSlZyIABppyurxVueOPE8LUQOxdlgi6Zqce7uoEpqNTeiUw==", "dev": true, "license": "MIT" }, "node_modules/@types/estree": { "version": "1.0.9", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.9.tgz", + "integrity": "sha512-GhdPgy1el4/ImP05X05Uw4cw2/M93BCUmnEvWZNStlCzEKME4Fkk+YpoA5OiHNQmoS7Cafb8Xa3Pya8m1Qrzeg==", "dev": true, "license": "MIT" }, "node_modules/@types/fs-extra": { "version": "8.1.5", + "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", + "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9032,37 +5021,47 @@ }, "node_modules/@types/json-schema": { "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==", "dev": true, "license": "MIT" }, "node_modules/@types/json5": { "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", "dev": true, "license": "MIT" }, "node_modules/@types/node": { - "version": "25.9.3", + "version": "26.2.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-26.2.0.tgz", + "integrity": "sha512-5IviulTZeRNp2vAJ514cc/HUlY5nZ9fCbq9DMyC52BrhFZACo3nI0R7qBxhQmo/d27NFe96ur/b7Wwxklda+kg==", "dev": true, "license": "MIT", "dependencies": { - "undici-types": ">=7.24.0 <7.24.7" + "undici-types": "~8.3.0" } }, "node_modules/@types/slice-ansi": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==", "dev": true, "license": "MIT" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.67.0.tgz", + "integrity": "sha512-Un7Heoyj65NREbKAyIrFxeM143NZpExWmy1Nep4DLeQOeLlTeumPjoNKnBrU5D5moWXbPJgRa5Uwcdu0faVNGQ==", "dev": true, "license": "MIT", "dependencies": { "@eslint-community/regexpp": "^4.12.2", - "@typescript-eslint/scope-manager": "8.61.1", - "@typescript-eslint/type-utils": "8.61.1", - "@typescript-eslint/utils": "8.61.1", - "@typescript-eslint/visitor-keys": "8.61.1", + "@typescript-eslint/scope-manager": "8.67.0", + "@typescript-eslint/type-utils": "8.67.0", + "@typescript-eslint/utils": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", "ignore": "^7.0.5", "natural-compare": "^1.4.0", "ts-api-utils": "^2.5.0" @@ -9075,20 +5074,36 @@ "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^8.61.1", + "@typescript-eslint/parser": "^8.67.0", "eslint": "^8.57.0 || ^9.0.0 || ^10.0.0", "typescript": ">=4.8.4 <6.1.0" } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/ts-api-utils": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, "node_modules/@typescript-eslint/parser": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.67.0.tgz", + "integrity": "sha512-fUBfTuuEulWqX6V8+O3PtScV01tzYYRUDTAirHFKoRAt7nOzoGiPt0M/bB47wWNy0coOOcgEwAMUtBpykMxl6w==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@typescript-eslint/scope-manager": "8.61.1", - "@typescript-eslint/types": "8.61.1", - "@typescript-eslint/typescript-estree": "8.61.1", - "@typescript-eslint/visitor-keys": "8.61.1", + "@typescript-eslint/scope-manager": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", "debug": "^4.4.3" }, "engines": { @@ -9104,12 +5119,14 @@ } }, "node_modules/@typescript-eslint/project-service": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.67.0.tgz", + "integrity": "sha512-cvE8c7ulYeXN9fYuszhCeCsbzyVEXuhrRCybnBre7TUmqb5nRmBfQAwCj0O3WJFDeyAZt4VYv51vMCC9LHSdYw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/tsconfig-utils": "^8.61.1", - "@typescript-eslint/types": "^8.61.1", + "@typescript-eslint/tsconfig-utils": "^8.67.0", + "@typescript-eslint/types": "^8.67.0", "debug": "^4.4.3" }, "engines": { @@ -9124,12 +5141,14 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.67.0.tgz", + "integrity": "sha512-EgvsleTwS4E+WzzSvem8fAUubLwatMNF1B5hHSLQxcvs7q2dtRhGyujHwLJSYlG41niJ7GP24Aha2+0mb1b2kg==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.61.1", - "@typescript-eslint/visitor-keys": "8.61.1" + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -9140,7 +5159,9 @@ } }, "node_modules/@typescript-eslint/tsconfig-utils": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.67.0.tgz", + "integrity": "sha512-vV+LUSv5njUWsknE71fqKTlXUva+R76SaeORd6Zojcunk/6DvKFXONU3BrAs2H49mbygUXt6gbYunzwqNwlhdg==", "dev": true, "license": "MIT", "engines": { @@ -9155,13 +5176,15 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.67.0.tgz", + "integrity": "sha512-aVWDXbRmdXO9siTfX4ditQI1T9+zVcNazT48EJCD0v40/9RIFoUgZ05CmGEq9H2gixRpjUn/iplwvlcvutJW/Q==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.61.1", - "@typescript-eslint/typescript-estree": "8.61.1", - "@typescript-eslint/utils": "8.61.1", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0", + "@typescript-eslint/utils": "8.67.0", "debug": "^4.4.3", "ts-api-utils": "^2.5.0" }, @@ -9177,10 +5200,26 @@ "typescript": ">=4.8.4 <6.1.0" } }, + "node_modules/@typescript-eslint/type-utils/node_modules/ts-api-utils": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, "node_modules/@typescript-eslint/types": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.67.0.tgz", + "integrity": "sha512-sBtgslww8nsMYUjhdPBiSyUqSzT8uR6g93A2QXnQC8+cGdjz0CyaOdqHDRJb1AtORbZCNUJBBeFA/tNR2uQmww==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" }, @@ -9190,14 +5229,16 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.67.0.tgz", + "integrity": "sha512-EKQBCE9yNlRJYm7jdTW5AhDacDUmSwQb0FAJAmK2EKYrNXIsa2vxcSZx6PvJ/dEdI6lS+Y9W+EXckLj0iPFGcw==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/project-service": "8.61.1", - "@typescript-eslint/tsconfig-utils": "8.61.1", - "@typescript-eslint/types": "8.61.1", - "@typescript-eslint/visitor-keys": "8.61.1", + "@typescript-eslint/project-service": "8.67.0", + "@typescript-eslint/tsconfig-utils": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/visitor-keys": "8.67.0", "debug": "^4.4.3", "minimatch": "^10.2.2", "semver": "^7.7.3", @@ -9215,15 +5256,31 @@ "typescript": ">=4.8.4 <6.1.0" } }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/ts-api-utils": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", + "integrity": "sha512-OJ/ibxhPlqrMM0UiNHJ/0CKQkoKF243/AEmplt3qpRgkW8VG7IfOS41h7V8TjITqdByHzrjcS/2si+y4lIh8NA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18.12" + }, + "peerDependencies": { + "typescript": ">=4.8.4" + } + }, "node_modules/@typescript-eslint/utils": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.67.0.tgz", + "integrity": "sha512-U9D1FdwEWBwok3hxxSdhclMb0twvt9QnjIQ0VfQ1AiX2epnpSgv2ubVDsayOFyY8K6FX+AQ7E0FKWVG3iKsj1A==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.9.1", - "@typescript-eslint/scope-manager": "8.61.1", - "@typescript-eslint/types": "8.61.1", - "@typescript-eslint/typescript-estree": "8.61.1" + "@typescript-eslint/scope-manager": "8.67.0", + "@typescript-eslint/types": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -9238,11 +5295,13 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.67.0.tgz", + "integrity": "sha512-fkv8dHRDqfGtTHuJeebdrQ7cX6Ad4WAS00rgHh9UGvMycF1mjBfsxry1XsLIFhWZ6Judlh6UdzK+TYlbpCXgnA==", "dev": true, "license": "MIT", "dependencies": { - "@typescript-eslint/types": "8.61.1", + "@typescript-eslint/types": "8.67.0", "eslint-visitor-keys": "^5.0.0" }, "engines": { @@ -9255,6 +5314,8 @@ }, "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz", + "integrity": "sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -9266,6 +5327,8 @@ }, "node_modules/@vitejs/plugin-basic-ssl": { "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-basic-ssl/-/plugin-basic-ssl-2.1.4.tgz", + "integrity": "sha512-HXciTXN/sDBYWgeAD4V4s0DN0g72x5mlxQhHxtYu3Tt8BLa6MzcJZUyDVFCdtjNs3bfENVHVzOsmooTVuNgAAw==", "dev": true, "license": "MIT", "engines": { @@ -9276,14 +5339,16 @@ } }, "node_modules/@vitest/expect": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-4.1.11.tgz", + "integrity": "sha512-VX2x5vNJXET47KAFzwERI+KRMtTTCSWTfSMKsW7JsUsXV4psq++e3DvZpuTDOpHcxytiDs6p2nhVb2tVDiiUYw==", "dev": true, "license": "MIT", "dependencies": { "@standard-schema/spec": "^1.1.0", "@types/chai": "^5.2.2", - "@vitest/spy": "4.1.9", - "@vitest/utils": "4.1.9", + "@vitest/spy": "4.1.11", + "@vitest/utils": "4.1.11", "chai": "^6.2.2", "tinyrainbow": "^3.1.0" }, @@ -9292,11 +5357,13 @@ } }, "node_modules/@vitest/mocker": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.11.tgz", + "integrity": "sha512-2XJVD55d1o5AZous5CCGKS74g/riOj9odEt2bQpCVZeblHyHdnMeFl4jl0XjU21stf4mbjUkew2eXQZt65g5CQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/spy": "4.1.9", + "@vitest/spy": "4.1.11", "estree-walker": "^3.0.3", "magic-string": "^0.30.21" }, @@ -9317,7 +5384,9 @@ } }, "node_modules/@vitest/pretty-format": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.1.11.tgz", + "integrity": "sha512-yiZzPbGTS9Sr/JpFl8zHrcIkAofNbFV6k21vIgQN/cY/oxZeXhJv5sc/MBJ5jFKWmWs+oJHw0UXLZjmf931+Vw==", "dev": true, "license": "MIT", "dependencies": { @@ -9328,11 +5397,13 @@ } }, "node_modules/@vitest/runner": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-4.1.11.tgz", + "integrity": "sha512-LztvUgdwMNJMIkj3hQnnxiC2Xy1zNxq928W/xhjCLaNCzqTZOudjwbQf6v9IntZGPw132i2Lq2rgTRZHD3JHNw==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/utils": "4.1.9", + "@vitest/utils": "4.1.11", "pathe": "^2.0.3" }, "funding": { @@ -9340,12 +5411,14 @@ } }, "node_modules/@vitest/snapshot": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.11.tgz", + "integrity": "sha512-pN7ikn1ON7h8ee4gIAp4AzyK+zBtJPzVbqOgu5LCEh4VaJVbPQcgYQYJIMGQPXVeJJq1fnfazis7a5pFNPahog==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.1.9", - "@vitest/utils": "4.1.9", + "@vitest/pretty-format": "4.1.11", + "@vitest/utils": "4.1.11", "magic-string": "^0.30.21", "pathe": "^2.0.3" }, @@ -9354,7 +5427,9 @@ } }, "node_modules/@vitest/spy": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-4.1.11.tgz", + "integrity": "sha512-apNa/prQy2qCeywhnixOHPRCgGNhvg7T4Dapfl1GahLp/R+uhBm5cPyFoNVyqsNd2h1nJxL6BqqdIjiABL60YA==", "dev": true, "license": "MIT", "funding": { @@ -9362,11 +5437,13 @@ } }, "node_modules/@vitest/utils": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-4.1.11.tgz", + "integrity": "sha512-zTCVGpyFsGWBhllOyKlTw/vnr6D9qxsfSDyfbyZmTyjHw5N/VuvzHpHoQjm2ZJzn4RJgx5w4r7V0er69CmLgPQ==", "dev": true, "license": "MIT", "dependencies": { - "@vitest/pretty-format": "4.1.9", + "@vitest/pretty-format": "4.1.11", "convert-source-map": "^2.0.0", "tinyrainbow": "^3.1.0" }, @@ -9376,11 +5453,15 @@ }, "node_modules/@vitest/utils/node_modules/convert-source-map": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true, "license": "MIT" }, "node_modules/@xmldom/xmldom": { - "version": "0.9.10", + "version": "0.9.11", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.9.11.tgz", + "integrity": "sha512-tW8bcK3hsG0/uqSnNz6TK4BkcuZSezoU7DlnYssILmZDktPnSHHuDJJFM0AJv+13gz2r0iGdrj6qqKeUnxXEDg==", "dev": true, "license": "MIT", "engines": { @@ -9389,11 +5470,15 @@ }, "node_modules/@yarnpkg/lockfile": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", "dev": true, "license": "BSD-2-Clause" }, "node_modules/abbrev": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-4.0.0.tgz", + "integrity": "sha512-a1wflyaL0tHtJSmLSOVybYhy22vRih4eduhhrkcjgrWGnRfrZtovJ2FRjxuTtkkj47O/baf0R86QU5OuYpz8fA==", "dev": true, "license": "ISC", "engines": { @@ -9402,6 +5487,8 @@ }, "node_modules/accepts": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz", + "integrity": "sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng==", "dev": true, "license": "MIT", "dependencies": { @@ -9413,9 +5500,12 @@ } }, "node_modules/acorn": { - "version": "8.17.0", + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.18.0.tgz", + "integrity": "sha512-lGq+9yr1/GuAWaVYIHRjvvySG5/4VfKIvC8EWxStPdcDh/Ka7FG3twP6v4d5BkravUilhIAsG4Qj83t02LWUPQ==", "dev": true, "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -9425,6 +5515,8 @@ }, "node_modules/acorn-jsx": { "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "license": "MIT", "peerDependencies": { @@ -9433,6 +5525,8 @@ }, "node_modules/agent-base": { "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", "dev": true, "license": "MIT", "engines": { @@ -9441,6 +5535,8 @@ }, "node_modules/ajv": { "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.18.0.tgz", + "integrity": "sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==", "dev": true, "license": "MIT", "dependencies": { @@ -9456,6 +5552,8 @@ }, "node_modules/ajv-formats": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz", + "integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9472,6 +5570,8 @@ }, "node_modules/algoliasearch": { "version": "5.48.1", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.48.1.tgz", + "integrity": "sha512-Rf7xmeuIo7nb6S4mp4abW2faW8DauZyE2faBIKFaUfP3wnpOvNSbiI5AwVhqBNj0jPgBWEvhyCu0sLjN2q77Rg==", "dev": true, "license": "MIT", "dependencies": { @@ -9496,6 +5596,8 @@ }, "node_modules/angular-eslint": { "version": "21.4.0", + "resolved": "https://registry.npmjs.org/angular-eslint/-/angular-eslint-21.4.0.tgz", + "integrity": "sha512-LH7bWmtJvsubzwPoztnl1pWgI5X0VrfGTUITGSYcwn2J+SXuN/avzrKrxJmhUiIrNvLtfV+18GG6xZS1IGZdKg==", "dev": true, "license": "MIT", "dependencies": { @@ -9518,6 +5620,8 @@ }, "node_modules/ansi-escapes": { "version": "7.3.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-7.3.0.tgz", + "integrity": "sha512-BvU8nYgGQBxcmMuEeUEmNTvrMVjJNSH7RgW24vXexN4Ven6qCvy4TntnvlnwnMLTVlcRQQdbRY8NKnaIoeWDNg==", "dev": true, "license": "MIT", "dependencies": { @@ -9532,6 +5636,8 @@ }, "node_modules/ansi-regex": { "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "license": "MIT", "engines": { @@ -9540,6 +5646,8 @@ }, "node_modules/ansi-styles": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "license": "MIT", "dependencies": { @@ -9554,6 +5662,8 @@ }, "node_modules/are-docs-informative": { "version": "0.0.2", + "resolved": "https://registry.npmjs.org/are-docs-informative/-/are-docs-informative-0.0.2.tgz", + "integrity": "sha512-ixiS0nLNNG5jNQzgZJNoUpBKdo9yTYZMGJ+QgT2jmjR7G7+QHRCc4v6LQ3NgE7EBJq+o0ams3waJwkrlBom8Ig==", "dev": true, "license": "MIT", "engines": { @@ -9562,11 +5672,15 @@ }, "node_modules/argparse": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", "dev": true, "license": "Python-2.0" }, "node_modules/aria-query": { "version": "5.3.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.2.tgz", + "integrity": "sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==", "dev": true, "license": "Apache-2.0", "engines": { @@ -9575,6 +5689,8 @@ }, "node_modules/array-buffer-byte-length": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.2.tgz", + "integrity": "sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==", "dev": true, "license": "MIT", "dependencies": { @@ -9590,6 +5706,8 @@ }, "node_modules/array-includes": { "version": "3.1.9", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.9.tgz", + "integrity": "sha512-FmeCCAenzH0KH381SPT5FZmiA/TmpndpcaShhfgEN9eCVjnFBqq3l1xrI42y8+PPLI6hypzou4GXw00WHmPBLQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9611,6 +5729,8 @@ }, "node_modules/array.prototype.findlastindex": { "version": "1.2.6", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.6.tgz", + "integrity": "sha512-F/TKATkzseUExPlfvmwQKGITM3DGTK+vkAsCZoDc5daVygbJBnjEUCbgkAvVFsgfXfX4YIqZ/27G3k3tdXrTxQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9631,6 +5751,8 @@ }, "node_modules/array.prototype.flat": { "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.3.tgz", + "integrity": "sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==", "dev": true, "license": "MIT", "dependencies": { @@ -9648,6 +5770,8 @@ }, "node_modules/array.prototype.flatmap": { "version": "1.3.3", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.3.tgz", + "integrity": "sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==", "dev": true, "license": "MIT", "dependencies": { @@ -9665,6 +5789,8 @@ }, "node_modules/arraybuffer.prototype.slice": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.4.tgz", + "integrity": "sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9685,6 +5811,8 @@ }, "node_modules/assertion-error": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", "dev": true, "license": "MIT", "engines": { @@ -9693,6 +5821,8 @@ }, "node_modules/astral-regex": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", "dev": true, "license": "MIT", "engines": { @@ -9701,6 +5831,8 @@ }, "node_modules/async-function": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-function/-/async-function-1.0.0.tgz", + "integrity": "sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==", "dev": true, "license": "MIT", "engines": { @@ -9709,6 +5841,8 @@ }, "node_modules/at-least-node": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", "dev": true, "license": "ISC", "engines": { @@ -9717,6 +5851,8 @@ }, "node_modules/available-typed-arrays": { "version": "1.0.7", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9731,6 +5867,8 @@ }, "node_modules/axobject-query": { "version": "4.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-4.1.0.tgz", + "integrity": "sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -9739,6 +5877,8 @@ }, "node_modules/balanced-match": { "version": "4.0.4", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz", + "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==", "dev": true, "license": "MIT", "engines": { @@ -9747,6 +5887,8 @@ }, "node_modules/base64-js": { "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true, "funding": [ { @@ -9765,7 +5907,9 @@ "license": "MIT" }, "node_modules/baseline-browser-mapping": { - "version": "2.10.38", + "version": "2.11.16", + "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.11.16.tgz", + "integrity": "sha512-H/bNPUFHewJHyCTdjn1n3Pit5+2GmWT6mmeHImPX+8MA9NA6b67jO4gYmi4jTbCJb2otq34KMZnovndDPqJwhQ==", "dev": true, "license": "Apache-2.0", "bin": { @@ -9777,6 +5921,8 @@ }, "node_modules/beasties": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/beasties/-/beasties-0.4.1.tgz", + "integrity": "sha512-2Imdcw3LznDuxAbJM26RHniOLAzE6WgrK8OuvVXCQtNBS8rsnD9zsSEa3fHl4hHpUY7BYTlrpvtPVbvu9G6neg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -9796,6 +5942,8 @@ }, "node_modules/big-integer": { "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", "dev": true, "license": "Unlicense", "engines": { @@ -9804,6 +5952,8 @@ }, "node_modules/body-parser": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.3.0.tgz", + "integrity": "sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==", "dev": true, "license": "MIT", "dependencies": { @@ -9826,7 +5976,9 @@ } }, "node_modules/body-parser/node_modules/content-type": { - "version": "2.0.0", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz", + "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==", "dev": true, "license": "MIT", "engines": { @@ -9839,11 +5991,25 @@ }, "node_modules/boolbase": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", "dev": true, "license": "ISC" }, + "node_modules/bplist-creator": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/bplist-creator/-/bplist-creator-0.1.0.tgz", + "integrity": "sha512-sXaHZicyEEmY86WyueLTQesbeoH/mquvarJaQNbjuOQO+7gbFcDEWqKmcWA4cOTLzFlfgvkiVxolk1k5bBIpmg==", + "dev": true, + "license": "MIT", + "dependencies": { + "stream-buffers": "2.2.x" + } + }, "node_modules/bplist-parser": { "version": "0.3.2", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", + "integrity": "sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9854,18 +6020,22 @@ } }, "node_modules/brace-expansion": { - "version": "5.0.6", + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz", + "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==", "dev": true, "license": "MIT", "dependencies": { "balanced-match": "^4.0.2" }, "engines": { - "node": "18 || 20 || >=22" + "node": "20 || >=22" } }, "node_modules/browserslist": { - "version": "4.28.2", + "version": "4.28.8", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.8.tgz", + "integrity": "sha512-V2NpofLblG64mfOtSgDhOJESZEGogzDMBv/q+W6oc4LXWP/q75eOXoOaaOu1EOadB9U4Bwx/e0yzbvwKH8zalA==", "dev": true, "funding": [ { @@ -9882,12 +6052,13 @@ } ], "license": "MIT", + "peer": true, "dependencies": { - "baseline-browser-mapping": "^2.10.12", - "caniuse-lite": "^1.0.30001782", - "electron-to-chromium": "^1.5.328", - "node-releases": "^2.0.36", - "update-browserslist-db": "^1.2.3" + "baseline-browser-mapping": "^2.11.12", + "caniuse-lite": "^1.0.30001809", + "electron-to-chromium": "^1.5.402", + "node-releases": "^2.0.53", + "update-browserslist-db": "^1.3.0" }, "bin": { "browserslist": "cli.js" @@ -9898,6 +6069,8 @@ }, "node_modules/buffer-crc32": { "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", "dev": true, "license": "MIT", "engines": { @@ -9906,11 +6079,15 @@ }, "node_modules/buffer-from": { "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", "dev": true, "license": "MIT" }, "node_modules/bytes": { "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, "license": "MIT", "engines": { @@ -9919,6 +6096,8 @@ }, "node_modules/cacache": { "version": "20.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-20.0.4.tgz", + "integrity": "sha512-M3Lab8NPYlZU2exsL3bMVvMrMqgwCnMWfdZbK28bn3pK6APT/Te/I8hjRPNu1uwORY9a1eEQoifXbKPQMfMTOA==", "dev": true, "license": "ISC", "dependencies": { @@ -9938,7 +6117,9 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "11.5.1", + "version": "11.5.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz", + "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -9947,6 +6128,8 @@ }, "node_modules/call-bind": { "version": "1.0.9", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.9.tgz", + "integrity": "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9964,6 +6147,8 @@ }, "node_modules/call-bind-apply-helpers": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", "dev": true, "license": "MIT", "dependencies": { @@ -9976,6 +6161,8 @@ }, "node_modules/call-bound": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", "dev": true, "license": "MIT", "dependencies": { @@ -9991,6 +6178,8 @@ }, "node_modules/callsites": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true, "license": "MIT", "engines": { @@ -9998,7 +6187,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001799", + "version": "1.0.30001809", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001809.tgz", + "integrity": "sha512-xxWVywk6a6Arlk+hymeycyn/VgqEfLDxupvhH/xiY5SJ/18kmi9o6MiO320DCUzypORHLtvh0I4i04tUhCNHNQ==", "dev": true, "funding": [ { @@ -10018,6 +6209,8 @@ }, "node_modules/chai": { "version": "6.2.2", + "resolved": "https://registry.npmjs.org/chai/-/chai-6.2.2.tgz", + "integrity": "sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg==", "dev": true, "license": "MIT", "engines": { @@ -10026,6 +6219,8 @@ }, "node_modules/chalk": { "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dev": true, "license": "MIT", "dependencies": { @@ -10040,12 +6235,16 @@ } }, "node_modules/chardet": { - "version": "2.1.1", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-2.2.0.tgz", + "integrity": "sha512-rddelWYNPRrXq6PtNEN2S3f6t9ILzvqaN5pVgi4kqt9jHQaXIial9PznB5iSPVlQSLNaaH22ItWz3EJtQ10+OA==", "dev": true, "license": "MIT" }, "node_modules/chokidar": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-5.0.0.tgz", + "integrity": "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw==", "dev": true, "license": "MIT", "dependencies": { @@ -10060,6 +6259,8 @@ }, "node_modules/chownr": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-3.0.0.tgz", + "integrity": "sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -10068,6 +6269,8 @@ }, "node_modules/cli-cursor": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-5.0.0.tgz", + "integrity": "sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==", "dev": true, "license": "MIT", "dependencies": { @@ -10082,6 +6285,8 @@ }, "node_modules/cli-spinners": { "version": "3.4.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-3.4.0.tgz", + "integrity": "sha512-bXfOC4QcT1tKXGorxL3wbJm6XJPDqEnij2gQ2m7ESQuE+/z9YFIWnl/5RpTiKWbMq3EVKR4fRLJGn6DVfu0mpw==", "dev": true, "license": "MIT", "engines": { @@ -10093,6 +6298,8 @@ }, "node_modules/cli-truncate": { "version": "5.2.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-5.2.0.tgz", + "integrity": "sha512-xRwvIOMGrfOAnM1JYtqQImuaNtDEv9v6oIYAs4LIHwTiKee8uwvIi363igssOC0O5U04i4AlENs79LQLu9tEMw==", "dev": true, "license": "MIT", "dependencies": { @@ -10107,7 +6314,9 @@ } }, "node_modules/cli-truncate/node_modules/ansi-regex": { - "version": "6.2.2", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.3.0.tgz", + "integrity": "sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==", "dev": true, "license": "MIT", "engines": { @@ -10119,6 +6328,8 @@ }, "node_modules/cli-truncate/node_modules/ansi-styles": { "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, "license": "MIT", "engines": { @@ -10130,6 +6341,8 @@ }, "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { "version": "5.1.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.1.0.tgz", + "integrity": "sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10144,6 +6357,8 @@ }, "node_modules/cli-truncate/node_modules/slice-ansi": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-8.0.0.tgz", + "integrity": "sha512-stxByr12oeeOyY2BlviTNQlYV5xOj47GirPr4yA1hE9JCtxfQN0+tVbkxwCtYDQWhEKWFHsEK48ORg5jrouCAg==", "dev": true, "license": "MIT", "dependencies": { @@ -10158,7 +6373,9 @@ } }, "node_modules/cli-truncate/node_modules/string-width": { - "version": "8.2.1", + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.2.tgz", + "integrity": "sha512-GaPUh5gfdrYzqeVNZvUfT23vYYxXzKYidUcnMtJg/3rxRV63EFZy3k6xfKlmfeJD0176lnUV/Usr3XcwSvFzpg==", "dev": true, "license": "MIT", "dependencies": { @@ -10174,6 +6391,8 @@ }, "node_modules/cli-truncate/node_modules/strip-ansi": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { @@ -10188,6 +6407,8 @@ }, "node_modules/cli-width": { "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", + "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==", "dev": true, "license": "ISC", "engines": { @@ -10196,6 +6417,8 @@ }, "node_modules/cliui": { "version": "9.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-9.0.1.tgz", + "integrity": "sha512-k7ndgKhwoQveBL+/1tqGJYNz097I7WOvwbmmU2AR5+magtbjPWQTS1C5vzGkBC8Ym8UWRzfKUzUUqFLypY4Q+w==", "dev": true, "license": "ISC", "dependencies": { @@ -10208,7 +6431,9 @@ } }, "node_modules/cliui/node_modules/ansi-regex": { - "version": "6.2.2", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.3.0.tgz", + "integrity": "sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==", "dev": true, "license": "MIT", "engines": { @@ -10220,6 +6445,8 @@ }, "node_modules/cliui/node_modules/ansi-styles": { "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, "license": "MIT", "engines": { @@ -10231,11 +6458,15 @@ }, "node_modules/cliui/node_modules/emoji-regex": { "version": "10.6.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", "dev": true, "license": "MIT" }, "node_modules/cliui/node_modules/string-width": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10252,6 +6483,8 @@ }, "node_modules/cliui/node_modules/strip-ansi": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { @@ -10266,6 +6499,8 @@ }, "node_modules/cliui/node_modules/wrap-ansi": { "version": "9.0.2", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", + "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", "dev": true, "license": "MIT", "dependencies": { @@ -10282,6 +6517,8 @@ }, "node_modules/color-convert": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10293,16 +6530,22 @@ }, "node_modules/color-name": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true, "license": "MIT" }, "node_modules/colorette": { "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", "dev": true, "license": "MIT" }, "node_modules/commander": { "version": "12.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz", + "integrity": "sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==", "dev": true, "license": "MIT", "engines": { @@ -10311,6 +6554,8 @@ }, "node_modules/comment-parser": { "version": "1.4.1", + "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz", + "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==", "dev": true, "license": "MIT", "engines": { @@ -10319,11 +6564,15 @@ }, "node_modules/concat-map": { "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", "dev": true, "license": "MIT" }, "node_modules/content-disposition": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz", + "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==", "dev": true, "license": "MIT", "engines": { @@ -10336,6 +6585,8 @@ }, "node_modules/content-type": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "dev": true, "license": "MIT", "engines": { @@ -10344,11 +6595,15 @@ }, "node_modules/convert-source-map": { "version": "1.9.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz", + "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==", "dev": true, "license": "MIT" }, "node_modules/cookie": { "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", "dev": true, "license": "MIT", "engines": { @@ -10357,6 +6612,8 @@ }, "node_modules/cookie-signature": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.2.2.tgz", + "integrity": "sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg==", "dev": true, "license": "MIT", "engines": { @@ -10365,6 +6622,8 @@ }, "node_modules/cors": { "version": "2.8.6", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz", + "integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==", "dev": true, "license": "MIT", "dependencies": { @@ -10381,6 +6640,8 @@ }, "node_modules/cross-spawn": { "version": "7.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", + "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", "dev": true, "license": "MIT", "dependencies": { @@ -10394,6 +6655,8 @@ }, "node_modules/css-select": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-6.0.0.tgz", + "integrity": "sha512-rZZVSLle8v0+EY8QAkDWrKhpgt6SA5OtHsgBnsj6ZaLb5dmDVOWUDtQitd9ydxxvEjhewNudS6eTVU7uOyzvXw==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -10409,6 +6672,8 @@ }, "node_modules/css-what": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-7.0.0.tgz", + "integrity": "sha512-wD5oz5xibMOPHzy13CyGmogB3phdvcDaB5t0W/Nr5Z2O/agcB8YwOz6e2Lsp10pNDzBoDO9nVa3RGs/2BttpHQ==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -10420,6 +6685,8 @@ }, "node_modules/cssstyle": { "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", "dev": true, "license": "MIT", "dependencies": { @@ -10432,6 +6699,8 @@ }, "node_modules/data-urls": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", + "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", "dev": true, "license": "MIT", "dependencies": { @@ -10444,6 +6713,8 @@ }, "node_modules/data-view-buffer": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", + "integrity": "sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10460,6 +6731,8 @@ }, "node_modules/data-view-byte-length": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.2.tgz", + "integrity": "sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10476,6 +6749,8 @@ }, "node_modules/data-view-byte-offset": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.1.tgz", + "integrity": "sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==", "dev": true, "license": "MIT", "dependencies": { @@ -10492,6 +6767,8 @@ }, "node_modules/debug": { "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", "dev": true, "license": "MIT", "dependencies": { @@ -10508,16 +6785,22 @@ }, "node_modules/decimal.js": { "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==", "dev": true, "license": "MIT" }, "node_modules/deep-is": { "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", "dev": true, "license": "MIT" }, "node_modules/define-data-property": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", "dev": true, "license": "MIT", "dependencies": { @@ -10534,6 +6817,8 @@ }, "node_modules/define-lazy-prop": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true, "license": "MIT", "engines": { @@ -10542,6 +6827,8 @@ }, "node_modules/define-properties": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dev": true, "license": "MIT", "dependencies": { @@ -10558,6 +6845,8 @@ }, "node_modules/depd": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "license": "MIT", "engines": { @@ -10566,6 +6855,8 @@ }, "node_modules/detect-libc": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", "dev": true, "license": "Apache-2.0", "optional": true, @@ -10575,6 +6866,8 @@ }, "node_modules/doctrine": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -10586,6 +6879,8 @@ }, "node_modules/dom-serializer": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", "dev": true, "license": "MIT", "dependencies": { @@ -10599,6 +6894,8 @@ }, "node_modules/domelementtype": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "dev": true, "funding": [ { @@ -10610,6 +6907,8 @@ }, "node_modules/domhandler": { "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -10624,6 +6923,8 @@ }, "node_modules/domutils": { "version": "3.2.2", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz", + "integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -10637,6 +6938,8 @@ }, "node_modules/dunder-proto": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", "dev": true, "license": "MIT", "dependencies": { @@ -10650,16 +6953,22 @@ }, "node_modules/ee-first": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==", "dev": true, "license": "MIT" }, "node_modules/electron-to-chromium": { - "version": "1.5.375", + "version": "1.5.412", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.412.tgz", + "integrity": "sha512-z4rMe3esBzlzovKHj4gxJnsCGZRK5l4baUvm+gCGJBPE+gsyUMKsuU9tnEUtI1dOebXz1ytAPGjvXhmQ7rIPwA==", "dev": true, "license": "ISC" }, "node_modules/elementtree": { "version": "0.1.7", + "resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", + "integrity": "sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -10671,11 +6980,15 @@ }, "node_modules/emoji-regex": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true, "license": "MIT" }, "node_modules/encodeurl": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", "dev": true, "license": "MIT", "engines": { @@ -10684,6 +6997,8 @@ }, "node_modules/entities": { "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -10695,6 +7010,8 @@ }, "node_modules/env-paths": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", "dev": true, "license": "MIT", "engines": { @@ -10703,6 +7020,8 @@ }, "node_modules/environment": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/environment/-/environment-1.1.0.tgz", + "integrity": "sha512-xUtoPkMggbz0MPyPiIWr1Kp4aeWJjDZ6SMvURhimjdZgsRuDplF5/s9hcgGhyXMhs+6vpnuoiZ2kFiu3FMnS8Q==", "dev": true, "license": "MIT", "engines": { @@ -10714,6 +7033,8 @@ }, "node_modules/es-abstract": { "version": "1.24.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.24.2.tgz", + "integrity": "sha512-2FpH9Q5i2RRwyEP1AylXe6nYLR5OhaJTZwmlcP0dL/+JCbgg7yyEo/sEK6HeGZRf3dFpWwThaRHVApXSkW3xeg==", "dev": true, "license": "MIT", "dependencies": { @@ -10781,6 +7102,8 @@ }, "node_modules/es-abstract-get": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-abstract-get/-/es-abstract-get-1.0.0.tgz", + "integrity": "sha512-6PMWXpdhshVvFp+FoWYs1EvG1Nj0tvk0dZM+XcK0xMEM1czRVcP6ohqPWHy6qPagSpC8j4+p89WXlT+xXJs/fg==", "dev": true, "license": "MIT", "dependencies": { @@ -10798,6 +7121,8 @@ }, "node_modules/es-define-property": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "dev": true, "license": "MIT", "engines": { @@ -10806,6 +7131,8 @@ }, "node_modules/es-errors": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", "dev": true, "license": "MIT", "engines": { @@ -10814,11 +7141,15 @@ }, "node_modules/es-module-lexer": { "version": "1.7.0", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz", + "integrity": "sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==", "dev": true, "license": "MIT" }, "node_modules/es-object-atoms": { "version": "1.1.2", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz", + "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==", "dev": true, "license": "MIT", "dependencies": { @@ -10830,6 +7161,8 @@ }, "node_modules/es-set-tostringtag": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", "dev": true, "license": "MIT", "dependencies": { @@ -10844,6 +7177,8 @@ }, "node_modules/es-shim-unscopables": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.1.0.tgz", + "integrity": "sha512-d9T8ucsEhh8Bi1woXCf+TIKDIROLG5WCkxg8geBCbvk22kzwC5G2OnXVMO6FUsvQlgUUXQ2itephWDLqDzbeCw==", "dev": true, "license": "MIT", "dependencies": { @@ -10854,11 +7189,14 @@ } }, "node_modules/es-to-primitive": { - "version": "1.3.1", + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.3.4.tgz", + "integrity": "sha512-yPDz7wqpg1/mmHLmS3tcfTfbw5f1eryXvyghYBffGdERwe+mV7ZcWzTR8LR17Kvqt3qfPurjlonmnq3MKXIOXw==", "dev": true, "license": "MIT", "dependencies": { "es-abstract-get": "^1.0.0", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", "is-callable": "^1.2.7", "is-date-object": "^1.1.0", @@ -10872,7 +7210,9 @@ } }, "node_modules/esbuild": { - "version": "0.27.3", + "version": "0.28.1", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.1.tgz", + "integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -10883,36 +7223,38 @@ "node": ">=18" }, "optionalDependencies": { - "@esbuild/aix-ppc64": "0.27.3", - "@esbuild/android-arm": "0.27.3", - "@esbuild/android-arm64": "0.27.3", - "@esbuild/android-x64": "0.27.3", - "@esbuild/darwin-arm64": "0.27.3", - "@esbuild/darwin-x64": "0.27.3", - "@esbuild/freebsd-arm64": "0.27.3", - "@esbuild/freebsd-x64": "0.27.3", - "@esbuild/linux-arm": "0.27.3", - "@esbuild/linux-arm64": "0.27.3", - "@esbuild/linux-ia32": "0.27.3", - "@esbuild/linux-loong64": "0.27.3", - "@esbuild/linux-mips64el": "0.27.3", - "@esbuild/linux-ppc64": "0.27.3", - "@esbuild/linux-riscv64": "0.27.3", - "@esbuild/linux-s390x": "0.27.3", - "@esbuild/linux-x64": "0.27.3", - "@esbuild/netbsd-arm64": "0.27.3", - "@esbuild/netbsd-x64": "0.27.3", - "@esbuild/openbsd-arm64": "0.27.3", - "@esbuild/openbsd-x64": "0.27.3", - "@esbuild/openharmony-arm64": "0.27.3", - "@esbuild/sunos-x64": "0.27.3", - "@esbuild/win32-arm64": "0.27.3", - "@esbuild/win32-ia32": "0.27.3", - "@esbuild/win32-x64": "0.27.3" + "@esbuild/aix-ppc64": "0.28.1", + "@esbuild/android-arm": "0.28.1", + "@esbuild/android-arm64": "0.28.1", + "@esbuild/android-x64": "0.28.1", + "@esbuild/darwin-arm64": "0.28.1", + "@esbuild/darwin-x64": "0.28.1", + "@esbuild/freebsd-arm64": "0.28.1", + "@esbuild/freebsd-x64": "0.28.1", + "@esbuild/linux-arm": "0.28.1", + "@esbuild/linux-arm64": "0.28.1", + "@esbuild/linux-ia32": "0.28.1", + "@esbuild/linux-loong64": "0.28.1", + "@esbuild/linux-mips64el": "0.28.1", + "@esbuild/linux-ppc64": "0.28.1", + "@esbuild/linux-riscv64": "0.28.1", + "@esbuild/linux-s390x": "0.28.1", + "@esbuild/linux-x64": "0.28.1", + "@esbuild/netbsd-arm64": "0.28.1", + "@esbuild/netbsd-x64": "0.28.1", + "@esbuild/openbsd-arm64": "0.28.1", + "@esbuild/openbsd-x64": "0.28.1", + "@esbuild/openharmony-arm64": "0.28.1", + "@esbuild/sunos-x64": "0.28.1", + "@esbuild/win32-arm64": "0.28.1", + "@esbuild/win32-ia32": "0.28.1", + "@esbuild/win32-x64": "0.28.1" } }, "node_modules/escalade": { "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "dev": true, "license": "MIT", "engines": { @@ -10921,11 +7263,15 @@ }, "node_modules/escape-html": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", "dev": true, "license": "MIT" }, "node_modules/escape-string-regexp": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "dev": true, "license": "MIT", "engines": { @@ -10936,17 +7282,21 @@ } }, "node_modules/eslint": { - "version": "9.39.4", + "version": "9.39.5", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.5.tgz", + "integrity": "sha512-DgZS62aPLXKlnxILS/AYCoRvHaZeXceIzlXPkkGGzJWSow1aEk0lbTlxUSlyjC8jcaKxAdOnTDz+o1JFSBsyjw==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.1", "@eslint/config-array": "^0.21.2", "@eslint/config-helpers": "^0.4.2", "@eslint/core": "^0.17.0", - "@eslint/eslintrc": "^3.3.5", - "@eslint/js": "9.39.4", + "@eslint/eslintrc": "^3.3.6", + "@eslint/js": "9.39.5", "@eslint/plugin-kit": "^0.4.1", "@humanfs/node": "^0.16.6", "@humanwhocodes/module-importer": "^1.0.1", @@ -10995,6 +7345,8 @@ }, "node_modules/eslint-import-resolver-node": { "version": "0.3.10", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.10.tgz", + "integrity": "sha512-tRrKqFyCaKict5hOd244sL6EQFNycnMQnBe+j8uqGNXYzsImGbGUU4ibtoaBmv5FLwJwcFJNeg1GeVjQfbMrDQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11005,6 +7357,8 @@ }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11012,7 +7366,9 @@ } }, "node_modules/eslint-module-utils": { - "version": "2.13.0", + "version": "2.14.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.14.0.tgz", + "integrity": "sha512-W2WCRZ9Dqntd+2u8jJcVMV2PKulc6RdLgUUoh/yQr3uB6lo/ZOeGx11sv60/8S4QFFKNslAlWhr9u0Ef7ZW6Ig==", "dev": true, "license": "MIT", "dependencies": { @@ -11029,6 +7385,8 @@ }, "node_modules/eslint-module-utils/node_modules/debug": { "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11037,6 +7395,8 @@ }, "node_modules/eslint-plugin-import": { "version": "2.32.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.32.0.tgz", + "integrity": "sha512-whOE1HFo/qJDyX4SnXzP4N6zOWn79WhnCUY/iDR0mPfQZO8wcYE4JClzI2oZrhBnnMUCBCHZhO6VQyoBU95mZA==", "dev": true, "license": "MIT", "dependencies": { @@ -11069,11 +7429,15 @@ }, "node_modules/eslint-plugin-import/node_modules/balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true, "license": "MIT" }, "node_modules/eslint-plugin-import/node_modules/brace-expansion": { - "version": "1.1.15", + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz", + "integrity": "sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==", "dev": true, "license": "MIT", "dependencies": { @@ -11083,6 +7447,8 @@ }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11091,6 +7457,8 @@ }, "node_modules/eslint-plugin-import/node_modules/minimatch": { "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -11102,6 +7470,8 @@ }, "node_modules/eslint-plugin-import/node_modules/semver": { "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "license": "ISC", "bin": { @@ -11110,6 +7480,8 @@ }, "node_modules/eslint-plugin-jsdoc": { "version": "48.11.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-48.11.0.tgz", + "integrity": "sha512-d12JHJDPNo7IFwTOAItCeJY1hcqoIxE0lHA8infQByLilQ9xkqrRa6laWCnsuCrf+8rUnvxXY1XuTbibRBNylA==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -11134,6 +7506,8 @@ }, "node_modules/eslint-plugin-prefer-arrow": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-prefer-arrow/-/eslint-plugin-prefer-arrow-1.2.2.tgz", + "integrity": "sha512-C8YMhL+r8RMeMdYAw/rQtE6xNdMulj+zGWud/qIGnlmomiPRaLDGLMeskZ3alN6uMBojmooRimtdrXebLN4svQ==", "dev": true, "license": "MIT", "peerDependencies": { @@ -11142,6 +7516,8 @@ }, "node_modules/eslint-scope": { "version": "9.1.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-9.1.2.tgz", + "integrity": "sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -11159,6 +7535,8 @@ }, "node_modules/eslint-visitor-keys": { "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "dev": true, "license": "Apache-2.0", "engines": { @@ -11170,6 +7548,8 @@ }, "node_modules/eslint/node_modules/ajv": { "version": "6.15.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.15.0.tgz", + "integrity": "sha512-fgFx7Hfoq60ytK2c7DhnF8jIvzYgOMxfugjLOSMHjLIPgenqa7S7oaagATUq99mV6IYvN2tRmC0wnTYX6iPbMw==", "dev": true, "license": "MIT", "dependencies": { @@ -11185,11 +7565,15 @@ }, "node_modules/eslint/node_modules/balanced-match": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true, "license": "MIT" }, "node_modules/eslint/node_modules/brace-expansion": { - "version": "1.1.15", + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.18.tgz", + "integrity": "sha512-Edep/X9fGqVNmzKBVsDYIOtD+z1tuezV70LBjdCst9Tqu76lsnvRiZ6oTic1n+/BIwX6QDGAO94PN4N2SADvtw==", "dev": true, "license": "MIT", "dependencies": { @@ -11199,6 +7583,8 @@ }, "node_modules/eslint/node_modules/eslint-scope": { "version": "8.4.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.4.0.tgz", + "integrity": "sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -11214,6 +7600,8 @@ }, "node_modules/eslint/node_modules/eslint-visitor-keys": { "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -11225,6 +7613,8 @@ }, "node_modules/eslint/node_modules/ignore": { "version": "5.3.2", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", + "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==", "dev": true, "license": "MIT", "engines": { @@ -11233,11 +7623,15 @@ }, "node_modules/eslint/node_modules/json-schema-traverse": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true, "license": "MIT" }, "node_modules/eslint/node_modules/minimatch": { "version": "3.1.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.5.tgz", + "integrity": "sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==", "dev": true, "license": "ISC", "dependencies": { @@ -11249,6 +7643,8 @@ }, "node_modules/espree": { "version": "10.4.0", + "resolved": "https://registry.npmjs.org/espree/-/espree-10.4.0.tgz", + "integrity": "sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -11265,6 +7661,8 @@ }, "node_modules/espree/node_modules/eslint-visitor-keys": { "version": "4.2.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz", + "integrity": "sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==", "dev": true, "license": "Apache-2.0", "engines": { @@ -11276,6 +7674,8 @@ }, "node_modules/esquery": { "version": "1.7.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.7.0.tgz", + "integrity": "sha512-Ap6G0WQwcU/LHsvLwON1fAQX9Zp0A2Y6Y/cJBl9r/JbW90Zyg4/zbG6zzKa2OTALELarYHmKu0GhpM5EO+7T0g==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -11287,6 +7687,8 @@ }, "node_modules/esrecurse": { "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -11298,6 +7700,8 @@ }, "node_modules/estraverse": { "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -11306,6 +7710,8 @@ }, "node_modules/estree-walker": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", "dev": true, "license": "MIT", "dependencies": { @@ -11314,6 +7720,8 @@ }, "node_modules/esutils": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -11322,6 +7730,8 @@ }, "node_modules/etag": { "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", "dev": true, "license": "MIT", "engines": { @@ -11330,11 +7740,15 @@ }, "node_modules/eventemitter3": { "version": "5.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.4.tgz", + "integrity": "sha512-mlsTRyGaPBjPedk6Bvw+aqbsXDtoAyAzm5MO7JgU+yVRyMQ5O8bD4Kcci7BS85f93veegeCPkL8R4GLClnjLFw==", "dev": true, "license": "MIT" }, "node_modules/eventsource": { "version": "3.0.7", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz", + "integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==", "dev": true, "license": "MIT", "dependencies": { @@ -11345,7 +7759,9 @@ } }, "node_modules/eventsource-parser": { - "version": "3.1.0", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.1.tgz", + "integrity": "sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==", "dev": true, "license": "MIT", "engines": { @@ -11353,7 +7769,9 @@ } }, "node_modules/expect-type": { - "version": "1.3.0", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/expect-type/-/expect-type-1.4.0.tgz", + "integrity": "sha512-KfYbmpRm0VbLjEvVa9yGwCi9GI34xvi7A/HXYWQO65CSD2u3MczUJSuwXKFIxlGsgBQizV9q5J9NHj4VG0n+pA==", "dev": true, "license": "Apache-2.0", "engines": { @@ -11362,13 +7780,18 @@ }, "node_modules/exponential-backoff": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.3.tgz", + "integrity": "sha512-ZgEeZXj30q+I0EN+CbSSpIyPaJ5HVQD18Z1m+u1FXbAeT94mr1zw50q4q6jiiC447Nl/YTcIYSAftiGqetwXCA==", "dev": true, "license": "Apache-2.0" }, "node_modules/express": { "version": "5.2.1", + "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz", + "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "accepts": "^2.0.0", "body-parser": "^2.2.1", @@ -11408,10 +7831,13 @@ } }, "node_modules/express-rate-limit": { - "version": "8.5.2", + "version": "8.6.2", + "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-8.6.2.tgz", + "integrity": "sha512-YH4ru+eOJxQABscKFfRCy9R7x9QFGdezclVMwwgFFndzS2Xnm0uo6B0ABZsLhcpeptGv2qvuJVWlQr9gQZoC3A==", "dev": true, "license": "MIT", "dependencies": { + "debug": "^4.4.3", "ip-address": "^10.2.0" }, "engines": { @@ -11426,21 +7852,29 @@ }, "node_modules/fast-deep-equal": { "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true, "license": "MIT" }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", "dev": true, "license": "MIT" }, "node_modules/fast-levenshtein": { "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", "dev": true, "license": "MIT" }, "node_modules/fast-uri": { - "version": "3.1.2", + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.5.tgz", + "integrity": "sha512-gHwA1O9LDIcKunMKhObS/HimwtehO1nPUECKAu5TpKgaO19fcWEl4bliWe1jWxVFvIXztJjjQ4L8XQ1EU9f7Jw==", "dev": true, "funding": [ { @@ -11456,6 +7890,8 @@ }, "node_modules/fd-slicer": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", "dev": true, "license": "MIT", "dependencies": { @@ -11464,6 +7900,8 @@ }, "node_modules/fdir": { "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", "dev": true, "license": "MIT", "engines": { @@ -11480,6 +7918,8 @@ }, "node_modules/file-entry-cache": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11491,6 +7931,8 @@ }, "node_modules/finalhandler": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-2.1.1.tgz", + "integrity": "sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==", "dev": true, "license": "MIT", "dependencies": { @@ -11511,6 +7953,8 @@ }, "node_modules/find-up": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "license": "MIT", "dependencies": { @@ -11526,6 +7970,8 @@ }, "node_modules/flat-cache": { "version": "4.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz", + "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==", "dev": true, "license": "MIT", "dependencies": { @@ -11537,12 +7983,16 @@ } }, "node_modules/flatted": { - "version": "3.4.2", + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.4.4.tgz", + "integrity": "sha512-5+ybhBZANEJxaH3X5evAFatUxLfEHSr7n6kYJ+1Qd0mUqr4eu9gIf6GDbWHf8RJijHrjjO8G+la14SlL2SeS1Q==", "dev": true, "license": "ISC" }, "node_modules/for-each": { "version": "0.3.5", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.5.tgz", + "integrity": "sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==", "dev": true, "license": "MIT", "dependencies": { @@ -11557,6 +8007,8 @@ }, "node_modules/forwarded": { "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", "dev": true, "license": "MIT", "engines": { @@ -11565,6 +8017,8 @@ }, "node_modules/fresh": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-2.0.0.tgz", + "integrity": "sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A==", "dev": true, "license": "MIT", "engines": { @@ -11572,7 +8026,9 @@ } }, "node_modules/fs-extra": { - "version": "11.3.5", + "version": "11.4.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.4.0.tgz", + "integrity": "sha512-EQsFzMUJkCKGr1ePqlYADkIUmHW1s3ZXr5Yqy6wbGrfUCphpl2maM/kyOIRA2HpP3AaFQTZXD4ldjek+nccddA==", "dev": true, "license": "MIT", "dependencies": { @@ -11586,6 +8042,8 @@ }, "node_modules/fs-minipass": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dev": true, "license": "ISC", "dependencies": { @@ -11597,7 +8055,10 @@ }, "node_modules/fsevents": { "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", "dev": true, + "hasInstallScript": true, "license": "MIT", "optional": true, "os": [ @@ -11609,6 +8070,8 @@ }, "node_modules/function-bind": { "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "dev": true, "license": "MIT", "funding": { @@ -11617,6 +8080,8 @@ }, "node_modules/function.prototype.name": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.2.0.tgz", + "integrity": "sha512-jObKIik1P2QjPHP5nz5BaOtUlfgS0fWo8IUByNXkM+o+02sJOi94em77GwJKQSJ3gfPHdgzLNrHc1uokV4P/ew==", "dev": true, "license": "MIT", "dependencies": { @@ -11639,6 +8104,8 @@ }, "node_modules/functions-have-names": { "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "dev": true, "license": "MIT", "funding": { @@ -11647,6 +8114,8 @@ }, "node_modules/generator-function": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/generator-function/-/generator-function-2.0.1.tgz", + "integrity": "sha512-SFdFmIJi+ybC0vjlHN0ZGVGHc3lgE0DxPAT0djjVg+kjOnSqclqmj0KQ7ykTOLP6YxoqOvuAODGdcHJn+43q3g==", "dev": true, "license": "MIT", "engines": { @@ -11655,6 +8124,8 @@ }, "node_modules/gensync": { "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true, "license": "MIT", "engines": { @@ -11663,6 +8134,8 @@ }, "node_modules/get-caller-file": { "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true, "license": "ISC", "engines": { @@ -11671,6 +8144,8 @@ }, "node_modules/get-east-asian-width": { "version": "1.6.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz", + "integrity": "sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==", "dev": true, "license": "MIT", "engines": { @@ -11682,6 +8157,8 @@ }, "node_modules/get-intrinsic": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11705,6 +8182,8 @@ }, "node_modules/get-proto": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", "dev": true, "license": "MIT", "dependencies": { @@ -11717,6 +8196,8 @@ }, "node_modules/get-symbol-description": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.1.0.tgz", + "integrity": "sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==", "dev": true, "license": "MIT", "dependencies": { @@ -11733,6 +8214,8 @@ }, "node_modules/glob": { "version": "13.0.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-13.0.6.tgz", + "integrity": "sha512-Wjlyrolmm8uDpm/ogGyXZXb1Z+Ca2B8NbJwqBVg0axK9GbBeoS7yGV6vjXnYdGm6X53iehEuxxbyiKp8QmN4Vw==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -11749,6 +8232,8 @@ }, "node_modules/glob-parent": { "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dev": true, "license": "ISC", "dependencies": { @@ -11760,11 +8245,15 @@ }, "node_modules/glob-to-regexp": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", "dev": true, "license": "BSD-2-Clause" }, "node_modules/globals": { "version": "14.0.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz", + "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==", "dev": true, "license": "MIT", "engines": { @@ -11776,6 +8265,8 @@ }, "node_modules/globalthis": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11791,6 +8282,8 @@ }, "node_modules/gopd": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "dev": true, "license": "MIT", "engines": { @@ -11802,11 +8295,15 @@ }, "node_modules/graceful-fs": { "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", "dev": true, "license": "ISC" }, "node_modules/has-bigints": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.1.0.tgz", + "integrity": "sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==", "dev": true, "license": "MIT", "engines": { @@ -11818,6 +8315,8 @@ }, "node_modules/has-flag": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, "license": "MIT", "engines": { @@ -11826,6 +8325,8 @@ }, "node_modules/has-property-descriptors": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", "dev": true, "license": "MIT", "dependencies": { @@ -11837,6 +8338,8 @@ }, "node_modules/has-proto": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.2.0.tgz", + "integrity": "sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11851,6 +8354,8 @@ }, "node_modules/has-symbols": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "dev": true, "license": "MIT", "engines": { @@ -11862,6 +8367,8 @@ }, "node_modules/has-tostringtag": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", "dev": true, "license": "MIT", "dependencies": { @@ -11876,6 +8383,8 @@ }, "node_modules/hasown": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz", + "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==", "dev": true, "license": "MIT", "dependencies": { @@ -11886,15 +8395,20 @@ } }, "node_modules/hono": { - "version": "4.12.26", + "version": "4.13.3", + "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.3.tgz", + "integrity": "sha512-r8AO2mYHoLxSHkgafNeC/BXyb2vWRxD3jem4Ts+ptav8oTG5FIRifAjuJEmZI4bSvvc2ns0GxmIYiZnHqN3mMw==", "dev": true, "license": "MIT", + "peer": true, "engines": { "node": ">=16.9.0" } }, "node_modules/hosted-git-info": { "version": "9.0.3", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz", + "integrity": "sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==", "dev": true, "license": "ISC", "dependencies": { @@ -11905,7 +8419,9 @@ } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "11.5.1", + "version": "11.5.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz", + "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -11914,6 +8430,8 @@ }, "node_modules/html-encoding-sniffer": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", + "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11925,6 +8443,8 @@ }, "node_modules/htmlparser2": { "version": "10.1.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.1.0.tgz", + "integrity": "sha512-VTZkM9GWRAtEpveh7MSF6SjjrpNVNNVJfFup7xTY3UpFtm67foy9HDVXneLtFVt4pMz5kZtgNcvCniNFb1hlEQ==", "dev": true, "funding": [ "https://github.com/fb55/htmlparser2?sponsor=1", @@ -11943,6 +8463,8 @@ }, "node_modules/htmlparser2/node_modules/entities": { "version": "7.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -11954,11 +8476,15 @@ }, "node_modules/http-cache-semantics": { "version": "4.2.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz", + "integrity": "sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==", "dev": true, "license": "BSD-2-Clause" }, "node_modules/http-errors": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz", + "integrity": "sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ==", "dev": true, "license": "MIT", "dependencies": { @@ -11978,6 +8504,8 @@ }, "node_modules/http-proxy-agent": { "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", "dev": true, "license": "MIT", "dependencies": { @@ -11990,6 +8518,8 @@ }, "node_modules/https-proxy-agent": { "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", "dev": true, "license": "MIT", "dependencies": { @@ -12001,7 +8531,9 @@ } }, "node_modules/iconv-lite": { - "version": "0.7.2", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.7.3.tgz", + "integrity": "sha512-IKXpvIzjnC9XTAUbVBcMfGS0EPaIXtW6v+zr+RRp+hqULEpo0owZax6wyRwPOJbWbzjYspQwusTsfVr0ifh4uQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12017,6 +8549,8 @@ }, "node_modules/ignore": { "version": "7.0.5", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz", + "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==", "dev": true, "license": "MIT", "engines": { @@ -12025,6 +8559,8 @@ }, "node_modules/ignore-walk": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-8.0.0.tgz", + "integrity": "sha512-FCeMZT4NiRQGh+YkeKMtWrOmBgWjHjMJ26WQWrRQyoyzqevdaGSakUaJW5xQYmjLlUVk2qUnCjYVBax9EKKg8A==", "dev": true, "license": "ISC", "dependencies": { @@ -12035,12 +8571,16 @@ } }, "node_modules/immutable": { - "version": "5.1.6", + "version": "5.1.9", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.9.tgz", + "integrity": "sha512-m8nVez3rwrgmWxtLMt1ZYXB2Lv7OKYn/disyxAlSDYAlKSlFoPPfIAmAM/M5xqL4m4C/wAPw7S2/CNaUii1Hxg==", "dev": true, "license": "MIT" }, "node_modules/import-fresh": { "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12056,6 +8596,8 @@ }, "node_modules/imurmurhash": { "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "dev": true, "license": "MIT", "engines": { @@ -12064,11 +8606,15 @@ }, "node_modules/inherits": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "dev": true, "license": "ISC" }, "node_modules/ini": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-6.0.0.tgz", + "integrity": "sha512-IBTdIkzZNOpqm7q3dRqJvMaldXjDHWkEDfrwGEQTs5eaQMWV+djAhR+wahyNNMAa+qpbDUhBMVt4ZKNwpPm7xQ==", "dev": true, "license": "ISC", "engines": { @@ -12077,6 +8623,8 @@ }, "node_modules/internal-slot": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.1.0.tgz", + "integrity": "sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==", "dev": true, "license": "MIT", "dependencies": { @@ -12098,7 +8646,9 @@ } }, "node_modules/ip-address": { - "version": "10.2.0", + "version": "10.5.0", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.5.0.tgz", + "integrity": "sha512-R5SnVLJmgYYvf2F2ZgwSBnelz5G4q5AxIC277GDfUaNbrZKNANcBC7RHqYYePlszf4kBolVkJauG0ZjHHFh55g==", "dev": true, "license": "MIT", "engines": { @@ -12107,6 +8657,8 @@ }, "node_modules/ipaddr.js": { "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", "dev": true, "license": "MIT", "engines": { @@ -12115,6 +8667,8 @@ }, "node_modules/is-array-buffer": { "version": "3.0.5", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", + "integrity": "sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==", "dev": true, "license": "MIT", "dependencies": { @@ -12131,6 +8685,8 @@ }, "node_modules/is-async-function": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.1.1.tgz", + "integrity": "sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12149,6 +8705,8 @@ }, "node_modules/is-bigint": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12163,6 +8721,8 @@ }, "node_modules/is-boolean-object": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.2.2.tgz", + "integrity": "sha512-wa56o2/ElJMYqjCjGkXri7it5FbebW5usLw/nPmCMs5DeZ7eziSYZhSmPRn0txqeW4LnAmQQU7FgqLpsEFKM4A==", "dev": true, "license": "MIT", "dependencies": { @@ -12178,6 +8738,8 @@ }, "node_modules/is-callable": { "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "dev": true, "license": "MIT", "engines": { @@ -12189,6 +8751,8 @@ }, "node_modules/is-core-module": { "version": "2.16.2", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.2.tgz", + "integrity": "sha512-evOr8xfXKxE6qSR0hSXL2r3sd7ALj8+7jQEUvPYcm5sgZFdJ+AYzT6yNmJenvIYQBgIGwfwz08sL8zoL7yq2BA==", "dev": true, "license": "MIT", "dependencies": { @@ -12203,6 +8767,8 @@ }, "node_modules/is-data-view": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.2.tgz", + "integrity": "sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==", "dev": true, "license": "MIT", "dependencies": { @@ -12219,6 +8785,8 @@ }, "node_modules/is-date-object": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.1.0.tgz", + "integrity": "sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==", "dev": true, "license": "MIT", "dependencies": { @@ -12234,6 +8802,8 @@ }, "node_modules/is-docker": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", "dev": true, "license": "MIT", "bin": { @@ -12248,6 +8818,8 @@ }, "node_modules/is-document.all": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-document.all/-/is-document.all-1.0.0.tgz", + "integrity": "sha512-+XSoyS05OdBbhFuELhgTCpFNHkpBOJqtsZfUFFpe5QTw+9Sjbh8zitxhQkYAo6wV7e1Vb8cAPvpCk9jGam/82g==", "dev": true, "license": "MIT", "dependencies": { @@ -12262,6 +8834,8 @@ }, "node_modules/is-extglob": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, "license": "MIT", "engines": { @@ -12270,6 +8844,8 @@ }, "node_modules/is-finalizationregistry": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.1.1.tgz", + "integrity": "sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==", "dev": true, "license": "MIT", "dependencies": { @@ -12284,6 +8860,8 @@ }, "node_modules/is-fullwidth-code-point": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true, "license": "MIT", "engines": { @@ -12292,6 +8870,8 @@ }, "node_modules/is-generator-function": { "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.1.2.tgz", + "integrity": "sha512-upqt1SkGkODW9tsGNG5mtXTXtECizwtS2kA161M+gJPc1xdb/Ax629af6YrTwcOeQHbewrPNlE5Dx7kzvXTizA==", "dev": true, "license": "MIT", "dependencies": { @@ -12310,6 +8890,8 @@ }, "node_modules/is-glob": { "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, "license": "MIT", "dependencies": { @@ -12321,6 +8903,8 @@ }, "node_modules/is-interactive": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", + "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", "dev": true, "license": "MIT", "engines": { @@ -12332,6 +8916,8 @@ }, "node_modules/is-map": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", "dev": true, "license": "MIT", "engines": { @@ -12343,6 +8929,8 @@ }, "node_modules/is-negative-zero": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", "dev": true, "license": "MIT", "engines": { @@ -12354,6 +8942,8 @@ }, "node_modules/is-number-object": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.1.1.tgz", + "integrity": "sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==", "dev": true, "license": "MIT", "dependencies": { @@ -12369,16 +8959,22 @@ }, "node_modules/is-potential-custom-element-name": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", "dev": true, "license": "MIT" }, "node_modules/is-promise": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", + "integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==", "dev": true, "license": "MIT" }, "node_modules/is-regex": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.2.1.tgz", + "integrity": "sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==", "dev": true, "license": "MIT", "dependencies": { @@ -12396,6 +8992,8 @@ }, "node_modules/is-set": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", "dev": true, "license": "MIT", "engines": { @@ -12407,6 +9005,8 @@ }, "node_modules/is-shared-array-buffer": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.4.tgz", + "integrity": "sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==", "dev": true, "license": "MIT", "dependencies": { @@ -12421,6 +9021,8 @@ }, "node_modules/is-string": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.1.1.tgz", + "integrity": "sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==", "dev": true, "license": "MIT", "dependencies": { @@ -12436,6 +9038,8 @@ }, "node_modules/is-symbol": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.1.1.tgz", + "integrity": "sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==", "dev": true, "license": "MIT", "dependencies": { @@ -12452,6 +9056,8 @@ }, "node_modules/is-typed-array": { "version": "1.1.15", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.15.tgz", + "integrity": "sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12466,6 +9072,8 @@ }, "node_modules/is-unicode-supported": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz", + "integrity": "sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==", "dev": true, "license": "MIT", "engines": { @@ -12477,6 +9085,8 @@ }, "node_modules/is-weakmap": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", "dev": true, "license": "MIT", "engines": { @@ -12488,6 +9098,8 @@ }, "node_modules/is-weakref": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.1.1.tgz", + "integrity": "sha512-6i9mGWSlqzNMEqpCp93KwRS1uUOodk2OJ6b+sq7ZPDSy2WuI5NFIxp/254TytR8ftefexkWn5xNiHUNpPOfSew==", "dev": true, "license": "MIT", "dependencies": { @@ -12502,6 +9114,8 @@ }, "node_modules/is-weakset": { "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.4.tgz", + "integrity": "sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12517,6 +9131,8 @@ }, "node_modules/is-wsl": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", "dev": true, "license": "MIT", "dependencies": { @@ -12528,16 +9144,22 @@ }, "node_modules/isarray": { "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", "dev": true, "license": "MIT" }, "node_modules/isexe": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true, "license": "ISC" }, "node_modules/istanbul-lib-coverage": { "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "dev": true, "license": "BSD-3-Clause", "engines": { @@ -12546,6 +9168,8 @@ }, "node_modules/istanbul-lib-instrument": { "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -12560,7 +9184,9 @@ } }, "node_modules/jose": { - "version": "6.2.3", + "version": "6.2.9", + "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.9.tgz", + "integrity": "sha512-XrchZOFZUl/T3vTwRe8XK+cJrGtMF4th1ARnDfwbBXFKThGhlsxEE4Zu03AD/bjJSt/9jT/mxrOCkJWOg77aPA==", "dev": true, "license": "MIT", "funding": { @@ -12569,11 +9195,15 @@ }, "node_modules/js-tokens": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", "dev": true, "license": "MIT" }, "node_modules/js-yaml": { - "version": "4.2.0", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.1.tgz", + "integrity": "sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ==", "dev": true, "funding": [ { @@ -12595,6 +9225,8 @@ }, "node_modules/jsdoc-type-pratt-parser": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.0.0.tgz", + "integrity": "sha512-YtOli5Cmzy3q4dP26GraSOeAhqecewG04hoO8DY56CH4KJ9Fvv5qKWUCCo3HZob7esJQHCv6/+bnTy72xZZaVQ==", "dev": true, "license": "MIT", "engines": { @@ -12603,8 +9235,11 @@ }, "node_modules/jsdom": { "version": "26.1.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-26.1.0.tgz", + "integrity": "sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "cssstyle": "^4.2.1", "data-urls": "^5.0.0", @@ -12641,6 +9276,8 @@ }, "node_modules/jsesc": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", + "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", "dev": true, "license": "MIT", "bin": { @@ -12652,11 +9289,15 @@ }, "node_modules/json-buffer": { "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==", "dev": true, "license": "MIT" }, "node_modules/json-parse-even-better-errors": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-5.0.0.tgz", + "integrity": "sha512-ZF1nxZ28VhQouRWhUcVlUIN3qwSgPuswK05s/HIaoetAoE/9tngVmCHjSxmSQPav1nd+lPtTL0YZ/2AFdR/iYQ==", "dev": true, "license": "MIT", "engines": { @@ -12665,21 +9306,29 @@ }, "node_modules/json-schema-traverse": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true, "license": "MIT" }, "node_modules/json-schema-typed": { "version": "8.0.2", + "resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.2.tgz", + "integrity": "sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==", "dev": true, "license": "BSD-2-Clause" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true, "license": "MIT" }, "node_modules/json5": { "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, "license": "MIT", "bin": { @@ -12691,10 +9340,14 @@ }, "node_modules/jsonc-parser": { "version": "3.3.1", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.3.1.tgz", + "integrity": "sha512-HUgH65KyejrUFPvHFPbqOY0rsFip3Bo5wb4ngvdi1EpCYWUQDC5V+Y7mZws+DLkr4M//zQJoanu1SP+87Dv1oQ==", "license": "MIT" }, "node_modules/jsonfile": { "version": "6.2.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.1.tgz", + "integrity": "sha512-zwOTdL3rFQ/lRdBnntKVOX6k5cKJwEc1HdilT71BWEu7J41gXIB2MRp+vxduPSwZJPWBxEzv4yH1wYLJGUHX4Q==", "dev": true, "license": "MIT", "dependencies": { @@ -12706,6 +9359,8 @@ }, "node_modules/jsonparse": { "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", "dev": true, "engines": [ "node >= 0.2.0" @@ -12714,6 +9369,8 @@ }, "node_modules/keyv": { "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", "dev": true, "license": "MIT", "dependencies": { @@ -12722,6 +9379,8 @@ }, "node_modules/kleur": { "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", "dev": true, "license": "MIT", "engines": { @@ -12730,6 +9389,8 @@ }, "node_modules/levn": { "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12742,6 +9403,8 @@ }, "node_modules/listr2": { "version": "9.0.5", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-9.0.5.tgz", + "integrity": "sha512-ME4Fb83LgEgwNw96RKNvKV4VTLuXfoKudAmm2lP8Kk87KaMK0/Xrx/aAkMWmT8mDb+3MlFDspfbCs7adjRxA2g==", "dev": true, "license": "MIT", "dependencies": { @@ -12757,7 +9420,9 @@ } }, "node_modules/listr2/node_modules/ansi-regex": { - "version": "6.2.2", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.3.0.tgz", + "integrity": "sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==", "dev": true, "license": "MIT", "engines": { @@ -12769,6 +9434,8 @@ }, "node_modules/listr2/node_modules/ansi-styles": { "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, "license": "MIT", "engines": { @@ -12780,11 +9447,15 @@ }, "node_modules/listr2/node_modules/emoji-regex": { "version": "10.6.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", "dev": true, "license": "MIT" }, "node_modules/listr2/node_modules/string-width": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12801,6 +9472,8 @@ }, "node_modules/listr2/node_modules/strip-ansi": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { @@ -12815,6 +9488,8 @@ }, "node_modules/listr2/node_modules/wrap-ansi": { "version": "9.0.2", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", + "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", "dev": true, "license": "MIT", "dependencies": { @@ -12831,6 +9506,8 @@ }, "node_modules/lmdb": { "version": "3.5.1", + "resolved": "https://registry.npmjs.org/lmdb/-/lmdb-3.5.1.tgz", + "integrity": "sha512-NYHA0MRPjvNX+vSw8Xxg6FLKxzAG+e7Pt8RqAQA/EehzHVXq9SxDqJIN3JL1hK0dweb884y8kIh6rkWvPyg9Wg==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -12858,6 +9535,8 @@ }, "node_modules/locate-path": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "license": "MIT", "dependencies": { @@ -12872,11 +9551,15 @@ }, "node_modules/lodash.merge": { "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", "dev": true, "license": "MIT" }, "node_modules/log-symbols": { "version": "7.0.1", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-7.0.1.tgz", + "integrity": "sha512-ja1E3yCr9i/0hmBVaM0bfwDjnGy8I/s6PP4DFp+yP+a+mrHO4Rm7DtmnqROTUkHIkqffC84YY7AeqX6oFk0WFg==", "dev": true, "license": "MIT", "dependencies": { @@ -12892,6 +9575,8 @@ }, "node_modules/log-update": { "version": "6.1.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.1.0.tgz", + "integrity": "sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==", "dev": true, "license": "MIT", "dependencies": { @@ -12909,7 +9594,9 @@ } }, "node_modules/log-update/node_modules/ansi-regex": { - "version": "6.2.2", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.3.0.tgz", + "integrity": "sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==", "dev": true, "license": "MIT", "engines": { @@ -12921,6 +9608,8 @@ }, "node_modules/log-update/node_modules/ansi-styles": { "version": "6.2.3", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", + "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", "dev": true, "license": "MIT", "engines": { @@ -12932,11 +9621,15 @@ }, "node_modules/log-update/node_modules/emoji-regex": { "version": "10.6.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", "dev": true, "license": "MIT" }, "node_modules/log-update/node_modules/is-fullwidth-code-point": { "version": "5.1.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.1.0.tgz", + "integrity": "sha512-5XHYaSyiqADb4RnZ1Bdad6cPp8Toise4TzEjcOYDHZkTCbKgiUl7WTUCpNWHuxmDt91wnsZBc9xinNzopv3JMQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12951,6 +9644,8 @@ }, "node_modules/log-update/node_modules/slice-ansi": { "version": "7.1.2", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-7.1.2.tgz", + "integrity": "sha512-iOBWFgUX7caIZiuutICxVgX1SdxwAVFFKwt1EvMYYec/NWO5meOJ6K5uQxhrYBdQJne4KxiqZc+KptFOWFSI9w==", "dev": true, "license": "MIT", "dependencies": { @@ -12966,6 +9661,8 @@ }, "node_modules/log-update/node_modules/string-width": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "license": "MIT", "dependencies": { @@ -12982,6 +9679,8 @@ }, "node_modules/log-update/node_modules/strip-ansi": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { @@ -12996,6 +9695,8 @@ }, "node_modules/log-update/node_modules/wrap-ansi": { "version": "9.0.2", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.2.tgz", + "integrity": "sha512-42AtmgqjV+X1VpdOfyTGOYRi0/zsoLqtXQckTmqTeybT+BDIbM/Guxo7x3pE2vtpr1ok6xRqM9OpBe+Jyoqyww==", "dev": true, "license": "MIT", "dependencies": { @@ -13012,6 +9713,8 @@ }, "node_modules/lru-cache": { "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "license": "ISC", "dependencies": { @@ -13020,6 +9723,8 @@ }, "node_modules/magic-string": { "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13028,6 +9733,8 @@ }, "node_modules/make-fetch-happen": { "version": "15.0.6", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-15.0.6.tgz", + "integrity": "sha512-Je0fLJ0F5atA7F+eIlLzk+Wkcl57JDf4kf+EW8xiP5E31xOQxkIxTbgf1Oi1Lw9tRI9UEMRdI5Vz2xTzoNU1Jw==", "dev": true, "license": "ISC", "dependencies": { @@ -13050,6 +9757,8 @@ }, "node_modules/math-intrinsics": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", "dev": true, "license": "MIT", "engines": { @@ -13057,15 +9766,23 @@ } }, "node_modules/media-typer": { - "version": "1.1.0", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-1.1.1.tgz", + "integrity": "sha512-yz3xRaG20c6/BOzvYoDaGtPmGscs7YivItZEEqe6GbwNfHuxu9YNmvnEkMzKldAGY4/80pRcQRZSEnhquk9XuQ==", "dev": true, "license": "MIT", "engines": { "node": ">= 0.8" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/merge-descriptors": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-2.0.0.tgz", + "integrity": "sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g==", "dev": true, "license": "MIT", "engines": { @@ -13077,6 +9794,8 @@ }, "node_modules/mime-db": { "version": "1.54.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.54.0.tgz", + "integrity": "sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ==", "dev": true, "license": "MIT", "engines": { @@ -13085,6 +9804,8 @@ }, "node_modules/mime-types": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-3.0.2.tgz", + "integrity": "sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A==", "dev": true, "license": "MIT", "dependencies": { @@ -13100,6 +9821,8 @@ }, "node_modules/mimic-function": { "version": "5.0.1", + "resolved": "https://registry.npmjs.org/mimic-function/-/mimic-function-5.0.1.tgz", + "integrity": "sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==", "dev": true, "license": "MIT", "engines": { @@ -13110,11 +9833,13 @@ } }, "node_modules/minimatch": { - "version": "10.2.5", + "version": "10.2.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.6.tgz", + "integrity": "sha512-vpLQEs+VLCr1nU0BXS07maYoFwlDAH0gngQuuttxIwutDFEMHq2blX+8vpgxDdK3J1PwjCJiep77OitTZ4Ll1A==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { - "brace-expansion": "^5.0.5" + "brace-expansion": "^5.0.8" }, "engines": { "node": "18 || 20 || >=22" @@ -13125,6 +9850,8 @@ }, "node_modules/minimist": { "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "dev": true, "license": "MIT", "funding": { @@ -13133,6 +9860,8 @@ }, "node_modules/minipass": { "version": "7.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", + "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -13141,6 +9870,8 @@ }, "node_modules/minipass-collect": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", "dev": true, "license": "ISC", "dependencies": { @@ -13152,6 +9883,8 @@ }, "node_modules/minipass-fetch": { "version": "5.0.2", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-5.0.2.tgz", + "integrity": "sha512-2d0q2a8eCi2IRg/IGubCNRJoYbA1+YPXAzQVRFmB45gdGZafyivnZ5YSEfo3JikbjGxOdntGFvBQGqaSMXlAFQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13168,6 +9901,8 @@ }, "node_modules/minipass-flush": { "version": "1.0.7", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.7.tgz", + "integrity": "sha512-TbqTz9cUwWyHS2Dy89P3ocAGUGxKjjLuR9z8w4WUTGAVgEj17/4nhgo2Du56i0Fm3Pm30g4iA8Lcqctc76jCzA==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -13179,6 +9914,8 @@ }, "node_modules/minipass-flush/node_modules/minipass": { "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, "license": "ISC", "dependencies": { @@ -13190,11 +9927,15 @@ }, "node_modules/minipass-flush/node_modules/yallist": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true, "license": "ISC" }, "node_modules/minipass-pipeline": { "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", "dev": true, "license": "ISC", "dependencies": { @@ -13206,6 +9947,8 @@ }, "node_modules/minipass-pipeline/node_modules/minipass": { "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", "dev": true, "license": "ISC", "dependencies": { @@ -13217,11 +9960,15 @@ }, "node_modules/minipass-pipeline/node_modules/yallist": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true, "license": "ISC" }, "node_modules/minipass-sized": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-2.0.0.tgz", + "integrity": "sha512-zSsHhto5BcUVM2m1LurnXY6M//cGhVaegT71OfOXoprxT6o780GZd792ea6FfrQkuU4usHZIUczAQMRUE2plzA==", "dev": true, "license": "ISC", "dependencies": { @@ -13233,6 +9980,8 @@ }, "node_modules/minizlib": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-3.1.0.tgz", + "integrity": "sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw==", "dev": true, "license": "MIT", "dependencies": { @@ -13244,6 +9993,8 @@ }, "node_modules/mrmime": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-2.0.1.tgz", + "integrity": "sha512-Y3wQdFg2Va6etvQ5I82yUhGdsKrcYox6p7FfL1LbK2J4V01F9TGlepTIhnK24t7koZibmg82KGglhA1XK5IsLQ==", "dev": true, "license": "MIT", "engines": { @@ -13252,11 +10003,15 @@ }, "node_modules/ms": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true, "license": "MIT" }, "node_modules/msgpackr": { "version": "1.12.1", + "resolved": "https://registry.npmjs.org/msgpackr/-/msgpackr-1.12.1.tgz", + "integrity": "sha512-4EUH9tQHnMmEgzW/MdAP0KIfa1T9AF+htl0ffe2n5vb2EKn9y2co8ccpgWko6S52Jy1PQZKwRnx5/KkYjtd9MQ==", "dev": true, "license": "MIT", "optional": true, @@ -13266,6 +10021,8 @@ }, "node_modules/msgpackr-extract": { "version": "3.0.4", + "resolved": "https://registry.npmjs.org/msgpackr-extract/-/msgpackr-extract-3.0.4.tgz", + "integrity": "sha512-4kmO/MdyUIkLIvTPr8VHLil4AtoKIoniWPIEk5+CDy0xnWC84azhSFmuJ7PxZdsYtiP5kEeQsORAVIeMgxT+Hw==", "dev": true, "hasInstallScript": true, "license": "MIT", @@ -13287,6 +10044,8 @@ }, "node_modules/mute-stream": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-2.0.0.tgz", + "integrity": "sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==", "dev": true, "license": "ISC", "engines": { @@ -13294,7 +10053,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.12", + "version": "3.3.18", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz", + "integrity": "sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==", "dev": true, "funding": [ { @@ -13312,6 +10073,8 @@ }, "node_modules/native-run": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/native-run/-/native-run-2.0.3.tgz", + "integrity": "sha512-U1PllBuzW5d1gfan+88L+Hky2eZx+9gv3Pf6rNBxKbORxi7boHzqiA6QFGSnqMem4j0A9tZ08NMIs5+0m/VS1Q==", "dev": true, "license": "MIT", "dependencies": { @@ -13336,6 +10099,8 @@ }, "node_modules/native-run/node_modules/ini": { "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", + "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", "dev": true, "license": "ISC", "engines": { @@ -13344,25 +10109,54 @@ }, "node_modules/natural-compare": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true, "license": "MIT" }, "node_modules/negotiator": { - "version": "1.0.0", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-1.1.0.tgz", + "integrity": "sha512-NMPBRMJgiQHjbd8phG3Vebdx4kZ1H121rbl5IkMqeOsahptB9BKo/d7oJ3zTXqTgagn2bWlNSXkh0QUGM31RYg==", "dev": true, "license": "MIT", + "dependencies": { + "content-type": "^2.1.0" + }, "engines": { - "node": ">= 0.6" + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/negotiator/node_modules/content-type": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz", + "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/node-addon-api": { "version": "6.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-6.1.0.tgz", + "integrity": "sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==", "dev": true, "license": "MIT", "optional": true }, "node_modules/node-exports-info": { - "version": "1.6.0", + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/node-exports-info/-/node-exports-info-1.6.2.tgz", + "integrity": "sha512-kXs9Go0cah0qHVV2v389IXQLdLCeE1xfFtjOAF+iobu0OIoG1pje8At2vMHyaPMiPMnG/LWP50twML21eMcAag==", "dev": true, "license": "MIT", "dependencies": { @@ -13380,6 +10174,8 @@ }, "node_modules/node-exports-info/node_modules/semver": { "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "license": "ISC", "bin": { @@ -13388,6 +10184,8 @@ }, "node_modules/node-gyp": { "version": "12.4.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-12.4.0.tgz", + "integrity": "sha512-OMcPNvqTCFUnNaBlmdgq+lfNqY7gTiSmNRDjY3uAXRyudeKZEZxu3CLtjMQrx4zZxCX2b/mpNqTtwuCJgXhHkw==", "dev": true, "license": "MIT", "dependencies": { @@ -13411,6 +10209,8 @@ }, "node_modules/node-gyp-build-optional-packages": { "version": "5.2.2", + "resolved": "https://registry.npmjs.org/node-gyp-build-optional-packages/-/node-gyp-build-optional-packages-5.2.2.tgz", + "integrity": "sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw==", "dev": true, "license": "MIT", "optional": true, @@ -13425,6 +10225,8 @@ }, "node_modules/node-gyp/node_modules/isexe": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-4.0.0.tgz", + "integrity": "sha512-FFUtZMpoZ8RqHS3XeXEmHWLA4thH+ZxCv2lOiPIn1Xc7CxrqhWzNSDzD+/chS/zbYezmiwWLdQC09JdQKmthOw==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -13432,7 +10234,9 @@ } }, "node_modules/node-gyp/node_modules/undici": { - "version": "6.27.0", + "version": "6.28.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-6.28.0.tgz", + "integrity": "sha512-LIY910g9TI13YS95lrMFrs8Rm/u/irgHeTWoKCoteeJ04CUJ92eEfj0rVn+7VKMPBpUPiUoBKfhNyLI23EE/KA==", "dev": true, "license": "MIT", "engines": { @@ -13441,6 +10245,8 @@ }, "node_modules/node-gyp/node_modules/which": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/which/-/which-6.0.1.tgz", + "integrity": "sha512-oGLe46MIrCRqX7ytPUf66EAYvdeMIZYn3WaocqqKZAxrBpkqHfL/qvTyJ/bTk5+AqHCjXmrv3CEWgy368zhRUg==", "dev": true, "license": "ISC", "dependencies": { @@ -13454,7 +10260,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.48", + "version": "2.0.53", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.53.tgz", + "integrity": "sha512-D9UOmYG3UH1V+ENW56t5QXBwJw1YEY18ruVeus89Rw+SyIgjPkCO84bRzO3uNIYosJbNwiabWVn48o3uJLjxFQ==", "dev": true, "license": "MIT", "engines": { @@ -13463,6 +10271,8 @@ }, "node_modules/nopt": { "version": "9.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-9.0.0.tgz", + "integrity": "sha512-Zhq3a+yFKrYwSBluL4H9XP3m3y5uvQkB/09CwDruCiRmR/UJYnn9W4R48ry0uGC70aeTPKLynBtscP9efFFcPw==", "dev": true, "license": "ISC", "dependencies": { @@ -13477,6 +10287,8 @@ }, "node_modules/npm-bundled": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-5.0.0.tgz", + "integrity": "sha512-JLSpbzh6UUXIEoqPsYBvVNVmyrjVZ1fzEFbqxKkTJQkWBO3xFzFT+KDnSKQWwOQNbuWRwt5LSD6HOTLGIWzfrw==", "dev": true, "license": "ISC", "dependencies": { @@ -13488,6 +10300,8 @@ }, "node_modules/npm-install-checks": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-8.0.0.tgz", + "integrity": "sha512-ScAUdMpyzkbpxoNekQ3tNRdFI8SJ86wgKZSQZdUxT+bj0wVFpsEMWnkXP0twVe1gJyNF5apBWDJhhIbgrIViRA==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -13499,6 +10313,8 @@ }, "node_modules/npm-normalize-package-bin": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-5.0.0.tgz", + "integrity": "sha512-CJi3OS4JLsNMmr2u07OJlhcrPxCeOeP/4xq67aWNai6TNWWbTrlNDgl8NcFKVlcBKp18GPj+EzbNIgrBfZhsag==", "dev": true, "license": "ISC", "engines": { @@ -13507,6 +10323,8 @@ }, "node_modules/npm-package-arg": { "version": "13.0.2", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-13.0.2.tgz", + "integrity": "sha512-IciCE3SY3uE84Ld8WZU23gAPPV9rIYod4F+rc+vJ7h7cwAJt9Vk6TVsK60ry7Uj3SRS3bqRRIGuTp9YVlk6WNA==", "dev": true, "license": "ISC", "dependencies": { @@ -13521,6 +10339,8 @@ }, "node_modules/npm-packlist": { "version": "10.0.4", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-10.0.4.tgz", + "integrity": "sha512-uMW73iajD8hiH4ZBxEV3HC+eTnppIqwakjOYuvgddnalIw2lJguKviK1pcUJDlIWm1wSJkchpDZDSVVsZEYRng==", "dev": true, "license": "ISC", "dependencies": { @@ -13533,6 +10353,8 @@ }, "node_modules/npm-pick-manifest": { "version": "11.0.3", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-11.0.3.tgz", + "integrity": "sha512-buzyCfeoGY/PxKqmBqn1IUJrZnUi1VVJTdSSRPGI60tJdUhUoSQFhs0zycJokDdOznQentgrpf8LayEHyyYlqQ==", "dev": true, "license": "ISC", "dependencies": { @@ -13547,6 +10369,8 @@ }, "node_modules/npm-registry-fetch": { "version": "19.1.1", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-19.1.1.tgz", + "integrity": "sha512-TakBap6OM1w0H73VZVDf44iFXsOS3h+L4wVMXmbWOQroZgFhMch0juN6XSzBNlD965yIKvWg2dfu7NSiaYLxtw==", "dev": true, "license": "ISC", "dependencies": { @@ -13565,6 +10389,8 @@ }, "node_modules/nth-check": { "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -13576,11 +10402,15 @@ }, "node_modules/nwsapi": { "version": "2.2.24", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.24.tgz", + "integrity": "sha512-7YRhZ3jS45LwmSCT4b2sVFHt/WuovaktDU07QrtOBY2PXskss5a9jfmR9jptyumwXST+rFjrmppMY1KT/yn35A==", "dev": true, "license": "MIT" }, "node_modules/object-assign": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true, "license": "MIT", "engines": { @@ -13589,6 +10419,8 @@ }, "node_modules/object-inspect": { "version": "1.13.4", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", + "integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==", "dev": true, "license": "MIT", "engines": { @@ -13600,6 +10432,8 @@ }, "node_modules/object-keys": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "dev": true, "license": "MIT", "engines": { @@ -13608,6 +10442,8 @@ }, "node_modules/object.assign": { "version": "4.1.7", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.7.tgz", + "integrity": "sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==", "dev": true, "license": "MIT", "dependencies": { @@ -13627,6 +10463,8 @@ }, "node_modules/object.entries": { "version": "1.1.9", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.9.tgz", + "integrity": "sha512-8u/hfXFRBD1O0hPUjioLhoWFHRmt6tKA4/vZPyckBr18l1KE9uHrFaFaUi8MDRTpi4uak2goyPTSNJLXX2k2Hw==", "dev": true, "license": "MIT", "dependencies": { @@ -13641,6 +10479,8 @@ }, "node_modules/object.fromentries": { "version": "2.0.8", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz", + "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13658,6 +10498,8 @@ }, "node_modules/object.groupby": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz", + "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13671,6 +10513,8 @@ }, "node_modules/object.values": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.1.tgz", + "integrity": "sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==", "dev": true, "license": "MIT", "dependencies": { @@ -13687,7 +10531,9 @@ } }, "node_modules/obug": { - "version": "2.1.3", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/obug/-/obug-2.1.4.tgz", + "integrity": "sha512-4a+OsYv9UktOJKE+l1A4OufDgdRF9PifWj+tJnHURo/P+WOxpG4GzUFL9qCalmWauao6ogiG+QvnCovwPoyAWA==", "dev": true, "funding": [ "https://github.com/sponsors/sxzz", @@ -13700,6 +10546,8 @@ }, "node_modules/on-finished": { "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", "dev": true, "license": "MIT", "dependencies": { @@ -13711,6 +10559,8 @@ }, "node_modules/once": { "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dev": true, "license": "ISC", "dependencies": { @@ -13719,6 +10569,8 @@ }, "node_modules/onetime": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-7.0.0.tgz", + "integrity": "sha512-VXJjc87FScF88uafS3JllDgvAm+c/Slfz06lorj2uAY34rlUu0Nt+v8wreiImcrgAjjIHp1rXpTDlLOGw29WwQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13733,6 +10585,8 @@ }, "node_modules/open": { "version": "8.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13749,6 +10603,8 @@ }, "node_modules/optionator": { "version": "0.9.4", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", + "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==", "dev": true, "license": "MIT", "dependencies": { @@ -13765,6 +10621,8 @@ }, "node_modules/ora": { "version": "9.3.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-9.3.0.tgz", + "integrity": "sha512-lBX72MWFduWEf7v7uWf5DHp9Jn5BI8bNPGuFgtXMmr2uDz2Gz2749y3am3agSDdkhHPHYmmxEGSKH85ZLGzgXw==", "dev": true, "license": "MIT", "dependencies": { @@ -13785,7 +10643,9 @@ } }, "node_modules/ora/node_modules/ansi-regex": { - "version": "6.2.2", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.3.0.tgz", + "integrity": "sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==", "dev": true, "license": "MIT", "engines": { @@ -13797,6 +10657,8 @@ }, "node_modules/ora/node_modules/chalk": { "version": "5.6.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz", + "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==", "dev": true, "license": "MIT", "engines": { @@ -13807,7 +10669,9 @@ } }, "node_modules/ora/node_modules/string-width": { - "version": "8.2.1", + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-8.2.2.tgz", + "integrity": "sha512-GaPUh5gfdrYzqeVNZvUfT23vYYxXzKYidUcnMtJg/3rxRV63EFZy3k6xfKlmfeJD0176lnUV/Usr3XcwSvFzpg==", "dev": true, "license": "MIT", "dependencies": { @@ -13823,6 +10687,8 @@ }, "node_modules/ora/node_modules/strip-ansi": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { @@ -13837,16 +10703,21 @@ }, "node_modules/ordered-binary": { "version": "1.6.1", + "resolved": "https://registry.npmjs.org/ordered-binary/-/ordered-binary-1.6.1.tgz", + "integrity": "sha512-QkCdPooczexPLiXIrbVOPYkR3VO3T6v2OyKRkR1Xbhpy7/LAVXwahnRCgRp78Oe/Ehf0C/HATAxfSr6eA1oX+w==", "dev": true, "license": "MIT", "optional": true }, "node_modules/own-keys": { - "version": "1.0.1", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/own-keys/-/own-keys-1.0.2.tgz", + "integrity": "sha512-19YVAg7T+WTrxggPukVq7DjTv6+PJ867TmhCvBsYwmbFCsZd344rq2Ld1p0wo8f8Qrrhgp82c6FJRqdXWtSEhg==", "dev": true, "license": "MIT", "dependencies": { - "get-intrinsic": "^1.2.6", + "call-bound": "^1.0.4", + "get-intrinsic": "^1.3.0", "object-keys": "^1.1.1", "safe-push-apply": "^1.0.0" }, @@ -13859,6 +10730,8 @@ }, "node_modules/p-limit": { "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, "license": "MIT", "dependencies": { @@ -13873,6 +10746,8 @@ }, "node_modules/p-locate": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "license": "MIT", "dependencies": { @@ -13886,7 +10761,9 @@ } }, "node_modules/p-map": { - "version": "7.0.4", + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-7.0.6.tgz", + "integrity": "sha512-I4Prw6ivkd6p8PiYR1tXASOAOBzIJwu0TB7fqaX0c/8c3QAehNYmX57EijyGGGBt3c/BIowGwV03RVBtXvHEVg==", "dev": true, "license": "MIT", "engines": { @@ -13898,11 +10775,15 @@ }, "node_modules/package-json-from-dist": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", "dev": true, "license": "BlueOak-1.0.0" }, "node_modules/pacote": { "version": "21.5.1", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-21.5.1.tgz", + "integrity": "sha512-KvcJ9iy3crysCsgqc4+PknH/w6jkrp8JN36mpZBPwNaDRwTfMZD37YzRazNstiZUOhuF5pno9f78n9mEJBavwg==", "dev": true, "license": "ISC", "dependencies": { @@ -13933,6 +10814,8 @@ }, "node_modules/parent-module": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dev": true, "license": "MIT", "dependencies": { @@ -13944,6 +10827,8 @@ }, "node_modules/parse-imports": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/parse-imports/-/parse-imports-2.2.1.tgz", + "integrity": "sha512-OL/zLggRp8mFhKL0rNORUTR4yBYujK/uU+xZL+/0Rgm2QE4nLO9v8PzEweSJEbMGKmDRjJE4R3IMJlL2di4JeQ==", "dev": true, "license": "Apache-2.0 AND MIT", "dependencies": { @@ -13956,6 +10841,8 @@ }, "node_modules/parse5": { "version": "7.3.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz", + "integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==", "dev": true, "license": "MIT", "dependencies": { @@ -13967,6 +10854,8 @@ }, "node_modules/parse5-html-rewriting-stream": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-8.0.0.tgz", + "integrity": "sha512-wzh11mj8KKkno1pZEu+l2EVeWsuKDfR5KNWZOTsslfUX8lPDZx77m9T0kIoAVkFtD1nx6YF8oh4BnPHvxMtNMw==", "dev": true, "license": "MIT", "dependencies": { @@ -13980,6 +10869,8 @@ }, "node_modules/parse5-html-rewriting-stream/node_modules/entities": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -13991,6 +10882,8 @@ }, "node_modules/parse5-html-rewriting-stream/node_modules/parse5": { "version": "8.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-8.0.1.tgz", + "integrity": "sha512-z1e/HMG90obSGeidlli3hj7cbocou0/wa5HacvI3ASx34PecNjNQeaHNo5WIZpWofN9kgkqV1q5YvXe3F0FoPw==", "dev": true, "license": "MIT", "dependencies": { @@ -14002,6 +10895,8 @@ }, "node_modules/parse5-html-rewriting-stream/node_modules/parse5/node_modules/entities": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-8.0.0.tgz", + "integrity": "sha512-zwfzJecQ/Uej6tusMqwAqU/6KL2XaB2VZ2Jg54Je6ahNBGNH6Ek6g3jjNCF0fG9EWQKGZNddNjU5F1ZQn/sBnA==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -14013,6 +10908,8 @@ }, "node_modules/parse5-sax-parser": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/parse5-sax-parser/-/parse5-sax-parser-8.0.0.tgz", + "integrity": "sha512-/dQ8UzHZwnrzs3EvDj6IkKrD/jIZyTlB+8XrHJvcjNgRdmWruNdN9i9RK/JtxakmlUdPwKubKPTCqvbTgzGhrw==", "dev": true, "license": "MIT", "dependencies": { @@ -14024,6 +10921,8 @@ }, "node_modules/parse5-sax-parser/node_modules/entities": { "version": "8.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-8.0.0.tgz", + "integrity": "sha512-zwfzJecQ/Uej6tusMqwAqU/6KL2XaB2VZ2Jg54Je6ahNBGNH6Ek6g3jjNCF0fG9EWQKGZNddNjU5F1ZQn/sBnA==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -14035,6 +10934,8 @@ }, "node_modules/parse5-sax-parser/node_modules/parse5": { "version": "8.0.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-8.0.1.tgz", + "integrity": "sha512-z1e/HMG90obSGeidlli3hj7cbocou0/wa5HacvI3ASx34PecNjNQeaHNo5WIZpWofN9kgkqV1q5YvXe3F0FoPw==", "dev": true, "license": "MIT", "dependencies": { @@ -14046,6 +10947,8 @@ }, "node_modules/parse5/node_modules/entities": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz", + "integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -14057,6 +10960,8 @@ }, "node_modules/parseurl": { "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", "dev": true, "license": "MIT", "engines": { @@ -14065,6 +10970,8 @@ }, "node_modules/path-exists": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true, "license": "MIT", "engines": { @@ -14073,6 +10980,8 @@ }, "node_modules/path-key": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "dev": true, "license": "MIT", "engines": { @@ -14081,11 +10990,15 @@ }, "node_modules/path-parse": { "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true, "license": "MIT" }, "node_modules/path-scurry": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz", + "integrity": "sha512-3O/iVVsJAPsOnpwWIeD+d6z/7PmqApyQePUtCndjatj/9I5LylHvt5qluFaBT3I5h3r1ejfR056c+FCv+NnNXg==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -14100,7 +11013,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "11.5.1", + "version": "11.5.2", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.2.tgz", + "integrity": "sha512-4pfM1Ff0x50o0tQwb5ucw/RzNyD0/YJME6IVcStalZuMWxdt3sR3huStTtxz4PUmvZfRguvDejasvQ2kifR11g==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -14109,6 +11024,8 @@ }, "node_modules/path-to-regexp": { "version": "8.4.2", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz", + "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==", "dev": true, "license": "MIT", "funding": { @@ -14118,21 +11035,29 @@ }, "node_modules/pathe": { "version": "2.0.3", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz", + "integrity": "sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==", "dev": true, "license": "MIT" }, "node_modules/pend": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", + "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", "dev": true, "license": "MIT" }, "node_modules/picocolors": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", "dev": true, "license": "ISC" }, "node_modules/picomatch": { "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", "dev": true, "license": "MIT", "engines": { @@ -14143,7 +11068,9 @@ } }, "node_modules/piscina": { - "version": "5.1.4", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-5.2.0.tgz", + "integrity": "sha512-DszUCKeVN/5G5QKo6jAVHL8fmKnkJvQ0ACiVgY7YGCq3TUB2oznAOayvZPIAdEThvhczkXR+qm3IHsNXpFCYfA==", "dev": true, "license": "MIT", "engines": { @@ -14155,6 +11082,8 @@ }, "node_modules/pkce-challenge": { "version": "5.0.1", + "resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz", + "integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==", "dev": true, "license": "MIT", "engines": { @@ -14163,6 +11092,8 @@ }, "node_modules/playwright": { "version": "1.58.2", + "resolved": "https://registry.npmjs.org/playwright/-/playwright-1.58.2.tgz", + "integrity": "sha512-vA30H8Nvkq/cPBnNw4Q8TWz1EJyqgpuinBcHET0YVJVFldr8JDNiU9LaWAE1KqSkRYazuaBhTpB5ZzShOezQ6A==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -14180,6 +11111,8 @@ }, "node_modules/playwright-core": { "version": "1.58.2", + "resolved": "https://registry.npmjs.org/playwright-core/-/playwright-core-1.58.2.tgz", + "integrity": "sha512-yZkEtftgwS8CsfYo7nm0KE8jsvm6i/PTgVtB8DL726wNf6H2IMsDuxCpJj59KDaxCtSnrWan2AeDqM7JBaultg==", "dev": true, "license": "Apache-2.0", "bin": { @@ -14191,6 +11124,8 @@ }, "node_modules/plist": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.1.tgz", + "integrity": "sha512-ZIfcLJC+7E7FBFnDxm9MPmt7D+DidyQ26lewieO75AdhA2ayMtsJSES0iWzqJQbcVRSrTufQoy0DR94xHue0oA==", "dev": true, "license": "MIT", "dependencies": { @@ -14204,6 +11139,8 @@ }, "node_modules/possible-typed-array-names": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.1.0.tgz", + "integrity": "sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==", "dev": true, "license": "MIT", "engines": { @@ -14211,7 +11148,9 @@ } }, "node_modules/postcss": { - "version": "8.5.15", + "version": "8.5.26", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.26.tgz", + "integrity": "sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==", "dev": true, "funding": [ { @@ -14228,8 +11167,9 @@ } ], "license": "MIT", + "peer": true, "dependencies": { - "nanoid": "^3.3.12", + "nanoid": "^3.3.17", "picocolors": "^1.1.1", "source-map-js": "^1.2.1" }, @@ -14239,11 +11179,15 @@ }, "node_modules/postcss-media-query-parser": { "version": "0.2.3", + "resolved": "https://registry.npmjs.org/postcss-media-query-parser/-/postcss-media-query-parser-0.2.3.tgz", + "integrity": "sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==", "dev": true, "license": "MIT" }, "node_modules/postcss-safe-parser": { "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.1.tgz", + "integrity": "sha512-0AioNCJZ2DPYz5ABT6bddIqlhgwhpHZ/l65YAYo0BCIn0xiDpsnTHz0gnoTGk0OXZW0JRs+cDwL8u/teRdz+8A==", "dev": true, "funding": [ { @@ -14269,6 +11213,8 @@ }, "node_modules/prelude-ls": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", "dev": true, "license": "MIT", "engines": { @@ -14277,6 +11223,8 @@ }, "node_modules/proc-log": { "version": "6.1.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-6.1.0.tgz", + "integrity": "sha512-iG+GYldRf2BQ0UDUAd6JQ/RwzaQy6mXmsk/IzlYyal4A4SNFw54MeH4/tLkF4I5WoWG9SQwuqWzS99jaFQHBuQ==", "dev": true, "license": "ISC", "engines": { @@ -14285,6 +11233,8 @@ }, "node_modules/prompts": { "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", "dev": true, "license": "MIT", "dependencies": { @@ -14297,6 +11247,8 @@ }, "node_modules/prompts/node_modules/kleur": { "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true, "license": "MIT", "engines": { @@ -14305,6 +11257,8 @@ }, "node_modules/proxy-addr": { "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", "dev": true, "license": "MIT", "dependencies": { @@ -14317,6 +11271,8 @@ }, "node_modules/punycode": { "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", "dev": true, "license": "MIT", "engines": { @@ -14324,11 +11280,14 @@ } }, "node_modules/qs": { - "version": "6.15.2", + "version": "6.15.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.15.3.tgz", + "integrity": "sha512-O9gl3zCl5h5blw1KGUzQKhA5oUXSl8rwUIM5o0S3nCXMliSvy5Dzx7/DJcI+SwgICv+IneSZwhBh1oSyEHA71A==", "dev": true, "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.1.0" + "es-define-property": "^1.0.1", + "side-channel": "^1.1.1" }, "engines": { "node": ">=0.6" @@ -14338,15 +11297,23 @@ } }, "node_modules/range-parser": { - "version": "1.2.1", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.3.0.tgz", + "integrity": "sha512-hek2mFQpPuI4E1BBKrSto+BU3e3x4xuarsbiwr3+lf7p44juvFMV0XFWQAP3xUyqXA4RrXLIoaSUGbSt056ZMw==", "dev": true, "license": "MIT", "engines": { "node": ">= 0.6" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/raw-body": { "version": "3.0.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-3.0.2.tgz", + "integrity": "sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==", "dev": true, "license": "MIT", "dependencies": { @@ -14361,6 +11328,8 @@ }, "node_modules/readable-stream": { "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dev": true, "license": "MIT", "dependencies": { @@ -14373,7 +11342,9 @@ } }, "node_modules/readdirp": { - "version": "5.0.0", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-5.1.1.tgz", + "integrity": "sha512-Kko+Y5XQ6fM+Ce3dq3m9YGxnacYZYl9cA1wZjaF3Vbry2L3i1qVg8+CAgNPsXRArPMUMCaOR7oa9Nqntc43JKA==", "dev": true, "license": "MIT", "engines": { @@ -14386,11 +11357,15 @@ }, "node_modules/reflect-metadata": { "version": "0.2.2", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.2.2.tgz", + "integrity": "sha512-urBwgfrvVP/eAyXx4hluJivBKzuEbSQs9rKWCrCkbSxNv8mxPcUZKeuoF3Uy4mJl3Lwprp6yy5/39VWigZ4K6Q==", "dev": true, "license": "Apache-2.0" }, "node_modules/reflect.getprototypeof": { "version": "1.0.10", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.10.tgz", + "integrity": "sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==", "dev": true, "license": "MIT", "dependencies": { @@ -14412,6 +11387,8 @@ }, "node_modules/regexp.prototype.flags": { "version": "1.5.4", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", + "integrity": "sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==", "dev": true, "license": "MIT", "dependencies": { @@ -14431,6 +11408,8 @@ }, "node_modules/require-from-string": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true, "license": "MIT", "engines": { @@ -14439,6 +11418,8 @@ }, "node_modules/resolve": { "version": "2.0.0-next.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.7.tgz", + "integrity": "sha512-tqt+NBWwyaMgw3zDsnygx4CByWjQEJHOPMdslYhppaQSJUtL/D4JO9CcBBlhPoI8lz9oJIDXkwXfhF4aWqP8xQ==", "dev": true, "license": "MIT", "dependencies": { @@ -14461,6 +11442,8 @@ }, "node_modules/resolve-from": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true, "license": "MIT", "engines": { @@ -14469,6 +11452,8 @@ }, "node_modules/restore-cursor": { "version": "5.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-5.1.0.tgz", + "integrity": "sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==", "dev": true, "license": "MIT", "dependencies": { @@ -14484,11 +11469,15 @@ }, "node_modules/rfdc": { "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", "dev": true, "license": "MIT" }, "node_modules/rimraf": { "version": "6.1.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-6.1.3.tgz", + "integrity": "sha512-LKg+Cr2ZF61fkcaK1UdkH2yEBBKnYjTyWzTJT6KNPcSPaiT7HSdhtMXQuN5wkTX0Xu72KQ1l8S42rlmexS2hSA==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -14507,6 +11496,8 @@ }, "node_modules/rolldown": { "version": "1.0.0-rc.4", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.0-rc.4.tgz", + "integrity": "sha512-V2tPDUrY3WSevrvU2E41ijZlpF+5PbZu4giH+VpNraaadsJGHa4fR6IFwsocVwEXDoAdIv5qgPPxgrvKAOIPtA==", "dev": true, "license": "MIT", "dependencies": { @@ -14536,7 +11527,9 @@ } }, "node_modules/rollup": { - "version": "4.62.0", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.62.5.tgz", + "integrity": "sha512-/tqMfgP7GPA3PHhCmuiS4vIjrSVhHLgY++i+dhbG462euyAj7FpM4D9uq1X3BgjlqRdpcOrYhcQtfiQLNc8tqw==", "dev": true, "license": "MIT", "dependencies": { @@ -14550,36 +11543,39 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.62.0", - "@rollup/rollup-android-arm64": "4.62.0", - "@rollup/rollup-darwin-arm64": "4.62.0", - "@rollup/rollup-darwin-x64": "4.62.0", - "@rollup/rollup-freebsd-arm64": "4.62.0", - "@rollup/rollup-freebsd-x64": "4.62.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.62.0", - "@rollup/rollup-linux-arm-musleabihf": "4.62.0", - "@rollup/rollup-linux-arm64-gnu": "4.62.0", - "@rollup/rollup-linux-arm64-musl": "4.62.0", - "@rollup/rollup-linux-loong64-gnu": "4.62.0", - "@rollup/rollup-linux-loong64-musl": "4.62.0", - "@rollup/rollup-linux-ppc64-gnu": "4.62.0", - "@rollup/rollup-linux-ppc64-musl": "4.62.0", - "@rollup/rollup-linux-riscv64-gnu": "4.62.0", - "@rollup/rollup-linux-riscv64-musl": "4.62.0", - "@rollup/rollup-linux-s390x-gnu": "4.62.0", - "@rollup/rollup-linux-x64-gnu": "4.62.0", - "@rollup/rollup-linux-x64-musl": "4.62.0", - "@rollup/rollup-openbsd-x64": "4.62.0", - "@rollup/rollup-openharmony-arm64": "4.62.0", - "@rollup/rollup-win32-arm64-msvc": "4.62.0", - "@rollup/rollup-win32-ia32-msvc": "4.62.0", - "@rollup/rollup-win32-x64-gnu": "4.62.0", - "@rollup/rollup-win32-x64-msvc": "4.62.0", + "@napi-rs/lzma-linux-x64-gnu": "1.5.1", + "@rollup/rollup-android-arm-eabi": "4.62.5", + "@rollup/rollup-android-arm64": "4.62.5", + "@rollup/rollup-darwin-arm64": "4.62.5", + "@rollup/rollup-darwin-x64": "4.62.5", + "@rollup/rollup-freebsd-arm64": "4.62.5", + "@rollup/rollup-freebsd-x64": "4.62.5", + "@rollup/rollup-linux-arm-gnueabihf": "4.62.5", + "@rollup/rollup-linux-arm-musleabihf": "4.62.5", + "@rollup/rollup-linux-arm64-gnu": "4.62.5", + "@rollup/rollup-linux-arm64-musl": "4.62.5", + "@rollup/rollup-linux-loong64-gnu": "4.62.5", + "@rollup/rollup-linux-loong64-musl": "4.62.5", + "@rollup/rollup-linux-ppc64-gnu": "4.62.5", + "@rollup/rollup-linux-ppc64-musl": "4.62.5", + "@rollup/rollup-linux-riscv64-gnu": "4.62.5", + "@rollup/rollup-linux-riscv64-musl": "4.62.5", + "@rollup/rollup-linux-s390x-gnu": "4.62.5", + "@rollup/rollup-linux-x64-gnu": "4.62.5", + "@rollup/rollup-linux-x64-musl": "4.62.5", + "@rollup/rollup-openbsd-x64": "4.62.5", + "@rollup/rollup-openharmony-arm64": "4.62.5", + "@rollup/rollup-win32-arm64-msvc": "4.62.5", + "@rollup/rollup-win32-ia32-msvc": "4.62.5", + "@rollup/rollup-win32-x64-gnu": "4.62.5", + "@rollup/rollup-win32-x64-msvc": "4.62.5", "fsevents": "~2.3.2" } }, "node_modules/rollup/node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.62.0", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.62.5.tgz", + "integrity": "sha512-bW7B8xMEq8n99Q3ieEcPRGuphurdZAaFzQc9Efyyw3FL6DZO6pMy9xhdN+kBoD7Sy05xNXSr4OyPPnpkYriS/A==", "cpu": [ "arm64" ], @@ -14591,9 +11587,9 @@ ] }, "node_modules/rollup/node_modules/@rollup/rollup-darwin-x64": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.62.0.tgz", - "integrity": "sha512-SIMzST3VFNXDAbeIWDWiFCNM5qncUBDWaEV7NfE7oZbDt2mgfW4MvbKdbYiGOLoM32gbTv608UMd0XktEYSD7w==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.62.5.tgz", + "integrity": "sha512-YSwBS86QeHOGlrxJ1PSOIZSkzRL/JmKeunhc+lV6M1a6En8QuVCD/T/qIA0J4Gd2Y86RIOBYrLcOUtqGh9+/1w==", "cpu": [ "x64" ], @@ -14605,9 +11601,9 @@ ] }, "node_modules/rollup/node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.62.0.tgz", - "integrity": "sha512-bVURMg+6eNN9C/yc0aVjooZcwTTtYF4YW3xta5pP0//r3o1V8gXEHXWCndj47w/HhwsFroZrFhR+6uQP5T0n0g==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.62.5.tgz", + "integrity": "sha512-rRqILAndyzHzP7T9NFQrq+4HFWNhqkqkKur7eiBpfLmz01PO0JKx5Vchu3YllE4YXI/Ftgq/szrDWg5GJ0mI8g==", "cpu": [ "arm64" ], @@ -14619,9 +11615,9 @@ ] }, "node_modules/rollup/node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.62.0.tgz", - "integrity": "sha512-Ful8pM/2yYI83PViWdFdpZhdI8HJ5qsXANe5atypbHDf+KIBBDsZsbyy8hbXnULVvW9NsTh5DHwbcBftyLTfiw==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.62.5.tgz", + "integrity": "sha512-Gf4X3qVMucayUvux6aXXPgXovocSFUC0rrffDuPI/S2nHhNMhjcZxsrAFYCOF350PRreW1XwzFj3CT/3bKsWCw==", "cpu": [ "arm64" ], @@ -14633,9 +11629,9 @@ ] }, "node_modules/rollup/node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.62.0.tgz", - "integrity": "sha512-7SDIalKeIpG0Ifogbbdn58HmSotYMlf23K3dCJEmiVd9Fg36Vmni82iPQec27N3wY4Bvbxftkxz6vSx9OcouTg==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.62.5.tgz", + "integrity": "sha512-6RHPJR1g/uvdYU8uXBnfq3nlqyZCP82Fr6NHgfGoaIeSh0YEqnX/x6uA9MmJJbnSH7swqX4F+CkGdUF+6doiQA==", "cpu": [ "x64" ], @@ -14647,9 +11643,9 @@ ] }, "node_modules/rollup/node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.62.0.tgz", - "integrity": "sha512-eRZevouTH2i1HeAVLqJuLnt256krQkGY0TN6WsTmsIhuzbh457HuWDMakKwmi0Cjadux983CoSr8Lim2QhUIFw==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.62.5.tgz", + "integrity": "sha512-xs+OXQtEXgpXT0DmA5+U3qnRZHdCST/5HRQxS8wSPZTUZN/EMWeHuSIod32LQklTBZBV9DyfncKBQ8n5V3eFdw==", "cpu": [ "x64" ], @@ -14661,9 +11657,9 @@ ] }, "node_modules/rollup/node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.62.0.tgz", - "integrity": "sha512-5LOhoaesY3doG1c+ac/2JtgREpKoJr5bUHH8tKY0V8di7+uSV6BwLs2PlR0/yzefGOkR+wE7ZolZphHCsyG5Rw==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.62.5.tgz", + "integrity": "sha512-+OQ8U2DdoEfXl8T4Fb18AjmEwbXMerKDKCL8yCPAYhKCEEKoul7rkbeGCBFCbAlaGaa7pmtRTpkAJM2LE/i5FA==", "cpu": [ "arm64" ], @@ -14675,9 +11671,9 @@ ] }, "node_modules/rollup/node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.62.0", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.0.tgz", - "integrity": "sha512-5L+T1fMX4RIEBoZzT0+sQ0PhTS36NULFmMXtl1TZo44TMAROIMHbZufSOjVWt/Y622BtxgxtaNOokbTDvfsrZA==", + "version": "4.62.5", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.62.5.tgz", + "integrity": "sha512-/gDJaRs4gl0NPIwqCz+6PkpmhhjRAD2j6P4rSNHBzUkO3naEx2mIU0pRle1vUNRQ7mE/+8OOeXLTv/J56FKiQg==", "cpu": [ "x64" ], @@ -14690,6 +11686,8 @@ }, "node_modules/router": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/router/-/router-2.2.0.tgz", + "integrity": "sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ==", "dev": true, "license": "MIT", "dependencies": { @@ -14705,18 +11703,25 @@ }, "node_modules/rrweb-cssom": { "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==", "dev": true, "license": "MIT" }, "node_modules/rxjs": { "version": "7.8.2", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", + "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", "license": "Apache-2.0", + "peer": true, "dependencies": { "tslib": "^2.1.0" } }, "node_modules/safe-array-concat": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.4.tgz", + "integrity": "sha512-wtZlHyOje6OZTGqAoaDKxFkgRtkF9CnHAVnCHKfuj200wAgL+bSJhdsCD2l0Qx/2ekEXjPWcyKkfGb5CPboslg==", "dev": true, "license": "MIT", "dependencies": { @@ -14735,6 +11740,8 @@ }, "node_modules/safe-buffer": { "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "dev": true, "funding": [ { @@ -14754,6 +11761,8 @@ }, "node_modules/safe-push-apply": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-push-apply/-/safe-push-apply-1.0.0.tgz", + "integrity": "sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==", "dev": true, "license": "MIT", "dependencies": { @@ -14769,6 +11778,8 @@ }, "node_modules/safe-regex-test": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.1.0.tgz", + "integrity": "sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==", "dev": true, "license": "MIT", "dependencies": { @@ -14785,11 +11796,15 @@ }, "node_modules/safer-buffer": { "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true, "license": "MIT" }, "node_modules/sass": { "version": "1.97.3", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.97.3.tgz", + "integrity": "sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg==", "dev": true, "license": "MIT", "dependencies": { @@ -14809,6 +11824,8 @@ }, "node_modules/sass/node_modules/chokidar": { "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, "license": "MIT", "dependencies": { @@ -14823,6 +11840,8 @@ }, "node_modules/sass/node_modules/readdirp": { "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", "dev": true, "license": "MIT", "engines": { @@ -14835,11 +11854,15 @@ }, "node_modules/sax": { "version": "1.1.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", + "integrity": "sha512-5f3k2PbGGp+YtKJjOItpg3P99IMD84E4HOvcfleTb5joCHNXYLsR9yWFPOYGgaeMPDubQILTCMdsFb2OMeOjtg==", "dev": true, "license": "ISC" }, "node_modules/saxes": { "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", "dev": true, "license": "ISC", "dependencies": { @@ -14851,6 +11874,8 @@ }, "node_modules/semver": { "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "dev": true, "license": "ISC", "bin": { @@ -14862,6 +11887,8 @@ }, "node_modules/send": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/send/-/send-1.2.1.tgz", + "integrity": "sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ==", "dev": true, "license": "MIT", "dependencies": { @@ -14887,6 +11914,8 @@ }, "node_modules/serve-static": { "version": "2.2.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-2.2.1.tgz", + "integrity": "sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw==", "dev": true, "license": "MIT", "dependencies": { @@ -14905,6 +11934,8 @@ }, "node_modules/set-function-length": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", "dev": true, "license": "MIT", "dependencies": { @@ -14921,6 +11952,8 @@ }, "node_modules/set-function-name": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", "dev": true, "license": "MIT", "dependencies": { @@ -14935,6 +11968,8 @@ }, "node_modules/set-proto": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/set-proto/-/set-proto-1.0.0.tgz", + "integrity": "sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==", "dev": true, "license": "MIT", "dependencies": { @@ -14948,11 +11983,15 @@ }, "node_modules/setprototypeof": { "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==", "dev": true, "license": "ISC" }, "node_modules/shebang-command": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dev": true, "license": "MIT", "dependencies": { @@ -14964,6 +12003,8 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true, "license": "MIT", "engines": { @@ -14972,6 +12013,8 @@ }, "node_modules/side-channel": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz", + "integrity": "sha512-6x6dK6zJdpTzF4sQeNYxwtvBzf6Eg4GtlesS94HOvTudUeyK2WXAaIfmDgsyslYrRBeFIlsi54AYsFGUuhmvrQ==", "dev": true, "license": "MIT", "dependencies": { @@ -14990,6 +12033,8 @@ }, "node_modules/side-channel-list": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.1.tgz", + "integrity": "sha512-mjn/0bi/oUURjc5Xl7IaWi/OJJJumuoJFQJfDDyO46+hBWsfaVM65TBHq2eoZBhzl9EchxOijpkbRC8SVBQU0w==", "dev": true, "license": "MIT", "dependencies": { @@ -15005,6 +12050,8 @@ }, "node_modules/side-channel-map": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", "dev": true, "license": "MIT", "dependencies": { @@ -15022,6 +12069,8 @@ }, "node_modules/side-channel-weakmap": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", "dev": true, "license": "MIT", "dependencies": { @@ -15040,11 +12089,15 @@ }, "node_modules/siginfo": { "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", "dev": true, "license": "ISC" }, "node_modules/signal-exit": { "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, "license": "ISC", "engines": { @@ -15056,6 +12109,8 @@ }, "node_modules/sigstore": { "version": "4.1.1", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-4.1.1.tgz", + "integrity": "sha512-endqECJkfhozrXMK5ngu/UAA0xVcVEFdnHJCElGaExypjW+HK5i6zu3NteLoaX/iFbRUbC3+DjttQs0GARr+5w==", "dev": true, "license": "Apache-2.0", "dependencies": { @@ -15070,18 +12125,49 @@ "node": "^20.17.0 || >=22.9.0" } }, + "node_modules/simple-plist": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/simple-plist/-/simple-plist-1.3.1.tgz", + "integrity": "sha512-iMSw5i0XseMnrhtIzRb7XpQEXepa9xhWxGUojHBL43SIpQuDQkh3Wpy67ZbDzZVr6EKxvwVChnVpdl8hEVLDiw==", + "dev": true, + "license": "MIT", + "dependencies": { + "bplist-creator": "0.1.0", + "bplist-parser": "0.3.1", + "plist": "^3.0.5" + } + }, + "node_modules/simple-plist/node_modules/bplist-parser": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.1.tgz", + "integrity": "sha512-PyJxiNtA5T2PlLIeBot4lbp7rj4OadzjnMZD/G5zuBNt8ei/yCU7+wW0h2bag9vr8c+/WuRWmSxbqAl9hL1rBA==", + "dev": true, + "license": "MIT", + "dependencies": { + "big-integer": "1.6.x" + }, + "engines": { + "node": ">= 5.10.0" + } + }, "node_modules/sisteransi": { "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", "dev": true, "license": "MIT" }, "node_modules/slashes": { "version": "3.0.12", + "resolved": "https://registry.npmjs.org/slashes/-/slashes-3.0.12.tgz", + "integrity": "sha512-Q9VME8WyGkc7pJf6QEkj3wE+2CnvZMI+XJhwdTPR8Z/kWQRXi7boAWLDibRPyHRTUTPx5FaU7MsyrjI3yLB4HA==", "dev": true, "license": "ISC" }, "node_modules/slice-ansi": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15098,6 +12184,8 @@ }, "node_modules/smart-buffer": { "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true, "license": "MIT", "engines": { @@ -15107,6 +12195,8 @@ }, "node_modules/socks": { "version": "2.8.9", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.9.tgz", + "integrity": "sha512-LJhUYUvItdQ0LkJTmPeaEObWXAqFyfmP85x0tch/ez9cahmhlBBLbIqDFnvBnUJGagb0JbIQrkBs1wJ+yRYpEw==", "dev": true, "license": "MIT", "dependencies": { @@ -15120,6 +12210,8 @@ }, "node_modules/socks-proxy-agent": { "version": "8.0.5", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.5.tgz", + "integrity": "sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==", "dev": true, "license": "MIT", "dependencies": { @@ -15133,6 +12225,8 @@ }, "node_modules/source-map": { "version": "0.7.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz", + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", "dev": true, "license": "BSD-3-Clause", "engines": { @@ -15141,6 +12235,8 @@ }, "node_modules/source-map-js": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", "dev": true, "license": "BSD-3-Clause", "engines": { @@ -15149,6 +12245,8 @@ }, "node_modules/source-map-support": { "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "dev": true, "license": "MIT", "dependencies": { @@ -15158,6 +12256,8 @@ }, "node_modules/source-map-support/node_modules/source-map": { "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, "license": "BSD-3-Clause", "engines": { @@ -15166,11 +12266,15 @@ }, "node_modules/spdx-exceptions": { "version": "2.5.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz", + "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==", "dev": true, "license": "CC-BY-3.0" }, "node_modules/spdx-expression-parse": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-4.0.0.tgz", + "integrity": "sha512-Clya5JIij/7C6bRR22+tnGXbc4VKlibKSVj2iHvVeX5iMW7s1SIQlqu699JkODJJIhh/pUu8L0/VLh8xflD+LQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15180,11 +12284,15 @@ }, "node_modules/spdx-license-ids": { "version": "3.0.23", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.23.tgz", + "integrity": "sha512-CWLcCCH7VLu13TgOH+r8p1O/Znwhqv/dbb6lqWy67G+pT1kHmeD/+V36AVb/vq8QMIQwVShJ6Ssl5FPh0fuSdw==", "dev": true, "license": "CC0-1.0" }, "node_modules/split2": { "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", "dev": true, "license": "ISC", "engines": { @@ -15193,6 +12301,8 @@ }, "node_modules/ssri": { "version": "13.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-13.0.1.tgz", + "integrity": "sha512-QUiRf1+u9wPTL/76GTYlKttDEBWV1ga9ZXW8BG6kfdeyyM8LGPix9gROyg9V2+P0xNyF3X2Go526xKFdMZrHSQ==", "dev": true, "license": "ISC", "dependencies": { @@ -15204,11 +12314,15 @@ }, "node_modules/stackback": { "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", "dev": true, "license": "MIT" }, "node_modules/statuses": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", + "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", "dev": true, "license": "MIT", "engines": { @@ -15216,12 +12330,16 @@ } }, "node_modules/std-env": { - "version": "4.1.0", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-4.2.0.tgz", + "integrity": "sha512-oCUKSupKTHX53EyjDtuZQ64pjLJ6yYCtpmEw0goYxtjG9KpbRe8KAsl2tBUGU9DyMcJ0RwJ8GqJAFzMXcXW1Rw==", "dev": true, "license": "MIT" }, "node_modules/stdin-discarder": { "version": "0.3.2", + "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.3.2.tgz", + "integrity": "sha512-eCPu1qRxPVkl5605OTWF8Wz40b4Mf45NY5LQmVPQ599knfs5QhASUm9GbJ5BDMDOXgrnh0wyEdvzmL//YMlw0A==", "dev": true, "license": "MIT", "engines": { @@ -15233,6 +12351,8 @@ }, "node_modules/stop-iteration-iterator": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.1.0.tgz", + "integrity": "sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15243,8 +12363,20 @@ "node": ">= 0.4" } }, + "node_modules/stream-buffers": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-2.2.0.tgz", + "integrity": "sha512-uyQK/mx5QjHun80FLJTfaWE7JtwfRMKBLkMne6udYOmvH0CawotVa7TfgYHzAnpphn4+TweIx1QKMnRIbipmUg==", + "dev": true, + "license": "Unlicense", + "engines": { + "node": ">= 0.10.0" + } + }, "node_modules/string_decoder": { "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dev": true, "license": "MIT", "dependencies": { @@ -15253,6 +12385,8 @@ }, "node_modules/string-width": { "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "license": "MIT", "dependencies": { @@ -15266,6 +12400,8 @@ }, "node_modules/string.prototype.trim": { "version": "1.2.11", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.11.tgz", + "integrity": "sha512-PwvK7BU+CMTJGYQCTZb5RWXIML92lftJLhQz1tBzgKiqGxJaMlBAa48POXaNAC2s4y8jr3EFqrkF9+44neS46w==", "dev": true, "license": "MIT", "dependencies": { @@ -15287,6 +12423,8 @@ }, "node_modules/string.prototype.trimend": { "version": "1.0.10", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.10.tgz", + "integrity": "sha512-2+3aDAOmPTmuFwjDnmJG2ctEkQKVki7vOSqaxkv42Mowj1V6PnvuwFCRrR5lChUux1TBskPjfkeTOhqczDMxTw==", "dev": true, "license": "MIT", "dependencies": { @@ -15304,6 +12442,8 @@ }, "node_modules/string.prototype.trimstart": { "version": "1.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", "dev": true, "license": "MIT", "dependencies": { @@ -15320,6 +12460,8 @@ }, "node_modules/strip-ansi": { "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "license": "MIT", "dependencies": { @@ -15331,6 +12473,8 @@ }, "node_modules/strip-bom": { "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "dev": true, "license": "MIT", "engines": { @@ -15339,6 +12483,8 @@ }, "node_modules/strip-json-comments": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true, "license": "MIT", "engines": { @@ -15350,6 +12496,8 @@ }, "node_modules/supports-color": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "license": "MIT", "dependencies": { @@ -15361,6 +12509,8 @@ }, "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "dev": true, "license": "MIT", "engines": { @@ -15372,11 +12522,15 @@ }, "node_modules/symbol-tree": { "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true, "license": "MIT" }, "node_modules/synckit": { "version": "0.9.3", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.3.tgz", + "integrity": "sha512-JJoOEKTfL1urb1mDoEblhD9NhEbWmq9jHEMEnxoC4ujUaZ4itA8vKgwkFAyNClgxplLi9tsUKX+EduK0p/l7sg==", "dev": true, "license": "MIT", "dependencies": { @@ -15391,7 +12545,9 @@ } }, "node_modules/tar": { - "version": "7.5.16", + "version": "7.5.22", + "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.22.tgz", + "integrity": "sha512-MFO/QzvtAOmJbkhOaCTvbGcFN9L9b+JunIsDwaKljSOdcLMea3NJ1k9Usz/rjdfSXTq4dfzfeS7W4p4YOAAHeA==", "dev": true, "license": "BlueOak-1.0.0", "dependencies": { @@ -15407,6 +12563,8 @@ }, "node_modules/tar/node_modules/yallist": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-5.0.0.tgz", + "integrity": "sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==", "dev": true, "license": "BlueOak-1.0.0", "engines": { @@ -15415,6 +12573,8 @@ }, "node_modules/through2": { "version": "4.0.2", + "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", + "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", "dev": true, "license": "MIT", "dependencies": { @@ -15423,11 +12583,15 @@ }, "node_modules/tinybench": { "version": "2.9.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz", + "integrity": "sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg==", "dev": true, "license": "MIT" }, "node_modules/tinyexec": { - "version": "1.2.4", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.3.0.tgz", + "integrity": "sha512-QKAl9m8gWWGHV8jZcPeym6j+XULi6tOf1mT83WYJ4Lk2ytW/uwAWkrP0uFsdoYMdueVJ0qs26wZ+23xeB4ibNQ==", "dev": true, "license": "MIT", "engines": { @@ -15436,6 +12600,8 @@ }, "node_modules/tinyglobby": { "version": "0.2.15", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz", + "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15450,7 +12616,9 @@ } }, "node_modules/tinyrainbow": { - "version": "3.1.0", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-3.1.1.tgz", + "integrity": "sha512-yau8yJdTt989Mm0Bd/236QnzEiPf2xLLTqUZRUJOo/3CB078LSwzei343DgtJVmfJKJE3TMINY1u42SQsP6mXw==", "dev": true, "license": "MIT", "engines": { @@ -15459,6 +12627,8 @@ }, "node_modules/tldts": { "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.86.tgz", + "integrity": "sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15470,11 +12640,15 @@ }, "node_modules/tldts-core": { "version": "6.1.86", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.86.tgz", + "integrity": "sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==", "dev": true, "license": "MIT" }, "node_modules/toidentifier": { "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true, "license": "MIT", "engines": { @@ -15483,6 +12657,8 @@ }, "node_modules/tough-cookie": { "version": "5.1.2", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.1.2.tgz", + "integrity": "sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==", "dev": true, "license": "BSD-3-Clause", "dependencies": { @@ -15494,6 +12670,8 @@ }, "node_modules/tr46": { "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", "dev": true, "license": "MIT", "dependencies": { @@ -15505,6 +12683,8 @@ }, "node_modules/tree-kill": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", "dev": true, "license": "MIT", "bin": { @@ -15512,7 +12692,9 @@ } }, "node_modules/ts-api-utils": { - "version": "2.5.0", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.1.0.tgz", + "integrity": "sha512-CUgTZL1irw8u29bzrOD/nH85jqyc74D6SshFgujOIA7osm2Rz7dYH77agkx7H4FBNxDq7Cjf+IjaX/8zwFW+ZQ==", "dev": true, "license": "MIT", "engines": { @@ -15524,6 +12706,8 @@ }, "node_modules/tsconfig-paths": { "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", "dev": true, "license": "MIT", "dependencies": { @@ -15535,6 +12719,8 @@ }, "node_modules/tsconfig-paths/node_modules/json5": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", "dev": true, "license": "MIT", "dependencies": { @@ -15546,10 +12732,15 @@ }, "node_modules/tslib": { "version": "2.8.1", - "license": "0BSD" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD", + "peer": true }, "node_modules/tuf-js": { "version": "4.1.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-4.1.0.tgz", + "integrity": "sha512-50QV99kCKH5P/Vs4E2Gzp7BopNV+KzTXqWeaxrfu5IQJBOULRsTIS9seSsOVT8ZnGXzCyx55nYWAi4qJzpZKEQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15563,6 +12754,8 @@ }, "node_modules/type-check": { "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "license": "MIT", "dependencies": { @@ -15574,6 +12767,8 @@ }, "node_modules/type-is": { "version": "2.1.0", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-2.1.0.tgz", + "integrity": "sha512-faYHw0anBbc/kWF3zFTEnxSFOAGUX9GFbOBthvDdLsIlEoWOFOtS0zgCiQYwIskL9iGXZL3kAXD8OoZ4GmMATA==", "dev": true, "license": "MIT", "dependencies": { @@ -15590,7 +12785,9 @@ } }, "node_modules/type-is/node_modules/content-type": { - "version": "2.0.0", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz", + "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==", "dev": true, "license": "MIT", "engines": { @@ -15603,6 +12800,8 @@ }, "node_modules/typed-array-buffer": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.3.tgz", + "integrity": "sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==", "dev": true, "license": "MIT", "dependencies": { @@ -15616,6 +12815,8 @@ }, "node_modules/typed-array-byte-length": { "version": "1.0.3", + "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.3.tgz", + "integrity": "sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==", "dev": true, "license": "MIT", "dependencies": { @@ -15634,6 +12835,8 @@ }, "node_modules/typed-array-byte-offset": { "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.4.tgz", + "integrity": "sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==", "dev": true, "license": "MIT", "dependencies": { @@ -15654,6 +12857,8 @@ }, "node_modules/typed-array-length": { "version": "1.0.8", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.8.tgz", + "integrity": "sha512-phPGCwqr2+Qo0fwniCE8e4pKnGu/yFb5nD5Y8bf0EEeiI5GklnACYA9GFy/DrAeRrKHXvHn+1SUsOWgJp6RO+g==", "dev": true, "license": "MIT", "dependencies": { @@ -15673,8 +12878,11 @@ }, "node_modules/typescript": { "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, "license": "Apache-2.0", + "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -15684,14 +12892,17 @@ } }, "node_modules/typescript-eslint": { - "version": "8.61.1", + "version": "8.67.0", + "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.67.0.tgz", + "integrity": "sha512-S2udFs8tCKEKffuJ4TB1idGUZiXdCPGi3IPBGWXarbLQ5UPXORV8QEVzJ4gCRduURMb5EkpNCdjbk0eDIuI8Yg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@typescript-eslint/eslint-plugin": "8.61.1", - "@typescript-eslint/parser": "8.61.1", - "@typescript-eslint/typescript-estree": "8.61.1", - "@typescript-eslint/utils": "8.61.1" + "@typescript-eslint/eslint-plugin": "8.67.0", + "@typescript-eslint/parser": "8.67.0", + "@typescript-eslint/typescript-estree": "8.67.0", + "@typescript-eslint/utils": "8.67.0" }, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -15707,6 +12918,8 @@ }, "node_modules/unbox-primitive": { "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.1.0.tgz", + "integrity": "sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==", "dev": true, "license": "MIT", "dependencies": { @@ -15723,7 +12936,9 @@ } }, "node_modules/undici": { - "version": "7.24.4", + "version": "7.29.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-7.29.0.tgz", + "integrity": "sha512-IDxfleLmmbSskfWSUATiN1nfn2rDuvnMOqb5CWR92iIfojA0Ud+ulOAAEQ57LPr9rWmsreUyf5lwyao+7GNNVw==", "dev": true, "license": "MIT", "engines": { @@ -15731,12 +12946,16 @@ } }, "node_modules/undici-types": { - "version": "7.24.6", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-8.3.0.tgz", + "integrity": "sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ==", "dev": true, "license": "MIT" }, "node_modules/universalify": { "version": "2.0.1", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", "dev": true, "license": "MIT", "engines": { @@ -15745,6 +12964,8 @@ }, "node_modules/unpipe": { "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", "dev": true, "license": "MIT", "engines": { @@ -15753,6 +12974,8 @@ }, "node_modules/untildify": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", "dev": true, "license": "MIT", "engines": { @@ -15760,7 +12983,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.2.3", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.3.1.tgz", + "integrity": "sha512-ZZ61DsRsOnakl74HAmp3oSN4aXUmEWXf+i/yv0h7tIBfICc3VdrFErQKUUKPgu3AMsTUMbcongALEN4l6GSUrQ==", "dev": true, "funding": [ { @@ -15790,6 +13015,8 @@ }, "node_modules/uri-js": { "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "dev": true, "license": "BSD-2-Clause", "dependencies": { @@ -15798,11 +13025,26 @@ }, "node_modules/util-deprecate": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", "dev": true, "license": "MIT" }, + "node_modules/uuid": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.3.tgz", + "integrity": "sha512-DPSke0pXhTZgoF/d+WSt2QaKMCFSfx7QegxEWT+JOuHF5aWrKEn0G+ztjuJg/gG8/ItK+rbPCD/yNv8yyih6Cg==", + "deprecated": "uuid@10 and below is no longer supported. For ESM codebases, update to uuid@latest. For CommonJS codebases, use uuid@11 (but be aware this version will likely be deprecated in 2028).", + "dev": true, + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/validate-npm-package-name": { "version": "7.0.2", + "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-7.0.2.tgz", + "integrity": "sha512-hVDIBwsRruT73PbK7uP5ebUt+ezEtCmzZz3F59BSr2F6OVFnJ/6h8liuvdLrQ88Xmnk6/+xGGuq+pG9WwTuy3A==", "dev": true, "license": "ISC", "engines": { @@ -15811,6 +13053,8 @@ }, "node_modules/vary": { "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "dev": true, "license": "MIT", "engines": { @@ -15818,11 +13062,14 @@ } }, "node_modules/vite": { - "version": "7.3.2", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.6.tgz", + "integrity": "sha512-4XP60spRGjSZFf1qYH+dJIkK2znL3zQfl9KkOV9MkkRR/3Dls0dxaBsQPTloEc5BLXWPL9vsOxopxyKoMmDueg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "esbuild": "^0.27.0", + "esbuild": "^0.27.0 || ^0.28.0", "fdir": "^6.5.0", "picomatch": "^4.0.3", "postcss": "^8.5.6", @@ -15892,7 +13139,10 @@ }, "node_modules/vite/node_modules/fsevents": { "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, + "hasInstallScript": true, "license": "MIT", "optional": true, "os": [ @@ -15903,17 +13153,20 @@ } }, "node_modules/vitest": { - "version": "4.1.9", + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-4.1.11.tgz", + "integrity": "sha512-fhACrNXUidIbGSBr5FlbuBkO7VWC1ZyLl0DO4CU2DrQoAPxX84Ysxs+HeGQpii5lZWV1Q4gBZTTu49mF+A6Edw==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { - "@vitest/expect": "4.1.9", - "@vitest/mocker": "4.1.9", - "@vitest/pretty-format": "4.1.9", - "@vitest/runner": "4.1.9", - "@vitest/snapshot": "4.1.9", - "@vitest/spy": "4.1.9", - "@vitest/utils": "4.1.9", + "@vitest/expect": "4.1.11", + "@vitest/mocker": "4.1.11", + "@vitest/pretty-format": "4.1.11", + "@vitest/runner": "4.1.11", + "@vitest/snapshot": "4.1.11", + "@vitest/spy": "4.1.11", + "@vitest/utils": "4.1.11", "es-module-lexer": "^2.0.0", "expect-type": "^1.3.0", "magic-string": "^0.30.21", @@ -15941,12 +13194,12 @@ "@edge-runtime/vm": "*", "@opentelemetry/api": "^1.9.0", "@types/node": "^20.0.0 || ^22.0.0 || >=24.0.0", - "@vitest/browser-playwright": "4.1.9", - "@vitest/browser-preview": "4.1.9", - "@vitest/browser-webdriverio": "4.1.9", - "@vitest/coverage-istanbul": "4.1.9", - "@vitest/coverage-v8": "4.1.9", - "@vitest/ui": "4.1.9", + "@vitest/browser-playwright": "4.1.11", + "@vitest/browser-preview": "4.1.11", + "@vitest/browser-webdriverio": "4.1.11", + "@vitest/coverage-istanbul": "4.1.11", + "@vitest/coverage-v8": "4.1.11", + "@vitest/ui": "4.1.11", "happy-dom": "*", "jsdom": "*", "vite": "^6.0.0 || ^7.0.0 || ^8.0.0" @@ -15991,12 +13244,16 @@ } }, "node_modules/vitest/node_modules/es-module-lexer": { - "version": "2.1.0", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-2.3.2.tgz", + "integrity": "sha512-poHGpORABojJJucnV9KbOavETW8lBVnphkW77ER5/BQ5Fz7oXSoCNek7IH3vR5nRjdsEz926ibFYX8KtLQmdyw==", "dev": true, "license": "MIT" }, "node_modules/w3c-xmlserializer": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", + "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", "dev": true, "license": "MIT", "dependencies": { @@ -16008,6 +13265,8 @@ }, "node_modules/watchpack": { "version": "2.5.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.5.1.tgz", + "integrity": "sha512-Zn5uXdcFNIA1+1Ei5McRd+iRzfhENPCe7LeABkJtNulSxjma+l7ltNx55BWZkRlwRnpOgHqxnjyaDgJnNXnqzg==", "dev": true, "license": "MIT", "dependencies": { @@ -16020,12 +13279,16 @@ }, "node_modules/weak-lru-cache": { "version": "1.2.2", + "resolved": "https://registry.npmjs.org/weak-lru-cache/-/weak-lru-cache-1.2.2.tgz", + "integrity": "sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==", "dev": true, "license": "MIT", "optional": true }, "node_modules/webidl-conversions": { "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", "dev": true, "license": "BSD-2-Clause", "engines": { @@ -16034,6 +13297,9 @@ }, "node_modules/whatwg-encoding": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", + "deprecated": "Use @exodus/bytes instead for a more spec-conformant and faster implementation", "dev": true, "license": "MIT", "dependencies": { @@ -16045,6 +13311,8 @@ }, "node_modules/whatwg-encoding/node_modules/iconv-lite": { "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "dev": true, "license": "MIT", "dependencies": { @@ -16056,6 +13324,8 @@ }, "node_modules/whatwg-mimetype": { "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", "dev": true, "license": "MIT", "engines": { @@ -16064,6 +13334,8 @@ }, "node_modules/whatwg-url": { "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", "dev": true, "license": "MIT", "dependencies": { @@ -16076,6 +13348,8 @@ }, "node_modules/which": { "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dev": true, "license": "ISC", "dependencies": { @@ -16090,6 +13364,8 @@ }, "node_modules/which-boxed-primitive": { "version": "1.1.1", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.1.1.tgz", + "integrity": "sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==", "dev": true, "license": "MIT", "dependencies": { @@ -16108,6 +13384,8 @@ }, "node_modules/which-builtin-type": { "version": "1.2.1", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.2.1.tgz", + "integrity": "sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==", "dev": true, "license": "MIT", "dependencies": { @@ -16134,6 +13412,8 @@ }, "node_modules/which-collection": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", "dev": true, "license": "MIT", "dependencies": { @@ -16151,6 +13431,8 @@ }, "node_modules/which-typed-array": { "version": "1.1.22", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.22.tgz", + "integrity": "sha512-fvO4ExWMFsqyhG3AiPAObMuY1lxaqgYcxbc49CNdWDDECOJNgQyvsOWVwbZc+qf3rzRtxojBK+CMEv0Ld5CYpw==", "dev": true, "license": "MIT", "dependencies": { @@ -16171,6 +13453,8 @@ }, "node_modules/why-is-node-running": { "version": "2.3.0", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.3.0.tgz", + "integrity": "sha512-hUrmaWBdVDcxvYqnyh09zunKzROWjbZTiNy8dBEjkS7ehEDQibXJ7XvlmtbwuTclUiIyN+CyXQD4Vmko8fNm8w==", "dev": true, "license": "MIT", "dependencies": { @@ -16186,6 +13470,8 @@ }, "node_modules/word-wrap": { "version": "1.2.5", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", + "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", "dev": true, "license": "MIT", "engines": { @@ -16194,6 +13480,8 @@ }, "node_modules/wrap-ansi": { "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "license": "MIT", "dependencies": { @@ -16207,11 +13495,15 @@ }, "node_modules/wrappy": { "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", "dev": true, "license": "ISC" }, "node_modules/ws": { - "version": "8.21.0", + "version": "8.21.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.3.tgz", + "integrity": "sha512-201TZ/kPWxoPr/OKWjquZR1SWKXcvxdH+e1xrx89b3YbmzLMFCLfnaG1HFIgWzJOEWZ7MvpK++odZufgYR50Rw==", "dev": true, "license": "MIT", "engines": { @@ -16230,8 +13522,24 @@ } } }, + "node_modules/xcode": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/xcode/-/xcode-3.0.1.tgz", + "integrity": "sha512-kCz5k7J7XbJtjABOvkc5lJmkiDh8VhjVCGNiqdKCscmVpdVUpEAyXv1xmCLkQJ5dsHqx3IPO4XW+NTDhU/fatA==", + "dev": true, + "license": "Apache-2.0", + "dependencies": { + "simple-plist": "^1.1.0", + "uuid": "^7.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/xml-name-validator": { "version": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", "dev": true, "license": "Apache-2.0", "engines": { @@ -16240,6 +13548,8 @@ }, "node_modules/xml2js": { "version": "0.6.2", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.6.2.tgz", + "integrity": "sha512-T4rieHaC1EXcES0Kxxj4JWgaUQHDk+qwHcYOCFHfiwKz7tOVPLq7Hjq9dM1WCMhylqMEfP7hMcOIChvotiZegA==", "dev": true, "license": "MIT", "dependencies": { @@ -16252,6 +13562,8 @@ }, "node_modules/xml2js/node_modules/xmlbuilder": { "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", "dev": true, "license": "MIT", "engines": { @@ -16260,6 +13572,8 @@ }, "node_modules/xmlbuilder": { "version": "15.1.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", + "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", "dev": true, "license": "MIT", "engines": { @@ -16268,11 +13582,15 @@ }, "node_modules/xmlchars": { "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", "dev": true, "license": "MIT" }, "node_modules/y18n": { "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "dev": true, "license": "ISC", "engines": { @@ -16281,11 +13599,15 @@ }, "node_modules/yallist": { "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", "dev": true, "license": "ISC" }, "node_modules/yargs": { "version": "18.0.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-18.0.0.tgz", + "integrity": "sha512-4UEqdc2RYGHZc7Doyqkrqiln3p9X2DZVxaGbwhn2pi7MrRagKaOcIKe8L3OxYcbhXLgLFUS3zAYuQjKBQgmuNg==", "dev": true, "license": "MIT", "dependencies": { @@ -16302,6 +13624,8 @@ }, "node_modules/yargs-parser": { "version": "22.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-22.0.0.tgz", + "integrity": "sha512-rwu/ClNdSMpkSrUb+d6BRsSkLUq1fmfsY6TOpYzTwvwkg1/NRG85KBy3kq++A8LKQwX6lsu+aWad+2khvuXrqw==", "dev": true, "license": "ISC", "engines": { @@ -16309,7 +13633,9 @@ } }, "node_modules/yargs/node_modules/ansi-regex": { - "version": "6.2.2", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.3.0.tgz", + "integrity": "sha512-WpDfL7NO6j7tH88IDBNVdUJxDh9nmCteAVW9dsep846XdwF4naCBK+/tGLX3KJgcpgMRXCFlTM2hKGoK9FsdrQ==", "dev": true, "license": "MIT", "engines": { @@ -16321,11 +13647,15 @@ }, "node_modules/yargs/node_modules/emoji-regex": { "version": "10.6.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.6.0.tgz", + "integrity": "sha512-toUI84YS5YmxW219erniWD0CIVOo46xGKColeNQRgOzDorgBi1v4D71/OFzgD9GO2UGKIv1C3Sp8DAn0+j5w7A==", "dev": true, "license": "MIT" }, "node_modules/yargs/node_modules/string-width": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", + "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", "dev": true, "license": "MIT", "dependencies": { @@ -16342,6 +13672,8 @@ }, "node_modules/yargs/node_modules/strip-ansi": { "version": "7.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.2.0.tgz", + "integrity": "sha512-yDPMNjp4WyfYBkHnjIRLfca1i6KMyGCtsVgoKe/z1+6vukgaENdgGBZt+ZmKPc4gavvEZ5OgHfHdrazhgNyG7w==", "dev": true, "license": "MIT", "dependencies": { @@ -16356,6 +13688,8 @@ }, "node_modules/yauzl": { "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", "dev": true, "license": "MIT", "dependencies": { @@ -16365,6 +13699,8 @@ }, "node_modules/yocto-queue": { "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "dev": true, "license": "MIT", "engines": { @@ -16375,7 +13711,9 @@ } }, "node_modules/yoctocolors": { - "version": "2.1.2", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.2.0.tgz", + "integrity": "sha512-xYqdZFUK/VYazNl/oCDYN+3WloWQwMfZxBoiNt6qNyk+xfOdi598muWE42rNZFp1kNOiqW936q5RhUdnpqElSg==", "dev": true, "license": "MIT", "engines": { @@ -16387,6 +13725,8 @@ }, "node_modules/yoctocolors-cjs": { "version": "2.1.3", + "resolved": "https://registry.npmjs.org/yoctocolors-cjs/-/yoctocolors-cjs-2.1.3.tgz", + "integrity": "sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==", "dev": true, "license": "MIT", "engines": { @@ -16398,14 +13738,19 @@ }, "node_modules/zod": { "version": "4.3.6", + "resolved": "https://registry.npmjs.org/zod/-/zod-4.3.6.tgz", + "integrity": "sha512-rftlrkhHZOcjDwkGlnUtZZkvaPHCsDATp4pGpuOOMDaTdDDXF91wuVDJoWoPsKX/3YPQ5fHuF3STjcYyKr+Qhg==", "dev": true, "license": "MIT", + "peer": true, "funding": { "url": "https://github.com/sponsors/colinhacks" } }, "node_modules/zod-to-json-schema": { "version": "3.25.2", + "resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz", + "integrity": "sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==", "dev": true, "license": "ISC", "peerDependencies": { @@ -16414,7 +13759,10 @@ }, "node_modules/zone.js": { "version": "0.15.1", - "license": "MIT" + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.15.1.tgz", + "integrity": "sha512-XE96n56IQpJM7NAoXswY3XRLcWFW83xe0BiAOeMD7K5k5xecOeul3Qcpx6GqEeeHNkW5DWL5zOyTbEfB4eti8w==", + "license": "MIT", + "peer": true } } } diff --git a/demo/package.json b/demo/package.json index fe54205b..3df5cd8c 100644 --- a/demo/package.json +++ b/demo/package.json @@ -35,7 +35,6 @@ "@capacitor/keyboard": "^8.0.0", "@capacitor/status-bar": "^8.0.0", "@ionic/angular": "^9.0.0", - "@rdlabo/ionic-theme-ios26": "file:..", "rxjs": "~7.8.0", "tslib": "^2.3.0", "zone.js": "~0.15.0" From 8c70a8a1ab5f085c7ff68a2847f5736daa849939 Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 21 Aug 2026 17:54:13 +0900 Subject: [PATCH 12/12] fix: address Ionic compatibility review --- .github/workflows/e2e-pull_request.yml | 10 +++++----- .github/workflows/lint.yml | 4 ++-- demo/package-lock.json | 1 + demo/package.json | 1 + demo/util/mocks/angular/angular-delegate.ts | 6 ++++-- 5 files changed, 13 insertions(+), 9 deletions(-) diff --git a/.github/workflows/e2e-pull_request.yml b/.github/workflows/e2e-pull_request.yml index 917d887d..6bbfc270 100644 --- a/.github/workflows/e2e-pull_request.yml +++ b/.github/workflows/e2e-pull_request.yml @@ -69,7 +69,7 @@ jobs: path: demo/test-results/ retention-days: 3 - - name: Upload JSON report artifact + - name: Upload Ionic 9 JSON report artifact uses: actions/upload-artifact@v5 if: always() && matrix.ionic-major == 9 with: @@ -77,7 +77,7 @@ jobs: path: demo/e2e/screenshot.spec.ts-ionic9.json retention-days: 3 - - name: Upload HTML report artifact + - name: Upload Ionic 9 HTML report artifact uses: actions/upload-artifact@v5 if: always() && matrix.ionic-major == 9 with: @@ -101,12 +101,12 @@ jobs: name: json-report-${{ github.event.pull_request.number }} path: report - - name: Comment PR with test results + - name: Comment PR with Ionic 9 test results uses: daun/playwright-report-comment@v3 with: report-file: report/screenshot.spec.ts-ionic9.json job-summary: true - custom-info: 'Please check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for details. And if you want to update the screenshots, please comment with `/update-screenshots`.' + custom-info: 'This detailed result covers Ionic 9 only. Ionic 8 runs against the same screenshots in a separate matrix job; check the [workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) for both results. To update the screenshots, comment with `/update-screenshots`.' deploy-report: needs: test @@ -166,7 +166,7 @@ jobs: owner: context.repo.owner, repo: context.repo.repo, issue_number: prNumber, - body: `📊 **Playwright Test Report**\n\nView the detailed test report: ${reportUrl}` + body: `📊 **Ionic 9 Playwright Test Report**\n\nView the detailed Ionic 9 report: ${reportUrl}\n\nIonic 8 runs against the same screenshots in a separate matrix job. View both results in the [workflow run](${context.serverUrl}/${context.repo.owner}/${context.repo.repo}/actions/runs/${context.runId}).` }); cleanup-report: diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index c7414887..0990be2a 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -38,8 +38,8 @@ jobs: restore-keys: | ${{ runner.os }}-angular-${{ hashFiles('demo/package-lock.json') }}- ${{ runner.os }}-angular- - # The demo depends on this package via `file:..`, so the root package - # must be installed and built (dist/) before the demo can compile. + # The demo compiles the theme source directly, so install the root + # dependencies and verify the package build before checking the demo. - run: npm ci - run: npm run build - run: npm ci diff --git a/demo/package-lock.json b/demo/package-lock.json index e9999e76..ec03fefb 100644 --- a/demo/package-lock.json +++ b/demo/package-lock.json @@ -35,6 +35,7 @@ "@capacitor/cli": "^8.0.0", "@eslint/js": "^9.39.4", "@ionic/angular-toolkit": "^12.0.0", + "@ionic/core": "8.8.19", "@playwright/test": "1.58.2", "@rdlabo/eslint-plugin-rules": "^21.0.0", "angular-eslint": "21.4.0", diff --git a/demo/package.json b/demo/package.json index 3df5cd8c..f6516b84 100644 --- a/demo/package.json +++ b/demo/package.json @@ -47,6 +47,7 @@ "@capacitor/cli": "^8.0.0", "@eslint/js": "^9.39.4", "@ionic/angular-toolkit": "^12.0.0", + "@ionic/core": "8.8.19", "@playwright/test": "1.58.2", "@rdlabo/eslint-plugin-rules": "^21.0.0", "angular-eslint": "21.4.0", diff --git a/demo/util/mocks/angular/angular-delegate.ts b/demo/util/mocks/angular/angular-delegate.ts index 3cecef6b..d4f3c91d 100644 --- a/demo/util/mocks/angular/angular-delegate.ts +++ b/demo/util/mocks/angular/angular-delegate.ts @@ -1,5 +1,7 @@ import { ApplicationRef, NgZone, Injector, EnvironmentInjector, ComponentRef } from '@angular/core'; -import { FrameworkDelegate } from '@ionic/core/components'; +import type { AngularDelegate } from '@ionic/angular/common'; + +type AngularFrameworkDelegate = ReturnType; export class MockAngularDelegate { create(environmentInjector: EnvironmentInjector, injector: Injector, elementReferenceKey?: string): MockAngularFrameworkDelegate { @@ -7,7 +9,7 @@ export class MockAngularDelegate { } } -export class MockAngularFrameworkDelegate implements FrameworkDelegate { +export class MockAngularFrameworkDelegate implements Pick { async attachViewToDom(container: any, component: any, params?: any, cssClasses?: string[]): Promise { // no-op }