diff --git a/.docker-hub/print/Dockerfile b/.docker-hub/print/Dockerfile
index 9106836285..d9b5da4f21 100644
--- a/.docker-hub/print/Dockerfile
+++ b/.docker-hub/print/Dockerfile
@@ -1,5 +1,5 @@
# build stage
-FROM node:24.10.0 AS build-stage
+FROM node:24.11.0 AS build-stage
ARG SENTRY_AUTH_TOKEN
ARG SENTRY_ORG
ARG SENTRY_PRINT_PROJECT
@@ -22,7 +22,7 @@ COPY print .
RUN npm run build
# production stage
-FROM node:24.10.0 AS production-stage
+FROM node:24.11.0 AS production-stage
WORKDIR /app
COPY --from=build-stage /app/.output ./.output
diff --git a/.github/workflows/check-dependencies.yml b/.github/workflows/check-dependencies.yml
index df1443881b..c7e6be2074 100644
--- a/.github/workflows/check-dependencies.yml
+++ b/.github/workflows/check-dependencies.yml
@@ -22,11 +22,11 @@ jobs:
name: 'Api Platform check dependencies'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- uses: shivammathur/setup-php@v2
with:
- php-version: '8.4.13'
+ php-version: '8.4.14'
tools: composer:2.8.0
coverage: xdebug
diff --git a/.github/workflows/continuous-integration-optional.yml b/.github/workflows/continuous-integration-optional.yml
index a37cb0f070..1f66412882 100644
--- a/.github/workflows/continuous-integration-optional.yml
+++ b/.github/workflows/continuous-integration-optional.yml
@@ -17,11 +17,11 @@ jobs:
name: 'Validate Api Platform composer.lock'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- uses: shivammathur/setup-php@v2
with:
- php-version: '8.4.13'
+ php-version: '8.4.14'
tools: composer:2.8.0
coverage: xdebug
@@ -32,11 +32,11 @@ jobs:
name: 'Lint: API (psalm)'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- uses: shivammathur/setup-php@v2
with:
- php-version: '8.4.13'
+ php-version: '8.4.14'
tools: composer:2.8.0
coverage: xdebug
@@ -62,11 +62,11 @@ jobs:
name: 'Lint: API (phpstan)'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- uses: shivammathur/setup-php@v2
with:
- php-version: '8.4.13'
+ php-version: '8.4.14'
tools: composer:2.8.0
coverage: xdebug
@@ -110,11 +110,11 @@ jobs:
--health-retries 5
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- uses: shivammathur/setup-php@v2
with:
- php-version: '8.4.13'
+ php-version: '8.4.14'
tools: composer:2.8.0
coverage: xdebug
diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml
index c855e80f56..78dcb8dd1b 100644
--- a/.github/workflows/continuous-integration.yml
+++ b/.github/workflows/continuous-integration.yml
@@ -87,11 +87,11 @@ jobs:
- api-check-needed
if: needs.api-check-needed.outputs.should_skip != 'true'
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- uses: shivammathur/setup-php@v2
with:
- php-version: '8.4.13'
+ php-version: '8.4.14'
tools: composer:2.8.0
coverage: none
@@ -110,7 +110,7 @@ jobs:
- run: composer install --no-interaction --no-plugins --no-scripts --prefer-dist
working-directory: api
- - run: PHP_CS_FIXER_IGNORE_ENV=1 php vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php -v --dry-run --diff
+ - run: php vendor/bin/php-cs-fixer fix --config=.php-cs-fixer.php -v --dry-run --diff
working-directory: api
frontend-eslint:
@@ -120,11 +120,11 @@ jobs:
- frontend-check-needed
if: needs.frontend-check-needed.outputs.should_skip != 'true'
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- - uses: actions/setup-node@v5
+ - uses: actions/setup-node@v6
with:
- node-version: '24.10.0'
+ node-version: '24.11.0'
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
@@ -149,11 +149,11 @@ jobs:
name: 'Lint: ClientPrint (ESLint)'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- - uses: actions/setup-node@v5
+ - uses: actions/setup-node@v6
with:
- node-version: '24.10.0'
+ node-version: '24.11.0'
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
@@ -178,11 +178,11 @@ jobs:
name: 'Lint: Print (ESLint)'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- - uses: actions/setup-node@v5
+ - uses: actions/setup-node@v6
with:
- node-version: '24.10.0'
+ node-version: '24.11.0'
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
@@ -210,11 +210,11 @@ jobs:
- e2e-check-needed
if: needs.e2e-check-needed.outputs.should_skip != 'true'
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- - uses: actions/setup-node@v5
+ - uses: actions/setup-node@v6
with:
- node-version: '24.10.0'
+ node-version: '24.11.0'
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
@@ -260,11 +260,11 @@ jobs:
--health-retries 5
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- uses: shivammathur/setup-php@v2
with:
- php-version: '8.4.13'
+ php-version: '8.4.14'
extensions: intl-73.1
tools: composer:2.8.0
coverage: pcov
@@ -349,11 +349,11 @@ jobs:
- frontend-check-needed
if: needs.frontend-check-needed.outputs.should_skip != 'true'
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- - uses: actions/setup-node@v5
+ - uses: actions/setup-node@v6
with:
- node-version: '24.10.0'
+ node-version: '24.11.0'
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
@@ -392,11 +392,11 @@ jobs:
name: 'Tests: Print'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- - uses: actions/setup-node@v5
+ - uses: actions/setup-node@v6
with:
- node-version: '24.10.0'
+ node-version: '24.11.0'
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
@@ -431,11 +431,11 @@ jobs:
name: 'Tests: PDF'
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- - uses: actions/setup-node@v5
+ - uses: actions/setup-node@v6
with:
- node-version: '24.10.0'
+ node-version: '24.11.0'
- uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4
with:
@@ -530,7 +530,7 @@ jobs:
- workflow-success
runs-on: ubuntu-latest
steps:
- - uses: peter-evans/repository-dispatch@5fc4efd1a4797ddb68ffd0714a238564e4cc0e6f # v4
+ - uses: peter-evans/repository-dispatch@28959ce8df70de7be546dd1250a005dd32156697 # v4
with:
event-type: ci-passed
client-payload: '{"ref": "${{ github.ref }}", "sha": "${{ github.sha }}"}'
diff --git a/.github/workflows/deploy-ecamp3-logging.yml b/.github/workflows/deploy-ecamp3-logging.yml
index 2fce94e62a..b387b59e92 100644
--- a/.github/workflows/deploy-ecamp3-logging.yml
+++ b/.github/workflows/deploy-ecamp3-logging.yml
@@ -31,7 +31,7 @@ jobs:
}
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- name: Dump secrets to /tmp/secrets.yaml
run: |
diff --git a/.github/workflows/deploy-ingress.yml b/.github/workflows/deploy-ingress.yml
index 8be431109b..d71bc20e93 100644
--- a/.github/workflows/deploy-ingress.yml
+++ b/.github/workflows/deploy-ingress.yml
@@ -20,7 +20,7 @@ jobs:
runs-on: ubuntu-latest
environment: ${{ github.event.inputs.environment }}
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- name: Setup helm
run: |
diff --git a/.github/workflows/deploy-ops-dashboard.yml b/.github/workflows/deploy-ops-dashboard.yml
index f0a63dd22f..a90207d234 100644
--- a/.github/workflows/deploy-ops-dashboard.yml
+++ b/.github/workflows/deploy-ops-dashboard.yml
@@ -31,7 +31,7 @@ jobs:
}
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- name: Dump secrets to /tmp/secrets.yaml
run: |
diff --git a/.github/workflows/deployment-devel.yml b/.github/workflows/deployment-devel.yml
index 4515c9236c..aa607346a6 100644
--- a/.github/workflows/deployment-devel.yml
+++ b/.github/workflows/deployment-devel.yml
@@ -5,6 +5,15 @@ on:
branches:
- devel
workflow_dispatch:
+ inputs:
+ action:
+ description: "Choose action"
+ type: choice
+ required: true
+ default: diff
+ options:
+ - diff
+ - deploy
jobs:
continuous-integration:
@@ -25,8 +34,9 @@ jobs:
upgrade-or-install-deployment:
name: Upgrade or install deployment
needs: build-and-push
- uses: ./.github/workflows/reusable-dev-deployment.yml
+ uses: ./.github/workflows/reusable-ecamp3-deployment.yml
with:
name: dev
env: dev
- secrets: inherit
\ No newline at end of file
+ action: ${{ github.event.inputs.action || 'deploy' }}
+ secrets: inherit
diff --git a/.github/workflows/deployment-pr-cleanup.yml b/.github/workflows/deployment-pr-cleanup.yml
index b13148296a..ea5aeb83b8 100644
--- a/.github/workflows/deployment-pr-cleanup.yml
+++ b/.github/workflows/deployment-pr-cleanup.yml
@@ -13,7 +13,7 @@ jobs:
to-uninstall: ${{ steps.to-uninstall.outputs.list }}
never-uninstall: ${{ steps.to-uninstall.outputs.never_uninstall }}
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- name: Find all open PRs that have a "deploy!" label
id: deployment-candidates
diff --git a/.github/workflows/deployment-pr.yml b/.github/workflows/deployment-pr.yml
index 0fd6e7169c..347a0593fe 100644
--- a/.github/workflows/deployment-pr.yml
+++ b/.github/workflows/deployment-pr.yml
@@ -3,6 +3,16 @@ name: CD for feature branches
on:
pull_request_target:
types: [opened, reopened, labeled, synchronize]
+ workflow_dispatch:
+ inputs:
+ action:
+ description: "Choose action"
+ type: choice
+ required: true
+ default: diff
+ options:
+ - diff
+ - deploy
concurrency:
group: ${{ github.workflow}}-${{ github.event.pull_request.number }}
@@ -23,11 +33,12 @@ jobs:
upgrade-or-install-deployment:
name: Upgrade or install deployment
needs: build-and-push
- uses: ./.github/workflows/reusable-dev-deployment.yml
+ uses: ./.github/workflows/reusable-ecamp3-deployment.yml
with:
name: pr${{ github.event.pull_request.number }}
sha: ${{ github.event.pull_request.head.sha }}
env: feature-branch
pr-number: ${{ github.event.pull_request.number }}
dropDBOnUninstall: true
+ action: ${{ github.event.inputs.action || 'deploy' }}
secrets: inherit
diff --git a/.github/workflows/deployment-stage-prod.yml b/.github/workflows/deployment-stage-prod.yml
index a3f07dce30..a3b528dfe8 100644
--- a/.github/workflows/deployment-stage-prod.yml
+++ b/.github/workflows/deployment-stage-prod.yml
@@ -9,6 +9,15 @@ on:
- staging
- prod
workflow_dispatch:
+ inputs:
+ action:
+ description: "Choose action"
+ type: choice
+ required: true
+ default: diff
+ options:
+ - diff
+ - deploy
jobs:
build-and-push:
@@ -24,5 +33,9 @@ jobs:
upgrade-or-install-deployment:
name: Upgrade or install deployment
needs: build-and-push
- uses: ./.github/workflows/reusable-stage-prod-deployment.yml
+ uses: ./.github/workflows/reusable-ecamp3-deployment.yml
+ with:
+ name: ${{ github.ref_name }}
+ env: ${{ github.ref_name }}
+ action: ${{ github.event.inputs.action || 'deploy' }}
secrets: inherit
diff --git a/.github/workflows/restore-backup-dev-pr.yml b/.github/workflows/restore-backup-dev-pr.yml
index 7857db686a..4d567de94f 100644
--- a/.github/workflows/restore-backup-dev-pr.yml
+++ b/.github/workflows/restore-backup-dev-pr.yml
@@ -21,6 +21,14 @@ on:
description: The environment, if name is dev then dev, else feature-branch
required: true
default: dev
+ action:
+ description: "Choose action"
+ type: choice
+ required: true
+ default: diff
+ options:
+ - diff
+ - deploy
jobs:
@@ -36,7 +44,7 @@ jobs:
upgrade-or-install-deployment:
name: Upgrade or install deployment
needs: build-and-push
- uses: ./.github/workflows/reusable-dev-deployment.yml
+ uses: ./.github/workflows/reusable-ecamp3-deployment.yml
with:
name: ${{ inputs.pr-number == null && 'dev' || format('pr{0}', inputs.pr-number) }}
sha: ${{ github.sha }}
@@ -44,4 +52,5 @@ jobs:
pr-number: ${{ inputs.pr-number }}
dropDBOnUninstall: ${{ inputs.pr-number != null }}
restoreSourceFile: ${{ inputs.restoreSourceFile }}
+ action: ${{ github.event.inputs.action }}
secrets: inherit
diff --git a/.github/workflows/restore-backup-stage-prod.yml b/.github/workflows/restore-backup-stage-prod.yml
index 4e70906b39..f628224145 100644
--- a/.github/workflows/restore-backup-stage-prod.yml
+++ b/.github/workflows/restore-backup-stage-prod.yml
@@ -18,6 +18,14 @@ on:
and restore the database with the given backup file?
Repeat the branch name to confirm. (e.g. staging or prod)
required: true
+ action:
+ description: "Choose action"
+ type: choice
+ required: true
+ default: diff
+ options:
+ - diff
+ - deploy
jobs:
check-parameters:
@@ -46,7 +54,9 @@ jobs:
upgrade-or-install-deployment:
name: Upgrade or install deployment
needs: build-and-push
- uses: ./.github/workflows/reusable-stage-prod-deployment.yml
+ uses: ./.github/workflows/reusable-ecamp3-deployment.yml
with:
restoreSourceFile: ${{ inputs.restoreSourceFile }}
+ env: ${{ github.ref_name }}
+ action: ${{ github.event.inputs.action }}
secrets: inherit
diff --git a/.github/workflows/reusable-build-and-push.yml b/.github/workflows/reusable-build-and-push.yml
index 7e33ecd7dd..d16f61c79c 100644
--- a/.github/workflows/reusable-build-and-push.yml
+++ b/.github/workflows/reusable-build-and-push.yml
@@ -39,7 +39,7 @@ jobs:
script: |
return context.repo.owner.toLowerCase()
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
with:
ref: ${{ inputs.sha }}
@@ -122,7 +122,7 @@ jobs:
tags: ${{ needs.build-info.outputs.tags }}
repo-owner: ${{ needs.build-info.outputs.repo-owner }}
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
with:
ref: ${{ inputs.sha }}
fetch-depth: 100
diff --git a/.github/workflows/reusable-dev-deployment.yml b/.github/workflows/reusable-dev-deployment.yml
deleted file mode 100644
index fc63a1355f..0000000000
--- a/.github/workflows/reusable-dev-deployment.yml
+++ /dev/null
@@ -1,190 +0,0 @@
-name: '[reusable only] Development deployment'
-
-on:
- workflow_call:
- inputs:
- name:
- required: true
- type: string
- sha:
- required: false
- type: string
- default: ${{ github.sha }}
- env:
- required: true
- type: string
- pr-number:
- required: false
- type: string
- dropDBOnUninstall:
- required: false
- type: boolean
- default: false
- restoreSourceFile:
- required: false
- type: string
-
-jobs:
- dev-deployment:
- name: Deploy to Kubernetes
- runs-on: ubuntu-latest
- environment:
- name: ${{ inputs.env }}
- steps:
- - name: Get link to currently running job logs
- uses: Tiryoh/gha-jobid-action@v1.4.0
- id: job-url
- with:
- github_token: ${{ secrets.GITHUB_TOKEN }}
- job_name: Upgrade or install deployment / Deploy to Kubernetes
-
- - name: Create a pending GitHub deployment
- uses: bobheadxi/deployments@v1.5.0
- id: deployment
- with:
- step: start
- token: ${{ secrets.REPO_ACCESS_TOKEN }}
- env: ${{ inputs.name }}
-
- - name: Comment progress on PR
- uses: thollander/actions-comment-pull-request@v3
- if: ${{ inputs.env == 'feature-branch' }}
- with:
- pr-number: ${{ inputs.pr-number }}
- message: |
- ### 🏗️ Feature branch deployment in progress
-
-
- | Name | Link |
- |---------------------------------|------------------------|
- |🔨 Latest commit | [${{ inputs.sha }}](https://github.com/${{ github.repository }}/commit/${{ inputs.sha }}) |
- |🔍 Latest deploy log | [${{ steps.job-url.outputs.html_url }}](${{ steps.job-url.outputs.html_url }}) |
- comment-tag: feature-branch-deployment-status
-
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
- with:
- ref: ${{ inputs.sha }}
-
- - name: Upgrade or install helm release
- env:
- never_uninstall: ${{ needs.find-prs-to-deploy.outputs.never-uninstall }}
- run: |
- # Setup authentication
- mkdir ~/.kube && echo '${{ secrets.KUBECONFIG }}' > ~/.kube/config && chmod go-r ~/.kube/config
- # Switch to the helm chart directory
- cd .helm/ecamp3
- # Install dependency charts
- helm dependency update
- # Set the appVersion, workaround from https://github.com/helm/helm/issues/8194 so that we can
- # later find out which deployments need to be upgraded
- sed -i 's/^appVersion:.*$/appVersion: "${{ inputs.sha }}"/' Chart.yaml
- # Install or upgrade the release
- helm upgrade --install ecamp3-${{ inputs.name }} . \
- --set imageTag=${{ inputs.sha }} \
- --set frontend.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-frontend' \
- --set print.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-print' \
- --set api.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-api' \
- --set apiCache.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-varnish' \
- --set postgresql.dbBackupRestoreImage.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-db-backup-restore' \
- --set termsOfServiceLinkTemplate='https://ecamp3.ch/{lang}/tos' \
- --set newsLink='https://ecamp3.ch/blog' \
- --set helpLink='https://ecamp3.ch/faq' \
- --set domain=${{ inputs.name }}.${{ vars.DOMAIN }} \
- --set ingress.basicAuth.enabled=${{ vars.BASIC_AUTH_ENABLED || false }} \
- --set ingress.basicAuth.username=${{ secrets.BASIC_AUTH_USERNAME }} \
- --set ingress.basicAuth.password='${{ secrets.BASIC_AUTH_PASSWORD }}' \
- --set apiCache.enabled=${{ vars.API_CACHE_ENABLED || false }} \
- --set apiCache.sendXKeyHeadersDownstream=${{ vars.SEND_XKEY_HEADERS_DOWNSTREAM != null && format('''{0}''', vars.SEND_XKEY_HEADERS_DOWNSTREAM) || null }} \
- --set mail.dummyEnabled=true \
- --set postgresql.url='${{ secrets.POSTGRES_URL }}/ecamp3${{ inputs.name }}?sslmode=require' \
- --set postgresql.adminUrl='${{ secrets.POSTGRES_ADMIN_URL }}/ecamp3${{ inputs.name }}?sslmode=require' \
- --set postgresql.dropDBOnUninstall=${{ inputs.dropDBOnUninstall }} \
- --set postgresql.backup.schedule=${{ vars.BACKUP_SCHEDULE != null && format('''{0}''', vars.BACKUP_SCHEDULE) || null }} \
- --set postgresql.backup.s3.endpoint='${{ vars.BACKUP_S3_ENDPOINT }}' \
- --set postgresql.backup.s3.bucket='${{ vars.BACKUP_S3_BUCKET }}' \
- --set postgresql.backup.s3.accessKeyId='${{ secrets.BACKUP_S3_ACCESS_KEY_ID }}' \
- --set postgresql.backup.s3.accessKey='${{ secrets.BACKUP_S3_ACCESS_KEY }}' \
- --set postgresql.backup.encryptionKey=${{ secrets.BACKUP_ENCRYPTION_KEY != null && format('''{0}''', secrets.BACKUP_ENCRYPTION_KEY) || null }} \
- --set postgresql.restore.sourceFile=${{ inputs.restoreSourceFile != null && format('''{0}''', inputs.restoreSourceFile) || null }} \
- --set postgresql.restore.sourceAppName=${{ vars.RESTORE_SOURCE_APP != null && format('''{0}''', vars.RESTORE_SOURCE_APP) || null }} \
- --set postgresql.restore.s3.endpoint='${{ vars.RESTORE_S3_ENDPOINT }}' \
- --set postgresql.restore.s3.bucket='${{ vars.RESTORE_S3_BUCKET }}' \
- --set postgresql.restore.s3.accessKeyId='${{ secrets.RESTORE_S3_ACCESS_KEY_ID }}' \
- --set postgresql.restore.s3.accessKey='${{ secrets.RESTORE_S3_ACCESS_KEY }}' \
- --set postgresql.restore.encryptionKey=${{ secrets.RESTORE_ENCRYPTION_KEY != null && format('''{0}''', secrets.RESTORE_ENCRYPTION_KEY) || null }} \
- --set api.dataMigrationsDir='${{ vars.DATA_MIGRATIONS_DIR }}' \
- --set api.appSecret='${{ secrets.API_APP_SECRET }}' \
- --set api.sentryDsn='${{ secrets.API_SENTRY_DSN }}' \
- --set api.jwt.passphrase='${{ secrets.JWT_PASSPHRASE }}' \
- --set api.jwt.publicKey='${{ secrets.JWT_PUBLIC_KEY }}' \
- --set api.jwt.privateKey='${{ secrets.JWT_PRIVATE_KEY }}' \
- --set frontend.sentryDsn='${{ secrets.FRONTEND_SENTRY_DSN }}' \
- --set print.sentryDsn='${{ secrets.PRINT_SENTRY_DSN }}' \
- --set print.browserWsEndpoint='${{ secrets.BROWSER_WS_ENDPOINT }}' \
- --set print.ingress.readTimeoutSeconds='${{ vars.PRINT_INGRESS_READ_TIMEOUT_SECONDS }}' \
- --set print.renderHTMLTimeoutMs='${{ vars.PRINT_RENDER_HTML_TIMEOUT_MS }}' \
- --set print.renderPDFTimeoutMs='${{ vars.PRINT_RENDER_PDF_TIMEOUT_MS }}' \
- --set browserless.connectionTimeout=${{ vars.BROWSERLESS_CONNECTION_TIMEOUT_MS || '30000' }} \
- --set deploymentTime="$(date -u +%s)" \
- --set deployedVersion="$(git rev-parse --short '${{ inputs.sha }}')" \
- --set recaptcha.siteKey='${{ secrets.RECAPTCHA_SITE_KEY }}' \
- --set recaptcha.secret='${{ secrets.RECAPTCHA_SECRET }}' \
- --set frontend.loginInfoTextKey=${{ vars.LOGIN_INFO_TEXT_KEY }} \
- --set featureToggle.developer=true \
- --set featureToggle.checklist=${{ vars.FEATURE_CHECKLIST || 'false' }} \
- --timeout ${{ vars.HELM_TIMEOUT || '5m0s' }}
-
- - name: Finish the GitHub deployment
- uses: bobheadxi/deployments@v1.5.0
- if: always()
- with:
- step: finish
- token: ${{ secrets.REPO_ACCESS_TOKEN }}
- status: ${{ job.status }}
- deployment_id: ${{ steps.deployment.outputs.deployment_id }}
- env_url: https://${{ inputs.name }}.${{ vars.DOMAIN }}
- env: ${{ steps.deployment.outputs.env }}
-
- - name: Get current time
- uses: josStorer/get-current-time@v2
- if: always()
- id: current-time
- with:
- timezone: Europe/Zurich
-
- - name: Comment success on PR
- uses: thollander/actions-comment-pull-request@v3
- if: ${{ success() && inputs.env == 'feature-branch' }}
- with:
- pr-number: ${{ inputs.pr-number }}
- message: |
- ### ✅ Feature branch deployment ready!
-
-
- | Name | Link |
- |---------------------------------|------------------------|
- |😎 **Deployment** | [https://${{ inputs.name }}.${{ vars.DOMAIN }}/](https://${{ inputs.name }}.${{ vars.DOMAIN }}/) |
- |🔑 Login | `test@example.com` / `test` |
- |🕒 Last deployed at | ${{ steps.current-time.outputs.readableTime }} |
- |🔨 Latest commit | [${{ inputs.sha }}](https://github.com/${{ github.repository }}/commit/${{ inputs.sha }}) |
- |🔍 Latest deploy log | [${{ steps.job-url.outputs.html_url }}](${{ steps.job-url.outputs.html_url }}) |
- |📱 Preview on mobile | Toggle QR Code...

_Use your smartphone camera to open QR code link._ |
- ---
- comment-tag: feature-branch-deployment-status
-
- - name: Comment failure on PR
- uses: thollander/actions-comment-pull-request@v3
- if: ${{ failure() && inputs.env == 'feature-branch' }}
- with:
- pr-number: ${{ inputs.pr-number }}
- message: |
- ### 💥 Feature branch deployment failed
-
-
- | Name | Link |
- |---------------------------------|------------------------|
- |🕒 Last attempted at | ${{ steps.current-time.outputs.readableTime }} |
- |🔨 Latest commit | [${{ inputs.sha }}](https://github.com/${{ github.repository }}/commit/${{ inputs.sha }}) |
- |🔍 Latest deploy log | [${{ steps.job-url.outputs.html_url }}](${{ steps.job-url.outputs.html_url }}) |
- ---
- comment-tag: feature-branch-deployment-status
diff --git a/.github/workflows/reusable-e2e-tests-build.yml b/.github/workflows/reusable-e2e-tests-build.yml
index a7d34f98e2..4fea681fc8 100644
--- a/.github/workflows/reusable-e2e-tests-build.yml
+++ b/.github/workflows/reusable-e2e-tests-build.yml
@@ -9,7 +9,7 @@ jobs:
runs-on: ubuntu-latest
timeout-minutes: 20
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- name: Set up Docker Buildx
id: buildx
@@ -30,7 +30,7 @@ jobs:
cache-to: type=gha,scope=api,mode=max
outputs: type=docker,dest=/tmp/ecamp3-dev-api.tar
- - uses: actions/upload-artifact@v4
+ - uses: actions/upload-artifact@v5
with:
name: e2e-tests-images
path: /tmp/ecamp3-dev-*.tar
diff --git a/.github/workflows/reusable-e2e-tests-run.yml b/.github/workflows/reusable-e2e-tests-run.yml
index 10e387a6a6..5ea259ea44 100644
--- a/.github/workflows/reusable-e2e-tests-run.yml
+++ b/.github/workflows/reusable-e2e-tests-run.yml
@@ -22,7 +22,7 @@ jobs:
- firefox
- edge
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
- run: cp .env.ci .env
@@ -31,7 +31,7 @@ jobs:
uses: docker/setup-buildx-action@v3
- name: Restore tmp folder
- uses: actions/download-artifact@v5
+ uses: actions/download-artifact@v6
with:
name: e2e-tests-images
path: /tmp
@@ -79,7 +79,7 @@ jobs:
if: always()
# store screenshots and videos on GitHub as artifacts, for downloading and debugging in case of problems
- - uses: actions/upload-artifact@v4
+ - uses: actions/upload-artifact@v5
if: always()
with:
name: cypress-output-${{ matrix.browser }}${{ inputs.run-identifier != null && format('-{0}', inputs.run-identifier) }}
diff --git a/.github/workflows/reusable-ecamp3-deployment.yml b/.github/workflows/reusable-ecamp3-deployment.yml
new file mode 100644
index 0000000000..3fbfff5368
--- /dev/null
+++ b/.github/workflows/reusable-ecamp3-deployment.yml
@@ -0,0 +1,184 @@
+name: '[reusable only] ecamp3 deployment'
+
+on:
+ workflow_call:
+ inputs:
+ name:
+ description: Deployment short name for subdomain (e.g. dev, pr123).
+ required: false
+ type: string
+ sha:
+ required: false
+ type: string
+ default: ${{ github.sha }}
+ env:
+ description: Target environment (dev, feature-branch, staging, prod)
+ required: true
+ type: string
+ pr-number:
+ required: false
+ type: string
+ dropDBOnUninstall:
+ required: false
+ type: boolean
+ default: false
+ restoreSourceFile:
+ required: false
+ type: string
+ action:
+ description: "Choose action of (diff|deploy)"
+ type: string
+ required: true
+ default: diff
+
+env:
+ NAME: ${{ inputs.name }}
+ IMAGE_TAG: ${{ inputs.sha }}
+ HELM_TIMEOUT: ${{ vars.HELM_TIMEOUT }}
+
+jobs:
+ deploy-ecamp3:
+ name: Deploy to Kubernetes
+ runs-on: ubuntu-latest
+ environment:
+ name: ${{ inputs.env }}
+ steps:
+ - name: Get link to currently running job logs
+ if: ${{ inputs.env == 'feature-branch' }}
+ uses: Tiryoh/gha-jobid-action@v1.4.0
+ id: job-url
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ job_name: Upgrade or install deployment / Deploy to Kubernetes
+
+ - name: Create a pending GitHub deployment
+ uses: bobheadxi/deployments@v1.5.0
+ id: deployment
+ with:
+ step: start
+ token: ${{ secrets.REPO_ACCESS_TOKEN }}
+ env: ${{ inputs.env }}
+
+ - name: Comment progress on PR
+ uses: thollander/actions-comment-pull-request@v3
+ if: ${{ inputs.env == 'feature-branch' }}
+ with:
+ pr-number: ${{ inputs.pr-number }}
+ message: |
+ ### 🏗️ Feature branch deployment in progress
+
+
+ | Name | Link |
+ |---------------------------------|------------------------|
+ |🔨 Latest commit | [${{ inputs.sha }}](https://github.com/${{ github.repository }}/commit/${{ inputs.sha }}) |
+ |🔍 Latest deploy log | [${{ steps.job-url.outputs.html_url }}](${{ steps.job-url.outputs.html_url }}) |
+ comment-tag: feature-branch-deployment-status
+
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
+ with:
+ ref: ${{ inputs.sha }}
+
+ - name: Dump secrets to /tmp/secrets.json
+ run: |
+ cat << 'EOF' | tee /tmp/secrets.json
+ ${{ toJSON(secrets) }}
+ EOF
+ jq '.' /tmp/secrets.json
+
+ - name: Dump variables to /tmp/vars.json
+ run: |
+ cat << 'EOF' | tee /tmp/vars.json
+ ${{ toJSON(vars) }}
+ EOF
+ jq '.' /tmp/vars.json
+
+ - name: Merge secrets, variables, and workflow inputs to env.yaml
+ run: |
+ jq -n \
+ '{
+ NAME: "${{ inputs.name }}",
+ IMAGE_TAG: "${{ inputs.sha }}",
+ RESTORE_SOURCE_FILE: "${{ inputs.restoreSourceFile || '' }}",
+ DROP_DB_ON_UNINSTALL: ${{ inputs.dropDBOnUninstall }}
+ }' > /tmp/additions.json
+ jq -s '.[0] + .[1] + .[2]' /tmp/secrets.json /tmp/vars.json /tmp/additions.json > .helm/ecamp3/env.yaml
+ jq '.' .helm/ecamp3/env.yaml
+
+ - name: Setup kubectl authentication
+ run: |
+ mkdir -p ~/.kube
+ echo '${{ secrets.KUBECONFIG }}' > ~/.kube/config
+ chmod go-r ~/.kube/config
+
+ - uses: ./.github/actions/setup-helmfile
+
+ - name: Diff deployment
+ run: |
+ ./.helm/ecamp3/deploy.sh diff || true
+
+ - name: Show values.yaml
+ run: cat ./.helm/ecamp3/values.yaml
+
+ - name: Deploy
+ if: ${{ inputs.action == 'deploy' }}
+ run: |
+ ./.helm/ecamp3/deploy.sh deploy
+
+ - name: Finish the GitHub deployment
+ uses: bobheadxi/deployments@v1.5.0
+ if: always()
+ with:
+ step: finish
+ token: ${{ secrets.REPO_ACCESS_TOKEN }}
+ status: ${{ job.status }}
+ deployment_id: ${{ steps.deployment.outputs.deployment_id }}
+ env_url: ${{ (inputs.env == 'staging' || inputs.env == 'prod') && format('https://{0}.{1}', vars.SUBDOMAIN, vars.DOMAIN) || format('https://{0}.{1}', inputs.name, vars.DOMAIN) }}
+ env: ${{ steps.deployment.outputs.env }}
+
+ - name: Get current time
+ uses: josStorer/get-current-time@v2
+ if: always()
+ id: current-time
+ with:
+ timezone: Europe/Zurich
+
+ - name: Comment success on PR
+ uses: thollander/actions-comment-pull-request@v3
+ if: ${{ success() && inputs.env == 'feature-branch' }}
+ with:
+ pr-number: ${{ inputs.pr-number }}
+ message: |
+ ### ✅ Feature branch deployment ready!
+
+
+ | Name | Link |
+ |---------------------------------|------------------------|
+ |😎 **Deployment** | [https://${{ inputs.name }}.${{ vars.DOMAIN }}/](https://${{ inputs.name }}.${{ vars.DOMAIN }}/) |
+ |🔑 Login | `test@example.com` / `test` |
+ |🕒 Last deployed at | ${{ steps.current-time.outputs.readableTime }} |
+ |🔨 Latest commit | [${{ inputs.sha }}](https://github.com/${{ github.repository }}/commit/${{ inputs.sha }}) |
+ |🔍 Latest deploy log | [${{ steps.job-url.outputs.html_url }}](${{ steps.job-url.outputs.html_url }}) |
+ |📱 Preview on mobile | Toggle QR Code...

_Use your smartphone camera to open QR code link._ |
+ ---
+ comment-tag: feature-branch-deployment-status
+
+ - name: Comment failure on PR
+ uses: thollander/actions-comment-pull-request@v3
+ if: ${{ failure() && inputs.env == 'feature-branch' }}
+ with:
+ pr-number: ${{ inputs.pr-number }}
+ message: |
+ ### 💥 Feature branch deployment failed
+
+
+ | Name | Link |
+ |---------------------------------|------------------------|
+ |🕒 Last attempted at | ${{ steps.current-time.outputs.readableTime }} |
+ |🔨 Latest commit | [${{ inputs.sha }}](https://github.com/${{ github.repository }}/commit/${{ inputs.sha }}) |
+ |🔍 Latest deploy log | [${{ steps.job-url.outputs.html_url }}](${{ steps.job-url.outputs.html_url }}) |
+ ---
+ comment-tag: feature-branch-deployment-status
+
+ - name: Cleanup temp files
+ if: always()
+ run: rm -f /tmp/secrets.json /tmp/vars.json .helm/ecamp3/env.yaml
diff --git a/.github/workflows/reusable-stage-prod-deployment.yml b/.github/workflows/reusable-stage-prod-deployment.yml
deleted file mode 100644
index 7c54c903c4..0000000000
--- a/.github/workflows/reusable-stage-prod-deployment.yml
+++ /dev/null
@@ -1,126 +0,0 @@
-name: '[reusable only] Staging and Prod deployment '
-
-on:
- workflow_call:
- inputs:
- restoreSourceFile:
- type: string
- required: false
-
-jobs:
- upgrade-or-install-deployment:
- name: Upgrade or install deployment
- runs-on: ubuntu-latest
- environment: ${{ github.ref_name }}
- env:
- environment: ${{ github.ref_name }}
- domain: ${{ vars.SUBDOMAIN }}.${{ vars.DOMAIN }}
- steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
-
- - name: Create a pending GitHub deployment
- uses: bobheadxi/deployments@v1.5.0
- id: deployment
- with:
- step: start
- token: ${{ secrets.REPO_ACCESS_TOKEN }}
- env: ${{ env.environment }}
-
- - name: Upgrade or install helm release
- run: |
- # Setup authentication
- mkdir ~/.kube && echo '${{ secrets.KUBECONFIG }}' > ~/.kube/config && chmod go-r ~/.kube/config
- # Switch to the helm chart directory
- cd .helm/ecamp3
- # Install dependency charts
- helm dependency update
- # Set the appVersion, workaround from https://github.com/helm/helm/issues/8194 so that we can
- # later find out which deployments need to be upgraded
- sed -i 's/^appVersion:.*$/appVersion: "${{ github.sha }}"/' Chart.yaml
- # Install or upgrade the release
- helm upgrade --install ecamp3-${{ env.environment }} . \
- --set imageTag=${{ github.sha }} \
- --set frontend.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-frontend' \
- --set print.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-print' \
- --set api.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-api' \
- --set apiCache.image.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-varnish' \
- --set postgresql.dbBackupRestoreImage.repository='docker.io/${{ vars.DOCKER_HUB_USERNAME }}/ecamp3-db-backup-restore' \
- --set termsOfServiceLinkTemplate='https://ecamp3.ch/{lang}/tos' \
- --set newsLink='https://ecamp3.ch/blog' \
- --set helpLink='https://ecamp3.ch/faq' \
- --set domain=${{ env.domain }} \
- --set ingress.basicAuth.enabled=${{ vars.BASIC_AUTH_ENABLED || false }} \
- --set ingress.basicAuth.username=${{ secrets.BASIC_AUTH_USERNAME }} \
- --set ingress.basicAuth.password='${{ secrets.BASIC_AUTH_PASSWORD }}' \
- --set apiCache.enabled=${{ vars.API_CACHE_ENABLED || false }} \
- --set mail.dsn=${{ secrets.MAILER_DSN }} \
- --set postgresql.url='${{ secrets.POSTGRES_URL }}/${{ secrets.DB_NAME }}?sslmode=require' \
- --set postgresql.dropDBOnUninstall=false \
- --set postgresql.backup.schedule=${{ vars.BACKUP_SCHEDULE != null && format('''{0}''', vars.BACKUP_SCHEDULE) || null }} \
- --set postgresql.backup.s3.endpoint='${{ vars.BACKUP_S3_ENDPOINT }}' \
- --set postgresql.backup.s3.bucket='${{ vars.BACKUP_S3_BUCKET }}' \
- --set postgresql.backup.s3.accessKeyId='${{ secrets.BACKUP_S3_ACCESS_KEY_ID }}' \
- --set postgresql.backup.s3.accessKey='${{ secrets.BACKUP_S3_ACCESS_KEY }}' \
- --set postgresql.backup.encryptionKey=${{ secrets.BACKUP_ENCRYPTION_KEY != null && format('''{0}''', secrets.BACKUP_ENCRYPTION_KEY) || null }} \
- --set postgresql.restore.sourceFile=${{ inputs.restoreSourceFile != null && format('''{0}''', inputs.restoreSourceFile) || null }} \
- --set postgresql.restore.sourceAppName=${{ vars.RESTORE_SOURCE_APP != null && format('''{0}''', vars.RESTORE_SOURCE_APP) || null }} \
- --set postgresql.restore.s3.endpoint='${{ vars.RESTORE_S3_ENDPOINT }}' \
- --set postgresql.restore.s3.bucket='${{ vars.RESTORE_S3_BUCKET }}' \
- --set postgresql.restore.s3.accessKeyId='${{ secrets.RESTORE_S3_ACCESS_KEY_ID }}' \
- --set postgresql.restore.s3.accessKey='${{ secrets.RESTORE_S3_ACCESS_KEY }}' \
- --set postgresql.restore.encryptionKey=${{ secrets.RESTORE_ENCRYPTION_KEY != null && format('''{0}''', secrets.RESTORE_ENCRYPTION_KEY) || null }} \
- --set postgresql.restore.inviteSupportAccountToInterestingCamps=${{ vars.RESTORE_INVITE_TO_INTERESTING_CAMPS != null && format('''{0}''', vars.RESTORE_INVITE_TO_INTERESTING_CAMPS) || false }} \
- --set api.dataMigrationsDir='${{ vars.DATA_MIGRATIONS_DIR }}' \
- --set api.appSecret='${{ secrets.API_APP_SECRET }}' \
- --set api.sentryDsn='${{ secrets.API_SENTRY_DSN }}' \
- --set api.jwt.passphrase='${{ secrets.JWT_PASSPHRASE }}' \
- --set api.jwt.publicKey='${{ secrets.JWT_PUBLIC_KEY }}' \
- --set api.jwt.privateKey='${{ secrets.JWT_PRIVATE_KEY }}' \
- --set api.oauth.google.clientId='${{ secrets.OAUTH_GOOGLE_CLIENT_ID }}' \
- --set api.oauth.google.clientSecret='${{ secrets.OAUTH_GOOGLE_CLIENT_SECRET }}' \
- --set api.oauth.pbsmidata.clientId='${{ secrets.OAUTH_PBSMIDATA_CLIENT_ID }}' \
- --set api.oauth.pbsmidata.clientSecret='${{ secrets.OAUTH_PBSMIDATA_CLIENT_SECRET }}' \
- --set api.oauth.pbsmidata.baseUrl='${{ secrets.OAUTH_PBSMIDATA_BASE_URL }}' \
- --set api.oauth.cevidb.clientId='${{ secrets.OAUTH_CEVIDB_CLIENT_ID }}' \
- --set api.oauth.cevidb.clientSecret='${{ secrets.OAUTH_CEVIDB_CLIENT_SECRET }}' \
- --set api.oauth.cevidb.baseUrl='${{ secrets.OAUTH_CEVIDB_BASE_URL }}' \
- --set api.oauth.jubladb.clientId='${{ secrets.OAUTH_JUBLADB_CLIENT_ID }}' \
- --set api.oauth.jubladb.clientSecret='${{ secrets.OAUTH_JUBLADB_CLIENT_SECRET }}' \
- --set api.oauth.jubladb.baseUrl='${{ secrets.OAUTH_JUBLADB_BASE_URL }}' \
- --set frontend.sentryDsn='${{ secrets.FRONTEND_SENTRY_DSN }}' \
- --set print.sentryDsn='${{ secrets.PRINT_SENTRY_DSN }}' \
- --set print.ingress.readTimeoutSeconds='${{ vars.PRINT_INGRESS_READ_TIMEOUT_SECONDS }}' \
- --set print.renderHTMLTimeoutMs='${{ vars.PRINT_RENDER_HTML_TIMEOUT_MS }}' \
- --set print.renderPDFTimeoutMs='${{ vars.PRINT_RENDER_PDF_TIMEOUT_MS }}' \
- --set deploymentTime="$(date -u +%s)" \
- --set deployedVersion="$(git rev-parse --short HEAD)" \
- --set recaptcha.siteKey='${{ secrets.RECAPTCHA_SITE_KEY }}' \
- --set recaptcha.secret='${{ secrets.RECAPTCHA_SECRET }}' \
- --set frontend.loginInfoTextKey=${{ vars.LOGIN_INFO_TEXT_KEY }} \
- --set browserless.maxConcurrentSessions=${{ vars.BROWSERLESS_MAXCONCURRENTSESSIONS || 3 }} \
- --set browserless.maxQueueLength=${{ vars.BROWSERLESS_MAXQUEUELENGTH || 9 }} \
- --set browserless.connectionTimeout=${{ vars.BROWSERLESS_CONNECTION_TIMEOUT_MS || '30000' }} \
- --set browserless.resources.requests.cpu=${{ vars.BROWSERLESS_CPU || '500m' }} \
- --set browserless.resources.requests.memory=${{ vars.BROWSERLESS_MEMORY || '800Mi' }} \
- --set api.num_threads=${{ vars.API_NUM_THREADS != null && vars.API_NUM_THREADS || null }} \
- --set api.resources.requests.cpu=${{ vars.PHP_CPU || '1000m' }} \
- --set api.resources.requests.memory=${{ vars.PHP_MEMORY || '500Mi' }} \
- --set api.resources.limits.cpu=${{ vars.PHP_CPULIMIT || '1900m' }} \
- --set frontend.resources.requests.cpu=50m \
- --set print.resources.requests.cpu=${{ vars.PRINT_CPU || '300m' }} \
- --set print.resources.requests.memory=${{ vars.PRINT_MEMORY || '150Mi' }} \
- --set autoscaling.enabled=true \
- --set autoscaling.targetCPUUtilizationPercentage=90 \
- --set featureToggle.checklist=${{ vars.FEATURE_CHECKLIST || 'false' }} \
- --timeout ${{ vars.HELM_TIMEOUT || '5m0s' }}
-
- - name: Finish the GitHub deployment
- uses: bobheadxi/deployments@v1.5.0
- if: always()
- with:
- step: finish
- token: ${{ secrets.REPO_ACCESS_TOKEN }}
- status: ${{ job.status }}
- deployment_id: ${{ steps.deployment.outputs.deployment_id }}
- env_url: https://${{ env.domain }}
- env: ${{ steps.deployment.outputs.env }}
diff --git a/.github/workflows/summarize-changes-on-staging-and-prod-prs.yml b/.github/workflows/summarize-changes-on-staging-and-prod-prs.yml
index 74ba4051b6..2add1a938a 100644
--- a/.github/workflows/summarize-changes-on-staging-and-prod-prs.yml
+++ b/.github/workflows/summarize-changes-on-staging-and-prod-prs.yml
@@ -9,7 +9,7 @@ jobs:
name: Summarize changes
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5
+ - uses: actions/checkout@93cb6efe18208431cddfb8368fd83d5badbf9bfd # v5
with:
ref: ${{ github.event.pull_request.head.sha }}
fetch-depth: 0
diff --git a/.helm/.env-example b/.helm/.env-example
deleted file mode 100644
index 40d36b3e65..0000000000
--- a/.helm/.env-example
+++ /dev/null
@@ -1,36 +0,0 @@
-docker_hub_account=
-version=$(git rev-parse HEAD)
-instance_name=${USER}
-domain=ecamp3.ch
-POSTGRES_URL=
-POSTGRES_ADMIN_URL=
-
-API_CACHE_ENABLED=false
-#API_NUM_THREADS=16
-
-BASIC_AUTH_ENABLED=false
-BASIC_AUTH_USERNAME=test
-BASIC_AUTH_PASSWORD=test
-
-API_SENTRY_DSN=
-FRONTEND_SENTRY_DSN=
-PRINT_SENTRY_DSN=
-
-SENTRY_AUTH_TOKEN=
-SENTRY_RELEASE_NAME=$version
-
-BACKUP_SCHEDULE=@hourly
-BACKUP_S3_ENDPOINT=
-BACKUP_S3_BUCKET=
-BACKUP_S3_ACCESS_KEY_ID=
-BACKUP_S3_ACCESS_KEY=
-BACKUP_ENCRYPTION_KEY=test
-
-#RESTORE_SOURCE_FILE=latest
-RESTORE_SOURCE_APP=${instance_name}-1
-RESTORE_S3_ENDPOINT=
-RESTORE_S3_BUCKET=
-RESTORE_S3_ACCESS_KEY_ID=
-RESTORE_S3_ACCESS_KEY=
-RESTORE_ENCRYPTION_KEY=test
-RESTORE_INVITE_TO_INTERESTING_CAMPS=false
diff --git a/.helm/README.md b/.helm/README.md
new file mode 100644
index 0000000000..9c23965ade
--- /dev/null
+++ b/.helm/README.md
@@ -0,0 +1,55 @@
+# Helm infrastructure for ecamp3
+
+Here you also have some scripts to deploy ecamp3 from your local machine.
+
+## Prepare
+
+First you need to have the following dependencies:
+
+- jq
+- kubectl (with a kubeconfig for the cluster you want to deploy to)
+- helm
+- helmfile
+- docker (with a public repository to push images to)
+- openssl
+
+## Setup
+
+If you don't have JWT Passphrase, public and private key yet, you have to run:
+
+```shell
+./generate-jwt-values.sh
+```
+This copies [env.example.yaml](ecamp3/env.example.yaml) to [env.yaml](ecamp3/env.yaml)
+if not exists and sets the jwt values.
+
+Then you have to set the values in [env.yaml](ecamp3/env.yaml which are not set to any value.
+(e.g. POSTGRES_URL).
+
+## Build images
+
+```shell
+./build-images.sh
+```
+
+## Deploy to cluster
+
+To diff the deployment
+
+```shell
+./deploy-to-cluster.sh
+```
+
+To deploy
+
+```shell
+./deploy-to-cluster.sh deploy
+```
+
+## For convenience
+
+If you did not build the images for a long time, you have the convenience script:
+
+```shell
+./build-and-deploy.sh
+```
diff --git a/.helm/build-images.sh b/.helm/build-images.sh
index acad4b3fcc..67209d4cd0 100755
--- a/.helm/build-images.sh
+++ b/.helm/build-images.sh
@@ -1,20 +1,13 @@
-#!/bin/bash
+#!/bin/sh
set -e
SCRIPT_DIR=$(realpath "$(dirname "$0")")
REPO_DIR=$(realpath "$SCRIPT_DIR"/..)
-source "$SCRIPT_DIR"/.env
-
-if [ -z "$docker_hub_account" ] \
- || [ -z "$version" ] \
- ; then
- echo "Please specify the needed env variables in $SCRIPT_DIR/.env"
- echo "An example can be seen here:"
- cat $SCRIPT_DIR/.env-example
- exit 1
-fi
+version=$(jq -r '.IMAGE_TAG' $SCRIPT_DIR/ecamp3/env.yaml)
+docker_hub_account=$(jq -r '.DOCKER_HUB_USERNAME' $SCRIPT_DIR/ecamp3/env.yaml)
+SENTRY_AUTH_TOKEN=$(jq -r '.SENTRY_AUTH_TOKEN' $SCRIPT_DIR/ecamp3/env.yaml)
sentry_build_args="--build-arg SENTRY_AUTH_TOKEN=$SENTRY_AUTH_TOKEN --build-arg SENTRY_ORG=$SENTRY_ORG"
sentry_build_args="$sentry_build_args --build-arg SENTRY_RELEASE_NAME=$SENTRY_RELEASE_NAME"
diff --git a/.helm/deploy-to-cluster.sh b/.helm/deploy-to-cluster.sh
index 5ffc3dece4..2ee1784750 100755
--- a/.helm/deploy-to-cluster.sh
+++ b/.helm/deploy-to-cluster.sh
@@ -1,111 +1,10 @@
-#!/bin/bash
-
-set -e
+#!/bin/sh
SCRIPT_DIR=$(realpath "$(dirname "$0")")
REPO_DIR=$(realpath "$SCRIPT_DIR"/..)
-source "$SCRIPT_DIR"/.env
-
-if [ -z "$version" ] \
- || [ -z "$instance_name" ] \
- || [ -z "$POSTGRES_URL" ] \
- || [ -z "$POSTGRES_ADMIN_URL" ] \
- ; then
- echo "Please specify the needed env variables in $SCRIPT_DIR/.env"
- echo "An example can be seen here:"
- cat $SCRIPT_DIR/.env-example
- exit 1
-fi
-
-pull_policy="Always"
-domain="${domain:-ecamp3.ch}"
-values="--set imageTag=${version}"
-migrations_dir="dev-data"
-
-#generated values
-app_secret=$(uuidgen)
-app_jwt_passphrase=$(uuidgen)
-app_jwt_public_key=$(echo -n "$app_jwt_passphrase" | openssl genpkey -out "$SCRIPT_DIR"/private.pem -pass stdin -aes256 -algorithm rsa -pkeyopt rsa_keygen_bits:4096)
-app_jwt_private_key=$(echo -n "$app_jwt_passphrase" | openssl pkey -in "$SCRIPT_DIR"/private.pem -passin stdin -out "$SCRIPT_DIR"/public.pem -pubout)
-
-#secrets POSTGRES_URL, POSTGRES_ADMIN_URL and sentry dsn are in .env
-
-#use 1 2 instead of "1" to deploy multiple deployments
-for i in 1; do
- values="$values --set imageTag=${version}"
- values="$values --set termsOfServiceLinkTemplate=https://ecamp3.ch/{lang}/tos"
- values="$values --set newsLink=https://ecamp3.ch/blog"
- values="$values --set helpLink=https://ecamp3.ch/faq"
- values="$values --set domain=$instance_name-"$i".$domain"
- values="$values --set mail.dummyEnabled=true"
- values="$values --set ingress.basicAuth.enabled=$BASIC_AUTH_ENABLED"
- values="$values --set ingress.basicAuth.username=$BASIC_AUTH_USERNAME"
- values="$values --set ingress.basicAuth.password=$BASIC_AUTH_PASSWORD"
- values="$values --set apiCache.enabled=$API_CACHE_ENABLED"
- values="$values --set postgresql.enabled=false"
- values="$values --set postgresql.url=$POSTGRES_URL/ecamp3$instance_name-"$i"?sslmode=require"
- values="$values --set postgresql.adminUrl=$POSTGRES_ADMIN_URL/ecamp3$instance_name-"$i"?sslmode=require"
- values="$values --set postgresql.dropDBOnUninstall=true"
- values="$values --set api.dataMigrationsDir=$migrations_dir"
- values="$values --set api.appSecret=$app_secret"
- if [ -n "$API_SENTRY_DSN" ]; then
- values="$values --set api.sentryDsn=$API_SENTRY_DSN"
- fi
- if [ -n "$API_NUM_THREADS" ]; then
- values="$values --set api.num_threads=$API_NUM_THREADS"
- fi
- if [ -n "$FRONTEND_SENTRY_DSN" ]; then
- values="$values --set frontend.sentryDsn=$FRONTEND_SENTRY_DSN"
- fi
- if [ -n "$PRINT_SENTRY_DSN" ]; then
- values="$values --set print.sentryDsn=$PRINT_SENTRY_DSN"
- fi
- values="$values --set api.jwt.passphrase=$app_jwt_passphrase"
- values="$values --set-file api.jwt.publicKey=$SCRIPT_DIR/public.pem"
- values="$values --set-file api.jwt.privateKey=$SCRIPT_DIR/private.pem"
- values="$values --set deploymentTime=$(date -u +%s)"
- values="$values --set deployedVersion=\"$(git rev-parse --short HEAD)\""
- values="$values --set featureToggle.developer=true"
- values="$values --set featureToggle.checklist=true"
-
- if [ -n "$BACKUP_SCHEDULE" ]; then
- values="$values --set postgresql.backup.schedule=$BACKUP_SCHEDULE"
- values="$values --set postgresql.backup.s3.endpoint=$BACKUP_S3_ENDPOINT"
- values="$values --set postgresql.backup.s3.bucket=$BACKUP_S3_BUCKET"
- values="$values --set postgresql.backup.s3.accessKeyId=$BACKUP_S3_ACCESS_KEY_ID"
- values="$values --set postgresql.backup.s3.accessKey=$BACKUP_S3_ACCESS_KEY"
- if [ -n $BACKUP_ENCRYPTION_KEY ]; then
- values="$values --set postgresql.backup.encryptionKey=$BACKUP_ENCRYPTION_KEY"
- fi
- fi
-
- if [ -n "$RESTORE_SOURCE_FILE" ]; then
- values="$values --set postgresql.restore.sourceFile=$RESTORE_SOURCE_FILE"
- values="$values --set postgresql.restore.s3.endpoint=$RESTORE_S3_ENDPOINT"
- values="$values --set postgresql.restore.s3.bucket=$RESTORE_S3_BUCKET"
- values="$values --set postgresql.restore.s3.accessKeyId=$RESTORE_S3_ACCESS_KEY_ID"
- values="$values --set postgresql.restore.s3.accessKey=$RESTORE_S3_ACCESS_KEY"
- values="$values --set postgresql.restore.sourceAppName=$RESTORE_SOURCE_APP"
- if [ -n $RESTORE_ENCRYPTION_KEY ]; then
- values="$values --set postgresql.restore.encryptionKey=$RESTORE_ENCRYPTION_KEY"
- fi
- values="$values --set postgresql.restore.inviteSupportAccountToInterestingCamps=$RESTORE_INVITE_TO_INTERESTING_CAMPS"
- fi
-
- for imagespec in "frontend" "print" "api"; do
- values="$values --set $imagespec.image.pullPolicy=$pull_policy"
- values="$values --set $imagespec.image.repository=docker.io/${docker_hub_account}/ecamp3-$imagespec"
- done
-
- values="$values --set apiCache.image.repository=docker.io/${docker_hub_account}/ecamp3-varnish"
-
- values="$values --set postgresql.dbBackupRestoreImage.pullPolicy=$pull_policy"
- values="$values --set postgresql.dbBackupRestoreImage.repository=docker.io/${docker_hub_account}/ecamp3-db-backup-restore"
+ACTION="${1:-diff}"
- helm uninstall ecamp3-"$instance_name"-"$i" || true
- helm upgrade --install ecamp3-"$instance_name"-"$i" $SCRIPT_DIR/ecamp3 $values
-done
+export NAME=$(jq -r '.NAME' $SCRIPT_DIR/ecamp3/env.yaml)
-rm -f private.pem
-rm -f public.pem
+"$REPO_DIR/.helm/ecamp3/deploy.sh" "${ACTION}"
diff --git a/.helm/ecamp3/.gitignore b/.helm/ecamp3/.gitignore
new file mode 100644
index 0000000000..c5d46b987d
--- /dev/null
+++ b/.helm/ecamp3/.gitignore
@@ -0,0 +1,3 @@
+.env
+/env.yaml
+/values.yaml
diff --git a/.helm/ecamp3/.helmignore b/.helm/ecamp3/.helmignore
index 45735c7c00..dcf3784a42 100644
--- a/.helm/ecamp3/.helmignore
+++ b/.helm/ecamp3/.helmignore
@@ -25,3 +25,8 @@ docker-compose.yml
README.md
.env
.env-example
+.env
+/deploy.sh
+/values.yaml
+/values.yaml.gotmpl
+/env.yaml
\ No newline at end of file
diff --git a/.helm/ecamp3/deploy.sh b/.helm/ecamp3/deploy.sh
new file mode 100755
index 0000000000..255dfdd7f3
--- /dev/null
+++ b/.helm/ecamp3/deploy.sh
@@ -0,0 +1,32 @@
+#!/bin/sh
+
+set -e
+
+SCRIPT_DIR=$(realpath "$(dirname "$0")")
+REPO_DIR=$(realpath "$SCRIPT_DIR/../..")
+
+if [ -z "${NAME:-}" ]; then
+ echo "Please specify the NAME"
+ exit 1
+fi
+
+cd "$SCRIPT_DIR"
+
+helmfile write-values --environment default --output-file-template values.yaml
+
+HELM_TIMEOUT="${HELM_TIMEOUT:-5m0s}"
+
+if [ "${1:-}" = "deploy" ]; then
+ helm upgrade --install ecamp3-$NAME \
+ $SCRIPT_DIR \
+ --values $SCRIPT_DIR/values.yaml \
+ --timeout "$HELM_TIMEOUT"
+ exit 0
+fi
+
+if [ "${1:-}" = "diff" ]; then
+ helm template --no-hooks --skip-tests ecamp3-$NAME \
+ $SCRIPT_DIR \
+ --values $SCRIPT_DIR/values.yaml | kubectl diff -f -
+ exit 0
+fi
diff --git a/.helm/ecamp3/env.example.yaml b/.helm/ecamp3/env.example.yaml
new file mode 100644
index 0000000000..79365f4e3d
--- /dev/null
+++ b/.helm/ecamp3/env.example.yaml
@@ -0,0 +1,45 @@
+{
+ "API_CACHE_ENABLED": true,
+ "API_DATA_MIGRATIONS_DIR": "dev-data",
+ "API_NUM_THREADS": null,
+ "API_SENTRY_DSN": null,
+ "AUTOSCALING_ENABLED": false,
+ "BACKUP_ENCRYPTION_KEY": null,
+ "BACKUP_S3_ACCESS_KEY": null,
+ "BACKUP_S3_ACCESS_KEY_ID": null,
+ "BACKUP_S3_BUCKET": null,
+ "BACKUP_S3_ENDPOINT": "https://s3.eu-west-3.amazonaws.com",
+ "BACKUP_SCHEDULE": null,
+ "BASIC_AUTH_ENABLED": null,
+ "BASIC_AUTH_PASSWORD": null,
+ "BASIC_AUTH_USERNAME": null,
+ "BROWSERLESS_CPU": "10m",
+ "BROWSERLESS_MEMORY": "200Mi",
+ "DOCKER_HUB_USERNAME": ,
+ "DOMAIN": "ecamp3.ch",
+ "FEATURE_CHECKLIST": true,
+ "FEATURE_DEVELOPER": true,
+ "FRONTEND_SENTRY_DSN": null,
+ "IMAGE_TAG": "my-version",
+ "JWT_PASSPHRASE": ,
+ "JWT_PRIVATE_KEY": ,
+ "JWT_PUBLIC_KEY": ,
+ "LOGIN_INFO_TEXT_KEY": null,
+ "NAME": "my-ecamp",
+ "PHP_CPU": "10m",
+ "PHP_MEMORY": "120Mi",
+ "POSTGRES_ADMIN_URL": ,
+ "POSTGRES_URL": ,
+ "PRINT_CPU": "10m",
+ "PRINT_MEMORY": "150Mi",
+ "PRINT_SENTRY_DSN": null,
+ "RESTORE_ENCRYPTION_KEY": null,
+ "RESTORE_INVITE_TO_INTERESTING_CAMPS": false,
+ "RESTORE_S3_ACCESS_KEY": null,
+ "RESTORE_S3_ACCESS_KEY_ID": null,
+ "RESTORE_S3_BUCKET": null,
+ "RESTORE_S3_ENDPOINT": null,
+ "RESTORE_SOURCE_APP": null,
+ "RESTORE_SOURCE_FILE": null,
+ "SENTRY_AUTH_TOKEN": null
+}
diff --git a/.helm/ecamp3/helmfile.yaml b/.helm/ecamp3/helmfile.yaml
new file mode 100644
index 0000000000..3d63810b60
--- /dev/null
+++ b/.helm/ecamp3/helmfile.yaml
@@ -0,0 +1,10 @@
+environments:
+ default:
+ values:
+ - ./env.yaml
+---
+releases:
+ - name: ""
+ chart: .
+ values:
+ - ./values.yaml.gotmpl
diff --git a/.helm/ecamp3/templates/frontend_configmap.yaml b/.helm/ecamp3/templates/frontend_configmap.yaml
index d58504aa32..589b6aa801 100644
--- a/.helm/ecamp3/templates/frontend_configmap.yaml
+++ b/.helm/ecamp3/templates/frontend_configmap.yaml
@@ -16,6 +16,7 @@ data:
SENTRY_ENVIRONMENT: '{{ .Values.domain }}',
{{- else }}
SENTRY_FRONTEND_DSN: null,
+ SENTRY_ENVIRONMENT: '{{ .Values.domain }}',
{{- end }}
DEPLOYMENT_TIME: '{{ .Values.deploymentTime }}',
VERSION: '{{ .Values.deployedVersion }}',
diff --git a/.helm/ecamp3/values.yaml b/.helm/ecamp3/values.yaml
deleted file mode 100644
index f59ee67a82..0000000000
--- a/.helm/ecamp3/values.yaml
+++ /dev/null
@@ -1,263 +0,0 @@
-# Default values for ecamp3.
-# Declare configuration values to be passed into the templates.
-
-chartNameOverride: ""
-imageTag: "latest"
-imagePullSecrets: []
-deploymentTime: ""
-domain:
-deployedVersion: "devel"
-versionLinkTemplate: 'https://github.com/ecamp/ecamp3/commit/{version}'
-termsOfServiceLinkTemplate: # 'https://ecamp3.ch/{lang}/tos'
-newsLink: # 'https://ecamp3.ch/blog'
-helpLink: # 'https://ecamp3.ch/faq'
-
-# enable/disable feature across the complete deployment
-featureToggle:
- developer: false # enables various tools/features foreseen for development deployments (language switcher, form controls view, performance measurement view, etc.)
- checklist: false # enables checklist feature in frontend
-
-api:
- authenticationTokenTtl:
- subpath: "/api"
- image:
- repository: "docker.io/ecamp/ecamp3-api"
- pullPolicy: IfNotPresent
- # Overrides the image tag whose shared default is .Values.imageTag
- tag:
- service:
- type: ClusterIP
- port: 3001
- metrics:
- port: 2019
- replicaCount: 1
- appEnv: prod
- appDebug: "0"
- appSecret: ""
- corsAllowOrigin: "^https://.*?\\.chart-example\\.local$"
- trustedProxies:
- - "::1"
- - "127.0.0.1"
- - "10.0.0.0/8"
- - "172.16.0.0/12"
- - "192.168.0.0/16"
- caddyGlobalOptions: ""
- sentryDsn:
- jwt:
- passphrase:
- privateKey:
- publicKey:
- oauth:
- google:
- clientId: '889440431087-ueuhpadf2g7h5ucdke92mvfaf4l779m4.apps.googleusercontent.com'
- clientSecret: 'HNaD1FNO-a1qliacIrIfcGqO'
- pbsmidata:
- clientId: '2a955efdaaac73f665b29ec182cd9a114db01675ced710a464d33d10f58be600'
- clientSecret: '00a23e48bcb776d453b255428ffe810643db7155a9f3d743d7edf52eac400580'
- baseUrl: 'https://pbs.puzzle.ch'
- cevidb:
- clientId: 'raT1QFf6TOQzpn3yVH-My6YLrmsvOrfMhYypxzjPMWk'
- clientSecret: 'fTxMrzjBn3gPGg3eB0bNMmjRqg4ccs3_su7CaTXtljE'
- baseUrl: 'https://cevi.puzzle.ch'
- jubladb:
- clientId: 'WrKABq7GwmC6h1F0W73OGX_fOTHWWXnKXfrPMHOdQWY'
- clientSecret: 'oQ164RDMIAocL6PhmCoeT1Ymcg-7WcOJZdxCnIph5gM'
- baseUrl: 'https://jubla.puzzle.ch'
- num_threads:
- resources:
- requests:
- cpu: 10m
- memory: 120Mi
-
-frontend:
- image:
- repository: "docker.io/ecamp/ecamp3-frontend"
- pullPolicy: IfNotPresent
- # Overrides the image tag whose shared default is .Values.imageTag
- tag:
- sentryDsn:
- service:
- type: ClusterIP
- port: 3000
- replicaCount: 1
- resources:
- requests:
- cpu: 10m
- memory: 10Mi
- loginInfoTextKey: 'prod'
-
-print:
- subpath: "/print"
- ingress:
- readTimeoutSeconds:
- image:
- repository: "docker.io/ecamp/ecamp3-print"
- pullPolicy: IfNotPresent
- # Overrides the image tag whose shared default is .Values.imageTag
- tag:
- sentryDsn:
- browserWsEndpoint:
- service:
- type: ClusterIP
- port: 3003
- replicaCount: 1
- renderHTMLTimeoutMs:
- renderPDFTimeoutMs:
- resources:
- requests:
- cpu: 10m
- memory: 150Mi
-
-browserless:
- enabled: true
- domain:
- image:
- repository: "ghcr.io/browserless/chrome"
- pullPolicy: IfNotPresent
- # renovate: datasource=docker depName=ghcr.io/browserless/chrome
- tag: "v2.34.1"
- service:
- type: ClusterIP
- port: 3000
- maxConcurrentSessions: 1
- connectionTimeout: 30000
- maxQueueLength: 5
- resources:
- requests:
- cpu: 10m
- memory: 200Mi
-
-mail:
- dummyEnabled: true
- # If using a real mail server, the connection uri to send emails to
- dsn: # smtp://myuser:mypass@mymailserver:1025
- # If the dummy mail server is enabled, the domain where the web interface is available
- subpath: "/mail"
- image:
- repository: "docker.io/maildev/maildev"
- pullPolicy: IfNotPresent
- # Overrides the image tag whose shared default is .Values.imageTag
- tag: "latest"
- service:
- type: ClusterIP
- port: 1080
- resources:
- requests:
- cpu: 10m
- memory: 10Mi
-
-postgresql:
- url:
- dropDBOnUninstall: false
- # An uri with privileges to create and drop a database for the application.
- # Can be left empty if the required database specified in postgresql.url already exists.
- adminUrl:
- dbBackupRestoreImage:
- repository: "docker.io/ecamp/ecamp3-db-backup-restore"
- pullPolicy: IfNotPresent
- # Overrides the image tag whose shared default is .Values.imageTag
- tag:
- backup:
- schedule:
- s3:
- endpoint:
- bucket:
- accessKeyId:
- accessKey:
- encryptionKey:
- restore:
- # null => no restore, latest => restore latest backup, s3 key => restore this backup
- sourceFile:
- sourceAppName:
- s3:
- endpoint:
- bucket:
- accessKeyId:
- accessKey:
- inviteSupportAccountToInterestingCamps: false
- encryptionKey:
-
-recaptcha:
- siteKey:
- secret:
-
-serviceAccount:
- # Specifies whether a service account should be created
- create: true
- # Annotations to add to the service account
- annotations: {}
- # The name of the service account to use.
- # If not set and create is true, a name is generated using the fullname template
- name: ""
-
-podSecurityContext: {}
- # fsGroup: 2000
-
-securityContext: {}
- # capabilities:
- # drop:
- # - ALL
- # readOnlyRootFilesystem: true
- # runAsNonRoot: true
- # runAsUser: 1000
-
-ingress:
- enabled: true
- basicAuth:
- enabled: false
- username:
- password:
- annotations:
- # kubernetes.io/tls-acme: "true"
- className: nginx
- tls:
-
-apiCache:
- enabled: false
- image:
- repository: "docker.io/ecamp/ecamp3-varnish"
- pullPolicy: IfNotPresent
- # Overrides the image tag whose shared default is .Values.imageTag
- tag:
- service:
- type: ClusterIP
- ports:
- http: 3000
- purge: 3001
- varnishSize: 50M
- varnishHttpPort: 8080
- varnishPurgePort: 8081
- sendXKeyHeadersDownstream: false
- resources:
- requests:
- cpu: 10m
- memory: 100Mi
- logging:
- enabled: true
- customOutput: '{ "received_at": "%t", "varnish_side": "%{Varnish:side}x", "method": "%m", "host": "%h", "url": "%U", "query": "%q", "response_bytes": %b, "time_taken": %D, "status": %s, "handling": "%{Varnish:handling}x", "response_reason": "%{VSL:RespReason}x", "fetch_error": "%{VSL:FetchError}x", "httpRequest": { "requestMethod": "%m", "requestUrl": "%{Host}i%U%q", "status": "%s" } }'
- customOutputJsonFormat: true
- # Timeout before returning error on initial VSM connection.
- # If set the VSM connection is retried every 0.5 seconds for this many seconds.
- # If zero the connection is attempted only once and will fail immediately if unsuccessful.
- # If set to "off", the connection will not fail, allowing the utility to start and wait indefinitely for the Varnish instance to appear.
- # Defaults to "off" in this case.
- timeout: "off"
- resources:
- requests:
- cpu: 10m
- memory: 20Mi
- prometheus:
- enabled: true
- path: "/metrics"
- port: 9131
- resources:
- requests:
- cpu: 10m
- memory: 20Mi
-
-autoscaling:
- enabled: false
- minReplicas: 1
- maxReplicas: 5
- targetCPUUtilizationPercentage: 80
- # targetMemoryUtilizationPercentage: 80
diff --git a/.helm/ecamp3/values.yaml.gotmpl b/.helm/ecamp3/values.yaml.gotmpl
new file mode 100644
index 0000000000..cf4a546790
--- /dev/null
+++ b/.helm/ecamp3/values.yaml.gotmpl
@@ -0,0 +1,280 @@
+{{- /* Input parameters from helmfile env.yaml */ -}}
+{{- $name := .Environment.Values | getOrNil "NAME" | required "NAME is required" -}}
+{{- $domain := .Environment.Values | getOrNil "DOMAIN" | required "DOMAIN is required" -}}
+{{- $dockerUser := .Environment.Values | getOrNil "DOCKER_HUB_USERNAME" | required "DOCKER_HUB_USERNAME is required" -}}
+{{- $imageTag := .Environment.Values | getOrNil "IMAGE_TAG" | required "IMAGE_TAG is required" -}}
+
+# Default values for ecamp3.
+# Declare configuration values to be passed into the templates.
+
+chartNameOverride: ""
+imageTag: {{ $imageTag | quote }}
+imagePullSecrets: []
+deploymentTime: {{ exec "date" (list "-u" "+%s") | trim | quote }}
+domain: {{ printf "%s.%s" $name $domain | quote }}
+deployedVersion: {{ (exec "git" (list "rev-parse" "--short" "HEAD")) | trim | quote }}
+versionLinkTemplate: 'https://github.com/ecamp/ecamp3/commit/{version}'
+termsOfServiceLinkTemplate: 'https://ecamp3.ch/{lang}/tos'
+newsLink: 'https://ecamp3.ch/blog'
+helpLink: 'https://ecamp3.ch/faq'
+
+# enable/disable feature across the complete deployment
+featureToggle:
+ developer: {{ .Environment.Values | getOrNil "FEATURE_DEVELOPER" | default false }}
+ checklist: {{ .Environment.Values | getOrNil "FEATURE_CHECKLIST" | default false }}
+
+api:
+ dataMigrationsDir: {{ .Environment.Values | getOrNil "API_DATA_MIGRATIONS_DIR" | default "prod-data" }}
+ subpath: "/api"
+ image:
+ repository: "docker.io/{{ $dockerUser }}/ecamp3-api"
+ pullPolicy: IfNotPresent
+ # Overrides the image tag whose shared default is .Values.imageTag
+ tag:
+ service:
+ type: ClusterIP
+ port: 3001
+ metrics:
+ port: 2019
+ replicaCount: 1
+ appEnv: prod
+ appDebug: "0"
+ appSecret: {{ .Environment.Values | getOrNil "API_APP_SECRET" }}
+ corsAllowOrigin: "^https://.*?\\.chart-example\\.local$"
+ trustedProxies:
+ - "::1"
+ - "127.0.0.1"
+ - "10.0.0.0/8"
+ - "172.16.0.0/12"
+ - "192.168.0.0/16"
+ caddyGlobalOptions: ""
+ sentryDsn: {{ .Environment.Values | getOrNil "API_SENTRY_DSN" | quote }}
+ jwt:
+ passphrase: {{ .Environment.Values | getOrNil "JWT_PASSPHRASE" | required "JWT_PASSPHRASE is required" }}
+ privateKey: |
+ {{- .Environment.Values | getOrNil "JWT_PRIVATE_KEY" | required "JWT_PRIVATE_KEY is required" | nindent 6 }}
+ publicKey: |
+ {{- .Environment.Values | getOrNil "JWT_PUBLIC_KEY" | required "JWT_PUBLIC_KEY is required" | nindent 6 }}
+ oauth:
+ google:
+ clientId: {{ .Environment.Values | getOrNil "OAUTH_GOOGLE_CLIENT_ID" | default "889440431087-ueuhpadf2g7h5ucdke92mvfaf4l779m4.apps.googleusercontent.com" | quote }}
+ clientSecret: {{ .Environment.Values | getOrNil "OAUTH_GOOGLE_CLIENT_SECRET" | default "HNaD1FNO-a1qliacIrIfcGqO" | quote }}
+ pbsmidata:
+ clientId: {{ .Environment.Values | getOrNil "OAUTH_PBSMIDATA_CLIENT_ID" | default "2a955efdaaac73f665b29ec182cd9a114db01675ced710a464d33d10f58be600" | quote }}
+ clientSecret: {{ .Environment.Values | getOrNil "OAUTH_PBSMIDATA_CLIENT_SECRET" | default "00a23e48bcb776d453b255428ffe810643db7155a9f3d743d7edf52eac400580" | quote }}
+ baseUrl: {{ .Environment.Values | getOrNil "OAUTH_PBSMIDATA_BASE_URL" | default "https://pbs.puzzle.ch" | quote }}
+ cevidb:
+ clientId: {{ .Environment.Values | getOrNil "OAUTH_CEVIDB_CLIENT_ID" | default "raT1QFf6TOQzpn3yVH-My6YLrmsvOrfMhYypxzjPMWk" | quote }}
+ clientSecret: {{ .Environment.Values | getOrNil "OAUTH_CEVIDB_CLIENT_SECRET" | default "fTxMrzjBn3gPGg3eB0bNMmjRqg4ccs3_su7CaTXtljE" | quote }}
+ baseUrl: {{ .Environment.Values | getOrNil "OAUTH_CEVIDB_BASE_URL" | default "https://cevi.puzzle.ch" | quote }}
+ jubladb:
+ clientId: {{ .Environment.Values | getOrNil "OAUTH_JUBLADB_CLIENT_ID" | default "WrKABq7GwmC6h1F0W73OGX_fOTHWWXnKXfrPMHOdQWY" | quote }}
+ clientSecret: {{ .Environment.Values | getOrNil "OAUTH_JUBLADB_CLIENT_SECRET" | default "oQ164RDMIAocL6PhmCoeT1Ymcg-7WcOJZdxCnIph5gM" | quote }}
+ baseUrl: {{ .Environment.Values | getOrNil "OAUTH_JUBLADB_BASE_URL" | default "https://jubla.puzzle.ch" | quote }}
+ num_threads: {{ .Environment.Values | getOrNil "API_NUM_THREADS" | default false }}
+ resources:
+ requests:
+ cpu: {{ .Environment.Values | getOrNil "PHP_CPU" | default "1000m" | quote }}
+ memory: {{ .Environment.Values | getOrNil "PHP_MEMORY" | default "500Mi" | quote }}
+ {{- $phpCpuLimit := .Environment.Values | get "PHP_CPULIMIT" "1900m" -}}
+ {{ if not ( $phpCpuLimit | empty ) }}
+ limits:
+ cpu: {{ $phpCpuLimit | quote }}
+ {{ end }}
+
+frontend:
+ image:
+ repository: "docker.io/{{ $dockerUser }}/ecamp3-frontend"
+ pullPolicy: IfNotPresent
+ # Overrides the image tag whose shared default is .Values.imageTag
+ tag:
+ sentryDsn: {{ .Environment.Values | getOrNil "FRONTEND_SENTRY_DSN" | quote }}
+ service:
+ type: ClusterIP
+ port: 3000
+ replicaCount: 1
+ resources:
+ requests:
+ cpu: {{ .Environment.Values | getOrNil "FRONTEND_CPU" | default "50m" | quote }}
+ memory: {{ .Environment.Values | getOrNil "FRONTEND_MEMORY" | default "10Mi" | quote }}
+ loginInfoTextKey: {{ .Environment.Values | get "LOGIN_INFO_TEXT_KEY" | default "prod" | quote }}
+
+print:
+ subpath: "/print"
+ ingress:
+ readTimeoutSeconds: {{ .Environment.Values | getOrNil "PRINT_INGRESS_READ_TIMEOUT_SECONDS" | quote }}
+ image:
+ repository: "docker.io/{{ $dockerUser }}/ecamp3-print"
+ pullPolicy: IfNotPresent
+ # Overrides the image tag whose shared default is .Values.imageTag
+ tag:
+ sentryDsn: {{ .Environment.Values | getOrNil "PRINT_SENTRY_DSN" | quote }}
+ browserWsEndpoint: {{ .Environment.Values | getOrNil "BROWSER_WS_ENDPOINT" | quote }}
+ service:
+ type: ClusterIP
+ port: 3003
+ replicaCount: 1
+ renderHTMLTimeoutMs: {{ .Environment.Values | getOrNil "PRINT_RENDER_HTML_TIMEOUT_MS" }}
+ renderPDFTimeoutMs: {{ .Environment.Values | getOrNil "PRINT_RENDER_PDF_TIMEOUT_MS" }}
+ resources:
+ requests:
+ cpu: {{ .Environment.Values | getOrNil "PRINT_CPU" | default "300m" | quote }}
+ memory: {{ .Environment.Values | getOrNil "PRINT_MEMORY" | default "150Mi" | quote }}
+
+browserless:
+ enabled: true
+ domain:
+ image:
+ repository: "ghcr.io/browserless/chrome"
+ pullPolicy: IfNotPresent
+ # renovate: datasource=docker depName=ghcr.io/browserless/chrome
+ tag: "v2.34.1"
+ service:
+ type: ClusterIP
+ port: 3000
+ maxConcurrentSessions: {{ .Environment.Values | getOrNil "BROWSERLESS_MAXCONCURRENTSESSIONS" | default 1 }}
+ connectionTimeout: {{ .Environment.Values | getOrNil "BROWSERLESS_CONNECTION_TIMEOUT_MS" | default "30000" | quote }}
+ maxQueueLength: {{ .Environment.Values | getOrNil "BROWSERLESS_MAXQUEUELENGTH" | default 5 }}
+ resources:
+ requests:
+ cpu: {{ .Environment.Values | getOrNil "BROWSERLESS_CPU" | default "500m" }}
+ memory: {{ .Environment.Values | getOrNil "BROWSERLESS_MEMORY" | default "800Mi" }}
+
+mail:
+ dummyEnabled: {{ not (.Environment.Values | getOrNil "MAILER_DSN") }}
+ # If using a real mail server, the connection uri to send emails to
+ dsn: {{ .Environment.Values | getOrNil "MAILER_DSN" | quote }}
+ # If the dummy mail server is enabled, the domain where the web interface is available
+ subpath: "/mail"
+ image:
+ repository: "docker.io/maildev/maildev"
+ pullPolicy: IfNotPresent
+ # Overrides the image tag whose shared default is .Values.imageTag
+ tag: "latest"
+ service:
+ type: ClusterIP
+ port: 1080
+ resources:
+ requests:
+ cpu: 10m
+ memory: 10Mi
+
+postgresql:
+ url: "{{ .Environment.Values | getOrNil "POSTGRES_URL" | required "POSTGRES_URL is required" }}/ecamp3{{ $name }}?sslmode=require"
+ dropDBOnUninstall: {{ .Environment.Values | getOrNil "DROP_DB_ON_UNINSTALL" | default false }}
+ # An uri with privileges to create and drop a database for the application.
+ # Can be left empty if the required database specified in postgresql.url already exists.
+ {{ if .Environment.Values | getOrNil "POSTGRES_ADMIN_URL" | default false }}
+ adminUrl: "{{ .Environment.Values | getOrNil "POSTGRES_ADMIN_URL" }}/ecamp3{{ $name }}?sslmode=require"
+ {{ else }}
+ adminUrl:
+ {{ end }}
+ dbBackupRestoreImage:
+ repository: "docker.io/{{ $dockerUser }}/ecamp3-db-backup-restore"
+ pullPolicy: IfNotPresent
+ # Overrides the image tag whose shared default is .Values.imageTag
+ tag:
+ backup:
+ schedule: {{ .Environment.Values | getOrNil "BACKUP_SCHEDULE" | quote }}
+ s3:
+ endpoint: {{ .Environment.Values | getOrNil "BACKUP_S3_ENDPOINT" | quote }}
+ bucket: {{ .Environment.Values | getOrNil "BACKUP_S3_BUCKET" | quote }}
+ accessKeyId: {{ .Environment.Values | getOrNil "BACKUP_S3_ACCESS_KEY_ID" | quote }}
+ accessKey: {{ .Environment.Values | getOrNil "BACKUP_S3_ACCESS_KEY" | quote }}
+ encryptionKey: {{ .Environment.Values | getOrNil "BACKUP_ENCRYPTION_KEY" | quote }}
+ restore:
+ # null => no restore, latest => restore latest backup, s3 key => restore this backup
+ sourceFile: {{ .Environment.Values | getOrNil "RESTORE_SOURCE_FILE" | quote }}
+ sourceAppName: {{ .Environment.Values | getOrNil "RESTORE_SOURCE_APP" | quote }}
+ s3:
+ endpoint: {{ .Environment.Values | getOrNil "RESTORE_S3_ENDPOINT" | quote }}
+ bucket: {{ .Environment.Values | getOrNil "RESTORE_S3_BUCKET" | quote }}
+ accessKeyId: {{ .Environment.Values | getOrNil "RESTORE_S3_ACCESS_KEY_ID" | quote }}
+ accessKey: {{ .Environment.Values | getOrNil "RESTORE_S3_ACCESS_KEY" | quote }}
+ inviteSupportAccountToInterestingCamps: {{ .Environment.Values | get "RESTORE_INVITE_TO_INTERESTING_CAMPS" false }}
+ encryptionKey: {{ .Environment.Values | getOrNil "RESTORE_ENCRYPTION_KEY" | quote }}
+
+recaptcha:
+ siteKey: {{ .Environment.Values | getOrNil "RECAPTCHA_SITE_KEY" | quote }}
+ secret: {{ .Environment.Values | getOrNil "RECAPTCHA_SECRET" | quote }}
+
+serviceAccount:
+ # Specifies whether a service account should be created
+ create: true
+ # Annotations to add to the service account
+ annotations: {}
+ # The name of the service account to use.
+ # If not set and create is true, a name is generated using the fullname template
+ name: ""
+
+podSecurityContext: {}
+# fsGroup: 2000
+
+securityContext: {}
+ # capabilities:
+ # drop:
+ # - ALL
+ # readOnlyRootFilesystem: true
+ # runAsNonRoot: true
+# runAsUser: 1000
+
+ingress:
+ enabled: true
+ basicAuth:
+ enabled: {{ .Environment.Values | getOrNil "BASIC_AUTH_ENABLED" | default false }}
+ username: {{ .Environment.Values | getOrNil "BASIC_AUTH_USERNAME" | quote }}
+ password: {{ .Environment.Values | getOrNil "BASIC_AUTH_PASSWORD" | quote }}
+ annotations:
+ # kubernetes.io/tls-acme: "true"
+ className: nginx
+ tls:
+
+apiCache:
+ enabled: {{ .Environment.Values | get "API_CACHE_ENABLED" false }}
+ image:
+ repository: "docker.io/{{ $dockerUser }}/ecamp3-varnish"
+ pullPolicy: IfNotPresent
+ # Overrides the image tag whose shared default is .Values.imageTag
+ tag:
+ service:
+ type: ClusterIP
+ ports:
+ http: 3000
+ purge: 3001
+ varnishSize: 50M
+ varnishHttpPort: 8080
+ varnishPurgePort: 8081
+ sendXKeyHeadersDownstream: {{ .Environment.Values | get "SEND_XKEY_HEADERS_DOWNSTREAM" false }}
+ resources:
+ requests:
+ cpu: {{ .Environment.Values | getOrNil "API_CACHE_CPU" | default "10m" }}
+ memory: {{ .Environment.Values | getOrNil "API_CACHE_MEMORY" | default "100Mi" }}
+ logging:
+ enabled: true
+ customOutput: '{ "received_at": "%t", "varnish_side": "%{Varnish:side}x", "method": "%m", "host": "%h", "url": "%U", "query": "%q", "response_bytes": %b, "time_taken": %D, "status": %s, "handling": "%{Varnish:handling}x", "response_reason": "%{VSL:RespReason}x", "fetch_error": "%{VSL:FetchError}x", "httpRequest": { "requestMethod": "%m", "requestUrl": "%{Host}i%U%q", "status": "%s" } }'
+ customOutputJsonFormat: true
+ # Timeout before returning error on initial VSM connection.
+ # If set the VSM connection is retried every 0.5 seconds for this many seconds.
+ # If zero the connection is attempted only once and will fail immediately if unsuccessful.
+ # If set to "off", the connection will not fail, allowing the utility to start and wait indefinitely for the Varnish instance to appear.
+ # Defaults to "off" in this case.
+ timeout: "off"
+ resources:
+ requests:
+ cpu: 10m
+ memory: 20Mi
+ prometheus:
+ enabled: true
+ path: "/metrics"
+ port: 9131
+ resources:
+ requests:
+ cpu: 10m
+ memory: 20Mi
+
+autoscaling:
+ enabled: {{ .Environment.Values | get "AUTOSCALING_ENABLED" true }}
+ minReplicas: 1
+ maxReplicas: 5
+ targetCPUUtilizationPercentage: {{ .Environment.Values | getOrNil "AUTOSCALING_TARGETCPU" | default 90 }}
+ # targetMemoryUtilizationPercentage: 80
diff --git a/.helm/generate-jwt-values.sh b/.helm/generate-jwt-values.sh
new file mode 100755
index 0000000000..439b6bbb52
--- /dev/null
+++ b/.helm/generate-jwt-values.sh
@@ -0,0 +1,35 @@
+#!/bin/bash
+set -euo pipefail
+
+set -e
+
+SCRIPT_DIR=$(realpath "$(dirname "$0")")
+REPO_DIR=$(realpath "$SCRIPT_DIR"/..)
+
+TMP_DIR=$(mktemp -d)
+
+jwt_passphrase=$(uuidgen)
+echo -n "$jwt_passphrase" | openssl genpkey -out "$TMP_DIR"/private.pem -pass stdin -aes256 -algorithm rsa -pkeyopt rsa_keygen_bits:4096
+echo -n "$jwt_passphrase" | openssl pkey -in "$TMP_DIR"/private.pem -passin stdin -out "$TMP_DIR"/public.pem -pubout
+
+jwt_public_key=$(cat "$TMP_DIR"/public.pem)
+jwt_private_key=$(cat "$TMP_DIR"/private.pem)
+
+tmp="$TMP_DIR/tmp.yaml"
+
+json_file="$SCRIPT_DIR/ecamp3/env.yaml"
+
+if [ ! -f $json_file ]; then
+ cp "$SCRIPT_DIR/ecamp3/env.example.yaml" $json_file
+fi
+
+jq --arg v "$jwt_passphrase" '.JWT_PASSPHRASE = $v' < $json_file > "$tmp"
+mv "$tmp" $json_file
+
+jq --arg v "$jwt_public_key" '.JWT_PUBLIC_KEY = $v' < $json_file > "$tmp"
+mv "$tmp" $json_file
+
+jq --arg v "$jwt_private_key" '.JWT_PRIVATE_KEY = $v' < $json_file > "$tmp"
+mv "$tmp" $json_file
+
+rm -rf "$TMP_DIR"
diff --git a/.nvmrc b/.nvmrc
index 21651351e2..9e2934aa34 100644
--- a/.nvmrc
+++ b/.nvmrc
@@ -1 +1 @@
-24.10.0
+24.11.1
diff --git a/.ops/aws-setup/docker-compose.yml b/.ops/aws-setup/docker-compose.yml
index 34e07e5ae8..136ea5d7a7 100644
--- a/.ops/aws-setup/docker-compose.yml
+++ b/.ops/aws-setup/docker-compose.yml
@@ -1,6 +1,6 @@
services:
aws-setup:
- image: pulumi/pulumi-nodejs:3.203.0
+ image: pulumi/pulumi-nodejs:3.206.0
container_name: 'ecamp3-aws-setup'
volumes:
- ../../.prettierrc:/.prettierrc:delegated
@@ -13,7 +13,7 @@ services:
- AWS_DEFAULT_REGION=eu-west-3
aws-cli:
- image: amazon/aws-cli:2.31.22
+ image: amazon/aws-cli:2.31.33
container_name: 'ecamp3-aws-cli'
volumes:
- ./.aws:/root/.aws:delegated
diff --git a/.ops/aws-setup/package-lock.json b/.ops/aws-setup/package-lock.json
index e29b7f8071..ff8d98ba8d 100644
--- a/.ops/aws-setup/package-lock.json
+++ b/.ops/aws-setup/package-lock.json
@@ -6,21 +6,21 @@
"": {
"name": "ecamp-core",
"dependencies": {
- "@pulumi/aws": "7.8.0",
- "@pulumi/awsx": "3.0.0",
- "@pulumi/pulumi": "3.203.0"
+ "@pulumi/aws": "7.11.0",
+ "@pulumi/awsx": "3.0.1",
+ "@pulumi/pulumi": "3.206.0"
},
"devDependencies": {
- "@babel/eslint-parser": "7.28.4",
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
- "@types/node": "24.9.1",
- "eslint": "9.38.0",
+ "@babel/eslint-parser": "7.28.5",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
+ "@types/node": "24.10.0",
+ "eslint": "9.39.1",
"eslint-config-prettier": "10.1.8",
"eslint-plugin-n": "17.23.1",
"eslint-plugin-prettier": "5.5.4",
"eslint-plugin-promise": "7.2.1",
- "globals": "16.4.0",
+ "globals": "16.5.0",
"prettier": "3.6.2"
}
},
@@ -150,51 +150,50 @@
}
},
"node_modules/@aws-sdk/client-ecs": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-ecs/-/client-ecs-3.914.0.tgz",
- "integrity": "sha512-zPjh4Gqy4JHG+B30rbzR0iteXnSwSgnHyswhO68szURgzh06kPpLJQfPXtoKchgTf8cgCdEgksW0ughsZzQ0hA==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-ecs/-/client-ecs-3.930.0.tgz",
+ "integrity": "sha512-F3Y6ikTP5Ui+oYEc2iqNF3Xflarhoyu+lPxJP8BgfRYD6gpszH5/D0uDyVKnPPiXLwqntOiO0WSse0JEJq3BGQ==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/credential-provider-node": "3.914.0",
- "@aws-sdk/middleware-host-header": "3.914.0",
- "@aws-sdk/middleware-logger": "3.914.0",
- "@aws-sdk/middleware-recursion-detection": "3.914.0",
- "@aws-sdk/middleware-user-agent": "3.914.0",
- "@aws-sdk/region-config-resolver": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@aws-sdk/util-endpoints": "3.914.0",
- "@aws-sdk/util-user-agent-browser": "3.914.0",
- "@aws-sdk/util-user-agent-node": "3.914.0",
- "@smithy/config-resolver": "^4.4.0",
- "@smithy/core": "^3.17.0",
- "@smithy/fetch-http-handler": "^5.3.4",
- "@smithy/hash-node": "^4.2.3",
- "@smithy/invalid-dependency": "^4.2.3",
- "@smithy/middleware-content-length": "^4.2.3",
- "@smithy/middleware-endpoint": "^4.3.4",
- "@smithy/middleware-retry": "^4.4.4",
- "@smithy/middleware-serde": "^4.2.3",
- "@smithy/middleware-stack": "^4.2.3",
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/node-http-handler": "^4.4.2",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/smithy-client": "^4.9.0",
- "@smithy/types": "^4.8.0",
- "@smithy/url-parser": "^4.2.3",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/credential-provider-node": "3.930.0",
+ "@aws-sdk/middleware-host-header": "3.930.0",
+ "@aws-sdk/middleware-logger": "3.930.0",
+ "@aws-sdk/middleware-recursion-detection": "3.930.0",
+ "@aws-sdk/middleware-user-agent": "3.930.0",
+ "@aws-sdk/region-config-resolver": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@aws-sdk/util-endpoints": "3.930.0",
+ "@aws-sdk/util-user-agent-browser": "3.930.0",
+ "@aws-sdk/util-user-agent-node": "3.930.0",
+ "@smithy/config-resolver": "^4.4.3",
+ "@smithy/core": "^3.18.2",
+ "@smithy/fetch-http-handler": "^5.3.6",
+ "@smithy/hash-node": "^4.2.5",
+ "@smithy/invalid-dependency": "^4.2.5",
+ "@smithy/middleware-content-length": "^4.2.5",
+ "@smithy/middleware-endpoint": "^4.3.9",
+ "@smithy/middleware-retry": "^4.4.9",
+ "@smithy/middleware-serde": "^4.2.5",
+ "@smithy/middleware-stack": "^4.2.5",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/node-http-handler": "^4.4.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/smithy-client": "^4.9.5",
+ "@smithy/types": "^4.9.0",
+ "@smithy/url-parser": "^4.2.5",
"@smithy/util-base64": "^4.3.0",
"@smithy/util-body-length-browser": "^4.2.0",
"@smithy/util-body-length-node": "^4.2.1",
- "@smithy/util-defaults-mode-browser": "^4.3.3",
- "@smithy/util-defaults-mode-node": "^4.2.5",
- "@smithy/util-endpoints": "^3.2.3",
- "@smithy/util-middleware": "^4.2.3",
- "@smithy/util-retry": "^4.2.3",
+ "@smithy/util-defaults-mode-browser": "^4.3.8",
+ "@smithy/util-defaults-mode-node": "^4.2.11",
+ "@smithy/util-endpoints": "^3.2.5",
+ "@smithy/util-middleware": "^4.2.5",
+ "@smithy/util-retry": "^4.2.5",
"@smithy/util-utf8": "^4.2.0",
- "@smithy/util-waiter": "^4.2.3",
- "@smithy/uuid": "^1.1.0",
+ "@smithy/util-waiter": "^4.2.5",
"tslib": "^2.6.2"
},
"engines": {
@@ -202,47 +201,47 @@
}
},
"node_modules/@aws-sdk/client-sso": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.914.0.tgz",
- "integrity": "sha512-83Xp8Wl7RDWg/iIYL8dmrN9DN7qu7fcUzDC9LyMhDN8cAEACykN/i4Fk45UHRCejL9Sjxu4wsQzxRYp1smQ95g==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.930.0.tgz",
+ "integrity": "sha512-sASqgm1iMLcmi+srSH9WJuqaf3GQAKhuB4xIJwkNEPUQ+yGV8HqErOOHJLXXuTUyskcdtK+4uMaBRLT2ESm+QQ==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/middleware-host-header": "3.914.0",
- "@aws-sdk/middleware-logger": "3.914.0",
- "@aws-sdk/middleware-recursion-detection": "3.914.0",
- "@aws-sdk/middleware-user-agent": "3.914.0",
- "@aws-sdk/region-config-resolver": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@aws-sdk/util-endpoints": "3.914.0",
- "@aws-sdk/util-user-agent-browser": "3.914.0",
- "@aws-sdk/util-user-agent-node": "3.914.0",
- "@smithy/config-resolver": "^4.4.0",
- "@smithy/core": "^3.17.0",
- "@smithy/fetch-http-handler": "^5.3.4",
- "@smithy/hash-node": "^4.2.3",
- "@smithy/invalid-dependency": "^4.2.3",
- "@smithy/middleware-content-length": "^4.2.3",
- "@smithy/middleware-endpoint": "^4.3.4",
- "@smithy/middleware-retry": "^4.4.4",
- "@smithy/middleware-serde": "^4.2.3",
- "@smithy/middleware-stack": "^4.2.3",
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/node-http-handler": "^4.4.2",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/smithy-client": "^4.9.0",
- "@smithy/types": "^4.8.0",
- "@smithy/url-parser": "^4.2.3",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/middleware-host-header": "3.930.0",
+ "@aws-sdk/middleware-logger": "3.930.0",
+ "@aws-sdk/middleware-recursion-detection": "3.930.0",
+ "@aws-sdk/middleware-user-agent": "3.930.0",
+ "@aws-sdk/region-config-resolver": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@aws-sdk/util-endpoints": "3.930.0",
+ "@aws-sdk/util-user-agent-browser": "3.930.0",
+ "@aws-sdk/util-user-agent-node": "3.930.0",
+ "@smithy/config-resolver": "^4.4.3",
+ "@smithy/core": "^3.18.2",
+ "@smithy/fetch-http-handler": "^5.3.6",
+ "@smithy/hash-node": "^4.2.5",
+ "@smithy/invalid-dependency": "^4.2.5",
+ "@smithy/middleware-content-length": "^4.2.5",
+ "@smithy/middleware-endpoint": "^4.3.9",
+ "@smithy/middleware-retry": "^4.4.9",
+ "@smithy/middleware-serde": "^4.2.5",
+ "@smithy/middleware-stack": "^4.2.5",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/node-http-handler": "^4.4.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/smithy-client": "^4.9.5",
+ "@smithy/types": "^4.9.0",
+ "@smithy/url-parser": "^4.2.5",
"@smithy/util-base64": "^4.3.0",
"@smithy/util-body-length-browser": "^4.2.0",
"@smithy/util-body-length-node": "^4.2.1",
- "@smithy/util-defaults-mode-browser": "^4.3.3",
- "@smithy/util-defaults-mode-node": "^4.2.5",
- "@smithy/util-endpoints": "^3.2.3",
- "@smithy/util-middleware": "^4.2.3",
- "@smithy/util-retry": "^4.2.3",
+ "@smithy/util-defaults-mode-browser": "^4.3.8",
+ "@smithy/util-defaults-mode-node": "^4.2.11",
+ "@smithy/util-endpoints": "^3.2.5",
+ "@smithy/util-middleware": "^4.2.5",
+ "@smithy/util-retry": "^4.2.5",
"@smithy/util-utf8": "^4.2.0",
"tslib": "^2.6.2"
},
@@ -251,22 +250,22 @@
}
},
"node_modules/@aws-sdk/core": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.914.0.tgz",
- "integrity": "sha512-QMnWdW7PwxVfi5WBV2a6apM1fIizgBf1UHYbqd3e1sXk8B0d3tpysmLZdIx30OY066zhEo6FyAKLAeTSsGrALg==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.930.0.tgz",
+ "integrity": "sha512-E95pWT1ayfRWg0AW2KNOCYM7QQcVeOhMRLX5PXLeDKcdxP7s3x0LHG9t7a3nPbAbvYLRrhC7O2lLWzzMCpqjsw==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.914.0",
- "@aws-sdk/xml-builder": "3.914.0",
- "@smithy/core": "^3.17.0",
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/signature-v4": "^5.3.3",
- "@smithy/smithy-client": "^4.9.0",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/types": "3.930.0",
+ "@aws-sdk/xml-builder": "3.930.0",
+ "@smithy/core": "^3.18.2",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/signature-v4": "^5.3.5",
+ "@smithy/smithy-client": "^4.9.5",
+ "@smithy/types": "^4.9.0",
"@smithy/util-base64": "^4.3.0",
- "@smithy/util-middleware": "^4.2.3",
+ "@smithy/util-middleware": "^4.2.5",
"@smithy/util-utf8": "^4.2.0",
"tslib": "^2.6.2"
},
@@ -275,15 +274,15 @@
}
},
"node_modules/@aws-sdk/credential-provider-env": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.914.0.tgz",
- "integrity": "sha512-v7zeMsLkTB0/ZK6DGbM6QUNIeeEtNBd+4DHihXjsHKBKxBESKIJlWF5Bcj+pgCSWcFGClxmqL6NfWCFQ0WdtjQ==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.930.0.tgz",
+ "integrity": "sha512-5tJyxNQmm9C1XKeiWt/K67mUHtTiU2FxTkVsqVrzAMjNsF3uyA02kyTK70byh5n29oVR9XNValVEl6jk01ipYg==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -291,20 +290,20 @@
}
},
"node_modules/@aws-sdk/credential-provider-http": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.914.0.tgz",
- "integrity": "sha512-NXS5nBD0Tbk5ltjOAucdcx8EQQcFdVpCGrly56AIbznl0yhuG5Sxq4q2tUSJj9006eEXBK5rt52CdDixCcv3xg==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.930.0.tgz",
+ "integrity": "sha512-vw565GctpOPoRJyRvgqXM8U/4RG8wYEPfhe6GHvt9dchebw0OaFeW1mmSYpwEPkMhZs9Z808dkSPScwm8WZBKA==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/fetch-http-handler": "^5.3.4",
- "@smithy/node-http-handler": "^4.4.2",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/smithy-client": "^4.9.0",
- "@smithy/types": "^4.8.0",
- "@smithy/util-stream": "^4.5.3",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/fetch-http-handler": "^5.3.6",
+ "@smithy/node-http-handler": "^4.4.5",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/smithy-client": "^4.9.5",
+ "@smithy/types": "^4.9.0",
+ "@smithy/util-stream": "^4.5.6",
"tslib": "^2.6.2"
},
"engines": {
@@ -312,23 +311,23 @@
}
},
"node_modules/@aws-sdk/credential-provider-ini": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.914.0.tgz",
- "integrity": "sha512-RcL02V3EE8DRuu8qb5zoV+aVWbUIKZRA3NeHsWKWCD25nxQUYF4CrbQizWQ91vda5+e6PysGGLYROOzapX3Xmw==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.930.0.tgz",
+ "integrity": "sha512-Ua4T5MWjm7QdHi7ZSUvnPBFwBZmLFP/IEGCLacPKbUT1sQO30hlWuB/uQOj0ns4T6p7V4XsM8bz5+xsW2yRYbQ==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/credential-provider-env": "3.914.0",
- "@aws-sdk/credential-provider-http": "3.914.0",
- "@aws-sdk/credential-provider-process": "3.914.0",
- "@aws-sdk/credential-provider-sso": "3.914.0",
- "@aws-sdk/credential-provider-web-identity": "3.914.0",
- "@aws-sdk/nested-clients": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/credential-provider-imds": "^4.2.3",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/credential-provider-env": "3.930.0",
+ "@aws-sdk/credential-provider-http": "3.930.0",
+ "@aws-sdk/credential-provider-process": "3.930.0",
+ "@aws-sdk/credential-provider-sso": "3.930.0",
+ "@aws-sdk/credential-provider-web-identity": "3.930.0",
+ "@aws-sdk/nested-clients": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/credential-provider-imds": "^4.2.5",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -336,22 +335,22 @@
}
},
"node_modules/@aws-sdk/credential-provider-node": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.914.0.tgz",
- "integrity": "sha512-SDUvDKqsJ5UPDkem0rq7/bdZtXKKTnoBeWvRlI20Zuv4CLdYkyIGXU9sSA2mrhsZ/7bt1cduTHpGd1n/UdBQEg==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.930.0.tgz",
+ "integrity": "sha512-LTx5G0PsL51hNCCzOIdacGPwqnTp3X2Ck8CjLL4Kz9FTR0mfY02qEJB5y5segU1hlge/WdQYxzBBMhtMUR2h8A==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/credential-provider-env": "3.914.0",
- "@aws-sdk/credential-provider-http": "3.914.0",
- "@aws-sdk/credential-provider-ini": "3.914.0",
- "@aws-sdk/credential-provider-process": "3.914.0",
- "@aws-sdk/credential-provider-sso": "3.914.0",
- "@aws-sdk/credential-provider-web-identity": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/credential-provider-imds": "^4.2.3",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/credential-provider-env": "3.930.0",
+ "@aws-sdk/credential-provider-http": "3.930.0",
+ "@aws-sdk/credential-provider-ini": "3.930.0",
+ "@aws-sdk/credential-provider-process": "3.930.0",
+ "@aws-sdk/credential-provider-sso": "3.930.0",
+ "@aws-sdk/credential-provider-web-identity": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/credential-provider-imds": "^4.2.5",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -359,16 +358,16 @@
}
},
"node_modules/@aws-sdk/credential-provider-process": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.914.0.tgz",
- "integrity": "sha512-34C3CYM3iAVcSg3cX4UfOwabWeTeowjZkqJbWgDZ+I/HNZ8+9YbVuJcOZL5fVhw242UclxlVlddNPNprluZKGg==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.930.0.tgz",
+ "integrity": "sha512-lqC4lepxgwR2uZp/JROTRjkHld4/FEpSgofmiIOAfUfDx0OWSg7nkWMMS/DzlMpODqATl9tO0DcvmIJ8tMbh6g==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -376,18 +375,18 @@
}
},
"node_modules/@aws-sdk/credential-provider-sso": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.914.0.tgz",
- "integrity": "sha512-LfuSyhwvb1qOWN+oN3zyq5D899RZVA0nUrx6czKpDJYarYG0FCTZPO5aPcyoNGAjUu8l+CYUvXcd9ZdZiwv3/A==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.930.0.tgz",
+ "integrity": "sha512-LIs2aaVoFfioRokR1R9SpLS9u8CmbHhrV/gpHO1ED41qNCujn23vAxRNQmWzJ2XoCxSTwvToiHD2i6CjPA6rHQ==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/client-sso": "3.914.0",
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/token-providers": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/client-sso": "3.930.0",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/token-providers": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -395,17 +394,17 @@
}
},
"node_modules/@aws-sdk/credential-provider-web-identity": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.914.0.tgz",
- "integrity": "sha512-49zJm5x48eG4kiu7/lUGYicwpOPA3lzkuxZ8tdegKKB9Imya6yxdATx4V5UcapFfX79xgpZr750zYHHqSX53Sw==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.930.0.tgz",
+ "integrity": "sha512-iIYF8GReLOp16yn2bnRWrc4UOW/vVLifqyRWZ3iAGe8NFzUiHBq+Nok7Edh+2D8zt30QOCOsWCZ31uRrPuXH8w==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/nested-clients": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/nested-clients": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -413,14 +412,14 @@
}
},
"node_modules/@aws-sdk/middleware-host-header": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.914.0.tgz",
- "integrity": "sha512-7r9ToySQ15+iIgXMF/h616PcQStByylVkCshmQqcdeynD/lCn2l667ynckxW4+ql0Q+Bo/URljuhJRxVJzydNA==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.930.0.tgz",
+ "integrity": "sha512-x30jmm3TLu7b/b+67nMyoV0NlbnCVT5DI57yDrhXAPCtdgM1KtdLWt45UcHpKOm1JsaIkmYRh2WYu7Anx4MG0g==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.914.0",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -428,13 +427,13 @@
}
},
"node_modules/@aws-sdk/middleware-logger": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.914.0.tgz",
- "integrity": "sha512-/gaW2VENS5vKvJbcE1umV4Ag3NuiVzpsANxtrqISxT3ovyro29o1RezW/Avz/6oJqjnmgz8soe9J1t65jJdiNg==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.930.0.tgz",
+ "integrity": "sha512-vh4JBWzMCBW8wREvAwoSqB2geKsZwSHTa0nSt0OMOLp2PdTYIZDi0ZiVMmpfnjcx9XbS6aSluLv9sKx4RrG46A==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.914.0",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -442,15 +441,15 @@
}
},
"node_modules/@aws-sdk/middleware-recursion-detection": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.914.0.tgz",
- "integrity": "sha512-yiAjQKs5S2JKYc+GrkvGMwkUvhepXDigEXpSJqUseR/IrqHhvGNuOxDxq+8LbDhM4ajEW81wkiBbU+Jl9G82yQ==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.930.0.tgz",
+ "integrity": "sha512-gv0sekNpa2MBsIhm2cjP3nmYSfI4nscx/+K9u9ybrWZBWUIC4kL2sV++bFjjUz4QxUIlvKByow3/a9ARQyCu7Q==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.914.0",
- "@aws/lambda-invoke-store": "^0.0.1",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/types": "3.930.0",
+ "@aws/lambda-invoke-store": "^0.1.1",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -458,17 +457,17 @@
}
},
"node_modules/@aws-sdk/middleware-user-agent": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.914.0.tgz",
- "integrity": "sha512-+grKWKg+htCpkileNOqm7LO9OrE9nVPv49CYbF7dXefQIdIhfQ0pvm+hdSUnh8GFLx86FKoJs2DZSBCYqgjQFw==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.930.0.tgz",
+ "integrity": "sha512-UUItqy02biaHoZDd1Z2CskFon3Lej15ZCIZzW4n2lsJmgLWNvz21jtFA8DQny7ZgCLAOOXI8YK3VLZptZWtIcg==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@aws-sdk/util-endpoints": "3.914.0",
- "@smithy/core": "^3.17.0",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@aws-sdk/util-endpoints": "3.930.0",
+ "@smithy/core": "^3.18.2",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -476,47 +475,47 @@
}
},
"node_modules/@aws-sdk/nested-clients": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.914.0.tgz",
- "integrity": "sha512-cktvDU5qsvtv9HqJ0uoPgqQ87pttRMZe33fdZ3NQmnkaT6O6AI7x9wQNW5bDH3E6rou/jYle9CBSea1Xum69rQ==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.930.0.tgz",
+ "integrity": "sha512-eEDjTVXNiDkoV0ZV+X+WV40GTpF70xZmDW13CQzQF7rzOC2iFjtTRU+F7MUhy/Vs+e9KvDgiuCDecITtaOXUNw==",
"license": "Apache-2.0",
"dependencies": {
"@aws-crypto/sha256-browser": "5.2.0",
"@aws-crypto/sha256-js": "5.2.0",
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/middleware-host-header": "3.914.0",
- "@aws-sdk/middleware-logger": "3.914.0",
- "@aws-sdk/middleware-recursion-detection": "3.914.0",
- "@aws-sdk/middleware-user-agent": "3.914.0",
- "@aws-sdk/region-config-resolver": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@aws-sdk/util-endpoints": "3.914.0",
- "@aws-sdk/util-user-agent-browser": "3.914.0",
- "@aws-sdk/util-user-agent-node": "3.914.0",
- "@smithy/config-resolver": "^4.4.0",
- "@smithy/core": "^3.17.0",
- "@smithy/fetch-http-handler": "^5.3.4",
- "@smithy/hash-node": "^4.2.3",
- "@smithy/invalid-dependency": "^4.2.3",
- "@smithy/middleware-content-length": "^4.2.3",
- "@smithy/middleware-endpoint": "^4.3.4",
- "@smithy/middleware-retry": "^4.4.4",
- "@smithy/middleware-serde": "^4.2.3",
- "@smithy/middleware-stack": "^4.2.3",
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/node-http-handler": "^4.4.2",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/smithy-client": "^4.9.0",
- "@smithy/types": "^4.8.0",
- "@smithy/url-parser": "^4.2.3",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/middleware-host-header": "3.930.0",
+ "@aws-sdk/middleware-logger": "3.930.0",
+ "@aws-sdk/middleware-recursion-detection": "3.930.0",
+ "@aws-sdk/middleware-user-agent": "3.930.0",
+ "@aws-sdk/region-config-resolver": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@aws-sdk/util-endpoints": "3.930.0",
+ "@aws-sdk/util-user-agent-browser": "3.930.0",
+ "@aws-sdk/util-user-agent-node": "3.930.0",
+ "@smithy/config-resolver": "^4.4.3",
+ "@smithy/core": "^3.18.2",
+ "@smithy/fetch-http-handler": "^5.3.6",
+ "@smithy/hash-node": "^4.2.5",
+ "@smithy/invalid-dependency": "^4.2.5",
+ "@smithy/middleware-content-length": "^4.2.5",
+ "@smithy/middleware-endpoint": "^4.3.9",
+ "@smithy/middleware-retry": "^4.4.9",
+ "@smithy/middleware-serde": "^4.2.5",
+ "@smithy/middleware-stack": "^4.2.5",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/node-http-handler": "^4.4.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/smithy-client": "^4.9.5",
+ "@smithy/types": "^4.9.0",
+ "@smithy/url-parser": "^4.2.5",
"@smithy/util-base64": "^4.3.0",
"@smithy/util-body-length-browser": "^4.2.0",
"@smithy/util-body-length-node": "^4.2.1",
- "@smithy/util-defaults-mode-browser": "^4.3.3",
- "@smithy/util-defaults-mode-node": "^4.2.5",
- "@smithy/util-endpoints": "^3.2.3",
- "@smithy/util-middleware": "^4.2.3",
- "@smithy/util-retry": "^4.2.3",
+ "@smithy/util-defaults-mode-browser": "^4.3.8",
+ "@smithy/util-defaults-mode-node": "^4.2.11",
+ "@smithy/util-endpoints": "^3.2.5",
+ "@smithy/util-middleware": "^4.2.5",
+ "@smithy/util-retry": "^4.2.5",
"@smithy/util-utf8": "^4.2.0",
"tslib": "^2.6.2"
},
@@ -525,14 +524,15 @@
}
},
"node_modules/@aws-sdk/region-config-resolver": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.914.0.tgz",
- "integrity": "sha512-KlmHhRbn1qdwXUdsdrJ7S/MAkkC1jLpQ11n+XvxUUUCGAJd1gjC7AjxPZUM7ieQ2zcb8bfEzIU7al+Q3ZT0u7Q==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.930.0.tgz",
+ "integrity": "sha512-KL2JZqH6aYeQssu1g1KuWsReupdfOoxD6f1as2VC+rdwYFUu4LfzMsFfXnBvvQWWqQ7rZHWOw1T+o5gJmg7Dzw==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.914.0",
- "@smithy/config-resolver": "^4.4.0",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/config-resolver": "^4.4.3",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -540,17 +540,17 @@
}
},
"node_modules/@aws-sdk/token-providers": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.914.0.tgz",
- "integrity": "sha512-wX8lL5OnCk/54eUPP1L/dCH+Gp/f3MjnHR6rNp+dbGs7+omUAub4dEbM/JMBE4Jsn5coiVgmgqx97Q5cRxh/EA==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.930.0.tgz",
+ "integrity": "sha512-K+fJFJXA2Tdx10WhhTm+xQmf1WDHu14rUutByyqx6W0iW2rhtl3YeRr188LWSU3/hpz7BPyvigaAb0QyRti6FQ==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/core": "3.914.0",
- "@aws-sdk/nested-clients": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/core": "3.930.0",
+ "@aws-sdk/nested-clients": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -558,12 +558,12 @@
}
},
"node_modules/@aws-sdk/types": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.914.0.tgz",
- "integrity": "sha512-kQWPsRDmom4yvAfyG6L1lMmlwnTzm1XwMHOU+G5IFlsP4YEaMtXidDzW/wiivY0QFrhfCz/4TVmu0a2aPU57ug==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.930.0.tgz",
+ "integrity": "sha512-we/vaAgwlEFW7IeftmCLlLMw+6hFs3DzZPJw7lVHbj/5HJ0bz9gndxEsS2lQoeJ1zhiiLqAqvXxmM43s0MBg0A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -571,15 +571,15 @@
}
},
"node_modules/@aws-sdk/util-endpoints": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.914.0.tgz",
- "integrity": "sha512-POUBUTjD7WQ/BVoUGluukCIkIDO12IPdwRAvUgFshfbaUdyXFuBllM/6DmdyeR3rJhXnBqe3Uy5e2eXbz/MBTw==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.930.0.tgz",
+ "integrity": "sha512-M2oEKBzzNAYr136RRc6uqw3aWlwCxqTP1Lawps9E1d2abRPvl1p1ztQmmXp1Ak4rv8eByIZ+yQyKQ3zPdRG5dw==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.914.0",
- "@smithy/types": "^4.8.0",
- "@smithy/url-parser": "^4.2.3",
- "@smithy/util-endpoints": "^3.2.3",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/types": "^4.9.0",
+ "@smithy/url-parser": "^4.2.5",
+ "@smithy/util-endpoints": "^3.2.5",
"tslib": "^2.6.2"
},
"engines": {
@@ -599,27 +599,27 @@
}
},
"node_modules/@aws-sdk/util-user-agent-browser": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.914.0.tgz",
- "integrity": "sha512-rMQUrM1ECH4kmIwlGl9UB0BtbHy6ZuKdWFrIknu8yGTRI/saAucqNTh5EI1vWBxZ0ElhK5+g7zOnUuhSmVQYUA==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.930.0.tgz",
+ "integrity": "sha512-q6lCRm6UAe+e1LguM5E4EqM9brQlDem4XDcQ87NzEvlTW6GzmNCO0w1jS0XgCFXQHjDxjdlNFX+5sRbHijwklg==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/types": "3.914.0",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/types": "^4.9.0",
"bowser": "^2.11.0",
"tslib": "^2.6.2"
}
},
"node_modules/@aws-sdk/util-user-agent-node": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.914.0.tgz",
- "integrity": "sha512-gTkLFUZiNPgJmeFCX8VJRmQWXKfF3Imm5IquFIR5c0sCBfhtMjTXZF0dHDW5BlceZ4tFPwfF9sCqWJ52wbFSBg==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.930.0.tgz",
+ "integrity": "sha512-tYc5uFKogn0vLukeZ6Zz2dR1/WiTjxZH7+Jjoce6aEYgRVfyrDje1POFb7YxhNZ7Pp1WzHCuwW2KgkmMoYVbxQ==",
"license": "Apache-2.0",
"dependencies": {
- "@aws-sdk/middleware-user-agent": "3.914.0",
- "@aws-sdk/types": "3.914.0",
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@aws-sdk/middleware-user-agent": "3.930.0",
+ "@aws-sdk/types": "3.930.0",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -635,12 +635,12 @@
}
},
"node_modules/@aws-sdk/xml-builder": {
- "version": "3.914.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.914.0.tgz",
- "integrity": "sha512-k75evsBD5TcIjedycYS7QXQ98AmOtbnxRJOPtCo0IwYRmy7UvqgS/gBL5SmrIqeV6FDSYRQMgdBxSMp6MLmdew==",
+ "version": "3.930.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.930.0.tgz",
+ "integrity": "sha512-YIfkD17GocxdmlUVc3ia52QhcWuRIUJonbF8A2CYfcWNV3HzvAqpcPeC0bYUhkK+8e8YO1ARnLKZQE0TlwzorA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"fast-xml-parser": "5.2.5",
"tslib": "^2.6.2"
},
@@ -649,9 +649,9 @@
}
},
"node_modules/@aws/lambda-invoke-store": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.0.1.tgz",
- "integrity": "sha512-ORHRQ2tmvnBXc8t/X9Z8IcSbBA4xTLKuN873FopzklHMeqBst7YG0d+AX97inkvDX+NChYtSr+qGfcqGFaI8Zw==",
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.1.1.tgz",
+ "integrity": "sha512-RcLam17LdlbSOSp9VxmUu1eI6Mwxp+OwhD2QhiSNmNCzoDb0EeUXTD2n/WbcnrAYMGlmf05th6QYq23VqvJqpA==",
"license": "Apache-2.0",
"engines": {
"node": ">=18.0.0"
@@ -715,9 +715,9 @@
}
},
"node_modules/@babel/eslint-parser": {
- "version": "7.28.4",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.4.tgz",
- "integrity": "sha512-Aa+yDiH87980jR6zvRfFuCR1+dLb00vBydhTL+zI992Rz/wQhSvuxjmOOuJOgO3XmakO6RykRGD2S1mq1AtgHA==",
+ "version": "7.28.5",
+ "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.5.tgz",
+ "integrity": "sha512-fcdRcWahONYo+JRnJg1/AekOacGvKx12Gu0qXJXFi2WBqQA1i7+O5PaxRB7kxE/Op94dExnCiiar6T09pvdHpA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -960,13 +960,13 @@
}
},
"node_modules/@eslint/compat": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.0.tgz",
- "integrity": "sha512-DEzm5dKeDBPm3r08Ixli/0cmxr8LkRdwxMRUIJBlSCpAwSrvFEJpVBzV+66JhDxiaqKxnRzCXhtiMiczF7Hglg==",
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.1.tgz",
+ "integrity": "sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1020,22 +1020,22 @@
}
},
"node_modules/@eslint/config-helpers": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.1.tgz",
- "integrity": "sha512-csZAzkNhsgwb0I/UAV6/RGFTbiakPCf0ZrGmrIxQpYvGZ00PhTkSnyKNolphgIvmnJeGw6rcGVEXfTzUnFuEvw==",
+ "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": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@eslint/core": {
- "version": "0.16.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.16.0.tgz",
- "integrity": "sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==",
+ "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": {
@@ -1101,9 +1101,9 @@
}
},
"node_modules/@eslint/eslintrc/node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1127,9 +1127,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.38.0.tgz",
- "integrity": "sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz",
+ "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1150,13 +1150,13 @@
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.0.tgz",
- "integrity": "sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==",
+ "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": {
- "@eslint/core": "^0.16.0",
+ "@eslint/core": "^0.17.0",
"levn": "^0.4.1"
},
"engines": {
@@ -1164,9 +1164,9 @@
}
},
"node_modules/@grpc/grpc-js": {
- "version": "1.14.0",
- "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.14.0.tgz",
- "integrity": "sha512-N8Jx6PaYzcTRNzirReJCtADVoq4z7+1KQ4E70jTg/koQiMoUSN1kbNjPOqpPbhMFhfU1/l7ixspPl8dNY+FoUg==",
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.14.1.tgz",
+ "integrity": "sha512-sPxgEWtPUR3EnRJCEtbGZG2iX8LQDUls2wUS3o27jg07KqJFMq6YDeWvMo1wfpmy3rqRdS0rivpLwhqQtEyCuQ==",
"license": "Apache-2.0",
"dependencies": {
"@grpc/proto-loader": "^0.8.0",
@@ -1981,9 +1981,9 @@
"license": "BSD-3-Clause"
},
"node_modules/@pulumi/aws": {
- "version": "7.8.0",
- "resolved": "https://registry.npmjs.org/@pulumi/aws/-/aws-7.8.0.tgz",
- "integrity": "sha512-OVdg0dZtzO5qZ/erX4aLZ/9U1AKw9LX+79N3RyZEMSkq5KVUOEBugYBw0xlxJV5kkRrxjzSgMb4LknX7v0tZRw==",
+ "version": "7.11.0",
+ "resolved": "https://registry.npmjs.org/@pulumi/aws/-/aws-7.11.0.tgz",
+ "integrity": "sha512-LlK11UZRsN3vExnAAz6XRxTf6bQaeoghe9yK+U3eGUdaL7Fl5ifUBl1TvUHe7UhpGANprJHN406YH/RxKQwOQw==",
"license": "Apache-2.0",
"dependencies": {
"@pulumi/pulumi": "^3.142.0",
@@ -1991,15 +1991,15 @@
}
},
"node_modules/@pulumi/awsx": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@pulumi/awsx/-/awsx-3.0.0.tgz",
- "integrity": "sha512-Qce18z2zSSIpeQA+aUKNlDKAZaZIc7h5ioYgmLfmpliRFwzFGN7DbxJuZY+Ja3hbtjpe74UYBjI5VleFM+Ougw==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@pulumi/awsx/-/awsx-3.0.1.tgz",
+ "integrity": "sha512-f5wXbVC6FirgfWhLJx4+ePl9pYOGdp2dx+AWVg3QHRkVLMJBkzmhdcwDybgVIpRY2kty0v3p7Xe9FomOvHRJwQ==",
"license": "Apache-2.0",
"dependencies": {
"@aws-sdk/client-ecs": "^3.405.0",
- "@pulumi/aws": "^7.0.0",
+ "@pulumi/aws": "^7.7.0",
"@pulumi/docker": "^4.6.0",
- "@pulumi/docker-build": "^0.0.8",
+ "@pulumi/docker-build": "^0.0.14",
"@pulumi/pulumi": "^3.142.0",
"@types/aws-lambda": "^8.10.23",
"docker-classic": "npm:@pulumi/docker@3.6.1",
@@ -2017,13 +2017,13 @@
}
},
"node_modules/@pulumi/docker-build": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/@pulumi/docker-build/-/docker-build-0.0.8.tgz",
- "integrity": "sha512-tS6UUgmDjQ+LVekMXGC/6ND7riY75h3oO9fLiVOrvNafCBumxK+Cjm6ZZ9tUChLYvw6H+rZRExZEhfC8F/SQgQ==",
+ "version": "0.0.14",
+ "resolved": "https://registry.npmjs.org/@pulumi/docker-build/-/docker-build-0.0.14.tgz",
+ "integrity": "sha512-dLCta3BOrYRxHyp22QnVh06qlSiSORtmIypcQ6yb4+GZ2+ThbML06pINyERc5ClgJXGQFSVTtuWhMSiurTWU2w==",
"hasInstallScript": true,
"license": "Apache-2.0",
"dependencies": {
- "@pulumi/pulumi": "^3.136.0"
+ "@pulumi/pulumi": "^3.142.0"
}
},
"node_modules/@pulumi/docker/node_modules/semver": {
@@ -2036,9 +2036,9 @@
}
},
"node_modules/@pulumi/pulumi": {
- "version": "3.203.0",
- "resolved": "https://registry.npmjs.org/@pulumi/pulumi/-/pulumi-3.203.0.tgz",
- "integrity": "sha512-wXGzxYC61DF+YtJYwidxrpvRxn2y3+ML5OUuAQWUzPgM0byEgKotHAhadQ9uvfutSE262mmoqv5skXaDJdBGzQ==",
+ "version": "3.206.0",
+ "resolved": "https://registry.npmjs.org/@pulumi/pulumi/-/pulumi-3.206.0.tgz",
+ "integrity": "sha512-xTiAcs7LhVOK2mUvTCUOlS7tTtzSh0T+C9pOAOkbpJuAX0GKw+wg7PZZ3qQbqW63fGfCBHs7h27e9d9iyHEC/w==",
"license": "Apache-2.0",
"dependencies": {
"@grpc/grpc-js": "^1.10.1",
@@ -2185,12 +2185,12 @@
}
},
"node_modules/@smithy/abort-controller": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.2.3.tgz",
- "integrity": "sha512-xWL9Mf8b7tIFuAlpjKtRPnHrR8XVrwTj5NPYO/QwZPtc0SDLsPxb56V5tzi5yspSMytISHybifez+4jlrx0vkQ==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-4.2.5.tgz",
+ "integrity": "sha512-j7HwVkBw68YW8UmFRcjZOmssE77Rvk0GWAIN1oFBhsaovQmZWYCIcGa9/pwRB0ExI8Sk9MWNALTjftjHZea7VA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2198,16 +2198,16 @@
}
},
"node_modules/@smithy/config-resolver": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.0.tgz",
- "integrity": "sha512-Kkmz3Mup2PGp/HNJxhCWkLNdlajJORLSjwkcfrj0E7nu6STAEdcMR1ir5P9/xOmncx8xXfru0fbUYLlZog/cFg==",
+ "version": "4.4.3",
+ "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-4.4.3.tgz",
+ "integrity": "sha512-ezHLe1tKLUxDJo2LHtDuEDyWXolw8WGOR92qb4bQdWq/zKenO5BvctZGrVJBK08zjezSk7bmbKFOXIVyChvDLw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/types": "^4.9.0",
"@smithy/util-config-provider": "^4.2.0",
- "@smithy/util-endpoints": "^3.2.3",
- "@smithy/util-middleware": "^4.2.3",
+ "@smithy/util-endpoints": "^3.2.5",
+ "@smithy/util-middleware": "^4.2.5",
"tslib": "^2.6.2"
},
"engines": {
@@ -2215,18 +2215,18 @@
}
},
"node_modules/@smithy/core": {
- "version": "3.17.1",
- "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.17.1.tgz",
- "integrity": "sha512-V4Qc2CIb5McABYfaGiIYLTmo/vwNIK7WXI5aGveBd9UcdhbOMwcvIMxIw/DJj1S9QgOMa/7FBkarMdIC0EOTEQ==",
+ "version": "3.18.3",
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.18.3.tgz",
+ "integrity": "sha512-qqpNskkbHOSfrbFbjhYj5o8VMXO26fvN1K/+HbCzUNlTuxgNcPRouUDNm+7D6CkN244WG7aK533Ne18UtJEgAA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/middleware-serde": "^4.2.3",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/middleware-serde": "^4.2.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
"@smithy/util-base64": "^4.3.0",
"@smithy/util-body-length-browser": "^4.2.0",
- "@smithy/util-middleware": "^4.2.3",
- "@smithy/util-stream": "^4.5.4",
+ "@smithy/util-middleware": "^4.2.5",
+ "@smithy/util-stream": "^4.5.6",
"@smithy/util-utf8": "^4.2.0",
"@smithy/uuid": "^1.1.0",
"tslib": "^2.6.2"
@@ -2236,15 +2236,15 @@
}
},
"node_modules/@smithy/credential-provider-imds": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.2.3.tgz",
- "integrity": "sha512-hA1MQ/WAHly4SYltJKitEsIDVsNmXcQfYBRv2e+q04fnqtAX5qXaybxy/fhUeAMCnQIdAjaGDb04fMHQefWRhw==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.2.5.tgz",
+ "integrity": "sha512-BZwotjoZWn9+36nimwm/OLIcVe+KYRwzMjfhd4QT7QxPm9WY0HiOV8t/Wlh+HVUif0SBVV7ksq8//hPaBC/okQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/types": "^4.8.0",
- "@smithy/url-parser": "^4.2.3",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/types": "^4.9.0",
+ "@smithy/url-parser": "^4.2.5",
"tslib": "^2.6.2"
},
"engines": {
@@ -2252,14 +2252,14 @@
}
},
"node_modules/@smithy/fetch-http-handler": {
- "version": "5.3.4",
- "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.4.tgz",
- "integrity": "sha512-bwigPylvivpRLCm+YK9I5wRIYjFESSVwl8JQ1vVx/XhCw0PtCi558NwTnT2DaVCl5pYlImGuQTSwMsZ+pIavRw==",
+ "version": "5.3.6",
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.3.6.tgz",
+ "integrity": "sha512-3+RG3EA6BBJ/ofZUeTFJA7mHfSYrZtQIrDP9dI8Lf7X6Jbos2jptuLrAAteDiFVrmbEmLSuRG/bUKzfAXk7dhg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/querystring-builder": "^4.2.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/querystring-builder": "^4.2.5",
+ "@smithy/types": "^4.9.0",
"@smithy/util-base64": "^4.3.0",
"tslib": "^2.6.2"
},
@@ -2268,12 +2268,12 @@
}
},
"node_modules/@smithy/hash-node": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.3.tgz",
- "integrity": "sha512-6+NOdZDbfuU6s1ISp3UOk5Rg953RJ2aBLNLLBEcamLjHAg1Po9Ha7QIB5ZWhdRUVuOUrT8BVFR+O2KIPmw027g==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-4.2.5.tgz",
+ "integrity": "sha512-DpYX914YOfA3UDT9CN1BM787PcHfWRBB43fFGCYrZFUH0Jv+5t8yYl+Pd5PW4+QzoGEDvn5d5QIO4j2HyYZQSA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"@smithy/util-buffer-from": "^4.2.0",
"@smithy/util-utf8": "^4.2.0",
"tslib": "^2.6.2"
@@ -2283,12 +2283,12 @@
}
},
"node_modules/@smithy/invalid-dependency": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.3.tgz",
- "integrity": "sha512-Cc9W5DwDuebXEDMpOpl4iERo8I0KFjTnomK2RMdhhR87GwrSmUmwMxS4P5JdRf+LsjOdIqumcerwRgYMr/tZ9Q==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-4.2.5.tgz",
+ "integrity": "sha512-2L2erASEro1WC5nV+plwIMxrTXpvpfzl4e+Nre6vBVRR2HKeGGcvpJyyL3/PpiSg+cJG2KpTmZmq934Olb6e5A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2308,13 +2308,13 @@
}
},
"node_modules/@smithy/middleware-content-length": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.3.tgz",
- "integrity": "sha512-/atXLsT88GwKtfp5Jr0Ks1CSa4+lB+IgRnkNrrYP0h1wL4swHNb0YONEvTceNKNdZGJsye+W2HH8W7olbcPUeA==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-4.2.5.tgz",
+ "integrity": "sha512-Y/RabVa5vbl5FuHYV2vUCwvh/dqzrEY/K2yWPSqvhFUwIY0atLqO4TienjBXakoy4zrKAMCZwg+YEqmH7jaN7A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2322,18 +2322,18 @@
}
},
"node_modules/@smithy/middleware-endpoint": {
- "version": "4.3.5",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.3.5.tgz",
- "integrity": "sha512-SIzKVTvEudFWJbxAaq7f2GvP3jh2FHDpIFI6/VAf4FOWGFZy0vnYMPSRj8PGYI8Hjt29mvmwSRgKuO3bK4ixDw==",
+ "version": "4.3.10",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-4.3.10.tgz",
+ "integrity": "sha512-SoAag3QnWBFoXjwa1jenEThkzJYClidZUyqsLKwWZ8kOlZBwehrLBp4ygVDjNEM2a2AamCQ2FBA/HuzKJ/LiTA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/core": "^3.17.1",
- "@smithy/middleware-serde": "^4.2.3",
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
- "@smithy/url-parser": "^4.2.3",
- "@smithy/util-middleware": "^4.2.3",
+ "@smithy/core": "^3.18.3",
+ "@smithy/middleware-serde": "^4.2.5",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
+ "@smithy/url-parser": "^4.2.5",
+ "@smithy/util-middleware": "^4.2.5",
"tslib": "^2.6.2"
},
"engines": {
@@ -2341,18 +2341,18 @@
}
},
"node_modules/@smithy/middleware-retry": {
- "version": "4.4.5",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.5.tgz",
- "integrity": "sha512-DCaXbQqcZ4tONMvvdz+zccDE21sLcbwWoNqzPLFlZaxt1lDtOE2tlVpRSwcTOJrjJSUThdgEYn7HrX5oLGlK9A==",
+ "version": "4.4.10",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-4.4.10.tgz",
+ "integrity": "sha512-6fOwX34gXxcqKa3bsG0mR0arc2Cw4ddOS6tp3RgUD2yoTrDTbQ2aVADnDjhUuxaiDZN2iilxndgGDhnpL/XvJA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/service-error-classification": "^4.2.3",
- "@smithy/smithy-client": "^4.9.1",
- "@smithy/types": "^4.8.0",
- "@smithy/util-middleware": "^4.2.3",
- "@smithy/util-retry": "^4.2.3",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/service-error-classification": "^4.2.5",
+ "@smithy/smithy-client": "^4.9.6",
+ "@smithy/types": "^4.9.0",
+ "@smithy/util-middleware": "^4.2.5",
+ "@smithy/util-retry": "^4.2.5",
"@smithy/uuid": "^1.1.0",
"tslib": "^2.6.2"
},
@@ -2361,13 +2361,13 @@
}
},
"node_modules/@smithy/middleware-serde": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.3.tgz",
- "integrity": "sha512-8g4NuUINpYccxiCXM5s1/V+uLtts8NcX4+sPEbvYQDZk4XoJfDpq5y2FQxfmUL89syoldpzNzA0R9nhzdtdKnQ==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-4.2.5.tgz",
+ "integrity": "sha512-La1ldWTJTZ5NqQyPqnCNeH9B+zjFhrNoQIL1jTh4zuqXRlmXhxYHhMtI1/92OlnoAtp6JoN7kzuwhWoXrBwPqg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2375,12 +2375,12 @@
}
},
"node_modules/@smithy/middleware-stack": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.2.3.tgz",
- "integrity": "sha512-iGuOJkH71faPNgOj/gWuEGS6xvQashpLwWB1HjHq1lNNiVfbiJLpZVbhddPuDbx9l4Cgl0vPLq5ltRfSaHfspA==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-4.2.5.tgz",
+ "integrity": "sha512-bYrutc+neOyWxtZdbB2USbQttZN0mXaOyYLIsaTbJhFsfpXyGWUxJpEuO1rJ8IIJm2qH4+xJT0mxUSsEDTYwdQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2388,14 +2388,14 @@
}
},
"node_modules/@smithy/node-config-provider": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.3.3.tgz",
- "integrity": "sha512-NzI1eBpBSViOav8NVy1fqOlSfkLgkUjUTlohUSgAEhHaFWA3XJiLditvavIP7OpvTjDp5u2LhtlBhkBlEisMwA==",
+ "version": "4.3.5",
+ "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-4.3.5.tgz",
+ "integrity": "sha512-UTurh1C4qkVCtqggI36DGbLB2Kv8UlcFdMXDcWMbqVY2uRg0XmT9Pb4Vj6oSQ34eizO1fvR0RnFV4Axw4IrrAg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/property-provider": "^4.2.3",
- "@smithy/shared-ini-file-loader": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/shared-ini-file-loader": "^4.4.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2403,15 +2403,15 @@
}
},
"node_modules/@smithy/node-http-handler": {
- "version": "4.4.3",
- "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.4.3.tgz",
- "integrity": "sha512-MAwltrDB0lZB/H6/2M5PIsISSwdI5yIh6DaBB9r0Flo9nx3y0dzl/qTMJPd7tJvPdsx6Ks/cwVzheGNYzXyNbQ==",
+ "version": "4.4.5",
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.4.5.tgz",
+ "integrity": "sha512-CMnzM9R2WqlqXQGtIlsHMEZfXKJVTIrqCNoSd/QpAyp+Dw0a1Vps13l6ma1fH8g7zSPNsA59B/kWgeylFuA/lw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/abort-controller": "^4.2.3",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/querystring-builder": "^4.2.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/abort-controller": "^4.2.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/querystring-builder": "^4.2.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2419,12 +2419,12 @@
}
},
"node_modules/@smithy/property-provider": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.2.3.tgz",
- "integrity": "sha512-+1EZ+Y+njiefCohjlhyOcy1UNYjT+1PwGFHCxA/gYctjg3DQWAU19WigOXAco/Ql8hZokNehpzLd0/+3uCreqQ==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-4.2.5.tgz",
+ "integrity": "sha512-8iLN1XSE1rl4MuxvQ+5OSk/Zb5El7NJZ1td6Tn+8dQQHIjp59Lwl6bd0+nzw6SKm2wSSriH2v/I9LPzUic7EOg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2432,12 +2432,12 @@
}
},
"node_modules/@smithy/protocol-http": {
- "version": "5.3.3",
- "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.3.3.tgz",
- "integrity": "sha512-Mn7f/1aN2/jecywDcRDvWWWJF4uwg/A0XjFMJtj72DsgHTByfjRltSqcT9NyE9RTdBSN6X1RSXrhn/YWQl8xlw==",
+ "version": "5.3.5",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-5.3.5.tgz",
+ "integrity": "sha512-RlaL+sA0LNMp03bf7XPbFmT5gN+w3besXSWMkA8rcmxLSVfiEXElQi4O2IWwPfxzcHkxqrwBFMbngB8yx/RvaQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2445,12 +2445,12 @@
}
},
"node_modules/@smithy/querystring-builder": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.2.3.tgz",
- "integrity": "sha512-LOVCGCmwMahYUM/P0YnU/AlDQFjcu+gWbFJooC417QRB/lDJlWSn8qmPSDp+s4YVAHOgtgbNG4sR+SxF/VOcJQ==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-4.2.5.tgz",
+ "integrity": "sha512-y98otMI1saoajeik2kLfGyRp11e5U/iJYH/wLCh3aTV/XutbGT9nziKGkgCaMD1ghK7p6htHMm6b6scl9JRUWg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"@smithy/util-uri-escape": "^4.2.0",
"tslib": "^2.6.2"
},
@@ -2459,12 +2459,12 @@
}
},
"node_modules/@smithy/querystring-parser": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.2.3.tgz",
- "integrity": "sha512-cYlSNHcTAX/wc1rpblli3aUlLMGgKZ/Oqn8hhjFASXMCXjIqeuQBei0cnq2JR8t4RtU9FpG6uyl6PxyArTiwKA==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-4.2.5.tgz",
+ "integrity": "sha512-031WCTdPYgiQRYNPXznHXof2YM0GwL6SeaSyTH/P72M1Vz73TvCNH2Nq8Iu2IEPq9QP2yx0/nrw5YmSeAi/AjQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2472,24 +2472,24 @@
}
},
"node_modules/@smithy/service-error-classification": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.2.3.tgz",
- "integrity": "sha512-NkxsAxFWwsPsQiwFG2MzJ/T7uIR6AQNh1SzcxSUnmmIqIQMlLRQDKhc17M7IYjiuBXhrQRjQTo3CxX+DobS93g==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-4.2.5.tgz",
+ "integrity": "sha512-8fEvK+WPE3wUAcDvqDQG1Vk3ANLR8Px979te96m84CbKAjBVf25rPYSzb4xU4hlTyho7VhOGnh5i62D/JVF0JQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0"
+ "@smithy/types": "^4.9.0"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@smithy/shared-ini-file-loader": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.3.3.tgz",
- "integrity": "sha512-9f9Ixej0hFhroOK2TxZfUUDR13WVa8tQzhSzPDgXe5jGL3KmaM9s8XN7RQwqtEypI82q9KHnKS71CJ+q/1xLtQ==",
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-4.4.0.tgz",
+ "integrity": "sha512-5WmZ5+kJgJDjwXXIzr1vDTG+RhF9wzSODQBfkrQ2VVkYALKGvZX1lgVSxEkgicSAFnFhPj5rudJV0zoinqS0bA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2497,16 +2497,16 @@
}
},
"node_modules/@smithy/signature-v4": {
- "version": "5.3.3",
- "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.3.3.tgz",
- "integrity": "sha512-CmSlUy+eEYbIEYN5N3vvQTRfqt0lJlQkaQUIf+oizu7BbDut0pozfDjBGecfcfWf7c62Yis4JIEgqQ/TCfodaA==",
+ "version": "5.3.5",
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.3.5.tgz",
+ "integrity": "sha512-xSUfMu1FT7ccfSXkoLl/QRQBi2rOvi3tiBZU2Tdy3I6cgvZ6SEi9QNey+lqps/sJRnogIS+lq+B1gxxbra2a/w==",
"license": "Apache-2.0",
"dependencies": {
"@smithy/is-array-buffer": "^4.2.0",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
"@smithy/util-hex-encoding": "^4.2.0",
- "@smithy/util-middleware": "^4.2.3",
+ "@smithy/util-middleware": "^4.2.5",
"@smithy/util-uri-escape": "^4.2.0",
"@smithy/util-utf8": "^4.2.0",
"tslib": "^2.6.2"
@@ -2516,17 +2516,17 @@
}
},
"node_modules/@smithy/smithy-client": {
- "version": "4.9.1",
- "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.9.1.tgz",
- "integrity": "sha512-Ngb95ryR5A9xqvQFT5mAmYkCwbXvoLavLFwmi7zVg/IowFPCfiqRfkOKnbc/ZRL8ZKJ4f+Tp6kSu6wjDQb8L/g==",
+ "version": "4.9.6",
+ "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-4.9.6.tgz",
+ "integrity": "sha512-hGz42hggqReicRRZUvrKDQiAmoJnx1Q+XfAJnYAGu544gOfxQCAC3hGGD7+Px2gEUUxB/kKtQV7LOtBRNyxteQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/core": "^3.17.1",
- "@smithy/middleware-endpoint": "^4.3.5",
- "@smithy/middleware-stack": "^4.2.3",
- "@smithy/protocol-http": "^5.3.3",
- "@smithy/types": "^4.8.0",
- "@smithy/util-stream": "^4.5.4",
+ "@smithy/core": "^3.18.3",
+ "@smithy/middleware-endpoint": "^4.3.10",
+ "@smithy/middleware-stack": "^4.2.5",
+ "@smithy/protocol-http": "^5.3.5",
+ "@smithy/types": "^4.9.0",
+ "@smithy/util-stream": "^4.5.6",
"tslib": "^2.6.2"
},
"engines": {
@@ -2534,9 +2534,9 @@
}
},
"node_modules/@smithy/types": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.8.0.tgz",
- "integrity": "sha512-QpELEHLO8SsQVtqP+MkEgCYTFW0pleGozfs3cZ183ZBj9z3VC1CX1/wtFMK64p+5bhtZo41SeLK1rBRtd25nHQ==",
+ "version": "4.9.0",
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.9.0.tgz",
+ "integrity": "sha512-MvUbdnXDTwykR8cB1WZvNNwqoWVaTRA0RLlLmf/cIFNMM2cKWz01X4Ly6SMC4Kks30r8tT3Cty0jmeWfiuyHTA==",
"license": "Apache-2.0",
"dependencies": {
"tslib": "^2.6.2"
@@ -2546,13 +2546,13 @@
}
},
"node_modules/@smithy/url-parser": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.2.3.tgz",
- "integrity": "sha512-I066AigYvY3d9VlU3zG9XzZg1yT10aNqvCaBTw9EPgu5GrsEl1aUkcMvhkIXascYH1A8W0LQo3B1Kr1cJNcQEw==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-4.2.5.tgz",
+ "integrity": "sha512-VaxMGsilqFnK1CeBX+LXnSuaMx4sTL/6znSZh2829txWieazdVxr54HmiyTsIbpOTLcf5nYpq9lpzmwRdxj6rQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/querystring-parser": "^4.2.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/querystring-parser": "^4.2.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2623,14 +2623,14 @@
}
},
"node_modules/@smithy/util-defaults-mode-browser": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.4.tgz",
- "integrity": "sha512-qI5PJSW52rnutos8Bln8nwQZRpyoSRN6k2ajyoUHNMUzmWqHnOJCnDELJuV6m5PML0VkHI+XcXzdB+6awiqYUw==",
+ "version": "4.3.9",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-4.3.9.tgz",
+ "integrity": "sha512-Bh5bU40BgdkXE2BcaNazhNtEXi1TC0S+1d84vUwv5srWfvbeRNUKFzwKQgC6p6MXPvEgw+9+HdX3pOwT6ut5aw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/property-provider": "^4.2.3",
- "@smithy/smithy-client": "^4.9.1",
- "@smithy/types": "^4.8.0",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/smithy-client": "^4.9.6",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2638,17 +2638,17 @@
}
},
"node_modules/@smithy/util-defaults-mode-node": {
- "version": "4.2.6",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.6.tgz",
- "integrity": "sha512-c6M/ceBTm31YdcFpgfgQAJaw3KbaLuRKnAz91iMWFLSrgxRpYm03c3bu5cpYojNMfkV9arCUelelKA7XQT36SQ==",
+ "version": "4.2.12",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-4.2.12.tgz",
+ "integrity": "sha512-EHZwe1E9Q7umImIyCKQg/Cm+S+7rjXxCRvfGmKifqwYvn7M8M4ZcowwUOQzvuuxUUmdzCkqL0Eq0z1m74Pq6pw==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/config-resolver": "^4.4.0",
- "@smithy/credential-provider-imds": "^4.2.3",
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/property-provider": "^4.2.3",
- "@smithy/smithy-client": "^4.9.1",
- "@smithy/types": "^4.8.0",
+ "@smithy/config-resolver": "^4.4.3",
+ "@smithy/credential-provider-imds": "^4.2.5",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/property-provider": "^4.2.5",
+ "@smithy/smithy-client": "^4.9.6",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2656,13 +2656,13 @@
}
},
"node_modules/@smithy/util-endpoints": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.2.3.tgz",
- "integrity": "sha512-aCfxUOVv0CzBIkU10TubdgKSx5uRvzH064kaiPEWfNIvKOtNpu642P4FP1hgOFkjQIkDObrfIDnKMKkeyrejvQ==",
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-3.2.5.tgz",
+ "integrity": "sha512-3O63AAWu2cSNQZp+ayl9I3NapW1p1rR5mlVHcF6hAB1dPZUQFfRPYtplWX/3xrzWthPGj5FqB12taJJCfH6s8A==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/node-config-provider": "^4.3.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/node-config-provider": "^4.3.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2682,12 +2682,12 @@
}
},
"node_modules/@smithy/util-middleware": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.2.3.tgz",
- "integrity": "sha512-v5ObKlSe8PWUHCqEiX2fy1gNv6goiw6E5I/PN2aXg3Fb/hse0xeaAnSpXDiWl7x6LamVKq7senB+m5LOYHUAHw==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-4.2.5.tgz",
+ "integrity": "sha512-6Y3+rvBF7+PZOc40ybeZMcGln6xJGVeY60E7jy9Mv5iKpMJpHgRE6dKy9ScsVxvfAYuEX4Q9a65DQX90KaQ3bA==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/types": "^4.8.0",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2695,13 +2695,13 @@
}
},
"node_modules/@smithy/util-retry": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.2.3.tgz",
- "integrity": "sha512-lLPWnakjC0q9z+OtiXk+9RPQiYPNAovt2IXD3CP4LkOnd9NpUsxOjMx1SnoUVB7Orb7fZp67cQMtTBKMFDvOGg==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-4.2.5.tgz",
+ "integrity": "sha512-GBj3+EZBbN4NAqJ/7pAhsXdfzdlznOh8PydUijy6FpNIMnHPSMO2/rP4HKu+UFeikJxShERk528oy7GT79YiJg==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/service-error-classification": "^4.2.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/service-error-classification": "^4.2.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2709,14 +2709,14 @@
}
},
"node_modules/@smithy/util-stream": {
- "version": "4.5.4",
- "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.4.tgz",
- "integrity": "sha512-+qDxSkiErejw1BAIXUFBSfM5xh3arbz1MmxlbMCKanDDZtVEQ7PSKW9FQS0Vud1eI/kYn0oCTVKyNzRlq+9MUw==",
+ "version": "4.5.6",
+ "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-4.5.6.tgz",
+ "integrity": "sha512-qWw/UM59TiaFrPevefOZ8CNBKbYEP6wBAIlLqxn3VAIo9rgnTNc4ASbVrqDmhuwI87usnjhdQrxodzAGFFzbRQ==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/fetch-http-handler": "^5.3.4",
- "@smithy/node-http-handler": "^4.4.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/fetch-http-handler": "^5.3.6",
+ "@smithy/node-http-handler": "^4.4.5",
+ "@smithy/types": "^4.9.0",
"@smithy/util-base64": "^4.3.0",
"@smithy/util-buffer-from": "^4.2.0",
"@smithy/util-hex-encoding": "^4.2.0",
@@ -2753,13 +2753,13 @@
}
},
"node_modules/@smithy/util-waiter": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.2.3.tgz",
- "integrity": "sha512-5+nU///E5sAdD7t3hs4uwvCTWQtTR8JwKwOCSJtBRx0bY1isDo1QwH87vRK86vlFLBTISqoDA2V6xvP6nF1isQ==",
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/@smithy/util-waiter/-/util-waiter-4.2.5.tgz",
+ "integrity": "sha512-Dbun99A3InifQdIrsXZ+QLcC0PGBPAdrl4cj1mTgJvyc9N2zf7QSxg8TBkzsCmGJdE3TLbO9ycwpY0EkWahQ/g==",
"license": "Apache-2.0",
"dependencies": {
- "@smithy/abort-controller": "^4.2.3",
- "@smithy/types": "^4.8.0",
+ "@smithy/abort-controller": "^4.2.5",
+ "@smithy/types": "^4.9.0",
"tslib": "^2.6.2"
},
"engines": {
@@ -2813,9 +2813,9 @@
}
},
"node_modules/@types/aws-lambda": {
- "version": "8.10.156",
- "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.156.tgz",
- "integrity": "sha512-LElQP+QliVWykC7OF8dNr04z++HJCMO2lF7k9HuKoSDARqhcjHq8MzbrRwujCSDeBHIlvaimbuY/tVZL36KXFQ==",
+ "version": "8.10.158",
+ "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.158.tgz",
+ "integrity": "sha512-v/n2WsL1ksRKigfqZ9ff7ANobfT3t/T8kI8UOiur98tREwFulv9lRv+pDrocGPWOe3DpD2Y2GKRO+OiyxwgaCQ==",
"license": "MIT"
},
"node_modules/@types/cacheable-request": {
@@ -2866,9 +2866,9 @@
}
},
"node_modules/@types/node": {
- "version": "24.9.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.1.tgz",
- "integrity": "sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==",
+ "version": "24.10.0",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.0.tgz",
+ "integrity": "sha512-qzQZRBqkFsYyaSWXuEHc2WR9c0a0CXwiE5FWUvn7ZM+vdy1uZLfCunD38UzhuB7YN/J11ndbDBcTmOdxJo9Q7A==",
"license": "MIT",
"dependencies": {
"undici-types": "~7.16.0"
@@ -3024,9 +3024,9 @@
"license": "MIT"
},
"node_modules/baseline-browser-mapping": {
- "version": "2.8.20",
- "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.20.tgz",
- "integrity": "sha512-JMWsdF+O8Orq3EMukbUN1QfbLK9mX2CkUmQBcW2T0s8OmdAUL5LLM/6wFwSrqXzlXB13yhyK9gTKS1rIizOduQ==",
+ "version": "2.8.27",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.27.tgz",
+ "integrity": "sha512-2CXFpkjVnY2FT+B6GrSYxzYf65BJWEqz5tIRHCvNsZZ2F3CmsCB37h8SpYgKG7y9C4YAeTipIPWG7EmFmhAeXA==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -3064,9 +3064,9 @@
}
},
"node_modules/browserslist": {
- "version": "4.27.0",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.27.0.tgz",
- "integrity": "sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw==",
+ "version": "4.28.0",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.0.tgz",
+ "integrity": "sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==",
"dev": true,
"funding": [
{
@@ -3085,10 +3085,10 @@
"license": "MIT",
"peer": true,
"dependencies": {
- "baseline-browser-mapping": "^2.8.19",
- "caniuse-lite": "^1.0.30001751",
- "electron-to-chromium": "^1.5.238",
- "node-releases": "^2.0.26",
+ "baseline-browser-mapping": "^2.8.25",
+ "caniuse-lite": "^1.0.30001754",
+ "electron-to-chromium": "^1.5.249",
+ "node-releases": "^2.0.27",
"update-browserslist-db": "^1.1.4"
},
"bin": {
@@ -3186,9 +3186,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001751",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001751.tgz",
- "integrity": "sha512-A0QJhug0Ly64Ii3eIqHu5X51ebln3k4yTUkY1j8drqpWHVreg/VLijN48cZ1bYPiqOQuqpkIKnzr/Ul8V+p6Cw==",
+ "version": "1.0.30001754",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz",
+ "integrity": "sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==",
"dev": true,
"funding": [
{
@@ -3513,9 +3513,9 @@
"license": "MIT"
},
"node_modules/electron-to-chromium": {
- "version": "1.5.239",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.239.tgz",
- "integrity": "sha512-1y5w0Zsq39MSPmEjHjbizvhYoTaulVtivpxkp5q5kaPmQtsK6/2nvAzGRxNMS9DoYySp9PkW0MAQDwU1m764mg==",
+ "version": "1.5.250",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.250.tgz",
+ "integrity": "sha512-/5UMj9IiGDMOFBnN4i7/Ry5onJrAGSbOGo3s9FEKmwobGq6xw832ccET0CE3CkkMBZ8GJSlUIesZofpyurqDXw==",
"dev": true,
"license": "ISC"
},
@@ -3596,9 +3596,9 @@
}
},
"node_modules/eslint": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.38.0.tgz",
- "integrity": "sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz",
+ "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -3606,11 +3606,11 @@
"@eslint-community/eslint-utils": "^4.8.0",
"@eslint-community/regexpp": "^4.12.1",
"@eslint/config-array": "^0.21.1",
- "@eslint/config-helpers": "^0.4.1",
- "@eslint/core": "^0.16.0",
+ "@eslint/config-helpers": "^0.4.2",
+ "@eslint/core": "^0.17.0",
"@eslint/eslintrc": "^3.3.1",
- "@eslint/js": "9.38.0",
- "@eslint/plugin-kit": "^0.4.0",
+ "@eslint/js": "9.39.1",
+ "@eslint/plugin-kit": "^0.4.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.4.2",
@@ -4295,9 +4295,9 @@
}
},
"node_modules/globals": {
- "version": "16.4.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz",
- "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==",
+ "version": "16.5.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz",
+ "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -4537,9 +4537,9 @@
}
},
"node_modules/ip-address": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.0.1.tgz",
- "integrity": "sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA==",
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz",
+ "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==",
"license": "MIT",
"engines": {
"node": ">= 12"
@@ -5135,9 +5135,9 @@
}
},
"node_modules/node-releases": {
- "version": "2.0.26",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.26.tgz",
- "integrity": "sha512-S2M9YimhSjBSvYnlr5/+umAnPHE++ODwt5e2Ij6FoX45HA/s4vHdkDx1eax2pAPeAOqu4s9b7ppahsyEFdVqQA==",
+ "version": "2.0.27",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz",
+ "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==",
"dev": true,
"license": "MIT"
},
@@ -5651,9 +5651,9 @@
}
},
"node_modules/pkg-dir/node_modules/yocto-queue": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz",
- "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==",
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.2.tgz",
+ "integrity": "sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==",
"license": "MIT",
"engines": {
"node": ">=12.20"
diff --git a/.ops/aws-setup/package.json b/.ops/aws-setup/package.json
index 33f0f15a6e..72fa43586c 100644
--- a/.ops/aws-setup/package.json
+++ b/.ops/aws-setup/package.json
@@ -10,21 +10,21 @@
"lint:check:prettier": "prettier --check --ignore-path .prettierignore **/*.{json,md,mjs,ts}"
},
"dependencies": {
- "@pulumi/pulumi": "3.203.0",
- "@pulumi/aws": "7.8.0",
- "@pulumi/awsx": "3.0.0"
+ "@pulumi/pulumi": "3.206.0",
+ "@pulumi/aws": "7.11.0",
+ "@pulumi/awsx": "3.0.1"
},
"devDependencies": {
- "@babel/eslint-parser": "7.28.4",
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
- "@types/node": "24.9.1",
- "eslint": "9.38.0",
+ "@babel/eslint-parser": "7.28.5",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
+ "@types/node": "24.10.0",
+ "eslint": "9.39.1",
"eslint-config-prettier": "10.1.8",
"eslint-plugin-n": "17.23.1",
"eslint-plugin-prettier": "5.5.4",
"eslint-plugin-promise": "7.2.1",
- "globals": "16.4.0",
+ "globals": "16.5.0",
"prettier": "3.6.2"
}
}
diff --git a/.ops/ecamp3-logging/Chart.lock b/.ops/ecamp3-logging/Chart.lock
index d23a983969..820e08ac15 100644
--- a/.ops/ecamp3-logging/Chart.lock
+++ b/.ops/ecamp3-logging/Chart.lock
@@ -1,6 +1,6 @@
dependencies:
- name: fluent-operator
repository: https://fluent.github.io/helm-charts
- version: 3.4.2
-digest: sha256:c49298a480c72764ee4cd0b6e7e8d837d2c4231d3a8ed634ec84b9ff302f3627
-generated: "2025-07-08T13:55:28.219630056Z"
+ version: 3.5.0
+digest: sha256:988588f732cf8645a1eb380c66e4683807f49aa08648437c0fd2e2d454db9817
+generated: "2025-11-01T00:12:16.626020606Z"
diff --git a/.ops/ecamp3-logging/Chart.yaml b/.ops/ecamp3-logging/Chart.yaml
index f11d4103b4..0ab8b1bce0 100644
--- a/.ops/ecamp3-logging/Chart.yaml
+++ b/.ops/ecamp3-logging/Chart.yaml
@@ -25,5 +25,5 @@ appVersion: 0.1.0
dependencies:
- name: fluent-operator
- version: 3.4.2
+ version: 3.5.0
repository: https://fluent.github.io/helm-charts
diff --git a/.ops/ecamp3-logging/files/elasticsearch/remove-old-indexes/docker-compose.yml b/.ops/ecamp3-logging/files/elasticsearch/remove-old-indexes/docker-compose.yml
index e2df05fa4f..a3f0c89c27 100644
--- a/.ops/ecamp3-logging/files/elasticsearch/remove-old-indexes/docker-compose.yml
+++ b/.ops/ecamp3-logging/files/elasticsearch/remove-old-indexes/docker-compose.yml
@@ -1,6 +1,6 @@
services:
remove-old-indexes:
- image: node:24.10.0
+ image: node:24.11.0
volumes:
- ./src:/src
command:
diff --git a/.ops/ingress/Chart.lock b/.ops/ingress/Chart.lock
index 6649d1f91d..8528e06808 100644
--- a/.ops/ingress/Chart.lock
+++ b/.ops/ingress/Chart.lock
@@ -1,6 +1,6 @@
dependencies:
- name: ingress-nginx
repository: https://kubernetes.github.io/ingress-nginx
- version: 4.13.3
-digest: sha256:54c5d642d5a47288d547681ba5ed90d176c1398de29b373bce233071772c6f47
-generated: "2025-10-08T06:18:59.762154986Z"
+ version: 4.14.0
+digest: sha256:239acfa930d270451d0726b38e890d09e52450247e2f91e5701050f9caadf222
+generated: "2025-11-10T15:57:58.43582842Z"
diff --git a/.ops/ingress/Chart.yaml b/.ops/ingress/Chart.yaml
index bc214469a2..bcacd6a057 100644
--- a/.ops/ingress/Chart.yaml
+++ b/.ops/ingress/Chart.yaml
@@ -25,5 +25,5 @@ appVersion: 0.1.0
dependencies:
- name: ingress-nginx
- version: 4.13.3
+ version: 4.14.0
repository: https://kubernetes.github.io/ingress-nginx
diff --git a/.ops/ops-dashboard/Chart.lock b/.ops/ops-dashboard/Chart.lock
index e87439c7c5..d21e212180 100644
--- a/.ops/ops-dashboard/Chart.lock
+++ b/.ops/ops-dashboard/Chart.lock
@@ -4,12 +4,12 @@ dependencies:
version: 7.18.0
- name: kubernetes-dashboard
repository: https://kubernetes.github.io/dashboard/
- version: 7.13.0
+ version: 7.14.0
- name: oauth2-proxy
repository: https://oauth2-proxy.github.io/manifests
version: 7.18.0
- name: oauth2-proxy
repository: https://oauth2-proxy.github.io/manifests
version: 7.18.0
-digest: sha256:d119e0b8ffb14fc7aee209549ea98ee92c80eefe64a20f4b48a5a7b193efc9c6
-generated: "2025-08-14T11:03:55.532011762Z"
+digest: sha256:7ec11af29604ef6739640a976d8276f6d83414bb27287815f0e0472d9bb9604a
+generated: "2025-11-06T17:09:52.775601394Z"
diff --git a/.ops/ops-dashboard/Chart.yaml b/.ops/ops-dashboard/Chart.yaml
index 9dc05450b8..d917638b82 100644
--- a/.ops/ops-dashboard/Chart.yaml
+++ b/.ops/ops-dashboard/Chart.yaml
@@ -29,7 +29,7 @@ dependencies:
version: 7.18.0
repository: https://oauth2-proxy.github.io/manifests
- name: kubernetes-dashboard
- version: 7.13.0
+ version: 7.14.0
repository: https://kubernetes.github.io/dashboard/
- name: oauth2-proxy
alias: kubernetes-dashboard-proxy
diff --git a/api/.php-cs-fixer.php b/api/.php-cs-fixer.php
index cf114d3c8c..4f5953422f 100644
--- a/api/.php-cs-fixer.php
+++ b/api/.php-cs-fixer.php
@@ -20,4 +20,5 @@
])
->setParallelConfig(PhpCsFixer\Runner\Parallel\ParallelConfigFactory::detect())
->setFinder($finder)
+ ->setUnsupportedPhpVersionAllowed(true)
;
diff --git a/api/Dockerfile b/api/Dockerfile
index b041c8eedc..632e8d876c 100644
--- a/api/Dockerfile
+++ b/api/Dockerfile
@@ -3,7 +3,7 @@
# Adapted from https://github.com/api-platform/api-platform/blob/fa1c5808305d7cadbf7b8392e0fddb6e80fb2092/api/Dockerfile
# Versions
-FROM dunglas/frankenphp:1.9-php8.4.13 AS frankenphp_upstream
+FROM dunglas/frankenphp:1.9-php8.4.14 AS frankenphp_upstream
# the different stages of this Dockerfile are meant to be built into separate images
# https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage
@@ -69,7 +69,7 @@ RUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini"
COPY --link docker/php/conf.d/api-platform.dev.ini $PHP_INI_DIR/conf.d/
# renovate: datasource=github-tags depName=xdebug/xdebug
-ARG XDEBUG_VERSION=3.4.6
+ARG XDEBUG_VERSION=3.4.7
RUN set -eux; \
install-php-extensions \
xdebug-$XDEBUG_VERSION \
diff --git a/api/composer.json b/api/composer.json
index 989f0016b5..8b0de83c1a 100644
--- a/api/composer.json
+++ b/api/composer.json
@@ -5,24 +5,24 @@
"php": ">=8.4.0",
"ext-ctype": "*",
"ext-iconv": "*",
- "api-platform/doctrine-orm": "4.1.24",
- "api-platform/doctrine-common": "4.2.0",
- "api-platform/documentation": "4.2.0",
- "api-platform/http-cache": "4.1.24",
- "api-platform/json-api": "4.1.24",
- "api-platform/json-hal": "4.1.24",
- "api-platform/metadata": "4.1.24",
- "api-platform/openapi": "4.1.24",
- "api-platform/serializer": "4.1.24",
- "api-platform/state": "4.1.24",
- "api-platform/symfony": "4.1.23",
- "api-platform/validator": "4.2.0",
+ "api-platform/doctrine-orm": "4.2.3",
+ "api-platform/doctrine-common": "4.2.3",
+ "api-platform/documentation": "4.2.3",
+ "api-platform/http-cache": "4.2.3",
+ "api-platform/json-api": "4.1.26",
+ "api-platform/json-hal": "4.1.26",
+ "api-platform/metadata": "4.1.26",
+ "api-platform/openapi": "4.1.26",
+ "api-platform/serializer": "4.1.26",
+ "api-platform/state": "4.2.3",
+ "api-platform/symfony": "4.1.24",
+ "api-platform/validator": "4.2.3",
"composer/package-versions-deprecated": "1.11.99",
"cweagans/composer-patches": "1.7.3",
"doctrine/common": "3.5.0",
- "doctrine/doctrine-bundle": "2.18.0",
- "doctrine/doctrine-migrations-bundle": "3.5.0",
- "doctrine/orm": "3.5.2",
+ "doctrine/doctrine-bundle": "2.18.1",
+ "doctrine/doctrine-migrations-bundle": "3.6.0",
+ "doctrine/orm": "3.5.3",
"exercise/htmlpurifier-bundle": "5.1",
"friendsofsymfony/http-cache": "3.1.1",
"friendsofsymfony/http-cache-bundle": "3.2.0",
@@ -32,23 +32,23 @@
"knpuniversity/oauth2-client-bundle": "2.19.0",
"league/oauth2-google": "4.0.1",
"lexik/jwt-authentication-bundle": "3.1.1",
- "nelmio/cors-bundle": "2.5.0",
+ "nelmio/cors-bundle": "2.6.0",
"phpdocumentor/reflection-docblock": "5.6.3",
- "phpmyadmin/sql-parser": "5.11.1",
+ "phpmyadmin/sql-parser": "6.0.0",
"ramsey/uuid": "4.9.1",
"rize/uri-template": "0.4.0",
"sentry/sentry-symfony": "5.6.0",
"stof/doctrine-extensions-bundle": "1.14.0",
"swaggest/json-schema": "0.12.43",
"symfony/asset": "7.3.0",
- "symfony/console": "7.3.5",
+ "symfony/console": "7.3.6",
"symfony/dotenv": "7.3.2",
"symfony/expression-language": "7.3.2",
- "symfony/flex": "2.8.2",
- "symfony/framework-bundle": "7.3.5",
- "symfony/http-client": "7.3.4",
+ "symfony/flex": "2.9.0",
+ "symfony/framework-bundle": "7.3.6",
+ "symfony/http-client": "7.3.6",
"symfony/intl": "7.3.5",
- "symfony/mailer": "7.3.4",
+ "symfony/mailer": "7.3.5",
"symfony/monolog-bundle": "3.10.0",
"symfony/property-access": "7.3.3",
"symfony/property-info": "7.3.5",
@@ -57,27 +57,27 @@
"symfony/serializer": "7.3.5",
"symfony/translation": "7.3.4",
"symfony/twig-bundle": "7.3.4",
- "symfony/validator": "7.3.4",
+ "symfony/validator": "7.3.7",
"symfony/yaml": "7.3.5",
"twig/cssinliner-extra": "^3.4",
- "twig/extra-bundle": "3.21.0",
- "webonyx/graphql-php": "15.25.1"
+ "twig/extra-bundle": "3.22.1",
+ "webonyx/graphql-php": "15.25.2"
},
"require-dev": {
- "api-platform/graphql": "4.1.23",
- "brianium/paratest": "v7.14.1",
- "friendsofphp/php-cs-fixer": "3.89.0",
- "hautelook/alice-bundle": "2.15.1",
- "justinrainbow/json-schema": "6.6.0",
- "php-coveralls/php-coveralls": "2.8.0",
+ "api-platform/graphql": "4.1.26",
+ "brianium/paratest": "v7.14.2",
+ "friendsofphp/php-cs-fixer": "3.89.2",
+ "hautelook/alice-bundle": "2.16.0",
+ "justinrainbow/json-schema": "6.6.1",
+ "php-coveralls/php-coveralls": "2.9.0",
"phpspec/prophecy-phpunit": "2.4.0",
"phpstan/phpstan": "2.1.31",
- "phpunit/phpunit": "12.4.1",
- "rector/rector": "2.2.3",
+ "phpunit/phpunit": "12.4.2",
+ "rector/rector": "2.2.7",
"psalm/phar": "6.13.1",
"spatie/phpunit-snapshot-assertions": "5.2.2",
- "symfony/browser-kit": "7.3.2",
- "symfony/css-selector": "7.3.0",
+ "symfony/browser-kit": "7.3.6",
+ "symfony/css-selector": "7.3.6",
"symfony/debug-bundle": "7.3.5",
"symfony/maker-bundle": "1.64.0",
"symfony/stopwatch": "7.3.0",
@@ -124,8 +124,8 @@
"symfony/polyfill-php71": "*"
},
"scripts": {
- "cs-check": "PHP_CS_FIXER_IGNORE_ENV=1 php-cs-fixer fix --dry-run",
- "cs-fix": "PHP_CS_FIXER_IGNORE_ENV=1 php-cs-fixer fix",
+ "cs-check": "php-cs-fixer fix --dry-run",
+ "cs-fix": "php-cs-fixer fix",
"test": [
"Composer\\Config::disableProcessTimeout",
"vendor/bin/phpunit -d memory_limit=-1 -c phpunit.xml.dist"
diff --git a/api/composer.lock b/api/composer.lock
index cf659d03c4..196eacb287 100644
--- a/api/composer.lock
+++ b/api/composer.lock
@@ -4,11 +4,11 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "1e9f4c78675fba13c4e2de7d0a431bd0",
+ "content-hash": "a28785f190f90a6ec31e167cf957ec53",
"packages": [
{
"name": "api-platform/doctrine-common",
- "version": "v4.2.0",
+ "version": "v4.2.3",
"source": {
"type": "git",
"url": "https://github.com/api-platform/doctrine-common.git",
@@ -92,31 +92,31 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/doctrine-common/tree/v4.2.0"
+ "source": "https://github.com/api-platform/doctrine-common/tree/v4.2.3"
},
"time": "2025-08-27T12:34:14+00:00"
},
{
"name": "api-platform/doctrine-orm",
- "version": "v4.1.24",
+ "version": "v4.2.3",
"source": {
"type": "git",
"url": "https://github.com/api-platform/doctrine-orm.git",
- "reference": "9989d0fd4badfe77fa71fed9ae734d146bc0495d"
+ "reference": "f30b580379ea16f6de3e27ecf8e474335af011f9"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/doctrine-orm/zipball/9989d0fd4badfe77fa71fed9ae734d146bc0495d",
- "reference": "9989d0fd4badfe77fa71fed9ae734d146bc0495d",
+ "url": "https://api.github.com/repos/api-platform/doctrine-orm/zipball/f30b580379ea16f6de3e27ecf8e474335af011f9",
+ "reference": "f30b580379ea16f6de3e27ecf8e474335af011f9",
"shasum": ""
},
"require": {
- "api-platform/doctrine-common": "^4.1.11",
+ "api-platform/doctrine-common": "^4.2.0-alpha.3@alpha",
"api-platform/metadata": "^4.1.11",
"api-platform/state": "^4.1.11",
"doctrine/orm": "^2.17 || ^3.0",
"php": ">=8.2",
- "symfony/property-info": "^6.4 || ^7.1"
+ "symfony/type-info": "^7.3"
},
"require-dev": {
"doctrine/doctrine-bundle": "^2.11",
@@ -127,6 +127,7 @@
"symfony/cache": "^6.4 || ^7.0",
"symfony/framework-bundle": "^6.4 || ^7.0",
"symfony/property-access": "^6.4 || ^7.0",
+ "symfony/property-info": "^6.4 || ^7.1",
"symfony/serializer": "^6.4 || ^7.0",
"symfony/uid": "^6.4 || ^7.0",
"symfony/validator": "^6.4 || ^7.0",
@@ -144,7 +145,8 @@
"branch-alias": {
"dev-3.4": "3.4.x-dev",
"dev-4.1": "4.1.x-dev",
- "dev-main": "4.2.x-dev"
+ "dev-4.2": "4.2.x-dev",
+ "dev-main": "4.3.x-dev"
}
},
"autoload": {
@@ -177,13 +179,13 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/doctrine-orm/tree/v4.1.24"
+ "source": "https://github.com/api-platform/doctrine-orm/tree/v4.2.3"
},
- "time": "2025-09-15T09:57:10+00:00"
+ "time": "2025-10-31T11:51:24+00:00"
},
{
"name": "api-platform/documentation",
- "version": "v4.2.0",
+ "version": "v4.2.3",
"source": {
"type": "git",
"url": "https://github.com/api-platform/documentation.git",
@@ -240,22 +242,22 @@
],
"description": "API Platform documentation controller.",
"support": {
- "source": "https://github.com/api-platform/documentation/tree/v4.2.0"
+ "source": "https://github.com/api-platform/documentation/tree/v4.2.3"
},
"time": "2025-08-19T08:04:29+00:00"
},
{
"name": "api-platform/http-cache",
- "version": "v4.1.24",
+ "version": "v4.2.3",
"source": {
"type": "git",
"url": "https://github.com/api-platform/http-cache.git",
- "reference": "3a6b69e57280b30d8db5a25bf3f52edb7f9069fc"
+ "reference": "aef434b026b861ea451d814c86838b5470b8bfb4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/http-cache/zipball/3a6b69e57280b30d8db5a25bf3f52edb7f9069fc",
- "reference": "3a6b69e57280b30d8db5a25bf3f52edb7f9069fc",
+ "url": "https://api.github.com/repos/api-platform/http-cache/zipball/aef434b026b861ea451d814c86838b5470b8bfb4",
+ "reference": "aef434b026b861ea451d814c86838b5470b8bfb4",
"shasum": ""
},
"require": {
@@ -269,7 +271,8 @@
"phpspec/prophecy-phpunit": "^2.2",
"phpunit/phpunit": "11.5.x-dev",
"symfony/dependency-injection": "^6.4 || ^7.0",
- "symfony/http-client": "^6.4 || ^7.0"
+ "symfony/http-client": "^6.4 || ^7.0",
+ "symfony/type-info": "^7.3"
},
"type": "library",
"extra": {
@@ -283,7 +286,8 @@
"branch-alias": {
"dev-3.4": "3.4.x-dev",
"dev-4.1": "4.1.x-dev",
- "dev-main": "4.2.x-dev"
+ "dev-4.2": "4.2.x-dev",
+ "dev-main": "4.3.x-dev"
}
},
"autoload": {
@@ -318,13 +322,13 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/http-cache/tree/v4.1.24"
+ "source": "https://github.com/api-platform/http-cache/tree/v4.2.3"
},
- "time": "2025-09-16T07:16:14+00:00"
+ "time": "2025-09-16T12:51:08+00:00"
},
{
"name": "api-platform/hydra",
- "version": "v4.1.25",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/hydra.git",
@@ -403,13 +407,13 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/hydra/tree/v4.1.25"
+ "source": "https://github.com/api-platform/hydra/tree/v4.1.26"
},
"time": "2025-07-15T14:10:59+00:00"
},
{
"name": "api-platform/json-api",
- "version": "v4.1.24",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/json-api.git",
@@ -482,13 +486,13 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/json-api/tree/v4.1.24"
+ "source": "https://github.com/api-platform/json-api/tree/v4.1.26"
},
"time": "2025-09-15T09:57:10+00:00"
},
{
"name": "api-platform/json-hal",
- "version": "v4.1.24",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/json-hal.git",
@@ -557,14 +561,14 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/json-hal/tree/v4.1.24"
+ "source": "https://github.com/api-platform/json-hal/tree/v4.1.26"
},
"abandoned": "api-platform/hal",
"time": "2025-09-15T09:57:10+00:00"
},
{
"name": "api-platform/json-schema",
- "version": "v4.1.25",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/json-schema.git",
@@ -637,13 +641,13 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/json-schema/tree/v4.1.25"
+ "source": "https://github.com/api-platform/json-schema/tree/v4.1.26"
},
"time": "2025-06-29T12:24:14+00:00"
},
{
"name": "api-platform/jsonld",
- "version": "v4.2.2",
+ "version": "v4.2.3",
"source": {
"type": "git",
"url": "https://github.com/api-platform/jsonld.git",
@@ -717,13 +721,13 @@
"rest"
],
"support": {
- "source": "https://github.com/api-platform/jsonld/tree/v4.2.2"
+ "source": "https://github.com/api-platform/jsonld/tree/v4.2.3"
},
"time": "2025-09-25T19:30:56+00:00"
},
{
"name": "api-platform/metadata",
- "version": "v4.1.24",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/metadata.git",
@@ -814,13 +818,13 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/metadata/tree/v4.1.24"
+ "source": "https://github.com/api-platform/metadata/tree/v4.1.26"
},
"time": "2025-09-15T09:57:10+00:00"
},
{
"name": "api-platform/openapi",
- "version": "v4.1.24",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/openapi.git",
@@ -901,22 +905,22 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/openapi/tree/v4.1.24"
+ "source": "https://github.com/api-platform/openapi/tree/v4.1.26"
},
"time": "2025-07-29T08:53:27+00:00"
},
{
"name": "api-platform/serializer",
- "version": "v4.1.24",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/serializer.git",
- "reference": "2327eaa8fc5c0a22f070e9b863cf4833b0c05903"
+ "reference": "ef803224c5c7c6f44c6cff9ac775e8616a3c5106"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/serializer/zipball/2327eaa8fc5c0a22f070e9b863cf4833b0c05903",
- "reference": "2327eaa8fc5c0a22f070e9b863cf4833b0c05903",
+ "url": "https://api.github.com/repos/api-platform/serializer/zipball/ef803224c5c7c6f44c6cff9ac775e8616a3c5106",
+ "reference": "ef803224c5c7c6f44c6cff9ac775e8616a3c5106",
"shasum": ""
},
"require": {
@@ -992,22 +996,22 @@
"serializer"
],
"support": {
- "source": "https://github.com/api-platform/serializer/tree/v4.1.24"
+ "source": "https://github.com/api-platform/serializer/tree/v4.1.26"
},
- "time": "2025-09-15T09:57:10+00:00"
+ "time": "2025-10-28T10:28:36+00:00"
},
{
"name": "api-platform/state",
- "version": "v4.1.24",
+ "version": "v4.2.3",
"source": {
"type": "git",
"url": "https://github.com/api-platform/state.git",
- "reference": "056b07285cdc904984fb44c2614f7df8f4620a95"
+ "reference": "5a74ea2ca36d0651bf637b0da6c10db4383172bf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/state/zipball/056b07285cdc904984fb44c2614f7df8f4620a95",
- "reference": "056b07285cdc904984fb44c2614f7df8f4620a95",
+ "url": "https://api.github.com/repos/api-platform/state/zipball/5a74ea2ca36d0651bf637b0da6c10db4383172bf",
+ "reference": "5a74ea2ca36d0651bf637b0da6c10db4383172bf",
"shasum": ""
},
"require": {
@@ -1019,9 +1023,12 @@
"symfony/translation-contracts": "^3.0"
},
"require-dev": {
+ "api-platform/serializer": "^4.1",
"api-platform/validator": "^4.1",
"phpunit/phpunit": "11.5.x-dev",
"symfony/http-foundation": "^6.4 || ^7.0",
+ "symfony/object-mapper": "^7.3",
+ "symfony/type-info": "^7.3",
"symfony/web-link": "^6.4 || ^7.1",
"willdurand/negotiation": "^3.1"
},
@@ -1044,7 +1051,8 @@
"branch-alias": {
"dev-3.4": "3.4.x-dev",
"dev-4.1": "4.1.x-dev",
- "dev-main": "4.2.x-dev"
+ "dev-4.2": "4.2.x-dev",
+ "dev-main": "4.3.x-dev"
}
},
"autoload": {
@@ -1084,22 +1092,22 @@
"swagger"
],
"support": {
- "source": "https://github.com/api-platform/state/tree/v4.1.24"
+ "source": "https://github.com/api-platform/state/tree/v4.2.3"
},
- "time": "2025-07-16T14:01:52+00:00"
+ "time": "2025-10-31T10:04:25+00:00"
},
{
"name": "api-platform/symfony",
- "version": "v4.1.23",
+ "version": "v4.1.24",
"source": {
"type": "git",
"url": "https://github.com/api-platform/symfony.git",
- "reference": "e35839489b4e76ffc5fc2b0cbadbbaece75b9ad1"
+ "reference": "bf2b171d067f2a502af202bf3bca30c44ecc8b52"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/symfony/zipball/e35839489b4e76ffc5fc2b0cbadbbaece75b9ad1",
- "reference": "e35839489b4e76ffc5fc2b0cbadbbaece75b9ad1",
+ "url": "https://api.github.com/repos/api-platform/symfony/zipball/bf2b171d067f2a502af202bf3bca30c44ecc8b52",
+ "reference": "bf2b171d067f2a502af202bf3bca30c44ecc8b52",
"shasum": ""
},
"require": {
@@ -1208,22 +1216,22 @@
"symfony"
],
"support": {
- "source": "https://github.com/api-platform/symfony/tree/v4.1.23"
+ "source": "https://github.com/api-platform/symfony/tree/v4.1.24"
},
- "time": "2025-09-05T07:30:37+00:00"
+ "time": "2025-09-15T09:57:10+00:00"
},
{
"name": "api-platform/validator",
- "version": "v4.2.0",
+ "version": "v4.2.3",
"source": {
"type": "git",
"url": "https://github.com/api-platform/validator.git",
- "reference": "562f97b0acdacef462ff9ececd62158ae4709530"
+ "reference": "bb8697d3676f9034865dfbf96df9e55734aecad5"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/validator/zipball/562f97b0acdacef462ff9ececd62158ae4709530",
- "reference": "562f97b0acdacef462ff9ececd62158ae4709530",
+ "url": "https://api.github.com/repos/api-platform/validator/zipball/bb8697d3676f9034865dfbf96df9e55734aecad5",
+ "reference": "bb8697d3676f9034865dfbf96df9e55734aecad5",
"shasum": ""
},
"require": {
@@ -1284,9 +1292,9 @@
"validator"
],
"support": {
- "source": "https://github.com/api-platform/validator/tree/v4.2.0"
+ "source": "https://github.com/api-platform/validator/tree/v4.2.3"
},
- "time": "2025-09-05T08:12:26+00:00"
+ "time": "2025-10-31T11:51:24+00:00"
},
{
"name": "brick/math",
@@ -1537,16 +1545,16 @@
},
{
"name": "doctrine/collections",
- "version": "2.3.0",
+ "version": "2.4.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/collections.git",
- "reference": "2eb07e5953eed811ce1b309a7478a3b236f2273d"
+ "reference": "9acfeea2e8666536edff3d77c531261c63680160"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/collections/zipball/2eb07e5953eed811ce1b309a7478a3b236f2273d",
- "reference": "2eb07e5953eed811ce1b309a7478a3b236f2273d",
+ "url": "https://api.github.com/repos/doctrine/collections/zipball/9acfeea2e8666536edff3d77c531261c63680160",
+ "reference": "9acfeea2e8666536edff3d77c531261c63680160",
"shasum": ""
},
"require": {
@@ -1555,11 +1563,11 @@
"symfony/polyfill-php84": "^1.30"
},
"require-dev": {
- "doctrine/coding-standard": "^12",
+ "doctrine/coding-standard": "^14",
"ext-json": "*",
- "phpstan/phpstan": "^1.8",
- "phpstan/phpstan-phpunit": "^1.0",
- "phpunit/phpunit": "^10.5"
+ "phpstan/phpstan": "^2.1.30",
+ "phpstan/phpstan-phpunit": "^2.0.7",
+ "phpunit/phpunit": "^10.5.58 || ^11.5.42 || ^12.4"
},
"type": "library",
"autoload": {
@@ -1603,7 +1611,7 @@
],
"support": {
"issues": "https://github.com/doctrine/collections/issues",
- "source": "https://github.com/doctrine/collections/tree/2.3.0"
+ "source": "https://github.com/doctrine/collections/tree/2.4.0"
},
"funding": [
{
@@ -1619,7 +1627,7 @@
"type": "tidelift"
}
],
- "time": "2025-03-22T10:17:19+00:00"
+ "time": "2025-10-25T09:18:13+00:00"
},
{
"name": "doctrine/common",
@@ -1868,16 +1876,16 @@
},
{
"name": "doctrine/doctrine-bundle",
- "version": "2.18.0",
+ "version": "2.18.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineBundle.git",
- "reference": "cd5d4da6a5f7cf3d8708e17211234657b5eb4e95"
+ "reference": "b769877014de053da0e5cbbb63d0ea2f3b2fea76"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/cd5d4da6a5f7cf3d8708e17211234657b5eb4e95",
- "reference": "cd5d4da6a5f7cf3d8708e17211234657b5eb4e95",
+ "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/b769877014de053da0e5cbbb63d0ea2f3b2fea76",
+ "reference": "b769877014de053da0e5cbbb63d0ea2f3b2fea76",
"shasum": ""
},
"require": {
@@ -1969,7 +1977,7 @@
],
"support": {
"issues": "https://github.com/doctrine/DoctrineBundle/issues",
- "source": "https://github.com/doctrine/DoctrineBundle/tree/2.18.0"
+ "source": "https://github.com/doctrine/DoctrineBundle/tree/2.18.1"
},
"funding": [
{
@@ -1985,20 +1993,20 @@
"type": "tidelift"
}
],
- "time": "2025-10-11T04:43:27+00:00"
+ "time": "2025-11-05T14:42:10+00:00"
},
{
"name": "doctrine/doctrine-migrations-bundle",
- "version": "3.5.0",
+ "version": "3.6.0",
"source": {
"type": "git",
"url": "https://github.com/doctrine/DoctrineMigrationsBundle.git",
- "reference": "71c81279ca0e907c3edc718418b93fd63074856c"
+ "reference": "49ecc564568d7da101779112579e78b677fbc94a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/71c81279ca0e907c3edc718418b93fd63074856c",
- "reference": "71c81279ca0e907c3edc718418b93fd63074856c",
+ "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/49ecc564568d7da101779112579e78b677fbc94a",
+ "reference": "49ecc564568d7da101779112579e78b677fbc94a",
"shasum": ""
},
"require": {
@@ -2006,7 +2014,7 @@
"doctrine/migrations": "^3.2",
"php": "^7.2 || ^8.0",
"symfony/deprecation-contracts": "^2.1 || ^3",
- "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0"
+ "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0 || ^8.0"
},
"require-dev": {
"composer/semver": "^3.0",
@@ -2018,8 +2026,8 @@
"phpstan/phpstan-strict-rules": "^1.1 || ^2",
"phpstan/phpstan-symfony": "^1.3 || ^2",
"phpunit/phpunit": "^8.5 || ^9.5",
- "symfony/phpunit-bridge": "^6.3 || ^7",
- "symfony/var-exporter": "^5.4 || ^6 || ^7"
+ "symfony/phpunit-bridge": "^6.3 || ^7 || ^8",
+ "symfony/var-exporter": "^5.4 || ^6 || ^7 || ^8"
},
"type": "symfony-bundle",
"autoload": {
@@ -2054,7 +2062,7 @@
],
"support": {
"issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues",
- "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.5.0"
+ "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/3.6.0"
},
"funding": [
{
@@ -2070,7 +2078,7 @@
"type": "tidelift"
}
],
- "time": "2025-10-12T17:06:40+00:00"
+ "time": "2025-11-07T19:40:03+00:00"
},
{
"name": "doctrine/event-manager",
@@ -2505,16 +2513,16 @@
},
{
"name": "doctrine/orm",
- "version": "3.5.2",
+ "version": "3.5.3",
"source": {
"type": "git",
"url": "https://github.com/doctrine/orm.git",
- "reference": "5a541b8b3a327ab1ea5f93b1615b4ff67a34e109"
+ "reference": "1220edf9535303feb6dbfcf171beeef842fc9e1c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/orm/zipball/5a541b8b3a327ab1ea5f93b1615b4ff67a34e109",
- "reference": "5a541b8b3a327ab1ea5f93b1615b4ff67a34e109",
+ "url": "https://api.github.com/repos/doctrine/orm/zipball/1220edf9535303feb6dbfcf171beeef842fc9e1c",
+ "reference": "1220edf9535303feb6dbfcf171beeef842fc9e1c",
"shasum": ""
},
"require": {
@@ -2534,15 +2542,14 @@
"symfony/var-exporter": "^6.3.9 || ^7.0"
},
"require-dev": {
- "doctrine/coding-standard": "^13.0",
+ "doctrine/coding-standard": "^14.0",
"phpbench/phpbench": "^1.0",
"phpdocumentor/guides-cli": "^1.4",
"phpstan/extension-installer": "^1.4",
- "phpstan/phpstan": "2.0.3",
+ "phpstan/phpstan": "2.1.22",
"phpstan/phpstan-deprecation-rules": "^2",
- "phpunit/phpunit": "^10.4.0",
+ "phpunit/phpunit": "^10.5.0 || ^11.5",
"psr/log": "^1 || ^2 || ^3",
- "squizlabs/php_codesniffer": "3.12.0",
"symfony/cache": "^5.4 || ^6.2 || ^7.0"
},
"suggest": {
@@ -2589,9 +2596,9 @@
],
"support": {
"issues": "https://github.com/doctrine/orm/issues",
- "source": "https://github.com/doctrine/orm/tree/3.5.2"
+ "source": "https://github.com/doctrine/orm/tree/3.5.3"
},
- "time": "2025-08-08T17:00:40+00:00"
+ "time": "2025-10-27T22:06:52+00:00"
},
{
"name": "doctrine/persistence",
@@ -2688,26 +2695,26 @@
},
{
"name": "doctrine/sql-formatter",
- "version": "1.5.2",
+ "version": "1.5.3",
"source": {
"type": "git",
"url": "https://github.com/doctrine/sql-formatter.git",
- "reference": "d6d00aba6fd2957fe5216fe2b7673e9985db20c8"
+ "reference": "a8af23a8e9d622505baa2997465782cbe8bb7fc7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/doctrine/sql-formatter/zipball/d6d00aba6fd2957fe5216fe2b7673e9985db20c8",
- "reference": "d6d00aba6fd2957fe5216fe2b7673e9985db20c8",
+ "url": "https://api.github.com/repos/doctrine/sql-formatter/zipball/a8af23a8e9d622505baa2997465782cbe8bb7fc7",
+ "reference": "a8af23a8e9d622505baa2997465782cbe8bb7fc7",
"shasum": ""
},
"require": {
"php": "^8.1"
},
"require-dev": {
- "doctrine/coding-standard": "^12",
- "ergebnis/phpunit-slow-test-detector": "^2.14",
- "phpstan/phpstan": "^1.10",
- "phpunit/phpunit": "^10.5"
+ "doctrine/coding-standard": "^14",
+ "ergebnis/phpunit-slow-test-detector": "^2.20",
+ "phpstan/phpstan": "^2.1.31",
+ "phpunit/phpunit": "^10.5.58"
},
"bin": [
"bin/sql-formatter"
@@ -2737,9 +2744,9 @@
],
"support": {
"issues": "https://github.com/doctrine/sql-formatter/issues",
- "source": "https://github.com/doctrine/sql-formatter/tree/1.5.2"
+ "source": "https://github.com/doctrine/sql-formatter/tree/1.5.3"
},
- "time": "2025-01-24T11:45:48+00:00"
+ "time": "2025-10-26T09:35:14+00:00"
},
{
"name": "egulias/email-validator",
@@ -3823,20 +3830,20 @@
},
{
"name": "lcobucci/clock",
- "version": "3.4.0",
+ "version": "3.5.0",
"source": {
"type": "git",
"url": "https://github.com/lcobucci/clock.git",
- "reference": "f91d84f65cb3e974988bbe872b5da8ca132a155f"
+ "reference": "a3139d9e97d47826f27e6a17bb63f13621f86058"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/lcobucci/clock/zipball/f91d84f65cb3e974988bbe872b5da8ca132a155f",
- "reference": "f91d84f65cb3e974988bbe872b5da8ca132a155f",
+ "url": "https://api.github.com/repos/lcobucci/clock/zipball/a3139d9e97d47826f27e6a17bb63f13621f86058",
+ "reference": "a3139d9e97d47826f27e6a17bb63f13621f86058",
"shasum": ""
},
"require": {
- "php": "~8.3.0 || ~8.4.0",
+ "php": "~8.3.0 || ~8.4.0 || ~8.5.0",
"psr/clock": "^1.0"
},
"provide": {
@@ -3844,7 +3851,7 @@
},
"require-dev": {
"infection/infection": "^0.31",
- "lcobucci/coding-standard": "^11.1.0",
+ "lcobucci/coding-standard": "^11.2.0",
"phpstan/extension-installer": "^1.3.1",
"phpstan/phpstan": "^2.0.0",
"phpstan/phpstan-deprecation-rules": "^2.0.0",
@@ -3871,7 +3878,7 @@
"description": "Yet another clock abstraction",
"support": {
"issues": "https://github.com/lcobucci/clock/issues",
- "source": "https://github.com/lcobucci/clock/tree/3.4.0"
+ "source": "https://github.com/lcobucci/clock/tree/3.5.0"
},
"funding": [
{
@@ -3883,7 +3890,7 @@
"type": "patreon"
}
],
- "time": "2025-10-08T18:00:48+00:00"
+ "time": "2025-10-27T09:03:17+00:00"
},
{
"name": "lcobucci/jwt",
@@ -4299,25 +4306,28 @@
},
{
"name": "nelmio/cors-bundle",
- "version": "2.5.0",
+ "version": "2.6.0",
"source": {
"type": "git",
"url": "https://github.com/nelmio/NelmioCorsBundle.git",
- "reference": "3a526fe025cd20e04a6a11370cf5ab28dbb5a544"
+ "reference": "530217472204881cacd3671909f634b960c7b948"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/nelmio/NelmioCorsBundle/zipball/3a526fe025cd20e04a6a11370cf5ab28dbb5a544",
- "reference": "3a526fe025cd20e04a6a11370cf5ab28dbb5a544",
+ "url": "https://api.github.com/repos/nelmio/NelmioCorsBundle/zipball/530217472204881cacd3671909f634b960c7b948",
+ "reference": "530217472204881cacd3671909f634b960c7b948",
"shasum": ""
},
"require": {
"psr/log": "^1.0 || ^2.0 || ^3.0",
- "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0"
+ "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0 || ^8.0"
},
"require-dev": {
- "mockery/mockery": "^1.3.6",
- "symfony/phpunit-bridge": "^5.4 || ^6.0 || ^7.0"
+ "phpstan/phpstan": "^1.11.5",
+ "phpstan/phpstan-deprecation-rules": "^1.2.0",
+ "phpstan/phpstan-phpunit": "^1.4",
+ "phpstan/phpstan-symfony": "^1.4.4",
+ "phpunit/phpunit": "^8"
},
"type": "symfony-bundle",
"extra": {
@@ -4355,9 +4365,9 @@
],
"support": {
"issues": "https://github.com/nelmio/NelmioCorsBundle/issues",
- "source": "https://github.com/nelmio/NelmioCorsBundle/tree/2.5.0"
+ "source": "https://github.com/nelmio/NelmioCorsBundle/tree/2.6.0"
},
- "time": "2024-06-24T21:25:28+00:00"
+ "time": "2025-10-23T06:57:22+00:00"
},
{
"name": "php-http/client-common",
@@ -4910,51 +4920,52 @@
},
{
"name": "phpmyadmin/sql-parser",
- "version": "5.11.1",
+ "version": "6.0.0",
"source": {
"type": "git",
"url": "https://github.com/phpmyadmin/sql-parser.git",
- "reference": "1b70d03526df92bd1e170e2670b7d3510e1b722b"
+ "reference": "75397801ef687ef6b850e907a40c60b9d6b755db"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpmyadmin/sql-parser/zipball/1b70d03526df92bd1e170e2670b7d3510e1b722b",
- "reference": "1b70d03526df92bd1e170e2670b7d3510e1b722b",
+ "url": "https://api.github.com/repos/phpmyadmin/sql-parser/zipball/75397801ef687ef6b850e907a40c60b9d6b755db",
+ "reference": "75397801ef687ef6b850e907a40c60b9d6b755db",
"shasum": ""
},
"require": {
- "php": "^7.2 || ^8.0",
- "symfony/polyfill-mbstring": "^1.3",
- "symfony/polyfill-php80": "^1.16"
+ "php": "^8.2",
+ "symfony/polyfill-mbstring": "^1.24"
},
"conflict": {
- "phpmyadmin/motranslator": "<3.0"
+ "phpmyadmin/motranslator": "<5.2"
},
"require-dev": {
- "phpbench/phpbench": "^1.1",
- "phpmyadmin/coding-standard": "^3.0",
- "phpmyadmin/motranslator": "^4.0 || ^5.0",
+ "phpbench/phpbench": "^1.2",
+ "phpmyadmin/coding-standard": "^4.0",
+ "phpmyadmin/motranslator": "^5.3",
"phpstan/extension-installer": "^1.4",
- "phpstan/phpstan": "^1.12",
- "phpstan/phpstan-deprecation-rules": "^1.2",
- "phpstan/phpstan-phpunit": "^1.4",
- "phpstan/phpstan-strict-rules": "^1.6",
- "phpunit/phpunit": "^8.5 || ^9.6",
- "psalm/plugin-phpunit": "^0.16.1",
- "vimeo/psalm": "^4.11",
- "zumba/json-serializer": "~3.0.2"
+ "phpstan/phpstan": "^2.1",
+ "phpstan/phpstan-deprecation-rules": "^2.0",
+ "phpstan/phpstan-phpunit": "^2.0",
+ "phpstan/phpstan-strict-rules": "^2.0",
+ "phpunit/phpunit": "^11.5",
+ "psalm/plugin-phpunit": "^0.19.2",
+ "vimeo/psalm": "^6.0",
+ "zumba/json-serializer": "^3.2"
},
"suggest": {
"ext-mbstring": "For best performance",
"phpmyadmin/motranslator": "Translate messages to your favorite locale"
},
"bin": [
- "bin/highlight-query",
- "bin/lint-query",
- "bin/sql-parser",
- "bin/tokenize-query"
+ "bin/sql-parser"
],
"type": "library",
+ "extra": {
+ "branch-alias": {
+ "dev-master": "6.0-dev"
+ }
+ },
"autoload": {
"psr-4": {
"PhpMyAdmin\\SqlParser\\": "src"
@@ -4995,7 +5006,7 @@
"type": "other"
}
],
- "time": "2025-07-20T15:49:56+00:00"
+ "time": "2025-10-31T22:05:33+00:00"
},
{
"name": "phpstan/phpdoc-parser",
@@ -5774,16 +5785,16 @@
},
{
"name": "sentry/sentry",
- "version": "4.17.1",
+ "version": "4.18.1",
"source": {
"type": "git",
"url": "https://github.com/getsentry/sentry-php.git",
- "reference": "5c696b8de57e841a2bf3b6f6eecfd99acfdda80c"
+ "reference": "04dcf20b39742b731b676f8b8d4f02d1db488af8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/5c696b8de57e841a2bf3b6f6eecfd99acfdda80c",
- "reference": "5c696b8de57e841a2bf3b6f6eecfd99acfdda80c",
+ "url": "https://api.github.com/repos/getsentry/sentry-php/zipball/04dcf20b39742b731b676f8b8d4f02d1db488af8",
+ "reference": "04dcf20b39742b731b676f8b8d4f02d1db488af8",
"shasum": ""
},
"require": {
@@ -5794,7 +5805,7 @@
"jean85/pretty-package-versions": "^1.5|^2.0.4",
"php": "^7.2|^8.0",
"psr/log": "^1.0|^2.0|^3.0",
- "symfony/options-resolver": "^4.4.30|^5.0.11|^6.0|^7.0"
+ "symfony/options-resolver": "^4.4.30|^5.0.11|^6.0|^7.0|^8.0"
},
"conflict": {
"raven/raven": "*"
@@ -5846,7 +5857,7 @@
],
"support": {
"issues": "https://github.com/getsentry/sentry-php/issues",
- "source": "https://github.com/getsentry/sentry-php/tree/4.17.1"
+ "source": "https://github.com/getsentry/sentry-php/tree/4.18.1"
},
"funding": [
{
@@ -5858,7 +5869,7 @@
"type": "custom"
}
],
- "time": "2025-10-23T15:19:24+00:00"
+ "time": "2025-11-11T09:34:53+00:00"
},
{
"name": "sentry/sentry-symfony",
@@ -6209,16 +6220,16 @@
},
{
"name": "symfony/cache",
- "version": "v7.3.4",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/cache.git",
- "reference": "bf8afc8ffd4bfd3d9c373e417f041d9f1e5b863f"
+ "reference": "1277a1ec61c8d93ea61b2a59738f1deb9bfb6701"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/cache/zipball/bf8afc8ffd4bfd3d9c373e417f041d9f1e5b863f",
- "reference": "bf8afc8ffd4bfd3d9c373e417f041d9f1e5b863f",
+ "url": "https://api.github.com/repos/symfony/cache/zipball/1277a1ec61c8d93ea61b2a59738f1deb9bfb6701",
+ "reference": "1277a1ec61c8d93ea61b2a59738f1deb9bfb6701",
"shasum": ""
},
"require": {
@@ -6287,7 +6298,7 @@
"psr6"
],
"support": {
- "source": "https://github.com/symfony/cache/tree/v7.3.4"
+ "source": "https://github.com/symfony/cache/tree/v7.3.6"
},
"funding": [
{
@@ -6307,7 +6318,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-11T10:12:26+00:00"
+ "time": "2025-10-30T13:22:58+00:00"
},
{
"name": "symfony/cache-contracts",
@@ -6461,16 +6472,16 @@
},
{
"name": "symfony/config",
- "version": "v7.3.4",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/config.git",
- "reference": "8a09223170046d2cfda3d2e11af01df2c641e961"
+ "reference": "9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/config/zipball/8a09223170046d2cfda3d2e11af01df2c641e961",
- "reference": "8a09223170046d2cfda3d2e11af01df2c641e961",
+ "url": "https://api.github.com/repos/symfony/config/zipball/9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7",
+ "reference": "9d18eba95655a3152ae4c1d53c6cc34eb4d4a0b7",
"shasum": ""
},
"require": {
@@ -6516,7 +6527,7 @@
"description": "Helps you find, load, combine, autofill and validate configuration values of any kind",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/config/tree/v7.3.4"
+ "source": "https://github.com/symfony/config/tree/v7.3.6"
},
"funding": [
{
@@ -6536,20 +6547,20 @@
"type": "tidelift"
}
],
- "time": "2025-09-22T12:46:16+00:00"
+ "time": "2025-11-02T08:04:43+00:00"
},
{
"name": "symfony/console",
- "version": "v7.3.5",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
- "reference": "cdb80fa5869653c83cfe1a9084a673b6daf57ea7"
+ "reference": "c28ad91448f86c5f6d9d2c70f0cf68bf135f252a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/console/zipball/cdb80fa5869653c83cfe1a9084a673b6daf57ea7",
- "reference": "cdb80fa5869653c83cfe1a9084a673b6daf57ea7",
+ "url": "https://api.github.com/repos/symfony/console/zipball/c28ad91448f86c5f6d9d2c70f0cf68bf135f252a",
+ "reference": "c28ad91448f86c5f6d9d2c70f0cf68bf135f252a",
"shasum": ""
},
"require": {
@@ -6614,7 +6625,7 @@
"terminal"
],
"support": {
- "source": "https://github.com/symfony/console/tree/v7.3.5"
+ "source": "https://github.com/symfony/console/tree/v7.3.6"
},
"funding": [
{
@@ -6634,20 +6645,20 @@
"type": "tidelift"
}
],
- "time": "2025-10-14T15:46:26+00:00"
+ "time": "2025-11-04T01:21:42+00:00"
},
{
"name": "symfony/css-selector",
- "version": "v7.3.0",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/css-selector.git",
- "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2"
+ "reference": "84321188c4754e64273b46b406081ad9b18e8614"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/css-selector/zipball/601a5ce9aaad7bf10797e3663faefce9e26c24e2",
- "reference": "601a5ce9aaad7bf10797e3663faefce9e26c24e2",
+ "url": "https://api.github.com/repos/symfony/css-selector/zipball/84321188c4754e64273b46b406081ad9b18e8614",
+ "reference": "84321188c4754e64273b46b406081ad9b18e8614",
"shasum": ""
},
"require": {
@@ -6683,7 +6694,7 @@
"description": "Converts CSS selectors to XPath expressions",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/css-selector/tree/v7.3.0"
+ "source": "https://github.com/symfony/css-selector/tree/v7.3.6"
},
"funding": [
{
@@ -6694,25 +6705,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-25T14:21:43+00:00"
+ "time": "2025-10-29T17:24:25+00:00"
},
{
"name": "symfony/dependency-injection",
- "version": "v7.3.4",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/dependency-injection.git",
- "reference": "82119812ab0bf3425c1234d413efd1b19bb92ae4"
+ "reference": "98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/82119812ab0bf3425c1234d413efd1b19bb92ae4",
- "reference": "82119812ab0bf3425c1234d413efd1b19bb92ae4",
+ "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69",
+ "reference": "98af8bb46c56aedd9dd5a7f0414fc72bf2dcfe69",
"shasum": ""
},
"require": {
@@ -6763,7 +6778,7 @@
"description": "Allows you to standardize and centralize the way objects are constructed in your application",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/dependency-injection/tree/v7.3.4"
+ "source": "https://github.com/symfony/dependency-injection/tree/v7.3.6"
},
"funding": [
{
@@ -6783,7 +6798,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-11T10:12:26+00:00"
+ "time": "2025-10-31T10:11:11+00:00"
},
{
"name": "symfony/deprecation-contracts",
@@ -6854,16 +6869,16 @@
},
{
"name": "symfony/doctrine-bridge",
- "version": "v7.3.4",
+ "version": "v7.3.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/doctrine-bridge.git",
- "reference": "21cd48c34a47a0d0e303a590a67c3450fde55888"
+ "reference": "e7d308bd44ff8673a259e2727d13af6a93a5d83e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/21cd48c34a47a0d0e303a590a67c3450fde55888",
- "reference": "21cd48c34a47a0d0e303a590a67c3450fde55888",
+ "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/e7d308bd44ff8673a259e2727d13af6a93a5d83e",
+ "reference": "e7d308bd44ff8673a259e2727d13af6a93a5d83e",
"shasum": ""
},
"require": {
@@ -6943,7 +6958,7 @@
"description": "Provides integration for Doctrine with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/doctrine-bridge/tree/v7.3.4"
+ "source": "https://github.com/symfony/doctrine-bridge/tree/v7.3.5"
},
"funding": [
{
@@ -6963,7 +6978,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-24T09:56:23+00:00"
+ "time": "2025-09-27T09:00:46+00:00"
},
{
"name": "symfony/dotenv",
@@ -7045,16 +7060,16 @@
},
{
"name": "symfony/error-handler",
- "version": "v7.3.4",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/error-handler.git",
- "reference": "99f81bc944ab8e5dae4f21b4ca9972698bbad0e4"
+ "reference": "bbe40bfab84323d99dab491b716ff142410a92a8"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/error-handler/zipball/99f81bc944ab8e5dae4f21b4ca9972698bbad0e4",
- "reference": "99f81bc944ab8e5dae4f21b4ca9972698bbad0e4",
+ "url": "https://api.github.com/repos/symfony/error-handler/zipball/bbe40bfab84323d99dab491b716ff142410a92a8",
+ "reference": "bbe40bfab84323d99dab491b716ff142410a92a8",
"shasum": ""
},
"require": {
@@ -7102,7 +7117,7 @@
"description": "Provides tools to manage errors and ease debugging PHP code",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/error-handler/tree/v7.3.4"
+ "source": "https://github.com/symfony/error-handler/tree/v7.3.6"
},
"funding": [
{
@@ -7122,7 +7137,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-11T10:12:26+00:00"
+ "time": "2025-10-31T19:12:50+00:00"
},
{
"name": "symfony/event-dispatcher",
@@ -7354,16 +7369,16 @@
},
{
"name": "symfony/filesystem",
- "version": "v7.3.2",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/filesystem.git",
- "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd"
+ "reference": "e9bcfd7837928ab656276fe00464092cc9e1826a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/filesystem/zipball/edcbb768a186b5c3f25d0643159a787d3e63b7fd",
- "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd",
+ "url": "https://api.github.com/repos/symfony/filesystem/zipball/e9bcfd7837928ab656276fe00464092cc9e1826a",
+ "reference": "e9bcfd7837928ab656276fe00464092cc9e1826a",
"shasum": ""
},
"require": {
@@ -7400,7 +7415,7 @@
"description": "Provides basic utilities for the filesystem",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/filesystem/tree/v7.3.2"
+ "source": "https://github.com/symfony/filesystem/tree/v7.3.6"
},
"funding": [
{
@@ -7420,20 +7435,20 @@
"type": "tidelift"
}
],
- "time": "2025-07-07T08:17:47+00:00"
+ "time": "2025-11-05T09:52:27+00:00"
},
{
"name": "symfony/finder",
- "version": "v7.3.2",
+ "version": "v7.3.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/finder.git",
- "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe"
+ "reference": "9f696d2f1e340484b4683f7853b273abff94421f"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/finder/zipball/2a6614966ba1074fa93dae0bc804227422df4dfe",
- "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe",
+ "url": "https://api.github.com/repos/symfony/finder/zipball/9f696d2f1e340484b4683f7853b273abff94421f",
+ "reference": "9f696d2f1e340484b4683f7853b273abff94421f",
"shasum": ""
},
"require": {
@@ -7468,7 +7483,7 @@
"description": "Finds files and directories via an intuitive fluent interface",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/finder/tree/v7.3.2"
+ "source": "https://github.com/symfony/finder/tree/v7.3.5"
},
"funding": [
{
@@ -7488,35 +7503,35 @@
"type": "tidelift"
}
],
- "time": "2025-07-15T13:41:35+00:00"
+ "time": "2025-10-15T18:45:57+00:00"
},
{
"name": "symfony/flex",
- "version": "v2.8.2",
+ "version": "v2.9.0",
"source": {
"type": "git",
"url": "https://github.com/symfony/flex.git",
- "reference": "f356aa35f3cf3d2f46c31d344c1098eb2d260426"
+ "reference": "94b37978c9982dc41c5b6a4147892d2d3d1b9ce6"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/flex/zipball/f356aa35f3cf3d2f46c31d344c1098eb2d260426",
- "reference": "f356aa35f3cf3d2f46c31d344c1098eb2d260426",
+ "url": "https://api.github.com/repos/symfony/flex/zipball/94b37978c9982dc41c5b6a4147892d2d3d1b9ce6",
+ "reference": "94b37978c9982dc41c5b6a4147892d2d3d1b9ce6",
"shasum": ""
},
"require": {
"composer-plugin-api": "^2.1",
- "php": ">=8.0"
+ "php": ">=8.1"
},
"conflict": {
"composer/semver": "<1.7.2"
},
"require-dev": {
"composer/composer": "^2.1",
- "symfony/dotenv": "^5.4|^6.0",
- "symfony/filesystem": "^5.4|^6.0",
- "symfony/phpunit-bridge": "^5.4|^6.0",
- "symfony/process": "^5.4|^6.0"
+ "symfony/dotenv": "^6.4|^7.4|^8.0",
+ "symfony/filesystem": "^6.4|^7.4|^8.0",
+ "symfony/phpunit-bridge": "^6.4|^7.4|^8.0",
+ "symfony/process": "^6.4|^7.4|^8.0"
},
"type": "composer-plugin",
"extra": {
@@ -7540,7 +7555,7 @@
"description": "Composer plugin for Symfony",
"support": {
"issues": "https://github.com/symfony/flex/issues",
- "source": "https://github.com/symfony/flex/tree/v2.8.2"
+ "source": "https://github.com/symfony/flex/tree/v2.9.0"
},
"funding": [
{
@@ -7560,20 +7575,20 @@
"type": "tidelift"
}
],
- "time": "2025-08-22T07:17:23+00:00"
+ "time": "2025-10-31T15:22:50+00:00"
},
{
"name": "symfony/framework-bundle",
- "version": "v7.3.5",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/framework-bundle.git",
- "reference": "ebd42b1fc2652b96d33520195ea0f6e55c36f09d"
+ "reference": "cabfdfa82bc4f75d693a329fe263d96937636b77"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/ebd42b1fc2652b96d33520195ea0f6e55c36f09d",
- "reference": "ebd42b1fc2652b96d33520195ea0f6e55c36f09d",
+ "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/cabfdfa82bc4f75d693a329fe263d96937636b77",
+ "reference": "cabfdfa82bc4f75d693a329fe263d96937636b77",
"shasum": ""
},
"require": {
@@ -7698,7 +7713,7 @@
"description": "Provides a tight integration between Symfony components and the Symfony full-stack framework",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/framework-bundle/tree/v7.3.5"
+ "source": "https://github.com/symfony/framework-bundle/tree/v7.3.6"
},
"funding": [
{
@@ -7718,20 +7733,20 @@
"type": "tidelift"
}
],
- "time": "2025-10-16T16:16:53+00:00"
+ "time": "2025-10-30T09:42:24+00:00"
},
{
"name": "symfony/http-client",
- "version": "v7.3.4",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-client.git",
- "reference": "4b62871a01c49457cf2a8e560af7ee8a94b87a62"
+ "reference": "3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-client/zipball/4b62871a01c49457cf2a8e560af7ee8a94b87a62",
- "reference": "4b62871a01c49457cf2a8e560af7ee8a94b87a62",
+ "url": "https://api.github.com/repos/symfony/http-client/zipball/3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de",
+ "reference": "3c0a55a2c8e21e30a37022801c11c7ab5a6cb2de",
"shasum": ""
},
"require": {
@@ -7798,7 +7813,7 @@
"http"
],
"support": {
- "source": "https://github.com/symfony/http-client/tree/v7.3.4"
+ "source": "https://github.com/symfony/http-client/tree/v7.3.6"
},
"funding": [
{
@@ -7818,7 +7833,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-11T10:12:26+00:00"
+ "time": "2025-11-05T17:41:46+00:00"
},
{
"name": "symfony/http-client-contracts",
@@ -7900,16 +7915,16 @@
},
{
"name": "symfony/http-foundation",
- "version": "v7.3.4",
+ "version": "v7.3.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-foundation.git",
- "reference": "c061c7c18918b1b64268771aad04b40be41dd2e6"
+ "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-foundation/zipball/c061c7c18918b1b64268771aad04b40be41dd2e6",
- "reference": "c061c7c18918b1b64268771aad04b40be41dd2e6",
+ "url": "https://api.github.com/repos/symfony/http-foundation/zipball/db488a62f98f7a81d5746f05eea63a74e55bb7c4",
+ "reference": "db488a62f98f7a81d5746f05eea63a74e55bb7c4",
"shasum": ""
},
"require": {
@@ -7959,7 +7974,7 @@
"description": "Defines an object-oriented layer for the HTTP specification",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-foundation/tree/v7.3.4"
+ "source": "https://github.com/symfony/http-foundation/tree/v7.3.7"
},
"funding": [
{
@@ -7979,20 +7994,20 @@
"type": "tidelift"
}
],
- "time": "2025-09-16T08:38:17+00:00"
+ "time": "2025-11-08T16:41:12+00:00"
},
{
"name": "symfony/http-kernel",
- "version": "v7.3.4",
+ "version": "v7.3.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/http-kernel.git",
- "reference": "b796dffea7821f035047235e076b60ca2446e3cf"
+ "reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/http-kernel/zipball/b796dffea7821f035047235e076b60ca2446e3cf",
- "reference": "b796dffea7821f035047235e076b60ca2446e3cf",
+ "url": "https://api.github.com/repos/symfony/http-kernel/zipball/10b8e9b748ea95fa4539c208e2487c435d3c87ce",
+ "reference": "10b8e9b748ea95fa4539c208e2487c435d3c87ce",
"shasum": ""
},
"require": {
@@ -8077,7 +8092,7 @@
"description": "Provides a structured process for converting a Request into a Response",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/http-kernel/tree/v7.3.4"
+ "source": "https://github.com/symfony/http-kernel/tree/v7.3.7"
},
"funding": [
{
@@ -8097,7 +8112,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-27T12:32:17+00:00"
+ "time": "2025-11-12T11:38:40+00:00"
},
{
"name": "symfony/intl",
@@ -8191,16 +8206,16 @@
},
{
"name": "symfony/mailer",
- "version": "v7.3.4",
+ "version": "v7.3.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/mailer.git",
- "reference": "ab97ef2f7acf0216955f5845484235113047a31d"
+ "reference": "fd497c45ba9c10c37864e19466b090dcb60a50ba"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/mailer/zipball/ab97ef2f7acf0216955f5845484235113047a31d",
- "reference": "ab97ef2f7acf0216955f5845484235113047a31d",
+ "url": "https://api.github.com/repos/symfony/mailer/zipball/fd497c45ba9c10c37864e19466b090dcb60a50ba",
+ "reference": "fd497c45ba9c10c37864e19466b090dcb60a50ba",
"shasum": ""
},
"require": {
@@ -8251,7 +8266,7 @@
"description": "Helps sending emails",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/mailer/tree/v7.3.4"
+ "source": "https://github.com/symfony/mailer/tree/v7.3.5"
},
"funding": [
{
@@ -8271,7 +8286,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-17T05:51:54+00:00"
+ "time": "2025-10-24T14:27:20+00:00"
},
{
"name": "symfony/mime",
@@ -8363,16 +8378,16 @@
},
{
"name": "symfony/monolog-bridge",
- "version": "v7.3.4",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/monolog-bridge.git",
- "reference": "7acf2abe23e5019451399ba69fc8ed3d61d4d8f0"
+ "reference": "48e8542ba35afd2293a8c8fd4bcf8abe46357ddf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/7acf2abe23e5019451399ba69fc8ed3d61d4d8f0",
- "reference": "7acf2abe23e5019451399ba69fc8ed3d61d4d8f0",
+ "url": "https://api.github.com/repos/symfony/monolog-bridge/zipball/48e8542ba35afd2293a8c8fd4bcf8abe46357ddf",
+ "reference": "48e8542ba35afd2293a8c8fd4bcf8abe46357ddf",
"shasum": ""
},
"require": {
@@ -8421,7 +8436,7 @@
"description": "Provides integration for Monolog with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/monolog-bridge/tree/v7.3.4"
+ "source": "https://github.com/symfony/monolog-bridge/tree/v7.3.6"
},
"funding": [
{
@@ -8441,7 +8456,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-24T16:45:39+00:00"
+ "time": "2025-11-01T09:17:24+00:00"
},
{
"name": "symfony/monolog-bundle",
@@ -9172,16 +9187,16 @@
},
{
"name": "symfony/routing",
- "version": "v7.3.4",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/routing.git",
- "reference": "8dc648e159e9bac02b703b9fbd937f19ba13d07c"
+ "reference": "c97abe725f2a1a858deca629a6488c8fc20c3091"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/routing/zipball/8dc648e159e9bac02b703b9fbd937f19ba13d07c",
- "reference": "8dc648e159e9bac02b703b9fbd937f19ba13d07c",
+ "url": "https://api.github.com/repos/symfony/routing/zipball/c97abe725f2a1a858deca629a6488c8fc20c3091",
+ "reference": "c97abe725f2a1a858deca629a6488c8fc20c3091",
"shasum": ""
},
"require": {
@@ -9233,7 +9248,7 @@
"url"
],
"support": {
- "source": "https://github.com/symfony/routing/tree/v7.3.4"
+ "source": "https://github.com/symfony/routing/tree/v7.3.6"
},
"funding": [
{
@@ -9253,7 +9268,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-11T10:12:26+00:00"
+ "time": "2025-11-05T07:57:47+00:00"
},
{
"name": "symfony/runtime",
@@ -9450,16 +9465,16 @@
},
{
"name": "symfony/security-core",
- "version": "v7.3.4",
+ "version": "v7.3.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/security-core.git",
- "reference": "68b9d3ca57615afde6152a1e1441fa035bea43f8"
+ "reference": "772a7c1eddd8bf8a977a67e6e8adc59650c604eb"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-core/zipball/68b9d3ca57615afde6152a1e1441fa035bea43f8",
- "reference": "68b9d3ca57615afde6152a1e1441fa035bea43f8",
+ "url": "https://api.github.com/repos/symfony/security-core/zipball/772a7c1eddd8bf8a977a67e6e8adc59650c604eb",
+ "reference": "772a7c1eddd8bf8a977a67e6e8adc59650c604eb",
"shasum": ""
},
"require": {
@@ -9517,7 +9532,7 @@
"description": "Symfony Security Component - Core Library",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/security-core/tree/v7.3.4"
+ "source": "https://github.com/symfony/security-core/tree/v7.3.5"
},
"funding": [
{
@@ -9537,7 +9552,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-24T14:32:13+00:00"
+ "time": "2025-10-24T14:27:20+00:00"
},
{
"name": "symfony/security-csrf",
@@ -9611,16 +9626,16 @@
},
{
"name": "symfony/security-http",
- "version": "v7.3.4",
+ "version": "v7.3.5",
"source": {
"type": "git",
"url": "https://github.com/symfony/security-http.git",
- "reference": "1cf54d0648ebab23bf9b8972617b79f1995e13a9"
+ "reference": "e79a63fd5dec6e5b1ba31227e98d860a4f8ba95c"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/security-http/zipball/1cf54d0648ebab23bf9b8972617b79f1995e13a9",
- "reference": "1cf54d0648ebab23bf9b8972617b79f1995e13a9",
+ "url": "https://api.github.com/repos/symfony/security-http/zipball/e79a63fd5dec6e5b1ba31227e98d860a4f8ba95c",
+ "reference": "e79a63fd5dec6e5b1ba31227e98d860a4f8ba95c",
"shasum": ""
},
"require": {
@@ -9679,7 +9694,7 @@
"description": "Symfony Security Component - HTTP Integration",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/security-http/tree/v7.3.4"
+ "source": "https://github.com/symfony/security-http/tree/v7.3.5"
},
"funding": [
{
@@ -9699,7 +9714,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-09T17:06:44+00:00"
+ "time": "2025-10-13T09:30:10+00:00"
},
{
"name": "symfony/serializer",
@@ -9806,16 +9821,16 @@
},
{
"name": "symfony/service-contracts",
- "version": "v3.6.0",
+ "version": "v3.6.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/service-contracts.git",
- "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4"
+ "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4",
- "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4",
+ "url": "https://api.github.com/repos/symfony/service-contracts/zipball/45112560a3ba2d715666a509a0bc9521d10b6c43",
+ "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43",
"shasum": ""
},
"require": {
@@ -9869,7 +9884,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/service-contracts/tree/v3.6.0"
+ "source": "https://github.com/symfony/service-contracts/tree/v3.6.1"
},
"funding": [
{
@@ -9880,12 +9895,16 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2025-04-25T09:37:31+00:00"
+ "time": "2025-07-15T11:30:57+00:00"
},
{
"name": "symfony/stopwatch",
@@ -10141,16 +10160,16 @@
},
{
"name": "symfony/translation-contracts",
- "version": "v3.6.0",
+ "version": "v3.6.1",
"source": {
"type": "git",
"url": "https://github.com/symfony/translation-contracts.git",
- "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d"
+ "reference": "65a8bc82080447fae78373aa10f8d13b38338977"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/df210c7a2573f1913b2d17cc95f90f53a73d8f7d",
- "reference": "df210c7a2573f1913b2d17cc95f90f53a73d8f7d",
+ "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/65a8bc82080447fae78373aa10f8d13b38338977",
+ "reference": "65a8bc82080447fae78373aa10f8d13b38338977",
"shasum": ""
},
"require": {
@@ -10199,7 +10218,7 @@
"standards"
],
"support": {
- "source": "https://github.com/symfony/translation-contracts/tree/v3.6.0"
+ "source": "https://github.com/symfony/translation-contracts/tree/v3.6.1"
},
"funding": [
{
@@ -10210,25 +10229,29 @@
"url": "https://github.com/fabpot",
"type": "github"
},
+ {
+ "url": "https://github.com/nicolas-grekas",
+ "type": "github"
+ },
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
- "time": "2024-09-27T08:32:26+00:00"
+ "time": "2025-07-15T13:41:35+00:00"
},
{
"name": "symfony/twig-bridge",
- "version": "v7.3.3",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/twig-bridge.git",
- "reference": "33558f013b7f6ed72805527c8405cae0062e47c5"
+ "reference": "d1aaec8eee1f5591f56b9efe00194d73a8e38319"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/33558f013b7f6ed72805527c8405cae0062e47c5",
- "reference": "33558f013b7f6ed72805527c8405cae0062e47c5",
+ "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/d1aaec8eee1f5591f56b9efe00194d73a8e38319",
+ "reference": "d1aaec8eee1f5591f56b9efe00194d73a8e38319",
"shasum": ""
},
"require": {
@@ -10310,7 +10333,7 @@
"description": "Provides integration for Twig with various Symfony components",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/twig-bridge/tree/v7.3.3"
+ "source": "https://github.com/symfony/twig-bridge/tree/v7.3.6"
},
"funding": [
{
@@ -10330,7 +10353,7 @@
"type": "tidelift"
}
],
- "time": "2025-08-18T13:10:53+00:00"
+ "time": "2025-11-04T15:37:51+00:00"
},
{
"name": "symfony/twig-bundle",
@@ -10579,16 +10602,16 @@
},
{
"name": "symfony/validator",
- "version": "v7.3.4",
+ "version": "v7.3.7",
"source": {
"type": "git",
"url": "https://github.com/symfony/validator.git",
- "reference": "5e29a348b5fac2227b6938a54db006d673bb813a"
+ "reference": "8290a095497c3fe5046db21888d1f75b54ddf39d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/validator/zipball/5e29a348b5fac2227b6938a54db006d673bb813a",
- "reference": "5e29a348b5fac2227b6938a54db006d673bb813a",
+ "url": "https://api.github.com/repos/symfony/validator/zipball/8290a095497c3fe5046db21888d1f75b54ddf39d",
+ "reference": "8290a095497c3fe5046db21888d1f75b54ddf39d",
"shasum": ""
},
"require": {
@@ -10657,7 +10680,7 @@
"description": "Provides tools to validate values",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/validator/tree/v7.3.4"
+ "source": "https://github.com/symfony/validator/tree/v7.3.7"
},
"funding": [
{
@@ -10677,7 +10700,7 @@
"type": "tidelift"
}
],
- "time": "2025-09-24T06:32:27+00:00"
+ "time": "2025-11-08T16:29:29+00:00"
},
{
"name": "symfony/var-dumper",
@@ -11063,16 +11086,16 @@
},
{
"name": "twig/cssinliner-extra",
- "version": "v3.21.0",
+ "version": "v3.22.0",
"source": {
"type": "git",
"url": "https://github.com/twigphp/cssinliner-extra.git",
- "reference": "378d29b61d6406c456e3a4afbd15bbeea0b72ea8"
+ "reference": "9bcbf04ca515e98fcde479fdceaa1d9d9e76173e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/twigphp/cssinliner-extra/zipball/378d29b61d6406c456e3a4afbd15bbeea0b72ea8",
- "reference": "378d29b61d6406c456e3a4afbd15bbeea0b72ea8",
+ "url": "https://api.github.com/repos/twigphp/cssinliner-extra/zipball/9bcbf04ca515e98fcde479fdceaa1d9d9e76173e",
+ "reference": "9bcbf04ca515e98fcde479fdceaa1d9d9e76173e",
"shasum": ""
},
"require": {
@@ -11116,7 +11139,7 @@
"twig"
],
"support": {
- "source": "https://github.com/twigphp/cssinliner-extra/tree/v3.21.0"
+ "source": "https://github.com/twigphp/cssinliner-extra/tree/v3.22.0"
},
"funding": [
{
@@ -11128,30 +11151,30 @@
"type": "tidelift"
}
],
- "time": "2025-01-31T20:45:36+00:00"
+ "time": "2025-07-29T08:07:07+00:00"
},
{
"name": "twig/extra-bundle",
- "version": "v3.21.0",
+ "version": "v3.22.1",
"source": {
"type": "git",
"url": "https://github.com/twigphp/twig-extra-bundle.git",
- "reference": "62d1cf47a1aa009cbd07b21045b97d3d5cb79896"
+ "reference": "b6534bc925bec930004facca92fccebd0c809247"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/62d1cf47a1aa009cbd07b21045b97d3d5cb79896",
- "reference": "62d1cf47a1aa009cbd07b21045b97d3d5cb79896",
+ "url": "https://api.github.com/repos/twigphp/twig-extra-bundle/zipball/b6534bc925bec930004facca92fccebd0c809247",
+ "reference": "b6534bc925bec930004facca92fccebd0c809247",
"shasum": ""
},
"require": {
"php": ">=8.1.0",
- "symfony/framework-bundle": "^5.4|^6.4|^7.0",
- "symfony/twig-bundle": "^5.4|^6.4|^7.0",
+ "symfony/framework-bundle": "^5.4|^6.4|^7.0|^8.0",
+ "symfony/twig-bundle": "^5.4|^6.4|^7.0|^8.0",
"twig/twig": "^3.2|^4.0"
},
"require-dev": {
- "league/commonmark": "^1.0|^2.0",
+ "league/commonmark": "^2.7",
"symfony/phpunit-bridge": "^6.4|^7.0",
"twig/cache-extra": "^3.0",
"twig/cssinliner-extra": "^3.0",
@@ -11190,7 +11213,7 @@
"twig"
],
"support": {
- "source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.21.0"
+ "source": "https://github.com/twigphp/twig-extra-bundle/tree/v3.22.1"
},
"funding": [
{
@@ -11202,20 +11225,20 @@
"type": "tidelift"
}
],
- "time": "2025-02-19T14:29:33+00:00"
+ "time": "2025-11-02T11:00:49+00:00"
},
{
"name": "twig/twig",
- "version": "v3.21.1",
+ "version": "v3.22.0",
"source": {
"type": "git",
"url": "https://github.com/twigphp/Twig.git",
- "reference": "285123877d4dd97dd7c11842ac5fb7e86e60d81d"
+ "reference": "4509984193026de413baf4ba80f68590a7f2c51d"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/twigphp/Twig/zipball/285123877d4dd97dd7c11842ac5fb7e86e60d81d",
- "reference": "285123877d4dd97dd7c11842ac5fb7e86e60d81d",
+ "url": "https://api.github.com/repos/twigphp/Twig/zipball/4509984193026de413baf4ba80f68590a7f2c51d",
+ "reference": "4509984193026de413baf4ba80f68590a7f2c51d",
"shasum": ""
},
"require": {
@@ -11269,7 +11292,7 @@
],
"support": {
"issues": "https://github.com/twigphp/Twig/issues",
- "source": "https://github.com/twigphp/Twig/tree/v3.21.1"
+ "source": "https://github.com/twigphp/Twig/tree/v3.22.0"
},
"funding": [
{
@@ -11281,20 +11304,20 @@
"type": "tidelift"
}
],
- "time": "2025-05-03T07:21:55+00:00"
+ "time": "2025-10-29T15:56:47+00:00"
},
{
"name": "webmozart/assert",
- "version": "1.12.0",
+ "version": "1.12.1",
"source": {
"type": "git",
"url": "https://github.com/webmozarts/assert.git",
- "reference": "541057574806f942c94662b817a50f63f7345360"
+ "reference": "9be6926d8b485f55b9229203f962b51ed377ba68"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webmozarts/assert/zipball/541057574806f942c94662b817a50f63f7345360",
- "reference": "541057574806f942c94662b817a50f63f7345360",
+ "url": "https://api.github.com/repos/webmozarts/assert/zipball/9be6926d8b485f55b9229203f962b51ed377ba68",
+ "reference": "9be6926d8b485f55b9229203f962b51ed377ba68",
"shasum": ""
},
"require": {
@@ -11337,22 +11360,22 @@
],
"support": {
"issues": "https://github.com/webmozarts/assert/issues",
- "source": "https://github.com/webmozarts/assert/tree/1.12.0"
+ "source": "https://github.com/webmozarts/assert/tree/1.12.1"
},
- "time": "2025-10-20T12:43:39+00:00"
+ "time": "2025-10-29T15:56:20+00:00"
},
{
"name": "webonyx/graphql-php",
- "version": "v15.25.1",
+ "version": "v15.25.2",
"source": {
"type": "git",
"url": "https://github.com/webonyx/graphql-php.git",
- "reference": "60ef919138a171bdca5fc22c1e9aea8bbc59e5b7"
+ "reference": "da3891cb35fa694ad5a796a6c4acfa6bf987740a"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/webonyx/graphql-php/zipball/60ef919138a171bdca5fc22c1e9aea8bbc59e5b7",
- "reference": "60ef919138a171bdca5fc22c1e9aea8bbc59e5b7",
+ "url": "https://api.github.com/repos/webonyx/graphql-php/zipball/da3891cb35fa694ad5a796a6c4acfa6bf987740a",
+ "reference": "da3891cb35fa694ad5a796a6c4acfa6bf987740a",
"shasum": ""
},
"require": {
@@ -11365,12 +11388,12 @@
"amphp/http-server": "^2.1",
"dms/phpunit-arraysubset-asserts": "dev-master",
"ergebnis/composer-normalize": "^2.28",
- "friendsofphp/php-cs-fixer": "3.88.2",
+ "friendsofphp/php-cs-fixer": "3.89.1",
"mll-lab/php-cs-fixer-config": "5.11.0",
"nyholm/psr7": "^1.5",
"phpbench/phpbench": "^1.2",
"phpstan/extension-installer": "^1.1",
- "phpstan/phpstan": "2.1.30",
+ "phpstan/phpstan": "2.1.31",
"phpstan/phpstan-phpunit": "2.0.7",
"phpstan/phpstan-strict-rules": "2.0.7",
"phpunit/phpunit": "^9.5 || ^10.5.21 || ^11",
@@ -11406,7 +11429,7 @@
],
"support": {
"issues": "https://github.com/webonyx/graphql-php/issues",
- "source": "https://github.com/webonyx/graphql-php/tree/v15.25.1"
+ "source": "https://github.com/webonyx/graphql-php/tree/v15.25.2"
},
"funding": [
{
@@ -11414,7 +11437,7 @@
"type": "open_collective"
}
],
- "time": "2025-10-08T10:29:48+00:00"
+ "time": "2025-10-25T09:33:47+00:00"
},
{
"name": "willdurand/negotiation",
@@ -11476,16 +11499,16 @@
"packages-dev": [
{
"name": "api-platform/graphql",
- "version": "v4.1.23",
+ "version": "v4.1.26",
"source": {
"type": "git",
"url": "https://github.com/api-platform/graphql.git",
- "reference": "7125884e7ed88db3d473011f0b41c8e0d0497749"
+ "reference": "e55e759599ca8a615507ce46c99307af1b4eda43"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/api-platform/graphql/zipball/7125884e7ed88db3d473011f0b41c8e0d0497749",
- "reference": "7125884e7ed88db3d473011f0b41c8e0d0497749",
+ "url": "https://api.github.com/repos/api-platform/graphql/zipball/e55e759599ca8a615507ce46c99307af1b4eda43",
+ "reference": "e55e759599ca8a615507ce46c99307af1b4eda43",
"shasum": ""
},
"require": {
@@ -11560,22 +11583,22 @@
"graphql"
],
"support": {
- "source": "https://github.com/api-platform/graphql/tree/v4.1.23"
+ "source": "https://github.com/api-platform/graphql/tree/v4.1.26"
},
- "time": "2025-07-03T13:00:28+00:00"
+ "time": "2025-10-31T09:47:48+00:00"
},
{
"name": "brianium/paratest",
- "version": "v7.14.1",
+ "version": "v7.14.2",
"source": {
"type": "git",
"url": "https://github.com/paratestphp/paratest.git",
- "reference": "e1a93c38a94f4808faf75552e835666d3a6f8bb2"
+ "reference": "de06de1ae1203b11976c6ca01d6a9081c8b33d45"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/paratestphp/paratest/zipball/e1a93c38a94f4808faf75552e835666d3a6f8bb2",
- "reference": "e1a93c38a94f4808faf75552e835666d3a6f8bb2",
+ "url": "https://api.github.com/repos/paratestphp/paratest/zipball/de06de1ae1203b11976c6ca01d6a9081c8b33d45",
+ "reference": "de06de1ae1203b11976c6ca01d6a9081c8b33d45",
"shasum": ""
},
"require": {
@@ -11589,7 +11612,7 @@
"phpunit/php-code-coverage": "^12.4.0",
"phpunit/php-file-iterator": "^6",
"phpunit/php-timer": "^8",
- "phpunit/phpunit": "^12.4.0",
+ "phpunit/phpunit": "^12.4.1",
"sebastian/environment": "^8.0.3",
"symfony/console": "^6.4.20 || ^7.3.4",
"symfony/process": "^6.4.20 || ^7.3.4"
@@ -11599,7 +11622,7 @@
"ext-pcntl": "*",
"ext-pcov": "*",
"ext-posix": "*",
- "phpstan/phpstan": "^2.1.30",
+ "phpstan/phpstan": "^2.1.31",
"phpstan/phpstan-deprecation-rules": "^2.0.3",
"phpstan/phpstan-phpunit": "^2.0.7",
"phpstan/phpstan-strict-rules": "^2.0.7",
@@ -11643,7 +11666,7 @@
],
"support": {
"issues": "https://github.com/paratestphp/paratest/issues",
- "source": "https://github.com/paratestphp/paratest/tree/v7.14.1"
+ "source": "https://github.com/paratestphp/paratest/tree/v7.14.2"
},
"funding": [
{
@@ -11655,7 +11678,7 @@
"type": "paypal"
}
],
- "time": "2025-10-06T08:26:52+00:00"
+ "time": "2025-10-24T07:20:53+00:00"
},
{
"name": "clue/ndjson-react",
@@ -12199,16 +12222,16 @@
},
{
"name": "friendsofphp/php-cs-fixer",
- "version": "v3.89.0",
+ "version": "v3.89.2",
"source": {
"type": "git",
"url": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer.git",
- "reference": "4dd6768cb7558440d27d18f54909eee417317ce9"
+ "reference": "7569658f91e475ec93b99bd5964b059ad1336dcf"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/4dd6768cb7558440d27d18f54909eee417317ce9",
- "reference": "4dd6768cb7558440d27d18f54909eee417317ce9",
+ "url": "https://api.github.com/repos/PHP-CS-Fixer/PHP-CS-Fixer/zipball/7569658f91e475ec93b99bd5964b059ad1336dcf",
+ "reference": "7569658f91e475ec93b99bd5964b059ad1336dcf",
"shasum": ""
},
"require": {
@@ -12244,7 +12267,7 @@
"justinrainbow/json-schema": "^6.5",
"keradus/cli-executor": "^2.2",
"mikey179/vfsstream": "^1.6.12",
- "php-coveralls/php-coveralls": "^2.8",
+ "php-coveralls/php-coveralls": "^2.9",
"php-cs-fixer/phpunit-constraint-isidenticalstring": "^1.6",
"php-cs-fixer/phpunit-constraint-xmlmatchesxsd": "^1.6",
"phpunit/phpunit": "^9.6.25 || ^10.5.53 || ^11.5.34",
@@ -12290,7 +12313,7 @@
],
"support": {
"issues": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/issues",
- "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.89.0"
+ "source": "https://github.com/PHP-CS-Fixer/PHP-CS-Fixer/tree/v3.89.2"
},
"funding": [
{
@@ -12298,25 +12321,25 @@
"type": "github"
}
],
- "time": "2025-10-18T19:30:16+00:00"
+ "time": "2025-11-06T21:12:50+00:00"
},
{
"name": "hautelook/alice-bundle",
- "version": "2.15.1",
+ "version": "2.16.0",
"source": {
"type": "git",
"url": "https://github.com/theofidry/AliceBundle.git",
- "reference": "e33d72e4df48b846dd5fb99039dbcfc5401daf2c"
+ "reference": "69c9e3e6b85fcb3ed0dd430e8f790489aaa0cbcc"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/theofidry/AliceBundle/zipball/e33d72e4df48b846dd5fb99039dbcfc5401daf2c",
- "reference": "e33d72e4df48b846dd5fb99039dbcfc5401daf2c",
+ "url": "https://api.github.com/repos/theofidry/AliceBundle/zipball/69c9e3e6b85fcb3ed0dd430e8f790489aaa0cbcc",
+ "reference": "69c9e3e6b85fcb3ed0dd430e8f790489aaa0cbcc",
"shasum": ""
},
"require": {
"doctrine/data-fixtures": "^1.7 || ^2.0",
- "doctrine/doctrine-bundle": "^2.11.3",
+ "doctrine/doctrine-bundle": "^2.11.3 || ^3.0",
"doctrine/orm": "^3.1",
"doctrine/persistence": "^3.3.1 || ^4.0",
"php": "^8.2",
@@ -12370,22 +12393,22 @@
],
"support": {
"issues": "https://github.com/theofidry/AliceBundle/issues",
- "source": "https://github.com/theofidry/AliceBundle/tree/2.15.1"
+ "source": "https://github.com/theofidry/AliceBundle/tree/2.16.0"
},
- "time": "2025-03-27T09:27:25+00:00"
+ "time": "2025-10-24T09:03:19+00:00"
},
{
"name": "justinrainbow/json-schema",
- "version": "6.6.0",
+ "version": "6.6.1",
"source": {
"type": "git",
"url": "https://github.com/jsonrainbow/json-schema.git",
- "reference": "68ba7677532803cc0c5900dd5a4d730537f2b2f3"
+ "reference": "fd8e5c6b1badb998844ad34ce0abcd71a0aeb396"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/68ba7677532803cc0c5900dd5a4d730537f2b2f3",
- "reference": "68ba7677532803cc0c5900dd5a4d730537f2b2f3",
+ "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/fd8e5c6b1badb998844ad34ce0abcd71a0aeb396",
+ "reference": "fd8e5c6b1badb998844ad34ce0abcd71a0aeb396",
"shasum": ""
},
"require": {
@@ -12445,9 +12468,9 @@
],
"support": {
"issues": "https://github.com/jsonrainbow/json-schema/issues",
- "source": "https://github.com/jsonrainbow/json-schema/tree/6.6.0"
+ "source": "https://github.com/jsonrainbow/json-schema/tree/6.6.1"
},
- "time": "2025-10-10T11:34:09+00:00"
+ "time": "2025-11-07T18:30:29+00:00"
},
{
"name": "marc-mabe/php-enum",
@@ -12923,33 +12946,32 @@
},
{
"name": "php-coveralls/php-coveralls",
- "version": "v2.8.0",
+ "version": "v2.9.0",
"source": {
"type": "git",
"url": "https://github.com/php-coveralls/php-coveralls.git",
- "reference": "00b9fce4d785a98760ca02f305c197f5fcfb6004"
+ "reference": "468f5247e9e36ecc9b34f501cab868e7ac7c1f73"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/php-coveralls/php-coveralls/zipball/00b9fce4d785a98760ca02f305c197f5fcfb6004",
- "reference": "00b9fce4d785a98760ca02f305c197f5fcfb6004",
+ "url": "https://api.github.com/repos/php-coveralls/php-coveralls/zipball/468f5247e9e36ecc9b34f501cab868e7ac7c1f73",
+ "reference": "468f5247e9e36ecc9b34f501cab868e7ac7c1f73",
"shasum": ""
},
"require": {
"ext-json": "*",
"ext-simplexml": "*",
"guzzlehttp/guzzle": "^6.0 || ^7.0",
- "php": "^7.0 || ^8.0",
- "psr/log": "^1.0 || ^2.0",
- "symfony/config": "^2.1 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0",
- "symfony/console": "^2.1 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0",
- "symfony/stopwatch": "^2.0 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0",
- "symfony/yaml": "^2.0.5 || ^3.0 || ^4.0 || ^5.0 || ^6.0 || ^7.0"
+ "php": "^7.4 || ^8.0",
+ "psr/log": "^1.0 || ^2.0 || ^3.0",
+ "symfony/config": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/console": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/stopwatch": "^5.4 || ^6.4 || ^7.0 || ^8.0",
+ "symfony/yaml": "^5.4 || ^6.4 || ^7.0 || ^8.0"
},
"require-dev": {
- "phpspec/prophecy-phpunit": "^1.1 || ^2.3",
- "phpunit/phpunit": "^4.8.35 || ^5.4.3 || ^6.0 || ^7.0 || >=8.0 <8.5.29 || >=9.0 <9.5.23",
- "sanmai/phpunit-legacy-adapter": "^6.1 || ^8.0"
+ "phpspec/prophecy-phpunit": "^2.4",
+ "phpunit/phpunit": "^9.6.29 || ^10.5.58 || ^11.5.43"
},
"suggest": {
"symfony/http-kernel": "Allows Symfony integration"
@@ -13001,22 +13023,22 @@
],
"support": {
"issues": "https://github.com/php-coveralls/php-coveralls/issues",
- "source": "https://github.com/php-coveralls/php-coveralls/tree/v2.8.0"
+ "source": "https://github.com/php-coveralls/php-coveralls/tree/v2.9.0"
},
- "time": "2025-05-12T08:35:27+00:00"
+ "time": "2025-11-06T10:39:48+00:00"
},
{
"name": "phpspec/prophecy",
- "version": "v1.23.0",
+ "version": "v1.23.1",
"source": {
"type": "git",
"url": "https://github.com/phpspec/prophecy.git",
- "reference": "8cce4df9a20660cdc671e8f45ac61959ecdde8e8"
+ "reference": "9500f939e4b22c40c3d5cca5f10837f2a9c87cb0"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/8cce4df9a20660cdc671e8f45ac61959ecdde8e8",
- "reference": "8cce4df9a20660cdc671e8f45ac61959ecdde8e8",
+ "url": "https://api.github.com/repos/phpspec/prophecy/zipball/9500f939e4b22c40c3d5cca5f10837f2a9c87cb0",
+ "reference": "9500f939e4b22c40c3d5cca5f10837f2a9c87cb0",
"shasum": ""
},
"require": {
@@ -13072,9 +13094,9 @@
],
"support": {
"issues": "https://github.com/phpspec/prophecy/issues",
- "source": "https://github.com/phpspec/prophecy/tree/v1.23.0"
+ "source": "https://github.com/phpspec/prophecy/tree/v1.23.1"
},
- "time": "2025-10-08T08:50:26+00:00"
+ "time": "2025-10-27T22:44:31+00:00"
},
{
"name": "phpspec/prophecy-phpunit",
@@ -13520,16 +13542,16 @@
},
{
"name": "phpunit/phpunit",
- "version": "12.4.1",
+ "version": "12.4.2",
"source": {
"type": "git",
"url": "https://github.com/sebastianbergmann/phpunit.git",
- "reference": "fc5413a2e6d240d2f6d9317bdf7f0a24e73de194"
+ "reference": "a94ea4d26d865875803b23aaf78c3c2c670ea2ea"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fc5413a2e6d240d2f6d9317bdf7f0a24e73de194",
- "reference": "fc5413a2e6d240d2f6d9317bdf7f0a24e73de194",
+ "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/a94ea4d26d865875803b23aaf78c3c2c670ea2ea",
+ "reference": "a94ea4d26d865875803b23aaf78c3c2c670ea2ea",
"shasum": ""
},
"require": {
@@ -13597,7 +13619,7 @@
"support": {
"issues": "https://github.com/sebastianbergmann/phpunit/issues",
"security": "https://github.com/sebastianbergmann/phpunit/security/policy",
- "source": "https://github.com/sebastianbergmann/phpunit/tree/12.4.1"
+ "source": "https://github.com/sebastianbergmann/phpunit/tree/12.4.2"
},
"funding": [
{
@@ -13621,7 +13643,7 @@
"type": "tidelift"
}
],
- "time": "2025-10-09T14:08:29+00:00"
+ "time": "2025-10-30T08:41:39+00:00"
},
{
"name": "psalm/phar",
@@ -14186,16 +14208,16 @@
},
{
"name": "rector/rector",
- "version": "2.2.3",
+ "version": "2.2.7",
"source": {
"type": "git",
"url": "https://github.com/rectorphp/rector.git",
- "reference": "d27f976a332a87b5d03553c2e6f04adbe5da034f"
+ "reference": "022038537838bc8a4e526af86c2d6e38eaeff7ef"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/rectorphp/rector/zipball/d27f976a332a87b5d03553c2e6f04adbe5da034f",
- "reference": "d27f976a332a87b5d03553c2e6f04adbe5da034f",
+ "url": "https://api.github.com/repos/rectorphp/rector/zipball/022038537838bc8a4e526af86c2d6e38eaeff7ef",
+ "reference": "022038537838bc8a4e526af86c2d6e38eaeff7ef",
"shasum": ""
},
"require": {
@@ -14234,7 +14256,7 @@
],
"support": {
"issues": "https://github.com/rectorphp/rector/issues",
- "source": "https://github.com/rectorphp/rector/tree/2.2.3"
+ "source": "https://github.com/rectorphp/rector/tree/2.2.7"
},
"funding": [
{
@@ -14242,7 +14264,7 @@
"type": "github"
}
],
- "time": "2025-10-11T21:50:23+00:00"
+ "time": "2025-10-29T15:46:12+00:00"
},
{
"name": "sebastian/cli-parser",
@@ -15272,16 +15294,16 @@
},
{
"name": "symfony/browser-kit",
- "version": "v7.3.2",
+ "version": "v7.3.6",
"source": {
"type": "git",
"url": "https://github.com/symfony/browser-kit.git",
- "reference": "f0b889b73a845cddef1d25fe207b37fd04cb5419"
+ "reference": "e9a9fd604296b17bf90939c3647069f1f16ef04e"
},
"dist": {
"type": "zip",
- "url": "https://api.github.com/repos/symfony/browser-kit/zipball/f0b889b73a845cddef1d25fe207b37fd04cb5419",
- "reference": "f0b889b73a845cddef1d25fe207b37fd04cb5419",
+ "url": "https://api.github.com/repos/symfony/browser-kit/zipball/e9a9fd604296b17bf90939c3647069f1f16ef04e",
+ "reference": "e9a9fd604296b17bf90939c3647069f1f16ef04e",
"shasum": ""
},
"require": {
@@ -15320,7 +15342,7 @@
"description": "Simulates the behavior of a web browser, allowing you to make requests, click on links and submit forms programmatically",
"homepage": "https://symfony.com",
"support": {
- "source": "https://github.com/symfony/browser-kit/tree/v7.3.2"
+ "source": "https://github.com/symfony/browser-kit/tree/v7.3.6"
},
"funding": [
{
@@ -15340,7 +15362,7 @@
"type": "tidelift"
}
],
- "time": "2025-07-10T08:47:49+00:00"
+ "time": "2025-11-05T07:57:47+00:00"
},
{
"name": "symfony/debug-bundle",
@@ -15898,5 +15920,5 @@
"ext-iconv": "*"
},
"platform-dev": {},
- "plugin-api-version": "2.6.0"
+ "plugin-api-version": "2.9.0"
}
diff --git a/api/config/bootstrap.php b/api/config/bootstrap.php
index e41d0e73f3..5fc9b9393e 100644
--- a/api/config/bootstrap.php
+++ b/api/config/bootstrap.php
@@ -11,13 +11,13 @@
// Load cached env vars if the .env.local.php file exists
// Run "composer dump-env prod" to create it (requires symfony/flex >=1.2)
if (is_array($env = @include dirname(__DIR__).'/.env.local.php') && (!isset($env['APP_ENV']) || ($_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? $env['APP_ENV']) === $env['APP_ENV'])) {
- (new Dotenv())->usePutenv(false)->populate($env);
+ new Dotenv()->usePutenv(false)->populate($env);
} else {
// load all the .env files
- (new Dotenv())->usePutenv(false)->loadEnv(dirname(__DIR__).'/.env');
+ new Dotenv()->usePutenv(false)->loadEnv(dirname(__DIR__).'/.env');
}
$_SERVER += $_ENV;
$_SERVER['APP_ENV'] = $_ENV['APP_ENV'] = ($_SERVER['APP_ENV'] ?? $_ENV['APP_ENV'] ?? null) ?: 'dev';
-$_SERVER['APP_DEBUG'] = $_SERVER['APP_DEBUG'] ?? $_ENV['APP_DEBUG'] ?? 'prod' !== $_SERVER['APP_ENV'];
+$_SERVER['APP_DEBUG'] ??= $_ENV['APP_DEBUG'] ?? 'prod' !== $_SERVER['APP_ENV'];
$_SERVER['APP_DEBUG'] = $_ENV['APP_DEBUG'] = (int) $_SERVER['APP_DEBUG'] || filter_var($_SERVER['APP_DEBUG'], FILTER_VALIDATE_BOOLEAN) ? '1' : '0';
diff --git a/api/config/services.yaml b/api/config/services.yaml
index cc66b59213..b03a0673c9 100644
--- a/api/config/services.yaml
+++ b/api/config/services.yaml
@@ -96,6 +96,11 @@ services:
App\Serializer\SerializerContextBuilder:
decorates: 'api_platform.serializer.context_builder'
+ ApiPlatform\Metadata\Property\Factory\AttributePropertyMetadataFactory:
+ decorates: 'api_platform.metadata.property.metadata_factory'
+ # Reverts change here: https://github.com/api-platform/symfony/compare/v4.1.23...v4.1.24
+ decoration_priority: 20
+
App\Serializer\PreventAutomaticEmbeddingPropertyMetadataFactory:
decorates: 'api_platform.metadata.property.metadata_factory'
# Priority should be 1 lower than the one of SerializerPropertyMetadataFactory, see
diff --git a/api/migrations/dev-data/Version202201230531.php b/api/migrations/dev-data/Version202201230531.php
index 9500c6cfec..39b492f909 100644
--- a/api/migrations/dev-data/Version202201230531.php
+++ b/api/migrations/dev-data/Version202201230531.php
@@ -10,11 +10,13 @@
require_once __DIR__.'/helpers.php';
final class Version202201230531 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
public function up(Schema $schema): void {}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202202051218.php b/api/migrations/dev-data/Version202202051218.php
index 8fb482c47e..bfd25cc74b 100644
--- a/api/migrations/dev-data/Version202202051218.php
+++ b/api/migrations/dev-data/Version202202051218.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202202051218 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202209110752PM.php b/api/migrations/dev-data/Version202209110752PM.php
index 9ecd7ac3f8..0c64af4be2 100644
--- a/api/migrations/dev-data/Version202209110752PM.php
+++ b/api/migrations/dev-data/Version202209110752PM.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202209110752PM extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202211261414.php b/api/migrations/dev-data/Version202211261414.php
index eacd587cb0..09d059e601 100644
--- a/api/migrations/dev-data/Version202211261414.php
+++ b/api/migrations/dev-data/Version202211261414.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202211261414 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202305011841.php b/api/migrations/dev-data/Version202305011841.php
index 85154ca31f..b2ca807f2f 100644
--- a/api/migrations/dev-data/Version202305011841.php
+++ b/api/migrations/dev-data/Version202305011841.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202305011841 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202305092233.php b/api/migrations/dev-data/Version202305092233.php
index ece3018c4b..215c28ac2d 100644
--- a/api/migrations/dev-data/Version202305092233.php
+++ b/api/migrations/dev-data/Version202305092233.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202305092233 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202306250019.php b/api/migrations/dev-data/Version202306250019.php
index 459ef5f5fa..a5213ff166 100644
--- a/api/migrations/dev-data/Version202306250019.php
+++ b/api/migrations/dev-data/Version202306250019.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202306250019 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202308081601.php b/api/migrations/dev-data/Version202308081601.php
index 6854562c93..38fee8cf3b 100644
--- a/api/migrations/dev-data/Version202308081601.php
+++ b/api/migrations/dev-data/Version202308081601.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202308081601 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202309300329.php b/api/migrations/dev-data/Version202309300329.php
index d391dd334a..4e8c6e745f 100644
--- a/api/migrations/dev-data/Version202309300329.php
+++ b/api/migrations/dev-data/Version202309300329.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202309300329 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202311121726.php b/api/migrations/dev-data/Version202311121726.php
index 68ceb90e7d..4698814e1f 100644
--- a/api/migrations/dev-data/Version202311121726.php
+++ b/api/migrations/dev-data/Version202311121726.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202311121726 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202311121824.php b/api/migrations/dev-data/Version202311121824.php
index 9ddc33c3ed..6969c9c3e5 100644
--- a/api/migrations/dev-data/Version202311121824.php
+++ b/api/migrations/dev-data/Version202311121824.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202311121824 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202311261457.php b/api/migrations/dev-data/Version202311261457.php
index bc3db2c51a..c58bd28814 100644
--- a/api/migrations/dev-data/Version202311261457.php
+++ b/api/migrations/dev-data/Version202311261457.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202311261457 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202312032018.php b/api/migrations/dev-data/Version202312032018.php
index 26fb9e8ffd..5c5de93651 100644
--- a/api/migrations/dev-data/Version202312032018.php
+++ b/api/migrations/dev-data/Version202312032018.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202312032018 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202404012013.php b/api/migrations/dev-data/Version202404012013.php
index 5382861002..17b0f26a7b 100644
--- a/api/migrations/dev-data/Version202404012013.php
+++ b/api/migrations/dev-data/Version202404012013.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202404012013 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202404031358.php b/api/migrations/dev-data/Version202404031358.php
index 91f5a5bb56..2b0c63c698 100644
--- a/api/migrations/dev-data/Version202404031358.php
+++ b/api/migrations/dev-data/Version202404031358.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202404031358 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202404121950.php b/api/migrations/dev-data/Version202404121950.php
index da25cf7867..16b540aae2 100644
--- a/api/migrations/dev-data/Version202404121950.php
+++ b/api/migrations/dev-data/Version202404121950.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202404121950 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202406211251.php b/api/migrations/dev-data/Version202406211251.php
index bf523391e2..74ec70ea17 100644
--- a/api/migrations/dev-data/Version202406211251.php
+++ b/api/migrations/dev-data/Version202406211251.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202406211251 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Set color & abbreviation to some profiles';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202409281917.php b/api/migrations/dev-data/Version202409281917.php
index d966d4c355..36e6a6d580 100644
--- a/api/migrations/dev-data/Version202409281917.php
+++ b/api/migrations/dev-data/Version202409281917.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202409281917 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Set color & abbreviation to some profiles';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202409282323.php b/api/migrations/dev-data/Version202409282323.php
index cc87feb683..9bb27c3c64 100644
--- a/api/migrations/dev-data/Version202409282323.php
+++ b/api/migrations/dev-data/Version202409282323.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202409282323 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Adjust data for some courses';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202409282339.php b/api/migrations/dev-data/Version202409282339.php
index 62021a03ed..9ce5b878fd 100644
--- a/api/migrations/dev-data/Version202409282339.php
+++ b/api/migrations/dev-data/Version202409282339.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202409282339 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add J+S course prototype.';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202410111836.php b/api/migrations/dev-data/Version202410111836.php
index bb8fba2f40..e927592db6 100644
--- a/api/migrations/dev-data/Version202410111836.php
+++ b/api/migrations/dev-data/Version202410111836.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202410111836 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Fix J+S course prototype.';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202504121559.php b/api/migrations/dev-data/Version202504121559.php
index 1925b4af4c..e7d57e3641 100644
--- a/api/migrations/dev-data/Version202504121559.php
+++ b/api/migrations/dev-data/Version202504121559.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202504121559 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Fix J+S course prototype.';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202504130046.php b/api/migrations/dev-data/Version202504130046.php
index 0cf6539310..7df8150e9c 100644
--- a/api/migrations/dev-data/Version202504130046.php
+++ b/api/migrations/dev-data/Version202504130046.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202504130046 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add 2nd period to Harry Potter camp';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202504252112.php b/api/migrations/dev-data/Version202504252112.php
index ab9e2e0a7f..f64639b6de 100644
--- a/api/migrations/dev-data/Version202504252112.php
+++ b/api/migrations/dev-data/Version202504252112.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202504252112 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add 2nd period to Harry Potter camp';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202505151020.php b/api/migrations/dev-data/Version202505151020.php
index 647506cc67..e8df7fbf91 100644
--- a/api/migrations/dev-data/Version202505151020.php
+++ b/api/migrations/dev-data/Version202505151020.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202505151020 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Move dev data camps one year forward';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202505202216.php b/api/migrations/dev-data/Version202505202216.php
index 6e67731ea5..03f90efcf8 100644
--- a/api/migrations/dev-data/Version202505202216.php
+++ b/api/migrations/dev-data/Version202505202216.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202505202216 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add 2nd period to Harry Potter camp';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/dev-data/Version202508132053.php b/api/migrations/dev-data/Version202508132053.php
index 53d57017ba..4605a9c5ec 100644
--- a/api/migrations/dev-data/Version202508132053.php
+++ b/api/migrations/dev-data/Version202508132053.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202508132053 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add 2nd period to Harry Potter camp';
}
@@ -27,5 +28,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/prod-data/Version202210081114PM.php b/api/migrations/prod-data/Version202210081114PM.php
index 89b5154190..35f416fb8e 100644
--- a/api/migrations/prod-data/Version202210081114PM.php
+++ b/api/migrations/prod-data/Version202210081114PM.php
@@ -10,6 +10,7 @@
require_once __DIR__.'/helpers.php';
final class Version202210081114PMPMPM extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -26,5 +27,6 @@ public function up(Schema $schema): void {
// END PHP CODE
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/schema/Version20211002102059.php b/api/migrations/schema/Version20211002102059.php
index dfc95de704..f7bc56262a 100644
--- a/api/migrations/schema/Version20211002102059.php
+++ b/api/migrations/schema/Version20211002102059.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211002102059 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -140,6 +141,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE schedule_entry ADD CONSTRAINT FK_D7785D2C1335E2FC FOREIGN KEY (activityId) REFERENCES activity (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE activity DROP CONSTRAINT FK_AC74095ABF396750');
diff --git a/api/migrations/schema/Version20211003081054.php b/api/migrations/schema/Version20211003081054.php
index 6fab1d6b00..38c967839b 100644
--- a/api/migrations/schema/Version20211003081054.php
+++ b/api/migrations/schema/Version20211003081054.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211003081054 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE content_node_columnlayout ADD columns JSON DEFAULT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE content_node_columnlayout DROP columns');
diff --git a/api/migrations/schema/Version20211010081640.php b/api/migrations/schema/Version20211010081640.php
index 1e81994ee6..e7a3d7a91e 100644
--- a/api/migrations/schema/Version20211010081640.php
+++ b/api/migrations/schema/Version20211010081640.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211010081640 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE content_node DROP jsonconfig');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE content_node ADD jsonconfig JSON DEFAULT NULL');
diff --git a/api/migrations/schema/Version20211010091358.php b/api/migrations/schema/Version20211010091358.php
index 491e8160ca..64c1aed493 100644
--- a/api/migrations/schema/Version20211010091358.php
+++ b/api/migrations/schema/Version20211010091358.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211010091358 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE "user" ALTER state TYPE VARCHAR(16)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE "user" ALTER state DROP NOT NULL');
diff --git a/api/migrations/schema/Version20211030082112.php b/api/migrations/schema/Version20211030082112.php
index ba38fd9ce6..d592e383eb 100644
--- a/api/migrations/schema/Version20211030082112.php
+++ b/api/migrations/schema/Version20211030082112.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211030082112 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE content_node ADD CONSTRAINT FK_481D058010EE4CEE FOREIGN KEY (parentId) REFERENCES content_node (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE content_node DROP CONSTRAINT fk_481d058010ee4cee');
diff --git a/api/migrations/schema/Version20211030110620.php b/api/migrations/schema/Version20211030110620.php
index 1a4dc0983b..26a1e0287b 100644
--- a/api/migrations/schema/Version20211030110620.php
+++ b/api/migrations/schema/Version20211030110620.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211030110620 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE abstract_content_node_owner ADD CONSTRAINT FK_8E710AB4F886581C FOREIGN KEY (rootContentNodeId) REFERENCES content_node (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE abstract_content_node_owner DROP CONSTRAINT fk_8e710ab4f886581c');
diff --git a/api/migrations/schema/Version20211125144627.php b/api/migrations/schema/Version20211125144627.php
index b7af6cc5e3..fdcffcd9c7 100644
--- a/api/migrations/schema/Version20211125144627.php
+++ b/api/migrations/schema/Version20211125144627.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211125144627 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE content_node_storyboard_section RENAME COLUMN pos TO position');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE content_node_multiselect_option RENAME COLUMN position TO pos');
diff --git a/api/migrations/schema/Version20211207143737.php b/api/migrations/schema/Version20211207143737.php
index 6eaa8f50ce..e7d451980e 100644
--- a/api/migrations/schema/Version20211207143737.php
+++ b/api/migrations/schema/Version20211207143737.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211207143737 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -58,6 +59,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE "user" DROP roles');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('ALTER TABLE "user" ADD email VARCHAR(64)');
$this->addSql('ALTER TABLE "user" ADD username VARCHAR(32)');
diff --git a/api/migrations/schema/Version20211213175935.php b/api/migrations/schema/Version20211213175935.php
index d91b025d7f..4584ec703a 100644
--- a/api/migrations/schema/Version20211213175935.php
+++ b/api/migrations/schema/Version20211213175935.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211213175935 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE content_node ALTER "position" SET NOT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE content_node ALTER position DROP NOT NULL');
diff --git a/api/migrations/schema/Version20211221131558.php b/api/migrations/schema/Version20211221131558.php
index 0eec84577c..acdbc310b7 100644
--- a/api/migrations/schema/Version20211221131558.php
+++ b/api/migrations/schema/Version20211221131558.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20211221131558 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE UNIQUE INDEX inviteEmail_camp_unique ON camp_collaboration (inviteEmail, campId)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX user_camp_unique');
diff --git a/api/migrations/schema/Version20220118132859.php b/api/migrations/schema/Version20220118132859.php
index a13b80a878..3221518341 100644
--- a/api/migrations/schema/Version20220118132859.php
+++ b/api/migrations/schema/Version20220118132859.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220118132859 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Adds initial content types';
}
@@ -26,6 +27,7 @@ public function up(Schema $schema): void {
$this->addSql('INSERT INTO public.content_type (id, name, active, entityclass, jsonconfig, createtime, updatetime) VALUES (\'1a0f84e322c8\', \'LAThematicArea\', true, \'App\Entity\ContentNode\MultiSelect\', \'{"items":["outdoorTechnique","security","natureAndEnvironment","pioneeringTechnique","campsiteAndSurroundings","preventionAndIntegration"]}\', \'2022-01-18 09:12:56\', \'2022-01-18 09:12:56\');');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DELETE FROM public.content_type WHERE id IN (\'44dcc7493c65\', \'318e064ea0c9\', \'4f0c657fecef\', \'f17470519474\', \'cfccaecd4bad\', \'3ef17bd1df72\', \'1a0f84e322c8\')');
diff --git a/api/migrations/schema/Version20220210070753.php b/api/migrations/schema/Version20220210070753.php
index 1de4f1f9da..381172fcdb 100644
--- a/api/migrations/schema/Version20220210070753.php
+++ b/api/migrations/schema/Version20220210070753.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220210070753 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Adds OAuth provider id properties';
}
@@ -24,6 +25,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE "user" ALTER password DROP NOT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE "user" ALTER password SET NOT NULL');
diff --git a/api/migrations/schema/Version20220222211253.php b/api/migrations/schema/Version20220222211253.php
index 3d6a03bfb7..97867a36dc 100644
--- a/api/migrations/schema/Version20220222211253.php
+++ b/api/migrations/schema/Version20220222211253.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220222211253 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -22,6 +23,7 @@ public function up(Schema $schema): void {
$this->addSql('UPDATE schedule_entry SET endOffset = endOffset + startOffset');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE schedule_entry RENAME COLUMN startOffset TO periodOffset');
diff --git a/api/migrations/schema/Version20220319210543.php b/api/migrations/schema/Version20220319210543.php
index 7b9aaca3fe..6ab04b91e1 100644
--- a/api/migrations/schema/Version20220319210543.php
+++ b/api/migrations/schema/Version20220319210543.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220319210543 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -22,6 +23,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE UNIQUE INDEX inviteKeyHash_unique ON camp_collaboration (inviteKeyHash)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX inviteKeyHash_unique');
diff --git a/api/migrations/schema/Version20220319211452.php b/api/migrations/schema/Version20220319211452.php
index 4a96785329..935d22cb9d 100644
--- a/api/migrations/schema/Version20220319211452.php
+++ b/api/migrations/schema/Version20220319211452.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220319211452 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add campCollaboration to MaterialList';
}
@@ -22,6 +23,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE INDEX IDX_10A0952D56778C5C ON material_list (campCollaborationId)');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('ALTER TABLE material_list ALTER COLUMN name SET NOT NULL');
$this->addSql('ALTER TABLE material_list DROP CONSTRAINT FK_10A0952D56778C5C');
diff --git a/api/migrations/schema/Version20220321202320.php b/api/migrations/schema/Version20220321202320.php
index f0aa86db5a..2b8b3f7e2f 100644
--- a/api/migrations/schema/Version20220321202320.php
+++ b/api/migrations/schema/Version20220321202320.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220321202320 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE "user" ADD passwordResetKeyHash VARCHAR(255) DEFAULT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE "user" DROP passwordResetKeyHash');
diff --git a/api/migrations/schema/Version20220416125104.php b/api/migrations/schema/Version20220416125104.php
index 40770060fa..68ad906d68 100644
--- a/api/migrations/schema/Version20220416125104.php
+++ b/api/migrations/schema/Version20220416125104.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220416125104 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'add indexes for searchable properties';
}
@@ -23,6 +24,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE INDEX IDX_D7785D2CA501647F ON schedule_entry (endOffset)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP INDEX IDX_D7785D2CA1CB398B');
diff --git a/api/migrations/schema/Version20220417142152.php b/api/migrations/schema/Version20220417142152.php
index 18ccaebf7a..8d746b1d66 100644
--- a/api/migrations/schema/Version20220417142152.php
+++ b/api/migrations/schema/Version20220417142152.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20220417142152 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Fix schema migration for MaterialList';
}
@@ -17,6 +18,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE UNIQUE INDEX UNIQ_10A0952D56778C5C ON material_list (campCollaborationId)');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('DROP INDEX UNIQ_10A0952D56778C5C');
$this->addSql('CREATE INDEX idx_10a0952d56778c5c ON material_list (campcollaborationid)');
diff --git a/api/migrations/schema/Version20220501060227.php b/api/migrations/schema/Version20220501060227.php
index 71e8c6628c..7755d4c8d7 100644
--- a/api/migrations/schema/Version20220501060227.php
+++ b/api/migrations/schema/Version20220501060227.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220501060227 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -29,6 +30,7 @@ public function up(Schema $schema): void {
$this->addSql('DROP INDEX idx_d7785d2c9d468a55');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE INDEX idx_c93898a9d468a55 ON camp_collaboration (createtime)');
diff --git a/api/migrations/schema/Version20220501101420.php b/api/migrations/schema/Version20220501101420.php
index 064a47ba47..8b2a030616 100644
--- a/api/migrations/schema/Version20220501101420.php
+++ b/api/migrations/schema/Version20220501101420.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220501101420 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -51,6 +52,7 @@ public function up(Schema $schema): void {
$this->addSql('DROP TABLE abstract_content_node_owner');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE abstract_content_node_owner (id VARCHAR(16) NOT NULL, rootcontentnodeid VARCHAR(16) NOT NULL, createtime TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, updatetime TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, entitytype VARCHAR(255) NOT NULL, PRIMARY KEY(id))');
diff --git a/api/migrations/schema/Version20220605162133.php b/api/migrations/schema/Version20220605162133.php
index 1b7f9c5195..2363645546 100644
--- a/api/migrations/schema/Version20220605162133.php
+++ b/api/migrations/schema/Version20220605162133.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220605162133 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE profile ADD untrustedEmailKeyHash VARCHAR(255) DEFAULT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20220611193723.php b/api/migrations/schema/Version20220611193723.php
index 1b8b2c97ae..16e9ef50e6 100644
--- a/api/migrations/schema/Version20220611193723.php
+++ b/api/migrations/schema/Version20220611193723.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220611193723 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'ContentNode: Change inheritance type from JOINED to SINGLE_TABLE';
}
@@ -80,6 +81,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE material_item ADD CONSTRAINT FK_4B73482BD2115263 FOREIGN KEY (materialNodeId) REFERENCES content_node (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
diff --git a/api/migrations/schema/Version20220905205508.php b/api/migrations/schema/Version20220905205508.php
index 416df57304..ee051ae2ee 100644
--- a/api/migrations/schema/Version20220905205508.php
+++ b/api/migrations/schema/Version20220905205508.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220905205508 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -23,6 +24,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE INDEX IDX_466EF70C55AA53E2 ON o_auth_state (updateTime)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20221001082012.php b/api/migrations/schema/Version20221001082012.php
index 31a45a1350..de99636c42 100644
--- a/api/migrations/schema/Version20221001082012.php
+++ b/api/migrations/schema/Version20221001082012.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20221001082012 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Remove username from profile';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE profile DROP username');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE "profile" ADD username VARCHAR(64) NOT NULL');
diff --git a/api/migrations/schema/Version20221020194510.php b/api/migrations/schema/Version20221020194510.php
index 70cf4d0f4c..e2bb12c95a 100644
--- a/api/migrations/schema/Version20221020194510.php
+++ b/api/migrations/schema/Version20221020194510.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20221020194510 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Migrate SingleText text -> html and Storyboard column2 -> column2Html';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql("UPDATE content_node cn SET data = (REPLACE(data::TEXT, '\"column2\"', '\"column2Html\"'))::JSONB WHERE cn.strategy='storyboard'");
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql("UPDATE content_node cn SET data = (REPLACE(data::TEXT, '\"html\"', '\"text\"'))::JSONB WHERE cn.strategy='singletext'");
$this->addSql("UPDATE content_node cn SET data = (REPLACE(data::TEXT, '\"column2Html\"', '\"column2\"'))::JSONB WHERE cn.strategy='storyboard'");
diff --git a/api/migrations/schema/Version20221029182700.php b/api/migrations/schema/Version20221029182700.php
index ae263ea8c9..3ec2d4e115 100644
--- a/api/migrations/schema/Version20221029182700.php
+++ b/api/migrations/schema/Version20221029182700.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20221029182700 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -19,5 +20,6 @@ public function up(Schema $schema): void {
$this->addSql('UPDATE content_node SET slot = null WHERE slot = \'\' and parentId IS NULL');
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/schema/Version20221030095015.php b/api/migrations/schema/Version20221030095015.php
index 81d309d871..f9a523ee5d 100644
--- a/api/migrations/schema/Version20221030095015.php
+++ b/api/migrations/schema/Version20221030095015.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20221030095015 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add unique constraint on contentnode (parentid, slot, position)';
}
@@ -26,6 +27,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql(
<<<'EOF'
diff --git a/api/migrations/schema/Version20221108193806.php b/api/migrations/schema/Version20221108193806.php
index 3174cc6edd..8eb3cfa5ba 100644
--- a/api/migrations/schema/Version20221108193806.php
+++ b/api/migrations/schema/Version20221108193806.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20221108193806 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE UNIQUE INDEX couponKey_unique ON camp (couponKey)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20221204135348.php b/api/migrations/schema/Version20221204135348.php
index 704f602963..1b9c516ab8 100644
--- a/api/migrations/schema/Version20221204135348.php
+++ b/api/migrations/schema/Version20221204135348.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20221204135348 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE profile ADD jubladbId VARCHAR(255) DEFAULT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE "profile" DROP jubladbId');
diff --git a/api/migrations/schema/Version20230204135941.php b/api/migrations/schema/Version20230204135941.php
index 9672fda125..3a2b160519 100644
--- a/api/migrations/schema/Version20230204135941.php
+++ b/api/migrations/schema/Version20230204135941.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20230204135941 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Make unique constraint offset_period_idx a deferred constraint';
}
@@ -27,6 +28,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql(
<<<'EOF'
diff --git a/api/migrations/schema/Version20230330160108.php b/api/migrations/schema/Version20230330160108.php
index e691f52956..30711419dc 100644
--- a/api/migrations/schema/Version20230330160108.php
+++ b/api/migrations/schema/Version20230330160108.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20230330160108 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -26,6 +27,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE camp ADD printYSLogoOnPicasso BOOLEAN DEFAULT false NOT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20230408180319.php b/api/migrations/schema/Version20230408180319.php
index 752ac690f8..50e2d70f92 100644
--- a/api/migrations/schema/Version20230408180319.php
+++ b/api/migrations/schema/Version20230408180319.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20230408180319 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -27,6 +28,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE INDEX IDX_AC74095A5016EA8D ON activity (progressLabelId)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE activity DROP CONSTRAINT FK_AC74095A5016EA8D');
diff --git a/api/migrations/schema/Version20230409164830.php b/api/migrations/schema/Version20230409164830.php
index d40c8783eb..967bebb7ef 100644
--- a/api/migrations/schema/Version20230409164830.php
+++ b/api/migrations/schema/Version20230409164830.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20230409164830 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Create ActivityProgressLabels for camps from their prototype';
}
@@ -114,5 +115,6 @@ public function up(Schema $schema): void {
');
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/schema/Version20230502191133.php b/api/migrations/schema/Version20230502191133.php
index cb62efdb36..5a49fa9585 100644
--- a/api/migrations/schema/Version20230502191133.php
+++ b/api/migrations/schema/Version20230502191133.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20230502191133 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add unique constraint on activity_progress_label (campid, position)';
}
@@ -26,6 +27,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql(
<<<'EOF'
diff --git a/api/migrations/schema/Version20230731081633.php b/api/migrations/schema/Version20230731081633.php
index e08f611f17..d4c20a6374 100644
--- a/api/migrations/schema/Version20230731081633.php
+++ b/api/migrations/schema/Version20230731081633.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20230731081633 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add extension pgcrypto';
}
@@ -19,6 +20,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE EXTENSION IF NOT EXISTS pgcrypto');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('DROP EXTENSION IF EXISTS pgcrypto');
}
diff --git a/api/migrations/schema/Version20231021145933.php b/api/migrations/schema/Version20231021145933.php
index d4db1adece..a513be054a 100644
--- a/api/migrations/schema/Version20231021145933.php
+++ b/api/migrations/schema/Version20231021145933.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20231021145933 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Remove couponkey from camp';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE camp DROP couponkey');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('ALTER TABLE camp ADD couponkey TEXT DEFAULT NULL');
$this->addSql('CREATE UNIQUE INDEX couponkey_unique ON camp (couponkey)');
diff --git a/api/migrations/schema/Version20231111000042.php b/api/migrations/schema/Version20231111000042.php
index 8af8156ab0..2f08392781 100644
--- a/api/migrations/schema/Version20231111000042.php
+++ b/api/migrations/schema/Version20231111000042.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20231111000042 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add ResponsiveLayout content type';
}
@@ -27,6 +28,7 @@ public function up(Schema $schema): void {
");
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DELETE FROM public.content_type WHERE id IN (\'a4211c112939\')');
diff --git a/api/migrations/schema/Version20240413142253.php b/api/migrations/schema/Version20240413142253.php
index df45ba8763..91f3ad72bc 100644
--- a/api/migrations/schema/Version20240413142253.php
+++ b/api/migrations/schema/Version20240413142253.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20240413142253 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add View view_camp_root_content_nodes to fast resolve contentNode-Owner';
}
@@ -27,6 +28,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP VIEW public.view_camp_root_content_nodes');
diff --git a/api/migrations/schema/Version20240413193546.php b/api/migrations/schema/Version20240413193546.php
index 6c150de75d..09b51b268d 100644
--- a/api/migrations/schema/Version20240413193546.php
+++ b/api/migrations/schema/Version20240413193546.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20240413193546 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add View view_period_material_items to fast resolve materialItem-Owner';
}
@@ -35,6 +36,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP VIEW public.view_period_material_items');
diff --git a/api/migrations/schema/Version20240414092957.php b/api/migrations/schema/Version20240414092957.php
index 019a977af5..c48002c442 100644
--- a/api/migrations/schema/Version20240414092957.php
+++ b/api/migrations/schema/Version20240414092957.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20240414092957 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add View view_user_camps to fast resolve visible camps';
}
@@ -29,6 +30,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('DROP VIEW public.view_user_camps');
diff --git a/api/migrations/schema/Version20240416120000.php b/api/migrations/schema/Version20240416120000.php
index 1dff7dad94..e3688adefb 100644
--- a/api/migrations/schema/Version20240416120000.php
+++ b/api/migrations/schema/Version20240416120000.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20240416120000 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Adds new content types';
}
@@ -17,6 +18,7 @@ public function up(Schema $schema): void {
$this->addSql('INSERT INTO public.content_type (id, name, active, entityclass, jsonconfig, createtime, updatetime) VALUES (\'5e2028c55ee4\', \'LearningTopics\', true, \'App\Entity\ContentNode\SingleText\', \'[]\', \'2024-04-16 12:00:00\', \'2024-04-16 12:00:00\');');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('DELETE FROM public.content_type WHERE id IN (\'c462edd869f3\', \'5e2028c55ee4\')');
}
diff --git a/api/migrations/schema/Version20240507154923.php b/api/migrations/schema/Version20240507154923.php
index 048dafca53..aa3d46d30f 100644
--- a/api/migrations/schema/Version20240507154923.php
+++ b/api/migrations/schema/Version20240507154923.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240507154923 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add color and abbreviation to camp_collaboration';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE camp_collaboration ADD abbreviation TEXT DEFAULT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('ALTER TABLE camp_collaboration DROP abbreviation');
$this->addSql('ALTER TABLE camp_collaboration DROP color');
diff --git a/api/migrations/schema/Version20240608215345.php b/api/migrations/schema/Version20240608215345.php
index f5addee3d0..4db072a8e8 100644
--- a/api/migrations/schema/Version20240608215345.php
+++ b/api/migrations/schema/Version20240608215345.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240608215345 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -24,6 +25,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE checklist ADD CONSTRAINT FK_5C696D2F6D299429 FOREIGN KEY (campId) REFERENCES camp (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20240615180024.php b/api/migrations/schema/Version20240615180024.php
index 0b3570cb64..37b5c3815f 100644
--- a/api/migrations/schema/Version20240615180024.php
+++ b/api/migrations/schema/Version20240615180024.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240615180024 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add checklist_item table';
}
@@ -26,6 +27,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE checklist_item ADD CONSTRAINT FK_99EB20F910EE4CEE FOREIGN KEY (parentId) REFERENCES checklist_item (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20240619081247.php b/api/migrations/schema/Version20240619081247.php
index e12627e71a..dfb5e02f42 100644
--- a/api/migrations/schema/Version20240619081247.php
+++ b/api/migrations/schema/Version20240619081247.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240619081247 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Remove unused column collaborationacceptedby from camp_collaboration';
}
@@ -19,6 +20,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE camp_collaboration DROP collaborationacceptedby');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('ALTER TABLE camp_collaboration ADD collaborationacceptedby TEXT DEFAULT NULL');
}
diff --git a/api/migrations/schema/Version20240620104153.php b/api/migrations/schema/Version20240620104153.php
index 82cfd58b19..6f0ee0dae6 100644
--- a/api/migrations/schema/Version20240620104153.php
+++ b/api/migrations/schema/Version20240620104153.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240620104153 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -25,6 +26,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE checklistnode_checklistitem ADD CONSTRAINT FK_5A2B5B318A09A289 FOREIGN KEY (checklistitem_id) REFERENCES checklist_item (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20240620143000.php b/api/migrations/schema/Version20240620143000.php
index 1d61764ed0..706cd55971 100644
--- a/api/migrations/schema/Version20240620143000.php
+++ b/api/migrations/schema/Version20240620143000.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20240620143000 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add ChecklistNode content type';
}
@@ -27,6 +28,7 @@ public function up(Schema $schema): void {
");
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql("DELETE FROM public.content_type WHERE id IN ('a4211c11211c')");
diff --git a/api/migrations/schema/Version20240621060047.php b/api/migrations/schema/Version20240621060047.php
index 4f04aa3587..e794b7a46d 100644
--- a/api/migrations/schema/Version20240621060047.php
+++ b/api/migrations/schema/Version20240621060047.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240621060047 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add color and abbreviation to profile';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE profile ADD abbreviation TEXT DEFAULT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('ALTER TABLE profile DROP color');
$this->addSql('ALTER TABLE profile DROP abbreviation');
diff --git a/api/migrations/schema/Version20240817112552.php b/api/migrations/schema/Version20240817112552.php
index 48661f82b3..b9e891cb70 100644
--- a/api/migrations/schema/Version20240817112552.php
+++ b/api/migrations/schema/Version20240817112552.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240817112552 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Rename camp.name to shortTitle and switch shortTitle with title if shortTitle is longer than 16 characters and title is shorter than shortTitle';
}
@@ -22,6 +23,7 @@ public function up(Schema $schema): void {
$this->addSql('UPDATE camp SET shortTitle = title, title = shortTitle WHERE char_length(shortTitle) > 16 AND char_length(title) < char_length(shortTitle);');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql("UPDATE camp SET shortTitle = '' WHERE shortTitle IS NULL");
$this->addSql('ALTER TABLE camp ALTER shortTitle SET NOT NULL, ALTER shortTitle TYPE VARCHAR(32)');
diff --git a/api/migrations/schema/Version20240817181500.php b/api/migrations/schema/Version20240817181500.php
index 3b5b724183..8d29550d3c 100644
--- a/api/migrations/schema/Version20240817181500.php
+++ b/api/migrations/schema/Version20240817181500.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240817181500 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Renames safety concept to safety considerations';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql("UPDATE content_type SET name = 'SafetyConsiderations' WHERE name = 'SafetyConcept';");
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql("UPDATE content_type SET name = 'SafetyConcept' WHERE name = 'SafetyConsiderations';");
diff --git a/api/migrations/schema/Version20240912183023.php b/api/migrations/schema/Version20240912183023.php
index a702781b5e..e7dd2f72d6 100644
--- a/api/migrations/schema/Version20240912183023.php
+++ b/api/migrations/schema/Version20240912183023.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240912183023 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Checklist.IsPrototype';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE checklist ALTER campid DROP NOT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20240928090159.php b/api/migrations/schema/Version20240928090159.php
index a085090be9..4b97c941cc 100644
--- a/api/migrations/schema/Version20240928090159.php
+++ b/api/migrations/schema/Version20240928090159.php
@@ -13,6 +13,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240928090159 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Insert PBS-Checklist';
}
@@ -26,5 +27,6 @@ public function up(Schema $schema): void {
}
}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/schema/Version20240928105306.php b/api/migrations/schema/Version20240928105306.php
index 31e4193564..b20c3bb742 100644
--- a/api/migrations/schema/Version20240928105306.php
+++ b/api/migrations/schema/Version20240928105306.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240928105306 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'checklistitem_checklistid_parentid_position_unique deferrable';
}
@@ -31,6 +32,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql(
<<<'EOF'
diff --git a/api/migrations/schema/Version20240928121040.php b/api/migrations/schema/Version20240928121040.php
index 1b00490f56..501ec65ead 100644
--- a/api/migrations/schema/Version20240928121040.php
+++ b/api/migrations/schema/Version20240928121040.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20240928121040 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'restricts deletion of checklists to ensure no checklist nodes references a checklist when deleting';
}
@@ -21,6 +22,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE checklistnode_checklistitem ADD CONSTRAINT FK_5A2B5B318A09A289 FOREIGN KEY (checklistitem_id) REFERENCES checklist_item (id) ON DELETE RESTRICT NOT DEFERRABLE INITIALLY IMMEDIATE');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
diff --git a/api/migrations/schema/Version20250114202150.php b/api/migrations/schema/Version20250114202150.php
index b06d9fc9e0..67e3812526 100644
--- a/api/migrations/schema/Version20250114202150.php
+++ b/api/migrations/schema/Version20250114202150.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250114202150 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add checklistPrototypeId to checklist';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE checklist ADD checklistPrototypeId VARCHAR(16) DEFAULT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE checklist DROP checklistPrototypeId');
diff --git a/api/migrations/schema/Version20250324224924.php b/api/migrations/schema/Version20250324224924.php
index 789a1c61a8..88d593ecf6 100644
--- a/api/migrations/schema/Version20250324224924.php
+++ b/api/migrations/schema/Version20250324224924.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250324224924 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'ContentNode.RootId not nullable';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE content_node ALTER rootId SET NOT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE content_node ALTER rootid DROP NOT NULL');
diff --git a/api/migrations/schema/Version20250412165829.php b/api/migrations/schema/Version20250412165829.php
index a9e96369f4..e2d879a2f2 100644
--- a/api/migrations/schema/Version20250412165829.php
+++ b/api/migrations/schema/Version20250412165829.php
@@ -11,11 +11,13 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250412165829 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'MaterialItem.MaterialList is nullable';
}
public function up(Schema $schema): void {}
+ #[\Override]
public function down(Schema $schema): void {}
}
diff --git a/api/migrations/schema/Version20250520220800.php b/api/migrations/schema/Version20250520220800.php
index d17e2cce50..22ec0802d7 100644
--- a/api/migrations/schema/Version20250520220800.php
+++ b/api/migrations/schema/Version20250520220800.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250520220800 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'MaterialItem.MaterialList is nullable';
}
@@ -83,6 +84,7 @@ public function up(Schema $schema): void {
SQL);
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql(<<<'SQL'
ALTER TABLE material_item ALTER materiallistid SET NOT NULL
diff --git a/api/migrations/schema/Version20250625090555.php b/api/migrations/schema/Version20250625090555.php
index 2aa317efbf..9eb2210d70 100644
--- a/api/migrations/schema/Version20250625090555.php
+++ b/api/migrations/schema/Version20250625090555.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250625090555 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add comment entity';
}
@@ -46,6 +47,7 @@ public function up(Schema $schema): void {
SQL);
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql(<<<'SQL'
diff --git a/api/migrations/schema/Version20250809140557.php b/api/migrations/schema/Version20250809140557.php
index aaa3db8ce2..e1f39b3873 100644
--- a/api/migrations/schema/Version20250809140557.php
+++ b/api/migrations/schema/Version20250809140557.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250809140557 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add refresh tokens table';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE UNIQUE INDEX UNIQ_9BACE7E1C74F2195 ON refresh_tokens (refresh_token)');
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql('DROP TABLE refresh_tokens');
}
diff --git a/api/migrations/schema/Version20250821113132.php b/api/migrations/schema/Version20250821113132.php
index 99bffa3490..f7fa043488 100644
--- a/api/migrations/schema/Version20250821113132.php
+++ b/api/migrations/schema/Version20250821113132.php
@@ -8,6 +8,7 @@
use Doctrine\Migrations\AbstractMigration;
final class Version20250821113132 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add isShared flag on camps';
}
@@ -30,6 +31,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
$this->addSql(
<<<'EOF'
diff --git a/api/migrations/schema/Version20250903125914.php b/api/migrations/schema/Version20250903125914.php
index d0122be5c2..34e901bfa8 100644
--- a/api/migrations/schema/Version20250903125914.php
+++ b/api/migrations/schema/Version20250903125914.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20250903125914 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Add sharedSince and sharedBy to camp';
}
@@ -23,6 +24,7 @@ public function up(Schema $schema): void {
$this->addSql('CREATE INDEX IDX_C19442304B2BC976 ON camp (sharedById)');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE camp DROP CONSTRAINT FK_C19442304B2BC976');
diff --git a/api/migrations/schema/Version20251003000000.php b/api/migrations/schema/Version20251003000000.php
index b608a55de1..4d738c9032 100644
--- a/api/migrations/schema/Version20251003000000.php
+++ b/api/migrations/schema/Version20251003000000.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20251003000000 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return 'Done-Column for MaterialItem';
}
@@ -20,6 +21,7 @@ public function up(Schema $schema): void {
$this->addSql('ALTER TABLE material_item ADD done BOOLEAN DEFAULT false NOT NULL');
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE material_item DROP done');
diff --git a/api/migrations/schema/Version20251004093025.php b/api/migrations/schema/Version20251004093025.php
index e1baefa753..3cd0de34b4 100644
--- a/api/migrations/schema/Version20251004093025.php
+++ b/api/migrations/schema/Version20251004093025.php
@@ -11,6 +11,7 @@
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20251004093025 extends AbstractMigration {
+ #[\Override]
public function getDescription(): string {
return '';
}
@@ -36,6 +37,7 @@ public function up(Schema $schema): void {
);
}
+ #[\Override]
public function down(Schema $schema): void {
// this down() migration is auto-generated, please modify it to your needs
$this->addSql(
diff --git a/api/rector.php b/api/rector.php
index d1a5abcf87..3f72e3e576 100644
--- a/api/rector.php
+++ b/api/rector.php
@@ -13,6 +13,9 @@
use Rector\Config\RectorConfig;
use Rector\DeadCode\Rector\If_\RemoveDeadInstanceOfRector;
use Rector\Doctrine\Bundle230\Rector\Class_\AddAnnotationToRepositoryRector;
+use Rector\Php74\Rector\Closure\ClosureToArrowFunctionRector;
+use Rector\Php80\Rector\Class_\ClassPropertyAssignToConstructorPromotionRector;
+use Rector\Php81\Rector\FuncCall\NullToStrictStringFuncCallArgRector;
use Rector\PHPUnit\CodeQuality\Rector\Class_\PreferPHPUnitThisCallRector;
use Rector\PHPUnit\CodeQuality\Rector\ClassMethod\AddInstanceofAssertForNullableInstanceRector;
use Rector\PHPUnit\CodeQuality\Rector\MethodCall\AssertEmptyNullableObjectToAssertInstanceofRector;
@@ -34,6 +37,7 @@
->withComposerBased(doctrine: true, phpunit: true, symfony: true)
->withPreparedSets(deadCode: true, codeQuality: true, privatization: true, rectorPreset: true, phpunitCodeQuality: true, symfonyCodeQuality: true)
->withAttributesSets(all: true)
+ ->withPhpSets(php84: true)
->withConfiguredRule(RenameFunctionRector::class, [
'implode' => 'join',
'join' => 'join',
@@ -42,6 +46,7 @@
AddAnnotationToRepositoryRector::class,
AddInstanceofAssertForNullableInstanceRector::class,
AssertEmptyNullableObjectToAssertInstanceofRector::class,
+ ClosureToArrowFunctionRector::class,
CombineIfRector::class,
ConstraintOptionsToNamedArgumentsRector::class,
DeclareStrictTypesRector::class,
@@ -50,11 +55,15 @@
FinalizeTestCaseClassRector::class,
FlipTypeControlToUseExclusiveTypeRector::class,
LocallyCalledStaticMethodToNonStaticRector::class,
+ NullToStrictStringFuncCallArgRector::class,
PreferPHPUnitThisCallRector::class,
RemoveDeadInstanceOfRector::class,
SimplifyIfElseToTernaryRector::class,
SimplifyIfReturnBoolRector::class,
ThrowWithPreviousExceptionRector::class,
UseIdenticalOverEqualWithSameTypeRector::class,
+ ClassPropertyAssignToConstructorPromotionRector::class => [
+ __DIR__.'/src/DTO/*',
+ ],
])
;
diff --git a/api/src/Doctrine/Filter/CampCollaboratorFilter.php b/api/src/Doctrine/Filter/CampCollaboratorFilter.php
index cc23257575..c398f3dfea 100644
--- a/api/src/Doctrine/Filter/CampCollaboratorFilter.php
+++ b/api/src/Doctrine/Filter/CampCollaboratorFilter.php
@@ -17,10 +17,10 @@
use Symfony\Component\Serializer\NameConverter\NameConverterInterface;
final class CampCollaboratorFilter extends AbstractFilter {
- public const QUERY_PARAM_NAME = 'campCollaborator';
+ public const string QUERY_PARAM_NAME = 'campCollaborator';
public function __construct(
- private IriConverterInterface $iriConverter,
+ private readonly IriConverterInterface $iriConverter,
ManagerRegistry $managerRegistry,
?LoggerInterface $logger = null,
?array $properties = null,
diff --git a/api/src/Doctrine/Filter/ContentNodeCampFilter.php b/api/src/Doctrine/Filter/ContentNodeCampFilter.php
index 7263a7bb7e..a374f92b71 100644
--- a/api/src/Doctrine/Filter/ContentNodeCampFilter.php
+++ b/api/src/Doctrine/Filter/ContentNodeCampFilter.php
@@ -15,10 +15,10 @@
use Symfony\Component\TypeInfo\Type;
final class ContentNodeCampFilter extends AbstractFilter {
- public const CAMP_QUERY_NAME = 'camp';
+ public const string CAMP_QUERY_NAME = 'camp';
public function __construct(
- private IriConverterInterface $iriConverter,
+ private readonly IriConverterInterface $iriConverter,
ManagerRegistry $managerRegistry,
?LoggerInterface $logger = null,
?array $properties = null,
diff --git a/api/src/Doctrine/Filter/ContentNodeIsRootFilter.php b/api/src/Doctrine/Filter/ContentNodeIsRootFilter.php
index 4c39390025..efdb1c2250 100644
--- a/api/src/Doctrine/Filter/ContentNodeIsRootFilter.php
+++ b/api/src/Doctrine/Filter/ContentNodeIsRootFilter.php
@@ -13,7 +13,7 @@
use Symfony\Component\TypeInfo\Type;
final class ContentNodeIsRootFilter extends AbstractFilter {
- public const IS_ROOT_QUERY_NAME = 'isRoot';
+ public const string IS_ROOT_QUERY_NAME = 'isRoot';
public function __construct(
ManagerRegistry $managerRegistry,
diff --git a/api/src/Doctrine/Filter/ContentNodePeriodFilter.php b/api/src/Doctrine/Filter/ContentNodePeriodFilter.php
index 7f3ba0a474..ed568c8385 100644
--- a/api/src/Doctrine/Filter/ContentNodePeriodFilter.php
+++ b/api/src/Doctrine/Filter/ContentNodePeriodFilter.php
@@ -16,10 +16,10 @@
use Symfony\Component\TypeInfo\Type;
final class ContentNodePeriodFilter extends AbstractFilter {
- public const PERIOD_QUERY_NAME = 'period';
+ public const string PERIOD_QUERY_NAME = 'period';
public function __construct(
- private IriConverterInterface $iriConverter,
+ private readonly IriConverterInterface $iriConverter,
ManagerRegistry $managerRegistry,
?LoggerInterface $logger = null,
?array $properties = null,
diff --git a/api/src/Doctrine/Filter/ExpressionDateTimeFilter.php b/api/src/Doctrine/Filter/ExpressionDateTimeFilter.php
index 7dedbabc8b..13442d8fff 100644
--- a/api/src/Doctrine/Filter/ExpressionDateTimeFilter.php
+++ b/api/src/Doctrine/Filter/ExpressionDateTimeFilter.php
@@ -134,7 +134,7 @@ protected function addWhere(
) {
try {
$value = new \DateTime($value);
- } catch (\Exception $e) {
+ } catch (\Exception) {
// Silently ignore this filter if it can not be transformed to a \DateTime
$this->logger->notice('Invalid filter ignored', [
'exception' => new InvalidArgumentException(sprintf('The field "%s" has a wrong date format. Use one accepted by the \DateTime constructor', $field)),
diff --git a/api/src/Doctrine/Filter/MaterialItemPeriodFilter.php b/api/src/Doctrine/Filter/MaterialItemPeriodFilter.php
index 0b6294d073..24f0a7bcaa 100644
--- a/api/src/Doctrine/Filter/MaterialItemPeriodFilter.php
+++ b/api/src/Doctrine/Filter/MaterialItemPeriodFilter.php
@@ -15,10 +15,10 @@
use Symfony\Component\TypeInfo\Type;
final class MaterialItemPeriodFilter extends AbstractFilter {
- public const PERIOD_QUERY_NAME = 'period';
+ public const string PERIOD_QUERY_NAME = 'period';
public function __construct(
- private IriConverterInterface $iriConverter,
+ private readonly IriConverterInterface $iriConverter,
ManagerRegistry $managerRegistry,
?LoggerInterface $logger = null,
?array $properties = null,
diff --git a/api/src/Doctrine/FilterByCurrentUserExtension.php b/api/src/Doctrine/FilterByCurrentUserExtension.php
index a2b1f65b39..46cb9fddc5 100644
--- a/api/src/Doctrine/FilterByCurrentUserExtension.php
+++ b/api/src/Doctrine/FilterByCurrentUserExtension.php
@@ -12,14 +12,8 @@
use Doctrine\ORM\QueryBuilder;
use Symfony\Bundle\SecurityBundle\Security;
-final class FilterByCurrentUserExtension implements QueryCollectionExtensionInterface, QueryItemExtensionInterface {
- private Security $security;
- private EntityManagerInterface $entityManager;
-
- public function __construct(Security $security, EntityManagerInterface $entityManager) {
- $this->security = $security;
- $this->entityManager = $entityManager;
- }
+final readonly class FilterByCurrentUserExtension implements QueryCollectionExtensionInterface, QueryItemExtensionInterface {
+ public function __construct(private Security $security, private EntityManagerInterface $entityManager) {}
public function applyToCollection(QueryBuilder $queryBuilder, QueryNameGeneratorInterface $queryNameGenerator, ?string $resourceClass = null, ?Operation $operation = null, array $context = []): void {
$extraProperties = $operation->getExtraProperties();
diff --git a/api/src/Doctrine/Orm/Extension/FilterEagerLoadingsExtension.php b/api/src/Doctrine/Orm/Extension/FilterEagerLoadingsExtension.php
index 0f4b6bf45b..5201a8796b 100644
--- a/api/src/Doctrine/Orm/Extension/FilterEagerLoadingsExtension.php
+++ b/api/src/Doctrine/Orm/Extension/FilterEagerLoadingsExtension.php
@@ -16,7 +16,7 @@
use Doctrine\ORM\Query\Expr\Orx;
use Doctrine\ORM\QueryBuilder;
-final class FilterEagerLoadingsExtension implements QueryCollectionExtensionInterface {
+final readonly class FilterEagerLoadingsExtension implements QueryCollectionExtensionInterface {
public function __construct(private QueryCollectionExtensionInterface $decorated) {}
public function applyToCollection(
@@ -62,7 +62,7 @@ private function buildAliasMap(EntityManagerInterface $em, ClassMetadata $classM
foreach ($joins as $join) {
// @var Join $join
- list($fromAlias, $fromProperty) = explode('.', $join->getJoin(), 2);
+ [$fromAlias, $fromProperty] = explode('.', $join->getJoin(), 2);
$toAlias = $join->getAlias();
$fromClassMetadata = $aliasMap[$fromAlias][0];
@@ -98,23 +98,11 @@ private function usesAnyToMany($toManyAliases, $wherePart) {
}
private function usesAnyToManyAndx($toManyAliases, Andx $and) {
- foreach ($and->getParts() as $part) {
- if ($this->usesAnyToMany($toManyAliases, $part)) {
- return true;
- }
- }
-
- return false;
+ return array_any($and->getParts(), fn ($part) => $this->usesAnyToMany($toManyAliases, $part));
}
private function usesAnyToManyOrx($toManyAliases, Orx $or) {
- foreach ($or->getParts() as $part) {
- if ($this->usesAnyToMany($toManyAliases, $part)) {
- return true;
- }
- }
-
- return false;
+ return array_any($or->getParts(), fn ($part) => $this->usesAnyToMany($toManyAliases, $part));
}
private function usesAnyToManyComparison($toManyAliases, Comparison $comparison) {
@@ -124,13 +112,7 @@ private function usesAnyToManyComparison($toManyAliases, Comparison $comparison)
}
private function usesAnyToManyFunc($toManyAliases, Func $func) {
- foreach ($func->getArguments() as $argument) {
- if ($this->usesAnyToMany($toManyAliases, $argument)) {
- return true;
- }
- }
-
- return false;
+ return array_any($func->getArguments(), fn ($argument) => $this->usesAnyToMany($toManyAliases, $argument));
}
private function usesAnyToManyString($toManyAliases, string $comparison) {
diff --git a/api/src/Entity/Activity.php b/api/src/Entity/Activity.php
index 203ed4a8f7..a8fd58bbcf 100644
--- a/api/src/Entity/Activity.php
+++ b/api/src/Entity/Activity.php
@@ -144,7 +144,7 @@ class Activity extends BaseEntity implements BelongsToCampInterface {
*/
#[ApiProperty(example: '/activities/1a2b3c4d')]
#[Groups(['create'])]
- public ?Activity $copyActivitySource;
+ public ?Activity $copyActivitySource = null;
/**
* The current assigned ProgressLabel.
diff --git a/api/src/Entity/Camp.php b/api/src/Entity/Camp.php
index befb6e2488..8facd686eb 100644
--- a/api/src/Entity/Camp.php
+++ b/api/src/Entity/Camp.php
@@ -246,7 +246,7 @@ class Camp extends BaseEntity implements BelongsToCampInterface, CopyFromPrototy
#[ApiProperty(example: 'SoLa 2022')]
#[Groups(['read', 'write'])]
#[ORM\Column(type: 'text', nullable: true)]
- public ?string $shortTitle;
+ public ?string $shortTitle = null;
/**
* The full title of the camp. Used for identifying the camp in lists of camps, so
diff --git a/api/src/Entity/Category.php b/api/src/Entity/Category.php
index 132f985b6e..32208329ba 100644
--- a/api/src/Entity/Category.php
+++ b/api/src/Entity/Category.php
@@ -140,7 +140,7 @@ class Category extends BaseEntity implements BelongsToCampInterface, CopyFromPro
*/
#[ApiProperty(example: '/categories/1a2b3c4d')]
#[Groups(['create'])]
- public Activity|Category|null $copyCategorySource;
+ public Activity|Category|null $copyCategorySource = null;
/**
* The id of the category that was used as a template for creating this category. Internal for now, is
@@ -257,25 +257,14 @@ public function removeActivity(Activity $activity): void {
}
public function getStyledNumber(int $num): string {
- switch ($this->numberingStyle) {
- case 'a':
- return strtolower($this->getAlphaNum($num));
-
- case 'A':
- return strtoupper($this->getAlphaNum($num));
-
- case 'i':
- return strtolower($this->getRomanNum($num));
-
- case 'I':
- return strtoupper($this->getRomanNum($num));
-
- case '-':
- return '';
-
- default:
- return strval($num);
- }
+ return match ($this->numberingStyle) {
+ 'a' => strtolower($this->getAlphaNum($num)),
+ 'A' => strtoupper($this->getAlphaNum($num)),
+ 'i' => strtolower($this->getRomanNum($num)),
+ 'I' => strtoupper($this->getRomanNum($num)),
+ '-' => '',
+ default => strval($num),
+ };
}
/**
diff --git a/api/src/Entity/Checklist.php b/api/src/Entity/Checklist.php
index f5bfb23ea1..5f88870e73 100644
--- a/api/src/Entity/Checklist.php
+++ b/api/src/Entity/Checklist.php
@@ -96,7 +96,7 @@ class Checklist extends BaseEntity implements BelongsToCampInterface, CopyFromPr
*/
#[ApiProperty(example: '/checklists/1a2b3c4d')]
#[Groups(['create'])]
- public ?Checklist $copyChecklistSource;
+ public ?Checklist $copyChecklistSource = null;
/**
* All ChecklistItems that belong to this Checklist.
diff --git a/api/src/Entity/ContentNode/ChecklistNode.php b/api/src/Entity/ContentNode/ChecklistNode.php
index 20da316c49..bfe7baec4a 100644
--- a/api/src/Entity/ContentNode/ChecklistNode.php
+++ b/api/src/Entity/ContentNode/ChecklistNode.php
@@ -98,6 +98,7 @@ public function removeChecklistItem(ChecklistItem $checklistItem) {
* @param ChecklistNode $prototype
* @param EntityMap $entityMap
*/
+ #[\Override]
public function copyFromPrototype($prototype, $entityMap): void {
parent::copyFromPrototype($prototype, $entityMap);
diff --git a/api/src/Entity/ContentNode/ColumnLayout.php b/api/src/Entity/ContentNode/ColumnLayout.php
index ff52d04a69..1419ac099c 100644
--- a/api/src/Entity/ContentNode/ColumnLayout.php
+++ b/api/src/Entity/ContentNode/ColumnLayout.php
@@ -112,6 +112,7 @@ public function __construct() {
new AssertNoOrphanChildren(),
])]
#[Assert\NotNull]
+ #[\Override]
public function getData(): ?array {
return parent::getData();
}
@@ -143,6 +144,7 @@ public function removeRootDescendant(ContentNode $rootDescendant): self {
return $this;
}
+ #[\Override]
public function getSupportedSlotNames(): array {
$columns = new ArrayCollection($this->getData()['columns']);
diff --git a/api/src/Entity/ContentNode/MaterialNode.php b/api/src/Entity/ContentNode/MaterialNode.php
index 7259e70ac3..207246030b 100644
--- a/api/src/Entity/ContentNode/MaterialNode.php
+++ b/api/src/Entity/ContentNode/MaterialNode.php
@@ -70,6 +70,7 @@ public function __construct() {
#[ApiProperty(example: null)]
#[Groups(['read', 'write'])]
#[Assert\IsNull]
+ #[\Override]
public function getData(): ?array {
return $this->data;
}
@@ -104,6 +105,7 @@ public function removeMaterialItem(MaterialItem $materialItem): self {
* @param MaterialNode $prototype
* @param EntityMap $entityMap
*/
+ #[\Override]
public function copyFromPrototype($prototype, $entityMap): void {
parent::copyFromPrototype($prototype, $entityMap);
diff --git a/api/src/Entity/ContentNode/MultiSelect.php b/api/src/Entity/ContentNode/MultiSelect.php
index 0cd381612e..c1b433fab4 100644
--- a/api/src/Entity/ContentNode/MultiSelect.php
+++ b/api/src/Entity/ContentNode/MultiSelect.php
@@ -87,6 +87,7 @@ class MultiSelect extends ContentNode {
#[Assert\IsNull(groups: ['create'])] // create with empty data; default value is populated by data persister
#[Assert\NotNull(groups: ['update'])]
#[AssertJsonSchema(schema: self::JSON_SCHEMA, groups: ['update'])]
+ #[\Override]
public function getData(): ?array {
return $this->data;
}
diff --git a/api/src/Entity/ContentNode/ResponsiveLayout.php b/api/src/Entity/ContentNode/ResponsiveLayout.php
index c3d0fbfc90..8370c2a8d0 100644
--- a/api/src/Entity/ContentNode/ResponsiveLayout.php
+++ b/api/src/Entity/ContentNode/ResponsiveLayout.php
@@ -105,10 +105,12 @@ public function __construct() {
new AssertNoOrphanChildren(),
])]
#[Assert\NotNull]
+ #[\Override]
public function getData(): ?array {
return parent::getData();
}
+ #[\Override]
public function getSupportedSlotNames(): array {
$items = new ArrayCollection($this->getData()['items']);
diff --git a/api/src/Entity/ContentNode/SingleText.php b/api/src/Entity/ContentNode/SingleText.php
index a98e0b75df..4eaa447bb2 100644
--- a/api/src/Entity/ContentNode/SingleText.php
+++ b/api/src/Entity/ContentNode/SingleText.php
@@ -79,6 +79,7 @@ public function __construct() {
#[Groups(['read', 'write'])]
#[AssertJsonSchema(schema: self::JSON_SCHEMA)]
#[Assert\NotNull]
+ #[\Override]
public function getData(): ?array {
return $this->data;
}
diff --git a/api/src/Entity/ContentNode/Storyboard.php b/api/src/Entity/ContentNode/Storyboard.php
index d4b8eca6e1..b227cf6478 100644
--- a/api/src/Entity/ContentNode/Storyboard.php
+++ b/api/src/Entity/ContentNode/Storyboard.php
@@ -103,7 +103,8 @@ class Storyboard extends ContentNode {
'position' => 0, ], ]])]
#[Groups(['read', 'write'])]
#[AssertJsonSchema(schema: self::JSON_SCHEMA)]
- #[Assert\NotNull(groups: ['update'])] // if created with empty data, then default value is populated in data persister
+ #[Assert\NotNull(groups: ['update'])]
+ #[\Override] // if created with empty data, then default value is populated in data persister
public function getData(): ?array {
return $this->data;
}
diff --git a/api/src/Entity/Day.php b/api/src/Entity/Day.php
index dae1cb98b3..a52a979482 100644
--- a/api/src/Entity/Day.php
+++ b/api/src/Entity/Day.php
@@ -157,7 +157,7 @@ public function getStart(): ?\DateTime {
$start?->add(new \DateInterval('P'.$this->dayOffset.'D'));
return $start;
- } catch (\Exception $e) {
+ } catch (\Exception) {
return null;
}
}
@@ -173,7 +173,7 @@ public function getEnd(): ?\DateTime {
$end?->add(new \DateInterval('P'.($this->dayOffset + 1).'D'));
return $end;
- } catch (\Exception $e) {
+ } catch (\Exception) {
return null;
}
}
diff --git a/api/src/EventListener/JWTCreatedListener.php b/api/src/EventListener/JWTCreatedListener.php
index 10a14cc343..1cc3243b4a 100644
--- a/api/src/EventListener/JWTCreatedListener.php
+++ b/api/src/EventListener/JWTCreatedListener.php
@@ -11,7 +11,7 @@
* to know where to fetch personal profile information.
*/
class JWTCreatedListener {
- public function __construct(private Security $security, private IriConverterInterface $iriConverter) {}
+ public function __construct(private readonly Security $security, private readonly IriConverterInterface $iriConverter) {}
public function onJWTCreated(JWTCreatedEvent $event) {
$payload = $event->getData();
diff --git a/api/src/EventListener/RequestTransactionListener.php b/api/src/EventListener/RequestTransactionListener.php
index c6ba263a36..0310909ff5 100644
--- a/api/src/EventListener/RequestTransactionListener.php
+++ b/api/src/EventListener/RequestTransactionListener.php
@@ -14,12 +14,12 @@
/**
* Wraps a database transaction around all SQL statements in the whole request.
*/
-final class RequestTransactionListener implements EventSubscriberInterface {
+final readonly class RequestTransactionListener implements EventSubscriberInterface {
private \SplStack $transactionLevelStack;
public function __construct(
- private readonly EntityManagerInterface $entityManager,
- private readonly LoggerInterface $logger
+ private EntityManagerInterface $entityManager,
+ private LoggerInterface $logger
) {
$this->transactionLevelStack = new \SplStack();
}
diff --git a/api/src/HttpCache/CacheControlListener.php b/api/src/HttpCache/CacheControlListener.php
index 494c533494..4c2a58d594 100644
--- a/api/src/HttpCache/CacheControlListener.php
+++ b/api/src/HttpCache/CacheControlListener.php
@@ -11,7 +11,7 @@
* - caching is disabled (configurable via environment variable API_CACHE_ENABLED)
* - total header size is too large to be handled by Varnish (configurable via parameter app.httpCache.maxHeaderSize).
*/
-final class CacheControlListener {
+final readonly class CacheControlListener {
private bool $apiCacheEnabled;
private int $maxHeaderSize;
diff --git a/api/src/HttpCache/PurgeHttpCacheListener.php b/api/src/HttpCache/PurgeHttpCacheListener.php
index b4fbff668e..15ad968647 100644
--- a/api/src/HttpCache/PurgeHttpCacheListener.php
+++ b/api/src/HttpCache/PurgeHttpCacheListener.php
@@ -41,7 +41,7 @@
final readonly class PurgeHttpCacheListener {
use ClassInfoTrait;
- public const IRI_RELATION_DELIMITER = '#';
+ public const string IRI_RELATION_DELIMITER = '#';
public function __construct(
private IriConverterInterface $iriConverter,
diff --git a/api/src/HttpCache/ResponseTagger.php b/api/src/HttpCache/ResponseTagger.php
index 73f6c34a56..bdc5e6c996 100644
--- a/api/src/HttpCache/ResponseTagger.php
+++ b/api/src/HttpCache/ResponseTagger.php
@@ -14,9 +14,9 @@
*/
class ResponseTagger {
public function __construct(
- private string $matchPath,
- private SymfonyResponseTagger $responseTagger,
- private RequestStack $requestStack
+ private readonly string $matchPath,
+ private readonly SymfonyResponseTagger $responseTagger,
+ private readonly RequestStack $requestStack
) {}
/**
diff --git a/api/src/HttpCache/TagCollector.php b/api/src/HttpCache/TagCollector.php
index d1e1c84119..f33f4e2fa3 100644
--- a/api/src/HttpCache/TagCollector.php
+++ b/api/src/HttpCache/TagCollector.php
@@ -17,7 +17,7 @@
class TagCollector implements TagCollectorInterface {
public const IRI_RELATION_DELIMITER = '#';
- public function __construct(private ResponseTagger $responseTagger) {}
+ public function __construct(private readonly ResponseTagger $responseTagger) {}
/**
* Collect cache tags for cache invalidation.
diff --git a/api/src/HttpCache/VarnishProxyClient.php b/api/src/HttpCache/VarnishProxyClient.php
index 93206a2829..3ebbbc9270 100644
--- a/api/src/HttpCache/VarnishProxyClient.php
+++ b/api/src/HttpCache/VarnishProxyClient.php
@@ -12,9 +12,9 @@
* Implementing FOS\HttpCache\ProxyClient\Noop, if caching is disabled or no Varnish URL is set.
*/
final class VarnishProxyClient extends Varnish {
- private bool $apiCacheEnabled;
+ private readonly bool $apiCacheEnabled;
- public function __construct(string $apiCacheEnabled, private string $varnishApiUrl) {
+ public function __construct(string $apiCacheEnabled, private readonly string $varnishApiUrl) {
$this->apiCacheEnabled = filter_var($apiCacheEnabled, FILTER_VALIDATE_BOOLEAN);
if ($this->isCacheEnabled()) {
@@ -28,6 +28,7 @@ public function __construct(string $apiCacheEnabled, private string $varnishApiU
}
}
+ #[\Override]
public function ban(array $headers): static {
if ($this->isCacheEnabled()) {
return parent::ban($headers);
@@ -36,6 +37,7 @@ public function ban(array $headers): static {
return $this;
}
+ #[\Override]
public function banPath($path, $contentType = null, $hosts = null): static {
if ($this->isCacheEnabled()) {
return parent::banPath($path, $contentType, $hosts);
@@ -44,6 +46,7 @@ public function banPath($path, $contentType = null, $hosts = null): static {
return $this;
}
+ #[\Override]
public function invalidateTags(array $tags): static {
if ($this->isCacheEnabled()) {
return parent::invalidateTags($tags);
@@ -52,6 +55,7 @@ public function invalidateTags(array $tags): static {
return $this;
}
+ #[\Override]
public function purge($url, array $headers = []): static {
if ($this->isCacheEnabled()) {
return parent::purge($url, $headers);
@@ -60,6 +64,7 @@ public function purge($url, array $headers = []): static {
return $this;
}
+ #[\Override]
public function refresh($url, array $headers = []): static {
if ($this->isCacheEnabled()) {
return parent::refresh(${$url}, $headers);
@@ -68,6 +73,7 @@ public function refresh($url, array $headers = []): static {
return $this;
}
+ #[\Override]
public function flush(): int {
if ($this->isCacheEnabled()) {
return parent::flush();
diff --git a/api/src/InputFilter/CleanHTMLFilter.php b/api/src/InputFilter/CleanHTMLFilter.php
index 9eb69724c4..5d3c6b0ff0 100644
--- a/api/src/InputFilter/CleanHTMLFilter.php
+++ b/api/src/InputFilter/CleanHTMLFilter.php
@@ -3,11 +3,7 @@
namespace App\InputFilter;
class CleanHTMLFilter extends InputFilter {
- private \HTMLPurifier $htmlPurifier;
-
- public function __construct(\HTMLPurifier $htmlPurifier) {
- $this->htmlPurifier = $htmlPurifier;
- }
+ public function __construct(private readonly \HTMLPurifier $htmlPurifier) {}
/**
* {@inheritdoc}
diff --git a/api/src/InputFilter/FilterAttribute.php b/api/src/InputFilter/FilterAttribute.php
index 99a136825c..e55813cc82 100644
--- a/api/src/InputFilter/FilterAttribute.php
+++ b/api/src/InputFilter/FilterAttribute.php
@@ -12,8 +12,6 @@
* FilterAttribute instances are immutable and serializable.
*/
abstract class FilterAttribute {
- protected int $priority;
-
/**
* Initializes the input filter with options.
*
@@ -25,9 +23,7 @@ abstract class FilterAttribute {
* @param int $priority The priority of this input filter. Higher priorities are executed first.
* Priorities are evaluated for the whole entity class at once.
*/
- public function __construct(array $options = [], int $priority = 0) {
- $this->priority = $priority;
-
+ public function __construct(array $options = [], protected int $priority = 0) {
foreach ($options as $name => $value) {
$this->{$name} = $value;
}
diff --git a/api/src/InputFilter/InvalidOptionsException.php b/api/src/InputFilter/InvalidOptionsException.php
index 2464857995..4857cc84c1 100644
--- a/api/src/InputFilter/InvalidOptionsException.php
+++ b/api/src/InputFilter/InvalidOptionsException.php
@@ -3,12 +3,8 @@
namespace App\InputFilter;
class InvalidOptionsException extends \RuntimeException {
- private array $options;
-
- public function __construct(string $message, array $options) {
+ public function __construct(string $message, private readonly array $options) {
parent::__construct($message);
-
- $this->options = $options;
}
public function getOptions() {
diff --git a/api/src/Metadata/Resource/Factory/UriTemplateFactory.php b/api/src/Metadata/Resource/Factory/UriTemplateFactory.php
index 90dc29c0f9..fc1f953199 100644
--- a/api/src/Metadata/Resource/Factory/UriTemplateFactory.php
+++ b/api/src/Metadata/Resource/Factory/UriTemplateFactory.php
@@ -25,11 +25,11 @@ class UriTemplateFactory {
protected ?array $resourceNameMapping = [];
public function __construct(
- private ContainerInterface $filterLocator,
- private ResourceMetadataCollectionFactoryInterface $resourceMetadataCollectionFactory,
+ private readonly ContainerInterface $filterLocator,
+ private readonly ResourceMetadataCollectionFactoryInterface $resourceMetadataCollectionFactory,
ResourceNameCollectionFactoryInterface $resourceNameCollectionFactory,
- private IriConverterInterface $iriConverter,
- private PaginationOptions $paginationOptions,
+ private readonly IriConverterInterface $iriConverter,
+ private readonly PaginationOptions $paginationOptions,
) {
foreach ($resourceNameCollectionFactory->create() as $className) {
$shortName = $this->resourceMetadataCollectionFactory->create($className)[0]->getShortName();
diff --git a/api/src/OAuth/Hitobito.php b/api/src/OAuth/Hitobito.php
index 6fcd1d4f7d..8b038f2d6d 100644
--- a/api/src/OAuth/Hitobito.php
+++ b/api/src/OAuth/Hitobito.php
@@ -30,10 +30,12 @@ protected function getDefaultScopes(): array {
];
}
+ #[\Override]
protected function getScopeSeparator(): string {
return ' ';
}
+ #[\Override]
protected function fetchResourceOwnerDetails(AccessToken $token): mixed {
$url = $this->getResourceOwnerDetailsUrl($token);
@@ -61,6 +63,7 @@ protected function checkResponse(ResponseInterface $response, $data): void {
}
}
+ #[\Override]
protected function getDefaultHeaders(): array {
return [
'Accept' => 'application/json',
diff --git a/api/src/OAuth/JWTStateOAuth2Client.php b/api/src/OAuth/JWTStateOAuth2Client.php
index 063f28de8d..153e86f9f8 100644
--- a/api/src/OAuth/JWTStateOAuth2Client.php
+++ b/api/src/OAuth/JWTStateOAuth2Client.php
@@ -35,12 +35,12 @@ class JWTStateOAuth2Client extends OAuth2Client implements OAuth2ClientInterface
public function __construct(
AbstractProvider $provider,
- private RequestStack $requestStack,
- private string $cookiePrefix,
- private string $appEnv,
- private JWTEncoderInterface $jwtEncoder,
- private EntityManagerInterface $entityManager,
- private OAuthStateRepository $stateRepository,
+ private readonly RequestStack $requestStack,
+ private readonly string $cookiePrefix,
+ private readonly string $appEnv,
+ private readonly JWTEncoderInterface $jwtEncoder,
+ private readonly EntityManagerInterface $entityManager,
+ private readonly OAuthStateRepository $stateRepository,
) {
parent::__construct($provider, $requestStack);
@@ -63,6 +63,7 @@ public static function getCookieName($cookiePrefix): string {
*
* @throws \Exception
*/
+ #[\Override]
public function redirect(array $scopes = [], array $options = []): RedirectResponse {
$state = bin2hex(random_bytes(16));
$now = time();
@@ -72,7 +73,7 @@ public function redirect(array $scopes = [], array $options = []): RedirectRespo
try {
$response->headers->setCookie(
- Cookie::create($this->getCookieName($this->cookiePrefix))
+ Cookie::create(static::getCookieName($this->cookiePrefix))
->withValue($this->encodeStateJWT(array_merge($options['additionalData'] ?? [], [
'state' => $state,
'iat' => $now,
@@ -83,7 +84,7 @@ public function redirect(array $scopes = [], array $options = []): RedirectRespo
->withSecure('dev' !== $this->appEnv) // in local development, we don't use https
->withExpires($expires)
);
- } catch (JWTEncodeFailureException $e) {
+ } catch (JWTEncodeFailureException) {
throw new \LogicException('Could not create a JWT token for storing the state parameter securely');
}
@@ -107,8 +108,9 @@ public function redirect(array $scopes = [], array $options = []): RedirectRespo
*
* @throws IdentityProviderException
*/
+ #[\Override]
public function getAccessToken(array $options = []): AccessTokenInterface {
- $jwt = $this->getCurrentRequest()->cookies->get($this->getCookieName($this->cookiePrefix));
+ $jwt = $this->getCurrentRequest()->cookies->get(static::getCookieName($this->cookiePrefix));
if (null === $jwt) {
throw new InvalidStateException('Expired state');
}
@@ -122,7 +124,7 @@ public function getAccessToken(array $options = []): AccessTokenInterface {
$now = new \DateTime('@'.time());
$persistedState = $this->stateRepository->findOneUnexpiredBy($actualState, $now);
- } catch (JWTDecodeFailureException|NonUniqueResultException|NoResultException $e) {
+ } catch (JWTDecodeFailureException|NonUniqueResultException|NoResultException) {
throw new InvalidStateException('Invalid state');
}
diff --git a/api/src/OAuth/UrlGeneratorDecorator.php b/api/src/OAuth/UrlGeneratorDecorator.php
index f66fb63210..e6fb215991 100644
--- a/api/src/OAuth/UrlGeneratorDecorator.php
+++ b/api/src/OAuth/UrlGeneratorDecorator.php
@@ -7,8 +7,8 @@
class UrlGeneratorDecorator implements UrlGeneratorInterface {
public function __construct(
- private UrlGeneratorInterface $decorated,
- private string $env
+ private readonly UrlGeneratorInterface $decorated,
+ private readonly string $env
) {}
public function setContext(RequestContext $context): void {
diff --git a/api/src/OpenApi/JwtDecorator.php b/api/src/OpenApi/JwtDecorator.php
index 07d97f9a77..757cd893bb 100644
--- a/api/src/OpenApi/JwtDecorator.php
+++ b/api/src/OpenApi/JwtDecorator.php
@@ -9,7 +9,7 @@
/**
* Decorates the OpenApi factory to add API docs for the login endpoint.
*/
-final class JwtDecorator implements OpenApiFactoryInterface {
+final readonly class JwtDecorator implements OpenApiFactoryInterface {
public function __construct(private OpenApiFactoryInterface $decorated, private string $cookiePrefix) {}
public function __invoke(array $context = []): OpenApi {
diff --git a/api/src/OpenApi/OAuthDecorator.php b/api/src/OpenApi/OAuthDecorator.php
index cdaea0f5e4..181107eb4b 100644
--- a/api/src/OpenApi/OAuthDecorator.php
+++ b/api/src/OpenApi/OAuthDecorator.php
@@ -9,7 +9,7 @@
/**
* Decorates the OpenApi factory to add API docs for the oauth endpoints.
*/
-final class OAuthDecorator implements OpenApiFactoryInterface {
+final readonly class OAuthDecorator implements OpenApiFactoryInterface {
public function __construct(private OpenApiFactoryInterface $decorated) {}
public function __invoke(array $context = []): OpenApi {
diff --git a/api/src/OpenApi/RefreshTokenDecorator.php b/api/src/OpenApi/RefreshTokenDecorator.php
index d65e24416b..177336f817 100644
--- a/api/src/OpenApi/RefreshTokenDecorator.php
+++ b/api/src/OpenApi/RefreshTokenDecorator.php
@@ -6,7 +6,7 @@
use ApiPlatform\OpenApi\Model;
use ApiPlatform\OpenApi\OpenApi;
-final class RefreshTokenDecorator implements OpenApiFactoryInterface {
+final readonly class RefreshTokenDecorator implements OpenApiFactoryInterface {
public function __construct(private OpenApiFactoryInterface $decorated, private string $cookiePrefix) {}
public function __invoke(array $context = []): OpenApi {
diff --git a/api/src/Repository/ScheduleEntryRepository.php b/api/src/Repository/ScheduleEntryRepository.php
index f9cc7f217f..87a87195e2 100644
--- a/api/src/Repository/ScheduleEntryRepository.php
+++ b/api/src/Repository/ScheduleEntryRepository.php
@@ -23,6 +23,7 @@ public function __construct(ManagerRegistry $registry) {
parent::__construct($registry, ScheduleEntry::class);
}
+ #[\Override]
public function createQueryBuilder($alias, $indexBy = null): QueryBuilder {
$qb = parent::createQueryBuilder($alias, $indexBy);
$qb->orderBy($alias.'.period', 'ASC')
diff --git a/api/src/Repository/UserRepository.php b/api/src/Repository/UserRepository.php
index 0829c2a014..72fd1ff80b 100644
--- a/api/src/Repository/UserRepository.php
+++ b/api/src/Repository/UserRepository.php
@@ -28,7 +28,7 @@ public function __construct(ManagerRegistry $registry) {
*/
public function upgradePassword(PasswordAuthenticatedUserInterface $user, string $newHashedPassword): void {
if (!$user instanceof User) {
- throw new UnsupportedUserException(sprintf('Instances of "%s" are not supported.', \get_class($user)));
+ throw new UnsupportedUserException(sprintf('Instances of "%s" are not supported.', $user::class));
}
$user->password = $newHashedPassword;
diff --git a/api/src/Security/OAuth/GoogleAuthenticator.php b/api/src/Security/OAuth/GoogleAuthenticator.php
index f9830f4512..69fcfdd668 100644
--- a/api/src/Security/OAuth/GoogleAuthenticator.php
+++ b/api/src/Security/OAuth/GoogleAuthenticator.php
@@ -25,13 +25,13 @@
class GoogleAuthenticator extends OAuth2Authenticator {
public function __construct(
- private AuthenticationSuccessHandler $authenticationSuccessHandler,
- private string $cookiePrefix,
- private ClientRegistry $clientRegistry,
- private EntityManagerInterface $entityManager,
- private Security $security,
- private JWTEncoderInterface $jwtDecoder,
- private ClaimInvitationService $claimInvitationService,
+ private readonly AuthenticationSuccessHandler $authenticationSuccessHandler,
+ private readonly string $cookiePrefix,
+ private readonly ClientRegistry $clientRegistry,
+ private readonly EntityManagerInterface $entityManager,
+ private readonly Security $security,
+ private readonly JWTEncoderInterface $jwtDecoder,
+ private readonly ClaimInvitationService $claimInvitationService,
) {}
public function supports(Request $request): ?bool {
diff --git a/api/src/Security/OAuth/HitobitoAuthenticator.php b/api/src/Security/OAuth/HitobitoAuthenticator.php
index caf28c6fea..a0e6e8f490 100644
--- a/api/src/Security/OAuth/HitobitoAuthenticator.php
+++ b/api/src/Security/OAuth/HitobitoAuthenticator.php
@@ -26,13 +26,13 @@
class HitobitoAuthenticator extends OAuth2Authenticator {
public function __construct(
- private AuthenticationSuccessHandler $authenticationSuccessHandler,
- private string $cookiePrefix,
- private ClientRegistry $clientRegistry,
- private EntityManagerInterface $entityManager,
- private Security $security,
- private JWTEncoderInterface $jwtDecoder,
- private ClaimInvitationService $claimInvitationService,
+ private readonly AuthenticationSuccessHandler $authenticationSuccessHandler,
+ private readonly string $cookiePrefix,
+ private readonly ClientRegistry $clientRegistry,
+ private readonly EntityManagerInterface $entityManager,
+ private readonly Security $security,
+ private readonly JWTEncoderInterface $jwtDecoder,
+ private readonly ClaimInvitationService $claimInvitationService,
) {}
public function supports(Request $request): ?bool {
diff --git a/api/src/Security/ReCaptcha/ReCaptchaWrapper.php b/api/src/Security/ReCaptcha/ReCaptchaWrapper.php
index 1e08abbcee..feb62c0245 100644
--- a/api/src/Security/ReCaptcha/ReCaptchaWrapper.php
+++ b/api/src/Security/ReCaptcha/ReCaptchaWrapper.php
@@ -7,8 +7,8 @@
class ReCaptchaWrapper {
public function __construct(
- private string $reCaptchaSecret,
- private ReCaptcha $reCaptcha,
+ private readonly string $reCaptchaSecret,
+ private readonly ReCaptcha $reCaptcha,
) {}
public function verify($response, $remoteIp = null) {
diff --git a/api/src/Serializer/Denormalizer/InputFilterDenormalizer.php b/api/src/Serializer/Denormalizer/InputFilterDenormalizer.php
index 26ccb8634c..df67d5be69 100644
--- a/api/src/Serializer/Denormalizer/InputFilterDenormalizer.php
+++ b/api/src/Serializer/Denormalizer/InputFilterDenormalizer.php
@@ -20,7 +20,7 @@ class InputFilterDenormalizer implements DenormalizerInterface, DenormalizerAwar
use DenormalizerAwareTrait;
use NoCachingSupportTrait;
- private const ALREADY_CALLED = 'INPUT_FILTER_DENORMALIZER_ALREADY_CALLED';
+ private const string ALREADY_CALLED = 'INPUT_FILTER_DENORMALIZER_ALREADY_CALLED';
private ServiceLocator $inputFilterLocator;
diff --git a/api/src/Serializer/Denormalizer/MaterialItemDenormalizer.php b/api/src/Serializer/Denormalizer/MaterialItemDenormalizer.php
index 67cf6369d6..b8154e8b3d 100644
--- a/api/src/Serializer/Denormalizer/MaterialItemDenormalizer.php
+++ b/api/src/Serializer/Denormalizer/MaterialItemDenormalizer.php
@@ -18,7 +18,7 @@ class MaterialItemDenormalizer implements DenormalizerInterface, DenormalizerAwa
use DenormalizerAwareTrait;
use NoCachingSupportTrait;
- private const ALREADY_CALLED = 'MATERIAL_ITEM_DENORMALIZER_ALREADY_CALLED';
+ private const string ALREADY_CALLED = 'MATERIAL_ITEM_DENORMALIZER_ALREADY_CALLED';
public function __construct(public RequestStack $requestStack) {}
diff --git a/api/src/Serializer/Normalizer/CollectionItemsNormalizer.php b/api/src/Serializer/Normalizer/CollectionItemsNormalizer.php
index 88a5c89cc5..bab5ad2b60 100644
--- a/api/src/Serializer/Normalizer/CollectionItemsNormalizer.php
+++ b/api/src/Serializer/Normalizer/CollectionItemsNormalizer.php
@@ -10,11 +10,7 @@
* under the relation name `items` instead of `item`.
*/
class CollectionItemsNormalizer implements NormalizerInterface, NormalizerAwareInterface {
- private NormalizerInterface $decorated;
-
- public function __construct(NormalizerInterface $decorated) {
- $this->decorated = $decorated;
- }
+ public function __construct(private readonly NormalizerInterface $decorated) {}
public function supportsNormalization($data, $format = null, array $context = []): bool {
return $this->decorated->supportsNormalization($data, $format, $context);
diff --git a/api/src/Serializer/Normalizer/ContentTypeNormalizer.php b/api/src/Serializer/Normalizer/ContentTypeNormalizer.php
index 9e434022c2..7620f9bc8d 100644
--- a/api/src/Serializer/Normalizer/ContentTypeNormalizer.php
+++ b/api/src/Serializer/Normalizer/ContentTypeNormalizer.php
@@ -15,10 +15,10 @@
*/
class ContentTypeNormalizer implements NormalizerInterface, SerializerAwareInterface {
public function __construct(
- private NormalizerInterface $decorated,
- private UriTemplate $uriTemplate,
- private UriTemplateFactory $uriTemplateFactory,
- private IriConverterInterface $iriConverter,
+ private readonly NormalizerInterface $decorated,
+ private readonly UriTemplate $uriTemplate,
+ private readonly UriTemplateFactory $uriTemplateFactory,
+ private readonly IriConverterInterface $iriConverter,
) {}
public function supportsNormalization($data, $format = null, array $context = []): bool {
diff --git a/api/src/Serializer/Normalizer/Error/TranslationInfoOfConstraintViolation.php b/api/src/Serializer/Normalizer/Error/TranslationInfoOfConstraintViolation.php
index dcedc8f96d..d798f63f81 100644
--- a/api/src/Serializer/Normalizer/Error/TranslationInfoOfConstraintViolation.php
+++ b/api/src/Serializer/Normalizer/Error/TranslationInfoOfConstraintViolation.php
@@ -7,7 +7,7 @@
class TranslationInfoOfConstraintViolation {
public function extract(ConstraintViolationInterface $constraintViolation): TranslationInfo {
$constraint = $constraintViolation->getConstraint();
- $constraintClass = get_class($constraint);
+ $constraintClass = null !== $constraint ? $constraint::class : self::class;
$key = str_replace('\\', '.', $constraintClass);
$key = strtolower($key);
$paramsWithoutCurlyBraces = self::removeCurlyBraces($constraintViolation->getParameters());
diff --git a/api/src/Serializer/Normalizer/RelatedCollectionLinkNormalizer.php b/api/src/Serializer/Normalizer/RelatedCollectionLinkNormalizer.php
index 830f9f8e25..94309845b4 100644
--- a/api/src/Serializer/Normalizer/RelatedCollectionLinkNormalizer.php
+++ b/api/src/Serializer/Normalizer/RelatedCollectionLinkNormalizer.php
@@ -223,7 +223,7 @@ protected function getRelatedCollectionLinkAnnotation(string $className, string
$attributes = $method->getAttributes(RelatedCollectionLink::class);
return ($attributes[0] ?? null)?->newInstance();
- } catch (\ReflectionException $e) {
+ } catch (\ReflectionException) {
return null;
}
}
diff --git a/api/src/Serializer/Normalizer/UriTemplateNormalizer.php b/api/src/Serializer/Normalizer/UriTemplateNormalizer.php
index 0790886f28..abbaa5cd95 100644
--- a/api/src/Serializer/Normalizer/UriTemplateNormalizer.php
+++ b/api/src/Serializer/Normalizer/UriTemplateNormalizer.php
@@ -13,10 +13,10 @@
*/
class UriTemplateNormalizer implements NormalizerInterface {
public function __construct(
- private NormalizerInterface $decorated,
- private EnglishInflector $inflector,
- private UriTemplateFactory $uriTemplateFactory,
- private UrlGeneratorInterface $urlGenerator,
+ private readonly NormalizerInterface $decorated,
+ private readonly EnglishInflector $inflector,
+ private readonly UriTemplateFactory $uriTemplateFactory,
+ private readonly UrlGeneratorInterface $urlGenerator,
) {}
public function supportsNormalization($data, $format = null, array $context = []): bool {
diff --git a/api/src/Serializer/PreventAutomaticEmbeddingPropertyMetadataFactory.php b/api/src/Serializer/PreventAutomaticEmbeddingPropertyMetadataFactory.php
index affd0c9cfa..e639246c02 100644
--- a/api/src/Serializer/PreventAutomaticEmbeddingPropertyMetadataFactory.php
+++ b/api/src/Serializer/PreventAutomaticEmbeddingPropertyMetadataFactory.php
@@ -51,7 +51,7 @@
* 30, so this class should be assigned a priority of 29.
* https://github.com/api-platform/core/blob/main/src/Bridge/Symfony/Bundle/Resources/config/metadata/metadata.xml#L65
*/
-final class PreventAutomaticEmbeddingPropertyMetadataFactory implements PropertyMetadataFactoryInterface {
+final readonly class PreventAutomaticEmbeddingPropertyMetadataFactory implements PropertyMetadataFactoryInterface {
public function __construct(private PropertyMetadataFactoryInterface $decorated) {}
/**
diff --git a/api/src/Serializer/SerializerContextBuilder.php b/api/src/Serializer/SerializerContextBuilder.php
index 1d0c370f04..de43e42478 100644
--- a/api/src/Serializer/SerializerContextBuilder.php
+++ b/api/src/Serializer/SerializerContextBuilder.php
@@ -15,12 +15,8 @@
* settings such as groups are not, because the groups need to be taken into account when
* building the payload schemas for the API documentation.
*/
-final class SerializerContextBuilder implements SerializerContextBuilderInterface {
- private SerializerContextBuilderInterface $decorated;
-
- public function __construct(SerializerContextBuilderInterface $decorated) {
- $this->decorated = $decorated;
- }
+final readonly class SerializerContextBuilder implements SerializerContextBuilderInterface {
+ public function __construct(private SerializerContextBuilderInterface $decorated) {}
public function createFromRequest(Request $request, bool $normalization, ?array $extractedAttributes = null): array {
$context = $this->decorated->createFromRequest($request, $normalization, $extractedAttributes);
diff --git a/api/src/Service/ClaimInvitationService.php b/api/src/Service/ClaimInvitationService.php
index 3e4afa7eb5..536d9ecbdd 100644
--- a/api/src/Service/ClaimInvitationService.php
+++ b/api/src/Service/ClaimInvitationService.php
@@ -46,7 +46,7 @@ public function claimInvitations(User $user, string $email): void {
$invitation->user = $user;
$this->em->persist($invitation);
$this->em->flush();
- } catch (UniqueConstraintViolationException $e) {
+ } catch (UniqueConstraintViolationException) {
// Even though we already handle this case above, it could still happen due
// to race conditions. Just ignore it.
$this->em->clear();
diff --git a/api/src/Service/MailService.php b/api/src/Service/MailService.php
index dfaa8c0cff..35e14e259b 100644
--- a/api/src/Service/MailService.php
+++ b/api/src/Service/MailService.php
@@ -7,6 +7,7 @@
use App\Entity\Profile;
use App\Entity\User;
use Symfony\Bridge\Twig\Mime\TemplatedEmail;
+use Symfony\Bundle\SecurityBundle\Security;
use Symfony\Component\Mailer\Exception\TransportExceptionInterface;
use Symfony\Component\Mailer\MailerInterface;
use Symfony\Component\Mime\Address;
@@ -22,13 +23,19 @@ public function __construct(
private readonly Environment $twigEnironment,
private readonly string $frontendBaseUrl,
private readonly string $senderEmail,
- private readonly string $senderName = ''
+ private readonly string $senderName,
+ private readonly Security $security,
) {}
public function sendInviteToCampMail(User $byUser, Camp $camp, string $key, string $emailToInvite): void {
- $email = (new TemplatedEmail())
+ /** @var User $originator */
+ $originator = $this->security->getUser();
+ $originatorEmail = $originator->getEmail();
+ $originatorName = $originator->getDisplayName();
+ $email = new TemplatedEmail()
->from(new Address($this->senderEmail, $this->senderName))
->to(new Address($emailToInvite))
+ ->replyTo(new Address($originatorEmail, $originatorName))
->subject($this->translator->trans('inviteToCamp.subject', ['campTitle' => $camp->title], self::TRANSLATE_DOMAIN, $byUser->profile->language))
->htmlTemplate($this->getTemplate('emails/campCollaborationInvite.{language}.html.twig', $byUser))
->textTemplate($this->getTemplate('emails/campCollaborationInvite.{language}.text.twig', $byUser))
@@ -48,7 +55,7 @@ public function sendInviteToCampMail(User $byUser, Camp $camp, string $key, stri
}
public function sendUserActivationMail(User $user, string $key): void {
- $email = (new TemplatedEmail())
+ $email = new TemplatedEmail()
->from(new Address($this->senderEmail, $this->senderName))
->to(new Address($user->getEmail()))
->subject($this->translator->trans('userActivation.subject', [], self::TRANSLATE_DOMAIN, $user->profile->language))
@@ -68,7 +75,7 @@ public function sendUserActivationMail(User $user, string $key): void {
}
public function sendPasswordResetLink(User $user, ResetPassword $data): void {
- $email = (new TemplatedEmail())
+ $email = new TemplatedEmail()
->from(new Address($this->senderEmail, $this->senderName))
->to(new Address($user->getEmail()))
->subject($this->translator->trans('passwordReset.subject', [], self::TRANSLATE_DOMAIN, $user->profile->language))
@@ -88,7 +95,7 @@ public function sendPasswordResetLink(User $user, ResetPassword $data): void {
}
public function sendEmailVerificationMail(User $user, Profile $data): void {
- $email = (new TemplatedEmail())
+ $email = new TemplatedEmail()
->from(new Address($this->senderEmail, $this->senderName))
->to(new Address($data->untrustedEmail))
->subject($this->translator->trans('emailVerification.subject', [], self::TRANSLATE_DOMAIN, $user->profile->language))
diff --git a/api/src/State/ActivityCreateProcessor.php b/api/src/State/ActivityCreateProcessor.php
index 4906a9007c..703308895f 100644
--- a/api/src/State/ActivityCreateProcessor.php
+++ b/api/src/State/ActivityCreateProcessor.php
@@ -17,7 +17,7 @@
class ActivityCreateProcessor extends AbstractPersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private EntityManagerInterface $em
+ private readonly EntityManagerInterface $em
) {
parent::__construct($decorated);
}
@@ -25,6 +25,7 @@ public function __construct(
/**
* @param Activity $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): Activity {
// @phpstan-ignore nullsafe.neverNull
if (!isset($data->category?->rootContentNode)) {
@@ -38,7 +39,7 @@ public function onBefore($data, Operation $operation, array $uriVariables = [],
$data->camp = $data->category->camp;
$rootContentNodePrototype = $data->category->rootContentNode;
- if (isset($data->copyActivitySource)) {
+ if (null !== $data->copyActivitySource) {
// CopyActivity Source is set -> copy it's content (rootContentNode)
$rootContentNodePrototype = $data->copyActivitySource->rootContentNode;
}
diff --git a/api/src/State/ActivityRemoveProcessor.php b/api/src/State/ActivityRemoveProcessor.php
index b58ea1c405..3faa162bcc 100644
--- a/api/src/State/ActivityRemoveProcessor.php
+++ b/api/src/State/ActivityRemoveProcessor.php
@@ -15,7 +15,7 @@
class ActivityRemoveProcessor extends AbstractRemoveProcessor {
public function __construct(
ProcessorInterface $decorated,
- private EntityManagerInterface $em,
+ private readonly EntityManagerInterface $em,
) {
parent::__construct($decorated);
}
diff --git a/api/src/State/CampCollaborationCreateProcessor.php b/api/src/State/CampCollaborationCreateProcessor.php
index 172f0a9176..66bd4ef8e3 100644
--- a/api/src/State/CampCollaborationCreateProcessor.php
+++ b/api/src/State/CampCollaborationCreateProcessor.php
@@ -36,6 +36,7 @@ public function __construct(
/**
* @param CampCollaboration $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): CampCollaboration {
/** @var CampCollaboration $data */
$inviteEmail = $data->user?->getEmail() ?? $data->inviteEmail;
diff --git a/api/src/State/CampCollaborationResendInvitationProcessor.php b/api/src/State/CampCollaborationResendInvitationProcessor.php
index bd9d259042..14043e800d 100644
--- a/api/src/State/CampCollaborationResendInvitationProcessor.php
+++ b/api/src/State/CampCollaborationResendInvitationProcessor.php
@@ -29,6 +29,7 @@ public function __construct(
/**
* @param CampCollaboration $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): CampCollaboration {
if (CampCollaboration::STATUS_INVITED == $data->status && $data->getEmail()) {
$data->inviteKey = IdGenerator::generateRandomHexString(64);
diff --git a/api/src/State/CampCollaborationUpdateProcessor.php b/api/src/State/CampCollaborationUpdateProcessor.php
index 6c185be03f..d771fecc44 100644
--- a/api/src/State/CampCollaborationUpdateProcessor.php
+++ b/api/src/State/CampCollaborationUpdateProcessor.php
@@ -27,13 +27,13 @@ public function __construct(
) {
$statusChangeListener = PropertyChangeListener::of(
extractProperty: fn (CampCollaboration $data) => $data->status,
- beforeAction: fn (CampCollaboration $data) => $this->onBeforeStatusChange($data),
- afterAction: fn (CampCollaboration $data) => $this->onAfterStatusChange($data)
+ beforeAction: $this->onBeforeStatusChange(...),
+ afterAction: $this->onAfterStatusChange(...)
);
$roleChangeListener = PropertyChangeListener::of(
extractProperty: fn (CampCollaboration $data) => $data->role,
- beforeAction: fn (CampCollaboration $data, CampCollaboration $previous) => $this->onBeforeRoleChange($data, $previous),
+ beforeAction: $this->onBeforeRoleChange(...),
);
parent::__construct(
diff --git a/api/src/State/CampCreateProcessor.php b/api/src/State/CampCreateProcessor.php
index 10dd6462e4..1f6ff9dabe 100644
--- a/api/src/State/CampCreateProcessor.php
+++ b/api/src/State/CampCreateProcessor.php
@@ -20,8 +20,8 @@
class CampCreateProcessor extends AbstractPersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private Security $security,
- private EntityManagerInterface $em
+ private readonly Security $security,
+ private readonly EntityManagerInterface $em
) {
parent::__construct($decorated);
}
@@ -29,6 +29,7 @@ public function __construct(
/**
* @param Camp $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): BaseEntity {
/** @var User $user */
$user = $this->security->getUser();
diff --git a/api/src/State/CampRemoveProcessor.php b/api/src/State/CampRemoveProcessor.php
index 18456b8fdb..2dcfe4be89 100644
--- a/api/src/State/CampRemoveProcessor.php
+++ b/api/src/State/CampRemoveProcessor.php
@@ -14,7 +14,7 @@
class CampRemoveProcessor extends AbstractRemoveProcessor {
public function __construct(
ProcessorInterface $decorated,
- private EntityManagerInterface $em,
+ private readonly EntityManagerInterface $em,
) {
parent::__construct($decorated);
}
diff --git a/api/src/State/CampUpdateProcessor.php b/api/src/State/CampUpdateProcessor.php
index c1f171df67..7f0fd119ac 100644
--- a/api/src/State/CampUpdateProcessor.php
+++ b/api/src/State/CampUpdateProcessor.php
@@ -16,11 +16,11 @@
class CampUpdateProcessor extends AbstractPersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private Security $security,
+ private readonly Security $security,
) {
$sharingChangeListener = PropertyChangeListener::of(
extractProperty: fn (Camp $data) => $data->isShared,
- beforeAction: fn (Camp $data) => $this->onBeforeSharingStatusChange($data),
+ beforeAction: $this->onBeforeSharingStatusChange(...),
);
parent::__construct(
diff --git a/api/src/State/CategoryCreateProcessor.php b/api/src/State/CategoryCreateProcessor.php
index 60e3edbc84..54d1013d76 100644
--- a/api/src/State/CategoryCreateProcessor.php
+++ b/api/src/State/CategoryCreateProcessor.php
@@ -17,7 +17,7 @@
class CategoryCreateProcessor extends AbstractPersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private EntityManagerInterface $em,
+ private readonly EntityManagerInterface $em,
) {
parent::__construct($decorated);
}
@@ -25,6 +25,7 @@ public function __construct(
/**
* @param Category $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): Category {
// TODO implement actual prototype cloning and strategy classes, this is just a dummy implementation to
// fill the non-nullable field for Doctrine
@@ -36,7 +37,7 @@ public function onBefore($data, Operation $operation, array $uriVariables = [],
$rootContentNode->data = ['columns' => [['slot' => '1', 'width' => 12]]];
$data->setRootContentNode($rootContentNode);
- if (isset($data->copyCategorySource)) {
+ if (null !== $data->copyCategorySource) {
// CopyActivity Source is set -> copy it's content (rootContentNode)
$entityMap = new EntityMap($data->camp);
$rootContentNode->copyFromPrototype($data->copyCategorySource->getRootContentNode(), $entityMap);
diff --git a/api/src/State/CategoryRemoveProcessor.php b/api/src/State/CategoryRemoveProcessor.php
index 49fc4d26f7..102149395f 100644
--- a/api/src/State/CategoryRemoveProcessor.php
+++ b/api/src/State/CategoryRemoveProcessor.php
@@ -14,7 +14,7 @@
class CategoryRemoveProcessor extends AbstractRemoveProcessor {
public function __construct(
ProcessorInterface $decorated,
- private EntityManagerInterface $em,
+ private readonly EntityManagerInterface $em,
) {
parent::__construct($decorated);
}
diff --git a/api/src/State/ChecklistCreateProcessor.php b/api/src/State/ChecklistCreateProcessor.php
index 0e477ab22f..ac94d46830 100644
--- a/api/src/State/ChecklistCreateProcessor.php
+++ b/api/src/State/ChecklistCreateProcessor.php
@@ -19,8 +19,9 @@ public function __construct(ProcessorInterface $decorated) {
/**
* @param Checklist $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): Checklist {
- if (isset($data->copyChecklistSource)) {
+ if (null !== $data->copyChecklistSource) {
// CopyChecklist Source is set -> copy it's content
$entityMap = new EntityMap($data->camp);
$data->copyFromPrototype($data->copyChecklistSource, $entityMap);
diff --git a/api/src/State/ChecklistItemCollectionProvider.php b/api/src/State/ChecklistItemCollectionProvider.php
index 72d3b58732..c244e758d7 100644
--- a/api/src/State/ChecklistItemCollectionProvider.php
+++ b/api/src/State/ChecklistItemCollectionProvider.php
@@ -13,8 +13,8 @@
*/
class ChecklistItemCollectionProvider implements ProviderInterface {
public function __construct(
- private ProviderInterface $decorated,
- private RequestStack $requestStack
+ private readonly ProviderInterface $decorated,
+ private readonly RequestStack $requestStack
) {}
public function provide(Operation $operation, array $uriVariables = [], array $context = []): array|object|null {
diff --git a/api/src/State/CommentCreateProcessor.php b/api/src/State/CommentCreateProcessor.php
index cb0fc3273a..8cfb7c50b2 100644
--- a/api/src/State/CommentCreateProcessor.php
+++ b/api/src/State/CommentCreateProcessor.php
@@ -13,16 +13,14 @@
* @template-extends AbstractPersistProcessor
*/
class CommentCreateProcessor extends AbstractPersistProcessor {
- private Security $security;
-
- public function __construct(ProcessorInterface $decorated, Security $security) {
+ public function __construct(ProcessorInterface $decorated, private readonly Security $security) {
parent::__construct($decorated);
- $this->security = $security;
}
/**
* @param Comment $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): Comment {
/** @var User $user */
$user = $this->security->getUser();
diff --git a/api/src/State/ContentNode/ChecklistNodePersistProcessor.php b/api/src/State/ContentNode/ChecklistNodePersistProcessor.php
index bdbe6a9f34..fd8b10e95e 100644
--- a/api/src/State/ContentNode/ChecklistNodePersistProcessor.php
+++ b/api/src/State/ContentNode/ChecklistNodePersistProcessor.php
@@ -13,11 +13,12 @@
class ChecklistNodePersistProcessor extends ContentNodePersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private ChecklistItemRepository $checklistItemRepository,
+ private readonly ChecklistItemRepository $checklistItemRepository,
) {
parent::__construct($decorated);
}
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): ChecklistNode {
/** @var ChecklistNode $data */
$data = parent::onBefore($data, $operation, $uriVariables, $context);
diff --git a/api/src/State/ContentNode/ContentNodePersistProcessor.php b/api/src/State/ContentNode/ContentNodePersistProcessor.php
index c4bdba5c2c..4308e12164 100644
--- a/api/src/State/ContentNode/ContentNodePersistProcessor.php
+++ b/api/src/State/ContentNode/ContentNodePersistProcessor.php
@@ -16,6 +16,7 @@ class ContentNodePersistProcessor extends AbstractPersistProcessor {
/**
* @param T $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): ContentNode {
/** @var ContentNode $data */
$data = parent::onBefore($data, $operation, $uriVariables, $context);
diff --git a/api/src/State/ContentNode/MultiSelectCreateProcessor.php b/api/src/State/ContentNode/MultiSelectCreateProcessor.php
index 4fde653b32..9e7dd993f5 100644
--- a/api/src/State/ContentNode/MultiSelectCreateProcessor.php
+++ b/api/src/State/ContentNode/MultiSelectCreateProcessor.php
@@ -12,6 +12,7 @@ class MultiSelectCreateProcessor extends ContentNodePersistProcessor {
/**
* @param MultiSelect $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): MultiSelect {
$data = parent::onBefore($data, $operation, $uriVariables, $context);
diff --git a/api/src/State/ContentNode/SingleTextPersistProcessor.php b/api/src/State/ContentNode/SingleTextPersistProcessor.php
index 48327d2821..874d9322ab 100644
--- a/api/src/State/ContentNode/SingleTextPersistProcessor.php
+++ b/api/src/State/ContentNode/SingleTextPersistProcessor.php
@@ -13,7 +13,7 @@
class SingleTextPersistProcessor extends ContentNodePersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private CleanHTMLFilter $cleanHTMLFilter,
+ private readonly CleanHTMLFilter $cleanHTMLFilter,
) {
parent::__construct($decorated);
}
@@ -21,6 +21,7 @@ public function __construct(
/**
* @param SingleText $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): SingleText {
$data = parent::onBefore($data, $operation, $uriVariables, $context);
diff --git a/api/src/State/ContentNode/StoryboardPersistProcessor.php b/api/src/State/ContentNode/StoryboardPersistProcessor.php
index 23079f61f6..c6f1378eaf 100644
--- a/api/src/State/ContentNode/StoryboardPersistProcessor.php
+++ b/api/src/State/ContentNode/StoryboardPersistProcessor.php
@@ -16,8 +16,8 @@
class StoryboardPersistProcessor extends ContentNodePersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private CleanHTMLFilter $cleanHTMLFilter,
- private CleanTextFilter $cleanTextFilter
+ private readonly CleanHTMLFilter $cleanHTMLFilter,
+ private readonly CleanTextFilter $cleanTextFilter
) {
parent::__construct($decorated);
}
@@ -25,6 +25,7 @@ public function __construct(
/**
* @param Storyboard $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): Storyboard {
$data = parent::onBefore($data, $operation, $uriVariables, $context);
diff --git a/api/src/State/ContentNodeCollectionProvider.php b/api/src/State/ContentNodeCollectionProvider.php
index 77bdbd1982..b17f616f7d 100644
--- a/api/src/State/ContentNodeCollectionProvider.php
+++ b/api/src/State/ContentNodeCollectionProvider.php
@@ -13,8 +13,8 @@
*/
class ContentNodeCollectionProvider implements ProviderInterface {
public function __construct(
- private ProviderInterface $decorated,
- private RequestStack $requestStack
+ private readonly ProviderInterface $decorated,
+ private readonly RequestStack $requestStack
) {}
public function provide(Operation $operation, array $uriVariables = [], array $context = []): array|object|null {
diff --git a/api/src/State/InvitationAcceptProcessor.php b/api/src/State/InvitationAcceptProcessor.php
index acd58a9609..c350fa4162 100644
--- a/api/src/State/InvitationAcceptProcessor.php
+++ b/api/src/State/InvitationAcceptProcessor.php
@@ -16,10 +16,10 @@
*/
class InvitationAcceptProcessor implements ProcessorInterface {
public function __construct(
- private PasswordHasherFactoryInterface $passwordHasherFactory,
- private CampCollaborationRepository $campCollaborationRepository,
- private Security $security,
- private EntityManagerInterface $em,
+ private readonly PasswordHasherFactoryInterface $passwordHasherFactory,
+ private readonly CampCollaborationRepository $campCollaborationRepository,
+ private readonly Security $security,
+ private readonly EntityManagerInterface $em,
) {}
/**
diff --git a/api/src/State/InvitationProvider.php b/api/src/State/InvitationProvider.php
index 2179822493..5dece415d6 100644
--- a/api/src/State/InvitationProvider.php
+++ b/api/src/State/InvitationProvider.php
@@ -18,10 +18,10 @@
*/
class InvitationProvider implements ProviderInterface {
public function __construct(
- private Security $security,
- private PasswordHasherFactoryInterface $passwordHasherFactory,
- private UserRepository $userRepository,
- private CampCollaborationRepository $campCollaborationRepository
+ private readonly Security $security,
+ private readonly PasswordHasherFactoryInterface $passwordHasherFactory,
+ private readonly UserRepository $userRepository,
+ private readonly CampCollaborationRepository $campCollaborationRepository
) {}
/**
diff --git a/api/src/State/InvitationRejectProcessor.php b/api/src/State/InvitationRejectProcessor.php
index acd65a2acd..bd94040c31 100644
--- a/api/src/State/InvitationRejectProcessor.php
+++ b/api/src/State/InvitationRejectProcessor.php
@@ -15,9 +15,9 @@
*/
class InvitationRejectProcessor implements ProcessorInterface {
public function __construct(
- private PasswordHasherFactoryInterface $passwordHasherFactory,
- private CampCollaborationRepository $campCollaborationRepository,
- private EntityManagerInterface $em,
+ private readonly PasswordHasherFactoryInterface $passwordHasherFactory,
+ private readonly CampCollaborationRepository $campCollaborationRepository,
+ private readonly EntityManagerInterface $em,
) {}
/**
diff --git a/api/src/State/MaterialItemCollectionProvider.php b/api/src/State/MaterialItemCollectionProvider.php
index e30c93bbb7..3927e9f592 100644
--- a/api/src/State/MaterialItemCollectionProvider.php
+++ b/api/src/State/MaterialItemCollectionProvider.php
@@ -13,8 +13,8 @@
*/
class MaterialItemCollectionProvider implements ProviderInterface {
public function __construct(
- private ProviderInterface $decorated,
- private RequestStack $requestStack
+ private readonly ProviderInterface $decorated,
+ private readonly RequestStack $requestStack
) {}
public function provide(Operation $operation, array $uriVariables = [], array $context = []): array|object|null {
diff --git a/api/src/State/MaterialItemCreateProcessor.php b/api/src/State/MaterialItemCreateProcessor.php
index c77fa47dcd..6401576e90 100644
--- a/api/src/State/MaterialItemCreateProcessor.php
+++ b/api/src/State/MaterialItemCreateProcessor.php
@@ -18,6 +18,7 @@ public function __construct(ProcessorInterface $decorated) {
/**
* @param MaterialItem $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): MaterialItem {
$data->camp = $data->getCamp();
diff --git a/api/src/State/PeriodPersistProcessor.php b/api/src/State/PeriodPersistProcessor.php
index 632b30ba02..d0877e8034 100644
--- a/api/src/State/PeriodPersistProcessor.php
+++ b/api/src/State/PeriodPersistProcessor.php
@@ -22,6 +22,7 @@ public function __construct(
/**
* @param Period $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): Period {
self::moveDaysAndScheduleEntries($data, $context['previous_data'] ?? null);
self::removeExtraDays($data);
diff --git a/api/src/State/PersonalInvitationProvider.php b/api/src/State/PersonalInvitationProvider.php
index ce62da2af1..61f316f30b 100644
--- a/api/src/State/PersonalInvitationProvider.php
+++ b/api/src/State/PersonalInvitationProvider.php
@@ -50,9 +50,7 @@ private function provideCollection(): array {
}
$campCollaborations = $this->campCollaborationRepository->findAllByPersonallyInvitedUser($user);
- return array_map(function (CampCollaboration $campCollaboration) {
- return $this->toInvitation($campCollaboration);
- }, $campCollaborations);
+ return array_map($this->toInvitation(...), $campCollaborations);
}
/**
diff --git a/api/src/State/ProfileUpdateProcessor.php b/api/src/State/ProfileUpdateProcessor.php
index a3360c32c8..a39ea99822 100644
--- a/api/src/State/ProfileUpdateProcessor.php
+++ b/api/src/State/ProfileUpdateProcessor.php
@@ -27,8 +27,8 @@ class ProfileUpdateProcessor extends AbstractPersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private PasswordHasherFactoryInterface $pwHasherFactory,
- private MailService $mailService,
+ private readonly PasswordHasherFactoryInterface $pwHasherFactory,
+ private readonly MailService $mailService,
private readonly Security $security,
private readonly UserRepository $userRepository,
private readonly ClaimInvitationService $claimInvitationService,
@@ -39,6 +39,7 @@ public function __construct(
/**
* @param Profile $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): Profile {
$this->emailAddressVerificationPerformed = false;
diff --git a/api/src/State/ResetPasswordCreateProcessor.php b/api/src/State/ResetPasswordCreateProcessor.php
index ffabb57e39..38f865ca7a 100644
--- a/api/src/State/ResetPasswordCreateProcessor.php
+++ b/api/src/State/ResetPasswordCreateProcessor.php
@@ -19,11 +19,11 @@
*/
class ResetPasswordCreateProcessor implements ProcessorInterface {
public function __construct(
- private ReCaptchaWrapper $reCaptcha,
- private EntityManagerInterface $em,
- private UserRepository $userRepository,
- private PasswordHasherFactoryInterface $pwHasherFactory,
- private MailService $mailService
+ private readonly ReCaptchaWrapper $reCaptcha,
+ private readonly EntityManagerInterface $em,
+ private readonly UserRepository $userRepository,
+ private readonly PasswordHasherFactoryInterface $pwHasherFactory,
+ private readonly MailService $mailService
) {}
/**
diff --git a/api/src/State/ResetPasswordProvider.php b/api/src/State/ResetPasswordProvider.php
index 44b0d73381..0f699905f4 100644
--- a/api/src/State/ResetPasswordProvider.php
+++ b/api/src/State/ResetPasswordProvider.php
@@ -14,8 +14,8 @@
*/
class ResetPasswordProvider implements ProviderInterface {
public function __construct(
- private UserRepository $userRepository,
- private PasswordHasherFactoryInterface $pwHasherFactory,
+ private readonly UserRepository $userRepository,
+ private readonly PasswordHasherFactoryInterface $pwHasherFactory,
) {}
public function provide(Operation $operation, array $uriVariables = [], array $context = []): ?ResetPassword {
diff --git a/api/src/State/ResetPasswordUpdateProcessor.php b/api/src/State/ResetPasswordUpdateProcessor.php
index 147148a70f..fca4bf9595 100644
--- a/api/src/State/ResetPasswordUpdateProcessor.php
+++ b/api/src/State/ResetPasswordUpdateProcessor.php
@@ -18,10 +18,10 @@
*/
class ResetPasswordUpdateProcessor implements ProcessorInterface {
public function __construct(
- private ReCaptchaWrapper $reCaptcha,
- private EntityManagerInterface $em,
- private UserRepository $userRepository,
- private PasswordHasherFactoryInterface $pwHasherFactory,
+ private readonly ReCaptchaWrapper $reCaptcha,
+ private readonly EntityManagerInterface $em,
+ private readonly UserRepository $userRepository,
+ private readonly PasswordHasherFactoryInterface $pwHasherFactory,
) {}
/**
diff --git a/api/src/State/UserActivateProcessor.php b/api/src/State/UserActivateProcessor.php
index 0777a4026b..0d32a3b918 100644
--- a/api/src/State/UserActivateProcessor.php
+++ b/api/src/State/UserActivateProcessor.php
@@ -23,6 +23,7 @@ public function __construct(
/**
* @param User $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): User {
if ($data->activationKeyHash === md5($data->activationKey)) {
$data->state = User::STATE_ACTIVATED;
diff --git a/api/src/State/UserCreateProcessor.php b/api/src/State/UserCreateProcessor.php
index 7db9ea572f..262ef6f83e 100644
--- a/api/src/State/UserCreateProcessor.php
+++ b/api/src/State/UserCreateProcessor.php
@@ -18,9 +18,9 @@
class UserCreateProcessor extends AbstractPersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private ReCaptchaWrapper $reCaptcha,
- private UserPasswordHasherInterface $userPasswordHasher,
- private MailService $mailService
+ private readonly ReCaptchaWrapper $reCaptcha,
+ private readonly UserPasswordHasherInterface $userPasswordHasher,
+ private readonly MailService $mailService
) {
parent::__construct($decorated);
}
@@ -28,6 +28,7 @@ public function __construct(
/**
* @param User $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): User {
$resp = $this->reCaptcha->verify($data->recaptchaToken);
if (!$resp->isSuccess()) {
diff --git a/api/src/State/UserUpdateProcessor.php b/api/src/State/UserUpdateProcessor.php
index 41361c6b62..d4da84bee7 100644
--- a/api/src/State/UserUpdateProcessor.php
+++ b/api/src/State/UserUpdateProcessor.php
@@ -14,7 +14,7 @@
class UserUpdateProcessor extends AbstractPersistProcessor {
public function __construct(
ProcessorInterface $decorated,
- private UserPasswordHasherInterface $userPasswordHasher
+ private readonly UserPasswordHasherInterface $userPasswordHasher
) {
parent::__construct($decorated);
}
@@ -22,6 +22,7 @@ public function __construct(
/**
* @param User $data
*/
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []): User {
if ($data->plainPassword) {
$data->password = $this->userPasswordHasher->hashPassword($data, $data->plainPassword);
diff --git a/api/src/State/Util/AbstractPersistProcessor.php b/api/src/State/Util/AbstractPersistProcessor.php
index ba0e70feed..68a809f6c7 100644
--- a/api/src/State/Util/AbstractPersistProcessor.php
+++ b/api/src/State/Util/AbstractPersistProcessor.php
@@ -15,8 +15,8 @@ abstract class AbstractPersistProcessor implements ProcessorInterface {
* @param PropertyChangeListener[] $propertyChangeListeners
*/
public function __construct(
- private ProcessorInterface $decorated,
- private array $propertyChangeListeners = []
+ private readonly ProcessorInterface $decorated,
+ private readonly array $propertyChangeListeners = []
) {
foreach ($propertyChangeListeners as $listener) {
if (!$listener instanceof PropertyChangeListener) {
diff --git a/api/src/State/Util/AbstractRemoveProcessor.php b/api/src/State/Util/AbstractRemoveProcessor.php
index 4fbe692625..a443023efb 100644
--- a/api/src/State/Util/AbstractRemoveProcessor.php
+++ b/api/src/State/Util/AbstractRemoveProcessor.php
@@ -12,7 +12,7 @@
*/
abstract class AbstractRemoveProcessor implements ProcessorInterface {
public function __construct(
- private ProcessorInterface $decorated,
+ private readonly ProcessorInterface $decorated,
) {}
public function process(mixed $data, Operation $operation, array $uriVariables = [], array $context = []): void {
diff --git a/api/src/State/Util/PropertyChangeListener.php b/api/src/State/Util/PropertyChangeListener.php
index 702dd0a0d0..b0c6895e58 100644
--- a/api/src/State/Util/PropertyChangeListener.php
+++ b/api/src/State/Util/PropertyChangeListener.php
@@ -4,9 +4,9 @@
class PropertyChangeListener {
private function __construct(
- private \Closure $extractProperty,
- private \Closure $beforeAction,
- private \Closure $afterAction
+ private readonly \Closure $extractProperty,
+ private readonly \Closure $beforeAction,
+ private readonly \Closure $afterAction
) {}
/**
diff --git a/api/src/Types/Doctrine/UTCDateTimeType.php b/api/src/Types/Doctrine/UTCDateTimeType.php
index f7fbe7a38f..6db0ec507d 100644
--- a/api/src/Types/Doctrine/UTCDateTimeType.php
+++ b/api/src/Types/Doctrine/UTCDateTimeType.php
@@ -34,6 +34,7 @@ class UTCDateTimeType extends DateTimeType {
*
* @template T
*/
+ #[\Override]
public function convertToDatabaseValue(mixed $value, AbstractPlatform $platform): ?string {
if (null === $value) {
return null;
@@ -43,7 +44,7 @@ public function convertToDatabaseValue(mixed $value, AbstractPlatform $platform)
$value = $value->setTimeZone(self::getUtc());
if ($value instanceof \DateTimeImmutable) {
- return (new DateTimeImmutableType())->convertToDatabaseValue($value, $platform);
+ return new DateTimeImmutableType()->convertToDatabaseValue($value, $platform);
}
return parent::convertToDatabaseValue($value, $platform);
@@ -67,6 +68,7 @@ public function convertToDatabaseValue(mixed $value, AbstractPlatform $platform)
*
* @template T
*/
+ #[\Override]
public function convertToPHPValue(mixed $value, AbstractPlatform $platform): ?\DateTime {
if (null === $value || $value instanceof \DateTime) {
return $value;
diff --git a/api/src/Types/Doctrine/UTCDateType.php b/api/src/Types/Doctrine/UTCDateType.php
index a3b6054ccd..6b686ac778 100644
--- a/api/src/Types/Doctrine/UTCDateType.php
+++ b/api/src/Types/Doctrine/UTCDateType.php
@@ -20,13 +20,14 @@ class UTCDateType extends DateType {
*
* @template T
*/
+ #[\Override]
public function convertToDatabaseValue(mixed $value, AbstractPlatform $platform): ?string {
if ($value instanceof \DateTime || $value instanceof \DateTimeImmutable) {
$value = $value->setTimezone(self::getUtc());
}
if ($value instanceof \DateTimeImmutable) {
- return (new DateImmutableType())->convertToDatabaseValue($value, $platform);
+ return new DateImmutableType()->convertToDatabaseValue($value, $platform);
}
return parent::convertToDatabaseValue($value, $platform);
@@ -43,6 +44,7 @@ public function convertToDatabaseValue(mixed $value, AbstractPlatform $platform)
*
* @template T
*/
+ #[\Override]
public function convertToPHPValue(mixed $value, AbstractPlatform $platform): ?\DateTime {
if (null === $value || $value instanceof \DateTime) {
return $value;
diff --git a/api/src/Util/ArrayDeepSort.php b/api/src/Util/ArrayDeepSort.php
index 4549a66e97..9397004e4a 100644
--- a/api/src/Util/ArrayDeepSort.php
+++ b/api/src/Util/ArrayDeepSort.php
@@ -18,7 +18,7 @@ public static function sort(mixed $input): mixed {
if (!is_array($input)) {
return $input;
}
- $sorted_children = array_map([ArrayDeepSort::class, 'sort'], $input);
+ $sorted_children = array_map(ArrayDeepSort::sort(...), $input);
if (array_is_list($sorted_children)) {
uasort($sorted_children, function ($a, $b) {
diff --git a/api/src/Util/CamelPascalNamingStrategy.php b/api/src/Util/CamelPascalNamingStrategy.php
index 2d103e8527..2c7d9e58cb 100644
--- a/api/src/Util/CamelPascalNamingStrategy.php
+++ b/api/src/Util/CamelPascalNamingStrategy.php
@@ -11,6 +11,7 @@ class CamelPascalNamingStrategy extends DefaultNamingStrategy {
*
* @param string $className the fully-qualified class name
*/
+ #[\Override]
public function classToTableName($className): string {
return $this->classToSnakeCase($className);
}
@@ -23,6 +24,7 @@ public function classToTableName($className): string {
* @param null|string $className
* @param null|string $embeddedClassName
*/
+ #[\Override]
public function embeddedFieldToColumnName($propertyName, $embeddedColumnName, $className = null, $embeddedClassName = null): string {
return $propertyName.ucfirst($embeddedColumnName);
}
@@ -33,6 +35,7 @@ public function embeddedFieldToColumnName($propertyName, $embeddedColumnName, $c
* @param string $propertyName a property name
* @param null|mixed $className
*/
+ #[\Override]
public function joinColumnName($propertyName, $className = null): string {
return $propertyName.ucfirst($this->referenceColumnName());
}
@@ -43,6 +46,7 @@ public function joinColumnName($propertyName, $className = null): string {
* @param string $entityName an entity
* @param null|string $referencedColumnName a property
*/
+ #[\Override]
public function joinKeyColumnName($entityName, $referencedColumnName = null): string {
return $this->classToCamelCase($entityName)
.ucfirst($referencedColumnName ?: $this->referenceColumnName());
@@ -55,7 +59,7 @@ public function joinKeyColumnName($entityName, $referencedColumnName = null): st
* @param string $className
*/
private function unqualifiedClassName($className): string {
- if (false !== strpos($className, '\\')) {
+ if (str_contains($className, '\\')) {
return substr($className, strrpos($className, '\\') + 1);
}
diff --git a/api/src/Validator/AllowTransition/AssertAllowTransitionsValidator.php b/api/src/Validator/AllowTransition/AssertAllowTransitionsValidator.php
index c9c06dbbf0..7c6e8bb9e7 100644
--- a/api/src/Validator/AllowTransition/AssertAllowTransitionsValidator.php
+++ b/api/src/Validator/AllowTransition/AssertAllowTransitionsValidator.php
@@ -29,7 +29,7 @@ public function validate($value, Constraint $constraint): void {
$allFrom = $transitions->map(fn (array $elem) => $elem['from'])->toArray();
$allTo = $transitions->map(fn (array $elem) => $elem['to'])->toArray();
$allTo = array_merge(...array_values($allTo));
- if (!(new ArrayCollection($allTo))->forAll(fn ($_, $to) => in_array($to, $allFrom, true))) {
+ if (!new ArrayCollection($allTo)->forAll(fn ($_, $to) => in_array($to, $allFrom, true))) {
throw new InvalidArgumentException('All to must appear in a from again');
}
diff --git a/api/src/Validator/AssertBelongsToSameCamp.php b/api/src/Validator/AssertBelongsToSameCamp.php
index d8021caa8e..ca9063cace 100644
--- a/api/src/Validator/AssertBelongsToSameCamp.php
+++ b/api/src/Validator/AssertBelongsToSameCamp.php
@@ -7,17 +7,15 @@
#[\Attribute]
class AssertBelongsToSameCamp extends Constraint {
public string $message = 'Must belong to the same camp.';
- public bool $compareToPrevious = false;
/**
* AssertBelongsToSameCamp constructor.
*
* @param bool $compareToPrevious in case the camp getter considers the annotated property, use this option (only when updating)
*/
- public function __construct(?array $options = null, bool $compareToPrevious = false, ?string $message = null, ?array $groups = null, mixed $payload = null) {
+ public function __construct(?array $options = null, public bool $compareToPrevious = false, ?string $message = null, ?array $groups = null, mixed $payload = null) {
parent::__construct($options ?? [], $groups, $payload);
$this->message = $message ?? $this->message;
- $this->compareToPrevious = $compareToPrevious;
}
}
diff --git a/api/src/Validator/AssertLastCollectionItemIsNotDeletedValidator.php b/api/src/Validator/AssertLastCollectionItemIsNotDeletedValidator.php
index 5c430efab5..f2ddddbb91 100644
--- a/api/src/Validator/AssertLastCollectionItemIsNotDeletedValidator.php
+++ b/api/src/Validator/AssertLastCollectionItemIsNotDeletedValidator.php
@@ -12,8 +12,8 @@
class AssertLastCollectionItemIsNotDeletedValidator extends ConstraintValidator {
public function __construct(
- private RequestStack $requestStack,
- private EntityManagerInterface $em
+ private readonly RequestStack $requestStack,
+ private readonly EntityManagerInterface $em
) {}
public function validate(mixed $value, Constraint $constraint): void {
diff --git a/api/src/Validator/ColumnLayout/AssertColumWidthsSumTo12Validator.php b/api/src/Validator/ColumnLayout/AssertColumWidthsSumTo12Validator.php
index 873e06afe2..4c95ed1f89 100644
--- a/api/src/Validator/ColumnLayout/AssertColumWidthsSumTo12Validator.php
+++ b/api/src/Validator/ColumnLayout/AssertColumWidthsSumTo12Validator.php
@@ -17,11 +17,7 @@ public function validate($value, Constraint $constraint): void {
}
$columnWidths = array_sum(array_map(function ($col) {
- if (isset($col['width'])) {
- return $col['width'];
- }
-
- return 0;
+ return $col['width'] ?? 0;
}, $value['columns']));
if (12 !== $columnWidths) {
diff --git a/api/src/Validator/ColumnLayout/AssertNoOrphanChildrenValidator.php b/api/src/Validator/ColumnLayout/AssertNoOrphanChildrenValidator.php
index 97429936e7..66ee3e112b 100644
--- a/api/src/Validator/ColumnLayout/AssertNoOrphanChildrenValidator.php
+++ b/api/src/Validator/ColumnLayout/AssertNoOrphanChildrenValidator.php
@@ -36,11 +36,7 @@ public function validate($value, Constraint $constraint): void {
}
$slots = array_map(function ($col) {
- if (isset($col['slot'])) {
- return $col['slot'];
- }
-
- return null;
+ return $col['slot'] ?? null;
}, $array);
$childSlots = $layout->children->map(function (ContentNode $child) {
diff --git a/api/src/Validator/Period/AssertGreaterThanOrEqualToLastScheduleEntryEndValidator.php b/api/src/Validator/Period/AssertGreaterThanOrEqualToLastScheduleEntryEndValidator.php
index 77192aa3e0..c5311c914d 100644
--- a/api/src/Validator/Period/AssertGreaterThanOrEqualToLastScheduleEntryEndValidator.php
+++ b/api/src/Validator/Period/AssertGreaterThanOrEqualToLastScheduleEntryEndValidator.php
@@ -10,7 +10,7 @@
use Symfony\Component\Validator\Exception\UnexpectedValueException;
class AssertGreaterThanOrEqualToLastScheduleEntryEndValidator extends ConstraintValidator {
- public function __construct(private EntityManagerInterface $em) {}
+ public function __construct(private readonly EntityManagerInterface $em) {}
public function validate($value, Constraint $constraint): void {
if (!$constraint instanceof AssertGreaterThanOrEqualToLastScheduleEntryEnd) {
diff --git a/api/src/Validator/Period/AssertLessThanOrEqualToEarliestScheduleEntryStartValidator.php b/api/src/Validator/Period/AssertLessThanOrEqualToEarliestScheduleEntryStartValidator.php
index 010350087a..e567a9b85e 100644
--- a/api/src/Validator/Period/AssertLessThanOrEqualToEarliestScheduleEntryStartValidator.php
+++ b/api/src/Validator/Period/AssertLessThanOrEqualToEarliestScheduleEntryStartValidator.php
@@ -10,7 +10,7 @@
use Symfony\Component\Validator\Exception\UnexpectedValueException;
class AssertLessThanOrEqualToEarliestScheduleEntryStartValidator extends ConstraintValidator {
- public function __construct(private EntityManagerInterface $em) {}
+ public function __construct(private readonly EntityManagerInterface $em) {}
public function validate($value, Constraint $constraint): void {
if (!$constraint instanceof AssertLessThanOrEqualToEarliestScheduleEntryStart) {
diff --git a/api/src/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidator.php b/api/src/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidator.php
index 66fe27c417..f4a59ca800 100644
--- a/api/src/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidator.php
+++ b/api/src/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidator.php
@@ -34,7 +34,7 @@ public function validate(mixed $value, Constraint $constraint): void {
return;
}
$periods = $camp->getPeriods();
- $overlappingExists = (new ArrayCollection($periods))
+ $overlappingExists = new ArrayCollection($periods)
->filter(fn (Period $p) => $p !== $object)
->exists(fn ($_, Period $p) => self::overlaps($value, $p))
;
diff --git a/api/tests/Api/Activities/CreateActivityTest.php b/api/tests/Api/Activities/CreateActivityTest.php
index be753bd2e4..8c69667c8e 100644
--- a/api/tests/Api/Activities/CreateActivityTest.php
+++ b/api/tests/Api/Activities/CreateActivityTest.php
@@ -666,6 +666,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
Activity::class,
diff --git a/api/tests/Api/ActivityProgressLabels/CreateActivityProgressLabelTest.php b/api/tests/Api/ActivityProgressLabels/CreateActivityProgressLabelTest.php
index 413127b09c..0c1742d050 100644
--- a/api/tests/Api/ActivityProgressLabels/CreateActivityProgressLabelTest.php
+++ b/api/tests/Api/ActivityProgressLabels/CreateActivityProgressLabelTest.php
@@ -248,6 +248,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
ActivityProgressLabel::class,
diff --git a/api/tests/Api/ActivityResponsibles/CreateActivityResponsibleTest.php b/api/tests/Api/ActivityResponsibles/CreateActivityResponsibleTest.php
index dc95258860..1f1a4d95a2 100644
--- a/api/tests/Api/ActivityResponsibles/CreateActivityResponsibleTest.php
+++ b/api/tests/Api/ActivityResponsibles/CreateActivityResponsibleTest.php
@@ -206,6 +206,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
ActivityResponsible::class,
diff --git a/api/tests/Api/BaseEntity/CreateBaseEntityTest.php b/api/tests/Api/BaseEntity/CreateBaseEntityTest.php
index a626e0161a..e6a9fe69ce 100644
--- a/api/tests/Api/BaseEntity/CreateBaseEntityTest.php
+++ b/api/tests/Api/BaseEntity/CreateBaseEntityTest.php
@@ -90,6 +90,7 @@ public function testUpdateTimeTimeIsNotWritable() {
]);
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []): array {
return $this->getExamplePayload(Camp::class, Post::class, $attributes, ['campPrototype'], $except);
}
diff --git a/api/tests/Api/CampCollaborations/CreateCampCollaborationTest.php b/api/tests/Api/CampCollaborations/CreateCampCollaborationTest.php
index be0ea4827b..92b31c2162 100644
--- a/api/tests/Api/CampCollaborations/CreateCampCollaborationTest.php
+++ b/api/tests/Api/CampCollaborations/CreateCampCollaborationTest.php
@@ -610,6 +610,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
CampCollaboration::class,
diff --git a/api/tests/Api/Camps/CreateCampTest.php b/api/tests/Api/Camps/CreateCampTest.php
index 15af72536d..625e9851e3 100644
--- a/api/tests/Api/Camps/CreateCampTest.php
+++ b/api/tests/Api/Camps/CreateCampTest.php
@@ -823,6 +823,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(Camp::class, Post::class, $attributes, ['campPrototype'], $except);
}
diff --git a/api/tests/Api/Categories/CreateCategoryTest.php b/api/tests/Api/Categories/CreateCategoryTest.php
index e45904e9d0..a604760c2f 100644
--- a/api/tests/Api/Categories/CreateCategoryTest.php
+++ b/api/tests/Api/Categories/CreateCategoryTest.php
@@ -628,6 +628,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
Category::class,
diff --git a/api/tests/Api/ChecklistItems/CreateChecklistItemTest.php b/api/tests/Api/ChecklistItems/CreateChecklistItemTest.php
index 5aa5e1b4cc..f4bbccf558 100644
--- a/api/tests/Api/ChecklistItems/CreateChecklistItemTest.php
+++ b/api/tests/Api/ChecklistItems/CreateChecklistItemTest.php
@@ -293,6 +293,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
ChecklistItem::class,
diff --git a/api/tests/Api/Checklists/CreateChecklistTest.php b/api/tests/Api/Checklists/CreateChecklistTest.php
index b7e531bbac..0bf26319b0 100644
--- a/api/tests/Api/Checklists/CreateChecklistTest.php
+++ b/api/tests/Api/Checklists/CreateChecklistTest.php
@@ -373,6 +373,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
Checklist::class,
diff --git a/api/tests/Api/Comments/CreateCommentTest.php b/api/tests/Api/Comments/CreateCommentTest.php
index ca5d55ac8d..8227d33eaa 100644
--- a/api/tests/Api/Comments/CreateCommentTest.php
+++ b/api/tests/Api/Comments/CreateCommentTest.php
@@ -164,6 +164,7 @@ public function testCreateCommentFiltersMaliciousHtml() {
$this->assertJsonContains($this->getExampleReadPayload(['textHtml' => 'testText']));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
Comment::class,
diff --git a/api/tests/Api/ContentNodes/ChecklistNode/CreateChecklistNodeTest.php b/api/tests/Api/ContentNodes/ChecklistNode/CreateChecklistNodeTest.php
index 8d0fd4d8f8..d6783d327b 100644
--- a/api/tests/Api/ContentNodes/ChecklistNode/CreateChecklistNodeTest.php
+++ b/api/tests/Api/ContentNodes/ChecklistNode/CreateChecklistNodeTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class CreateChecklistNodeTest extends CreateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
@@ -20,6 +21,7 @@ public function setUp(): void {
/**
* payload set up.
*/
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return parent::getExampleWritePayload(
$attributes,
diff --git a/api/tests/Api/ContentNodes/ChecklistNode/DeleteChecklistNodeTest.php b/api/tests/Api/ContentNodes/ChecklistNode/DeleteChecklistNodeTest.php
index 5089124bcb..833e45aee1 100644
--- a/api/tests/Api/ContentNodes/ChecklistNode/DeleteChecklistNodeTest.php
+++ b/api/tests/Api/ContentNodes/ChecklistNode/DeleteChecklistNodeTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class DeleteChecklistNodeTest extends DeleteContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ChecklistNode/ListChecklistNodeTest.php b/api/tests/Api/ContentNodes/ChecklistNode/ListChecklistNodeTest.php
index 7a17e87c2c..7cdf36de33 100644
--- a/api/tests/Api/ContentNodes/ChecklistNode/ListChecklistNodeTest.php
+++ b/api/tests/Api/ContentNodes/ChecklistNode/ListChecklistNodeTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ListChecklistNodeTest extends ListContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ChecklistNode/ReadChecklistNodeTest.php b/api/tests/Api/ContentNodes/ChecklistNode/ReadChecklistNodeTest.php
index 8f3a806524..b6dd0e6350 100644
--- a/api/tests/Api/ContentNodes/ChecklistNode/ReadChecklistNodeTest.php
+++ b/api/tests/Api/ContentNodes/ChecklistNode/ReadChecklistNodeTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ReadChecklistNodeTest extends ReadContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ChecklistNode/UpdateChecklistNodeTest.php b/api/tests/Api/ContentNodes/ChecklistNode/UpdateChecklistNodeTest.php
index 59d0acd2b0..6a09aaecf3 100644
--- a/api/tests/Api/ContentNodes/ChecklistNode/UpdateChecklistNodeTest.php
+++ b/api/tests/Api/ContentNodes/ChecklistNode/UpdateChecklistNodeTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class UpdateChecklistNodeTest extends UpdateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ColumnLayout/CreateColumnLayoutTest.php b/api/tests/Api/ContentNodes/ColumnLayout/CreateColumnLayoutTest.php
index 5447912374..c79469faa9 100644
--- a/api/tests/Api/ContentNodes/ColumnLayout/CreateColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ColumnLayout/CreateColumnLayoutTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class CreateColumnLayoutTest extends CreateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
@@ -82,6 +83,7 @@ public function testCreateColumnLayoutRejectsInvalidWidth() {
/**
* payload set up.
*/
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return parent::getExampleWritePayload(
array_merge(
diff --git a/api/tests/Api/ContentNodes/ColumnLayout/DeleteColumnLayoutTest.php b/api/tests/Api/ContentNodes/ColumnLayout/DeleteColumnLayoutTest.php
index 45d49b8a94..f224e25585 100644
--- a/api/tests/Api/ContentNodes/ColumnLayout/DeleteColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ColumnLayout/DeleteColumnLayoutTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class DeleteColumnLayoutTest extends DeleteContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ColumnLayout/ListColumnLayoutTest.php b/api/tests/Api/ContentNodes/ColumnLayout/ListColumnLayoutTest.php
index 0e615e7f04..d4c886041d 100644
--- a/api/tests/Api/ContentNodes/ColumnLayout/ListColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ColumnLayout/ListColumnLayoutTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ListColumnLayoutTest extends ListContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ColumnLayout/ReadColumnLayoutTest.php b/api/tests/Api/ContentNodes/ColumnLayout/ReadColumnLayoutTest.php
index 14ad4fb44e..08cee388d7 100644
--- a/api/tests/Api/ContentNodes/ColumnLayout/ReadColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ColumnLayout/ReadColumnLayoutTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class ReadColumnLayoutTest extends ReadContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ColumnLayout/UpdateColumnLayoutTest.php b/api/tests/Api/ContentNodes/ColumnLayout/UpdateColumnLayoutTest.php
index 2581c3299e..8197ef72f4 100644
--- a/api/tests/Api/ContentNodes/ColumnLayout/UpdateColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ColumnLayout/UpdateColumnLayoutTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class UpdateColumnLayoutTest extends UpdateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/CreateContentNodeTestCase.php b/api/tests/Api/ContentNodes/CreateContentNodeTestCase.php
index 951b84ca0d..9f002dec78 100644
--- a/api/tests/Api/ContentNodes/CreateContentNodeTestCase.php
+++ b/api/tests/Api/ContentNodes/CreateContentNodeTestCase.php
@@ -28,6 +28,7 @@ abstract class CreateContentNodeTestCase extends ECampApiTestCase {
protected ContentNode $defaultParent;
+ #[\Override]
public function setUp(): void {
parent::setUp();
@@ -314,6 +315,7 @@ public function testCreatePurgesCacheTags() {
], $cacheManager->getInvalidatedTags());
}
+ #[\Override]
protected function getExampleWritePayload($attributes = [], $except = []) {
return parent::getExampleWritePayload(
array_merge([
diff --git a/api/tests/Api/ContentNodes/DeleteContentNodeTestCase.php b/api/tests/Api/ContentNodes/DeleteContentNodeTestCase.php
index c2c32d53da..2ec59807ea 100644
--- a/api/tests/Api/ContentNodes/DeleteContentNodeTestCase.php
+++ b/api/tests/Api/ContentNodes/DeleteContentNodeTestCase.php
@@ -17,6 +17,7 @@ abstract class DeleteContentNodeTestCase extends ECampApiTestCase {
protected BaseEntity $campPrototypeEntity;
protected BaseEntity $sharedCampEntity;
+ #[\Override]
public function setUp(): void {
parent::setUp();
}
diff --git a/api/tests/Api/ContentNodes/ListContentNodeTestCase.php b/api/tests/Api/ContentNodes/ListContentNodeTestCase.php
index 5afbe666b1..d61604a75b 100644
--- a/api/tests/Api/ContentNodes/ListContentNodeTestCase.php
+++ b/api/tests/Api/ContentNodes/ListContentNodeTestCase.php
@@ -26,6 +26,7 @@ abstract class ListContentNodeTestCase extends ECampApiTestCase {
protected array $contentNodesCampPrototype = [];
protected array $contentNodesCampShared = [];
+ #[\Override]
public function setUp(): void {
parent::setUp();
}
diff --git a/api/tests/Api/ContentNodes/MaterialNode/CreateMaterialNodeTest.php b/api/tests/Api/ContentNodes/MaterialNode/CreateMaterialNodeTest.php
index f6a10b4bb1..09021eedc1 100644
--- a/api/tests/Api/ContentNodes/MaterialNode/CreateMaterialNodeTest.php
+++ b/api/tests/Api/ContentNodes/MaterialNode/CreateMaterialNodeTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class CreateMaterialNodeTest extends CreateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MaterialNode/DeleteMaterialNodeTest.php b/api/tests/Api/ContentNodes/MaterialNode/DeleteMaterialNodeTest.php
index 54700284a8..09a9fb2065 100644
--- a/api/tests/Api/ContentNodes/MaterialNode/DeleteMaterialNodeTest.php
+++ b/api/tests/Api/ContentNodes/MaterialNode/DeleteMaterialNodeTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class DeleteMaterialNodeTest extends DeleteContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MaterialNode/ListMaterialNodeTest.php b/api/tests/Api/ContentNodes/MaterialNode/ListMaterialNodeTest.php
index 4b1fc4849d..b50313ef51 100644
--- a/api/tests/Api/ContentNodes/MaterialNode/ListMaterialNodeTest.php
+++ b/api/tests/Api/ContentNodes/MaterialNode/ListMaterialNodeTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ListMaterialNodeTest extends ListContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MaterialNode/ReadMaterialNodeTest.php b/api/tests/Api/ContentNodes/MaterialNode/ReadMaterialNodeTest.php
index 99a56e61eb..302063f947 100644
--- a/api/tests/Api/ContentNodes/MaterialNode/ReadMaterialNodeTest.php
+++ b/api/tests/Api/ContentNodes/MaterialNode/ReadMaterialNodeTest.php
@@ -10,6 +10,7 @@
* @internal
*/
class ReadMaterialNodeTest extends ReadContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MaterialNode/UpdateMaterialNodeTest.php b/api/tests/Api/ContentNodes/MaterialNode/UpdateMaterialNodeTest.php
index f23e5c5fa6..831ec08f86 100644
--- a/api/tests/Api/ContentNodes/MaterialNode/UpdateMaterialNodeTest.php
+++ b/api/tests/Api/ContentNodes/MaterialNode/UpdateMaterialNodeTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class UpdateMaterialNodeTest extends UpdateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MultiSelect/CreateMultiSelectTest.php b/api/tests/Api/ContentNodes/MultiSelect/CreateMultiSelectTest.php
index 42d60df2c8..b6a613d64e 100644
--- a/api/tests/Api/ContentNodes/MultiSelect/CreateMultiSelectTest.php
+++ b/api/tests/Api/ContentNodes/MultiSelect/CreateMultiSelectTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class CreateMultiSelectTest extends CreateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
@@ -56,6 +57,7 @@ public function testCreateDoesNotAcceptOptions() {
]);
}
+ #[\Override]
protected function getExampleWritePayload($attributes = [], $except = []) {
return parent::getExampleWritePayload(
array_merge([
diff --git a/api/tests/Api/ContentNodes/MultiSelect/DeleteMultiSelectTest.php b/api/tests/Api/ContentNodes/MultiSelect/DeleteMultiSelectTest.php
index ccdec1b75a..2eeb57852e 100644
--- a/api/tests/Api/ContentNodes/MultiSelect/DeleteMultiSelectTest.php
+++ b/api/tests/Api/ContentNodes/MultiSelect/DeleteMultiSelectTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class DeleteMultiSelectTest extends DeleteContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MultiSelect/ListMultiSelectTest.php b/api/tests/Api/ContentNodes/MultiSelect/ListMultiSelectTest.php
index d7daa12ea4..9dc6e7efd5 100644
--- a/api/tests/Api/ContentNodes/MultiSelect/ListMultiSelectTest.php
+++ b/api/tests/Api/ContentNodes/MultiSelect/ListMultiSelectTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ListMultiSelectTest extends ListContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MultiSelect/ReadMultiSelectTest.php b/api/tests/Api/ContentNodes/MultiSelect/ReadMultiSelectTest.php
index a0781fd9a4..63ebd5c80e 100644
--- a/api/tests/Api/ContentNodes/MultiSelect/ReadMultiSelectTest.php
+++ b/api/tests/Api/ContentNodes/MultiSelect/ReadMultiSelectTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class ReadMultiSelectTest extends ReadContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/MultiSelect/UpdateMultiSelectTest.php b/api/tests/Api/ContentNodes/MultiSelect/UpdateMultiSelectTest.php
index 87d89a8cf8..fa83055525 100644
--- a/api/tests/Api/ContentNodes/MultiSelect/UpdateMultiSelectTest.php
+++ b/api/tests/Api/ContentNodes/MultiSelect/UpdateMultiSelectTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class UpdateMultiSelectTest extends UpdateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ReadContentNodeTestCase.php b/api/tests/Api/ContentNodes/ReadContentNodeTestCase.php
index 3300307e44..b692aece64 100644
--- a/api/tests/Api/ContentNodes/ReadContentNodeTestCase.php
+++ b/api/tests/Api/ContentNodes/ReadContentNodeTestCase.php
@@ -17,6 +17,7 @@ abstract class ReadContentNodeTestCase extends ECampApiTestCase {
protected BaseEntity $campPrototypeEntity;
protected BaseEntity $sharedCampEntity;
+ #[\Override]
public function setUp(): void {
parent::setUp();
}
diff --git a/api/tests/Api/ContentNodes/ResponsiveLayout/CreateResponsiveLayoutTest.php b/api/tests/Api/ContentNodes/ResponsiveLayout/CreateResponsiveLayoutTest.php
index 0f28a337fc..c43c081e82 100644
--- a/api/tests/Api/ContentNodes/ResponsiveLayout/CreateResponsiveLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ResponsiveLayout/CreateResponsiveLayoutTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class CreateResponsiveLayoutTest extends CreateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
@@ -64,6 +65,7 @@ public function testCreateResponsiveLayoutRejectsInvalidJson() {
/**
* payload set up.
*/
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return parent::getExampleWritePayload(
array_merge(
diff --git a/api/tests/Api/ContentNodes/ResponsiveLayout/DeleteResponsiveLayoutTest.php b/api/tests/Api/ContentNodes/ResponsiveLayout/DeleteResponsiveLayoutTest.php
index 336e7b5b29..8cb39c9669 100644
--- a/api/tests/Api/ContentNodes/ResponsiveLayout/DeleteResponsiveLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ResponsiveLayout/DeleteResponsiveLayoutTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class DeleteResponsiveLayoutTest extends DeleteContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ResponsiveLayout/ListResponsiveLayoutTest.php b/api/tests/Api/ContentNodes/ResponsiveLayout/ListResponsiveLayoutTest.php
index faefe405a9..c448f63684 100644
--- a/api/tests/Api/ContentNodes/ResponsiveLayout/ListResponsiveLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ResponsiveLayout/ListResponsiveLayoutTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ListResponsiveLayoutTest extends ListContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ResponsiveLayout/ReadResponsiveLayoutTest.php b/api/tests/Api/ContentNodes/ResponsiveLayout/ReadResponsiveLayoutTest.php
index b5986404e3..0bc798c7ad 100644
--- a/api/tests/Api/ContentNodes/ResponsiveLayout/ReadResponsiveLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ResponsiveLayout/ReadResponsiveLayoutTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class ReadResponsiveLayoutTest extends ReadContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/ResponsiveLayout/UpdateResponsiveLayoutTest.php b/api/tests/Api/ContentNodes/ResponsiveLayout/UpdateResponsiveLayoutTest.php
index 5ea57fa5b6..787f805060 100644
--- a/api/tests/Api/ContentNodes/ResponsiveLayout/UpdateResponsiveLayoutTest.php
+++ b/api/tests/Api/ContentNodes/ResponsiveLayout/UpdateResponsiveLayoutTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class UpdateResponsiveLayoutTest extends UpdateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/RootColumnLayout/CreateRootColumnLayoutTest.php b/api/tests/Api/ContentNodes/RootColumnLayout/CreateRootColumnLayoutTest.php
index 213500543d..52f915a403 100644
--- a/api/tests/Api/ContentNodes/RootColumnLayout/CreateRootColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/RootColumnLayout/CreateRootColumnLayoutTest.php
@@ -17,6 +17,7 @@ class CreateRootColumnLayoutTest extends ECampApiTestCase {
protected ContentNode $defaultParent;
+ #[\Override]
public function setUp(): void {
parent::setUp();
@@ -80,6 +81,7 @@ public function testCreateColumnLayoutValidatesMissingContentType() {
/**
* payload set up.
*/
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return parent::getExampleWritePayload(
array_merge(
diff --git a/api/tests/Api/ContentNodes/RootColumnLayout/DeleteRootColumnLayoutTest.php b/api/tests/Api/ContentNodes/RootColumnLayout/DeleteRootColumnLayoutTest.php
index 1451099d61..556aa5b129 100644
--- a/api/tests/Api/ContentNodes/RootColumnLayout/DeleteRootColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/RootColumnLayout/DeleteRootColumnLayoutTest.php
@@ -10,6 +10,7 @@
* @internal
*/
class DeleteRootColumnLayoutTest extends ECampApiTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/RootColumnLayout/UpdateRootColumnLayoutTest.php b/api/tests/Api/ContentNodes/RootColumnLayout/UpdateRootColumnLayoutTest.php
index 5a232b45f6..203ef0e685 100644
--- a/api/tests/Api/ContentNodes/RootColumnLayout/UpdateRootColumnLayoutTest.php
+++ b/api/tests/Api/ContentNodes/RootColumnLayout/UpdateRootColumnLayoutTest.php
@@ -10,6 +10,7 @@
* @internal
*/
class UpdateRootColumnLayoutTest extends ECampApiTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/SingleText/CreateSingleTextTest.php b/api/tests/Api/ContentNodes/SingleText/CreateSingleTextTest.php
index 7567b77516..46596e14db 100644
--- a/api/tests/Api/ContentNodes/SingleText/CreateSingleTextTest.php
+++ b/api/tests/Api/ContentNodes/SingleText/CreateSingleTextTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class CreateSingleTextTest extends CreateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/SingleText/DeleteSingleTextTest.php b/api/tests/Api/ContentNodes/SingleText/DeleteSingleTextTest.php
index bbbd5558b1..7b2316c301 100644
--- a/api/tests/Api/ContentNodes/SingleText/DeleteSingleTextTest.php
+++ b/api/tests/Api/ContentNodes/SingleText/DeleteSingleTextTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class DeleteSingleTextTest extends DeleteContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/SingleText/ListSingleTextTest.php b/api/tests/Api/ContentNodes/SingleText/ListSingleTextTest.php
index 597971c30d..66b0525cc8 100644
--- a/api/tests/Api/ContentNodes/SingleText/ListSingleTextTest.php
+++ b/api/tests/Api/ContentNodes/SingleText/ListSingleTextTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ListSingleTextTest extends ListContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/SingleText/ReadSingleTextTest.php b/api/tests/Api/ContentNodes/SingleText/ReadSingleTextTest.php
index 30386e075d..b38d785997 100644
--- a/api/tests/Api/ContentNodes/SingleText/ReadSingleTextTest.php
+++ b/api/tests/Api/ContentNodes/SingleText/ReadSingleTextTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class ReadSingleTextTest extends ReadContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/SingleText/UpdateSingleTextTest.php b/api/tests/Api/ContentNodes/SingleText/UpdateSingleTextTest.php
index 0696287a4e..c126c01621 100644
--- a/api/tests/Api/ContentNodes/SingleText/UpdateSingleTextTest.php
+++ b/api/tests/Api/ContentNodes/SingleText/UpdateSingleTextTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class UpdateSingleTextTest extends UpdateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/Storyboard/CreateStoryboardTest.php b/api/tests/Api/ContentNodes/Storyboard/CreateStoryboardTest.php
index 436c78d695..b65d4d7298 100644
--- a/api/tests/Api/ContentNodes/Storyboard/CreateStoryboardTest.php
+++ b/api/tests/Api/ContentNodes/Storyboard/CreateStoryboardTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class CreateStoryboardTest extends CreateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/Storyboard/DeleteStoryboardTest.php b/api/tests/Api/ContentNodes/Storyboard/DeleteStoryboardTest.php
index a5a7d80f45..f10a83fd21 100644
--- a/api/tests/Api/ContentNodes/Storyboard/DeleteStoryboardTest.php
+++ b/api/tests/Api/ContentNodes/Storyboard/DeleteStoryboardTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class DeleteStoryboardTest extends DeleteContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/Storyboard/ListStoryboardTest.php b/api/tests/Api/ContentNodes/Storyboard/ListStoryboardTest.php
index fa6adbb725..26f3efd738 100644
--- a/api/tests/Api/ContentNodes/Storyboard/ListStoryboardTest.php
+++ b/api/tests/Api/ContentNodes/Storyboard/ListStoryboardTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class ListStoryboardTest extends ListContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/Storyboard/ReadStoryboardTest.php b/api/tests/Api/ContentNodes/Storyboard/ReadStoryboardTest.php
index 0d0accfa39..7a83cf948a 100644
--- a/api/tests/Api/ContentNodes/Storyboard/ReadStoryboardTest.php
+++ b/api/tests/Api/ContentNodes/Storyboard/ReadStoryboardTest.php
@@ -9,6 +9,7 @@
* @internal
*/
class ReadStoryboardTest extends ReadContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/Storyboard/UpdateStoryboardTest.php b/api/tests/Api/ContentNodes/Storyboard/UpdateStoryboardTest.php
index 4211916a80..470ce22215 100644
--- a/api/tests/Api/ContentNodes/Storyboard/UpdateStoryboardTest.php
+++ b/api/tests/Api/ContentNodes/Storyboard/UpdateStoryboardTest.php
@@ -8,6 +8,7 @@
* @internal
*/
class UpdateStoryboardTest extends UpdateContentNodeTestCase {
+ #[\Override]
public function setUp(): void {
parent::setUp();
diff --git a/api/tests/Api/ContentNodes/UpdateContentNodeTestCase.php b/api/tests/Api/ContentNodes/UpdateContentNodeTestCase.php
index f84ec05f75..997b9413c3 100644
--- a/api/tests/Api/ContentNodes/UpdateContentNodeTestCase.php
+++ b/api/tests/Api/ContentNodes/UpdateContentNodeTestCase.php
@@ -20,6 +20,7 @@ abstract class UpdateContentNodeTestCase extends ECampApiTestCase {
protected BaseEntity $campPrototypeEntity;
protected BaseEntity $sharedCampEntity;
+ #[\Override]
public function setUp(): void {
parent::setUp();
}
diff --git a/api/tests/Api/DayResponsibles/CreateDayResponsibleTest.php b/api/tests/Api/DayResponsibles/CreateDayResponsibleTest.php
index 28d4a4ceb4..8a216c1b19 100644
--- a/api/tests/Api/DayResponsibles/CreateDayResponsibleTest.php
+++ b/api/tests/Api/DayResponsibles/CreateDayResponsibleTest.php
@@ -206,6 +206,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
DayResponsible::class,
diff --git a/api/tests/Api/ECampApiTestCase.php b/api/tests/Api/ECampApiTestCase.php
index 83ca5267ae..03a8e1e05a 100644
--- a/api/tests/Api/ECampApiTestCase.php
+++ b/api/tests/Api/ECampApiTestCase.php
@@ -59,6 +59,7 @@ public function setUp(): void {
$this->currentTimezone = date_default_timezone_get();
}
+ #[\Override]
protected function tearDown(): void {
date_default_timezone_set($this->currentTimezone);
@@ -190,13 +191,13 @@ protected function getExamplePayload(string $resourceClass, string $operationCla
$decoded = json_decode($example, true, 512, JSON_THROW_ON_ERROR);
return is_array($decoded) || is_null($decoded) ? $decoded : $example;
- } catch (\JsonException|\TypeError $e) {
+ } catch (\JsonException|\TypeError) {
return $example;
}
}, $examples);
return array_diff_key(array_merge(array_diff_key($examples, array_flip($exceptExamples)), $attributes), array_flip($exceptAttributes));
- } catch (\Exception $e) {
+ } catch (\Exception) {
return [];
}
}
@@ -272,13 +273,13 @@ protected function getExampleWritePayload($attributes = [], $except = []) {
protected function assertEntityWasRemoved(?BaseEntity $entity = null) {
$entity ??= $this->defaultEntity;
- $this->assertNull($this->getEntityManager()->getRepository(get_class($entity))->find($entity->getId()));
+ $this->assertNull($this->getEntityManager()->getRepository($entity::class)->find($entity->getId()));
}
protected function assertEntityStillExists(?BaseEntity $entity = null) {
$entity ??= $this->defaultEntity;
- $this->assertNotNull($this->getEntityManager()->getRepository(get_class($entity))->find($entity->getId()));
+ $this->assertNotNull($this->getEntityManager()->getRepository($entity::class)->find($entity->getId()));
}
/**
diff --git a/api/tests/Api/FirewallTest.php b/api/tests/Api/FirewallTest.php
index 360fd16a86..9964931543 100644
--- a/api/tests/Api/FirewallTest.php
+++ b/api/tests/Api/FirewallTest.php
@@ -46,9 +46,7 @@ public function testProtectedEndpointsDontResultInQuery(string $endpoint) {
}
public static function getProtectedEndpoints(): array {
- $protectedEndpoints = array_filter(self::getEndPoints(), function (string $endpoint) {
- return self::isProtectedByFirewall($endpoint);
- });
+ $protectedEndpoints = array_filter(self::getEndPoints(), self::isProtectedByFirewall(...));
return ParametrizedTestHelper::asParameterTestSets($protectedEndpoints);
}
diff --git a/api/tests/Api/MaterialItems/CreateMaterialItemTest.php b/api/tests/Api/MaterialItems/CreateMaterialItemTest.php
index 259858f516..64069e1964 100644
--- a/api/tests/Api/MaterialItems/CreateMaterialItemTest.php
+++ b/api/tests/Api/MaterialItems/CreateMaterialItemTest.php
@@ -501,6 +501,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
MaterialItem::class,
diff --git a/api/tests/Api/MaterialLists/CreateMaterialListTest.php b/api/tests/Api/MaterialLists/CreateMaterialListTest.php
index b27ef14902..bf10d1752a 100644
--- a/api/tests/Api/MaterialLists/CreateMaterialListTest.php
+++ b/api/tests/Api/MaterialLists/CreateMaterialListTest.php
@@ -263,6 +263,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
MaterialList::class,
diff --git a/api/tests/Api/Periods/CreatePeriodTest.php b/api/tests/Api/Periods/CreatePeriodTest.php
index 1cf5da4b9c..4b40dc7820 100644
--- a/api/tests/Api/Periods/CreatePeriodTest.php
+++ b/api/tests/Api/Periods/CreatePeriodTest.php
@@ -377,6 +377,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getPeriodResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
Period::class,
diff --git a/api/tests/Api/ResetPassword/UpdatePasswordTest.php b/api/tests/Api/ResetPassword/UpdatePasswordTest.php
index b06c6efc94..e98db68574 100644
--- a/api/tests/Api/ResetPassword/UpdatePasswordTest.php
+++ b/api/tests/Api/ResetPassword/UpdatePasswordTest.php
@@ -23,6 +23,7 @@ class UpdatePasswordTest extends ECampApiTestCase {
private ?string $passwordResetKey;
private $client;
+ #[\Override]
public function setUp(): void {
parent::setUp();
$this->client = static::createBasicClient();
diff --git a/api/tests/Api/ScheduleEntries/CreateScheduleEntryTest.php b/api/tests/Api/ScheduleEntries/CreateScheduleEntryTest.php
index 542b04372b..a5be4e5441 100644
--- a/api/tests/Api/ScheduleEntries/CreateScheduleEntryTest.php
+++ b/api/tests/Api/ScheduleEntries/CreateScheduleEntryTest.php
@@ -291,6 +291,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = []) {
return $this->getExamplePayload(
ScheduleEntry::class,
diff --git a/api/tests/Api/SnapshotTests/EndpointPerformanceTest.php b/api/tests/Api/SnapshotTests/EndpointPerformanceTest.php
index b7e5dde291..6769c8af04 100644
--- a/api/tests/Api/SnapshotTests/EndpointPerformanceTest.php
+++ b/api/tests/Api/SnapshotTests/EndpointPerformanceTest.php
@@ -38,7 +38,7 @@ public function testPerformanceDidNotChangeForStableEndpoints() {
$collectionEndpoints = self::getCollectionEndpoints();
foreach ($collectionEndpoints as $collectionEndpoint) {
if ('/users' !== $collectionEndpoint && !str_contains($collectionEndpoint, '/content_node')) {
- list($statusCode, $queryCount, $executionTimeSeconds) = $this->measurePerformanceFor($collectionEndpoint);
+ [$statusCode, $queryCount, $executionTimeSeconds] = $this->measurePerformanceFor($collectionEndpoint);
$responseCodes[$collectionEndpoint] = $statusCode;
$numberOfQueries[$collectionEndpoint] = $queryCount;
$queryExecutionTime[$collectionEndpoint] = $executionTimeSeconds;
@@ -46,7 +46,7 @@ public function testPerformanceDidNotChangeForStableEndpoints() {
if (!str_contains($collectionEndpoint, '/content_node')) {
$fixtureFor = self::getFixtureFor($collectionEndpoint);
- list($statusCode, $queryCount, $executionTimeSeconds) = $this->measurePerformanceFor("{$collectionEndpoint}/{$fixtureFor->getId()}");
+ [$statusCode, $queryCount, $executionTimeSeconds] = $this->measurePerformanceFor("{$collectionEndpoint}/{$fixtureFor->getId()}");
$responseCodes["{$collectionEndpoint}/item"] = $statusCode;
$numberOfQueries["{$collectionEndpoint}/item"] = $queryCount;
$queryExecutionTime["{$collectionEndpoint}/item"] = $executionTimeSeconds;
@@ -54,14 +54,14 @@ public function testPerformanceDidNotChangeForStableEndpoints() {
}
foreach ($this->getPerformanceCriticalUrls() as $url => $id) {
- list($statusCode, $queryCount, $executionTimeSeconds) = $this->measurePerformanceFor($url.$id);
+ [$statusCode, $queryCount, $executionTimeSeconds] = $this->measurePerformanceFor($url.$id);
$responseCodes[$url] = $statusCode;
$numberOfQueries[$url] = $queryCount;
$queryExecutionTime[$url] = $executionTimeSeconds;
}
foreach ($this->getSubresourceUrls() as $url => $id) {
- list($statusCode, $queryCount, $executionTimeSeconds) = $this->measurePerformanceFor(preg_replace('/\{id}/', $id, $url));
+ [$statusCode, $queryCount, $executionTimeSeconds] = $this->measurePerformanceFor(preg_replace('/\{id}/', $id, $url));
$responseCodes[$url] = $statusCode;
$numberOfQueries[$url] = $queryCount;
$queryExecutionTime[$url] = $executionTimeSeconds;
@@ -94,7 +94,7 @@ public function testNumberOfQueriesDidNotChangeForContentNodeCollectionEndpoints
if ('test' !== $this->getEnvironment()) {
self::markTestSkipped(__FUNCTION__.' is only run in test environment, not in '.$this->getEnvironment());
}
- list($statusCode, $queryCount, $executionTimeSeconds)
+ [$statusCode, $queryCount, $executionTimeSeconds]
= $this->measurePerformanceFor($collectionEndpoint.'?camp=/camps/'.self::getFixtureFor('/camps')->getId());
assertThat($statusCode, equalTo(200));
@@ -129,7 +129,7 @@ public function testNumberOfQueriesDidNotChangeForContentNodeItemEndpoints(strin
self::markTestSkipped("{$collectionEndpoint} does not support get item endpoint");
}
$fixtureFor = self::getFixtureFor($collectionEndpoint);
- list($statusCode, $queryCount, $executionTimeSeconds) = $this->measurePerformanceFor("{$collectionEndpoint}/{$fixtureFor->getId()}");
+ [$statusCode, $queryCount, $executionTimeSeconds] = $this->measurePerformanceFor("{$collectionEndpoint}/{$fixtureFor->getId()}");
assertThat($statusCode, equalTo(200));
diff --git a/api/tests/Api/SnapshotTests/Extension/FilterEagerLoadingExtensionIntegrationTest.php b/api/tests/Api/SnapshotTests/Extension/FilterEagerLoadingExtensionIntegrationTest.php
index 8c7cfb6718..25b76b1ba7 100644
--- a/api/tests/Api/SnapshotTests/Extension/FilterEagerLoadingExtensionIntegrationTest.php
+++ b/api/tests/Api/SnapshotTests/Extension/FilterEagerLoadingExtensionIntegrationTest.php
@@ -24,6 +24,7 @@ class FilterEagerLoadingExtensionIntegrationTest extends ECampApiTestCase {
private array $context = [];
private FilterEagerLoadingsExtension $filterEagerLoadingExtension;
+ #[\Override]
public function setUp(): void {
parent::setUp();
$container = static::getContainer();
diff --git a/api/tests/Api/Users/CreateUserTest.php b/api/tests/Api/Users/CreateUserTest.php
index d49870ae47..86475a9ae0 100644
--- a/api/tests/Api/Users/CreateUserTest.php
+++ b/api/tests/Api/Users/CreateUserTest.php
@@ -941,6 +941,7 @@ public function testCreateResponseStructureMatchesReadResponseStructure() {
assertThat($createArray, CompatibleHalResponse::isHalCompatibleWith($getItemResponse->toArray()));
}
+ #[\Override]
public function getExampleWritePayload($attributes = [], $except = [], $mergeEmbeddedAttributes = []) {
$examplePayload = $this->getExamplePayload(
User::class,
diff --git a/api/tests/Constraints/CompatibleHalResponse.php b/api/tests/Constraints/CompatibleHalResponse.php
index 99b7af7c9f..dd816265ce 100644
--- a/api/tests/Constraints/CompatibleHalResponse.php
+++ b/api/tests/Constraints/CompatibleHalResponse.php
@@ -15,6 +15,7 @@ public function toString(): string {
return 'is hal compatible with '.$this->exporter()->export($this->halResponse);
}
+ #[\Override]
protected function matches($other): bool {
if (!is_array($other)) {
return false;
@@ -27,7 +28,7 @@ protected function matches($other): bool {
sort($otherKeys);
$otherKeysWithoutEmbedded = array_diff($otherKeys, ['_embedded']);
- if (join($halResponseKeysWithoutEmbedded) !== join($otherKeysWithoutEmbedded)) {
+ if (join('', $halResponseKeysWithoutEmbedded) !== join('', $otherKeysWithoutEmbedded)) {
return false;
}
@@ -41,7 +42,7 @@ protected function matches($other): bool {
$otherRelationKeys = array_unique(array_merge($otherLinksKeys, $otherEmbeddedKeys));
sort($otherRelationKeys);
- if (join($halResponseRelationKeys) !== join($otherRelationKeys)) {
+ if (join('', $halResponseRelationKeys) !== join('', $otherRelationKeys)) {
return false;
}
diff --git a/api/tests/Entity/ScheduleEntryTest.php b/api/tests/Entity/ScheduleEntryTest.php
index a3be4c480a..05fffc2581 100644
--- a/api/tests/Entity/ScheduleEntryTest.php
+++ b/api/tests/Entity/ScheduleEntryTest.php
@@ -164,9 +164,7 @@ public function testGetDayReturnsNullIfDayEntityIsMissing() {
}
protected function setCreateTime(ScheduleEntry $scheduleEntry, \DateTime $createTime) {
- $createTimeProperty = (new \ReflectionClass(ScheduleEntry::class))->getProperty('createTime');
- $createTimeProperty->setAccessible(true);
+ $createTimeProperty = new \ReflectionClass(ScheduleEntry::class)->getProperty('createTime');
$createTimeProperty->setValue($scheduleEntry, $createTime);
- $createTimeProperty->setAccessible(false);
}
}
diff --git a/api/tests/HttpCache/CacheManagerMock.php b/api/tests/HttpCache/CacheManagerMock.php
index 035c64d99d..8a841111e5 100644
--- a/api/tests/HttpCache/CacheManagerMock.php
+++ b/api/tests/HttpCache/CacheManagerMock.php
@@ -10,6 +10,7 @@ class CacheManagerMock extends CacheManager {
public function __construct(
) {}
+ #[\Override]
public function flush(): int {
return 0;
}
@@ -17,6 +18,7 @@ public function flush(): int {
/**
* @param string[] $tags Tags that should be removed/expired from the cache. An empty tag list is ignored.
*/
+ #[\Override]
public function invalidateTags(array $tags): static {
if (!$tags) {
return $this;
diff --git a/api/tests/HttpCache/PurgeHttpCacheListenerTest.php b/api/tests/HttpCache/PurgeHttpCacheListenerTest.php
index 17d9580638..225f6ba8ef 100644
--- a/api/tests/HttpCache/PurgeHttpCacheListenerTest.php
+++ b/api/tests/HttpCache/PurgeHttpCacheListenerTest.php
@@ -75,13 +75,13 @@ protected function setUp(): void {
$classMetadataProphecy = $this->prophesize(ClassMetadata::class);
$classMetadataProphecy->getAssociationMappings()->willReturn([
'relatedDummy' => [
- 'targetEntity' => 'App\Tests\HttpCache\Entity\RelatedDummy',
+ 'targetEntity' => RelatedDummy::class,
'isOwningSide' => true,
'inversedBy' => 'dummies',
'mappedBy' => null,
],
'relatedOwningDummy' => [
- 'targetEntity' => 'App\Tests\HttpCache\Entity\RelatedOwningDummy',
+ 'targetEntity' => RelatedOwningDummy::class,
'isOwningSide' => true,
'inversedBy' => 'ownedDummy',
'mappedBy' => null,
@@ -102,10 +102,10 @@ protected function setUp(): void {
$this->propertyAccessorProphecy->getValue(Argument::type(Dummy::class), 'relatedOwningDummy')->willReturn(null);
$this->metadataFactoryProphecy = $this->prophesize(ResourceMetadataCollectionFactoryInterface::class);
- $operation = (new GetCollection())->withShortName('Dummy')->withClass(Dummy::class);
- $operation2 = (new GetCollection())->withShortName('DummyAsSubresource')->withClass(Dummy::class);
+ $operation = new GetCollection()->withShortName('Dummy')->withClass(Dummy::class);
+ $operation2 = new GetCollection()->withShortName('DummyAsSubresource')->withClass(Dummy::class);
$this->metadataFactoryProphecy->create(Dummy::class)->willReturn(new ResourceMetadataCollection('Dummy', [
- (new ApiResource('Dummy'))
+ new ApiResource('Dummy')
->withShortName('Dummy')
->withOperations(new Operations([
'get_collection' => $operation,
@@ -143,16 +143,16 @@ public function testOnFlush(): void {
$cacheManagerProphecy->flush()->willReturn(0);
$metadataFactoryProphecy = $this->prophesize(ResourceMetadataCollectionFactoryInterface::class);
- $operation = (new GetCollection())->withShortName('Dummy')->withClass(Dummy::class);
+ $operation = new GetCollection()->withShortName('Dummy')->withClass(Dummy::class);
$metadataFactoryProphecy->create(Dummy::class)->willReturn(new ResourceMetadataCollection('Dummy', [
- (new ApiResource('Dummy'))
+ new ApiResource('Dummy')
->withShortName('Dummy')
->withOperations(new Operations([
'get' => $operation,
])),
]))->shouldBeCalled();
$metadataFactoryProphecy->create(DummyNoGetOperation::class)->willReturn(new ResourceMetadataCollection('DummyNoGetOperation', [
- (new ApiResource('DummyNoGetOperation'))
+ new ApiResource('DummyNoGetOperation')
->withShortName('DummyNoGetOperation'),
]))->shouldBeCalled();
@@ -345,7 +345,7 @@ public function testPropertyIsNotAResourceClass(): void {
$metadataFactoryProphecy = $this->prophesize(ResourceMetadataCollectionFactoryInterface::class);
$metadataFactoryProphecy->create(ContainNonResource::class)->willReturn(new ResourceMetadataCollection('ContainNonResource', [
- (new ApiResource('ContainNonResource'))
+ new ApiResource('ContainNonResource')
->withShortName('ContainNonResource'),
]))->shouldBeCalled();
diff --git a/api/tests/Integration/State/ValidationErrorProviderIntegrationTest.php b/api/tests/Integration/State/ValidationErrorProviderIntegrationTest.php
index 6e56519933..98f4e60eaa 100644
--- a/api/tests/Integration/State/ValidationErrorProviderIntegrationTest.php
+++ b/api/tests/Integration/State/ValidationErrorProviderIntegrationTest.php
@@ -32,7 +32,7 @@ protected function setUp(): void {
parent::setUp();
/** @var ValidationErrorProvider $obj */
- $obj = self::getContainer()->get('App\State\ValidationErrorProvider');
+ $obj = self::getContainer()->get(ValidationErrorProvider::class);
$this->validationErrorProvider = $obj;
}
diff --git a/api/tests/Metadata/Resource/Factory/UriTemplateFactoryTest.php b/api/tests/Metadata/Resource/Factory/UriTemplateFactoryTest.php
index 5baffa74b2..344a6b932d 100644
--- a/api/tests/Metadata/Resource/Factory/UriTemplateFactoryTest.php
+++ b/api/tests/Metadata/Resource/Factory/UriTemplateFactoryTest.php
@@ -42,7 +42,7 @@ protected function setUp(): void {
$this->resourceNameCollection = new ResourceNameCollection(['Dummy']);
$this->resourceMetadataCollection = new ResourceMetadataCollection('Dummy');
- $this->apiResource = (new ApiResource())->withShortName('Dummy')->withOperations(new Operations([
+ $this->apiResource = new ApiResource()->withShortName('Dummy')->withOperations(new Operations([
new Get(
name: '_api_/dummys/{id}{._format}_get'
),
@@ -81,7 +81,7 @@ public function testCreatesNonTemplatedUri() {
name: '_api_/dummys{._format}_get_collection'
),
]);
- $apiResource = (new ApiResource())->withShortName('Dummy')->withOperations($operations);
+ $apiResource = new ApiResource()->withShortName('Dummy')->withOperations($operations);
$this->resourceMetadataCollection->append($apiResource);
$this->createFactory();
@@ -111,7 +111,7 @@ public function testCreatesTemplatedUriWithIdPathParameter() {
public function testCreatesTemplatedUriWithFilterQueryParameter() {
// given
$resource = 'Dummy';
- $this->resourceMetadataCollection->append((new ApiResource())->withShortName('Dummy')->withOperations(new Operations([
+ $this->resourceMetadataCollection->append(new ApiResource()->withShortName('Dummy')->withOperations(new Operations([
new Get(
name: '_api_/dummys/{id}{._format}_get'
),
@@ -152,7 +152,7 @@ public function testCreatesTemplatedUriWithAdvancedPaginationQueryParameters() {
// given
$resource = 'Dummy';
$this->paginationOptions = new PaginationOptions(true);
- $this->resourceMetadataCollection->append((new ApiResource())->withShortName('Dummy')->withOperations(new Operations([
+ $this->resourceMetadataCollection->append(new ApiResource()->withShortName('Dummy')->withOperations(new Operations([
new Get(
name: '_api_/dummys/{id}{._format}_get'
),
@@ -176,7 +176,7 @@ public function testCreatesTemplatedUriWithActionPathParameters() {
// given
$resource = 'Dummy';
- $this->resourceMetadataCollection->append((new ApiResource())->withShortName('Dummy')->withOperations(new Operations([
+ $this->resourceMetadataCollection->append(new ApiResource()->withShortName('Dummy')->withOperations(new Operations([
new Get(
name: '_api_/dummys/{id}{._format}_get'
),
@@ -202,7 +202,7 @@ public function testCreatesTemplatedUriWithActionPathParameters() {
public function testIgnoresRoutesWithNoSlashAtEnd() {
// given
$resource = 'Dummy';
- $this->resourceMetadataCollection->append((new ApiResource())->withShortName('Dummy')->withOperations(new Operations([
+ $this->resourceMetadataCollection->append(new ApiResource()->withShortName('Dummy')->withOperations(new Operations([
new Get(
name: '_api_/dummys/{id}{._format}_get'
),
@@ -223,7 +223,7 @@ public function testIgnoresRoutesWithNoSlashAtEnd() {
public function testIgnoreActionPathsOfOtherRouteStarts() {
// given
$resource = 'Dummy';
- $this->resourceMetadataCollection->append((new ApiResource())->withShortName('Dummy')->withOperations(new Operations([
+ $this->resourceMetadataCollection->append(new ApiResource()->withShortName('Dummy')->withOperations(new Operations([
new Get(
name: '_api_/dummys/{id}{._format}_get'
),
diff --git a/api/tests/Metadata/Resource/OperationHelperTest.php b/api/tests/Metadata/Resource/OperationHelperTest.php
index 45b056a332..af10ca4560 100644
--- a/api/tests/Metadata/Resource/OperationHelperTest.php
+++ b/api/tests/Metadata/Resource/OperationHelperTest.php
@@ -25,7 +25,7 @@ protected function setUp(): void {
public function testFindGet() {
// given
- $apiResource = (new ApiResource())->withOperations(new Operations([
+ $apiResource = new ApiResource()->withOperations(new Operations([
new Get(
name: 'get'
),
@@ -44,7 +44,7 @@ public function testFindGet() {
public function testReturnsNullForMissingOperation() {
// given
- $apiResource = (new ApiResource())->withOperations(new Operations([
+ $apiResource = new ApiResource()->withOperations(new Operations([
new Get(
name: 'get'
),
@@ -61,7 +61,7 @@ public function testReturnsNullForMissingOperation() {
public function testFindsFirstOperation() {
// given
- $apiResource = (new ApiResource())->withOperations(new Operations([
+ $apiResource = new ApiResource()->withOperations(new Operations([
new Get(
name: 'get1'
),
@@ -80,12 +80,12 @@ public function testFindsFirstOperation() {
public function testFindsOperationInMultipleResources() {
// given
- $apiResource1 = (new ApiResource())->withOperations(new Operations([
+ $apiResource1 = new ApiResource()->withOperations(new Operations([
new GetCollection(
name: 'get_collection'
),
]));
- $apiResource2 = (new ApiResource())->withOperations(new Operations([
+ $apiResource2 = new ApiResource()->withOperations(new Operations([
new Get(
name: 'get1'
),
@@ -105,7 +105,7 @@ public function testFindsOperationInMultipleResources() {
public function testFindGraphQlOperation() {
// given
- $apiResource = (new ApiResource())->withGraphQlOperations([
+ $apiResource = new ApiResource()->withGraphQlOperations([
new Query(name: 'query'),
new QueryCollection(name: 'queryCollection'),
]);
diff --git a/api/tests/Serializer/Denormalizer/InputFilterDenormalizerTest.php b/api/tests/Serializer/Denormalizer/InputFilterDenormalizerTest.php
index 53ead6b80b..7bdace7ac1 100644
--- a/api/tests/Serializer/Denormalizer/InputFilterDenormalizerTest.php
+++ b/api/tests/Serializer/Denormalizer/InputFilterDenormalizerTest.php
@@ -315,13 +315,6 @@ public function applyTo(array $data, string $propertyName): array {
}
class DummyEntity {
- #[Dummy]
- public $foo;
-
- // other attribute which is not an input filter
- #[Valid]
- public $bar;
-
#[AppendA(priority: 10)]
#[AppendB(priority: 0)]
public $ab;
@@ -339,10 +332,12 @@ class DummyEntity {
#[ORM\Embedded(class: 'EmbeddableEntity')]
public EmbeddableEntity $embeddableEntity;
- public function __construct($foo, $bar) {
- $this->foo = $foo;
- $this->bar = $bar;
- }
+ public function __construct(
+ #[Dummy]
+ public $foo,
+ #[Valid]
+ public $bar
+ ) {}
}
class RelatedEntity extends BaseEntity {
diff --git a/api/tests/Serializer/Normalizer/RelatedCollectionLinkNormalizerTest.php b/api/tests/Serializer/Normalizer/RelatedCollectionLinkNormalizerTest.php
index 32fbebbf2a..09d242ad6f 100644
--- a/api/tests/Serializer/Normalizer/RelatedCollectionLinkNormalizerTest.php
+++ b/api/tests/Serializer/Normalizer/RelatedCollectionLinkNormalizerTest.php
@@ -48,7 +48,7 @@ class RelatedCollectionLinkNormalizerTest extends TestCase {
private MockObject|PropertyAccessorInterface $propertyAccessor;
private EntityManagerInterface|MockObject $entityManager;
- private DateFilter|SearchFilterInterface|null $filterInstance;
+ private DateFilter|SearchFilterInterface|null $filterInstance = null;
protected function setUp(): void {
$filterLocatorMock = $this->createMock(ServiceLocator::class);
@@ -446,7 +446,7 @@ public function testNormalizeDoesntReplaceWhenMissingGetCollectionOperation() {
]));
$metadataCollection = new ResourceMetadataCollection('Dummy');
- $metadataCollection->append((new ApiResource())->withOperations(new Operations([new Get()])));
+ $metadataCollection->append(new ApiResource()->withOperations(new Operations([new Get()])));
$this->resourceMetadataCollectionFactoryMock->method('create')->willReturn($metadataCollection);
$this->mockGeneratedRoute();
@@ -484,7 +484,7 @@ protected function mockRelatedResourceMetadata($collectionOperationMetadata) {
$collectionOperationMetadata['name'] = '_api_/dummys{._format}_get_collection';
$metadataCollection = new ResourceMetadataCollection('Dummy');
- $metadataCollection->append((new ApiResource())->withOperations(new Operations([
+ $metadataCollection->append(new ApiResource()->withOperations(new Operations([
new GetCollection(
...$collectionOperationMetadata
),
@@ -531,14 +531,14 @@ protected function mockGeneratedRoute($generated = '/children?parent=%2Fparents%
class ParentEntity {
#[ORM\OneToMany(targetEntity: Child::class, mappedBy: 'parent')]
- private Collection $children;
+ private readonly Collection $children;
#[ORM\OneToOne(targetEntity: Child::class)]
- private ?Child $firstBorn;
+ private ?Child $firstBorn = null;
#[SerializedName('childrenWithSerializedName')]
#[ORM\OneToMany(targetEntity: Child::class, mappedBy: 'parent')]
- private Collection $renamedChildren;
+ private readonly Collection $renamedChildren;
public function getFilterValue(): string {
return '';
@@ -553,5 +553,5 @@ public function getRelatedEntities(): array {
#[ApiFilter(SearchFilter::class, properties: ['parent'])]
class Child {
#[ORM\ManyToOne(targetEntity: ParentEntity::class, inversedBy: 'children')]
- private ?ParentEntity $parent;
+ private ?ParentEntity $parent = null;
}
diff --git a/api/tests/Serializer/Normalizer/UriTemplateNormalizerTest.php b/api/tests/Serializer/Normalizer/UriTemplateNormalizerTest.php
index e788a5410d..21a4e46722 100644
--- a/api/tests/Serializer/Normalizer/UriTemplateNormalizerTest.php
+++ b/api/tests/Serializer/Normalizer/UriTemplateNormalizerTest.php
@@ -29,34 +29,17 @@ protected function setUp(): void {
$englishInflector = new EnglishInflector();
$urlGenerator = $this->createMock(UrlGeneratorInterface::class);
$urlGenerator->method('generate')->willReturnCallback(function (string $arg): string {
- switch ($arg) {
- case 'authentication_token':
- return '/authentication_token';
-
- case 'connect_google_start':
- return '/auth/google';
-
- case 'connect_pbsmidata_start':
- return '/auth/pbsmidata';
-
- case 'connect_cevidb_start':
- return '/auth/cevidb';
-
- case 'connect_jubladb_start':
- return '/auth/jubladb';
-
- case 'api_refresh_token':
- return '/token/refresh';
-
- case '_api_/auth/resend_activation{._format}_post':
- return '/auth/resend_activation';
-
- case '_api_/auth/reset_password{._format}_post':
- return '/auth/reset_password';
-
- default:
- return null;
- }
+ return match ($arg) {
+ 'authentication_token' => '/authentication_token',
+ 'connect_google_start' => '/auth/google',
+ 'connect_pbsmidata_start' => '/auth/pbsmidata',
+ 'connect_cevidb_start' => '/auth/cevidb',
+ 'connect_jubladb_start' => '/auth/jubladb',
+ 'api_refresh_token' => '/token/refresh',
+ '_api_/auth/resend_activation{._format}_post' => '/auth/resend_activation',
+ '_api_/auth/reset_password{._format}_post' => '/auth/reset_password',
+ default => null,
+ };
});
$this->uriTemplateNormalizer = new UriTemplateNormalizer(
diff --git a/api/tests/Service/MailServiceTest.php b/api/tests/Service/MailServiceTest.php
index 714dcb69cc..b1f48b26f2 100644
--- a/api/tests/Service/MailServiceTest.php
+++ b/api/tests/Service/MailServiceTest.php
@@ -10,6 +10,7 @@
use App\Service\MailService;
use PHPUnit\Framework\Attributes\DataProvider;
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
+use Symfony\Bundle\SecurityBundle\Security;
use Symfony\Component\Mailer\MailerInterface;
use Symfony\Contracts\Translation\TranslatorInterface;
use Twig\Environment;
@@ -23,6 +24,7 @@ class MailServiceTest extends KernelTestCase {
private Camp $camp;
private User $user;
+ private Security $security;
private MailService $mailer;
@@ -33,7 +35,15 @@ protected function setUp(): void {
$translator = self::getContainer()->get(TranslatorInterface::class);
$twigEnvironment = self::getContainer()->get(Environment::class);
- $this->mailer = new MailService($mailer, $translator, $twigEnvironment, 'frontend.example.com', 'sender@example.com', 'SenderName');
+ $this->security = $this->createMock(Security::class);
+ $profile = new Profile();
+ $profile->nickname = 'Linux';
+ $profile->email = 'sender@ecamp3.ch';
+ $user = new User();
+ $user->profile = $profile;
+ $this->security->method('getUser')->willReturn($user);
+
+ $this->mailer = new MailService($mailer, $translator, $twigEnvironment, 'frontend.example.com', 'sender@example.com', 'SenderName', $this->security);
$this->user = new User();
$profile = new Profile();
@@ -52,6 +62,7 @@ public function testSendInviteToCampMailDeChScout() {
self::assertEmailCount(1);
$mailerMessage = self::getMailerMessage(0);
self::assertEmailAddressContains($mailerMessage, 'To', self::INVITE_MAIL);
+ self::assertEmailAddressContains($mailerMessage, 'reply-to', 'sender@ecamp3.ch');
self::assertEmailHeaderSame($mailerMessage, 'subject', '[eCamp v3] Du wurdest ins Lager "some camp title" eingeladen');
self::assertEmailHtmlBodyContains($mailerMessage, $this->camp->title);
@@ -71,6 +82,7 @@ public function testSendInvitationMailDoesNotCrashForAllLanguages(string $langua
self::assertEmailCount(1);
$mailerMessage = self::getMailerMessage(0);
self::assertEmailAddressContains($mailerMessage, 'To', self::INVITE_MAIL);
+ self::assertEmailAddressContains($mailerMessage, 'reply-to', 'sender@ecamp3.ch');
self::assertEmailHtmlBodyContains($mailerMessage, $this->camp->title);
self::assertEmailHtmlBodyContains($mailerMessage, $this->user->getDisplayName());
diff --git a/api/tests/State/ProfileUpdateProcessorTest.php b/api/tests/State/ProfileUpdateProcessorTest.php
index a19d6c8cbc..56d5d8e392 100644
--- a/api/tests/State/ProfileUpdateProcessorTest.php
+++ b/api/tests/State/ProfileUpdateProcessorTest.php
@@ -56,7 +56,7 @@ public function testSetNewEmail() {
// given
$this->pwHasher->expects(self::once())
->method('hash')
- ->willReturnCallback(fn ($raw) => md5($raw))
+ ->willReturnCallback(md5(...))
;
$this->profile->newEmail = 'new@mail.com';
diff --git a/api/tests/State/ResetPasswordCreateProcessorTest.php b/api/tests/State/ResetPasswordCreateProcessorTest.php
index 547d25329a..8ad68bf37d 100644
--- a/api/tests/State/ResetPasswordCreateProcessorTest.php
+++ b/api/tests/State/ResetPasswordCreateProcessorTest.php
@@ -109,7 +109,7 @@ public function testCreateWithKnowneMailCreatesResetKey() {
$this->pwHasher->expects(self::once())
->method('hash')
- ->willReturnCallback(fn ($raw) => md5($raw))
+ ->willReturnCallback(md5(...))
;
$this->mailService->expects(self::once())
diff --git a/api/tests/State/ResetPasswordUpdateProcessorTest.php b/api/tests/State/ResetPasswordUpdateProcessorTest.php
index 8c6ccc1e5b..c7f17b912a 100644
--- a/api/tests/State/ResetPasswordUpdateProcessorTest.php
+++ b/api/tests/State/ResetPasswordUpdateProcessorTest.php
@@ -153,7 +153,7 @@ public function testUpdateWithCorrectResetKey() {
;
$this->pwHasher->expects(self::once())
->method('hash')
- ->willReturnCallback(fn ($raw) => md5($raw))
+ ->willReturnCallback(md5(...))
;
$this->resetPassword->id = base64_encode(self::EMAIL.'#myKey');
@@ -189,7 +189,7 @@ public function testUpdateWithCorrectResetKeyDoesNotChangeActivatedOrDeletedUser
;
$this->pwHasher->expects(self::once())
->method('hash')
- ->willReturnCallback(fn ($raw) => md5($raw))
+ ->willReturnCallback(md5(...))
;
$this->resetPassword->id = base64_encode(self::EMAIL.'#myKey');
diff --git a/api/tests/State/Util/AbstractPersistProcessorTest.php b/api/tests/State/Util/AbstractPersistProcessorTest.php
index 72f2a51cce..f01b9c6210 100644
--- a/api/tests/State/Util/AbstractPersistProcessorTest.php
+++ b/api/tests/State/Util/AbstractPersistProcessorTest.php
@@ -37,8 +37,8 @@ protected function setUp(): void {
$this->propertyChangeListener = PropertyChangeListener::of(
extractProperty: fn ($data) => $data->name,
- beforeAction: fn ($data) => $this->closure->call($data),
- afterAction: fn ($data) => $this->closure->call($data),
+ beforeAction: $this->closure->call(...),
+ afterAction: $this->closure->call(...),
);
$this->onBefore = $this->createMock(MockableClosure::class);
@@ -98,8 +98,8 @@ public function testNotCallPropertyChangeListenerIfDataWasNullBefore() {
$context = ['previous_data' => null];
$this->propertyChangeListener = PropertyChangeListener::of(
extractProperty: fn ($data) => $data->name,
- beforeAction: fn ($data) => $this->closure->call($data),
- afterAction: fn ($data) => $this->closure->call($data),
+ beforeAction: $this->closure->call(...),
+ afterAction: $this->closure->call(...),
);
$this->closure->expects(self::never())->method('call');
@@ -115,7 +115,7 @@ public function testThrowErrorIfExtractPropertyFails() {
$context = ['previous_data' => $toPersist];
$this->propertyChangeListener = PropertyChangeListener::of(
extractProperty: fn ($data) => $data->name,
- afterAction: fn ($data) => $this->closure->call($data)
+ afterAction: $this->closure->call(...)
);
$this->closure->expects(self::never())->method('call');
@@ -133,8 +133,8 @@ public function testNotCallPropertyChangeListenerIfPropertyDidNotChange() {
$context = ['previous_data' => $toPersist];
$this->propertyChangeListener = PropertyChangeListener::of(
extractProperty: fn ($data) => $data->name,
- beforeAction: fn ($data) => $this->closure->call($data),
- afterAction: fn ($data) => $this->closure->call($data),
+ beforeAction: $this->closure->call(...),
+ afterAction: $this->closure->call(...),
);
$this->closure->expects(self::never())->method('call');
@@ -154,8 +154,8 @@ public function testCallPropertyChangeListenerIfPropertyDidChange() {
$this->propertyChangeListener = PropertyChangeListener::of(
extractProperty: fn ($data) => $data->name,
- beforeAction: fn ($data) => $this->closure->call($data),
- afterAction: fn ($data) => $this->closure->call($data),
+ beforeAction: $this->closure->call(...),
+ afterAction: $this->closure->call(...),
);
$this->decoratedProcessor->expects(self::once())
->method('process')
@@ -181,6 +181,7 @@ public function __construct(
parent::__construct($decorated, $propertyChangeListeners);
}
+ #[\Override]
public function onBefore($data, Operation $operation, array $uriVariables = [], array $context = []) {
// @noinspection PhpMethodParametersCountMismatchInspection
return $this->onBefore->call($data, $operation, $uriVariables, $context);
diff --git a/api/tests/Types/Doctrine/UTCDateTimeTypeTest.php b/api/tests/Types/Doctrine/UTCDateTimeTypeTest.php
index c44bcfd650..f53276f310 100644
--- a/api/tests/Types/Doctrine/UTCDateTimeTypeTest.php
+++ b/api/tests/Types/Doctrine/UTCDateTimeTypeTest.php
@@ -13,6 +13,7 @@
* @internal
*/
class UTCDateTimeTypeTest extends BaseDateTypeTestCase {
+ #[\Override]
protected function setUp(): void {
$this->type = new UTCDateTimeType();
diff --git a/api/tests/Types/Doctrine/UTCDateTypeTest.php b/api/tests/Types/Doctrine/UTCDateTypeTest.php
index ed733e7d4b..065c030e39 100644
--- a/api/tests/Types/Doctrine/UTCDateTypeTest.php
+++ b/api/tests/Types/Doctrine/UTCDateTypeTest.php
@@ -13,6 +13,7 @@
* @internal
*/
class UTCDateTypeTest extends BaseDateTypeTestCase {
+ #[\Override]
protected function setUp(): void {
$this->type = new UTCDateType();
diff --git a/api/tests/Validator/AllowTransitions/AssertAllowTransitionTest.php b/api/tests/Validator/AllowTransitions/AssertAllowTransitionTest.php
index 70c724d1de..1e78f26e49 100644
--- a/api/tests/Validator/AllowTransitions/AssertAllowTransitionTest.php
+++ b/api/tests/Validator/AllowTransitions/AssertAllowTransitionTest.php
@@ -18,7 +18,7 @@
* @internal
*/
class AssertAllowTransitionTest extends ConstraintValidatorTestCase {
- private const TRANSITIONS = [
+ private const array TRANSITIONS = [
['from' => '1', 'to' => ['2', '3']],
['from' => '2', 'to' => ['3']],
['from' => '3', 'to' => ['1']],
@@ -26,6 +26,7 @@ class AssertAllowTransitionTest extends ConstraintValidatorTestCase {
private MockObject|RequestStack $requestStack;
private TestClass $before;
+ #[\Override]
protected function setUp(): void {
$this->before = new TestClass('2');
@@ -44,7 +45,7 @@ public function testNotValidWhenPreviousValueIsNotInFrom() {
$this->validator->validate($testClass->a, new AssertAllowTransitions(self::TRANSITIONS));
- $allFrom = (new ArrayCollection(self::TRANSITIONS))->map(fn ($elem) => $elem['from'])->toArray();
+ $allFrom = new ArrayCollection(self::TRANSITIONS)->map(fn ($elem) => $elem['from'])->toArray();
$this->buildViolation(AssertAllowTransitionsValidator::FROM_VIOLATION_MESSAGE)
->setParameter('{{ from }}', join(',', $allFrom))
->setParameter('{{ previousValue }}', $this->before->a)
@@ -107,16 +108,14 @@ protected function createValidator(): AssertAllowTransitionsValidator {
}
class TestClass {
- #[AssertAllowTransitions([
- ['from' => '1', 'to' => ['2', '3']],
- ['from' => '2', 'to' => ['3']],
- ['from' => '3', 'to' => ['1']],
- ])]
- public string $a;
-
- public function __construct($a) {
- $this->a = $a;
- }
+ public function __construct(
+ #[AssertAllowTransitions([
+ ['from' => '1', 'to' => ['2', '3']],
+ ['from' => '2', 'to' => ['3']],
+ ['from' => '3', 'to' => ['1']],
+ ])]
+ public string $a
+ ) {}
public function setA(string $a): TestClass {
$this->a = $a;
diff --git a/api/tests/Validator/AssertBelongsToSameCampValidatorTest.php b/api/tests/Validator/AssertBelongsToSameCampValidatorTest.php
index 3f5a492104..63e2a25198 100644
--- a/api/tests/Validator/AssertBelongsToSameCampValidatorTest.php
+++ b/api/tests/Validator/AssertBelongsToSameCampValidatorTest.php
@@ -175,7 +175,7 @@ public function getCamp(): ?Camp {
class ParentTestClass extends BaseEntity implements BelongsToCampInterface {
#[AssertBelongsToSameCamp]
- public ?ChildTestClass $child;
+ public ?ChildTestClass $child = null;
public function __construct(public Camp $camp) {}
diff --git a/api/tests/Validator/AssertEitherIsNullValidatorTest.php b/api/tests/Validator/AssertEitherIsNullValidatorTest.php
index 58d0bba840..ae33470bef 100644
--- a/api/tests/Validator/AssertEitherIsNullValidatorTest.php
+++ b/api/tests/Validator/AssertEitherIsNullValidatorTest.php
@@ -85,13 +85,9 @@ protected function createValidator(): ConstraintValidatorInterface {
}
class AssertEitherIsNullValidatorTestClass {
- #[AssertEitherIsNull(other: 'b')]
- public $a;
-
- public $b;
-
- public function __construct($a, $b) {
- $this->a = $a;
- $this->b = $b;
- }
+ public function __construct(
+ #[AssertEitherIsNull(other: 'b')]
+ public $a,
+ public $b
+ ) {}
}
diff --git a/api/tests/Validator/AssertJsonSchemaValidatorTest.php b/api/tests/Validator/AssertJsonSchemaValidatorTest.php
index f8d16eb1e1..2388cfbb83 100644
--- a/api/tests/Validator/AssertJsonSchemaValidatorTest.php
+++ b/api/tests/Validator/AssertJsonSchemaValidatorTest.php
@@ -15,9 +15,9 @@
* @internal
*/
class AssertJsonSchemaValidatorTest extends ConstraintValidatorTestCase {
- private const message = "Provided JSON doesn't match required schema ({{ schemaError }}).";
+ private const string message = "Provided JSON doesn't match required schema ({{ schemaError }}).";
- private const testSchema = [
+ private const array testSchema = [
'type' => 'object',
'properties' => [
'id' => [
diff --git a/api/tests/Validator/AssertLastCollectionItemIsNotDeletedValidatorTest.php b/api/tests/Validator/AssertLastCollectionItemIsNotDeletedValidatorTest.php
index 5a58a476e3..756a125f72 100644
--- a/api/tests/Validator/AssertLastCollectionItemIsNotDeletedValidatorTest.php
+++ b/api/tests/Validator/AssertLastCollectionItemIsNotDeletedValidatorTest.php
@@ -107,10 +107,8 @@ protected function createValidator(): ConstraintValidatorInterface {
}
class AssertLastCollectionItemNotDeletedValidatorTestClass {
- #[AssertLastCollectionItemIsNotDeleted()]
- public $a;
-
- public function __construct($a) {
- $this->a = $a;
- }
+ public function __construct(
+ #[AssertLastCollectionItemIsNotDeleted()]
+ public $a
+ ) {}
}
diff --git a/api/tests/Validator/ColumnLayout/AssertColumWidthsSumTo12ValidatorTest.php b/api/tests/Validator/ColumnLayout/AssertColumWidthsSumTo12ValidatorTest.php
index caaf4fa0c9..9fd490fac2 100644
--- a/api/tests/Validator/ColumnLayout/AssertColumWidthsSumTo12ValidatorTest.php
+++ b/api/tests/Validator/ColumnLayout/AssertColumWidthsSumTo12ValidatorTest.php
@@ -15,7 +15,7 @@
* @internal
*/
class AssertColumWidthsSumTo12ValidatorTest extends ConstraintValidatorTestCase {
- private const message = 'Expected column widths to sum to 12, but got a sum of {{ sum }}';
+ private const string message = 'Expected column widths to sum to 12, but got a sum of {{ sum }}';
private MockObject|RequestStack $requestStack;
diff --git a/api/tests/Validator/ColumnLayout/AssertNoOrphanChildrenValidatorTest.php b/api/tests/Validator/ColumnLayout/AssertNoOrphanChildrenValidatorTest.php
index 01f23e4ec7..0f76858c2a 100644
--- a/api/tests/Validator/ColumnLayout/AssertNoOrphanChildrenValidatorTest.php
+++ b/api/tests/Validator/ColumnLayout/AssertNoOrphanChildrenValidatorTest.php
@@ -16,7 +16,7 @@
* @internal
*/
class AssertNoOrphanChildrenValidatorTest extends ConstraintValidatorTestCase {
- private const message = 'The following slots still have child contents and should be present in the columns: {{ slots }}';
+ private const string message = 'The following slots still have child contents and should be present in the columns: {{ slots }}';
private MockObject|RequestStack $requestStack;
diff --git a/api/tests/Validator/ContentNode/AssertSlotSupportedByParentValidatorTest.php b/api/tests/Validator/ContentNode/AssertSlotSupportedByParentValidatorTest.php
index 020e7494bc..e359ae21e1 100644
--- a/api/tests/Validator/ContentNode/AssertSlotSupportedByParentValidatorTest.php
+++ b/api/tests/Validator/ContentNode/AssertSlotSupportedByParentValidatorTest.php
@@ -109,6 +109,7 @@ public function testExpectsContentNodeAsObject() {
$this->validator->validate(null, new AssertSlotSupportedByParent());
}
+ #[\Override]
protected function createContext(): ExecutionContext {
$this->parent = new ColumnLayout();
$this->parent->setData([
diff --git a/api/tests/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidatorTest.php b/api/tests/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidatorTest.php
index c7ac0883bb..7748c0fb88 100644
--- a/api/tests/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidatorTest.php
+++ b/api/tests/Validator/Period/AssertNotOverlappingWithOtherPeriodsValidatorTest.php
@@ -23,6 +23,7 @@ class AssertNotOverlappingWithOtherPeriodsValidatorTest extends ConstraintValida
private \DateTime $period3End;
+ #[\Override]
protected function setUp(): void {
parent::setUp();
$this->period1Start = new \DateTime('2022-01-01');
diff --git a/api/tests/bootstrap.php b/api/tests/bootstrap.php
index b9d732f97b..0125a136fe 100644
--- a/api/tests/bootstrap.php
+++ b/api/tests/bootstrap.php
@@ -6,7 +6,7 @@
require dirname(__DIR__).'/vendor/autoload.php';
if (method_exists(Dotenv::class, 'bootEnv')) {
- (new Dotenv())->bootEnv(dirname(__DIR__).'/.env');
+ new Dotenv()->bootEnv(dirname(__DIR__).'/.env');
}
if ($_SERVER['APP_DEBUG']) {
diff --git a/docker-compose.yml b/docker-compose.yml
index 005d8c34fd..62db7db9f3 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,6 +1,6 @@
services:
frontend:
- image: node:24.10.0
+ image: node:24.11.0
container_name: 'ecamp3-frontend'
ports:
- '9229:9229' # jest debug
@@ -53,6 +53,7 @@ services:
timeout: 3s
retries: 3
start_period: 30s
+ restart: on-failure
extra_hosts:
- 'host.docker.internal:host-gateway'
@@ -80,7 +81,7 @@ services:
command: varnishncsa
pdf:
- image: node:24.10.0
+ image: node:24.11.0
container_name: 'ecamp3-pdf'
stdin_open: true
tty: true
@@ -100,7 +101,7 @@ services:
- CI=${CI}
print:
- image: node:24.10.0
+ image: node:24.11.0
container_name: 'ecamp3-print'
user: ${USER_ID:-1000}
volumes:
@@ -169,7 +170,7 @@ services:
restart: on-failure
browserless:
- image: ghcr.io/browserless/chrome:v2.34.1
+ image: ghcr.io/browserless/chrome:v2.38.2
container_name: 'ecamp3-browserless'
ports:
- '3010:3000'
@@ -181,7 +182,7 @@ services:
- ENABLE_DEBUGGER=false
e2e:
- image: cypress/included:15.4.0@sha256:2039347f99ef06ba66f8365361b7e869b7ba00e5d9437958f1df4c499909ec14
+ image: cypress/included:15.6.0@sha256:46bb4de6756baa895c41c671a0538cffea9e93300313e343138101048585d637
profiles: ['e2e']
container_name: 'ecamp3-e2e'
environment:
@@ -211,7 +212,7 @@ services:
stop_signal: SIGKILL
translation:
- image: node:24.10.0
+ image: node:24.11.0
profiles: ['translation']
container_name: 'ecamp3-translation'
volumes:
diff --git a/e2e/package-lock.json b/e2e/package-lock.json
index acf543b1ae..0646664bbc 100644
--- a/e2e/package-lock.json
+++ b/e2e/package-lock.json
@@ -6,18 +6,18 @@
"": {
"name": "@ecamp3/e2e",
"devDependencies": {
- "@babel/eslint-parser": "7.28.4",
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
- "cypress": "15.5.0",
+ "@babel/eslint-parser": "7.28.5",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
+ "cypress": "15.6.0",
"cypress-terminal-report": "7.3.3",
"cypress-wait-until": "3.0.2",
- "eslint": "9.38.0",
+ "eslint": "9.39.1",
"eslint-config-prettier": "10.1.8",
"eslint-plugin-cypress": "5.2.0",
"eslint-plugin-prettier": "5.5.4",
- "globals": "16.4.0",
- "pdfjs-dist": "5.4.296",
+ "globals": "16.5.0",
+ "pdfjs-dist": "5.4.394",
"prettier": "3.6.2"
}
},
@@ -79,9 +79,9 @@
}
},
"node_modules/@babel/eslint-parser": {
- "version": "7.28.4",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.4.tgz",
- "integrity": "sha512-Aa+yDiH87980jR6zvRfFuCR1+dLb00vBydhTL+zI992Rz/wQhSvuxjmOOuJOgO3XmakO6RykRGD2S1mq1AtgHA==",
+ "version": "7.28.5",
+ "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.5.tgz",
+ "integrity": "sha512-fcdRcWahONYo+JRnJg1/AekOacGvKx12Gu0qXJXFi2WBqQA1i7+O5PaxRB7kxE/Op94dExnCiiar6T09pvdHpA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -375,13 +375,13 @@
}
},
"node_modules/@eslint/compat": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.0.tgz",
- "integrity": "sha512-DEzm5dKeDBPm3r08Ixli/0cmxr8LkRdwxMRUIJBlSCpAwSrvFEJpVBzV+66JhDxiaqKxnRzCXhtiMiczF7Hglg==",
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.1.tgz",
+ "integrity": "sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -411,22 +411,22 @@
}
},
"node_modules/@eslint/config-helpers": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.1.tgz",
- "integrity": "sha512-csZAzkNhsgwb0I/UAV6/RGFTbiakPCf0ZrGmrIxQpYvGZ00PhTkSnyKNolphgIvmnJeGw6rcGVEXfTzUnFuEvw==",
+ "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": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@eslint/core": {
- "version": "0.16.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.16.0.tgz",
- "integrity": "sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==",
+ "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": {
@@ -474,9 +474,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.38.0.tgz",
- "integrity": "sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz",
+ "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -497,13 +497,13 @@
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.0.tgz",
- "integrity": "sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==",
+ "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": {
- "@eslint/core": "^0.16.0",
+ "@eslint/core": "^0.17.0",
"levn": "^0.4.1"
},
"engines": {
@@ -613,9 +613,9 @@
}
},
"node_modules/@napi-rs/canvas": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.80.tgz",
- "integrity": "sha512-DxuT1ClnIPts1kQx8FBmkk4BQDTfI5kIzywAaMjQSXfNnra5UFU9PwurXrl+Je3bJ6BGsp/zmshVVFbCmyI+ww==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas/-/canvas-0.1.82.tgz",
+ "integrity": "sha512-FGjyUBoF0sl1EenSiE4UV2WYu76q6F9GSYedq5EiOCOyGYoQ/Owulcv6rd7v/tWOpljDDtefXXIaOCJrVKem4w==",
"dev": true,
"license": "MIT",
"optional": true,
@@ -626,22 +626,22 @@
"node": ">= 10"
},
"optionalDependencies": {
- "@napi-rs/canvas-android-arm64": "0.1.80",
- "@napi-rs/canvas-darwin-arm64": "0.1.80",
- "@napi-rs/canvas-darwin-x64": "0.1.80",
- "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.80",
- "@napi-rs/canvas-linux-arm64-gnu": "0.1.80",
- "@napi-rs/canvas-linux-arm64-musl": "0.1.80",
- "@napi-rs/canvas-linux-riscv64-gnu": "0.1.80",
- "@napi-rs/canvas-linux-x64-gnu": "0.1.80",
- "@napi-rs/canvas-linux-x64-musl": "0.1.80",
- "@napi-rs/canvas-win32-x64-msvc": "0.1.80"
+ "@napi-rs/canvas-android-arm64": "0.1.82",
+ "@napi-rs/canvas-darwin-arm64": "0.1.82",
+ "@napi-rs/canvas-darwin-x64": "0.1.82",
+ "@napi-rs/canvas-linux-arm-gnueabihf": "0.1.82",
+ "@napi-rs/canvas-linux-arm64-gnu": "0.1.82",
+ "@napi-rs/canvas-linux-arm64-musl": "0.1.82",
+ "@napi-rs/canvas-linux-riscv64-gnu": "0.1.82",
+ "@napi-rs/canvas-linux-x64-gnu": "0.1.82",
+ "@napi-rs/canvas-linux-x64-musl": "0.1.82",
+ "@napi-rs/canvas-win32-x64-msvc": "0.1.82"
}
},
"node_modules/@napi-rs/canvas-android-arm64": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.80.tgz",
- "integrity": "sha512-sk7xhN/MoXeuExlggf91pNziBxLPVUqF2CAVnB57KLG/pz7+U5TKG8eXdc3pm0d7Od0WreB6ZKLj37sX9muGOQ==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-android-arm64/-/canvas-android-arm64-0.1.82.tgz",
+ "integrity": "sha512-bvZhN0iI54ouaQOrgJV96H2q7J3ZoufnHf4E1fUaERwW29Rz4rgicohnAg4venwBJZYjGl5Yl3CGmlAl1LZowQ==",
"cpu": [
"arm64"
],
@@ -656,9 +656,9 @@
}
},
"node_modules/@napi-rs/canvas-darwin-arm64": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.80.tgz",
- "integrity": "sha512-O64APRTXRUiAz0P8gErkfEr3lipLJgM6pjATwavZ22ebhjYl/SUbpgM0xcWPQBNMP1n29afAC/Us5PX1vg+JNQ==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-arm64/-/canvas-darwin-arm64-0.1.82.tgz",
+ "integrity": "sha512-InuBHKCyuFqhNwNr4gpqazo5Xp6ltKflqOLiROn4hqAS8u21xAHyYCJRgHwd+a5NKmutFTaRWeUIT/vxWbU/iw==",
"cpu": [
"arm64"
],
@@ -673,9 +673,9 @@
}
},
"node_modules/@napi-rs/canvas-darwin-x64": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.80.tgz",
- "integrity": "sha512-FqqSU7qFce0Cp3pwnTjVkKjjOtxMqRe6lmINxpIZYaZNnVI0H5FtsaraZJ36SiTHNjZlUB69/HhxNDT1Aaa9vA==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-darwin-x64/-/canvas-darwin-x64-0.1.82.tgz",
+ "integrity": "sha512-aQGV5Ynn96onSXcuvYb2y7TRXD/t4CL2EGmnGqvLyeJX1JLSNisKQlWN/1bPDDXymZYSdUqbXehj5qzBlOx+RQ==",
"cpu": [
"x64"
],
@@ -690,9 +690,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-arm-gnueabihf": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.80.tgz",
- "integrity": "sha512-eyWz0ddBDQc7/JbAtY4OtZ5SpK8tR4JsCYEZjCE3dI8pqoWUC8oMwYSBGCYfsx2w47cQgQCgMVRVTFiiO38hHQ==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm-gnueabihf/-/canvas-linux-arm-gnueabihf-0.1.82.tgz",
+ "integrity": "sha512-YIUpmHWeHGGRhWitT1KJkgj/JPXPfc9ox8oUoyaGPxolLGPp5AxJkq8wIg8CdFGtutget968dtwmx71m8o3h5g==",
"cpu": [
"arm"
],
@@ -707,9 +707,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-arm64-gnu": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.80.tgz",
- "integrity": "sha512-qwA63t8A86bnxhuA/GwOkK3jvb+XTQaTiVML0vAWoHyoZYTjNs7BzoOONDgTnNtr8/yHrq64XXzUoLqDzU+Uuw==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-gnu/-/canvas-linux-arm64-gnu-0.1.82.tgz",
+ "integrity": "sha512-AwLzwLBgmvk7kWeUgItOUor/QyG31xqtD26w1tLpf4yE0hiXTGp23yc669aawjB6FzgIkjh1NKaNS52B7/qEBQ==",
"cpu": [
"arm64"
],
@@ -724,9 +724,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-arm64-musl": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.80.tgz",
- "integrity": "sha512-1XbCOz/ymhj24lFaIXtWnwv/6eFHXDrjP0jYkc6iHQ9q8oXKzUX1Lc6bu+wuGiLhGh2GS/2JlfORC5ZcXimRcg==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-arm64-musl/-/canvas-linux-arm64-musl-0.1.82.tgz",
+ "integrity": "sha512-moZWuqepAwWBffdF4JDadt8TgBD02iMhG6I1FHZf8xO20AsIp9rB+p0B8Zma2h2vAF/YMjeFCDmW5un6+zZz9g==",
"cpu": [
"arm64"
],
@@ -741,9 +741,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-riscv64-gnu": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.80.tgz",
- "integrity": "sha512-XTzR125w5ZMs0lJcxRlS1K3P5RaZ9RmUsPtd1uGt+EfDyYMu4c6SEROYsxyatbbu/2+lPe7MPHOO/0a0x7L/gw==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-riscv64-gnu/-/canvas-linux-riscv64-gnu-0.1.82.tgz",
+ "integrity": "sha512-w9++2df2kG9eC9LWYIHIlMLuhIrKGQYfUxs97CwgxYjITeFakIRazI9LYWgVzEc98QZ9x9GQvlicFsrROV59MQ==",
"cpu": [
"riscv64"
],
@@ -758,9 +758,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-x64-gnu": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.80.tgz",
- "integrity": "sha512-BeXAmhKg1kX3UCrJsYbdQd3hIMDH/K6HnP/pG2LuITaXhXBiNdh//TVVVVCBbJzVQaV5gK/4ZOCMrQW9mvuTqA==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-gnu/-/canvas-linux-x64-gnu-0.1.82.tgz",
+ "integrity": "sha512-lZulOPwrRi6hEg/17CaqdwWEUfOlIJuhXxincx1aVzsVOCmyHf+xFq4i6liJl1P+x2v6Iz2Z/H5zHvXJCC7Bwg==",
"cpu": [
"x64"
],
@@ -775,9 +775,9 @@
}
},
"node_modules/@napi-rs/canvas-linux-x64-musl": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.80.tgz",
- "integrity": "sha512-x0XvZWdHbkgdgucJsRxprX/4o4sEed7qo9rCQA9ugiS9qE2QvP0RIiEugtZhfLH3cyI+jIRFJHV4Fuz+1BHHMg==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-linux-x64-musl/-/canvas-linux-x64-musl-0.1.82.tgz",
+ "integrity": "sha512-Be9Wf5RTv1w6GXlTph55K3PH3vsAh1Ax4T1FQY1UYM0QfD0yrwGdnJ8/fhqw7dEgMjd59zIbjJQC8C3msbGn5g==",
"cpu": [
"x64"
],
@@ -792,9 +792,9 @@
}
},
"node_modules/@napi-rs/canvas-win32-x64-msvc": {
- "version": "0.1.80",
- "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.80.tgz",
- "integrity": "sha512-Z8jPsM6df5V8B1HrCHB05+bDiCxjE9QA//3YrkKIdVDEwn5RKaqOxCJDRJkl48cJbylcrJbW4HxZbTte8juuPg==",
+ "version": "0.1.82",
+ "resolved": "https://registry.npmjs.org/@napi-rs/canvas-win32-x64-msvc/-/canvas-win32-x64-msvc-0.1.82.tgz",
+ "integrity": "sha512-LN/i8VrvxTDmEEK1c10z2cdOTkWT76LlTGtyZe5Kr1sqoSomKeExAjbilnu1+oee5lZUgS5yfZ2LNlVhCeARuw==",
"cpu": [
"x64"
],
@@ -846,9 +846,9 @@
"license": "MIT"
},
"node_modules/@types/node": {
- "version": "24.9.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.1.tgz",
- "integrity": "sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==",
+ "version": "24.10.1",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
+ "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
"dev": true,
"license": "MIT",
"optional": true,
@@ -1129,9 +1129,9 @@
"license": "MIT"
},
"node_modules/baseline-browser-mapping": {
- "version": "2.8.20",
- "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.20.tgz",
- "integrity": "sha512-JMWsdF+O8Orq3EMukbUN1QfbLK9mX2CkUmQBcW2T0s8OmdAUL5LLM/6wFwSrqXzlXB13yhyK9gTKS1rIizOduQ==",
+ "version": "2.8.27",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.27.tgz",
+ "integrity": "sha512-2CXFpkjVnY2FT+B6GrSYxzYf65BJWEqz5tIRHCvNsZZ2F3CmsCB37h8SpYgKG7y9C4YAeTipIPWG7EmFmhAeXA==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -1174,9 +1174,9 @@
}
},
"node_modules/browserslist": {
- "version": "4.27.0",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.27.0.tgz",
- "integrity": "sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw==",
+ "version": "4.28.0",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.0.tgz",
+ "integrity": "sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==",
"dev": true,
"funding": [
{
@@ -1195,10 +1195,10 @@
"license": "MIT",
"peer": true,
"dependencies": {
- "baseline-browser-mapping": "^2.8.19",
- "caniuse-lite": "^1.0.30001751",
- "electron-to-chromium": "^1.5.238",
- "node-releases": "^2.0.26",
+ "baseline-browser-mapping": "^2.8.25",
+ "caniuse-lite": "^1.0.30001754",
+ "electron-to-chromium": "^1.5.249",
+ "node-releases": "^2.0.27",
"update-browserslist-db": "^1.1.4"
},
"bin": {
@@ -1295,9 +1295,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001751",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001751.tgz",
- "integrity": "sha512-A0QJhug0Ly64Ii3eIqHu5X51ebln3k4yTUkY1j8drqpWHVreg/VLijN48cZ1bYPiqOQuqpkIKnzr/Ul8V+p6Cw==",
+ "version": "1.0.30001754",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz",
+ "integrity": "sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==",
"dev": true,
"funding": [
{
@@ -1539,9 +1539,9 @@
}
},
"node_modules/cypress": {
- "version": "15.5.0",
- "resolved": "https://registry.npmjs.org/cypress/-/cypress-15.5.0.tgz",
- "integrity": "sha512-7jXBsh5hTfjxr9QQONC2IbdTj0nxSyU8x4eiarMZBzXzCj3pedKviUx8JnLcE4vL8e0TsOzp70WSLRORjEssRA==",
+ "version": "15.6.0",
+ "resolved": "https://registry.npmjs.org/cypress/-/cypress-15.6.0.tgz",
+ "integrity": "sha512-Vqo66GG1vpxZ7H1oDX9umfmzA3nF7Wy80QAc3VjwPREO5zTY4d1xfQFNPpOWleQl9vpdmR2z1liliOcYlRX6rQ==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -1649,9 +1649,9 @@
}
},
"node_modules/dayjs": {
- "version": "1.11.18",
- "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.18.tgz",
- "integrity": "sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA==",
+ "version": "1.11.19",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.19.tgz",
+ "integrity": "sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==",
"dev": true,
"license": "MIT"
},
@@ -1717,9 +1717,9 @@
}
},
"node_modules/electron-to-chromium": {
- "version": "1.5.239",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.239.tgz",
- "integrity": "sha512-1y5w0Zsq39MSPmEjHjbizvhYoTaulVtivpxkp5q5kaPmQtsK6/2nvAzGRxNMS9DoYySp9PkW0MAQDwU1m764mg==",
+ "version": "1.5.250",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.250.tgz",
+ "integrity": "sha512-/5UMj9IiGDMOFBnN4i7/Ry5onJrAGSbOGo3s9FEKmwobGq6xw832ccET0CE3CkkMBZ8GJSlUIesZofpyurqDXw==",
"dev": true,
"license": "ISC"
},
@@ -1828,9 +1828,9 @@
}
},
"node_modules/eslint": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.38.0.tgz",
- "integrity": "sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz",
+ "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -1838,11 +1838,11 @@
"@eslint-community/eslint-utils": "^4.8.0",
"@eslint-community/regexpp": "^4.12.1",
"@eslint/config-array": "^0.21.1",
- "@eslint/config-helpers": "^0.4.1",
- "@eslint/core": "^0.16.0",
+ "@eslint/config-helpers": "^0.4.2",
+ "@eslint/core": "^0.17.0",
"@eslint/eslintrc": "^3.3.1",
- "@eslint/js": "9.38.0",
- "@eslint/plugin-kit": "^0.4.0",
+ "@eslint/js": "9.39.1",
+ "@eslint/plugin-kit": "^0.4.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.4.2",
@@ -2465,9 +2465,9 @@
}
},
"node_modules/globals": {
- "version": "16.4.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz",
- "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==",
+ "version": "16.5.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz",
+ "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -2784,9 +2784,9 @@
"license": "MIT"
},
"node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -3149,9 +3149,9 @@
"license": "MIT"
},
"node_modules/node-releases": {
- "version": "2.0.26",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.26.tgz",
- "integrity": "sha512-S2M9YimhSjBSvYnlr5/+umAnPHE++ODwt5e2Ij6FoX45HA/s4vHdkDx1eax2pAPeAOqu4s9b7ppahsyEFdVqQA==",
+ "version": "2.0.27",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz",
+ "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==",
"dev": true,
"license": "MIT"
},
@@ -3314,16 +3314,16 @@
}
},
"node_modules/pdfjs-dist": {
- "version": "5.4.296",
- "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-5.4.296.tgz",
- "integrity": "sha512-DlOzet0HO7OEnmUmB6wWGJrrdvbyJKftI1bhMitK7O2N8W2gc757yyYBbINy9IDafXAV9wmKr9t7xsTaNKRG5Q==",
+ "version": "5.4.394",
+ "resolved": "https://registry.npmjs.org/pdfjs-dist/-/pdfjs-dist-5.4.394.tgz",
+ "integrity": "sha512-9ariAYGqUJzx+V/1W4jHyiyCep6IZALmDzoaTLZ6VNu8q9LWi1/ukhzHgE2Xsx96AZi0mbZuK4/ttIbqSbLypg==",
"dev": true,
"license": "Apache-2.0",
"engines": {
"node": ">=20.16.0 || >=22.3.0"
},
"optionalDependencies": {
- "@napi-rs/canvas": "^0.1.80"
+ "@napi-rs/canvas": "^0.1.81"
}
},
"node_modules/pend": {
diff --git a/e2e/package.json b/e2e/package.json
index abd4fe6682..5e7c8a18f0 100644
--- a/e2e/package.json
+++ b/e2e/package.json
@@ -12,18 +12,18 @@
"lint:check:prettier": "prettier --check --ignore-path .gitignore **/*.{js,mjs,json,md}"
},
"devDependencies": {
- "@babel/eslint-parser": "7.28.4",
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
- "cypress": "15.5.0",
+ "@babel/eslint-parser": "7.28.5",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
+ "cypress": "15.6.0",
"cypress-terminal-report": "7.3.3",
"cypress-wait-until": "3.0.2",
- "eslint": "9.38.0",
+ "eslint": "9.39.1",
"eslint-config-prettier": "10.1.8",
"eslint-plugin-cypress": "5.2.0",
"eslint-plugin-prettier": "5.5.4",
- "globals": "16.4.0",
- "pdfjs-dist": "5.4.296",
+ "globals": "16.5.0",
+ "pdfjs-dist": "5.4.394",
"prettier": "3.6.2"
},
"overrides": {
diff --git a/pdf/package-lock.json b/pdf/package-lock.json
index 331ecc79e6..8e2206f051 100644
--- a/pdf/package-lock.json
+++ b/pdf/package-lock.json
@@ -6,36 +6,36 @@
"": {
"name": "@ecamp3/client-pdf",
"dependencies": {
- "@vue/runtime-core": "3.5.22",
+ "@vue/runtime-core": "3.5.24",
"html-entities": "2.6.0",
"html-parse-stringify": "3.0.1"
},
"devDependencies": {
- "@babel/eslint-parser": "7.28.4",
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
+ "@babel/eslint-parser": "7.28.5",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
"@intlify/core": "11.1.12",
- "@rushstack/eslint-patch": "1.14.0",
+ "@rushstack/eslint-patch": "1.14.1",
"@vitejs/plugin-vue": "6.0.1",
"@vitest/coverage-v8": "3.2.4",
"@vue/babel-preset-app": "5.0.9",
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-sfc": "3.5.22",
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-sfc": "3.5.24",
"@vue/eslint-config-prettier": "10.2.0",
- "@vue/runtime-dom": "3.5.22",
- "@vue/server-renderer": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@vue/runtime-dom": "3.5.24",
+ "@vue/server-renderer": "3.5.24",
+ "@vue/shared": "3.5.24",
"@vue/test-utils": "2.4.6",
"css": "3.0.0",
- "dayjs": "1.11.18",
- "eslint": "9.38.0",
+ "dayjs": "1.11.19",
+ "eslint": "9.39.1",
"eslint-plugin-local-rules": "3.0.2",
"eslint-plugin-vue": "10.5.1",
- "globals": "16.4.0",
- "jsdom": "27.0.1",
+ "globals": "16.5.0",
+ "jsdom": "27.1.0",
"prettier": "3.6.2",
"url-template": "3.1.1",
- "vite": "7.1.11",
+ "vite": "7.2.2",
"vitest": "3.2.4"
},
"peerDependencies": {
@@ -48,6 +48,13 @@
"runes": "0.4.3"
}
},
+ "node_modules/@acemir/cssom": {
+ "version": "0.9.23",
+ "resolved": "https://registry.npmjs.org/@acemir/cssom/-/cssom-0.9.23.tgz",
+ "integrity": "sha512-2kJ1HxBKzPLbmhZpxBiTZggjtgCwKg1ma5RHShxvd6zgqhDEdEkzpiwe7jLkI2p2BrZvFCXIihdoMkl1H39VnA==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@ampproject/remapping": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
@@ -87,9 +94,9 @@
}
},
"node_modules/@asamuzakjp/dom-selector": {
- "version": "6.7.2",
- "resolved": "https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-6.7.2.tgz",
- "integrity": "sha512-ccKogJI+0aiDhOahdjANIc9SDixSud1gbwdVrhn7kMopAtLXqsz9MKmQQtIl6Y5aC2IYq+j4dz/oedL2AVMmVQ==",
+ "version": "6.7.4",
+ "resolved": "https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-6.7.4.tgz",
+ "integrity": "sha512-buQDjkm+wDPXd6c13534URWZqbz0RP5PAhXZ+LIoa5LgwInT9HVJvGIJivg75vi8I13CxDGdTnz+aY5YUJlIAA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -175,9 +182,9 @@
}
},
"node_modules/@babel/eslint-parser": {
- "version": "7.28.4",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.4.tgz",
- "integrity": "sha512-Aa+yDiH87980jR6zvRfFuCR1+dLb00vBydhTL+zI992Rz/wQhSvuxjmOOuJOgO3XmakO6RykRGD2S1mq1AtgHA==",
+ "version": "7.28.5",
+ "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.28.5.tgz",
+ "integrity": "sha512-fcdRcWahONYo+JRnJg1/AekOacGvKx12Gu0qXJXFi2WBqQA1i7+O5PaxRB7kxE/Op94dExnCiiar6T09pvdHpA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -1869,9 +1876,9 @@
}
},
"node_modules/@csstools/css-syntax-patches-for-csstree": {
- "version": "1.0.14",
- "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.14.tgz",
- "integrity": "sha512-zSlIxa20WvMojjpCSy8WrNpcZ61RqfTfX3XTaOeVlGJrt/8HF3YbzgFZa01yTbT4GWQLwfTcC3EB8i3XnB647Q==",
+ "version": "1.0.16",
+ "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.16.tgz",
+ "integrity": "sha512-2SpS4/UaWQaGpBINyG5ZuCHnUDeVByOhvbkARwfmnfxDvTaj80yOI1cD8Tw93ICV5Fx4fnyDKWQZI1CDtcWyUg==",
"dev": true,
"funding": [
{
@@ -1886,9 +1893,6 @@
"license": "MIT-0",
"engines": {
"node": ">=18"
- },
- "peerDependencies": {
- "postcss": "^8.4"
}
},
"node_modules/@csstools/css-tokenizer": {
@@ -1913,9 +1917,9 @@
}
},
"node_modules/@esbuild/aix-ppc64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.11.tgz",
- "integrity": "sha512-Xt1dOL13m8u0WE8iplx9Ibbm+hFAO0GsU2P34UNoDGvZYkY8ifSiy6Zuc1lYxfG7svWE2fzqCUmFp5HCn51gJg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz",
+ "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==",
"cpu": [
"ppc64"
],
@@ -1930,9 +1934,9 @@
}
},
"node_modules/@esbuild/android-arm": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.11.tgz",
- "integrity": "sha512-uoa7dU+Dt3HYsethkJ1k6Z9YdcHjTrSb5NUy66ZfZaSV8hEYGD5ZHbEMXnqLFlbBflLsl89Zke7CAdDJ4JI+Gg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz",
+ "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==",
"cpu": [
"arm"
],
@@ -1947,9 +1951,9 @@
}
},
"node_modules/@esbuild/android-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.11.tgz",
- "integrity": "sha512-9slpyFBc4FPPz48+f6jyiXOx/Y4v34TUeDDXJpZqAWQn/08lKGeD8aDp9TMn9jDz2CiEuHwfhRmGBvpnd/PWIQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz",
+ "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==",
"cpu": [
"arm64"
],
@@ -1964,9 +1968,9 @@
}
},
"node_modules/@esbuild/android-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.11.tgz",
- "integrity": "sha512-Sgiab4xBjPU1QoPEIqS3Xx+R2lezu0LKIEcYe6pftr56PqPygbB7+szVnzoShbx64MUupqoE0KyRlN7gezbl8g==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz",
+ "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==",
"cpu": [
"x64"
],
@@ -1981,9 +1985,9 @@
}
},
"node_modules/@esbuild/darwin-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.11.tgz",
- "integrity": "sha512-VekY0PBCukppoQrycFxUqkCojnTQhdec0vevUL/EDOCnXd9LKWqD/bHwMPzigIJXPhC59Vd1WFIL57SKs2mg4w==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz",
+ "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==",
"cpu": [
"arm64"
],
@@ -1998,9 +2002,9 @@
}
},
"node_modules/@esbuild/darwin-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.11.tgz",
- "integrity": "sha512-+hfp3yfBalNEpTGp9loYgbknjR695HkqtY3d3/JjSRUyPg/xd6q+mQqIb5qdywnDxRZykIHs3axEqU6l1+oWEQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz",
+ "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==",
"cpu": [
"x64"
],
@@ -2015,9 +2019,9 @@
}
},
"node_modules/@esbuild/freebsd-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.11.tgz",
- "integrity": "sha512-CmKjrnayyTJF2eVuO//uSjl/K3KsMIeYeyN7FyDBjsR3lnSJHaXlVoAK8DZa7lXWChbuOk7NjAc7ygAwrnPBhA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==",
"cpu": [
"arm64"
],
@@ -2032,9 +2036,9 @@
}
},
"node_modules/@esbuild/freebsd-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.11.tgz",
- "integrity": "sha512-Dyq+5oscTJvMaYPvW3x3FLpi2+gSZTCE/1ffdwuM6G1ARang/mb3jvjxs0mw6n3Lsw84ocfo9CrNMqc5lTfGOw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz",
+ "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==",
"cpu": [
"x64"
],
@@ -2049,9 +2053,9 @@
}
},
"node_modules/@esbuild/linux-arm": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.11.tgz",
- "integrity": "sha512-TBMv6B4kCfrGJ8cUPo7vd6NECZH/8hPpBHHlYI3qzoYFvWu2AdTvZNuU/7hsbKWqu/COU7NIK12dHAAqBLLXgw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz",
+ "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==",
"cpu": [
"arm"
],
@@ -2066,9 +2070,9 @@
}
},
"node_modules/@esbuild/linux-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.11.tgz",
- "integrity": "sha512-Qr8AzcplUhGvdyUF08A1kHU3Vr2O88xxP0Tm8GcdVOUm25XYcMPp2YqSVHbLuXzYQMf9Bh/iKx7YPqECs6ffLA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz",
+ "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==",
"cpu": [
"arm64"
],
@@ -2083,9 +2087,9 @@
}
},
"node_modules/@esbuild/linux-ia32": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.11.tgz",
- "integrity": "sha512-TmnJg8BMGPehs5JKrCLqyWTVAvielc615jbkOirATQvWWB1NMXY77oLMzsUjRLa0+ngecEmDGqt5jiDC6bfvOw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz",
+ "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==",
"cpu": [
"ia32"
],
@@ -2100,9 +2104,9 @@
}
},
"node_modules/@esbuild/linux-loong64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.11.tgz",
- "integrity": "sha512-DIGXL2+gvDaXlaq8xruNXUJdT5tF+SBbJQKbWy/0J7OhU8gOHOzKmGIlfTTl6nHaCOoipxQbuJi7O++ldrxgMw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz",
+ "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==",
"cpu": [
"loong64"
],
@@ -2117,9 +2121,9 @@
}
},
"node_modules/@esbuild/linux-mips64el": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.11.tgz",
- "integrity": "sha512-Osx1nALUJu4pU43o9OyjSCXokFkFbyzjXb6VhGIJZQ5JZi8ylCQ9/LFagolPsHtgw6himDSyb5ETSfmp4rpiKQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz",
+ "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==",
"cpu": [
"mips64el"
],
@@ -2134,9 +2138,9 @@
}
},
"node_modules/@esbuild/linux-ppc64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.11.tgz",
- "integrity": "sha512-nbLFgsQQEsBa8XSgSTSlrnBSrpoWh7ioFDUmwo158gIm5NNP+17IYmNWzaIzWmgCxq56vfr34xGkOcZ7jX6CPw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz",
+ "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==",
"cpu": [
"ppc64"
],
@@ -2151,9 +2155,9 @@
}
},
"node_modules/@esbuild/linux-riscv64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.11.tgz",
- "integrity": "sha512-HfyAmqZi9uBAbgKYP1yGuI7tSREXwIb438q0nqvlpxAOs3XnZ8RsisRfmVsgV486NdjD7Mw2UrFSw51lzUk1ww==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz",
+ "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==",
"cpu": [
"riscv64"
],
@@ -2168,9 +2172,9 @@
}
},
"node_modules/@esbuild/linux-s390x": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.11.tgz",
- "integrity": "sha512-HjLqVgSSYnVXRisyfmzsH6mXqyvj0SA7pG5g+9W7ESgwA70AXYNpfKBqh1KbTxmQVaYxpzA/SvlB9oclGPbApw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz",
+ "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==",
"cpu": [
"s390x"
],
@@ -2185,9 +2189,9 @@
}
},
"node_modules/@esbuild/linux-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.11.tgz",
- "integrity": "sha512-HSFAT4+WYjIhrHxKBwGmOOSpphjYkcswF449j6EjsjbinTZbp8PJtjsVK1XFJStdzXdy/jaddAep2FGY+wyFAQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz",
+ "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==",
"cpu": [
"x64"
],
@@ -2202,9 +2206,9 @@
}
},
"node_modules/@esbuild/netbsd-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.11.tgz",
- "integrity": "sha512-hr9Oxj1Fa4r04dNpWr3P8QKVVsjQhqrMSUzZzf+LZcYjZNqhA3IAfPQdEh1FLVUJSiu6sgAwp3OmwBfbFgG2Xg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==",
"cpu": [
"arm64"
],
@@ -2219,9 +2223,9 @@
}
},
"node_modules/@esbuild/netbsd-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.11.tgz",
- "integrity": "sha512-u7tKA+qbzBydyj0vgpu+5h5AeudxOAGncb8N6C9Kh1N4n7wU1Xw1JDApsRjpShRpXRQlJLb9wY28ELpwdPcZ7A==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz",
+ "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==",
"cpu": [
"x64"
],
@@ -2236,9 +2240,9 @@
}
},
"node_modules/@esbuild/openbsd-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.11.tgz",
- "integrity": "sha512-Qq6YHhayieor3DxFOoYM1q0q1uMFYb7cSpLD2qzDSvK1NAvqFi8Xgivv0cFC6J+hWVw2teCYltyy9/m/14ryHg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==",
"cpu": [
"arm64"
],
@@ -2253,9 +2257,9 @@
}
},
"node_modules/@esbuild/openbsd-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.11.tgz",
- "integrity": "sha512-CN+7c++kkbrckTOz5hrehxWN7uIhFFlmS/hqziSFVWpAzpWrQoAG4chH+nN3Be+Kzv/uuo7zhX716x3Sn2Jduw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz",
+ "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==",
"cpu": [
"x64"
],
@@ -2270,9 +2274,9 @@
}
},
"node_modules/@esbuild/openharmony-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.11.tgz",
- "integrity": "sha512-rOREuNIQgaiR+9QuNkbkxubbp8MSO9rONmwP5nKncnWJ9v5jQ4JxFnLu4zDSRPf3x4u+2VN4pM4RdyIzDty/wQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz",
+ "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==",
"cpu": [
"arm64"
],
@@ -2287,9 +2291,9 @@
}
},
"node_modules/@esbuild/sunos-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.11.tgz",
- "integrity": "sha512-nq2xdYaWxyg9DcIyXkZhcYulC6pQ2FuCgem3LI92IwMgIZ69KHeY8T4Y88pcwoLIjbed8n36CyKoYRDygNSGhA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz",
+ "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==",
"cpu": [
"x64"
],
@@ -2304,9 +2308,9 @@
}
},
"node_modules/@esbuild/win32-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.11.tgz",
- "integrity": "sha512-3XxECOWJq1qMZ3MN8srCJ/QfoLpL+VaxD/WfNRm1O3B4+AZ/BnLVgFbUV3eiRYDMXetciH16dwPbbHqwe1uU0Q==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz",
+ "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==",
"cpu": [
"arm64"
],
@@ -2321,9 +2325,9 @@
}
},
"node_modules/@esbuild/win32-ia32": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.11.tgz",
- "integrity": "sha512-3ukss6gb9XZ8TlRyJlgLn17ecsK4NSQTmdIXRASVsiS2sQ6zPPZklNJT5GR5tE/MUarymmy8kCEf5xPCNCqVOA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz",
+ "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==",
"cpu": [
"ia32"
],
@@ -2338,9 +2342,9 @@
}
},
"node_modules/@esbuild/win32-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.11.tgz",
- "integrity": "sha512-D7Hpz6A2L4hzsRpPaCYkQnGOotdUpDzSGRIv9I+1ITdHROSFUWW95ZPZWQmGka1Fg7W3zFJowyn9WGwMJ0+KPA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz",
+ "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==",
"cpu": [
"x64"
],
@@ -2397,13 +2401,13 @@
}
},
"node_modules/@eslint/compat": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.0.tgz",
- "integrity": "sha512-DEzm5dKeDBPm3r08Ixli/0cmxr8LkRdwxMRUIJBlSCpAwSrvFEJpVBzV+66JhDxiaqKxnRzCXhtiMiczF7Hglg==",
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.1.tgz",
+ "integrity": "sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2433,22 +2437,22 @@
}
},
"node_modules/@eslint/config-helpers": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.1.tgz",
- "integrity": "sha512-csZAzkNhsgwb0I/UAV6/RGFTbiakPCf0ZrGmrIxQpYvGZ00PhTkSnyKNolphgIvmnJeGw6rcGVEXfTzUnFuEvw==",
+ "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": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
"node_modules/@eslint/core": {
- "version": "0.16.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.16.0.tgz",
- "integrity": "sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==",
+ "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": {
@@ -2496,9 +2500,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.38.0.tgz",
- "integrity": "sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz",
+ "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -2519,13 +2523,13 @@
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.0.tgz",
- "integrity": "sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==",
+ "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": {
- "@eslint/core": "^0.16.0",
+ "@eslint/core": "^0.17.0",
"levn": "^0.4.1"
},
"engines": {
@@ -2910,9 +2914,9 @@
"license": "MIT"
},
"node_modules/@rollup/rollup-android-arm-eabi": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.52.5.tgz",
- "integrity": "sha512-8c1vW4ocv3UOMp9K+gToY5zL2XiiVw3k7f1ksf4yO1FlDFQ1C2u72iACFnSOceJFsWskc2WZNqeRhFRPzv+wtQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.2.tgz",
+ "integrity": "sha512-yDPzwsgiFO26RJA4nZo8I+xqzh7sJTZIWQOxn+/XOdPE31lAvLIYCKqjV+lNH/vxE2L2iH3plKxDCRK6i+CwhA==",
"cpu": [
"arm"
],
@@ -2924,9 +2928,9 @@
]
},
"node_modules/@rollup/rollup-android-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.52.5.tgz",
- "integrity": "sha512-mQGfsIEFcu21mvqkEKKu2dYmtuSZOBMmAl5CFlPGLY94Vlcm+zWApK7F/eocsNzp8tKmbeBP8yXyAbx0XHsFNA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.53.2.tgz",
+ "integrity": "sha512-k8FontTxIE7b0/OGKeSN5B6j25EuppBcWM33Z19JoVT7UTXFSo3D9CdU39wGTeb29NO3XxpMNauh09B+Ibw+9g==",
"cpu": [
"arm64"
],
@@ -2938,9 +2942,9 @@
]
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.52.5.tgz",
- "integrity": "sha512-takF3CR71mCAGA+v794QUZ0b6ZSrgJkArC+gUiG6LB6TQty9T0Mqh3m2ImRBOxS2IeYBo4lKWIieSvnEk2OQWA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.53.2.tgz",
+ "integrity": "sha512-A6s4gJpomNBtJ2yioj8bflM2oogDwzUiMl2yNJ2v9E7++sHrSrsQ29fOfn5DM/iCzpWcebNYEdXpaK4tr2RhfQ==",
"cpu": [
"arm64"
],
@@ -2952,9 +2956,9 @@
]
},
"node_modules/@rollup/rollup-darwin-x64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.52.5.tgz",
- "integrity": "sha512-W901Pla8Ya95WpxDn//VF9K9u2JbocwV/v75TE0YIHNTbhqUTv9w4VuQ9MaWlNOkkEfFwkdNhXgcLqPSmHy0fA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.53.2.tgz",
+ "integrity": "sha512-e6XqVmXlHrBlG56obu9gDRPW3O3hLxpwHpLsBJvuI8qqnsrtSZ9ERoWUXtPOkY8c78WghyPHZdmPhHLWNdAGEw==",
"cpu": [
"x64"
],
@@ -2966,9 +2970,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.52.5.tgz",
- "integrity": "sha512-QofO7i7JycsYOWxe0GFqhLmF6l1TqBswJMvICnRUjqCx8b47MTo46W8AoeQwiokAx3zVryVnxtBMcGcnX12LvA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.53.2.tgz",
+ "integrity": "sha512-v0E9lJW8VsrwPux5Qe5CwmH/CF/2mQs6xU1MF3nmUxmZUCHazCjLgYvToOk+YuuUqLQBio1qkkREhxhc656ViA==",
"cpu": [
"arm64"
],
@@ -2980,9 +2984,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-x64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.52.5.tgz",
- "integrity": "sha512-jr21b/99ew8ujZubPo9skbrItHEIE50WdV86cdSoRkKtmWa+DDr6fu2c/xyRT0F/WazZpam6kk7IHBerSL7LDQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.53.2.tgz",
+ "integrity": "sha512-ClAmAPx3ZCHtp6ysl4XEhWU69GUB1D+s7G9YjHGhIGCSrsg00nEGRRZHmINYxkdoJehde8VIsDC5t9C0gb6yqA==",
"cpu": [
"x64"
],
@@ -2994,9 +2998,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.52.5.tgz",
- "integrity": "sha512-PsNAbcyv9CcecAUagQefwX8fQn9LQ4nZkpDboBOttmyffnInRy8R8dSg6hxxl2Re5QhHBf6FYIDhIj5v982ATQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.53.2.tgz",
+ "integrity": "sha512-EPlb95nUsz6Dd9Qy13fI5kUPXNSljaG9FiJ4YUGU1O/Q77i5DYFW5KR8g1OzTcdZUqQQ1KdDqsTohdFVwCwjqg==",
"cpu": [
"arm"
],
@@ -3008,9 +3012,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.52.5.tgz",
- "integrity": "sha512-Fw4tysRutyQc/wwkmcyoqFtJhh0u31K+Q6jYjeicsGJJ7bbEq8LwPWV/w0cnzOqR2m694/Af6hpFayLJZkG2VQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.53.2.tgz",
+ "integrity": "sha512-BOmnVW+khAUX+YZvNfa0tGTEMVVEerOxN0pDk2E6N6DsEIa2Ctj48FOMfNDdrwinocKaC7YXUZ1pHlKpnkja/Q==",
"cpu": [
"arm"
],
@@ -3022,9 +3026,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.52.5.tgz",
- "integrity": "sha512-a+3wVnAYdQClOTlyapKmyI6BLPAFYs0JM8HRpgYZQO02rMR09ZcV9LbQB+NL6sljzG38869YqThrRnfPMCDtZg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.53.2.tgz",
+ "integrity": "sha512-Xt2byDZ+6OVNuREgBXr4+CZDJtrVso5woFtpKdGPhpTPHcNG7D8YXeQzpNbFRxzTVqJf7kvPMCub/pcGUWgBjA==",
"cpu": [
"arm64"
],
@@ -3036,9 +3040,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-musl": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.52.5.tgz",
- "integrity": "sha512-AvttBOMwO9Pcuuf7m9PkC1PUIKsfaAJ4AYhy944qeTJgQOqJYJ9oVl2nYgY7Rk0mkbsuOpCAYSs6wLYB2Xiw0Q==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.53.2.tgz",
+ "integrity": "sha512-+LdZSldy/I9N8+klim/Y1HsKbJ3BbInHav5qE9Iy77dtHC/pibw1SR/fXlWyAk0ThnpRKoODwnAuSjqxFRDHUQ==",
"cpu": [
"arm64"
],
@@ -3050,9 +3054,9 @@
]
},
"node_modules/@rollup/rollup-linux-loong64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.52.5.tgz",
- "integrity": "sha512-DkDk8pmXQV2wVrF6oq5tONK6UHLz/XcEVow4JTTerdeV1uqPeHxwcg7aFsfnSm9L+OO8WJsWotKM2JJPMWrQtA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.53.2.tgz",
+ "integrity": "sha512-8ms8sjmyc1jWJS6WdNSA23rEfdjWB30LH8Wqj0Cqvv7qSHnvw6kgMMXRdop6hkmGPlyYBdRPkjJnj3KCUHV/uQ==",
"cpu": [
"loong64"
],
@@ -3064,9 +3068,9 @@
]
},
"node_modules/@rollup/rollup-linux-ppc64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.52.5.tgz",
- "integrity": "sha512-W/b9ZN/U9+hPQVvlGwjzi+Wy4xdoH2I8EjaCkMvzpI7wJUs8sWJ03Rq96jRnHkSrcHTpQe8h5Tg3ZzUPGauvAw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.53.2.tgz",
+ "integrity": "sha512-3HRQLUQbpBDMmzoxPJYd3W6vrVHOo2cVW8RUo87Xz0JPJcBLBr5kZ1pGcQAhdZgX9VV7NbGNipah1omKKe23/g==",
"cpu": [
"ppc64"
],
@@ -3078,9 +3082,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.52.5.tgz",
- "integrity": "sha512-sjQLr9BW7R/ZiXnQiWPkErNfLMkkWIoCz7YMn27HldKsADEKa5WYdobaa1hmN6slu9oWQbB6/jFpJ+P2IkVrmw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.53.2.tgz",
+ "integrity": "sha512-fMjKi+ojnmIvhk34gZP94vjogXNNUKMEYs+EDaB/5TG/wUkoeua7p7VCHnE6T2Tx+iaghAqQX8teQzcvrYpaQA==",
"cpu": [
"riscv64"
],
@@ -3092,9 +3096,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-musl": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.52.5.tgz",
- "integrity": "sha512-hq3jU/kGyjXWTvAh2awn8oHroCbrPm8JqM7RUpKjalIRWWXE01CQOf/tUNWNHjmbMHg/hmNCwc/Pz3k1T/j/Lg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.53.2.tgz",
+ "integrity": "sha512-XuGFGU+VwUUV5kLvoAdi0Wz5Xbh2SrjIxCtZj6Wq8MDp4bflb/+ThZsVxokM7n0pcbkEr2h5/pzqzDYI7cCgLQ==",
"cpu": [
"riscv64"
],
@@ -3106,9 +3110,9 @@
]
},
"node_modules/@rollup/rollup-linux-s390x-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.52.5.tgz",
- "integrity": "sha512-gn8kHOrku8D4NGHMK1Y7NA7INQTRdVOntt1OCYypZPRt6skGbddska44K8iocdpxHTMMNui5oH4elPH4QOLrFQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.53.2.tgz",
+ "integrity": "sha512-w6yjZF0P+NGzWR3AXWX9zc0DNEGdtvykB03uhonSHMRa+oWA6novflo2WaJr6JZakG2ucsyb+rvhrKac6NIy+w==",
"cpu": [
"s390x"
],
@@ -3120,9 +3124,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.52.5.tgz",
- "integrity": "sha512-hXGLYpdhiNElzN770+H2nlx+jRog8TyynpTVzdlc6bndktjKWyZyiCsuDAlpd+j+W+WNqfcyAWz9HxxIGfZm1Q==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.53.2.tgz",
+ "integrity": "sha512-yo8d6tdfdeBArzC7T/PnHd7OypfI9cbuZzPnzLJIyKYFhAQ8SvlkKtKBMbXDxe1h03Rcr7u++nFS7tqXz87Gtw==",
"cpu": [
"x64"
],
@@ -3134,9 +3138,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-musl": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.52.5.tgz",
- "integrity": "sha512-arCGIcuNKjBoKAXD+y7XomR9gY6Mw7HnFBv5Rw7wQRvwYLR7gBAgV7Mb2QTyjXfTveBNFAtPt46/36vV9STLNg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.53.2.tgz",
+ "integrity": "sha512-ah59c1YkCxKExPP8O9PwOvs+XRLKwh/mV+3YdKqQ5AMQ0r4M4ZDuOrpWkUaqO7fzAHdINzV9tEVu8vNw48z0lA==",
"cpu": [
"x64"
],
@@ -3148,9 +3152,9 @@
]
},
"node_modules/@rollup/rollup-openharmony-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.52.5.tgz",
- "integrity": "sha512-QoFqB6+/9Rly/RiPjaomPLmR/13cgkIGfA40LHly9zcH1S0bN2HVFYk3a1eAyHQyjs3ZJYlXvIGtcCs5tko9Cw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.53.2.tgz",
+ "integrity": "sha512-4VEd19Wmhr+Zy7hbUsFZ6YXEiP48hE//KPLCSVNY5RMGX2/7HZ+QkN55a3atM1C/BZCGIgqN+xrVgtdak2S9+A==",
"cpu": [
"arm64"
],
@@ -3162,9 +3166,9 @@
]
},
"node_modules/@rollup/rollup-win32-arm64-msvc": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.52.5.tgz",
- "integrity": "sha512-w0cDWVR6MlTstla1cIfOGyl8+qb93FlAVutcor14Gf5Md5ap5ySfQ7R9S/NjNaMLSFdUnKGEasmVnu3lCMqB7w==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.53.2.tgz",
+ "integrity": "sha512-IlbHFYc/pQCgew/d5fslcy1KEaYVCJ44G8pajugd8VoOEI8ODhtb/j8XMhLpwHCMB3yk2J07ctup10gpw2nyMA==",
"cpu": [
"arm64"
],
@@ -3176,9 +3180,9 @@
]
},
"node_modules/@rollup/rollup-win32-ia32-msvc": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.52.5.tgz",
- "integrity": "sha512-Aufdpzp7DpOTULJCuvzqcItSGDH73pF3ko/f+ckJhxQyHtp67rHw3HMNxoIdDMUITJESNE6a8uh4Lo4SLouOUg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.53.2.tgz",
+ "integrity": "sha512-lNlPEGgdUfSzdCWU176ku/dQRnA7W+Gp8d+cWv73jYrb8uT7HTVVxq62DUYxjbaByuf1Yk0RIIAbDzp+CnOTFg==",
"cpu": [
"ia32"
],
@@ -3190,9 +3194,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.52.5.tgz",
- "integrity": "sha512-UGBUGPFp1vkj6p8wCRraqNhqwX/4kNQPS57BCFc8wYh0g94iVIW33wJtQAx3G7vrjjNtRaxiMUylM0ktp/TRSQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.53.2.tgz",
+ "integrity": "sha512-S6YojNVrHybQis2lYov1sd+uj7K0Q05NxHcGktuMMdIQ2VixGwAfbJ23NnlvvVV1bdpR2m5MsNBViHJKcA4ADw==",
"cpu": [
"x64"
],
@@ -3204,9 +3208,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-msvc": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.52.5.tgz",
- "integrity": "sha512-TAcgQh2sSkykPRWLrdyy2AiceMckNf5loITqXxFI5VuQjS5tSuw3WlwdN8qv8vzjLAUTvYaH/mVjSFpbkFbpTg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.53.2.tgz",
+ "integrity": "sha512-k+/Rkcyx//P6fetPoLMb8pBeqJBNGx81uuf7iljX9++yNBVRDQgD04L+SVXmXmh5ZP4/WOp4mWF0kmi06PW2tA==",
"cpu": [
"x64"
],
@@ -3218,9 +3222,9 @@
]
},
"node_modules/@rushstack/eslint-patch": {
- "version": "1.14.0",
- "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.14.0.tgz",
- "integrity": "sha512-WJFej426qe4RWOm9MMtP4V3CV4AucXolQty+GRgAWLgQXmpCuwzs7hEpxxhSc/znXUSxum9d/P/32MW0FlAAlA==",
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.14.1.tgz",
+ "integrity": "sha512-jGTk8UD/RdjsNZW8qq10r0RBvxL8OWtoT+kImlzPDFilmozzM+9QmIJsmze9UiSBrFU45ZxhTYBypn9q9z/VfQ==",
"dev": true,
"license": "MIT"
},
@@ -3682,57 +3686,57 @@
}
},
"node_modules/@vue/compiler-core": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.22.tgz",
- "integrity": "sha512-jQ0pFPmZwTEiRNSb+i9Ow/I/cHv2tXYqsnHKKyCQ08irI2kdF5qmYedmF8si8mA7zepUFmJ2hqzS8CQmNOWOkQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.24.tgz",
+ "integrity": "sha512-eDl5H57AOpNakGNAkFDH+y7kTqrQpJkZFXhWZQGyx/5Wh7B1uQYvcWkvZi11BDhscPgj8N7XV3oRwiPnx1Vrig==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/parser": "^7.28.4",
- "@vue/shared": "3.5.22",
+ "@babel/parser": "^7.28.5",
+ "@vue/shared": "3.5.24",
"entities": "^4.5.0",
"estree-walker": "^2.0.2",
"source-map-js": "^1.2.1"
}
},
"node_modules/@vue/compiler-dom": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.22.tgz",
- "integrity": "sha512-W8RknzUM1BLkypvdz10OVsGxnMAuSIZs9Wdx1vzA3mL5fNMN15rhrSCLiTm6blWeACwUwizzPVqGJgOGBEN/hA==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.24.tgz",
+ "integrity": "sha512-1QHGAvs53gXkWdd3ZMGYuvQFXHW4ksKWPG8HP8/2BscrbZ0brw183q2oNWjMrSWImYLHxHrx1ItBQr50I/q2zw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/compiler-core": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-core": "3.5.24",
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/compiler-sfc": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.22.tgz",
- "integrity": "sha512-tbTR1zKGce4Lj+JLzFXDq36K4vcSZbJ1RBu8FxcDv1IGRz//Dh2EBqksyGVypz3kXpshIfWKGOCcqpSbyGWRJQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.24.tgz",
+ "integrity": "sha512-8EG5YPRgmTB+YxYBM3VXy8zHD9SWHUJLIGPhDovo3Z8VOgvP+O7UP5vl0J4BBPWYD9vxtBabzW1EuEZ+Cqs14g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/parser": "^7.28.4",
- "@vue/compiler-core": "3.5.22",
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-ssr": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@babel/parser": "^7.28.5",
+ "@vue/compiler-core": "3.5.24",
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-ssr": "3.5.24",
+ "@vue/shared": "3.5.24",
"estree-walker": "^2.0.2",
- "magic-string": "^0.30.19",
+ "magic-string": "^0.30.21",
"postcss": "^8.5.6",
"source-map-js": "^1.2.1"
}
},
"node_modules/@vue/compiler-ssr": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.22.tgz",
- "integrity": "sha512-GdgyLvg4R+7T8Nk2Mlighx7XGxq/fJf9jaVofc3IL0EPesTE86cP/8DD1lT3h1JeZr2ySBvyqKQJgbS54IX1Ww==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.24.tgz",
+ "integrity": "sha512-trOvMWNBMQ/odMRHW7Ae1CdfYx+7MuiQu62Jtu36gMLXcaoqKvAyh+P73sYG9ll+6jLB6QPovqoKGGZROzkFFg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/compiler-dom": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/eslint-config-prettier": {
@@ -3751,55 +3755,55 @@
}
},
"node_modules/@vue/reactivity": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.22.tgz",
- "integrity": "sha512-f2Wux4v/Z2pqc9+4SmgZC1p73Z53fyD90NFWXiX9AKVnVBEvLFOWCEgJD3GdGnlxPZt01PSlfmLqbLYzY/Fw4A==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.24.tgz",
+ "integrity": "sha512-BM8kBhtlkkbnyl4q+HiF5R5BL0ycDPfihowulm02q3WYp2vxgPcJuZO866qa/0u3idbMntKEtVNuAUp5bw4teg==",
"license": "MIT",
"dependencies": {
- "@vue/shared": "3.5.22"
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/runtime-core": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.22.tgz",
- "integrity": "sha512-EHo4W/eiYeAzRTN5PCextDUZ0dMs9I8mQ2Fy+OkzvRPUYQEyK9yAjbasrMCXbLNhF7P0OUyivLjIy0yc6VrLJQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.24.tgz",
+ "integrity": "sha512-RYP/byyKDgNIqfX/gNb2PB55dJmM97jc9wyF3jK7QUInYKypK2exmZMNwnjueWwGceEkP6NChd3D2ZVEp9undQ==",
"license": "MIT",
"dependencies": {
- "@vue/reactivity": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/reactivity": "3.5.24",
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/runtime-dom": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.22.tgz",
- "integrity": "sha512-Av60jsryAkI023PlN7LsqrfPvwfxOd2yAwtReCjeuugTJTkgrksYJJstg1e12qle0NarkfhfFu1ox2D+cQotww==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.24.tgz",
+ "integrity": "sha512-Z8ANhr/i0XIluonHVjbUkjvn+CyrxbXRIxR7wn7+X7xlcb7dJsfITZbkVOeJZdP8VZwfrWRsWdShH6pngMxRjw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/reactivity": "3.5.22",
- "@vue/runtime-core": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@vue/reactivity": "3.5.24",
+ "@vue/runtime-core": "3.5.24",
+ "@vue/shared": "3.5.24",
"csstype": "^3.1.3"
}
},
"node_modules/@vue/server-renderer": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.22.tgz",
- "integrity": "sha512-gXjo+ao0oHYTSswF+a3KRHZ1WszxIqO7u6XwNHqcqb9JfyIL/pbWrrh/xLv7jeDqla9u+LK7yfZKHih1e1RKAQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.24.tgz",
+ "integrity": "sha512-Yh2j2Y4G/0/4z/xJ1Bad4mxaAk++C2v4kaa8oSYTMJBJ00/ndPuxCnWeot0/7/qafQFLh5pr6xeV6SdMcE/G1w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/compiler-ssr": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-ssr": "3.5.24",
+ "@vue/shared": "3.5.24"
},
"peerDependencies": {
- "vue": "3.5.22"
+ "vue": "3.5.24"
}
},
"node_modules/@vue/shared": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.22.tgz",
- "integrity": "sha512-F4yc6palwq3TT0u+FYf0Ns4Tfl9GRFURDN2gWG7L1ecIaS/4fCIuFOjMTnCyjsu/OK6vaDKLCrGAa+KvvH+h4w==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.24.tgz",
+ "integrity": "sha512-9cwHL2EsJBdi8NY22pngYYWzkTDhld6fAD6jlaeloNGciNSJL6bLpbxVgXl96X00Jtc6YWQv96YA/0sxex/k1A==",
"license": "MIT"
},
"node_modules/@vue/test-utils": {
@@ -3927,9 +3931,9 @@
}
},
"node_modules/ast-v8-to-istanbul": {
- "version": "0.3.7",
- "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-0.3.7.tgz",
- "integrity": "sha512-kr1Hy6YRZBkGQSb6puP+D6FQ59Cx4m0siYhAxygMCAgadiWQ6oxAxQXHOMvJx67SJ63jRoVIIg5eXzUbbct1ww==",
+ "version": "0.3.8",
+ "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-0.3.8.tgz",
+ "integrity": "sha512-szgSZqUxI5T8mLKvS7WTjF9is+MVbOeLADU73IseOcrqhxr/VAvy6wfoVE39KnKzA7JRhjF5eUagNlHwvZPlKQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4048,9 +4052,9 @@
"license": "MIT"
},
"node_modules/baseline-browser-mapping": {
- "version": "2.8.20",
- "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.20.tgz",
- "integrity": "sha512-JMWsdF+O8Orq3EMukbUN1QfbLK9mX2CkUmQBcW2T0s8OmdAUL5LLM/6wFwSrqXzlXB13yhyK9gTKS1rIizOduQ==",
+ "version": "2.8.27",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.27.tgz",
+ "integrity": "sha512-2CXFpkjVnY2FT+B6GrSYxzYf65BJWEqz5tIRHCvNsZZ2F3CmsCB37h8SpYgKG7y9C4YAeTipIPWG7EmFmhAeXA==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -4103,9 +4107,9 @@
}
},
"node_modules/browserslist": {
- "version": "4.27.0",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.27.0.tgz",
- "integrity": "sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw==",
+ "version": "4.28.0",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.0.tgz",
+ "integrity": "sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==",
"dev": true,
"funding": [
{
@@ -4124,10 +4128,10 @@
"license": "MIT",
"peer": true,
"dependencies": {
- "baseline-browser-mapping": "^2.8.19",
- "caniuse-lite": "^1.0.30001751",
- "electron-to-chromium": "^1.5.238",
- "node-releases": "^2.0.26",
+ "baseline-browser-mapping": "^2.8.25",
+ "caniuse-lite": "^1.0.30001754",
+ "electron-to-chromium": "^1.5.249",
+ "node-releases": "^2.0.27",
"update-browserslist-db": "^1.1.4"
},
"bin": {
@@ -4218,9 +4222,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001751",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001751.tgz",
- "integrity": "sha512-A0QJhug0Ly64Ii3eIqHu5X51ebln3k4yTUkY1j8drqpWHVreg/VLijN48cZ1bYPiqOQuqpkIKnzr/Ul8V+p6Cw==",
+ "version": "1.0.30001754",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz",
+ "integrity": "sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==",
"dev": true,
"funding": [
{
@@ -4449,9 +4453,9 @@
}
},
"node_modules/cssstyle": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-5.3.1.tgz",
- "integrity": "sha512-g5PC9Aiph9eiczFpcgUhd9S4UUO3F+LHGRIi5NUMZ+4xtoIYbHNZwZnWA2JsFGe8OU8nl4WyaEFiZuGuxlutJQ==",
+ "version": "5.3.3",
+ "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-5.3.3.tgz",
+ "integrity": "sha512-OytmFH+13/QXONJcC75QNdMtKpceNk3u8ThBjyyYjkEcy/ekBwR1mMAuNvi3gdBPW3N5TlCzQ0WZw8H0lN/bDw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4485,9 +4489,9 @@
}
},
"node_modules/dayjs": {
- "version": "1.11.18",
- "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.18.tgz",
- "integrity": "sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA==",
+ "version": "1.11.19",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.19.tgz",
+ "integrity": "sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==",
"dev": true,
"license": "MIT"
},
@@ -4666,9 +4670,9 @@
}
},
"node_modules/electron-to-chromium": {
- "version": "1.5.239",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.239.tgz",
- "integrity": "sha512-1y5w0Zsq39MSPmEjHjbizvhYoTaulVtivpxkp5q5kaPmQtsK6/2nvAzGRxNMS9DoYySp9PkW0MAQDwU1m764mg==",
+ "version": "1.5.250",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.250.tgz",
+ "integrity": "sha512-/5UMj9IiGDMOFBnN4i7/Ry5onJrAGSbOGo3s9FEKmwobGq6xw832ccET0CE3CkkMBZ8GJSlUIesZofpyurqDXw==",
"dev": true,
"license": "ISC"
},
@@ -4739,9 +4743,9 @@
}
},
"node_modules/esbuild": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.11.tgz",
- "integrity": "sha512-KohQwyzrKTQmhXDW1PjCv3Tyspn9n5GcY2RTDqeORIdIJY8yKIF7sTSopFmn/wpMPW4rdPXI0UE5LJLuq3bx0Q==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz",
+ "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -4752,32 +4756,32 @@
"node": ">=18"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.25.11",
- "@esbuild/android-arm": "0.25.11",
- "@esbuild/android-arm64": "0.25.11",
- "@esbuild/android-x64": "0.25.11",
- "@esbuild/darwin-arm64": "0.25.11",
- "@esbuild/darwin-x64": "0.25.11",
- "@esbuild/freebsd-arm64": "0.25.11",
- "@esbuild/freebsd-x64": "0.25.11",
- "@esbuild/linux-arm": "0.25.11",
- "@esbuild/linux-arm64": "0.25.11",
- "@esbuild/linux-ia32": "0.25.11",
- "@esbuild/linux-loong64": "0.25.11",
- "@esbuild/linux-mips64el": "0.25.11",
- "@esbuild/linux-ppc64": "0.25.11",
- "@esbuild/linux-riscv64": "0.25.11",
- "@esbuild/linux-s390x": "0.25.11",
- "@esbuild/linux-x64": "0.25.11",
- "@esbuild/netbsd-arm64": "0.25.11",
- "@esbuild/netbsd-x64": "0.25.11",
- "@esbuild/openbsd-arm64": "0.25.11",
- "@esbuild/openbsd-x64": "0.25.11",
- "@esbuild/openharmony-arm64": "0.25.11",
- "@esbuild/sunos-x64": "0.25.11",
- "@esbuild/win32-arm64": "0.25.11",
- "@esbuild/win32-ia32": "0.25.11",
- "@esbuild/win32-x64": "0.25.11"
+ "@esbuild/aix-ppc64": "0.25.12",
+ "@esbuild/android-arm": "0.25.12",
+ "@esbuild/android-arm64": "0.25.12",
+ "@esbuild/android-x64": "0.25.12",
+ "@esbuild/darwin-arm64": "0.25.12",
+ "@esbuild/darwin-x64": "0.25.12",
+ "@esbuild/freebsd-arm64": "0.25.12",
+ "@esbuild/freebsd-x64": "0.25.12",
+ "@esbuild/linux-arm": "0.25.12",
+ "@esbuild/linux-arm64": "0.25.12",
+ "@esbuild/linux-ia32": "0.25.12",
+ "@esbuild/linux-loong64": "0.25.12",
+ "@esbuild/linux-mips64el": "0.25.12",
+ "@esbuild/linux-ppc64": "0.25.12",
+ "@esbuild/linux-riscv64": "0.25.12",
+ "@esbuild/linux-s390x": "0.25.12",
+ "@esbuild/linux-x64": "0.25.12",
+ "@esbuild/netbsd-arm64": "0.25.12",
+ "@esbuild/netbsd-x64": "0.25.12",
+ "@esbuild/openbsd-arm64": "0.25.12",
+ "@esbuild/openbsd-x64": "0.25.12",
+ "@esbuild/openharmony-arm64": "0.25.12",
+ "@esbuild/sunos-x64": "0.25.12",
+ "@esbuild/win32-arm64": "0.25.12",
+ "@esbuild/win32-ia32": "0.25.12",
+ "@esbuild/win32-x64": "0.25.12"
}
},
"node_modules/escalade": {
@@ -4804,9 +4808,9 @@
}
},
"node_modules/eslint": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.38.0.tgz",
- "integrity": "sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz",
+ "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -4814,11 +4818,11 @@
"@eslint-community/eslint-utils": "^4.8.0",
"@eslint-community/regexpp": "^4.12.1",
"@eslint/config-array": "^0.21.1",
- "@eslint/config-helpers": "^0.4.1",
- "@eslint/core": "^0.16.0",
+ "@eslint/config-helpers": "^0.4.2",
+ "@eslint/core": "^0.17.0",
"@eslint/eslintrc": "^3.3.1",
- "@eslint/js": "9.38.0",
- "@eslint/plugin-kit": "^0.4.0",
+ "@eslint/js": "9.39.1",
+ "@eslint/plugin-kit": "^0.4.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.4.2",
@@ -5407,9 +5411,9 @@
}
},
"node_modules/globals": {
- "version": "16.4.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz",
- "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==",
+ "version": "16.5.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz",
+ "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -5842,9 +5846,9 @@
"license": "MIT"
},
"node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -5855,14 +5859,15 @@
}
},
"node_modules/jsdom": {
- "version": "27.0.1",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-27.0.1.tgz",
- "integrity": "sha512-SNSQteBL1IlV2zqhwwolaG9CwhIhTvVHWg3kTss/cLE7H/X4644mtPQqYvCfsSrGQWt9hSZcgOXX8bOZaMN+kA==",
+ "version": "27.1.0",
+ "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-27.1.0.tgz",
+ "integrity": "sha512-Pcfm3eZ+eO4JdZCXthW9tCDT3nF4K+9dmeZ+5X39n+Kqz0DDIABRP5CAEOHRFZk8RGuC2efksTJxrjp8EXCunQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@asamuzakjp/dom-selector": "^6.7.2",
- "cssstyle": "^5.3.1",
+ "@acemir/cssom": "^0.9.19",
+ "@asamuzakjp/dom-selector": "^6.7.3",
+ "cssstyle": "^5.3.2",
"data-urls": "^6.0.0",
"decimal.js": "^10.6.0",
"html-encoding-sniffer": "^4.0.0",
@@ -5870,7 +5875,6 @@
"https-proxy-agent": "^7.0.6",
"is-potential-custom-element-name": "^1.0.1",
"parse5": "^8.0.0",
- "rrweb-cssom": "^0.8.0",
"saxes": "^6.0.0",
"symbol-tree": "^3.2.4",
"tough-cookie": "^6.0.0",
@@ -5883,7 +5887,7 @@
"xml-name-validator": "^5.0.0"
},
"engines": {
- "node": ">=20"
+ "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
},
"peerDependencies": {
"canvas": "^3.0.0"
@@ -6056,9 +6060,9 @@
}
},
"node_modules/magic-string": {
- "version": "0.30.19",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz",
- "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==",
+ "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": {
@@ -6186,9 +6190,9 @@
"license": "MIT"
},
"node_modules/node-releases": {
- "version": "2.0.26",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.26.tgz",
- "integrity": "sha512-S2M9YimhSjBSvYnlr5/+umAnPHE++ODwt5e2Ij6FoX45HA/s4vHdkDx1eax2pAPeAOqu4s9b7ppahsyEFdVqQA==",
+ "version": "2.0.27",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz",
+ "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==",
"dev": true,
"license": "MIT"
},
@@ -6478,7 +6482,6 @@
}
],
"license": "MIT",
- "peer": true,
"dependencies": {
"nanoid": "^3.3.11",
"picocolors": "^1.1.1",
@@ -6679,9 +6682,9 @@
"license": "MIT"
},
"node_modules/rollup": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.52.5.tgz",
- "integrity": "sha512-3GuObel8h7Kqdjt0gxkEzaifHTqLVW56Y/bjN7PSQtkKr0w3V/QYSdt6QWYtd7A1xUtYQigtdUfgj1RvWVtorw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.2.tgz",
+ "integrity": "sha512-MHngMYwGJVi6Fmnk6ISmnk7JAHRNF0UkuucA0CUW3N3a4KnONPEZz+vUanQP/ZC/iY1Qkf3bwPWzyY84wEks1g==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6695,38 +6698,31 @@
"npm": ">=8.0.0"
},
"optionalDependencies": {
- "@rollup/rollup-android-arm-eabi": "4.52.5",
- "@rollup/rollup-android-arm64": "4.52.5",
- "@rollup/rollup-darwin-arm64": "4.52.5",
- "@rollup/rollup-darwin-x64": "4.52.5",
- "@rollup/rollup-freebsd-arm64": "4.52.5",
- "@rollup/rollup-freebsd-x64": "4.52.5",
- "@rollup/rollup-linux-arm-gnueabihf": "4.52.5",
- "@rollup/rollup-linux-arm-musleabihf": "4.52.5",
- "@rollup/rollup-linux-arm64-gnu": "4.52.5",
- "@rollup/rollup-linux-arm64-musl": "4.52.5",
- "@rollup/rollup-linux-loong64-gnu": "4.52.5",
- "@rollup/rollup-linux-ppc64-gnu": "4.52.5",
- "@rollup/rollup-linux-riscv64-gnu": "4.52.5",
- "@rollup/rollup-linux-riscv64-musl": "4.52.5",
- "@rollup/rollup-linux-s390x-gnu": "4.52.5",
- "@rollup/rollup-linux-x64-gnu": "4.52.5",
- "@rollup/rollup-linux-x64-musl": "4.52.5",
- "@rollup/rollup-openharmony-arm64": "4.52.5",
- "@rollup/rollup-win32-arm64-msvc": "4.52.5",
- "@rollup/rollup-win32-ia32-msvc": "4.52.5",
- "@rollup/rollup-win32-x64-gnu": "4.52.5",
- "@rollup/rollup-win32-x64-msvc": "4.52.5",
+ "@rollup/rollup-android-arm-eabi": "4.53.2",
+ "@rollup/rollup-android-arm64": "4.53.2",
+ "@rollup/rollup-darwin-arm64": "4.53.2",
+ "@rollup/rollup-darwin-x64": "4.53.2",
+ "@rollup/rollup-freebsd-arm64": "4.53.2",
+ "@rollup/rollup-freebsd-x64": "4.53.2",
+ "@rollup/rollup-linux-arm-gnueabihf": "4.53.2",
+ "@rollup/rollup-linux-arm-musleabihf": "4.53.2",
+ "@rollup/rollup-linux-arm64-gnu": "4.53.2",
+ "@rollup/rollup-linux-arm64-musl": "4.53.2",
+ "@rollup/rollup-linux-loong64-gnu": "4.53.2",
+ "@rollup/rollup-linux-ppc64-gnu": "4.53.2",
+ "@rollup/rollup-linux-riscv64-gnu": "4.53.2",
+ "@rollup/rollup-linux-riscv64-musl": "4.53.2",
+ "@rollup/rollup-linux-s390x-gnu": "4.53.2",
+ "@rollup/rollup-linux-x64-gnu": "4.53.2",
+ "@rollup/rollup-linux-x64-musl": "4.53.2",
+ "@rollup/rollup-openharmony-arm64": "4.53.2",
+ "@rollup/rollup-win32-arm64-msvc": "4.53.2",
+ "@rollup/rollup-win32-ia32-msvc": "4.53.2",
+ "@rollup/rollup-win32-x64-gnu": "4.53.2",
+ "@rollup/rollup-win32-x64-msvc": "4.53.2",
"fsevents": "~2.3.2"
}
},
- "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/runes": {
"version": "0.4.3",
"resolved": "https://registry.npmjs.org/runes/-/runes-0.4.3.tgz",
@@ -7409,9 +7405,9 @@
"license": "MIT"
},
"node_modules/vite": {
- "version": "7.1.11",
- "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.11.tgz",
- "integrity": "sha512-uzcxnSDVjAopEUjljkWh8EIrg6tlzrjFUfMcR1EVsRDGwf/ccef0qQPRyOrROwhrTDaApueq+ja+KLPlzR/zdg==",
+ "version": "7.2.2",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-7.2.2.tgz",
+ "integrity": "sha512-BxAKBWmIbrDgrokdGZH1IgkIk/5mMHDreLDmCJ0qpyJaAteP8NvMhkwr/ZCQNqNH97bw/dANTE9PDzqwJghfMQ==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -7605,18 +7601,18 @@
}
},
"node_modules/vue": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.22.tgz",
- "integrity": "sha512-toaZjQ3a/G/mYaLSbV+QsQhIdMo9x5rrqIpYRObsJ6T/J+RyCSFwN2LHNVH9v8uIcljDNa3QzPVdv3Y6b9hAJQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.24.tgz",
+ "integrity": "sha512-uTHDOpVQTMjcGgrqFPSb8iO2m1DUvo+WbGqoXQz8Y1CeBYQ0FXf2z1gLRaBtHjlRz7zZUBHxjVB5VTLzYkvftg==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-sfc": "3.5.22",
- "@vue/runtime-dom": "3.5.22",
- "@vue/server-renderer": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-sfc": "3.5.24",
+ "@vue/runtime-dom": "3.5.24",
+ "@vue/server-renderer": "3.5.24",
+ "@vue/shared": "3.5.24"
},
"peerDependencies": {
"typescript": "*"
diff --git a/pdf/package.json b/pdf/package.json
index d8d4534c76..c17c850e77 100644
--- a/pdf/package.json
+++ b/pdf/package.json
@@ -18,7 +18,7 @@
"lint:check:prettier": "prettier --check --ignore-path .prettierignore **/*.{css,scss,json,mjs}"
},
"dependencies": {
- "@vue/runtime-core": "3.5.22",
+ "@vue/runtime-core": "3.5.24",
"html-entities": "2.6.0",
"html-parse-stringify": "3.0.1"
},
@@ -32,31 +32,31 @@
"runes": "0.4.3"
},
"devDependencies": {
- "@babel/eslint-parser": "7.28.4",
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
+ "@babel/eslint-parser": "7.28.5",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
"@intlify/core": "11.1.12",
- "@rushstack/eslint-patch": "1.14.0",
+ "@rushstack/eslint-patch": "1.14.1",
"@vitejs/plugin-vue": "6.0.1",
"@vitest/coverage-v8": "3.2.4",
"@vue/babel-preset-app": "5.0.9",
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-sfc": "3.5.22",
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-sfc": "3.5.24",
"@vue/eslint-config-prettier": "10.2.0",
- "@vue/runtime-dom": "3.5.22",
- "@vue/server-renderer": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@vue/runtime-dom": "3.5.24",
+ "@vue/server-renderer": "3.5.24",
+ "@vue/shared": "3.5.24",
"@vue/test-utils": "2.4.6",
"css": "3.0.0",
- "dayjs": "1.11.18",
- "eslint": "9.38.0",
+ "dayjs": "1.11.19",
+ "eslint": "9.39.1",
"eslint-plugin-local-rules": "3.0.2",
"eslint-plugin-vue": "10.5.1",
- "globals": "16.4.0",
- "jsdom": "27.0.1",
+ "globals": "16.5.0",
+ "jsdom": "27.1.0",
"prettier": "3.6.2",
"url-template": "3.1.1",
- "vite": "7.1.11",
+ "vite": "7.2.2",
"vitest": "3.2.4"
},
"overrides": {
diff --git a/print/package-lock.json b/print/package-lock.json
index 9881f669be..6a0811f9c9 100644
--- a/print/package-lock.json
+++ b/print/package-lock.json
@@ -8,50 +8,56 @@
"dependencies": {
"@jamescoyle/vue-icon": "0.1.2",
"@mdi/js": "7.4.47",
- "@sentry/node": "10.20.0",
- "axios": "1.12.2",
+ "@sentry/node": "10.23.0",
+ "axios": "1.13.2",
"colorjs.io": "0.5.2",
- "dayjs": "1.11.18",
+ "dayjs": "1.11.19",
"deepmerge": "4.3.1",
"hal-json-vuex": "3.0.0-alpha.10",
- "isomorphic-dompurify": "2.29.0",
+ "isomorphic-dompurify": "2.31.0",
"lodash-es": "4.17.21",
- "puppeteer-core": "24.25.0",
+ "puppeteer-core": "24.29.1",
"runes": "0.4.3",
"vuex": "4.1.0"
},
"devDependencies": {
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
- "@nuxt/eslint": "1.9.0",
- "@nuxt/eslint-config": "1.9.0",
- "@nuxtjs/i18n": "10.1.1",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
+ "@nuxt/eslint": "1.10.0",
+ "@nuxt/eslint-config": "1.10.0",
+ "@nuxtjs/i18n": "10.2.0",
"@nuxtjs/tailwindcss": "6.14.0",
"@tailwindcss/typography": "0.5.19",
- "@typescript-eslint/eslint-plugin": "8.46.2",
+ "@typescript-eslint/eslint-plugin": "8.46.4",
"@vitest/coverage-v8": "3.2.4",
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-sfc": "3.5.22",
- "@vue/runtime-dom": "3.5.22",
- "@vue/server-renderer": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-sfc": "3.5.24",
+ "@vue/runtime-dom": "3.5.24",
+ "@vue/server-renderer": "3.5.24",
+ "@vue/shared": "3.5.24",
"@vue/test-utils": "2.4.6",
- "eslint": "9.38.0",
+ "eslint": "9.39.1",
"eslint-config-prettier": "10.1.8",
"eslint-plugin-local-rules": "3.0.2",
"eslint-plugin-prettier": "5.5.4",
"eslint-plugin-vue": "10.5.1",
"eslint-plugin-vue-scoped-css": "2.12.0",
- "globals": "16.4.0",
- "nuxt": "4.1.3",
+ "globals": "16.5.0",
+ "nuxt": "4.2.1",
"prettier": "3.6.2",
"sass": "1.82.0",
"vite-plugin-eslint2": "5.0.4",
"vite-svg-loader": "5.1.0",
"vitest": "3.2.4",
- "vue": "3.5.22"
+ "vue": "3.5.24"
}
},
+ "node_modules/@acemir/cssom": {
+ "version": "0.9.23",
+ "resolved": "https://registry.npmjs.org/@acemir/cssom/-/cssom-0.9.23.tgz",
+ "integrity": "sha512-2kJ1HxBKzPLbmhZpxBiTZggjtgCwKg1ma5RHShxvd6zgqhDEdEkzpiwe7jLkI2p2BrZvFCXIihdoMkl1H39VnA==",
+ "license": "MIT"
+ },
"node_modules/@alloc/quick-lru": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/@alloc/quick-lru/-/quick-lru-5.2.0.tgz",
@@ -143,9 +149,9 @@
}
},
"node_modules/@asamuzakjp/dom-selector": {
- "version": "6.7.2",
- "resolved": "https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-6.7.2.tgz",
- "integrity": "sha512-ccKogJI+0aiDhOahdjANIc9SDixSud1gbwdVrhn7kMopAtLXqsz9MKmQQtIl6Y5aC2IYq+j4dz/oedL2AVMmVQ==",
+ "version": "6.7.4",
+ "resolved": "https://registry.npmjs.org/@asamuzakjp/dom-selector/-/dom-selector-6.7.4.tgz",
+ "integrity": "sha512-buQDjkm+wDPXd6c13534URWZqbz0RP5PAhXZ+LIoa5LgwInT9HVJvGIJivg75vi8I13CxDGdTnz+aY5YUJlIAA==",
"license": "MIT",
"dependencies": {
"@asamuzakjp/nwsapi": "^2.3.9",
@@ -760,9 +766,9 @@
}
},
"node_modules/@csstools/css-syntax-patches-for-csstree": {
- "version": "1.0.14",
- "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.14.tgz",
- "integrity": "sha512-zSlIxa20WvMojjpCSy8WrNpcZ61RqfTfX3XTaOeVlGJrt/8HF3YbzgFZa01yTbT4GWQLwfTcC3EB8i3XnB647Q==",
+ "version": "1.0.16",
+ "resolved": "https://registry.npmjs.org/@csstools/css-syntax-patches-for-csstree/-/css-syntax-patches-for-csstree-1.0.16.tgz",
+ "integrity": "sha512-2SpS4/UaWQaGpBINyG5ZuCHnUDeVByOhvbkARwfmnfxDvTaj80yOI1cD8Tw93ICV5Fx4fnyDKWQZI1CDtcWyUg==",
"funding": [
{
"type": "github",
@@ -776,9 +782,6 @@
"license": "MIT-0",
"engines": {
"node": ">=18"
- },
- "peerDependencies": {
- "postcss": "^8.4"
}
},
"node_modules/@csstools/css-tokenizer": {
@@ -801,10 +804,31 @@
"node": ">=18"
}
},
+ "node_modules/@dxup/nuxt": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/@dxup/nuxt/-/nuxt-0.2.2.tgz",
+ "integrity": "sha512-RNpJjDZs9+JcT9N87AnOuHsNM75DEd58itADNd/s1LIF6BZbTLZV0xxilJZb55lntn4TYvscTaXLCBX2fq9CXg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@dxup/unimport": "^0.1.2",
+ "@nuxt/kit": "^4.2.1",
+ "chokidar": "^4.0.3",
+ "pathe": "^2.0.3",
+ "tinyglobby": "^0.2.15"
+ }
+ },
+ "node_modules/@dxup/unimport": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/@dxup/unimport/-/unimport-0.1.2.tgz",
+ "integrity": "sha512-/B8YJGPzaYq1NbsQmwgP8EZqg40NpTw4ZB3suuI0TplbxKHeK94jeaawLmVhCv+YwUnOpiWEz9U6SeThku/8JQ==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@emnapi/core": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.6.0.tgz",
- "integrity": "sha512-zq/ay+9fNIJJtJiZxdTnXS20PllcYMX3OE23ESc4HK/bdYu3cOWYVhsOhVnXALfU/uqJIxn5NBPd9z4v+SfoSg==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.7.0.tgz",
+ "integrity": "sha512-pJdKGq/1iquWYtv1RRSljZklxHCOCAJFJrImO5ZLKPJVJlVUcs8yFwNQlqS0Lo8xT1VAXXTCZocF9n26FWEKsw==",
"dev": true,
"license": "MIT",
"optional": true,
@@ -814,9 +838,9 @@
}
},
"node_modules/@emnapi/runtime": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.6.0.tgz",
- "integrity": "sha512-obtUmAHTMjll499P+D9A3axeJFlhdjOWdKUNs/U6QIGT7V5RjcUW1xToAzjvmgTSQhDbYn/NwfTRoJcQ2rNBxA==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.7.0.tgz",
+ "integrity": "sha512-oAYoQnCYaQZKVS53Fq23ceWMRxq5EhQsE0x0RdQ55jT7wagMu5k+fS39v1fiSLrtrLQlXwVINenqhLMtTrV/1Q==",
"dev": true,
"license": "MIT",
"optional": true,
@@ -836,26 +860,36 @@
}
},
"node_modules/@es-joy/jsdoccomment": {
- "version": "0.56.0",
- "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.56.0.tgz",
- "integrity": "sha512-c6EW+aA1w2rjqOMjbL93nZlwxp6c1Ln06vTYs5FjRRhmJXK8V/OrSXdT+pUr4aRYgjCgu8/OkiZr0tzeVrRSbw==",
+ "version": "0.76.0",
+ "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.76.0.tgz",
+ "integrity": "sha512-g+RihtzFgGTx2WYCuTHbdOXJeAlGnROws0TeALx9ow/ZmOROOZkVg5wp/B44n0WJgI4SQFP1eWM2iRPlU2Y14w==",
"dev": true,
"license": "MIT",
"dependencies": {
"@types/estree": "^1.0.8",
- "@typescript-eslint/types": "^8.42.0",
+ "@typescript-eslint/types": "^8.46.0",
"comment-parser": "1.4.1",
"esquery": "^1.6.0",
- "jsdoc-type-pratt-parser": "~5.1.0"
+ "jsdoc-type-pratt-parser": "~6.10.0"
},
"engines": {
"node": ">=20.11.0"
}
},
+ "node_modules/@es-joy/resolve.exports": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@es-joy/resolve.exports/-/resolve.exports-1.2.0.tgz",
+ "integrity": "sha512-Q9hjxWI5xBM+qW2enxfe8wDKdFWMfd0Z29k5ZJnuBqD/CasY5Zryj09aCA6owbGATWz+39p5uIdaHXpopOcG8g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/@esbuild/aix-ppc64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.11.tgz",
- "integrity": "sha512-Xt1dOL13m8u0WE8iplx9Ibbm+hFAO0GsU2P34UNoDGvZYkY8ifSiy6Zuc1lYxfG7svWE2fzqCUmFp5HCn51gJg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.25.12.tgz",
+ "integrity": "sha512-Hhmwd6CInZ3dwpuGTF8fJG6yoWmsToE+vYgD4nytZVxcu1ulHpUQRAB1UJ8+N1Am3Mz4+xOByoQoSZf4D+CpkA==",
"cpu": [
"ppc64"
],
@@ -870,9 +904,9 @@
}
},
"node_modules/@esbuild/android-arm": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.11.tgz",
- "integrity": "sha512-uoa7dU+Dt3HYsethkJ1k6Z9YdcHjTrSb5NUy66ZfZaSV8hEYGD5ZHbEMXnqLFlbBflLsl89Zke7CAdDJ4JI+Gg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.25.12.tgz",
+ "integrity": "sha512-VJ+sKvNA/GE7Ccacc9Cha7bpS8nyzVv0jdVgwNDaR4gDMC/2TTRc33Ip8qrNYUcpkOHUT5OZ0bUcNNVZQ9RLlg==",
"cpu": [
"arm"
],
@@ -887,9 +921,9 @@
}
},
"node_modules/@esbuild/android-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.11.tgz",
- "integrity": "sha512-9slpyFBc4FPPz48+f6jyiXOx/Y4v34TUeDDXJpZqAWQn/08lKGeD8aDp9TMn9jDz2CiEuHwfhRmGBvpnd/PWIQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.25.12.tgz",
+ "integrity": "sha512-6AAmLG7zwD1Z159jCKPvAxZd4y/VTO0VkprYy+3N2FtJ8+BQWFXU+OxARIwA46c5tdD9SsKGZ/1ocqBS/gAKHg==",
"cpu": [
"arm64"
],
@@ -904,9 +938,9 @@
}
},
"node_modules/@esbuild/android-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.11.tgz",
- "integrity": "sha512-Sgiab4xBjPU1QoPEIqS3Xx+R2lezu0LKIEcYe6pftr56PqPygbB7+szVnzoShbx64MUupqoE0KyRlN7gezbl8g==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.25.12.tgz",
+ "integrity": "sha512-5jbb+2hhDHx5phYR2By8GTWEzn6I9UqR11Kwf22iKbNpYrsmRB18aX/9ivc5cabcUiAT/wM+YIZ6SG9QO6a8kg==",
"cpu": [
"x64"
],
@@ -921,9 +955,9 @@
}
},
"node_modules/@esbuild/darwin-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.11.tgz",
- "integrity": "sha512-VekY0PBCukppoQrycFxUqkCojnTQhdec0vevUL/EDOCnXd9LKWqD/bHwMPzigIJXPhC59Vd1WFIL57SKs2mg4w==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.12.tgz",
+ "integrity": "sha512-N3zl+lxHCifgIlcMUP5016ESkeQjLj/959RxxNYIthIg+CQHInujFuXeWbWMgnTo4cp5XVHqFPmpyu9J65C1Yg==",
"cpu": [
"arm64"
],
@@ -938,9 +972,9 @@
}
},
"node_modules/@esbuild/darwin-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.11.tgz",
- "integrity": "sha512-+hfp3yfBalNEpTGp9loYgbknjR695HkqtY3d3/JjSRUyPg/xd6q+mQqIb5qdywnDxRZykIHs3axEqU6l1+oWEQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.25.12.tgz",
+ "integrity": "sha512-HQ9ka4Kx21qHXwtlTUVbKJOAnmG1ipXhdWTmNXiPzPfWKpXqASVcWdnf2bnL73wgjNrFXAa3yYvBSd9pzfEIpA==",
"cpu": [
"x64"
],
@@ -955,9 +989,9 @@
}
},
"node_modules/@esbuild/freebsd-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.11.tgz",
- "integrity": "sha512-CmKjrnayyTJF2eVuO//uSjl/K3KsMIeYeyN7FyDBjsR3lnSJHaXlVoAK8DZa7lXWChbuOk7NjAc7ygAwrnPBhA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-gA0Bx759+7Jve03K1S0vkOu5Lg/85dou3EseOGUes8flVOGxbhDDh/iZaoek11Y8mtyKPGF3vP8XhnkDEAmzeg==",
"cpu": [
"arm64"
],
@@ -972,9 +1006,9 @@
}
},
"node_modules/@esbuild/freebsd-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.11.tgz",
- "integrity": "sha512-Dyq+5oscTJvMaYPvW3x3FLpi2+gSZTCE/1ffdwuM6G1ARang/mb3jvjxs0mw6n3Lsw84ocfo9CrNMqc5lTfGOw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.25.12.tgz",
+ "integrity": "sha512-TGbO26Yw2xsHzxtbVFGEXBFH0FRAP7gtcPE7P5yP7wGy7cXK2oO7RyOhL5NLiqTlBh47XhmIUXuGciXEqYFfBQ==",
"cpu": [
"x64"
],
@@ -989,9 +1023,9 @@
}
},
"node_modules/@esbuild/linux-arm": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.11.tgz",
- "integrity": "sha512-TBMv6B4kCfrGJ8cUPo7vd6NECZH/8hPpBHHlYI3qzoYFvWu2AdTvZNuU/7hsbKWqu/COU7NIK12dHAAqBLLXgw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.25.12.tgz",
+ "integrity": "sha512-lPDGyC1JPDou8kGcywY0YILzWlhhnRjdof3UlcoqYmS9El818LLfJJc3PXXgZHrHCAKs/Z2SeZtDJr5MrkxtOw==",
"cpu": [
"arm"
],
@@ -1006,9 +1040,9 @@
}
},
"node_modules/@esbuild/linux-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.11.tgz",
- "integrity": "sha512-Qr8AzcplUhGvdyUF08A1kHU3Vr2O88xxP0Tm8GcdVOUm25XYcMPp2YqSVHbLuXzYQMf9Bh/iKx7YPqECs6ffLA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.25.12.tgz",
+ "integrity": "sha512-8bwX7a8FghIgrupcxb4aUmYDLp8pX06rGh5HqDT7bB+8Rdells6mHvrFHHW2JAOPZUbnjUpKTLg6ECyzvas2AQ==",
"cpu": [
"arm64"
],
@@ -1023,9 +1057,9 @@
}
},
"node_modules/@esbuild/linux-ia32": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.11.tgz",
- "integrity": "sha512-TmnJg8BMGPehs5JKrCLqyWTVAvielc615jbkOirATQvWWB1NMXY77oLMzsUjRLa0+ngecEmDGqt5jiDC6bfvOw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.25.12.tgz",
+ "integrity": "sha512-0y9KrdVnbMM2/vG8KfU0byhUN+EFCny9+8g202gYqSSVMonbsCfLjUO+rCci7pM0WBEtz+oK/PIwHkzxkyharA==",
"cpu": [
"ia32"
],
@@ -1040,9 +1074,9 @@
}
},
"node_modules/@esbuild/linux-loong64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.11.tgz",
- "integrity": "sha512-DIGXL2+gvDaXlaq8xruNXUJdT5tF+SBbJQKbWy/0J7OhU8gOHOzKmGIlfTTl6nHaCOoipxQbuJi7O++ldrxgMw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.25.12.tgz",
+ "integrity": "sha512-h///Lr5a9rib/v1GGqXVGzjL4TMvVTv+s1DPoxQdz7l/AYv6LDSxdIwzxkrPW438oUXiDtwM10o9PmwS/6Z0Ng==",
"cpu": [
"loong64"
],
@@ -1057,9 +1091,9 @@
}
},
"node_modules/@esbuild/linux-mips64el": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.11.tgz",
- "integrity": "sha512-Osx1nALUJu4pU43o9OyjSCXokFkFbyzjXb6VhGIJZQ5JZi8ylCQ9/LFagolPsHtgw6himDSyb5ETSfmp4rpiKQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.25.12.tgz",
+ "integrity": "sha512-iyRrM1Pzy9GFMDLsXn1iHUm18nhKnNMWscjmp4+hpafcZjrr2WbT//d20xaGljXDBYHqRcl8HnxbX6uaA/eGVw==",
"cpu": [
"mips64el"
],
@@ -1074,9 +1108,9 @@
}
},
"node_modules/@esbuild/linux-ppc64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.11.tgz",
- "integrity": "sha512-nbLFgsQQEsBa8XSgSTSlrnBSrpoWh7ioFDUmwo158gIm5NNP+17IYmNWzaIzWmgCxq56vfr34xGkOcZ7jX6CPw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.25.12.tgz",
+ "integrity": "sha512-9meM/lRXxMi5PSUqEXRCtVjEZBGwB7P/D4yT8UG/mwIdze2aV4Vo6U5gD3+RsoHXKkHCfSxZKzmDssVlRj1QQA==",
"cpu": [
"ppc64"
],
@@ -1091,9 +1125,9 @@
}
},
"node_modules/@esbuild/linux-riscv64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.11.tgz",
- "integrity": "sha512-HfyAmqZi9uBAbgKYP1yGuI7tSREXwIb438q0nqvlpxAOs3XnZ8RsisRfmVsgV486NdjD7Mw2UrFSw51lzUk1ww==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.25.12.tgz",
+ "integrity": "sha512-Zr7KR4hgKUpWAwb1f3o5ygT04MzqVrGEGXGLnj15YQDJErYu/BGg+wmFlIDOdJp0PmB0lLvxFIOXZgFRrdjR0w==",
"cpu": [
"riscv64"
],
@@ -1108,9 +1142,9 @@
}
},
"node_modules/@esbuild/linux-s390x": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.11.tgz",
- "integrity": "sha512-HjLqVgSSYnVXRisyfmzsH6mXqyvj0SA7pG5g+9W7ESgwA70AXYNpfKBqh1KbTxmQVaYxpzA/SvlB9oclGPbApw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.25.12.tgz",
+ "integrity": "sha512-MsKncOcgTNvdtiISc/jZs/Zf8d0cl/t3gYWX8J9ubBnVOwlk65UIEEvgBORTiljloIWnBzLs4qhzPkJcitIzIg==",
"cpu": [
"s390x"
],
@@ -1125,9 +1159,9 @@
}
},
"node_modules/@esbuild/linux-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.11.tgz",
- "integrity": "sha512-HSFAT4+WYjIhrHxKBwGmOOSpphjYkcswF449j6EjsjbinTZbp8PJtjsVK1XFJStdzXdy/jaddAep2FGY+wyFAQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.25.12.tgz",
+ "integrity": "sha512-uqZMTLr/zR/ed4jIGnwSLkaHmPjOjJvnm6TVVitAa08SLS9Z0VM8wIRx7gWbJB5/J54YuIMInDquWyYvQLZkgw==",
"cpu": [
"x64"
],
@@ -1142,9 +1176,9 @@
}
},
"node_modules/@esbuild/netbsd-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.11.tgz",
- "integrity": "sha512-hr9Oxj1Fa4r04dNpWr3P8QKVVsjQhqrMSUzZzf+LZcYjZNqhA3IAfPQdEh1FLVUJSiu6sgAwp3OmwBfbFgG2Xg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-xXwcTq4GhRM7J9A8Gv5boanHhRa/Q9KLVmcyXHCTaM4wKfIpWkdXiMog/KsnxzJ0A1+nD+zoecuzqPmCRyBGjg==",
"cpu": [
"arm64"
],
@@ -1159,9 +1193,9 @@
}
},
"node_modules/@esbuild/netbsd-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.11.tgz",
- "integrity": "sha512-u7tKA+qbzBydyj0vgpu+5h5AeudxOAGncb8N6C9Kh1N4n7wU1Xw1JDApsRjpShRpXRQlJLb9wY28ELpwdPcZ7A==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.25.12.tgz",
+ "integrity": "sha512-Ld5pTlzPy3YwGec4OuHh1aCVCRvOXdH8DgRjfDy/oumVovmuSzWfnSJg+VtakB9Cm0gxNO9BzWkj6mtO1FMXkQ==",
"cpu": [
"x64"
],
@@ -1176,9 +1210,9 @@
}
},
"node_modules/@esbuild/openbsd-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.11.tgz",
- "integrity": "sha512-Qq6YHhayieor3DxFOoYM1q0q1uMFYb7cSpLD2qzDSvK1NAvqFi8Xgivv0cFC6J+hWVw2teCYltyy9/m/14ryHg==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.12.tgz",
+ "integrity": "sha512-fF96T6KsBo/pkQI950FARU9apGNTSlZGsv1jZBAlcLL1MLjLNIWPBkj5NlSz8aAzYKg+eNqknrUJ24QBybeR5A==",
"cpu": [
"arm64"
],
@@ -1193,9 +1227,9 @@
}
},
"node_modules/@esbuild/openbsd-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.11.tgz",
- "integrity": "sha512-CN+7c++kkbrckTOz5hrehxWN7uIhFFlmS/hqziSFVWpAzpWrQoAG4chH+nN3Be+Kzv/uuo7zhX716x3Sn2Jduw==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.25.12.tgz",
+ "integrity": "sha512-MZyXUkZHjQxUvzK7rN8DJ3SRmrVrke8ZyRusHlP+kuwqTcfWLyqMOE3sScPPyeIXN/mDJIfGXvcMqCgYKekoQw==",
"cpu": [
"x64"
],
@@ -1210,9 +1244,9 @@
}
},
"node_modules/@esbuild/openharmony-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.11.tgz",
- "integrity": "sha512-rOREuNIQgaiR+9QuNkbkxubbp8MSO9rONmwP5nKncnWJ9v5jQ4JxFnLu4zDSRPf3x4u+2VN4pM4RdyIzDty/wQ==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.12.tgz",
+ "integrity": "sha512-rm0YWsqUSRrjncSXGA7Zv78Nbnw4XL6/dzr20cyrQf7ZmRcsovpcRBdhD43Nuk3y7XIoW2OxMVvwuRvk9XdASg==",
"cpu": [
"arm64"
],
@@ -1227,9 +1261,9 @@
}
},
"node_modules/@esbuild/sunos-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.11.tgz",
- "integrity": "sha512-nq2xdYaWxyg9DcIyXkZhcYulC6pQ2FuCgem3LI92IwMgIZ69KHeY8T4Y88pcwoLIjbed8n36CyKoYRDygNSGhA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.25.12.tgz",
+ "integrity": "sha512-3wGSCDyuTHQUzt0nV7bocDy72r2lI33QL3gkDNGkod22EsYl04sMf0qLb8luNKTOmgF/eDEDP5BFNwoBKH441w==",
"cpu": [
"x64"
],
@@ -1244,9 +1278,9 @@
}
},
"node_modules/@esbuild/win32-arm64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.11.tgz",
- "integrity": "sha512-3XxECOWJq1qMZ3MN8srCJ/QfoLpL+VaxD/WfNRm1O3B4+AZ/BnLVgFbUV3eiRYDMXetciH16dwPbbHqwe1uU0Q==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.25.12.tgz",
+ "integrity": "sha512-rMmLrur64A7+DKlnSuwqUdRKyd3UE7oPJZmnljqEptesKM8wx9J8gx5u0+9Pq0fQQW8vqeKebwNXdfOyP+8Bsg==",
"cpu": [
"arm64"
],
@@ -1261,9 +1295,9 @@
}
},
"node_modules/@esbuild/win32-ia32": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.11.tgz",
- "integrity": "sha512-3ukss6gb9XZ8TlRyJlgLn17ecsK4NSQTmdIXRASVsiS2sQ6zPPZklNJT5GR5tE/MUarymmy8kCEf5xPCNCqVOA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.25.12.tgz",
+ "integrity": "sha512-HkqnmmBoCbCwxUKKNPBixiWDGCpQGVsrQfJoVGYLPT41XWF8lHuE5N6WhVia2n4o5QK5M4tYr21827fNhi4byQ==",
"cpu": [
"ia32"
],
@@ -1278,9 +1312,9 @@
}
},
"node_modules/@esbuild/win32-x64": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.11.tgz",
- "integrity": "sha512-D7Hpz6A2L4hzsRpPaCYkQnGOotdUpDzSGRIv9I+1ITdHROSFUWW95ZPZWQmGka1Fg7W3zFJowyn9WGwMJ0+KPA==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.25.12.tgz",
+ "integrity": "sha512-alJC0uCZpTFrSL0CCDjcgleBXPnCrEAhTBILpeAp7M/OFgoqtAetfBzX0xM00MUsVVPpVjlPuMbREqnZCXaTnA==",
"cpu": [
"x64"
],
@@ -1324,13 +1358,13 @@
}
},
"node_modules/@eslint/compat": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.0.tgz",
- "integrity": "sha512-DEzm5dKeDBPm3r08Ixli/0cmxr8LkRdwxMRUIJBlSCpAwSrvFEJpVBzV+66JhDxiaqKxnRzCXhtiMiczF7Hglg==",
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/@eslint/compat/-/compat-1.4.1.tgz",
+ "integrity": "sha512-cfO82V9zxxGBxcQDr1lfaYB7wykTa0b00mGa36FrJl7iTFd0Z2cHfEYuxcBRP/iNijCsWsEkA+jzT8hGYmv33w==",
"dev": true,
"license": "Apache-2.0",
"dependencies": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1384,13 +1418,13 @@
}
},
"node_modules/@eslint/config-helpers": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@eslint/config-helpers/-/config-helpers-0.4.1.tgz",
- "integrity": "sha512-csZAzkNhsgwb0I/UAV6/RGFTbiakPCf0ZrGmrIxQpYvGZ00PhTkSnyKNolphgIvmnJeGw6rcGVEXfTzUnFuEvw==",
+ "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": {
- "@eslint/core": "^0.16.0"
+ "@eslint/core": "^0.17.0"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -1430,10 +1464,57 @@
"eslint": "^8.50.0 || ^9.0.0"
}
},
+ "node_modules/@eslint/config-inspector/node_modules/find-up": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-7.0.0.tgz",
+ "integrity": "sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^7.2.0",
+ "path-exists": "^5.0.0",
+ "unicorn-magic": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@eslint/config-inspector/node_modules/locate-path": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz",
+ "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^6.0.0"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@eslint/config-inspector/node_modules/unicorn-magic": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz",
+ "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/@eslint/core": {
- "version": "0.16.0",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.16.0.tgz",
- "integrity": "sha512-nmC8/totwobIiFcGkDza3GIKfAw1+hLiYVrh3I1nIomQ8PEr5cxg34jnkmGawul/ep52wGRAcyeDCNtWKSOj4Q==",
+ "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": {
@@ -1515,9 +1596,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.38.0.tgz",
- "integrity": "sha512-UZ1VpFvXf9J06YG9xQBdnzU+kthors6KjhMAl6f4gH4usHyh31rUf2DLGInT8RFYIReYXNSydgPY0V2LuWgl7A==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.39.1.tgz",
+ "integrity": "sha512-S26Stp4zCy88tH94QbBv3XCuzRQiZ9yXofEILmglYTh/Ug/a9/umqvgFtYBAo3Lp0nsI/5/qH1CCrbdK3AP1Tw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -1538,13 +1619,13 @@
}
},
"node_modules/@eslint/plugin-kit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.4.0.tgz",
- "integrity": "sha512-sB5uyeq+dwCWyPi31B2gQlVlo+j5brPlWx4yZBrEaRo/nhdDE8Xke1gsGgtiBdaBTxuTkceLVuVt/pclrasb0A==",
+ "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": {
- "@eslint/core": "^0.16.0",
+ "@eslint/core": "^0.17.0",
"levn": "^0.4.1"
},
"engines": {
@@ -1667,13 +1748,13 @@
}
},
"node_modules/@intlify/h3": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/@intlify/h3/-/h3-0.7.1.tgz",
- "integrity": "sha512-D/9+L7IzPrOa7e6R/ztepXayAq+snfzBYIwAk3RbaQsLEXwVNjC5c+WKXjni1boc/plGRegw4/m33SaFwvdEpg==",
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/@intlify/h3/-/h3-0.7.4.tgz",
+ "integrity": "sha512-BtL5+U3Dd9Qz6so+ArOMQWZ+nV21rOqqYUXnqwvW6J3VUXr66A9+9+vUFb/NAQvOU4kdfkO3c/9LMRGU9WZ8vw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@intlify/core": "^11.0.0",
+ "@intlify/core": "^11.1.12",
"@intlify/utils": "^0.13.0"
},
"engines": {
@@ -2146,39 +2227,36 @@
}
},
"node_modules/@nuxt/cli": {
- "version": "3.29.3",
- "resolved": "https://registry.npmjs.org/@nuxt/cli/-/cli-3.29.3.tgz",
- "integrity": "sha512-48GYmH4SyzR5pqd02UXVzBfrvEGaurPKMjSWxlHgqnpI5buwOYCvH+OqvHOmvnLrDP2bxR9hbDod/UIphOjMhg==",
+ "version": "3.30.0",
+ "resolved": "https://registry.npmjs.org/@nuxt/cli/-/cli-3.30.0.tgz",
+ "integrity": "sha512-nBNEkvOwqzxgvfTBUKPX0zN4h85dWjjkW+kP4OFnVaN3C3kdsbScNtYPIZyp0+ArabL5t4RT93Gyx0IZMRNzAQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "c12": "^3.3.0",
+ "c12": "^3.3.1",
"citty": "^0.1.6",
- "clipboardy": "^5.0.0",
"confbox": "^0.2.2",
"consola": "^3.4.2",
+ "copy-paste": "^2.2.0",
"defu": "^6.1.4",
"exsolve": "^1.0.7",
"fuse.js": "^7.1.0",
- "get-port-please": "^3.2.0",
"giget": "^2.0.0",
- "h3": "^1.15.4",
"jiti": "^2.6.1",
"listhen": "^1.9.0",
"nypm": "^0.6.2",
- "ofetch": "^1.4.1",
+ "ofetch": "^1.5.1",
"ohash": "^2.0.11",
"pathe": "^2.0.3",
"perfect-debounce": "^2.0.0",
"pkg-types": "^2.3.0",
"scule": "^1.3.0",
- "semver": "^7.7.2",
- "srvx": "^0.8.9",
- "std-env": "^3.9.0",
+ "semver": "^7.7.3",
+ "srvx": "^0.9.4",
+ "std-env": "^3.10.0",
"tinyexec": "^1.0.1",
"ufo": "^1.6.1",
- "undici": "^7.16.0",
- "youch": "^4.1.0-beta.11"
+ "youch": "^4.1.0-beta.12"
},
"bin": {
"nuxi": "bin/nuxi.mjs",
@@ -2198,42 +2276,42 @@
"license": "MIT"
},
"node_modules/@nuxt/devtools": {
- "version": "2.6.5",
- "resolved": "https://registry.npmjs.org/@nuxt/devtools/-/devtools-2.6.5.tgz",
- "integrity": "sha512-Xh9XF1SzCTL5Zj6EULqsN2UjiNj4zWuUpS69rGAy5C55UTaj+Wn46IkDc6Q0+EKkGI279zlG6SzPRFawqPPUEw==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@nuxt/devtools/-/devtools-3.1.0.tgz",
+ "integrity": "sha512-aPH5V3j6h8bprMTR7oDqJ1AfHl0FL2JHcGlbrCA5DXLLhLL+D4L8pLgiJLEvYMo3Onk56TT7aXgPX54g/eDetg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@nuxt/devtools-kit": "2.6.5",
- "@nuxt/devtools-wizard": "2.6.5",
- "@nuxt/kit": "^3.19.2",
- "@vue/devtools-core": "^7.7.7",
- "@vue/devtools-kit": "^7.7.7",
- "birpc": "^2.5.0",
+ "@nuxt/devtools-kit": "3.1.0",
+ "@nuxt/devtools-wizard": "3.1.0",
+ "@nuxt/kit": "^4.2.1",
+ "@vue/devtools-core": "^8.0.3",
+ "@vue/devtools-kit": "^8.0.3",
+ "birpc": "^2.7.0",
"consola": "^3.4.2",
"destr": "^2.0.5",
"error-stack-parser-es": "^1.0.5",
"execa": "^8.0.1",
- "fast-npm-meta": "^0.4.6",
+ "fast-npm-meta": "^0.4.7",
"get-port-please": "^3.2.0",
"hookable": "^5.5.3",
- "image-meta": "^0.2.1",
+ "image-meta": "^0.2.2",
"is-installed-globally": "^1.0.0",
- "launch-editor": "^2.11.1",
+ "launch-editor": "^2.12.0",
"local-pkg": "^1.1.2",
- "magicast": "^0.3.5",
+ "magicast": "^0.5.1",
"nypm": "^0.6.2",
"ohash": "^2.0.11",
"pathe": "^2.0.3",
- "perfect-debounce": "^1.0.0",
+ "perfect-debounce": "^2.0.0",
"pkg-types": "^2.3.0",
- "semver": "^7.7.2",
- "simple-git": "^3.28.0",
+ "semver": "^7.7.3",
+ "simple-git": "^3.30.0",
"sirv": "^3.0.2",
"structured-clone-es": "^1.0.0",
"tinyglobby": "^0.2.15",
"vite-plugin-inspect": "^11.3.3",
- "vite-plugin-vue-tracer": "^1.0.0",
+ "vite-plugin-vue-tracer": "^1.1.1",
"which": "^5.0.0",
"ws": "^8.18.3"
},
@@ -2241,111 +2319,59 @@
"devtools": "cli.mjs"
},
"peerDependencies": {
+ "@vitejs/devtools": "*",
"vite": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "@vitejs/devtools": {
+ "optional": true
+ }
}
},
"node_modules/@nuxt/devtools-kit": {
- "version": "2.6.5",
- "resolved": "https://registry.npmjs.org/@nuxt/devtools-kit/-/devtools-kit-2.6.5.tgz",
- "integrity": "sha512-t+NxoENyzJ8KZDrnbVYv3FJI5VXqSi6X4w6ZsuIIh0aKABu6+6k9nR/LoEhrM0oekn/2LDhA0NmsRZyzCXt2xQ==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@nuxt/devtools-kit/-/devtools-kit-3.1.0.tgz",
+ "integrity": "sha512-1AEZS6ge8G9X3sJauw6hTWqTpUIVqs5Uq9d7Z9cjUAinXjE+pGliVQ+i8xWCNnGLaZCCSqX/I/M/EByD3v2JIA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@nuxt/kit": "^3.19.2",
+ "@nuxt/kit": "^4.2.1",
"execa": "^8.0.1"
},
"peerDependencies": {
"vite": ">=6.0"
}
},
- "node_modules/@nuxt/devtools-kit/node_modules/@nuxt/kit": {
- "version": "3.19.3",
- "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.19.3.tgz",
- "integrity": "sha512-ze46EW5xW+UxDvinvPkYt2MzR355Az1lA3bpX8KDialgnCwr+IbkBij/udbUEC6ZFbidPkfK1eKl4ESN7gMY+w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "c12": "^3.3.0",
- "consola": "^3.4.2",
- "defu": "^6.1.4",
- "destr": "^2.0.5",
- "errx": "^0.1.0",
- "exsolve": "^1.0.7",
- "ignore": "^7.0.5",
- "jiti": "^2.6.1",
- "klona": "^2.0.6",
- "knitwork": "^1.2.0",
- "mlly": "^1.8.0",
- "ohash": "^2.0.11",
- "pathe": "^2.0.3",
- "pkg-types": "^2.3.0",
- "rc9": "^2.1.2",
- "scule": "^1.3.0",
- "semver": "^7.7.2",
- "std-env": "^3.9.0",
- "tinyglobby": "^0.2.15",
- "ufo": "^1.6.1",
- "unctx": "^2.4.1",
- "unimport": "^5.4.1",
- "untyped": "^2.0.0"
- },
- "engines": {
- "node": ">=18.12.0"
- }
- },
"node_modules/@nuxt/devtools-wizard": {
- "version": "2.6.5",
- "resolved": "https://registry.npmjs.org/@nuxt/devtools-wizard/-/devtools-wizard-2.6.5.tgz",
- "integrity": "sha512-nYYGxT4lmQDvfHL6qolNWLu0QTavsdN/98F57falPuvdgs5ev1NuYsC12hXun+5ENcnigEcoM9Ij92qopBgqmQ==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@nuxt/devtools-wizard/-/devtools-wizard-3.1.0.tgz",
+ "integrity": "sha512-XYYWnG6SAvALCdXbM+xklqv7sEiVZbKgGparv8jFE5Tt6l8sg80Eb+vM40+Xpdu2KE3VlFKj4F4oFwDXMvAkgA==",
"dev": true,
"license": "MIT",
"dependencies": {
"consola": "^3.4.2",
"diff": "^8.0.2",
"execa": "^8.0.1",
- "magicast": "^0.3.5",
+ "magicast": "^0.5.1",
"pathe": "^2.0.3",
"pkg-types": "^2.3.0",
"prompts": "^2.4.2",
- "semver": "^7.7.2"
+ "semver": "^7.7.3"
},
"bin": {
"devtools-wizard": "cli.mjs"
}
},
- "node_modules/@nuxt/devtools/node_modules/@nuxt/kit": {
- "version": "3.19.3",
- "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.19.3.tgz",
- "integrity": "sha512-ze46EW5xW+UxDvinvPkYt2MzR355Az1lA3bpX8KDialgnCwr+IbkBij/udbUEC6ZFbidPkfK1eKl4ESN7gMY+w==",
+ "node_modules/@nuxt/devtools-wizard/node_modules/magicast": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.5.1.tgz",
+ "integrity": "sha512-xrHS24IxaLrvuo613F719wvOIv9xPHFWQHuvGUBmPnCA/3MQxKI3b+r7n1jAoDHmsbC5bRhTZYR77invLAxVnw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "c12": "^3.3.0",
- "consola": "^3.4.2",
- "defu": "^6.1.4",
- "destr": "^2.0.5",
- "errx": "^0.1.0",
- "exsolve": "^1.0.7",
- "ignore": "^7.0.5",
- "jiti": "^2.6.1",
- "klona": "^2.0.6",
- "knitwork": "^1.2.0",
- "mlly": "^1.8.0",
- "ohash": "^2.0.11",
- "pathe": "^2.0.3",
- "pkg-types": "^2.3.0",
- "rc9": "^2.1.2",
- "scule": "^1.3.0",
- "semver": "^7.7.2",
- "std-env": "^3.9.0",
- "tinyglobby": "^0.2.15",
- "ufo": "^1.6.1",
- "unctx": "^2.4.1",
- "unimport": "^5.4.1",
- "untyped": "^2.0.0"
- },
- "engines": {
- "node": ">=18.12.0"
+ "@babel/parser": "^7.28.5",
+ "@babel/types": "^7.28.5",
+ "source-map-js": "^1.2.1"
}
},
"node_modules/@nuxt/devtools/node_modules/isexe": {
@@ -2358,12 +2384,17 @@
"node": ">=16"
}
},
- "node_modules/@nuxt/devtools/node_modules/perfect-debounce": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz",
- "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==",
+ "node_modules/@nuxt/devtools/node_modules/magicast": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.5.1.tgz",
+ "integrity": "sha512-xrHS24IxaLrvuo613F719wvOIv9xPHFWQHuvGUBmPnCA/3MQxKI3b+r7n1jAoDHmsbC5bRhTZYR77invLAxVnw==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "dependencies": {
+ "@babel/parser": "^7.28.5",
+ "@babel/types": "^7.28.5",
+ "source-map-js": "^1.2.1"
+ }
},
"node_modules/@nuxt/devtools/node_modules/which": {
"version": "5.0.0",
@@ -2382,25 +2413,25 @@
}
},
"node_modules/@nuxt/eslint": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@nuxt/eslint/-/eslint-1.9.0.tgz",
- "integrity": "sha512-8Wm2fDD9za+vJOOhRS2jj+MzyjCNvDhS+04Y55q9W1Ai5hFjTZ1a94jlgSwaqI1B3Zt7y5fqFoEb4wKpZ3ycWg==",
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/@nuxt/eslint/-/eslint-1.10.0.tgz",
+ "integrity": "sha512-cuq7jRdhVtnqrU5vcy+jW8u/2A7BHwczPkrr/5XIRB10WOA1NLC9Jo+ts4NlWbCdLy/+9jCHcOV0U94pn9SQUw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@eslint/config-inspector": "^1.2.0",
- "@nuxt/devtools-kit": "^2.6.2",
- "@nuxt/eslint-config": "1.9.0",
- "@nuxt/eslint-plugin": "1.9.0",
- "@nuxt/kit": "^4.0.3",
+ "@eslint/config-inspector": "^1.3.0",
+ "@nuxt/devtools-kit": "^3.0.0",
+ "@nuxt/eslint-config": "1.10.0",
+ "@nuxt/eslint-plugin": "1.10.0",
+ "@nuxt/kit": "^4.2.0",
"chokidar": "^4.0.3",
- "eslint-flat-config-utils": "^2.1.1",
+ "eslint-flat-config-utils": "^2.1.4",
"eslint-typegen": "^2.3.0",
- "find-up": "^7.0.0",
+ "find-up": "^8.0.0",
"get-port-please": "^3.2.0",
- "mlly": "^1.7.4",
+ "mlly": "^1.8.0",
"pathe": "^2.0.3",
- "unimport": "^5.2.0"
+ "unimport": "^5.5.0"
},
"peerDependencies": {
"eslint": "^9.0.0",
@@ -2417,31 +2448,31 @@
}
},
"node_modules/@nuxt/eslint-config": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@nuxt/eslint-config/-/eslint-config-1.9.0.tgz",
- "integrity": "sha512-KLiYlX/MmWR9dhC0u7GSZQl6wyVLGAHme5aAL5fAUT1PLYgcFiJIUg1Z+b296LmwHGTa+oGPRBIk3yoDmX9/9Q==",
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/@nuxt/eslint-config/-/eslint-config-1.10.0.tgz",
+ "integrity": "sha512-6Ry+sV5FaTBg3a0l+4gcxuz0IsQG5dSF6OxHNDlDx2yTygMOxeCn6vdc2Cz/e4LtYGvwZIlhH9wVlnWnD3+G+Q==",
"dev": true,
"license": "MIT",
"dependencies": {
"@antfu/install-pkg": "^1.1.0",
"@clack/prompts": "^0.11.0",
- "@eslint/js": "^9.33.0",
- "@nuxt/eslint-plugin": "1.9.0",
- "@stylistic/eslint-plugin": "^5.2.3",
- "@typescript-eslint/eslint-plugin": "^8.39.1",
- "@typescript-eslint/parser": "^8.39.1",
+ "@eslint/js": "^9.38.0",
+ "@nuxt/eslint-plugin": "1.10.0",
+ "@stylistic/eslint-plugin": "^5.5.0",
+ "@typescript-eslint/eslint-plugin": "^8.46.2",
+ "@typescript-eslint/parser": "^8.46.2",
"eslint-config-flat-gitignore": "^2.1.0",
- "eslint-flat-config-utils": "^2.1.1",
+ "eslint-flat-config-utils": "^2.1.4",
"eslint-merge-processors": "^2.0.0",
"eslint-plugin-import-lite": "^0.3.0",
"eslint-plugin-import-x": "^4.16.1",
- "eslint-plugin-jsdoc": "^54.1.0",
+ "eslint-plugin-jsdoc": "^61.1.10",
"eslint-plugin-regexp": "^2.10.0",
- "eslint-plugin-unicorn": "^60.0.0",
- "eslint-plugin-vue": "^10.4.0",
+ "eslint-plugin-unicorn": "^62.0.0",
+ "eslint-plugin-vue": "^10.5.1",
"eslint-processor-vue-blocks": "^2.0.0",
- "globals": "^16.3.0",
- "local-pkg": "^1.1.1",
+ "globals": "^16.4.0",
+ "local-pkg": "^1.1.2",
"pathe": "^2.0.3",
"vue-eslint-parser": "^10.2.0"
},
@@ -2456,27 +2487,27 @@
}
},
"node_modules/@nuxt/eslint-plugin": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@nuxt/eslint-plugin/-/eslint-plugin-1.9.0.tgz",
- "integrity": "sha512-DY4ZSavgFyKQxI/NCOpSCUHg3dpS2O4lAdic5UmvP2NWj1xwtvmA9UwEZQ2nW2/f/Km6N+Q53UsgFSIBjz8jDQ==",
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/@nuxt/eslint-plugin/-/eslint-plugin-1.10.0.tgz",
+ "integrity": "sha512-KL8eCdYGuEIVlts/B+MLgL7FCpaPt2HU6m3XBsUdl+LXPI7/eCMSLlFDmDmfz+PuMx0PCGo7ayyDN6cid12Rlw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "^8.39.1",
- "@typescript-eslint/utils": "^8.39.1"
+ "@typescript-eslint/types": "^8.46.2",
+ "@typescript-eslint/utils": "^8.46.2"
},
"peerDependencies": {
"eslint": "^9.0.0"
}
},
"node_modules/@nuxt/kit": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-4.1.3.tgz",
- "integrity": "sha512-WK0yPIqcb3GQ8r4GutF6p/2fsyXnmmmkuwVLzN4YaJHrpA2tjEagjbxdjkWYeHW8o4XIKJ4micah4wPOVK49Mg==",
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-4.2.1.tgz",
+ "integrity": "sha512-lLt8KLHyl7IClc3RqRpRikz15eCfTRlAWL9leVzPyg5N87FfKE/7EWgWvpiL/z4Tf3dQCIqQb88TmHE0JTIDvA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "c12": "^3.3.0",
+ "c12": "^3.3.1",
"consola": "^3.4.2",
"defu": "^6.1.4",
"destr": "^2.0.5",
@@ -2491,32 +2522,82 @@
"pkg-types": "^2.3.0",
"rc9": "^2.1.2",
"scule": "^1.3.0",
- "semver": "^7.7.2",
- "std-env": "^3.9.0",
+ "semver": "^7.7.3",
"tinyglobby": "^0.2.15",
"ufo": "^1.6.1",
"unctx": "^2.4.1",
- "unimport": "^5.4.1",
"untyped": "^2.0.0"
},
"engines": {
"node": ">=18.12.0"
}
},
- "node_modules/@nuxt/schema": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-4.1.3.tgz",
- "integrity": "sha512-ZLkIfleKHQF0PqTDEwuVVnnE/hyMdfY4m2zX8vRC0XMSbFS1I0MFcKkzWnJaMC13NYmGPnT3sX0o3lznweKHJQ==",
+ "node_modules/@nuxt/nitro-server": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@nuxt/nitro-server/-/nitro-server-4.2.1.tgz",
+ "integrity": "sha512-P6zGvKgbjwDO28A4QnRuhL0riNSxcw317nGSYfP9Z+V+GyCNVc9yCcAEuzRIvm+dv4PB6VC708my8Jq30VM9Ow==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/shared": "^3.5.22",
+ "@nuxt/devalue": "^2.0.2",
+ "@nuxt/kit": "4.2.1",
+ "@unhead/vue": "^2.0.19",
+ "@vue/shared": "^3.5.23",
"consola": "^3.4.2",
"defu": "^6.1.4",
+ "destr": "^2.0.5",
+ "devalue": "^5.4.2",
+ "errx": "^0.1.0",
+ "escape-string-regexp": "^5.0.0",
+ "exsolve": "^1.0.7",
+ "h3": "^1.15.4",
+ "impound": "^1.0.0",
+ "klona": "^2.0.6",
+ "mocked-exports": "^0.1.1",
+ "nitropack": "^2.12.9",
"pathe": "^2.0.3",
"pkg-types": "^2.3.0",
- "std-env": "^3.9.0",
- "ufo": "1.6.1"
+ "radix3": "^1.1.2",
+ "std-env": "^3.10.0",
+ "ufo": "^1.6.1",
+ "unctx": "^2.4.1",
+ "unstorage": "^1.17.2",
+ "vue": "^3.5.23",
+ "vue-bundle-renderer": "^2.2.0",
+ "vue-devtools-stub": "^0.1.0"
+ },
+ "engines": {
+ "node": "^20.19.0 || >=22.12.0"
+ },
+ "peerDependencies": {
+ "nuxt": "^4.2.1"
+ }
+ },
+ "node_modules/@nuxt/nitro-server/node_modules/escape-string-regexp": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
+ "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@nuxt/schema": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@nuxt/schema/-/schema-4.2.1.tgz",
+ "integrity": "sha512-kSuma7UztDVyw8eAmN3rKFoaWjNRkJE9+kqwEurpuxG7nCwFPS7sUPSGzovzaofP+xV30tl6wveBEcDRWyQvgA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@vue/shared": "^3.5.23",
+ "defu": "^6.1.4",
+ "pathe": "^2.0.3",
+ "pkg-types": "^2.3.0",
+ "std-env": "^3.10.0"
},
"engines": {
"node": "^14.18.0 || >=16.10.0"
@@ -2550,13 +2631,13 @@
}
},
"node_modules/@nuxt/telemetry/node_modules/@nuxt/kit": {
- "version": "3.19.3",
- "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.19.3.tgz",
- "integrity": "sha512-ze46EW5xW+UxDvinvPkYt2MzR355Az1lA3bpX8KDialgnCwr+IbkBij/udbUEC6ZFbidPkfK1eKl4ESN7gMY+w==",
+ "version": "3.20.1",
+ "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.20.1.tgz",
+ "integrity": "sha512-TIslaylfI5kd3AxX5qts0qyrIQ9Uq3HAA1bgIIJ+c+zpDfK338YS+YrCWxBBzDMECRCbAS58mqAd2MtJfG1ENA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "c12": "^3.3.0",
+ "c12": "^3.3.1",
"consola": "^3.4.2",
"defu": "^6.1.4",
"destr": "^2.0.5",
@@ -2572,12 +2653,10 @@
"pkg-types": "^2.3.0",
"rc9": "^2.1.2",
"scule": "^1.3.0",
- "semver": "^7.7.2",
- "std-env": "^3.9.0",
+ "semver": "^7.7.3",
"tinyglobby": "^0.2.15",
"ufo": "^1.6.1",
"unctx": "^2.4.1",
- "unimport": "^5.4.1",
"untyped": "^2.0.0"
},
"engines": {
@@ -2598,39 +2677,40 @@
}
},
"node_modules/@nuxt/vite-builder": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/@nuxt/vite-builder/-/vite-builder-4.1.3.tgz",
- "integrity": "sha512-yrblLSpGW6h9k+sDZa+vtevQz/6JLrPAj3n97HrEmVa6qB+4sE4HWtkMNUtWsOPe60sAm9usRsjDUkkiHZ0DpA==",
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@nuxt/vite-builder/-/vite-builder-4.2.1.tgz",
+ "integrity": "sha512-SuBxCtGrHcbgrtzHwJgLe0pBXWw2T9RFQx9JQ7A3dE9RjBhzjaxtmjVHx7vtq6DCGi0d0WlW1Z1lBZUDaXy8WA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@nuxt/kit": "4.1.3",
- "@rollup/plugin-replace": "^6.0.2",
+ "@nuxt/kit": "4.2.1",
+ "@rollup/plugin-replace": "^6.0.3",
"@vitejs/plugin-vue": "^6.0.1",
"@vitejs/plugin-vue-jsx": "^5.1.1",
"autoprefixer": "^10.4.21",
"consola": "^3.4.2",
- "cssnano": "^7.1.1",
+ "cssnano": "^7.1.2",
"defu": "^6.1.4",
- "esbuild": "^0.25.10",
+ "esbuild": "^0.25.12",
"escape-string-regexp": "^5.0.0",
"exsolve": "^1.0.7",
"get-port-please": "^3.2.0",
"h3": "^1.15.4",
"jiti": "^2.6.1",
"knitwork": "^1.2.0",
- "magic-string": "^0.30.19",
+ "magic-string": "^0.30.21",
"mlly": "^1.8.0",
"mocked-exports": "^0.1.1",
"pathe": "^2.0.3",
"pkg-types": "^2.3.0",
"postcss": "^8.5.6",
- "rollup-plugin-visualizer": "^6.0.4",
- "std-env": "^3.9.0",
+ "rollup-plugin-visualizer": "^6.0.5",
+ "seroval": "^1.3.2",
+ "std-env": "^3.10.0",
"ufo": "^1.6.1",
- "unenv": "^2.0.0-rc.21",
- "vite": "^7.1.9",
- "vite-node": "^3.2.4",
+ "unenv": "^2.0.0-rc.24",
+ "vite": "^7.2.1",
+ "vite-node": "^5.0.0",
"vite-plugin-checker": "^0.11.0",
"vue-bundle-renderer": "^2.2.0"
},
@@ -2638,6 +2718,7 @@
"node": "^20.19.0 || >=22.12.0"
},
"peerDependencies": {
+ "nuxt": "4.2.1",
"rolldown": "^1.0.0-beta.38",
"vue": "^3.3.4"
},
@@ -2660,10 +2741,33 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/@nuxt/vite-builder/node_modules/vite-node": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-5.0.0.tgz",
+ "integrity": "sha512-nJINVH7lHBKoyDFYnwrXbNUrmTJ2ssBHTd/mXVZfLq/O5K7ksv4CayQOA5KkbOSrsgSQg8antcVPgQmzBWWn/w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cac": "^6.7.14",
+ "debug": "^4.4.3",
+ "es-module-lexer": "^1.7.0",
+ "pathe": "^2.0.3",
+ "vite": "^7.2.0"
+ },
+ "bin": {
+ "vite-node": "vite-node.js"
+ },
+ "engines": {
+ "node": "^18.0.0 || ^20.0.0 || >=22.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/antfu"
+ }
+ },
"node_modules/@nuxtjs/i18n": {
- "version": "10.1.1",
- "resolved": "https://registry.npmjs.org/@nuxtjs/i18n/-/i18n-10.1.1.tgz",
- "integrity": "sha512-/NpJkXZ0jP7K3h+Z6JV2miv+9GzeM27aLjLKKMW5J6jM3FzaR5hKpu9m3wNW0DkHftyg8y4bQ0xzbaQ8RXZG9g==",
+ "version": "10.2.0",
+ "resolved": "https://registry.npmjs.org/@nuxtjs/i18n/-/i18n-10.2.0.tgz",
+ "integrity": "sha512-noQTJICmiWLgi6QgF26n//IwBT0p4ntEV+CALhj+/4EFGEoBxl5/AEm1Ved6WSLBWHodrayMk3dRGVfQdRP2nQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -2676,26 +2780,25 @@
"@nuxt/kit": "^4.1.2",
"@rollup/plugin-yaml": "^4.1.2",
"@vue/compiler-sfc": "^3.5.22",
- "cookie-es": "^2.0.0",
"defu": "^6.1.4",
"devalue": "^5.1.1",
"h3": "^1.15.4",
"knitwork": "^1.2.0",
- "magic-string": "^0.30.19",
+ "magic-string": "^0.30.21",
"mlly": "^1.7.4",
"nuxt-define": "^1.0.0",
"ohash": "^2.0.11",
- "oxc-parser": "^0.93.0",
- "oxc-transform": "^0.93.0",
+ "oxc-parser": "^0.95.0",
+ "oxc-transform": "^0.95.0",
"oxc-walker": "^0.5.2",
"pathe": "^2.0.3",
"typescript": "^5.9.2",
"ufo": "^1.6.1",
"unplugin": "^2.3.5",
- "unplugin-vue-router": "^0.15.0",
+ "unplugin-vue-router": "^0.16.0",
"unstorage": "^1.16.1",
"vue-i18n": "^11.1.11",
- "vue-router": "^4.5.1"
+ "vue-router": "^4.6.3"
},
"engines": {
"node": ">=20.11.1"
@@ -2730,13 +2833,13 @@
}
},
"node_modules/@nuxtjs/tailwindcss/node_modules/@nuxt/kit": {
- "version": "3.19.3",
- "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.19.3.tgz",
- "integrity": "sha512-ze46EW5xW+UxDvinvPkYt2MzR355Az1lA3bpX8KDialgnCwr+IbkBij/udbUEC6ZFbidPkfK1eKl4ESN7gMY+w==",
+ "version": "3.20.1",
+ "resolved": "https://registry.npmjs.org/@nuxt/kit/-/kit-3.20.1.tgz",
+ "integrity": "sha512-TIslaylfI5kd3AxX5qts0qyrIQ9Uq3HAA1bgIIJ+c+zpDfK338YS+YrCWxBBzDMECRCbAS58mqAd2MtJfG1ENA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "c12": "^3.3.0",
+ "c12": "^3.3.1",
"consola": "^3.4.2",
"defu": "^6.1.4",
"destr": "^2.0.5",
@@ -2752,12 +2855,10 @@
"pkg-types": "^2.3.0",
"rc9": "^2.1.2",
"scule": "^1.3.0",
- "semver": "^7.7.2",
- "std-env": "^3.9.0",
+ "semver": "^7.7.3",
"tinyglobby": "^0.2.15",
"ufo": "^1.6.1",
"unctx": "^2.4.1",
- "unimport": "^5.4.1",
"untyped": "^2.0.0"
},
"engines": {
@@ -3266,9 +3367,9 @@
}
},
"node_modules/@opentelemetry/semantic-conventions": {
- "version": "1.37.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.37.0.tgz",
- "integrity": "sha512-JD6DerIKdJGmRp4jQyX5FlrQjA4tjOw1cvfsPAZXfOOEErMUHjPcPSICS+6WnM0nB0efSFARh0KAZss+bvExOA==",
+ "version": "1.38.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.38.0.tgz",
+ "integrity": "sha512-kocjix+/sSggfJhwXqClZ3i9Y/MI0fp7b+g7kCRm6psy2dsf8uApTRclwG18h8Avm7C9+fnt+O36PspJ/OzoWg==",
"license": "Apache-2.0",
"peer": true,
"engines": {
@@ -3291,9 +3392,9 @@
}
},
"node_modules/@oxc-minify/binding-android-arm64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-android-arm64/-/binding-android-arm64-0.94.0.tgz",
- "integrity": "sha512-7VEBFFFAi4cYqlW/ziVs5XmNM/0IqAp7duBuTM/zus/EOc3Q2zhS9ApJo0zIwbRUZMlIm1RHe8Hths//xE7K1A==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-android-arm64/-/binding-android-arm64-0.96.0.tgz",
+ "integrity": "sha512-lzeIEMu/v6Y+La5JSesq4hvyKtKBq84cgQpKYTYM/yGuNk2tfd5Ha31hnC+mTh48lp/5vZH+WBfjVUjjINCfug==",
"cpu": [
"arm64"
],
@@ -3308,9 +3409,9 @@
}
},
"node_modules/@oxc-minify/binding-darwin-arm64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-darwin-arm64/-/binding-darwin-arm64-0.94.0.tgz",
- "integrity": "sha512-T0k3pG/izIutpl8cQl9Xeb0TikBILGd3rglCgRhhG5G5xsk/AAAp/qsSdzBm/8yMXksfRWqE0teh7XDWKmzOXw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-darwin-arm64/-/binding-darwin-arm64-0.96.0.tgz",
+ "integrity": "sha512-i0LkJAUXb4BeBFrJQbMKQPoxf8+cFEffDyLSb7NEzzKuPcH8qrVsnEItoOzeAdYam8Sr6qCHVwmBNEQzl7PWpw==",
"cpu": [
"arm64"
],
@@ -3325,9 +3426,9 @@
}
},
"node_modules/@oxc-minify/binding-darwin-x64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-darwin-x64/-/binding-darwin-x64-0.94.0.tgz",
- "integrity": "sha512-1gJeYcQf0Mmnu9Gxld2dLJGXTm9EzOQKRAjCVT2xGciKrNeekkJntDb+NdzxcSNPTjchkvbDwY6lCGZbcJx2lg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-darwin-x64/-/binding-darwin-x64-0.96.0.tgz",
+ "integrity": "sha512-C5vI0WPR+KPIFAD5LMOJk2J8iiT+Nv65vDXmemzXEXouzfEOLYNqnW+u6NSsccpuZHHWAiLyPFkYvKFduveAUQ==",
"cpu": [
"x64"
],
@@ -3342,9 +3443,9 @@
}
},
"node_modules/@oxc-minify/binding-freebsd-x64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-freebsd-x64/-/binding-freebsd-x64-0.94.0.tgz",
- "integrity": "sha512-LvaxVkEVLgBNQO2RUYwbmRC0cLpq5WHPsM7B4xsojwqpJNsK5l2VnTAuExvPthC1gKWlsoQsVoT03Ex/SZ4FOw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-freebsd-x64/-/binding-freebsd-x64-0.96.0.tgz",
+ "integrity": "sha512-3//5DNx+xUjVBMLLk2sl6hfe4fwfENJtjVQUBXjxzwPuv8xgZUqASG4cRG3WqG5Qe8dV6SbCI4EgKQFjO4KCZA==",
"cpu": [
"x64"
],
@@ -3359,9 +3460,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-arm-gnueabihf": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.94.0.tgz",
- "integrity": "sha512-o/IEdJKl7Y78fIvIRPeA4ccgmOAzeMS8tsjpO7XlENWPzS3cA/6Iy4BqMqYyqUZewgt0a2ggw0zAioIwKPiDmw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.96.0.tgz",
+ "integrity": "sha512-WXChFKV7VdDk1NePDK1J31cpSvxACAVztJ7f7lJVYBTkH+iz5D0lCqPcE7a9eb7nC3xvz4yk7DM6dA9wlUQkQg==",
"cpu": [
"arm"
],
@@ -3376,9 +3477,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-arm-musleabihf": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.94.0.tgz",
- "integrity": "sha512-hFCeIV/eCASCW/F2t/DR4JUKUNxn2pr4hAIBEBYDaGPvdOVMlMh+eMbg401ZiaQLwM26Dj53b5XWALwit0mGAw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.96.0.tgz",
+ "integrity": "sha512-7B18glYMX4Z/YoqgE3VRLs/2YhVLxlxNKSgrtsRpuR8xv58xca+hEhiFwZN1Rn+NSMZ29Z33LWD7iYWnqYFvRA==",
"cpu": [
"arm"
],
@@ -3393,9 +3494,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-arm64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.94.0.tgz",
- "integrity": "sha512-so/XF1XdJdpWVUkyz45F3iNJgzoXgeNBoYfmDTuLFIXE2U7vAtE8DHkA87LlbC6Ry7KIM4Ehw7hP4Z4h7M51fA==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.96.0.tgz",
+ "integrity": "sha512-Yl+KcTldsEJNcaYxxonwAXZ2q3gxIzn3kXYQWgKWdaGIpNhOCWqF+KE5WLsldoh5Ro5SHtomvb8GM6cXrIBMog==",
"cpu": [
"arm64"
],
@@ -3410,9 +3511,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-arm64-musl": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.94.0.tgz",
- "integrity": "sha512-IMi2Sq3Z3xvA06Otit/D6Vo2BATZJcDHu6dHcaznBwnpO0z0+N9i3TKprIVizBHW77wq8QBLIbQaWQn4go1WwQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.96.0.tgz",
+ "integrity": "sha512-rNqoFWOWaxwMmUY5fspd/h5HfvgUlA3sv9CUdA2MpnHFiyoJNovR7WU8tGh+Yn0qOAs0SNH0a05gIthHig14IA==",
"cpu": [
"arm64"
],
@@ -3427,9 +3528,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-riscv64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.94.0.tgz",
- "integrity": "sha512-1QWSK1CcmGwlJZBWCF+NpzpQ5c3WybtgVqeQX8FRIhlApBtvMsifZe4tz1FIoBoQeCKwCQzyvpIA71cpCpY/xg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.96.0.tgz",
+ "integrity": "sha512-3paajIuzGnukHwSI3YBjYVqbd72pZd8NJxaayaNFR0AByIm8rmIT5RqFXbq8j2uhtpmNdZRXiu0em1zOmIScWA==",
"cpu": [
"riscv64"
],
@@ -3444,9 +3545,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-s390x-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.94.0.tgz",
- "integrity": "sha512-UfIuYWcs1tb/vwGwZPPVaO38OubKfi+MkySl2ZP/3Vk4InxtQ+BxxgNqiQbhyvx14GZtkFphH3I2FZaDUsvfYg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.96.0.tgz",
+ "integrity": "sha512-9ESrpkB2XG0lQ89JlsxlZa86iQCOs+jkDZLl6O+u5wb7ynUy21bpJJ1joauCOSYIOUlSy3+LbtJLiqi7oSQt5Q==",
"cpu": [
"s390x"
],
@@ -3461,9 +3562,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-x64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.94.0.tgz",
- "integrity": "sha512-Iokd1dfneOcNHBJH8o5cMgDkII8R7dzOFSaMrZiSZkLr+woT3Ed7uLqTKwleNKq52z5+XwmgcvO00c6ywStCpA==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.96.0.tgz",
+ "integrity": "sha512-UMM1jkns+p+WwwmdjC5giI3SfR2BCTga18x3C0cAu6vDVf4W37uTZeTtSIGmwatTBbgiq++Te24/DE0oCdm1iQ==",
"cpu": [
"x64"
],
@@ -3478,9 +3579,9 @@
}
},
"node_modules/@oxc-minify/binding-linux-x64-musl": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-x64-musl/-/binding-linux-x64-musl-0.94.0.tgz",
- "integrity": "sha512-W4hFq/e21o2cOKx9xltJuVo/xgXnn4SsUioo/86pk5vCmUXg++J0PMML/oOZTSbevlklg/Vxo8slRUSU4/0PzA==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-linux-x64-musl/-/binding-linux-x64-musl-0.96.0.tgz",
+ "integrity": "sha512-8b1naiC7MdP7xeMi7cQ5tb9W1rZAP9Qz/jBRqp1Y5EOZ1yhSGnf1QWuZ/0pCc+XiB9vEHXEY3Aki/H+86m2eOg==",
"cpu": [
"x64"
],
@@ -3495,9 +3596,9 @@
}
},
"node_modules/@oxc-minify/binding-wasm32-wasi": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-wasm32-wasi/-/binding-wasm32-wasi-0.94.0.tgz",
- "integrity": "sha512-0bOaEuh7QX8MfqyrRjNPOWhcsYl0IGoHX1nPtFIFGm0f/AJsJ+3wbyI9WvkAOXZmRgI9DMKGbDJdU6J59JxA7w==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-wasm32-wasi/-/binding-wasm32-wasi-0.96.0.tgz",
+ "integrity": "sha512-bjGDjkGzo3GWU9Vg2qiFUrfoo5QxojPNV/2RHTlbIB5FWkkV4ExVjsfyqihFiAuj0NXIZqd2SAiEq9htVd3RFw==",
"cpu": [
"wasm32"
],
@@ -3505,16 +3606,16 @@
"license": "MIT",
"optional": true,
"dependencies": {
- "@napi-rs/wasm-runtime": "^1.0.6"
+ "@napi-rs/wasm-runtime": "^1.0.7"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@oxc-minify/binding-win32-arm64-msvc": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.94.0.tgz",
- "integrity": "sha512-qXuSuUmLn7v79R0noaRlJES7m0BLfBWwPAmPjzu553eJObvKS15TfHH4uxr0h31Bmy4jqWX2r+oirz/Pg+hSEg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.96.0.tgz",
+ "integrity": "sha512-4L4DlHUT47qMWQuTyUghpncR3NZHWtxvd0G1KgSjVgXf+cXzFdWQCWZZtCU0yrmOoVCNUf4S04IFCJyAe+Ie7A==",
"cpu": [
"arm64"
],
@@ -3529,9 +3630,9 @@
}
},
"node_modules/@oxc-minify/binding-win32-x64-msvc": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-minify/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.94.0.tgz",
- "integrity": "sha512-DtnN623PGZlNLRyyWtUQPEATeiGVnv9l8TMV9wCdd3AFNA9bmeFzmojcpwBFj/a5DOY5mds7cwC+Z+rjTPn+OQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-minify/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.96.0.tgz",
+ "integrity": "sha512-T2ijfqZLpV2bgGGocXV4SXTuMoouqN0asYTIm+7jVOLvT5XgDogf3ZvCmiEnSWmxl21+r5wHcs8voU2iUROXAg==",
"cpu": [
"x64"
],
@@ -3546,9 +3647,9 @@
}
},
"node_modules/@oxc-parser/binding-android-arm64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.93.0.tgz",
- "integrity": "sha512-hTxegqGaVA5py2XCNV3Ry6e0tJNl32ZlB5TNOL9YuxvzTY3y3ySJovhufaubtOr/qW/FYmA5l+UC78gbtRTLEw==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.95.0.tgz",
+ "integrity": "sha512-dZyxhhvJigwWL1wgnLlqyEiSeuqO0WdDH9H+if0dPcBM4fKa5fjVkaUcJT1jBMcBTnkjxMwTXYZy5TK60N0fjg==",
"cpu": [
"arm64"
],
@@ -3563,9 +3664,9 @@
}
},
"node_modules/@oxc-parser/binding-darwin-arm64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.93.0.tgz",
- "integrity": "sha512-8Er+e4+0BX3hc+Ajuq/60p4qA4/dW8XGUdbE1LBEwx6z1anKv4lAc/J2GfPWLUAhJLZIaM/waGBSxhoWDrZD9A==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.95.0.tgz",
+ "integrity": "sha512-zun9+V33kyCtNec9oUSWwb0qi3fB8pXwum1yGFECPEr55g/CrWju6/Jv4hwwNBeW2tK9Ch/PRstEtYmOLMhHpg==",
"cpu": [
"arm64"
],
@@ -3580,9 +3681,9 @@
}
},
"node_modules/@oxc-parser/binding-darwin-x64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.93.0.tgz",
- "integrity": "sha512-pRLB9uEgTj/P4eNrQlKJX6Ey5pelhaQnywdF4uIFPWLVGjRoS8IEuRVE9+FxUjnikXBIJceDgtRd16/EArgAKQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.95.0.tgz",
+ "integrity": "sha512-9djMQ/t6Ns/UXtziwUe562uVJMbhtuLtCj+Xav+HMVT/rhV9gWO8PQOG7AwDLUBjJanItsrfqrGtqhNxtZ701w==",
"cpu": [
"x64"
],
@@ -3597,9 +3698,9 @@
}
},
"node_modules/@oxc-parser/binding-freebsd-x64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.93.0.tgz",
- "integrity": "sha512-aH2kMXL+60rhBbHYWU5cICo6HufTAWs1/8Ztu0nI4rr0Facp/mK2Ft6pGeuDxCJeKGyYIC21GIxVA7BHrGk9TQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.95.0.tgz",
+ "integrity": "sha512-GK6k0PgCVkkeRZtHgcosCYbXIRySpJpuPw/OInfLGFh8f3x9gp2l8Fbcfx+YO+ZOHFBCd2NNedGqw8wMgouxfA==",
"cpu": [
"x64"
],
@@ -3614,9 +3715,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-arm-gnueabihf": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.93.0.tgz",
- "integrity": "sha512-vk1nZchv1hH2yf6hE5Nbs8DliRGEoDtAwonxpz/yBaAvUsKFZHHwx0hXdJdWr+8EfSfgbWfk4YT6rUadz9N7hQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.95.0.tgz",
+ "integrity": "sha512-+g/lFITtyHHEk69cunOHuiT5cX+mpUTcbGYNe8suguZ7FqgNwai+PnGv0ctCvtgxBPVfckfUK8c3RvFKo+vi/w==",
"cpu": [
"arm"
],
@@ -3631,9 +3732,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-arm-musleabihf": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.93.0.tgz",
- "integrity": "sha512-xDrvQ23KUGWi7hPfGrFTrGLiwSeb9W1IEVpMPsRKmlvLP+zJS9Ht+RaPaLJwwQgdlNYI9f05oE6opAH5sw7MTQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.95.0.tgz",
+ "integrity": "sha512-SXNasDtPw8ycNV7VEvFxb4LETmykvWKUhHR7K3us818coXYpDj54P8WEx8hJobP/9skuuiFuKHmtYLdjX8wntA==",
"cpu": [
"arm"
],
@@ -3648,9 +3749,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-arm64-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.93.0.tgz",
- "integrity": "sha512-NoB7BJmwVGrcS/J5XXn362lBsIyeTqZF70rCFij3/XwQ2kcELfGMALY9AUulFYauLTY2AG4vcmctJQxn9Lj85g==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.95.0.tgz",
+ "integrity": "sha512-0LzebARTU0ROfD6pDK4h1pFn+09meErCZ0MA2TaW08G72+GNneEsksPufOuI+9AxVSRa+jKE3fu0wavvhZgSkg==",
"cpu": [
"arm64"
],
@@ -3665,9 +3766,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-arm64-musl": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.93.0.tgz",
- "integrity": "sha512-s+nraJJR9SuHsgsr42nbOBpAsaSAE6MhK7HGbz01svLJzDsk3Ylh9cbVUPLaS3gOlTq5WC6VjPBkQuInLo0hvQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.95.0.tgz",
+ "integrity": "sha512-Pvi1lGe/G+mJZ3hUojMP/aAHAzHA25AEtVr8/iuz7UV72t/15NOgJYr9kELMUMNjPqpr3vKUgXTFmTtAxp11Qw==",
"cpu": [
"arm64"
],
@@ -3682,9 +3783,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-riscv64-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.93.0.tgz",
- "integrity": "sha512-oNIQb/7HGxVNeVgtkoqNcDS1hjfxArLDuMI72V+Slp67yfBdxgvfmM2JSWE7kGR5gyiZQeTjRbG89VrRwPDtww==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.95.0.tgz",
+ "integrity": "sha512-pUEVHIOVNDfhk4sTlLhn6mrNENhE4/dAwemxIfqpcSyBlYG0xYZND1F3jjR2yWY6DakXZ6VSuDbtiv1LPNlOLw==",
"cpu": [
"riscv64"
],
@@ -3699,9 +3800,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-s390x-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.93.0.tgz",
- "integrity": "sha512-YyzhzAoq5WpRtAGOngpJUu+4jKagSbknORejmpeW48vu8/+XjrVZFc/1Qe4i72EsPzLorDwCxWVkU8VftpM4iA==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.95.0.tgz",
+ "integrity": "sha512-5+olaepHTE3J/+w7g0tr3nocvv5BKilAJnzj4L8tWBCLEZbL6olJcGVoldUO+3cgg1SO1xJywP5BuLhT0mDUDw==",
"cpu": [
"s390x"
],
@@ -3716,9 +3817,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-x64-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.93.0.tgz",
- "integrity": "sha512-UMXsE6c0MIlvtqDe5t5K8qwC6HqNb3wmy8zKxONo42dIx0WAhVV9ydG2Xlznt1/RhD6nLLtHVaq4yWJXRjUxcg==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.95.0.tgz",
+ "integrity": "sha512-8huzHlK/N98wrnYKxIcYsK8ZGBWomQchu/Mzi6m+CtbhjWOv9DmK0jQ2fUWImtluQVpTwS0uZT06d3g7XIkJrA==",
"cpu": [
"x64"
],
@@ -3733,9 +3834,9 @@
}
},
"node_modules/@oxc-parser/binding-linux-x64-musl": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.93.0.tgz",
- "integrity": "sha512-0Vd0yFUq129VW+Cpcj/gJOqub4EMN5hUWnVk8UfAvUZ+lxZBFeXbYNI5483SLwzvw5umzlMmkKpYWw5OTwYFaA==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.95.0.tgz",
+ "integrity": "sha512-bWnrLfGDcx/fab0+UQnFbVFbiykof/btImbYf+cI2pU/1Egb2x+OKSmM5Qt0nEUiIpM5fgJmYXxTopybSZOKYA==",
"cpu": [
"x64"
],
@@ -3750,9 +3851,9 @@
}
},
"node_modules/@oxc-parser/binding-wasm32-wasi": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.93.0.tgz",
- "integrity": "sha512-EXyCyY4GJO+SNTQJPPmJJwYbPkPOzw2nxSRMmUlwG19WKO7QHzHyL6u+4hXpp5IwgIWvgQgoix2/pB9JF+EA7w==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.95.0.tgz",
+ "integrity": "sha512-0JLyqkZu1HnQIZ4e5LBGOtzqua1QwFEUOoMSycdoerXqayd4LK2b7WMfAx8eCIf+jGm1Uj6f3R00nlsx8g1faQ==",
"cpu": [
"wasm32"
],
@@ -3760,16 +3861,16 @@
"license": "MIT",
"optional": true,
"dependencies": {
- "@napi-rs/wasm-runtime": "^1.0.5"
+ "@napi-rs/wasm-runtime": "^1.0.7"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@oxc-parser/binding-win32-arm64-msvc": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.93.0.tgz",
- "integrity": "sha512-LiWj6Yp91YnN8QptfP/+s2nfvQrbYXuaU53w9Pkyceimx0msQboddW3Dud4fbbmp3xzvNkw13+bMkGz5BLHO1w==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.95.0.tgz",
+ "integrity": "sha512-RWvaA6s1SYlBj9CxwHfNn0CRlkPdv9fEUAXfZkGQPdP5e1ppIaO2KYE0sUov/zzp9hPTMMsTMHl4dcIbb+pHCQ==",
"cpu": [
"arm64"
],
@@ -3784,9 +3885,9 @@
}
},
"node_modules/@oxc-parser/binding-win32-x64-msvc": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.93.0.tgz",
- "integrity": "sha512-e3XD808kQLxvTD1x4xJ4p73x9idhHtSgtgcXjgo3L4hgvoRSwT1+Mu9ddZ9BLuV4wo49tmKZpp2exfxhZx1vhQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.95.0.tgz",
+ "integrity": "sha512-BQpgl7rDjFvCIHudmUR0dCwc4ylBYZl4CPVinlD3NhkMif4WD5dADckoo5ES/KOpFyvwcbKZX+grP63cjHi26g==",
"cpu": [
"x64"
],
@@ -3801,9 +3902,9 @@
}
},
"node_modules/@oxc-project/types": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.93.0.tgz",
- "integrity": "sha512-yNtwmWZIBtJsMr5TEfoZFDxIWV6OdScOpza/f5YxbqUMJk+j6QX3Cf3jgZShGEFYWQJ5j9mJ6jM0tZHu2J9Yrg==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.95.0.tgz",
+ "integrity": "sha512-vACy7vhpMPhjEJhULNxrdR0D943TkA/MigMpJCHmBHvMXxRStRi/dPtTlfQ3uDwWSzRpT8z+7ImjZVf8JWBocQ==",
"dev": true,
"license": "MIT",
"funding": {
@@ -3811,9 +3912,9 @@
}
},
"node_modules/@oxc-transform/binding-android-arm64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-android-arm64/-/binding-android-arm64-0.93.0.tgz",
- "integrity": "sha512-sjmbt7SbsIgHC9luOLgwoFTI2zbTDesZlfiSFrSYNZv6S6o4zfR2Q/OLhRQqmar15JtxP8NVPuiPyqyx0mqHyg==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-android-arm64/-/binding-android-arm64-0.95.0.tgz",
+ "integrity": "sha512-eW+BCgRWOsMrDiz7FEV7BjAmaF9lGIc2ueGdRUYjRUMq4f5FSGS7gMBTYDxajdoIB3L5Gnksh1CWkIlgg95UVA==",
"cpu": [
"arm64"
],
@@ -3828,9 +3929,9 @@
}
},
"node_modules/@oxc-transform/binding-darwin-arm64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-arm64/-/binding-darwin-arm64-0.93.0.tgz",
- "integrity": "sha512-XhYYdSU1Oz1UFeMm8fbfdPrODDQkLz2USDjKmfGuoOQRFKXlq0YTktfzF6z1bxn+T8pc9jIlBDr7f+cyy2CCjg==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-arm64/-/binding-darwin-arm64-0.95.0.tgz",
+ "integrity": "sha512-OUUaYZVss8tyDZZ7TGr2vnH3+i3Ouwsx0frQRGkiePNatXxaJJ3NS5+Kwgi9hh3WryXaQz2hWji4AM2RHYE7Cg==",
"cpu": [
"arm64"
],
@@ -3845,9 +3946,9 @@
}
},
"node_modules/@oxc-transform/binding-darwin-x64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-x64/-/binding-darwin-x64-0.93.0.tgz",
- "integrity": "sha512-cRQE9cWmP1cLPqGKqbr453nio1uIgv2LAfIfdx1fQSClG6PvzfTWTqujM0bJpKquodkm4k07ug35+tp0aIkl0w==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-x64/-/binding-darwin-x64-0.95.0.tgz",
+ "integrity": "sha512-49UPEgIlgWUndwcP3LH6dvmOewZ92DxCMpFMo11JhUlmNJxA3sjVImEBRB56/tJ+XF+xnya9kB1oCW4yRY+mRw==",
"cpu": [
"x64"
],
@@ -3862,9 +3963,9 @@
}
},
"node_modules/@oxc-transform/binding-freebsd-x64": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-freebsd-x64/-/binding-freebsd-x64-0.93.0.tgz",
- "integrity": "sha512-m2vojbIELwBwX4ehbEs+7gXx4ooBn2mpR8MkxjZdhucMTj7P38W+jSdW+04pX+/bf2vYxP2madTEZXSX6mseLg==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-freebsd-x64/-/binding-freebsd-x64-0.95.0.tgz",
+ "integrity": "sha512-lNKrHKaDEm8pbKlVbn0rv2L97O0lbA0Tsrxx4GF/HhmdW+NgwGU1pMzZ4tB2QcylbqgKxOB+v9luebHyh1jfgA==",
"cpu": [
"x64"
],
@@ -3879,9 +3980,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-arm-gnueabihf": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.93.0.tgz",
- "integrity": "sha512-NEoI0t9b8NHzvXuBIADYubKUbfsuDsY9g/uOTiVNoP+r16vpOdiY3avoqP2x2WPSiuprYVFM3Olq3WVngSg+IA==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.95.0.tgz",
+ "integrity": "sha512-+VWcLeeizI8IjU+V+o8AmzPuIMiTrGr0vrmXU3CEsV05MrywCuJU+f6ilPs3JBKno9VIwqvRpHB/z39sQabHWg==",
"cpu": [
"arm"
],
@@ -3896,9 +3997,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-arm-musleabihf": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.93.0.tgz",
- "integrity": "sha512-gzhgsb/o+V2PBElu2aMD7H1ZYOntr4lzuXDyVq/RbwwzF3G3jjFMB5hddbcjky8rdtmVzEaqqESI2h5kWkZUAw==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.95.0.tgz",
+ "integrity": "sha512-a59xPw84t6VwlvNEGcmuw3feGcKcWOC7uB8oePJ/BVSAV1yayLoB3k6JASwLTZ7N/PNPNUhcw1jDxowgAfBJfg==",
"cpu": [
"arm"
],
@@ -3913,9 +4014,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-arm64-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.93.0.tgz",
- "integrity": "sha512-4PdTqvMzLeMLbkwpHvj2ovQoIKaK8i1OnUGW7XzhZKPBGhkcdt/H3oa5FhZ2uoqSIM1KnKKP80MSC1OYqK+w0Q==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.95.0.tgz",
+ "integrity": "sha512-NLdrFuEHlmbiC1M1WESFV4luUcB/84GXi+cbnRXhgMjIW/CThRVJ989eTJy59QivkVlLcJSKTiKiKCt0O6TTlQ==",
"cpu": [
"arm64"
],
@@ -3930,9 +4031,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-arm64-musl": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.93.0.tgz",
- "integrity": "sha512-c+CrpmFv32Z1WfR2V8sEKPI4XLewK9hQUq57RUDXj3P99IZ9eA0qIq/2Azle4YGbHdeEywAvqEDlbGa7o3ZFNQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.95.0.tgz",
+ "integrity": "sha512-GL0ffCPW8JlFI0/jeSgCY665yDdojHxA0pbYG+k8oEHOWCYZUZK9AXL+r0oerNEWYJ8CRB+L5Yq87ZtU/YUitw==",
"cpu": [
"arm64"
],
@@ -3947,9 +4048,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-riscv64-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.93.0.tgz",
- "integrity": "sha512-9rkciYe67g/uuVU4bFst96c7Xc2rk2fhzWTsBySUjTvxpgEeBXPsx78OLNwFVZoGf0lGNMXU/oSxr8OImEgvcw==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.95.0.tgz",
+ "integrity": "sha512-tbH7LaClSmN3YFVo1UjMSe7D6gkb5f+CMIbj9i873UUZomVRmAjC4ygioObfzM+sj/tX0WoTXx5L1YOfQkHL6Q==",
"cpu": [
"riscv64"
],
@@ -3964,9 +4065,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-s390x-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.93.0.tgz",
- "integrity": "sha512-b/3he7qO4It9bTZbKWNvYMVNyoNldgWVDsTleWiRSskDZPTP6CggpcxVolltn8Eegiq4GycKSN1riInTngR6+w==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.95.0.tgz",
+ "integrity": "sha512-8jMqiURWa0iTiPMg7BWaln89VdhhWzNlPyKM90NaFVVhBIKCr2UEhrQWdpBw/E9C8uWf/4VabBEhfPMK+0yS4w==",
"cpu": [
"s390x"
],
@@ -3981,9 +4082,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-x64-gnu": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.93.0.tgz",
- "integrity": "sha512-PeKWwubXPza6JGYjZGRt3sleTAaxTac4SG3Nd/VF9WGCY7ljAb6Q0t/gIuyjLm7tgB2E4luFezJogqkAW/b1ng==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.95.0.tgz",
+ "integrity": "sha512-D5ULJ2uWipsTgfvHIvqmnGkCtB3Fyt2ZN7APRjVO+wLr+HtmnaWddKsLdrRWX/m/6nQ2xQdoQekdJrokYK9LtQ==",
"cpu": [
"x64"
],
@@ -3998,9 +4099,9 @@
}
},
"node_modules/@oxc-transform/binding-linux-x64-musl": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-musl/-/binding-linux-x64-musl-0.93.0.tgz",
- "integrity": "sha512-UjeqejYo3ynOimHKKPdqtryD0iCWiYHRnNNl5sxzK4GPA/JcxNnRGejAbLH6gkPOFtAi2k4Y5ujc2nU8cX8LSw==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-musl/-/binding-linux-x64-musl-0.95.0.tgz",
+ "integrity": "sha512-DmCGU+FzRezES5wVAGVimZGzYIjMOapXbWpxuz8M8p3nMrfdBEQ5/tpwBp2vRlIohhABy4vhHJByl4c64ENCGQ==",
"cpu": [
"x64"
],
@@ -4015,9 +4116,9 @@
}
},
"node_modules/@oxc-transform/binding-wasm32-wasi": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-wasm32-wasi/-/binding-wasm32-wasi-0.93.0.tgz",
- "integrity": "sha512-pMUgg0Mm5ASd8oEPf/yiZmHCqH5WMC0mjCK3CccEvfpUf+WC8WYiKiLkPz+0e7AyPW/Kb+MDI9FaYDKQ5QgyoQ==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-wasm32-wasi/-/binding-wasm32-wasi-0.95.0.tgz",
+ "integrity": "sha512-tSo1EU4Whd1gXyae7cwSDouhppkuz6Jkd5LY8Uch9VKsHVSRhDLDW19Mq6VSwtyPxDPTJnJ2jYJWm+n8SYXiXQ==",
"cpu": [
"wasm32"
],
@@ -4025,16 +4126,16 @@
"license": "MIT",
"optional": true,
"dependencies": {
- "@napi-rs/wasm-runtime": "^1.0.5"
+ "@napi-rs/wasm-runtime": "^1.0.7"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/@oxc-transform/binding-win32-arm64-msvc": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.93.0.tgz",
- "integrity": "sha512-RR30xNVMIEe5PWSD26uGEZp6yH7fkLKznvPSebVOVl2IWW8Sjnd59i6Ws08FmBKH9QP3jW30MypL6ESdlE5yWw==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.95.0.tgz",
+ "integrity": "sha512-6eaxlgj+J5n8zgJTSugqdPLBtKGRqvxYLcvHN8b+U9hVhF/2HG/JCOrcSYV/XgWGNPQiaRVzpR3hGhmFro9QTw==",
"cpu": [
"arm64"
],
@@ -4049,9 +4150,9 @@
}
},
"node_modules/@oxc-transform/binding-win32-x64-msvc": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.93.0.tgz",
- "integrity": "sha512-6QN3DEaEw3eWioWEFRgNsTvYq8czYSnpkjB2za+/WdLN0g5FzOl2ZEfNiPrBWIPnSmjUmDWtWVWcSjwY7fX5/Q==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.95.0.tgz",
+ "integrity": "sha512-Y8JY79A7fTuBjEXZFu+mHbHzgsV3uJDUuUKeGffpOwI1ayOGCKeBJTiMhksYkiir1xS+DkGLEz73+xse9Is9rw==",
"cpu": [
"x64"
],
@@ -4454,9 +4555,9 @@
}
},
"node_modules/@poppinss/dumper": {
- "version": "0.6.4",
- "resolved": "https://registry.npmjs.org/@poppinss/dumper/-/dumper-0.6.4.tgz",
- "integrity": "sha512-iG0TIdqv8xJ3Lt9O8DrPRxw1MRLjNpoqiSGU03P/wNLP/s0ra0udPJ1J2Tx5M0J3H/cVyEgpbn8xUKRY9j59kQ==",
+ "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": {
@@ -4530,9 +4631,9 @@
}
},
"node_modules/@puppeteer/browsers": {
- "version": "2.10.12",
- "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.12.tgz",
- "integrity": "sha512-mP9iLFZwH+FapKJLeA7/fLqOlSUwYpMwjR1P5J23qd4e7qGJwecJccJqHYrjw33jmIZYV4dtiTHPD/J+1e7cEw==",
+ "version": "2.10.13",
+ "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.10.13.tgz",
+ "integrity": "sha512-a9Ruw3j3qlnB5a/zHRTkruppynxqaeE4H9WNj5eYGRWqw0ZauZ23f4W2ARf3hghF5doozyD+CRtt7XSYuYRI/Q==",
"license": "Apache-2.0",
"dependencies": {
"debug": "^4.4.3",
@@ -4576,9 +4677,9 @@
}
},
"node_modules/@rollup/plugin-commonjs": {
- "version": "28.0.8",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.8.tgz",
- "integrity": "sha512-o1Ug9PxYsF61R7/NXO/GgMZZproLd/WH2XA53Tp9ppf6bU1lMlTtC/gUM6zM3mesi2E0rypk+PNtVrELREyWEQ==",
+ "version": "28.0.9",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-28.0.9.tgz",
+ "integrity": "sha512-PIR4/OHZ79romx0BVVll/PkwWpJ7e5lsqFa3gFfcrFPWwLXLV39JVUzQV9RKjWerE7B845Hqjj9VYlQeieZ2dA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4672,9 +4773,9 @@
}
},
"node_modules/@rollup/plugin-replace": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.2.tgz",
- "integrity": "sha512-7QaYCf8bqF04dOy7w/eHmJeNExxTYwvKAmlSAH/EaWWUzbT0h5sbF6bktFoX/0F/0qwng5/dWFMyf3gzaM8DsQ==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-replace/-/plugin-replace-6.0.3.tgz",
+ "integrity": "sha512-J4RZarRvQAm5IF0/LwUUg+obsm+xZhYnbMXmXROyoSE1ATJe3oXSb9L5MMppdxP2ylNSjv6zFBwKYjcKMucVfA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -4763,9 +4864,9 @@
}
},
"node_modules/@rollup/rollup-android-arm-eabi": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.52.5.tgz",
- "integrity": "sha512-8c1vW4ocv3UOMp9K+gToY5zL2XiiVw3k7f1ksf4yO1FlDFQ1C2u72iACFnSOceJFsWskc2WZNqeRhFRPzv+wtQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.53.2.tgz",
+ "integrity": "sha512-yDPzwsgiFO26RJA4nZo8I+xqzh7sJTZIWQOxn+/XOdPE31lAvLIYCKqjV+lNH/vxE2L2iH3plKxDCRK6i+CwhA==",
"cpu": [
"arm"
],
@@ -4777,9 +4878,9 @@
]
},
"node_modules/@rollup/rollup-android-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.52.5.tgz",
- "integrity": "sha512-mQGfsIEFcu21mvqkEKKu2dYmtuSZOBMmAl5CFlPGLY94Vlcm+zWApK7F/eocsNzp8tKmbeBP8yXyAbx0XHsFNA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.53.2.tgz",
+ "integrity": "sha512-k8FontTxIE7b0/OGKeSN5B6j25EuppBcWM33Z19JoVT7UTXFSo3D9CdU39wGTeb29NO3XxpMNauh09B+Ibw+9g==",
"cpu": [
"arm64"
],
@@ -4791,9 +4892,9 @@
]
},
"node_modules/@rollup/rollup-darwin-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.52.5.tgz",
- "integrity": "sha512-takF3CR71mCAGA+v794QUZ0b6ZSrgJkArC+gUiG6LB6TQty9T0Mqh3m2ImRBOxS2IeYBo4lKWIieSvnEk2OQWA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.53.2.tgz",
+ "integrity": "sha512-A6s4gJpomNBtJ2yioj8bflM2oogDwzUiMl2yNJ2v9E7++sHrSrsQ29fOfn5DM/iCzpWcebNYEdXpaK4tr2RhfQ==",
"cpu": [
"arm64"
],
@@ -4805,9 +4906,9 @@
]
},
"node_modules/@rollup/rollup-darwin-x64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.52.5.tgz",
- "integrity": "sha512-W901Pla8Ya95WpxDn//VF9K9u2JbocwV/v75TE0YIHNTbhqUTv9w4VuQ9MaWlNOkkEfFwkdNhXgcLqPSmHy0fA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.53.2.tgz",
+ "integrity": "sha512-e6XqVmXlHrBlG56obu9gDRPW3O3hLxpwHpLsBJvuI8qqnsrtSZ9ERoWUXtPOkY8c78WghyPHZdmPhHLWNdAGEw==",
"cpu": [
"x64"
],
@@ -4819,9 +4920,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.52.5.tgz",
- "integrity": "sha512-QofO7i7JycsYOWxe0GFqhLmF6l1TqBswJMvICnRUjqCx8b47MTo46W8AoeQwiokAx3zVryVnxtBMcGcnX12LvA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.53.2.tgz",
+ "integrity": "sha512-v0E9lJW8VsrwPux5Qe5CwmH/CF/2mQs6xU1MF3nmUxmZUCHazCjLgYvToOk+YuuUqLQBio1qkkREhxhc656ViA==",
"cpu": [
"arm64"
],
@@ -4833,9 +4934,9 @@
]
},
"node_modules/@rollup/rollup-freebsd-x64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.52.5.tgz",
- "integrity": "sha512-jr21b/99ew8ujZubPo9skbrItHEIE50WdV86cdSoRkKtmWa+DDr6fu2c/xyRT0F/WazZpam6kk7IHBerSL7LDQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.53.2.tgz",
+ "integrity": "sha512-ClAmAPx3ZCHtp6ysl4XEhWU69GUB1D+s7G9YjHGhIGCSrsg00nEGRRZHmINYxkdoJehde8VIsDC5t9C0gb6yqA==",
"cpu": [
"x64"
],
@@ -4847,9 +4948,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-gnueabihf": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.52.5.tgz",
- "integrity": "sha512-PsNAbcyv9CcecAUagQefwX8fQn9LQ4nZkpDboBOttmyffnInRy8R8dSg6hxxl2Re5QhHBf6FYIDhIj5v982ATQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.53.2.tgz",
+ "integrity": "sha512-EPlb95nUsz6Dd9Qy13fI5kUPXNSljaG9FiJ4YUGU1O/Q77i5DYFW5KR8g1OzTcdZUqQQ1KdDqsTohdFVwCwjqg==",
"cpu": [
"arm"
],
@@ -4861,9 +4962,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm-musleabihf": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.52.5.tgz",
- "integrity": "sha512-Fw4tysRutyQc/wwkmcyoqFtJhh0u31K+Q6jYjeicsGJJ7bbEq8LwPWV/w0cnzOqR2m694/Af6hpFayLJZkG2VQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.53.2.tgz",
+ "integrity": "sha512-BOmnVW+khAUX+YZvNfa0tGTEMVVEerOxN0pDk2E6N6DsEIa2Ctj48FOMfNDdrwinocKaC7YXUZ1pHlKpnkja/Q==",
"cpu": [
"arm"
],
@@ -4875,9 +4976,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.52.5.tgz",
- "integrity": "sha512-a+3wVnAYdQClOTlyapKmyI6BLPAFYs0JM8HRpgYZQO02rMR09ZcV9LbQB+NL6sljzG38869YqThrRnfPMCDtZg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.53.2.tgz",
+ "integrity": "sha512-Xt2byDZ+6OVNuREgBXr4+CZDJtrVso5woFtpKdGPhpTPHcNG7D8YXeQzpNbFRxzTVqJf7kvPMCub/pcGUWgBjA==",
"cpu": [
"arm64"
],
@@ -4889,9 +4990,9 @@
]
},
"node_modules/@rollup/rollup-linux-arm64-musl": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.52.5.tgz",
- "integrity": "sha512-AvttBOMwO9Pcuuf7m9PkC1PUIKsfaAJ4AYhy944qeTJgQOqJYJ9oVl2nYgY7Rk0mkbsuOpCAYSs6wLYB2Xiw0Q==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.53.2.tgz",
+ "integrity": "sha512-+LdZSldy/I9N8+klim/Y1HsKbJ3BbInHav5qE9Iy77dtHC/pibw1SR/fXlWyAk0ThnpRKoODwnAuSjqxFRDHUQ==",
"cpu": [
"arm64"
],
@@ -4903,9 +5004,9 @@
]
},
"node_modules/@rollup/rollup-linux-loong64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.52.5.tgz",
- "integrity": "sha512-DkDk8pmXQV2wVrF6oq5tONK6UHLz/XcEVow4JTTerdeV1uqPeHxwcg7aFsfnSm9L+OO8WJsWotKM2JJPMWrQtA==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.53.2.tgz",
+ "integrity": "sha512-8ms8sjmyc1jWJS6WdNSA23rEfdjWB30LH8Wqj0Cqvv7qSHnvw6kgMMXRdop6hkmGPlyYBdRPkjJnj3KCUHV/uQ==",
"cpu": [
"loong64"
],
@@ -4917,9 +5018,9 @@
]
},
"node_modules/@rollup/rollup-linux-ppc64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.52.5.tgz",
- "integrity": "sha512-W/b9ZN/U9+hPQVvlGwjzi+Wy4xdoH2I8EjaCkMvzpI7wJUs8sWJ03Rq96jRnHkSrcHTpQe8h5Tg3ZzUPGauvAw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.53.2.tgz",
+ "integrity": "sha512-3HRQLUQbpBDMmzoxPJYd3W6vrVHOo2cVW8RUo87Xz0JPJcBLBr5kZ1pGcQAhdZgX9VV7NbGNipah1omKKe23/g==",
"cpu": [
"ppc64"
],
@@ -4931,9 +5032,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.52.5.tgz",
- "integrity": "sha512-sjQLr9BW7R/ZiXnQiWPkErNfLMkkWIoCz7YMn27HldKsADEKa5WYdobaa1hmN6slu9oWQbB6/jFpJ+P2IkVrmw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.53.2.tgz",
+ "integrity": "sha512-fMjKi+ojnmIvhk34gZP94vjogXNNUKMEYs+EDaB/5TG/wUkoeua7p7VCHnE6T2Tx+iaghAqQX8teQzcvrYpaQA==",
"cpu": [
"riscv64"
],
@@ -4945,9 +5046,9 @@
]
},
"node_modules/@rollup/rollup-linux-riscv64-musl": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.52.5.tgz",
- "integrity": "sha512-hq3jU/kGyjXWTvAh2awn8oHroCbrPm8JqM7RUpKjalIRWWXE01CQOf/tUNWNHjmbMHg/hmNCwc/Pz3k1T/j/Lg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.53.2.tgz",
+ "integrity": "sha512-XuGFGU+VwUUV5kLvoAdi0Wz5Xbh2SrjIxCtZj6Wq8MDp4bflb/+ThZsVxokM7n0pcbkEr2h5/pzqzDYI7cCgLQ==",
"cpu": [
"riscv64"
],
@@ -4959,9 +5060,9 @@
]
},
"node_modules/@rollup/rollup-linux-s390x-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.52.5.tgz",
- "integrity": "sha512-gn8kHOrku8D4NGHMK1Y7NA7INQTRdVOntt1OCYypZPRt6skGbddska44K8iocdpxHTMMNui5oH4elPH4QOLrFQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.53.2.tgz",
+ "integrity": "sha512-w6yjZF0P+NGzWR3AXWX9zc0DNEGdtvykB03uhonSHMRa+oWA6novflo2WaJr6JZakG2ucsyb+rvhrKac6NIy+w==",
"cpu": [
"s390x"
],
@@ -4973,9 +5074,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.52.5.tgz",
- "integrity": "sha512-hXGLYpdhiNElzN770+H2nlx+jRog8TyynpTVzdlc6bndktjKWyZyiCsuDAlpd+j+W+WNqfcyAWz9HxxIGfZm1Q==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.53.2.tgz",
+ "integrity": "sha512-yo8d6tdfdeBArzC7T/PnHd7OypfI9cbuZzPnzLJIyKYFhAQ8SvlkKtKBMbXDxe1h03Rcr7u++nFS7tqXz87Gtw==",
"cpu": [
"x64"
],
@@ -4987,9 +5088,9 @@
]
},
"node_modules/@rollup/rollup-linux-x64-musl": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.52.5.tgz",
- "integrity": "sha512-arCGIcuNKjBoKAXD+y7XomR9gY6Mw7HnFBv5Rw7wQRvwYLR7gBAgV7Mb2QTyjXfTveBNFAtPt46/36vV9STLNg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.53.2.tgz",
+ "integrity": "sha512-ah59c1YkCxKExPP8O9PwOvs+XRLKwh/mV+3YdKqQ5AMQ0r4M4ZDuOrpWkUaqO7fzAHdINzV9tEVu8vNw48z0lA==",
"cpu": [
"x64"
],
@@ -5001,9 +5102,9 @@
]
},
"node_modules/@rollup/rollup-openharmony-arm64": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.52.5.tgz",
- "integrity": "sha512-QoFqB6+/9Rly/RiPjaomPLmR/13cgkIGfA40LHly9zcH1S0bN2HVFYk3a1eAyHQyjs3ZJYlXvIGtcCs5tko9Cw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.53.2.tgz",
+ "integrity": "sha512-4VEd19Wmhr+Zy7hbUsFZ6YXEiP48hE//KPLCSVNY5RMGX2/7HZ+QkN55a3atM1C/BZCGIgqN+xrVgtdak2S9+A==",
"cpu": [
"arm64"
],
@@ -5015,9 +5116,9 @@
]
},
"node_modules/@rollup/rollup-win32-arm64-msvc": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.52.5.tgz",
- "integrity": "sha512-w0cDWVR6MlTstla1cIfOGyl8+qb93FlAVutcor14Gf5Md5ap5ySfQ7R9S/NjNaMLSFdUnKGEasmVnu3lCMqB7w==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.53.2.tgz",
+ "integrity": "sha512-IlbHFYc/pQCgew/d5fslcy1KEaYVCJ44G8pajugd8VoOEI8ODhtb/j8XMhLpwHCMB3yk2J07ctup10gpw2nyMA==",
"cpu": [
"arm64"
],
@@ -5029,9 +5130,9 @@
]
},
"node_modules/@rollup/rollup-win32-ia32-msvc": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.52.5.tgz",
- "integrity": "sha512-Aufdpzp7DpOTULJCuvzqcItSGDH73pF3ko/f+ckJhxQyHtp67rHw3HMNxoIdDMUITJESNE6a8uh4Lo4SLouOUg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.53.2.tgz",
+ "integrity": "sha512-lNlPEGgdUfSzdCWU176ku/dQRnA7W+Gp8d+cWv73jYrb8uT7HTVVxq62DUYxjbaByuf1Yk0RIIAbDzp+CnOTFg==",
"cpu": [
"ia32"
],
@@ -5043,9 +5144,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-gnu": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.52.5.tgz",
- "integrity": "sha512-UGBUGPFp1vkj6p8wCRraqNhqwX/4kNQPS57BCFc8wYh0g94iVIW33wJtQAx3G7vrjjNtRaxiMUylM0ktp/TRSQ==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.53.2.tgz",
+ "integrity": "sha512-S6YojNVrHybQis2lYov1sd+uj7K0Q05NxHcGktuMMdIQ2VixGwAfbJ23NnlvvVV1bdpR2m5MsNBViHJKcA4ADw==",
"cpu": [
"x64"
],
@@ -5057,9 +5158,9 @@
]
},
"node_modules/@rollup/rollup-win32-x64-msvc": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.52.5.tgz",
- "integrity": "sha512-TAcgQh2sSkykPRWLrdyy2AiceMckNf5loITqXxFI5VuQjS5tSuw3WlwdN8qv8vzjLAUTvYaH/mVjSFpbkFbpTg==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.53.2.tgz",
+ "integrity": "sha512-k+/Rkcyx//P6fetPoLMb8pBeqJBNGx81uuf7iljX9++yNBVRDQgD04L+SVXmXmh5ZP4/WOp4mWF0kmi06PW2tA==",
"cpu": [
"x64"
],
@@ -5070,26 +5171,19 @@
"win32"
]
},
- "node_modules/@sec-ant/readable-stream": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz",
- "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/@sentry/core": {
- "version": "10.20.0",
- "resolved": "https://registry.npmjs.org/@sentry/core/-/core-10.20.0.tgz",
- "integrity": "sha512-S291KihnOIB8i7mVJIJBVHBMcCfIoY/KDJBHEfBoHY9M56g2An4FVhM9+/xR85+IoMkTySdXN08k9LEyQz4FpQ==",
+ "version": "10.23.0",
+ "resolved": "https://registry.npmjs.org/@sentry/core/-/core-10.23.0.tgz",
+ "integrity": "sha512-4aZwu6VnSHWDplY5eFORcVymhfvS/P6BRfK81TPnG/ReELaeoykKjDwR+wC4lO7S0307Vib9JGpszjsEZw245g==",
"license": "MIT",
"engines": {
"node": ">=18"
}
},
"node_modules/@sentry/node": {
- "version": "10.20.0",
- "resolved": "https://registry.npmjs.org/@sentry/node/-/node-10.20.0.tgz",
- "integrity": "sha512-Hv6cxQ2ilL54lF6+WwvvrvJEkt0fwUAAQZNwfAR0CfuP4Zg8FPQvxDeLhryd2Qr0nwPMNi3eYjypORjD3dcMLg==",
+ "version": "10.23.0",
+ "resolved": "https://registry.npmjs.org/@sentry/node/-/node-10.23.0.tgz",
+ "integrity": "sha512-5PwJJ1zZ89tB8hrjTVKNE4fIGtSXlR+Mdg2u1Nm2FJ2Vj1Ac6JArLiRzMqoq/pA7vwgZMoHwviDAA+PfpJ0Agg==",
"license": "MIT",
"dependencies": {
"@opentelemetry/api": "^1.9.0",
@@ -5122,9 +5216,9 @@
"@opentelemetry/sdk-trace-base": "^2.1.0",
"@opentelemetry/semantic-conventions": "^1.37.0",
"@prisma/instrumentation": "6.15.0",
- "@sentry/core": "10.20.0",
- "@sentry/node-core": "10.20.0",
- "@sentry/opentelemetry": "10.20.0",
+ "@sentry/core": "10.23.0",
+ "@sentry/node-core": "10.23.0",
+ "@sentry/opentelemetry": "10.23.0",
"import-in-the-middle": "^1.14.2",
"minimatch": "^9.0.0"
},
@@ -5133,14 +5227,14 @@
}
},
"node_modules/@sentry/node-core": {
- "version": "10.20.0",
- "resolved": "https://registry.npmjs.org/@sentry/node-core/-/node-core-10.20.0.tgz",
- "integrity": "sha512-9BelcS9722jionzuyUNff4Bqx6fMFlYlK+5gMZYxAzOdS1AYZeFiYNVV2GlCGXfDLSHTnE1rOGH6QOsUdgCdbg==",
+ "version": "10.23.0",
+ "resolved": "https://registry.npmjs.org/@sentry/node-core/-/node-core-10.23.0.tgz",
+ "integrity": "sha512-3vhttO19pta7zIuecSrLoPTVN7NdjKtb/WK241H8znwKxukx3fj3M6+upN+JQtC6pERO3HfQwBpMMT9RMCUr3Q==",
"license": "MIT",
"dependencies": {
"@apm-js-collab/tracing-hooks": "^0.3.1",
- "@sentry/core": "10.20.0",
- "@sentry/opentelemetry": "10.20.0",
+ "@sentry/core": "10.23.0",
+ "@sentry/opentelemetry": "10.23.0",
"import-in-the-middle": "^1.14.2"
},
"engines": {
@@ -5157,12 +5251,12 @@
}
},
"node_modules/@sentry/opentelemetry": {
- "version": "10.20.0",
- "resolved": "https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-10.20.0.tgz",
- "integrity": "sha512-91hr3RbMSUWgZb1BpW0gjlPsFaPtx0oNY2HYoC12T//1E0RMV183McBKbghBdT9swjhw112jeTFEERMJCaJyNw==",
+ "version": "10.23.0",
+ "resolved": "https://registry.npmjs.org/@sentry/opentelemetry/-/opentelemetry-10.23.0.tgz",
+ "integrity": "sha512-ZbSB5y8K8YXp5+sBp2w7xHsNLv9EglJRTRqWMi2ncovXy4jcvo+pSreiZu68nSGvxX25brYKDw19vl+tnmqZVg==",
"license": "MIT",
"dependencies": {
- "@sentry/core": "10.20.0"
+ "@sentry/core": "10.23.0"
},
"engines": {
"node": ">=18"
@@ -5175,10 +5269,23 @@
"@opentelemetry/semantic-conventions": "^1.37.0"
}
},
+ "node_modules/@sindresorhus/base62": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/base62/-/base62-1.0.0.tgz",
+ "integrity": "sha512-TeheYy0ILzBEI/CO55CP6zJCSdSWeRtGnHy8U8dWSUH4I68iqTsy7HkMktR4xakThc9jotkPQUXT4ITdbV7cHA==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/@sindresorhus/is": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-7.1.0.tgz",
- "integrity": "sha512-7F/yz2IphV39hiS2zB4QYVkivrptHHh0K8qJJd9HhuWSdvf8AN7NpebW3CcDZDBQsUPMoDKWsY2WWgW7bqOcfA==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-7.1.1.tgz",
+ "integrity": "sha512-rO92VvpgMc3kfiTjGT52LEtJ8Yc5kCWhZjLQ3LwlA4pSgPpQO7bVpYXParOD8Jwf+cVQECJo3yP/4I8aZtUQTQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -5202,9 +5309,9 @@
}
},
"node_modules/@speed-highlight/core": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/@speed-highlight/core/-/core-1.2.7.tgz",
- "integrity": "sha512-0dxmVj4gxg3Jg879kvFS/msl4s9F3T9UXC1InxgOf7t5NvcPD97u/WTA5vL/IxWHMn7qSxBozqrnnE2wvl1m8g==",
+ "version": "1.2.12",
+ "resolved": "https://registry.npmjs.org/@speed-highlight/core/-/core-1.2.12.tgz",
+ "integrity": "sha512-uilwrK0Ygyri5dToHYdZSjcvpS2ZwX0w5aSt3GCEN9hrjxWCoeV4Z2DTXuxjwbntaLQIEEAlCeNQss5SoHvAEA==",
"dev": true,
"license": "CC0-1.0"
},
@@ -5334,9 +5441,9 @@
}
},
"node_modules/@types/node": {
- "version": "24.9.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.1.tgz",
- "integrity": "sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==",
+ "version": "24.10.1",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
+ "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
"license": "MIT",
"dependencies": {
"undici-types": "~7.16.0"
@@ -5409,17 +5516,17 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.2.tgz",
- "integrity": "sha512-ZGBMToy857/NIPaaCucIUQgqueOiq7HeAKkhlvqVV4lm089zUFW6ikRySx2v+cAhKeUCPuWVHeimyk6Dw1iY3w==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.4.tgz",
+ "integrity": "sha512-R48VhmTJqplNyDxCyqqVkFSZIx1qX6PzwqgcXn1olLrzxcSBDlOsbtcnQuQhNtnNiJ4Xe5gREI1foajYaYU2Vg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/regexpp": "^4.10.0",
- "@typescript-eslint/scope-manager": "8.46.2",
- "@typescript-eslint/type-utils": "8.46.2",
- "@typescript-eslint/utils": "8.46.2",
- "@typescript-eslint/visitor-keys": "8.46.2",
+ "@typescript-eslint/scope-manager": "8.46.4",
+ "@typescript-eslint/type-utils": "8.46.4",
+ "@typescript-eslint/utils": "8.46.4",
+ "@typescript-eslint/visitor-keys": "8.46.4",
"graphemer": "^1.4.0",
"ignore": "^7.0.0",
"natural-compare": "^1.4.0",
@@ -5433,23 +5540,23 @@
"url": "https://opencollective.com/typescript-eslint"
},
"peerDependencies": {
- "@typescript-eslint/parser": "^8.46.2",
+ "@typescript-eslint/parser": "^8.46.4",
"eslint": "^8.57.0 || ^9.0.0",
"typescript": ">=4.8.4 <6.0.0"
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.2.tgz",
- "integrity": "sha512-BnOroVl1SgrPLywqxyqdJ4l3S2MsKVLDVxZvjI1Eoe8ev2r3kGDo+PcMihNmDE+6/KjkTubSJnmqGZZjQSBq/g==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.46.4.tgz",
+ "integrity": "sha512-tK3GPFWbirvNgsNKto+UmB/cRtn6TZfyw0D6IKrW55n6Vbs7KJoZtI//kpTKzE/DUmmnAFD8/Ca46s7Obs92/w==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
- "@typescript-eslint/scope-manager": "8.46.2",
- "@typescript-eslint/types": "8.46.2",
- "@typescript-eslint/typescript-estree": "8.46.2",
- "@typescript-eslint/visitor-keys": "8.46.2",
+ "@typescript-eslint/scope-manager": "8.46.4",
+ "@typescript-eslint/types": "8.46.4",
+ "@typescript-eslint/typescript-estree": "8.46.4",
+ "@typescript-eslint/visitor-keys": "8.46.4",
"debug": "^4.3.4"
},
"engines": {
@@ -5465,14 +5572,14 @@
}
},
"node_modules/@typescript-eslint/project-service": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.2.tgz",
- "integrity": "sha512-PULOLZ9iqwI7hXcmL4fVfIsBi6AN9YxRc0frbvmg8f+4hQAjQ5GYNKK0DIArNo+rOKmR/iBYwkpBmnIwin4wBg==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/project-service/-/project-service-8.46.4.tgz",
+ "integrity": "sha512-nPiRSKuvtTN+no/2N1kt2tUh/HoFzeEgOm9fQ6XQk4/ApGqjx0zFIIaLJ6wooR1HIoozvj2j6vTi/1fgAz7UYQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/tsconfig-utils": "^8.46.2",
- "@typescript-eslint/types": "^8.46.2",
+ "@typescript-eslint/tsconfig-utils": "^8.46.4",
+ "@typescript-eslint/types": "^8.46.4",
"debug": "^4.3.4"
},
"engines": {
@@ -5487,14 +5594,14 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.2.tgz",
- "integrity": "sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.46.4.tgz",
+ "integrity": "sha512-tMDbLGXb1wC+McN1M6QeDx7P7c0UWO5z9CXqp7J8E+xGcJuUuevWKxuG8j41FoweS3+L41SkyKKkia16jpX7CA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.46.2",
- "@typescript-eslint/visitor-keys": "8.46.2"
+ "@typescript-eslint/types": "8.46.4",
+ "@typescript-eslint/visitor-keys": "8.46.4"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5505,9 +5612,9 @@
}
},
"node_modules/@typescript-eslint/tsconfig-utils": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.2.tgz",
- "integrity": "sha512-a7QH6fw4S57+F5y2FIxxSDyi5M4UfGF+Jl1bCGd7+L4KsaUY80GsiF/t0UoRFDHAguKlBaACWJRmdrc6Xfkkag==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.46.4.tgz",
+ "integrity": "sha512-+/XqaZPIAk6Cjg7NWgSGe27X4zMGqrFqZ8atJsX3CWxH/jACqWnrWI68h7nHQld0y+k9eTTjb9r+KU4twLoo9A==",
"dev": true,
"license": "MIT",
"engines": {
@@ -5522,15 +5629,15 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.2.tgz",
- "integrity": "sha512-HbPM4LbaAAt/DjxXaG9yiS9brOOz6fabal4uvUmaUYe6l3K1phQDMQKBRUrr06BQkxkvIZVVHttqiybM9nJsLA==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.46.4.tgz",
+ "integrity": "sha512-V4QC8h3fdT5Wro6vANk6eojqfbv5bpwHuMsBcJUJkqs2z5XnYhJzyz9Y02eUmF9u3PgXEUiOt4w4KHR3P+z0PQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.46.2",
- "@typescript-eslint/typescript-estree": "8.46.2",
- "@typescript-eslint/utils": "8.46.2",
+ "@typescript-eslint/types": "8.46.4",
+ "@typescript-eslint/typescript-estree": "8.46.4",
+ "@typescript-eslint/utils": "8.46.4",
"debug": "^4.3.4",
"ts-api-utils": "^2.1.0"
},
@@ -5547,9 +5654,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.2.tgz",
- "integrity": "sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.46.4.tgz",
+ "integrity": "sha512-USjyxm3gQEePdUwJBFjjGNG18xY9A2grDVGuk7/9AkjIF1L+ZrVnwR5VAU5JXtUnBL/Nwt3H31KlRDaksnM7/w==",
"dev": true,
"license": "MIT",
"engines": {
@@ -5561,16 +5668,16 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.2.tgz",
- "integrity": "sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.46.4.tgz",
+ "integrity": "sha512-7oV2qEOr1d4NWNmpXLR35LvCfOkTNymY9oyW+lUHkmCno7aOmIf/hMaydnJBUTBMRCOGZh8YjkFOc8dadEoNGA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/project-service": "8.46.2",
- "@typescript-eslint/tsconfig-utils": "8.46.2",
- "@typescript-eslint/types": "8.46.2",
- "@typescript-eslint/visitor-keys": "8.46.2",
+ "@typescript-eslint/project-service": "8.46.4",
+ "@typescript-eslint/tsconfig-utils": "8.46.4",
+ "@typescript-eslint/types": "8.46.4",
+ "@typescript-eslint/visitor-keys": "8.46.4",
"debug": "^4.3.4",
"fast-glob": "^3.3.2",
"is-glob": "^4.0.3",
@@ -5590,16 +5697,16 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.2.tgz",
- "integrity": "sha512-sExxzucx0Tud5tE0XqR0lT0psBQvEpnpiul9XbGUB1QwpWJJAps1O/Z7hJxLGiZLBKMCutjTzDgmd1muEhBnVg==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.46.4.tgz",
+ "integrity": "sha512-AbSv11fklGXV6T28dp2Me04Uw90R2iJ30g2bgLz529Koehrmkbs1r7paFqr1vPCZi7hHwYxYtxfyQMRC8QaVSg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@eslint-community/eslint-utils": "^4.7.0",
- "@typescript-eslint/scope-manager": "8.46.2",
- "@typescript-eslint/types": "8.46.2",
- "@typescript-eslint/typescript-estree": "8.46.2"
+ "@typescript-eslint/scope-manager": "8.46.4",
+ "@typescript-eslint/types": "8.46.4",
+ "@typescript-eslint/typescript-estree": "8.46.4"
},
"engines": {
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -5614,13 +5721,13 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "8.46.2",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.2.tgz",
- "integrity": "sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w==",
+ "version": "8.46.4",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.46.4.tgz",
+ "integrity": "sha512-/++5CYLQqsO9HFGLI7APrxBJYo+5OCMpViuhV8q5/Qa3o5mMrF//eQHks+PXcsAVaLdn817fMuS7zqoXNNZGaw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@typescript-eslint/types": "8.46.2",
+ "@typescript-eslint/types": "8.46.4",
"eslint-visitor-keys": "^4.2.1"
},
"engines": {
@@ -6019,9 +6126,9 @@
}
},
"node_modules/@vitejs/plugin-vue-jsx/node_modules/@rolldown/pluginutils": {
- "version": "1.0.0-beta.44",
- "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.44.tgz",
- "integrity": "sha512-g6eW7Zwnr2c5RADIoqziHoVs6b3W5QTQ4+qbpfjbkMJ9x+8Og211VW/oot2dj9dVwaK/UyC6Yo+02gV+wWQVNg==",
+ "version": "1.0.0-beta.50",
+ "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.50.tgz",
+ "integrity": "sha512-5e76wQiQVeL1ICOZVUg4LSOVYg9jyhGCin+icYozhsUzM+fHE7kddi1bdiE0jwVqTfkjba3jUFbEkoC9WkdvyA==",
"dev": true,
"license": "MIT"
},
@@ -6202,20 +6309,20 @@
"license": "MIT"
},
"node_modules/@vue-macros/common": {
- "version": "3.0.0-beta.16",
- "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-3.0.0-beta.16.tgz",
- "integrity": "sha512-8O2gWxWFiaoNkk7PGi0+p7NPGe/f8xJ3/INUufvje/RZOs7sJvlI1jnR4lydtRFa/mU0ylMXUXXjSK0fHDEYTA==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@vue-macros/common/-/common-3.1.1.tgz",
+ "integrity": "sha512-afW2DMjgCBVs33mWRlz7YsGHzoEEupnl0DK5ZTKsgziAlLh5syc5m+GM7eqeYrgiQpwMaVxa1fk73caCvPxyAw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/compiler-sfc": "^3.5.17",
- "ast-kit": "^2.1.1",
- "local-pkg": "^1.1.1",
- "magic-string-ast": "^1.0.0",
- "unplugin-utils": "^0.2.4"
+ "@vue/compiler-sfc": "^3.5.22",
+ "ast-kit": "^2.1.2",
+ "local-pkg": "^1.1.2",
+ "magic-string-ast": "^1.0.2",
+ "unplugin-utils": "^0.3.0"
},
"engines": {
- "node": ">=20.18.0"
+ "node": ">=20.19.0"
},
"funding": {
"url": "https://github.com/sponsors/vue-macros"
@@ -6229,6 +6336,23 @@
}
}
},
+ "node_modules/@vue-macros/common/node_modules/unplugin-utils": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/unplugin-utils/-/unplugin-utils-0.3.1.tgz",
+ "integrity": "sha512-5lWVjgi6vuHhJ526bI4nlCOmkCIF3nnfXkCMDeMJrtdvxTs6ZFCM8oNufGTsDbKv/tJ/xj8RpvXjRuPBZJuJog==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "pathe": "^2.0.3",
+ "picomatch": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sxzz"
+ }
+ },
"node_modules/@vue/babel-helper-vue-transform-on": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.5.0.tgz",
@@ -6283,54 +6407,54 @@
}
},
"node_modules/@vue/compiler-core": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.22.tgz",
- "integrity": "sha512-jQ0pFPmZwTEiRNSb+i9Ow/I/cHv2tXYqsnHKKyCQ08irI2kdF5qmYedmF8si8mA7zepUFmJ2hqzS8CQmNOWOkQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.24.tgz",
+ "integrity": "sha512-eDl5H57AOpNakGNAkFDH+y7kTqrQpJkZFXhWZQGyx/5Wh7B1uQYvcWkvZi11BDhscPgj8N7XV3oRwiPnx1Vrig==",
"license": "MIT",
"dependencies": {
- "@babel/parser": "^7.28.4",
- "@vue/shared": "3.5.22",
+ "@babel/parser": "^7.28.5",
+ "@vue/shared": "3.5.24",
"entities": "^4.5.0",
"estree-walker": "^2.0.2",
"source-map-js": "^1.2.1"
}
},
"node_modules/@vue/compiler-dom": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.22.tgz",
- "integrity": "sha512-W8RknzUM1BLkypvdz10OVsGxnMAuSIZs9Wdx1vzA3mL5fNMN15rhrSCLiTm6blWeACwUwizzPVqGJgOGBEN/hA==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.24.tgz",
+ "integrity": "sha512-1QHGAvs53gXkWdd3ZMGYuvQFXHW4ksKWPG8HP8/2BscrbZ0brw183q2oNWjMrSWImYLHxHrx1ItBQr50I/q2zw==",
"license": "MIT",
"dependencies": {
- "@vue/compiler-core": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-core": "3.5.24",
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/compiler-sfc": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.22.tgz",
- "integrity": "sha512-tbTR1zKGce4Lj+JLzFXDq36K4vcSZbJ1RBu8FxcDv1IGRz//Dh2EBqksyGVypz3kXpshIfWKGOCcqpSbyGWRJQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.24.tgz",
+ "integrity": "sha512-8EG5YPRgmTB+YxYBM3VXy8zHD9SWHUJLIGPhDovo3Z8VOgvP+O7UP5vl0J4BBPWYD9vxtBabzW1EuEZ+Cqs14g==",
"license": "MIT",
"peer": true,
"dependencies": {
- "@babel/parser": "^7.28.4",
- "@vue/compiler-core": "3.5.22",
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-ssr": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@babel/parser": "^7.28.5",
+ "@vue/compiler-core": "3.5.24",
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-ssr": "3.5.24",
+ "@vue/shared": "3.5.24",
"estree-walker": "^2.0.2",
- "magic-string": "^0.30.19",
+ "magic-string": "^0.30.21",
"postcss": "^8.5.6",
"source-map-js": "^1.2.1"
}
},
"node_modules/@vue/compiler-ssr": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.22.tgz",
- "integrity": "sha512-GdgyLvg4R+7T8Nk2Mlighx7XGxq/fJf9jaVofc3IL0EPesTE86cP/8DD1lT3h1JeZr2ySBvyqKQJgbS54IX1Ww==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.24.tgz",
+ "integrity": "sha512-trOvMWNBMQ/odMRHW7Ae1CdfYx+7MuiQu62Jtu36gMLXcaoqKvAyh+P73sYG9ll+6jLB6QPovqoKGGZROzkFFg==",
"license": "MIT",
"dependencies": {
- "@vue/compiler-dom": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/devtools-api": {
@@ -6340,50 +6464,43 @@
"license": "MIT"
},
"node_modules/@vue/devtools-core": {
- "version": "7.7.7",
- "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-7.7.7.tgz",
- "integrity": "sha512-9z9TLbfC+AjAi1PQyWX+OErjIaJmdFlbDHcD+cAMYKY6Bh5VlsAtCeGyRMrXwIlMEQPukvnWt3gZBLwTAIMKzQ==",
+ "version": "8.0.3",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-core/-/devtools-core-8.0.3.tgz",
+ "integrity": "sha512-gCEQN7aMmeaigEWJQ2Z2o3g7/CMqGTPvNS1U3n/kzpLoAZ1hkAHNgi4ml/POn/9uqGILBk65GGOUdrraHXRj5Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/devtools-kit": "^7.7.7",
- "@vue/devtools-shared": "^7.7.7",
+ "@vue/devtools-kit": "^8.0.3",
+ "@vue/devtools-shared": "^8.0.3",
"mitt": "^3.0.1",
- "nanoid": "^5.1.0",
+ "nanoid": "^5.1.5",
"pathe": "^2.0.3",
- "vite-hot-client": "^2.0.4"
+ "vite-hot-client": "^2.1.0"
},
"peerDependencies": {
"vue": "^3.0.0"
}
},
"node_modules/@vue/devtools-kit": {
- "version": "7.7.7",
- "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.7.tgz",
- "integrity": "sha512-wgoZtxcTta65cnZ1Q6MbAfePVFxfM+gq0saaeytoph7nEa7yMXoi6sCPy4ufO111B9msnw0VOWjPEFCXuAKRHA==",
+ "version": "8.0.3",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-8.0.3.tgz",
+ "integrity": "sha512-UF4YUOVGdfzXLCv5pMg2DxocB8dvXz278fpgEE+nJ/DRALQGAva7sj9ton0VWZ9hmXw+SV8yKMrxP2MpMhq9Wg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue/devtools-shared": "^7.7.7",
- "birpc": "^2.3.0",
+ "@vue/devtools-shared": "^8.0.3",
+ "birpc": "^2.6.1",
"hookable": "^5.5.3",
"mitt": "^3.0.1",
- "perfect-debounce": "^1.0.0",
+ "perfect-debounce": "^2.0.0",
"speakingurl": "^14.0.1",
"superjson": "^2.2.2"
}
},
- "node_modules/@vue/devtools-kit/node_modules/perfect-debounce": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz",
- "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/@vue/devtools-shared": {
- "version": "7.7.7",
- "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.7.tgz",
- "integrity": "sha512-+udSj47aRl5aKb0memBvcUG9koarqnxNM5yjuREvqwK6T3ap4mn3Zqqc17QrBFTqSMjr3HK1cvStEZpMDpfdyw==",
+ "version": "8.0.3",
+ "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-8.0.3.tgz",
+ "integrity": "sha512-s/QNll7TlpbADFZrPVsaUNPCOF8NvQgtgmmB7Tip6pLf/HcOvBTly0lfLQ0Eylu9FQ4OqBhFpLyBgwykiSf8zw==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6391,9 +6508,9 @@
}
},
"node_modules/@vue/language-core": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.1.1.tgz",
- "integrity": "sha512-qjMY3Q+hUCjdH+jLrQapqgpsJ0rd/2mAY02lZoHG3VFJZZZKLjAlV+Oo9QmWIT4jh8+Rx8RUGUi++d7T9Wb6Mw==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.1.3.tgz",
+ "integrity": "sha512-KpR1F/eGAG9D1RZ0/T6zWJs6dh/pRLfY5WupecyYKJ1fjVmDMgTPw9wXmKv2rBjo4zCJiOSiyB8BDP1OUwpMEA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6415,53 +6532,53 @@
}
},
"node_modules/@vue/reactivity": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.22.tgz",
- "integrity": "sha512-f2Wux4v/Z2pqc9+4SmgZC1p73Z53fyD90NFWXiX9AKVnVBEvLFOWCEgJD3GdGnlxPZt01PSlfmLqbLYzY/Fw4A==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.24.tgz",
+ "integrity": "sha512-BM8kBhtlkkbnyl4q+HiF5R5BL0ycDPfihowulm02q3WYp2vxgPcJuZO866qa/0u3idbMntKEtVNuAUp5bw4teg==",
"license": "MIT",
"dependencies": {
- "@vue/shared": "3.5.22"
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/runtime-core": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.22.tgz",
- "integrity": "sha512-EHo4W/eiYeAzRTN5PCextDUZ0dMs9I8mQ2Fy+OkzvRPUYQEyK9yAjbasrMCXbLNhF7P0OUyivLjIy0yc6VrLJQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.24.tgz",
+ "integrity": "sha512-RYP/byyKDgNIqfX/gNb2PB55dJmM97jc9wyF3jK7QUInYKypK2exmZMNwnjueWwGceEkP6NChd3D2ZVEp9undQ==",
"license": "MIT",
"dependencies": {
- "@vue/reactivity": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/reactivity": "3.5.24",
+ "@vue/shared": "3.5.24"
}
},
"node_modules/@vue/runtime-dom": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.22.tgz",
- "integrity": "sha512-Av60jsryAkI023PlN7LsqrfPvwfxOd2yAwtReCjeuugTJTkgrksYJJstg1e12qle0NarkfhfFu1ox2D+cQotww==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.24.tgz",
+ "integrity": "sha512-Z8ANhr/i0XIluonHVjbUkjvn+CyrxbXRIxR7wn7+X7xlcb7dJsfITZbkVOeJZdP8VZwfrWRsWdShH6pngMxRjw==",
"license": "MIT",
"dependencies": {
- "@vue/reactivity": "3.5.22",
- "@vue/runtime-core": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@vue/reactivity": "3.5.24",
+ "@vue/runtime-core": "3.5.24",
+ "@vue/shared": "3.5.24",
"csstype": "^3.1.3"
}
},
"node_modules/@vue/server-renderer": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.22.tgz",
- "integrity": "sha512-gXjo+ao0oHYTSswF+a3KRHZ1WszxIqO7u6XwNHqcqb9JfyIL/pbWrrh/xLv7jeDqla9u+LK7yfZKHih1e1RKAQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.24.tgz",
+ "integrity": "sha512-Yh2j2Y4G/0/4z/xJ1Bad4mxaAk++C2v4kaa8oSYTMJBJ00/ndPuxCnWeot0/7/qafQFLh5pr6xeV6SdMcE/G1w==",
"license": "MIT",
"dependencies": {
- "@vue/compiler-ssr": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-ssr": "3.5.24",
+ "@vue/shared": "3.5.24"
},
"peerDependencies": {
- "vue": "3.5.22"
+ "vue": "3.5.24"
}
},
"node_modules/@vue/shared": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.22.tgz",
- "integrity": "sha512-F4yc6palwq3TT0u+FYf0Ns4Tfl9GRFURDN2gWG7L1ecIaS/4fCIuFOjMTnCyjsu/OK6vaDKLCrGAa+KvvH+h4w==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.24.tgz",
+ "integrity": "sha512-9cwHL2EsJBdi8NY22pngYYWzkTDhld6fAD6jlaeloNGciNSJL6bLpbxVgXl96X00Jtc6YWQv96YA/0sxex/k1A==",
"license": "MIT"
},
"node_modules/@vue/test-utils": {
@@ -6571,9 +6688,9 @@
}
},
"node_modules/alien-signals": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-3.0.3.tgz",
- "integrity": "sha512-2JXjom6R7ZwrISpUphLhf4htUq1aKRCennTJ6u9kFfr3sLmC9+I4CxxVi+McoFnIg+p1HnVrfLT/iCt4Dlz//Q==",
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-3.1.0.tgz",
+ "integrity": "sha512-yufC6VpSy8tK3I0lO67pjumo5JvDQVQyr38+3OHqe6CHl1t2VZekKZ7EKKZSqk0cRmE7U7tfZbpXiKNzuc+ckg==",
"dev": true,
"license": "MIT"
},
@@ -6735,13 +6852,13 @@
}
},
"node_modules/ast-kit": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-2.1.3.tgz",
- "integrity": "sha512-TH+b3Lv6pUjy/Nu0m6A2JULtdzLpmqF9x1Dhj00ZoEiML8qvVA9j1flkzTKNYgdEhWrjDwtWNpyyCUbfQe514g==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/ast-kit/-/ast-kit-2.2.0.tgz",
+ "integrity": "sha512-m1Q/RaVOnTp9JxPX+F+Zn7IcLYMzM8kZofDImfsKZd8MbR+ikdOzTeztStWqfrqIxZnYWryyI9ePm3NGjnZgGw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/parser": "^7.28.4",
+ "@babel/parser": "^7.28.5",
"pathe": "^2.0.3"
},
"engines": {
@@ -6764,9 +6881,9 @@
}
},
"node_modules/ast-v8-to-istanbul": {
- "version": "0.3.7",
- "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-0.3.7.tgz",
- "integrity": "sha512-kr1Hy6YRZBkGQSb6puP+D6FQ59Cx4m0siYhAxygMCAgadiWQ6oxAxQXHOMvJx67SJ63jRoVIIg5eXzUbbct1ww==",
+ "version": "0.3.8",
+ "resolved": "https://registry.npmjs.org/ast-v8-to-istanbul/-/ast-v8-to-istanbul-0.3.8.tgz",
+ "integrity": "sha512-szgSZqUxI5T8mLKvS7WTjF9is+MVbOeLADU73IseOcrqhxr/VAvy6wfoVE39KnKzA7JRhjF5eUagNlHwvZPlKQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -6846,9 +6963,9 @@
}
},
"node_modules/autoprefixer": {
- "version": "10.4.21",
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.21.tgz",
- "integrity": "sha512-O+A6LWV5LDHSJD3LjHYoNi4VLsj/Whi7k6zG12xTYaU4cQ8oxQGckXNX8cRHK5yOZ/ppVHe0ZBXGzSV9jXdVbQ==",
+ "version": "10.4.22",
+ "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.22.tgz",
+ "integrity": "sha512-ARe0v/t9gO28Bznv6GgqARmVqcWOV3mfgUPn9becPHMiD3o9BwlRgaeccZnwTpZ7Zwqrm+c1sUSsMxIzQzc8Xg==",
"dev": true,
"funding": [
{
@@ -6866,9 +6983,9 @@
],
"license": "MIT",
"dependencies": {
- "browserslist": "^4.24.4",
- "caniuse-lite": "^1.0.30001702",
- "fraction.js": "^4.3.7",
+ "browserslist": "^4.27.0",
+ "caniuse-lite": "^1.0.30001754",
+ "fraction.js": "^5.3.4",
"normalize-range": "^0.1.2",
"picocolors": "^1.1.1",
"postcss-value-parser": "^4.2.0"
@@ -6884,9 +7001,9 @@
}
},
"node_modules/axios": {
- "version": "1.12.2",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.12.2.tgz",
- "integrity": "sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw==",
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.2.tgz",
+ "integrity": "sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==",
"license": "MIT",
"dependencies": {
"follow-redirects": "^1.15.6",
@@ -6915,9 +7032,9 @@
"license": "MIT"
},
"node_modules/bare-events": {
- "version": "2.8.1",
- "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.8.1.tgz",
- "integrity": "sha512-oxSAxTS1hRfnyit2CL5QpAOS5ixfBjj6ex3yTNvXyY/kE719jQ/IjuESJBK2w5v4wwQRAHGseVJXx9QBYOtFGQ==",
+ "version": "2.8.2",
+ "resolved": "https://registry.npmjs.org/bare-events/-/bare-events-2.8.2.tgz",
+ "integrity": "sha512-riJjyv1/mHLIPX4RwiK+oW9/4c3TEUeORHKefKAKnZ5kyslbN+HXowtbaVEqt4IMUB7OXlfixcs6gsFeo/jhiQ==",
"license": "Apache-2.0",
"peer": true,
"peerDependencies": {
@@ -6930,9 +7047,9 @@
}
},
"node_modules/bare-fs": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.5.0.tgz",
- "integrity": "sha512-GljgCjeupKZJNetTqxKaQArLK10vpmK28or0+RwWjEl5Rk+/xG3wkpmkv+WrcBm3q1BwHKlnhXzR8O37kcvkXQ==",
+ "version": "4.5.1",
+ "resolved": "https://registry.npmjs.org/bare-fs/-/bare-fs-4.5.1.tgz",
+ "integrity": "sha512-zGUCsm3yv/ePt2PHNbVxjjn0nNB1MkIaR4wOCxJ2ig5pCf5cCVAYJXVhQg/3OhhJV6DB1ts7Hv0oUaElc2TPQg==",
"license": "Apache-2.0",
"optional": true,
"dependencies": {
@@ -6997,9 +7114,9 @@
}
},
"node_modules/bare-url": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.3.1.tgz",
- "integrity": "sha512-v2yl0TnaZTdEnelkKtXZGnotiV6qATBlnNuUMrHl6v9Lmmrh9mw9RYyImPU7/4RahumSwQS1k2oKXcRfXcbjJw==",
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/bare-url/-/bare-url-2.3.2.tgz",
+ "integrity": "sha512-ZMq4gd9ngV5aTMa5p9+UfY0b3skwhHELaDkhEHetMdX0LRkW9kzaym4oo/Eh+Ghm0CCDuMTsRIGM/ytUc1ZYmw==",
"license": "Apache-2.0",
"optional": true,
"dependencies": {
@@ -7028,9 +7145,9 @@
"license": "MIT"
},
"node_modules/baseline-browser-mapping": {
- "version": "2.8.20",
- "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.20.tgz",
- "integrity": "sha512-JMWsdF+O8Orq3EMukbUN1QfbLK9mX2CkUmQBcW2T0s8OmdAUL5LLM/6wFwSrqXzlXB13yhyK9gTKS1rIizOduQ==",
+ "version": "2.8.27",
+ "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.27.tgz",
+ "integrity": "sha512-2CXFpkjVnY2FT+B6GrSYxzYf65BJWEqz5tIRHCvNsZZ2F3CmsCB37h8SpYgKG7y9C4YAeTipIPWG7EmFmhAeXA==",
"dev": true,
"license": "Apache-2.0",
"bin": {
@@ -7079,9 +7196,9 @@
}
},
"node_modules/birpc": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.6.1.tgz",
- "integrity": "sha512-LPnFhlDpdSH6FJhJyn4M0kFO7vtQ5iPw24FnG0y21q09xC7e8+1LeR31S1MAIrDAHp4m7aas4bEkTDTvMAtebQ==",
+ "version": "2.8.0",
+ "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.8.0.tgz",
+ "integrity": "sha512-Bz2a4qD/5GRhiHSwj30c/8kC8QGj12nNDwz3D4ErQ4Xhy35dsSDvF+RA/tWpjyU0pdGtSDiEk6B5fBGE1qNVhw==",
"dev": true,
"license": "MIT",
"funding": {
@@ -7118,9 +7235,9 @@
}
},
"node_modules/browserslist": {
- "version": "4.27.0",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.27.0.tgz",
- "integrity": "sha512-AXVQwdhot1eqLihwasPElhX2tAZiBjWdJ9i/Zcj2S6QYIjkx62OKSfnobkriB81C3l4w0rVy3Nt4jaTBltYEpw==",
+ "version": "4.28.0",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.0.tgz",
+ "integrity": "sha512-tbydkR/CxfMwelN0vwdP/pLkDwyAASZ+VfWm4EOwlB6SWhx1sYnWLqo8N5j0rAzPfzfRaxt0mM/4wPU/Su84RQ==",
"dev": true,
"funding": [
{
@@ -7139,10 +7256,10 @@
"license": "MIT",
"peer": true,
"dependencies": {
- "baseline-browser-mapping": "^2.8.19",
- "caniuse-lite": "^1.0.30001751",
- "electron-to-chromium": "^1.5.238",
- "node-releases": "^2.0.26",
+ "baseline-browser-mapping": "^2.8.25",
+ "caniuse-lite": "^1.0.30001754",
+ "electron-to-chromium": "^1.5.249",
+ "node-releases": "^2.0.27",
"update-browserslist-db": "^1.1.4"
},
"bin": {
@@ -7240,9 +7357,9 @@
}
},
"node_modules/c12": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/c12/-/c12-3.3.1.tgz",
- "integrity": "sha512-LcWQ01LT9tkoUINHgpIOv3mMs+Abv7oVCrtpMRi1PaapVEpWoMga5WuT7/DqFTu7URP9ftbOmimNw1KNIGh9DQ==",
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/c12/-/c12-3.3.2.tgz",
+ "integrity": "sha512-QkikB2X5voO1okL3QsES0N690Sn/K9WokXqUsDQsWy5SnYb+psYQFGA10iy1bZHj3fjISKsI67Q90gruvWWM3A==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -7250,7 +7367,7 @@
"confbox": "^0.2.2",
"defu": "^6.1.4",
"dotenv": "^17.2.3",
- "exsolve": "^1.0.7",
+ "exsolve": "^1.0.8",
"giget": "^2.0.0",
"jiti": "^2.6.1",
"ohash": "^2.0.11",
@@ -7260,7 +7377,7 @@
"rc9": "^2.1.2"
},
"peerDependencies": {
- "magicast": "^0.3.5"
+ "magicast": "*"
},
"peerDependenciesMeta": {
"magicast": {
@@ -7356,9 +7473,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001751",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001751.tgz",
- "integrity": "sha512-A0QJhug0Ly64Ii3eIqHu5X51ebln3k4yTUkY1j8drqpWHVreg/VLijN48cZ1bYPiqOQuqpkIKnzr/Ul8V+p6Cw==",
+ "version": "1.0.30001754",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001754.tgz",
+ "integrity": "sha512-x6OeBXueoAceOmotzx3PO4Zpt4rzpeIFsSr6AAePTZxSkXiYDUmpypEl7e2+8NCd9bD7bXjqyef8CJYPC1jfxg==",
"dev": true,
"funding": [
{
@@ -7454,208 +7571,84 @@
}
},
"node_modules/chromium-bidi": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-9.1.0.tgz",
- "integrity": "sha512-rlUzQ4WzIAWdIbY/viPShhZU2n21CxDUgazXVbw4Hu1MwaeUSEksSeM6DqPgpRjCLXRk702AVRxJxoOz0dw4OA==",
- "license": "Apache-2.0",
- "dependencies": {
- "mitt": "^3.0.1",
- "zod": "^3.24.1"
- },
- "peerDependencies": {
- "devtools-protocol": "*"
- }
- },
- "node_modules/ci-info": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.1.tgz",
- "integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/sibiraj-s"
- }
- ],
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/citty": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz",
- "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "consola": "^3.2.3"
- }
- },
- "node_modules/cjs-module-lexer": {
- "version": "1.4.3",
- "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
- "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==",
- "license": "MIT"
- },
- "node_modules/clean-regexp": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz",
- "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "escape-string-regexp": "^1.0.5"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/clean-regexp/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/clipboardy": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-5.0.0.tgz",
- "integrity": "sha512-MQfKHaD09eP80Pev4qBxZLbxJK/ONnqfSYAPlCmPh+7BDboYtO/3BmB6HGzxDIT0SlTRc2tzS8lQqfcdLtZ0Kg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "execa": "^9.6.0",
- "is-wayland": "^0.1.0",
- "is-wsl": "^3.1.0",
- "is64bit": "^2.0.0"
- },
- "engines": {
- "node": ">=20"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/clipboardy/node_modules/execa": {
- "version": "9.6.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-9.6.0.tgz",
- "integrity": "sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@sindresorhus/merge-streams": "^4.0.0",
- "cross-spawn": "^7.0.6",
- "figures": "^6.1.0",
- "get-stream": "^9.0.0",
- "human-signals": "^8.0.1",
- "is-plain-obj": "^4.1.0",
- "is-stream": "^4.0.1",
- "npm-run-path": "^6.0.0",
- "pretty-ms": "^9.2.0",
- "signal-exit": "^4.1.0",
- "strip-final-newline": "^4.0.0",
- "yoctocolors": "^2.1.1"
- },
- "engines": {
- "node": "^18.19.0 || >=20.5.0"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/execa?sponsor=1"
- }
- },
- "node_modules/clipboardy/node_modules/get-stream": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz",
- "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@sec-ant/readable-stream": "^0.4.1",
- "is-stream": "^4.0.1"
- },
- "engines": {
- "node": ">=18"
+ "version": "10.5.1",
+ "resolved": "https://registry.npmjs.org/chromium-bidi/-/chromium-bidi-10.5.1.tgz",
+ "integrity": "sha512-rlj6OyhKhVTnk4aENcUme3Jl9h+cq4oXu4AzBcvr8RMmT6BR4a3zSNT9dbIfXr9/BS6ibzRyDhowuw4n2GgzsQ==",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "mitt": "^3.0.1",
+ "zod": "^3.24.1"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "peerDependencies": {
+ "devtools-protocol": "*"
}
},
- "node_modules/clipboardy/node_modules/human-signals": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-8.0.1.tgz",
- "integrity": "sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==",
+ "node_modules/ci-info": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.3.1.tgz",
+ "integrity": "sha512-Wdy2Igu8OcBpI2pZePZ5oWjPC38tmDVx5WKUXKwlLYkA0ozo85sLsLvkBbBn/sZaSCMFOGZJ14fvW9t5/d7kdA==",
"dev": true,
- "license": "Apache-2.0",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/sibiraj-s"
+ }
+ ],
+ "license": "MIT",
"engines": {
- "node": ">=18.18.0"
+ "node": ">=8"
}
},
- "node_modules/clipboardy/node_modules/is-stream": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz",
- "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==",
+ "node_modules/citty": {
+ "version": "0.1.6",
+ "resolved": "https://registry.npmjs.org/citty/-/citty-0.1.6.tgz",
+ "integrity": "sha512-tskPPKEs8D2KPafUypv2gxwJP8h/OaJmC82QQGGDQcHvXX43xF2VDACcJVmZ0EuSxkpO9Kc4MlrA3q0+FG58AQ==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "dependencies": {
+ "consola": "^3.2.3"
}
},
- "node_modules/clipboardy/node_modules/npm-run-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-6.0.0.tgz",
- "integrity": "sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==",
+ "node_modules/cjs-module-lexer": {
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.3.tgz",
+ "integrity": "sha512-9z8TZaGM1pfswYeXrUpzPrkx8UnWYdhJclsiYMm6x/w5+nN+8Tf/LnAgfLGQCm59qAOxU8WwHEq2vNwF6i4j+Q==",
+ "license": "MIT"
+ },
+ "node_modules/clean-regexp": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/clean-regexp/-/clean-regexp-1.0.0.tgz",
+ "integrity": "sha512-GfisEZEJvzKrmGWkvfhgzcz/BllN1USeqD2V6tg14OAOgaCD2Z/PUEuxnAZ/nPvmaHRG7a8y77p1T/IRQ4D1Hw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "path-key": "^4.0.0",
- "unicorn-magic": "^0.3.0"
+ "escape-string-regexp": "^1.0.5"
},
"engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=4"
}
},
- "node_modules/clipboardy/node_modules/path-key": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz",
- "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==",
+ "node_modules/clean-regexp/node_modules/escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=0.8.0"
}
},
- "node_modules/clipboardy/node_modules/strip-final-newline": {
+ "node_modules/clipboardy": {
"version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-4.0.0.tgz",
- "integrity": "sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==",
+ "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz",
+ "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=18"
+ "dependencies": {
+ "execa": "^8.0.1",
+ "is-wsl": "^3.1.0",
+ "is64bit": "^2.0.0"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/clipboardy/node_modules/unicorn-magic": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz",
- "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==",
- "dev": true,
- "license": "MIT",
"engines": {
"node": ">=18"
},
@@ -7928,20 +7921,10 @@
"dev": true,
"license": "MIT"
},
- "node_modules/cookie": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-1.0.2.tgz",
- "integrity": "sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- }
- },
"node_modules/cookie-es": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-2.0.0.tgz",
- "integrity": "sha512-RAj4E421UYRgqokKUmotqAwuplYw15qtdXfY+hGzgCJ/MBjCVZcSoHK/kH9kocfjRjcDME7IiDWR/1WX1TM2Pg==",
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.2.tgz",
+ "integrity": "sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==",
"dev": true,
"license": "MIT"
},
@@ -7975,6 +7958,15 @@
"url": "https://github.com/sponsors/mesqueeb"
}
},
+ "node_modules/copy-paste": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/copy-paste/-/copy-paste-2.2.0.tgz",
+ "integrity": "sha512-jqSL4r9DSeiIvJZStLzY/sMLt9ToTM7RsK237lYOTG+KcbQJHGala3R1TUpa8h1p9adswVgIdV4qGbseVhL4lg==",
+ "dev": true,
+ "dependencies": {
+ "iconv-lite": "^0.4.8"
+ }
+ },
"node_modules/core-js-compat": {
"version": "3.46.0",
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.46.0.tgz",
@@ -8140,13 +8132,13 @@
}
},
"node_modules/cssnano": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-7.1.1.tgz",
- "integrity": "sha512-fm4D8ti0dQmFPeF8DXSAA//btEmqCOgAc/9Oa3C1LW94h5usNrJEfrON7b4FkPZgnDEn6OUs5NdxiJZmAtGOpQ==",
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-7.1.2.tgz",
+ "integrity": "sha512-HYOPBsNvoiFeR1eghKD5C3ASm64v9YVyJB4Ivnl2gqKoQYvjjN/G0rztvKQq8OxocUtC6sjqY8jwYngIB4AByA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "cssnano-preset-default": "^7.0.9",
+ "cssnano-preset-default": "^7.0.10",
"lilconfig": "^3.1.3"
},
"engines": {
@@ -8161,27 +8153,27 @@
}
},
"node_modules/cssnano-preset-default": {
- "version": "7.0.9",
- "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-7.0.9.tgz",
- "integrity": "sha512-tCD6AAFgYBOVpMBX41KjbvRh9c2uUjLXRyV7KHSIrwHiq5Z9o0TFfUCoM3TwVrRsRteN3sVXGNvjVNxYzkpTsA==",
+ "version": "7.0.10",
+ "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-7.0.10.tgz",
+ "integrity": "sha512-6ZBjW0Lf1K1Z+0OKUAUpEN62tSXmYChXWi2NAA0afxEVsj9a+MbcB1l5qel6BHJHmULai2fCGRthCeKSFbScpA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"css-declaration-sorter": "^7.2.0",
"cssnano-utils": "^5.0.1",
"postcss-calc": "^10.1.1",
- "postcss-colormin": "^7.0.4",
- "postcss-convert-values": "^7.0.7",
- "postcss-discard-comments": "^7.0.4",
+ "postcss-colormin": "^7.0.5",
+ "postcss-convert-values": "^7.0.8",
+ "postcss-discard-comments": "^7.0.5",
"postcss-discard-duplicates": "^7.0.2",
"postcss-discard-empty": "^7.0.1",
"postcss-discard-overridden": "^7.0.1",
"postcss-merge-longhand": "^7.0.5",
- "postcss-merge-rules": "^7.0.6",
+ "postcss-merge-rules": "^7.0.7",
"postcss-minify-font-values": "^7.0.1",
"postcss-minify-gradients": "^7.0.1",
- "postcss-minify-params": "^7.0.4",
+ "postcss-minify-params": "^7.0.5",
"postcss-minify-selectors": "^7.0.5",
"postcss-normalize-charset": "^7.0.1",
"postcss-normalize-display-values": "^7.0.1",
@@ -8189,11 +8181,11 @@
"postcss-normalize-repeat-style": "^7.0.1",
"postcss-normalize-string": "^7.0.1",
"postcss-normalize-timing-functions": "^7.0.1",
- "postcss-normalize-unicode": "^7.0.4",
+ "postcss-normalize-unicode": "^7.0.5",
"postcss-normalize-url": "^7.0.1",
"postcss-normalize-whitespace": "^7.0.1",
"postcss-ordered-values": "^7.0.2",
- "postcss-reduce-initial": "^7.0.4",
+ "postcss-reduce-initial": "^7.0.5",
"postcss-reduce-transforms": "^7.0.1",
"postcss-svgo": "^7.1.0",
"postcss-unique-selectors": "^7.0.4"
@@ -8255,9 +8247,9 @@
"license": "CC0-1.0"
},
"node_modules/cssstyle": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-5.3.1.tgz",
- "integrity": "sha512-g5PC9Aiph9eiczFpcgUhd9S4UUO3F+LHGRIi5NUMZ+4xtoIYbHNZwZnWA2JsFGe8OU8nl4WyaEFiZuGuxlutJQ==",
+ "version": "5.3.3",
+ "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-5.3.3.tgz",
+ "integrity": "sha512-OytmFH+13/QXONJcC75QNdMtKpceNk3u8ThBjyyYjkEcy/ekBwR1mMAuNvi3gdBPW3N5TlCzQ0WZw8H0lN/bDw==",
"license": "MIT",
"dependencies": {
"@asamuzakjp/css-color": "^4.0.3",
@@ -8297,9 +8289,9 @@
}
},
"node_modules/dayjs": {
- "version": "1.11.18",
- "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.18.tgz",
- "integrity": "sha512-zFBQ7WFRvVRhKcWoUh+ZA1g2HVgUbsZm9sbddh8EC5iv93sui8DVVz1Npvz+r6meo9VKfa8NyLWBsQK1VvIKPA==",
+ "version": "1.11.19",
+ "resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.19.tgz",
+ "integrity": "sha512-t5EcLVS6QPBNqM2z8fakk/NKel+Xzshgt8FFKAn+qwlD1pzZWxh0nVCrvFK7ZDb6XucZeF9z8C7CBWTRIVApAw==",
"license": "MIT"
},
"node_modules/db0": {
@@ -8404,9 +8396,9 @@
}
},
"node_modules/default-browser": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz",
- "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==",
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.3.0.tgz",
+ "integrity": "sha512-Qq68+VkJlc8tjnPV1i7HtbIn7ohmjZa88qUvHMIK0ZKUXMCuV45cT7cEXALPUmeXCe0q1DWQkQTemHVaLIFSrg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -8535,16 +8527,16 @@
}
},
"node_modules/devalue": {
- "version": "5.4.2",
- "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.4.2.tgz",
- "integrity": "sha512-MwPZTKEPK2k8Qgfmqrd48ZKVvzSQjgW0lXLxiIBA8dQjtf/6mw6pggHNLcyDKyf+fI6eXxlQwPsfaCMTU5U+Bw==",
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/devalue/-/devalue-5.5.0.tgz",
+ "integrity": "sha512-69sM5yrHfFLJt0AZ9QqZXGCPfJ7fQjvpln3Rq5+PS03LD32Ost1Q9N+eEnaQwGRIriKkMImXD56ocjQmfjbV3w==",
"dev": true,
"license": "MIT"
},
"node_modules/devtools-protocol": {
- "version": "0.0.1508733",
- "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1508733.tgz",
- "integrity": "sha512-QJ1R5gtck6nDcdM+nlsaJXcelPEI7ZxSMw1ujHpO1c4+9l+Nue5qlebi9xO1Z2MGr92bFOQTW7/rrheh5hHxDg==",
+ "version": "0.0.1521046",
+ "resolved": "https://registry.npmjs.org/devtools-protocol/-/devtools-protocol-0.0.1521046.tgz",
+ "integrity": "sha512-vhE6eymDQSKWUXwwA37NtTTVEzjtGVfDr3pRbsWEQ5onH/Snp2c+2xZHWJJawG/0hCCJLRGt4xVtEVUVILol4w==",
"license": "BSD-3-Clause",
"peer": true
},
@@ -8740,9 +8732,9 @@
"license": "MIT"
},
"node_modules/electron-to-chromium": {
- "version": "1.5.239",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.239.tgz",
- "integrity": "sha512-1y5w0Zsq39MSPmEjHjbizvhYoTaulVtivpxkp5q5kaPmQtsK6/2nvAzGRxNMS9DoYySp9PkW0MAQDwU1m764mg==",
+ "version": "1.5.250",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.250.tgz",
+ "integrity": "sha512-/5UMj9IiGDMOFBnN4i7/Ry5onJrAGSbOGo3s9FEKmwobGq6xw832ccET0CE3CkkMBZ8GJSlUIesZofpyurqDXw==",
"dev": true,
"license": "ISC"
},
@@ -8854,9 +8846,9 @@
}
},
"node_modules/esbuild": {
- "version": "0.25.11",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.11.tgz",
- "integrity": "sha512-KohQwyzrKTQmhXDW1PjCv3Tyspn9n5GcY2RTDqeORIdIJY8yKIF7sTSopFmn/wpMPW4rdPXI0UE5LJLuq3bx0Q==",
+ "version": "0.25.12",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.25.12.tgz",
+ "integrity": "sha512-bbPBYYrtZbkt6Os6FiTLCTFxvq4tt3JKall1vRwshA3fdVztsLAatFaZobhkBC8/BrPetoa0oksYoKXoG4ryJg==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
@@ -8868,32 +8860,32 @@
"node": ">=18"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.25.11",
- "@esbuild/android-arm": "0.25.11",
- "@esbuild/android-arm64": "0.25.11",
- "@esbuild/android-x64": "0.25.11",
- "@esbuild/darwin-arm64": "0.25.11",
- "@esbuild/darwin-x64": "0.25.11",
- "@esbuild/freebsd-arm64": "0.25.11",
- "@esbuild/freebsd-x64": "0.25.11",
- "@esbuild/linux-arm": "0.25.11",
- "@esbuild/linux-arm64": "0.25.11",
- "@esbuild/linux-ia32": "0.25.11",
- "@esbuild/linux-loong64": "0.25.11",
- "@esbuild/linux-mips64el": "0.25.11",
- "@esbuild/linux-ppc64": "0.25.11",
- "@esbuild/linux-riscv64": "0.25.11",
- "@esbuild/linux-s390x": "0.25.11",
- "@esbuild/linux-x64": "0.25.11",
- "@esbuild/netbsd-arm64": "0.25.11",
- "@esbuild/netbsd-x64": "0.25.11",
- "@esbuild/openbsd-arm64": "0.25.11",
- "@esbuild/openbsd-x64": "0.25.11",
- "@esbuild/openharmony-arm64": "0.25.11",
- "@esbuild/sunos-x64": "0.25.11",
- "@esbuild/win32-arm64": "0.25.11",
- "@esbuild/win32-ia32": "0.25.11",
- "@esbuild/win32-x64": "0.25.11"
+ "@esbuild/aix-ppc64": "0.25.12",
+ "@esbuild/android-arm": "0.25.12",
+ "@esbuild/android-arm64": "0.25.12",
+ "@esbuild/android-x64": "0.25.12",
+ "@esbuild/darwin-arm64": "0.25.12",
+ "@esbuild/darwin-x64": "0.25.12",
+ "@esbuild/freebsd-arm64": "0.25.12",
+ "@esbuild/freebsd-x64": "0.25.12",
+ "@esbuild/linux-arm": "0.25.12",
+ "@esbuild/linux-arm64": "0.25.12",
+ "@esbuild/linux-ia32": "0.25.12",
+ "@esbuild/linux-loong64": "0.25.12",
+ "@esbuild/linux-mips64el": "0.25.12",
+ "@esbuild/linux-ppc64": "0.25.12",
+ "@esbuild/linux-riscv64": "0.25.12",
+ "@esbuild/linux-s390x": "0.25.12",
+ "@esbuild/linux-x64": "0.25.12",
+ "@esbuild/netbsd-arm64": "0.25.12",
+ "@esbuild/netbsd-x64": "0.25.12",
+ "@esbuild/openbsd-arm64": "0.25.12",
+ "@esbuild/openbsd-x64": "0.25.12",
+ "@esbuild/openharmony-arm64": "0.25.12",
+ "@esbuild/sunos-x64": "0.25.12",
+ "@esbuild/win32-arm64": "0.25.12",
+ "@esbuild/win32-ia32": "0.25.12",
+ "@esbuild/win32-x64": "0.25.12"
}
},
"node_modules/escalade": {
@@ -8947,9 +8939,9 @@
}
},
"node_modules/eslint": {
- "version": "9.38.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.38.0.tgz",
- "integrity": "sha512-t5aPOpmtJcZcz5UJyY2GbvpDlsK5E8JqRqoKtfiKE3cNh437KIqfJr3A3AKf5k64NPx6d0G3dno6XDY05PqPtw==",
+ "version": "9.39.1",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.39.1.tgz",
+ "integrity": "sha512-BhHmn2yNOFA9H9JmmIVKJmd288g9hrVRDkdoIgRCRuSySRUHH7r/DI6aAXW9T1WwUuY3DFgrcaqB+deURBLR5g==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -8957,11 +8949,11 @@
"@eslint-community/eslint-utils": "^4.8.0",
"@eslint-community/regexpp": "^4.12.1",
"@eslint/config-array": "^0.21.1",
- "@eslint/config-helpers": "^0.4.1",
- "@eslint/core": "^0.16.0",
+ "@eslint/config-helpers": "^0.4.2",
+ "@eslint/core": "^0.17.0",
"@eslint/eslintrc": "^3.3.1",
- "@eslint/js": "9.38.0",
- "@eslint/plugin-kit": "^0.4.0",
+ "@eslint/js": "9.39.1",
+ "@eslint/plugin-kit": "^0.4.1",
"@humanfs/node": "^0.16.6",
"@humanwhocodes/module-importer": "^1.0.1",
"@humanwhocodes/retry": "^0.4.2",
@@ -9168,22 +9160,26 @@
}
},
"node_modules/eslint-plugin-jsdoc": {
- "version": "54.7.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-54.7.0.tgz",
- "integrity": "sha512-u5Na4he2+6kY1rWqxzbQaAwJL3/tDCuT5ElDRc5UJ9stOeQeQ5L1JJ1kRRu7ldYMlOHMCJLsY8Mg/Tu3ExdZiQ==",
+ "version": "61.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-61.2.0.tgz",
+ "integrity": "sha512-Pky3YKWPOcDGi4TzBZlp/ENd+z443uVgIyZxzA9wVbfECjG1ptf7sB8gzSX4Z8dAtoD8d3d68jsLuAfxr+8qyQ==",
"dev": true,
"license": "BSD-3-Clause",
"dependencies": {
- "@es-joy/jsdoccomment": "~0.56.0",
+ "@es-joy/jsdoccomment": "~0.76.0",
+ "@es-joy/resolve.exports": "1.2.0",
"are-docs-informative": "^0.0.2",
"comment-parser": "1.4.1",
- "debug": "^4.4.1",
+ "debug": "^4.4.3",
"escape-string-regexp": "^4.0.0",
"espree": "^10.4.0",
"esquery": "^1.6.0",
+ "html-entities": "^2.6.0",
+ "object-deep-merge": "^2.0.0",
"parse-imports-exports": "^0.2.4",
- "semver": "^7.7.2",
- "spdx-expression-parse": "^4.0.0"
+ "semver": "^7.7.3",
+ "spdx-expression-parse": "^4.0.0",
+ "to-valid-identifier": "^1.0.0"
},
"engines": {
"node": ">=20.11.0"
@@ -9263,30 +9259,30 @@
}
},
"node_modules/eslint-plugin-unicorn": {
- "version": "60.0.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-60.0.0.tgz",
- "integrity": "sha512-QUzTefvP8stfSXsqKQ+vBQSEsXIlAiCduS/V1Em+FKgL9c21U/IIm20/e3MFy1jyCf14tHAhqC1sX8OTy6VUCg==",
+ "version": "62.0.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-unicorn/-/eslint-plugin-unicorn-62.0.0.tgz",
+ "integrity": "sha512-HIlIkGLkvf29YEiS/ImuDZQbP12gWyx5i3C6XrRxMvVdqMroCI9qoVYCoIl17ChN+U89pn9sVwLxhIWj5nEc7g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-validator-identifier": "^7.27.1",
- "@eslint-community/eslint-utils": "^4.7.0",
- "@eslint/plugin-kit": "^0.3.3",
+ "@babel/helper-validator-identifier": "^7.28.5",
+ "@eslint-community/eslint-utils": "^4.9.0",
+ "@eslint/plugin-kit": "^0.4.0",
"change-case": "^5.4.4",
- "ci-info": "^4.3.0",
+ "ci-info": "^4.3.1",
"clean-regexp": "^1.0.0",
- "core-js-compat": "^3.44.0",
+ "core-js-compat": "^3.46.0",
"esquery": "^1.6.0",
"find-up-simple": "^1.0.1",
- "globals": "^16.3.0",
+ "globals": "^16.4.0",
"indent-string": "^5.0.0",
"is-builtin-module": "^5.0.0",
"jsesc": "^3.1.0",
"pluralize": "^8.0.0",
"regexp-tree": "^0.1.27",
- "regjsparser": "^0.12.0",
- "semver": "^7.7.2",
- "strip-indent": "^4.0.0"
+ "regjsparser": "^0.13.0",
+ "semver": "^7.7.3",
+ "strip-indent": "^4.1.1"
},
"engines": {
"node": "^20.10.0 || >=21.0.0"
@@ -9295,34 +9291,7 @@
"url": "https://github.com/sindresorhus/eslint-plugin-unicorn?sponsor=1"
},
"peerDependencies": {
- "eslint": ">=9.29.0"
- }
- },
- "node_modules/eslint-plugin-unicorn/node_modules/@eslint/core": {
- "version": "0.15.2",
- "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.15.2.tgz",
- "integrity": "sha512-78Md3/Rrxh83gCxoUc0EiciuOHsIITzLy53m3d9UyiW8y9Dj2D29FeETqyKA+BRK76tnTp6RXWb3pCay8Oyomg==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "@types/json-schema": "^7.0.15"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
- }
- },
- "node_modules/eslint-plugin-unicorn/node_modules/@eslint/plugin-kit": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.3.5.tgz",
- "integrity": "sha512-Z5kJ+wU3oA7MMIqVR9tyZRtjYPr4OC004Q4Rw7pgOKUOKkJfZ3O24nz3WYfGRpMDNmcOi3TwQOmgm7B7Tpii0w==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "@eslint/core": "^0.15.2",
- "levn": "^0.4.1"
- },
- "engines": {
- "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ "eslint": ">=9.38.0"
}
},
"node_modules/eslint-plugin-vue": {
@@ -9776,9 +9745,9 @@
}
},
"node_modules/exsolve": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.7.tgz",
- "integrity": "sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==",
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/exsolve/-/exsolve-1.0.8.tgz",
+ "integrity": "sha512-LmDxfWXwcTArk8fUEnOfSZpHOJ6zOMUJKOtFLFqJLoKJetuQG874Uc7/Kki7zFLzYybmZhp1M7+98pfMqeX8yA==",
"dev": true,
"license": "MIT"
},
@@ -9966,22 +9935,6 @@
}
}
},
- "node_modules/figures": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz",
- "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-unicode-supported": "^2.0.0"
- },
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/file-entry-cache": {
"version": "8.0.0",
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz",
@@ -10016,18 +9969,17 @@
}
},
"node_modules/find-up": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-7.0.0.tgz",
- "integrity": "sha512-YyZM99iHrqLKjmt4LJDj58KI+fYyufRLBSYcqycxf//KpBk9FoewoGX0450m9nB44qrZnovzC2oeP5hUibxc/g==",
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-8.0.0.tgz",
+ "integrity": "sha512-JGG8pvDi2C+JxidYdIwQDyS/CgcrIdh18cvgxcBge3wSHRQOrooMD3GlFBcmMJAN9M42SAZjDp5zv1dglJjwww==",
"dev": true,
"license": "MIT",
"dependencies": {
- "locate-path": "^7.2.0",
- "path-exists": "^5.0.0",
- "unicorn-magic": "^0.1.0"
+ "locate-path": "^8.0.0",
+ "unicorn-magic": "^0.3.0"
},
"engines": {
- "node": ">=18"
+ "node": ">=20"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -10127,16 +10079,16 @@
"license": "MIT"
},
"node_modules/fraction.js": {
- "version": "4.3.7",
- "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz",
- "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==",
+ "version": "5.3.4",
+ "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-5.3.4.tgz",
+ "integrity": "sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==",
"dev": true,
"license": "MIT",
"engines": {
"node": "*"
},
"funding": {
- "type": "patreon",
+ "type": "github",
"url": "https://github.com/sponsors/rawify"
}
},
@@ -10420,9 +10372,9 @@
}
},
"node_modules/globals": {
- "version": "16.4.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-16.4.0.tgz",
- "integrity": "sha512-ob/2LcVVaVGCYN+r14cnwnoDPUufjiYgSqRhiFD0Q1iI4Odora5RE8Iv1D24hAz5oMophRGkGz+yuvQmmUMnMw==",
+ "version": "16.5.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-16.5.0.tgz",
+ "integrity": "sha512-c/c15i26VrJ4IRt5Z89DnIzCGDn9EcebibhAOjw5ibqEHsE1wLUgkPn9RDmNcUKyU87GeaL633nyJ+pplFR2ZQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -10453,19 +10405,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/globby/node_modules/unicorn-magic": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz",
- "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/gopd": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
@@ -10526,13 +10465,6 @@
"uncrypto": "^0.1.3"
}
},
- "node_modules/h3/node_modules/cookie-es": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-1.2.2.tgz",
- "integrity": "sha512-+W7VmiVINB+ywl1HGXJXmrqkOhpKrIiVZV6tQuV54ZyQC7MMuBt81Vc336GMLoHBq5hV/F9eXgt5Mnx0Rha5Fg==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/hal-json-normalizer": {
"version": "5.0.0-alpha.0",
"resolved": "https://registry.npmjs.org/hal-json-normalizer/-/hal-json-normalizer-5.0.0-alpha.0.tgz",
@@ -10662,6 +10594,23 @@
"node": ">=18"
}
},
+ "node_modules/html-entities": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.6.0.tgz",
+ "integrity": "sha512-kig+rMn/QOVRvr7c86gQ8lWXq+Hkv6CbAH1hLu+RG338StTpE8Z0b44SDVaqVu7HGKf27frdmUYEs9hTUX/cLQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/mdevils"
+ },
+ {
+ "type": "patreon",
+ "url": "https://patreon.com/mdevils"
+ }
+ ],
+ "license": "MIT"
+ },
"node_modules/html-escaper": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
@@ -10802,12 +10751,13 @@
}
},
"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==",
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
+ "safer-buffer": ">= 2.1.2 < 3"
},
"engines": {
"node": ">=0.10.0"
@@ -10976,9 +10926,9 @@
}
},
"node_modules/ip-address": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.0.1.tgz",
- "integrity": "sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA==",
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.1.0.tgz",
+ "integrity": "sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==",
"license": "MIT",
"engines": {
"node": ">= 12"
@@ -11172,19 +11122,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/is-plain-obj": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
- "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"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",
@@ -11243,32 +11180,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "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": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-wayland": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/is-wayland/-/is-wayland-0.1.0.tgz",
- "integrity": "sha512-QkbMsWkIfkrzOPxenwye0h56iAXirZYHG9eHVPb22fO9y+wPbaX/CHacOWBa/I++4ohTcByimhM1/nyCsH8KNA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=20"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/is-what": {
"version": "5.5.0",
"resolved": "https://registry.npmjs.org/is-what/-/is-what-5.5.0.tgz",
@@ -11329,16 +11240,16 @@
"license": "ISC"
},
"node_modules/isomorphic-dompurify": {
- "version": "2.29.0",
- "resolved": "https://registry.npmjs.org/isomorphic-dompurify/-/isomorphic-dompurify-2.29.0.tgz",
- "integrity": "sha512-Bgw5M9GMsuGeGSRpS81gk68t9/+r3AwuJJ5WnSxZK+tuazDodlRgmwz4ItMAfNYDgiNaizREYeiefkFQWkG7ow==",
+ "version": "2.31.0",
+ "resolved": "https://registry.npmjs.org/isomorphic-dompurify/-/isomorphic-dompurify-2.31.0.tgz",
+ "integrity": "sha512-/XPACpfVJeEiy28UgkBWUWdhgKN8xwFYkoVFsqrcSJJ5pXZ3HStuF3ih/Hr8PwhCXHqFAys+b4tcgw0pbUT4rw==",
"license": "MIT",
"dependencies": {
"dompurify": "^3.3.0",
- "jsdom": "^27.0.0"
+ "jsdom": "^27.1.0"
},
"engines": {
- "node": ">=18"
+ "node": ">=20.19.5"
}
},
"node_modules/istanbul-lib-coverage": {
@@ -11461,9 +11372,9 @@
"license": "MIT"
},
"node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz",
+ "integrity": "sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -11474,23 +11385,24 @@
}
},
"node_modules/jsdoc-type-pratt-parser": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-5.1.1.tgz",
- "integrity": "sha512-DYYlVP1fe4QBMh2xTIs20/YeTz2GYVbWAEZweHSZD+qQ/Cx2d5RShuhhsdk64eTjNq0FeVnteP/qVOgaywSRbg==",
+ "version": "6.10.0",
+ "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-6.10.0.tgz",
+ "integrity": "sha512-+LexoTRyYui5iOhJGn13N9ZazL23nAHGkXsa1p/C8yeq79WRfLBag6ZZ0FQG2aRoc9yfo59JT9EYCQonOkHKkQ==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=12.0.0"
+ "node": ">=20.0.0"
}
},
"node_modules/jsdom": {
- "version": "27.0.1",
- "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-27.0.1.tgz",
- "integrity": "sha512-SNSQteBL1IlV2zqhwwolaG9CwhIhTvVHWg3kTss/cLE7H/X4644mtPQqYvCfsSrGQWt9hSZcgOXX8bOZaMN+kA==",
+ "version": "27.2.0",
+ "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-27.2.0.tgz",
+ "integrity": "sha512-454TI39PeRDW1LgpyLPyURtB4Zx1tklSr6+OFOipsxGUH1WMTvk6C65JQdrj455+DP2uJ1+veBEHTGFKWVLFoA==",
"license": "MIT",
"dependencies": {
- "@asamuzakjp/dom-selector": "^6.7.2",
- "cssstyle": "^5.3.1",
+ "@acemir/cssom": "^0.9.23",
+ "@asamuzakjp/dom-selector": "^6.7.4",
+ "cssstyle": "^5.3.3",
"data-urls": "^6.0.0",
"decimal.js": "^10.6.0",
"html-encoding-sniffer": "^4.0.0",
@@ -11498,7 +11410,6 @@
"https-proxy-agent": "^7.0.6",
"is-potential-custom-element-name": "^1.0.1",
"parse5": "^8.0.0",
- "rrweb-cssom": "^0.8.0",
"saxes": "^6.0.0",
"symbol-tree": "^3.2.4",
"tough-cookie": "^6.0.0",
@@ -11511,7 +11422,7 @@
"xml-name-validator": "^5.0.0"
},
"engines": {
- "node": ">=20"
+ "node": "^20.19.0 || ^22.12.0 || >=24.0.0"
},
"peerDependencies": {
"canvas": "^3.0.0"
@@ -11643,6 +11554,7 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz",
"integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==",
+ "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -11879,9 +11791,9 @@
}
},
"node_modules/launch-editor": {
- "version": "2.11.1",
- "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.11.1.tgz",
- "integrity": "sha512-SEET7oNfgSaB6Ym0jufAdCeo3meJVeCaaDyzRygy0xsp2BFKCprcfHljTq4QkzTLUxEKkFK6OK4811YM2oSrRg==",
+ "version": "2.12.0",
+ "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.12.0.tgz",
+ "integrity": "sha512-giOHXoOtifjdHqUamwKq6c49GzBdLjvxrd2D+Q4V6uOHopJv7p9VJxikDsQ/CBXZbEITgUqSVHXLTG3VhPP1Dg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -11995,27 +11907,9 @@
"untun": "^0.1.3",
"uqr": "^0.1.2"
},
- "bin": {
- "listen": "bin/listhen.mjs",
- "listhen": "bin/listhen.mjs"
- }
- },
- "node_modules/listhen/node_modules/clipboardy": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-4.0.0.tgz",
- "integrity": "sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "execa": "^8.0.1",
- "is-wsl": "^3.1.0",
- "is64bit": "^2.0.0"
- },
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "bin": {
+ "listen": "bin/listhen.mjs",
+ "listhen": "bin/listhen.mjs"
}
},
"node_modules/listhen/node_modules/pathe": {
@@ -12054,16 +11948,16 @@
}
},
"node_modules/locate-path": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-7.2.0.tgz",
- "integrity": "sha512-gvVijfZvn7R+2qyPX8mAuKcFGDf6Nc61GdvGafQsHL0sBIxfKzA+usWn4GFC/bk+QdwPUD4kWFJLhElipq+0VA==",
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-8.0.0.tgz",
+ "integrity": "sha512-XT9ewWAC43tiAV7xDAPflMkG0qOPn2QjHqlgX8FOqmWa/rxnyYDulF9T0F7tRy1u+TVTmK/M//6VIOye+2zDXg==",
"dev": true,
"license": "MIT",
"dependencies": {
"p-locate": "^6.0.0"
},
"engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ "node": ">=20"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
@@ -12167,9 +12061,9 @@
}
},
"node_modules/magic-string": {
- "version": "0.30.19",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.19.tgz",
- "integrity": "sha512-2N21sPY9Ws53PZvsEpVtNuSW+ScYbQdp4b9qUaL+9QkHUrGFKo56Lg9Emg5s9V/qrtNBmiR01sYhUOwu3H+VOw==",
+ "version": "0.30.21",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz",
+ "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==",
"license": "MIT",
"dependencies": {
"@jridgewell/sourcemap-codec": "^1.5.5"
@@ -12541,15 +12435,15 @@
}
},
"node_modules/nitropack": {
- "version": "2.12.8",
- "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.12.8.tgz",
- "integrity": "sha512-k4KT/6CMiX+aAI2LWEdVhvI4PPPWt6NTz70TcxrGUgvMpt8Pv4/iG0KTwBJ58KdwFp59p3Mlp8QyGVmIVP6GvQ==",
+ "version": "2.12.9",
+ "resolved": "https://registry.npmjs.org/nitropack/-/nitropack-2.12.9.tgz",
+ "integrity": "sha512-t6qqNBn2UDGMWogQuORjbL2UPevB8PvIPsPHmqvWpeGOlPr4P8Oc5oA8t3wFwGmaolM2M/s2SwT23nx9yARmOg==",
"dev": true,
"license": "MIT",
"dependencies": {
"@cloudflare/kv-asset-handler": "^0.4.0",
"@rollup/plugin-alias": "^5.1.1",
- "@rollup/plugin-commonjs": "^28.0.8",
+ "@rollup/plugin-commonjs": "^28.0.9",
"@rollup/plugin-inject": "^5.0.5",
"@rollup/plugin-json": "^6.1.0",
"@rollup/plugin-node-resolve": "^16.0.3",
@@ -12584,13 +12478,13 @@
"klona": "^2.0.6",
"knitwork": "^1.2.0",
"listhen": "^1.9.0",
- "magic-string": "^0.30.19",
- "magicast": "^0.3.5",
+ "magic-string": "^0.30.21",
+ "magicast": "^0.5.0",
"mime": "^4.1.0",
"mlly": "^1.8.0",
"node-fetch-native": "^1.6.7",
"node-mock-http": "^1.0.3",
- "ofetch": "^1.4.1",
+ "ofetch": "^1.5.0",
"ohash": "^2.0.11",
"pathe": "^2.0.3",
"perfect-debounce": "^2.0.0",
@@ -12609,13 +12503,13 @@
"ultrahtml": "^1.6.0",
"uncrypto": "^0.1.3",
"unctx": "^2.4.1",
- "unenv": "2.0.0-rc.21",
+ "unenv": "^2.0.0-rc.23",
"unimport": "^5.5.0",
"unplugin-utils": "^0.3.1",
"unstorage": "^1.17.1",
"untyped": "^2.0.0",
"unwasm": "^0.3.11",
- "youch": "4.1.0-beta.11",
+ "youch": "^4.1.0-beta.11",
"youch-core": "^0.3.3"
},
"bin": {
@@ -12634,6 +12528,13 @@
}
}
},
+ "node_modules/nitropack/node_modules/cookie-es": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-2.0.0.tgz",
+ "integrity": "sha512-RAj4E421UYRgqokKUmotqAwuplYw15qtdXfY+hGzgCJ/MBjCVZcSoHK/kH9kocfjRjcDME7IiDWR/1WX1TM2Pg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/nitropack/node_modules/escape-string-regexp": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
@@ -12647,6 +12548,18 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/nitropack/node_modules/magicast": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.5.1.tgz",
+ "integrity": "sha512-xrHS24IxaLrvuo613F719wvOIv9xPHFWQHuvGUBmPnCA/3MQxKI3b+r7n1jAoDHmsbC5bRhTZYR77invLAxVnw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@babel/parser": "^7.28.5",
+ "@babel/types": "^7.28.5",
+ "source-map-js": "^1.2.1"
+ }
+ },
"node_modules/nitropack/node_modules/source-map": {
"version": "0.7.6",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz",
@@ -12764,9 +12677,9 @@
"license": "MIT"
},
"node_modules/node-releases": {
- "version": "2.0.26",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.26.tgz",
- "integrity": "sha512-S2M9YimhSjBSvYnlr5/+umAnPHE++ODwt5e2Ij6FoX45HA/s4vHdkDx1eax2pAPeAOqu4s9b7ppahsyEFdVqQA==",
+ "version": "2.0.27",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz",
+ "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==",
"dev": true,
"license": "MIT"
},
@@ -12849,33 +12762,33 @@
}
},
"node_modules/nuxt": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/nuxt/-/nuxt-4.1.3.tgz",
- "integrity": "sha512-FPl+4HNIOTRYWQXtsZe5KJAr/eddFesuXABvcSTnFLYckIfnxcistwmbtPlkJhkW6vr/Jdhef5QqqYYkBsowGg==",
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/nuxt/-/nuxt-4.2.1.tgz",
+ "integrity": "sha512-OE5ONizgwkKhjTGlUYB3ksE+2q2/I30QIYFl3N1yYz1r2rwhunGA3puUvqkzXwgLQ3AdsNcigPDmyQsqjbSdoQ==",
"dev": true,
"license": "MIT",
+ "peer": true,
"dependencies": {
- "@nuxt/cli": "^3.29.0",
- "@nuxt/devalue": "^2.0.2",
- "@nuxt/devtools": "^2.6.5",
- "@nuxt/kit": "4.1.3",
- "@nuxt/schema": "4.1.3",
+ "@dxup/nuxt": "^0.2.1",
+ "@nuxt/cli": "^3.30.0",
+ "@nuxt/devtools": "^3.0.1",
+ "@nuxt/kit": "4.2.1",
+ "@nuxt/nitro-server": "4.2.1",
+ "@nuxt/schema": "4.2.1",
"@nuxt/telemetry": "^2.6.6",
- "@nuxt/vite-builder": "4.1.3",
- "@unhead/vue": "^2.0.14",
- "@vue/shared": "^3.5.22",
- "c12": "^3.3.0",
+ "@nuxt/vite-builder": "4.2.1",
+ "@unhead/vue": "^2.0.19",
+ "@vue/shared": "^3.5.23",
+ "c12": "^3.3.1",
"chokidar": "^4.0.3",
"compatx": "^0.2.0",
"consola": "^3.4.2",
"cookie-es": "^2.0.0",
"defu": "^6.1.4",
"destr": "^2.0.5",
- "devalue": "^5.3.2",
+ "devalue": "^5.4.2",
"errx": "^0.1.0",
- "esbuild": "^0.25.10",
"escape-string-regexp": "^5.0.0",
- "estree-walker": "^3.0.3",
"exsolve": "^1.0.7",
"h3": "^1.15.4",
"hookable": "^5.5.3",
@@ -12884,40 +12797,35 @@
"jiti": "^2.6.1",
"klona": "^2.0.6",
"knitwork": "^1.2.0",
- "magic-string": "^0.30.19",
+ "magic-string": "^0.30.21",
"mlly": "^1.8.0",
- "mocked-exports": "^0.1.1",
"nanotar": "^0.2.0",
- "nitropack": "^2.12.6",
"nypm": "^0.6.2",
- "ofetch": "^1.4.1",
+ "ofetch": "^1.5.1",
"ohash": "^2.0.11",
- "on-change": "^6.0.0",
- "oxc-minify": "^0.94.0",
- "oxc-parser": "^0.94.0",
- "oxc-transform": "^0.94.0",
+ "on-change": "^6.0.1",
+ "oxc-minify": "^0.96.0",
+ "oxc-parser": "^0.96.0",
+ "oxc-transform": "^0.96.0",
"oxc-walker": "^0.5.2",
"pathe": "^2.0.3",
"perfect-debounce": "^2.0.0",
"pkg-types": "^2.3.0",
"radix3": "^1.1.2",
"scule": "^1.3.0",
- "semver": "^7.7.2",
- "std-env": "^3.9.0",
+ "semver": "^7.7.3",
+ "std-env": "^3.10.0",
"tinyglobby": "^0.2.15",
"ufo": "^1.6.1",
"ultrahtml": "^1.6.0",
"uncrypto": "^0.1.3",
"unctx": "^2.4.1",
- "unimport": "^5.4.1",
+ "unimport": "^5.5.0",
"unplugin": "^2.3.10",
- "unplugin-vue-router": "^0.15.0",
- "unstorage": "^1.17.1",
+ "unplugin-vue-router": "^0.16.1",
"untyped": "^2.0.0",
- "vue": "^3.5.22",
- "vue-bundle-renderer": "^2.2.0",
- "vue-devtools-stub": "^0.1.0",
- "vue-router": "^4.5.1"
+ "vue": "^3.5.23",
+ "vue-router": "^4.6.3"
},
"bin": {
"nuxi": "bin/nuxt.mjs",
@@ -12950,9 +12858,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-android-arm64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.94.0.tgz",
- "integrity": "sha512-Ficqj6MggRGFkemU4pVFTyth3jWVL/zpIWjGMTXaPU81l46ZDcYVFWp9ia6nfE5mm8UdVSI2trvmK+BpNUim7g==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-android-arm64/-/binding-android-arm64-0.96.0.tgz",
+ "integrity": "sha512-CofbPOiW1PG+hi8bgElJPK0ioHfw8nt4Vw9d+Q9JuMhygS6LbQyu1W6tIFZ1OPFofeFRdWus3vD29FBx+tvFOA==",
"cpu": [
"arm64"
],
@@ -12967,9 +12875,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-darwin-arm64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.94.0.tgz",
- "integrity": "sha512-uYyeMH9vMfb0JAdm6ZwHTgcTv53030elQKMnUbux9K5rxOCWbHUyeVACEv86V+E/Ft6RtkvWDIqUY4sYZRmcuQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-arm64/-/binding-darwin-arm64-0.96.0.tgz",
+ "integrity": "sha512-+HZ2L1a/1BsUXYik8XqQwT2Tl5Z3jRQ/RRQiPV9UsB2skKyd91NLDlQlMpdhjLGs9Qe7Y42unFjRg2iHjIiwnw==",
"cpu": [
"arm64"
],
@@ -12984,9 +12892,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-darwin-x64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.94.0.tgz",
- "integrity": "sha512-Ek1fh8dw6b+/hzLo5jjPuxkshRxekjtTfhfWZ4RehMYiApT8Rj4k+7kcQ+zV1ZaF+1+yLgNqNja2RMRqx3MHzQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-darwin-x64/-/binding-darwin-x64-0.96.0.tgz",
+ "integrity": "sha512-GC8wH1W0XaCLyTeGsmyaMdnItiYQkqfTcn9Ygc55AWI+m11lCjQeoKDIsDCm/QwrKLCN07u3WWWsuPs5ubfXpA==",
"cpu": [
"x64"
],
@@ -13001,9 +12909,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-freebsd-x64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.94.0.tgz",
- "integrity": "sha512-81bE/8F252Ew179uVo9FU67dmRc+n8QSMhj6mmMxisdI3ao5MjCI5jDL19mH3UeQ9uRUBSPFILmHBDQYNZ9oKw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-freebsd-x64/-/binding-freebsd-x64-0.96.0.tgz",
+ "integrity": "sha512-8SeXi2FmlN15uPY5oM03cua5RXBDYmY34Uewongv6RUiAaU/kWxLvzuijpyNC+yQ1r4fC2LbWJhAsKpX5qkA6g==",
"cpu": [
"x64"
],
@@ -13018,9 +12926,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-arm-gnueabihf": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.94.0.tgz",
- "integrity": "sha512-aGOU8IYXVYGN2aRrvcU5+UdM7BzIVlm4m0REQzjpblQKRdZfWFtDBRJez+fK/F10g0H1AU5DQVgbW5aeko49Jw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.96.0.tgz",
+ "integrity": "sha512-UEs+Zf6T2/FwQlLgv7gfZsKmY19sl3hK57r2BQVc2eCmCmF/deeqDcWyFjzkNLgdDDucY60PoNhNGClDm605uQ==",
"cpu": [
"arm"
],
@@ -13035,9 +12943,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-arm-musleabihf": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.94.0.tgz",
- "integrity": "sha512-69/ZuYSZ4dd7UWoEOyf+pXYPtvUZguDQqjhxMx8fI0J30sEEqs1d/DBLLnog/afHmaapPEIEr6rp9jF6bYcgNw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.96.0.tgz",
+ "integrity": "sha512-1kuWvjR2+ORJMoyxt9LSbLcDhXZnL25XOuv9VmH6NmSPvLgewzuubSlm++W03x+U7SzWFilBsdwIHtD/0mjERw==",
"cpu": [
"arm"
],
@@ -13052,9 +12960,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-arm64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.94.0.tgz",
- "integrity": "sha512-u55PGVVfZF/frpEcv/vowfuqsCd5VKz3wta8KZ3MBxboat7XxgRIMS8VQEBiJ3aYE80taACu5EfPN1y9DhiU0Q==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.96.0.tgz",
+ "integrity": "sha512-PHH4ETR1t0fymxuhpQNj3Z9t/78/zZa2Lj3Z3I0ZOd+/Ex+gtdhGoB5xYyy7lcYGAPMfZ+Gmr+dTCr1GYNZ3BA==",
"cpu": [
"arm64"
],
@@ -13069,9 +12977,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-arm64-musl": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.94.0.tgz",
- "integrity": "sha512-Qm2SEU7/f2b2Rg76Pj49BdMFF7Vv7+2qLPxaae4aH1515kzVv6nZW0bqCo4fPDDyiE4bryF7Jr+WKhllBxvXPw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.96.0.tgz",
+ "integrity": "sha512-fjDPbZjkqaDSTBe0FM8nZ9zBw4B/NF/I0gH7CfvNDwIj9smISaNFypYeomkvubORpnbX9ORhvhYwg3TxQ60OGA==",
"cpu": [
"arm64"
],
@@ -13086,9 +12994,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-riscv64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.94.0.tgz",
- "integrity": "sha512-bZO3QAt0lsZjk351mVM85obMivbXG+tDiah5XmmOaGO8k4vEYmoiKr2YHJoA2eNpKhPJF8dNyIS7U+XAvirr9g==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.96.0.tgz",
+ "integrity": "sha512-59KAHd/6/LmjkdSAuJn0piKmwSavMasWNUKuYLX/UnqI5KkGIp14+LBwwaBG6KzOtIq1NrRCnmlL4XSEaNkzTg==",
"cpu": [
"riscv64"
],
@@ -13103,9 +13011,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-s390x-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.94.0.tgz",
- "integrity": "sha512-IdbJ/rwsaEPQx11mQwGoClqhAmVaAF9+3VmDRYVmfsYsrhX1Ue1HvBdVHDvtHzJDuumC/X/codkVId9Ss+7fVg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.96.0.tgz",
+ "integrity": "sha512-VtupojtgahY8XmLwpVpM3C1WQEgMD1JxpB8lzUtdSLwosWaaz1EAl+VXWNuxTTZusNuLBtmR+F0qql22ISi/9g==",
"cpu": [
"s390x"
],
@@ -13120,9 +13028,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-x64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.94.0.tgz",
- "integrity": "sha512-TbtpRdViF3aPCQBKuEo+TcucwW3KFa6bMHVakgaJu12RZrFpO4h1IWppBbuuBQ9X7SfvpgC1YgCDGve9q6fpEA==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.96.0.tgz",
+ "integrity": "sha512-8XSY9aUYY+5I4I1mhSEWmYqdUrJi3J5cCAInvEVHyTnDAPkhb+tnLGVZD696TpW+lFOLrTFF2V5GMWJVafqIUA==",
"cpu": [
"x64"
],
@@ -13137,9 +13045,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-linux-x64-musl": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.94.0.tgz",
- "integrity": "sha512-hlfoDmWvgSbexoJ9u3KwAJwpeu91FfJR6++fQjeYXD2InK4gZow9o3DRoTpN/kslZwzUNpiRURqxey/RvWh8JQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-linux-x64-musl/-/binding-linux-x64-musl-0.96.0.tgz",
+ "integrity": "sha512-IIVNtqhA0uxKkD8Y6aZinKO/sOD5O62VlduE54FnUU2rzZEszrZQLL8nMGVZhTdPaKW5M1aeLmjcdnOs6er1Jg==",
"cpu": [
"x64"
],
@@ -13154,9 +13062,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-wasm32-wasi": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.94.0.tgz",
- "integrity": "sha512-VoCtQZIsRZN8mszbdizh+5MwzbgbMxsPgT2hOzzILQLNY2o2OXG3xSiFNFakVhbWc9qSTaZ/MRDsqR+IM3fLFw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-wasm32-wasi/-/binding-wasm32-wasi-0.96.0.tgz",
+ "integrity": "sha512-TJ/sNPbVD4u6kUwm7sDKa5iRDEB8vd7ZIMjYqFrrAo9US1RGYOSvt6Ie9sDRekUL9fZhNsykvSrpmIj6dg/C2w==",
"cpu": [
"wasm32"
],
@@ -13164,16 +13072,16 @@
"license": "MIT",
"optional": true,
"dependencies": {
- "@napi-rs/wasm-runtime": "^1.0.6"
+ "@napi-rs/wasm-runtime": "^1.0.7"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-win32-arm64-msvc": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.94.0.tgz",
- "integrity": "sha512-3wsbMqV8V7WaLdiQ2oawdgKkCgMHXJ7VDuo6uIcXauU3wK6CG0QyDXRV9bPWzorGLRBUHndu/2VB1+9dgT9fvg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.96.0.tgz",
+ "integrity": "sha512-zCOhRB7MYVIHLj+2QYoTuLyaipiD8JG/ggUjfsMUaupRPpvwQNhsxINLIcTcb0AS+OsT7/OREhydjO74STqQzQ==",
"cpu": [
"arm64"
],
@@ -13188,9 +13096,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-parser/binding-win32-x64-msvc": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.94.0.tgz",
- "integrity": "sha512-UTQQ1576Nzhh4jr/YmvzqnuwTPOauB/TPzsnWzT+w8InHxL5JA1fmy01wB1F2BWT9AD6YV4BTB1ozRICYdAgjw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-parser/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.96.0.tgz",
+ "integrity": "sha512-J6zfx9TE0oS+TrqBUjMVMOi/d/j3HMj69Pip263pETOEPm788N0HXKPsc2X2jUfSTHzD9vmdjq0QFymbf2LhWg==",
"cpu": [
"x64"
],
@@ -13205,9 +13113,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-project/types": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.94.0.tgz",
- "integrity": "sha512-+UgQT/4o59cZfH6Cp7G0hwmqEQ0wE+AdIwhikdwnhWI9Dp8CgSY081+Q3O67/wq3VJu8mgUEB93J9EHHn70fOw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.96.0.tgz",
+ "integrity": "sha512-r/xkmoXA0xEpU6UGtn18CNVjXH6erU3KCpCDbpLmbVxBFor1U9MqN5Z2uMmCHJuXjJzlnDR+hWY+yPoLo8oHDw==",
"dev": true,
"license": "MIT",
"funding": {
@@ -13215,9 +13123,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-android-arm64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-android-arm64/-/binding-android-arm64-0.94.0.tgz",
- "integrity": "sha512-abxgEoomc5HNbDQaGhBWguR+W4cdrcEIwV8xIQ2qpUuhEUoHy6nQLfN/gREAZMdkyIaKwk12FckB9aNxVTte2w==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-android-arm64/-/binding-android-arm64-0.96.0.tgz",
+ "integrity": "sha512-wOm+ZsqFvyZ7B9RefUMsj0zcXw77Z2pXA51nbSQyPXqr+g0/pDGxriZWP8Sdpz/e4AEaKPA9DvrwyOZxu7GRDQ==",
"cpu": [
"arm64"
],
@@ -13232,9 +13140,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-darwin-arm64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-arm64/-/binding-darwin-arm64-0.94.0.tgz",
- "integrity": "sha512-HbnmwC1pZ9M/nXqA36TpwF7vcXk+PgLMxDvvza5C9CCivfi3MUfqCvFMvRI0snlVm2PK2GAwWJjBtng1fR8LJw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-arm64/-/binding-darwin-arm64-0.96.0.tgz",
+ "integrity": "sha512-td1sbcvzsyuoNRiNdIRodPXRtFFwxzPpC/6/yIUtRRhKn30XQcizxupIvQQVpJWWchxkphbBDh6UN+u+2CJ8Zw==",
"cpu": [
"arm64"
],
@@ -13249,9 +13157,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-darwin-x64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-x64/-/binding-darwin-x64-0.94.0.tgz",
- "integrity": "sha512-GADv5xcClQpYj5d6GLdPF6Qz/3OSn0d/LKhDklpW/5S42RQsGxI+83iXF1e61KITd4yp4VAvjEiuDM52zb4xYQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-darwin-x64/-/binding-darwin-x64-0.96.0.tgz",
+ "integrity": "sha512-xgqxnqhPYH2NYkgbqtnCJfhbXvxIf/pnhF/ig5UBK8PYpCEWIP/cfLpQRQ9DcQnRfuxi7RMIF6LdmB1AiS6Fkg==",
"cpu": [
"x64"
],
@@ -13266,9 +13174,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-freebsd-x64": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-freebsd-x64/-/binding-freebsd-x64-0.94.0.tgz",
- "integrity": "sha512-5H5V+H1CZoRQwbgAt/wLrN8oZwuYGP6xdXTuGUW2C2ON1DynMyxC4Padf8vjPcKbQph5GnLAuoaTafxokE2Z/Q==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-freebsd-x64/-/binding-freebsd-x64-0.96.0.tgz",
+ "integrity": "sha512-1i67OXdl/rvSkcTXqDlh6qGRXYseEmf0rl/R+/i88scZ/o3A+FzlX56sThuaPzSSv9eVgesnoYUjIBJELFc1oA==",
"cpu": [
"x64"
],
@@ -13283,9 +13191,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-arm-gnueabihf": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.94.0.tgz",
- "integrity": "sha512-BoWVkKUqgmUs4hDvGPgCSUkIeEMBVvHU/mO348Dhp7XT9ijdnSBmRzY6hFaqRSq768Hn6KblM0NM1QV7jEvKOw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-0.96.0.tgz",
+ "integrity": "sha512-9MJBs0SWODsqyzO3eAnacXgJ/sZu1xqinjEwBzkcZ3tQI8nKhMADOzu2NzbVWDWujeoC8DESXaO08tujvUru+Q==",
"cpu": [
"arm"
],
@@ -13300,9 +13208,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-arm-musleabihf": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.94.0.tgz",
- "integrity": "sha512-XUAyt2EtSDycljMKfgDVg/T5C3aF5dR1mfMJAZUCPQkfJjXZwA/C0DTTC/xPlPm68WA4uRtVNLqExTHJ3JOPwg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm-musleabihf/-/binding-linux-arm-musleabihf-0.96.0.tgz",
+ "integrity": "sha512-BQom57I2ScccixljNYh2Wy+5oVZtF1LXiiUPxSLtDHbsanpEvV/+kzCagQpTjk1BVzSQzOxfEUWjvL7mY53pRQ==",
"cpu": [
"arm"
],
@@ -13317,9 +13225,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-arm64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.94.0.tgz",
- "integrity": "sha512-5Y7FI2FgawingojBEo3df4sI/Sq73UhVZy3DlT9o94Pgu8o+ujlKPD20kFmOJ1jQNEJ4ScKr5vh6pemHSZjUgA==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-0.96.0.tgz",
+ "integrity": "sha512-kaqvUzNu8LL4aBSXqcqGVLFG13GmJEplRI2+yqzkgAItxoP/LfFMdEIErlTWLGyBwd0OLiNMHrOvkcCQRWadVg==",
"cpu": [
"arm64"
],
@@ -13334,9 +13242,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-arm64-musl": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.94.0.tgz",
- "integrity": "sha512-QiyHubpKo7upYPfwB+8bjaTczd60PJdL2zJrMKgL+CDlmP6HZlnWXZkeVTA3S6QXnbulRlrtERmqS2DePszG0g==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-arm64-musl/-/binding-linux-arm64-musl-0.96.0.tgz",
+ "integrity": "sha512-EiG/L3wEkPgTm4p906ufptyblBgtiQWTubGg/JEw82f8uLRroayr5zhbUqx40EgH037a3SfJthIyLZi7XPRFJw==",
"cpu": [
"arm64"
],
@@ -13351,9 +13259,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-riscv64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.94.0.tgz",
- "integrity": "sha512-vh3PZGmoUCbfkqVGuB7fweuqthYxzAAGqhiAJAn8x4V+R86W5esCtxbm+PTyVawBT/eoq1cU8HhNVqE0rQlChg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-riscv64-gnu/-/binding-linux-riscv64-gnu-0.96.0.tgz",
+ "integrity": "sha512-r01CY6OxKGtVeYnvH4mGmtkQMlLkXdPWWNXwo5o7fE2s/fgZPMpqh8bAuXEhuMXipZRJrjxTk1+ZQ4KCHpMn3Q==",
"cpu": [
"riscv64"
],
@@ -13368,9 +13276,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-s390x-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.94.0.tgz",
- "integrity": "sha512-DT3m7cF612RdHBmYK3Ave6OVT1iSvlbKo8T+81n6ZcFXO+L8vDJHzwMwMOXfeOLQ15zr0WmSHqBOZ14tHKNidw==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-0.96.0.tgz",
+ "integrity": "sha512-4djg2vYLGbVeS8YiA2K4RPPpZE4fxTGCX5g/bOMbCYyirDbmBAIop4eOAj8vOA9i1CcWbDtmp+PVJ1dSw7f3IQ==",
"cpu": [
"s390x"
],
@@ -13385,9 +13293,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-x64-gnu": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.94.0.tgz",
- "integrity": "sha512-kK5dt8wfxUD3MGXnLHWxv57oYinIwoRFcjw2oJD5DCoGTeXCmrFk4D0eGPAlZKOm7uvWMs9yNI8rg1KY5nEs1w==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-gnu/-/binding-linux-x64-gnu-0.96.0.tgz",
+ "integrity": "sha512-f6pcWVz57Y8jXa2OS7cz3aRNuks34Q3j61+3nQ4xTE8H1KbalcEvHNmM92OEddaJ8QLs9YcE0kUC6eDTbY34+A==",
"cpu": [
"x64"
],
@@ -13402,9 +13310,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-linux-x64-musl": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-musl/-/binding-linux-x64-musl-0.94.0.tgz",
- "integrity": "sha512-+zfNBO2qEPcSPTHVUxsiG3Hm0vxWzuL+DZX0wbbtjKwwhH2Jr1Eo26R+Dwc1SfbvoWen36NitKkd2arkpMW8KQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-linux-x64-musl/-/binding-linux-x64-musl-0.96.0.tgz",
+ "integrity": "sha512-NSiRtFvR7Pbhv3mWyPMkTK38czIjcnK0+K5STo3CuzZRVbX1TM17zGdHzKBUHZu7v6IQ6/XsQ3ELa1BlEHPGWQ==",
"cpu": [
"x64"
],
@@ -13419,9 +13327,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-wasm32-wasi": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-wasm32-wasi/-/binding-wasm32-wasi-0.94.0.tgz",
- "integrity": "sha512-rn3c2wGT3ha6j0VLykYOkXU5YyQYIeGXRsDPP7xyiZHVTVssoM0X1BuheFlgxmC1POXMT+dAAcVOFG5MdW1bnQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-wasm32-wasi/-/binding-wasm32-wasi-0.96.0.tgz",
+ "integrity": "sha512-A91ARLiuZHGN4hBds9s7bW3czUuLuHLsV+cz44iF9j8e1zX9m2hNGXf/acQRbg/zcFUXmjz5nmk8EkZyob876w==",
"cpu": [
"wasm32"
],
@@ -13429,16 +13337,16 @@
"license": "MIT",
"optional": true,
"dependencies": {
- "@napi-rs/wasm-runtime": "^1.0.6"
+ "@napi-rs/wasm-runtime": "^1.0.7"
},
"engines": {
"node": ">=14.0.0"
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-win32-arm64-msvc": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.94.0.tgz",
- "integrity": "sha512-An/Dd+I8dH0b+VLEdfTrZP53S4Fha3w/aD71d1uZB14aU02hBt3ZwU8IE3RGZIJPxub9OZmCmJN66uTqkT6oXg==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-0.96.0.tgz",
+ "integrity": "sha512-IedJf40djKgDObomhYjdRAlmSYUEdfqX3A3M9KfUltl9AghTBBLkTzUMA7O09oo71vYf5TEhbFM7+Vn5vqw7AQ==",
"cpu": [
"arm64"
],
@@ -13453,9 +13361,9 @@
}
},
"node_modules/nuxt/node_modules/@oxc-transform/binding-win32-x64-msvc": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.94.0.tgz",
- "integrity": "sha512-HEE/8x6H67jPlkCDDB3xl74eR86zY6nLAql6onmidF5JPNXt9v2XGB6xEwr4brUIaMLPkl90plbdCy9jWhEjdQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/@oxc-transform/binding-win32-x64-msvc/-/binding-win32-x64-msvc-0.96.0.tgz",
+ "integrity": "sha512-0fI0P0W7bSO/GCP/N5dkmtB9vBqCA4ggo1WmXTnxNJVmFFOtcA1vYm1I9jl8fxo+sucW2WnlpnI4fjKdo3JKxA==",
"cpu": [
"x64"
],
@@ -13469,6 +13377,13 @@
"node": "^20.19.0 || >=22.12.0"
}
},
+ "node_modules/nuxt/node_modules/cookie-es": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-2.0.0.tgz",
+ "integrity": "sha512-RAj4E421UYRgqokKUmotqAwuplYw15qtdXfY+hGzgCJ/MBjCVZcSoHK/kH9kocfjRjcDME7IiDWR/1WX1TM2Pg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/nuxt/node_modules/escape-string-regexp": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
@@ -13482,24 +13397,14 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/nuxt/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": {
- "@types/estree": "^1.0.0"
- }
- },
"node_modules/nuxt/node_modules/oxc-parser": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.94.0.tgz",
- "integrity": "sha512-refms9HQoAlTYIazONYkuX5A3rFGPddbD6Otyc+A0/pj1WTttR8TsZRlMzQxCfhexxfrbinqd7ebkEoYNuCmLQ==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.96.0.tgz",
+ "integrity": "sha512-ucs6niJ5mZlYP3oTl4AK2eD2m7WLoSaljswnSFVYWrXzme5PtM97S7Ve1Tjx+/TKjanmEZuSt1f1qYi6SZvntw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@oxc-project/types": "^0.94.0"
+ "@oxc-project/types": "^0.96.0"
},
"engines": {
"node": "^20.19.0 || >=22.12.0"
@@ -13508,27 +13413,27 @@
"url": "https://github.com/sponsors/Boshen"
},
"optionalDependencies": {
- "@oxc-parser/binding-android-arm64": "0.94.0",
- "@oxc-parser/binding-darwin-arm64": "0.94.0",
- "@oxc-parser/binding-darwin-x64": "0.94.0",
- "@oxc-parser/binding-freebsd-x64": "0.94.0",
- "@oxc-parser/binding-linux-arm-gnueabihf": "0.94.0",
- "@oxc-parser/binding-linux-arm-musleabihf": "0.94.0",
- "@oxc-parser/binding-linux-arm64-gnu": "0.94.0",
- "@oxc-parser/binding-linux-arm64-musl": "0.94.0",
- "@oxc-parser/binding-linux-riscv64-gnu": "0.94.0",
- "@oxc-parser/binding-linux-s390x-gnu": "0.94.0",
- "@oxc-parser/binding-linux-x64-gnu": "0.94.0",
- "@oxc-parser/binding-linux-x64-musl": "0.94.0",
- "@oxc-parser/binding-wasm32-wasi": "0.94.0",
- "@oxc-parser/binding-win32-arm64-msvc": "0.94.0",
- "@oxc-parser/binding-win32-x64-msvc": "0.94.0"
+ "@oxc-parser/binding-android-arm64": "0.96.0",
+ "@oxc-parser/binding-darwin-arm64": "0.96.0",
+ "@oxc-parser/binding-darwin-x64": "0.96.0",
+ "@oxc-parser/binding-freebsd-x64": "0.96.0",
+ "@oxc-parser/binding-linux-arm-gnueabihf": "0.96.0",
+ "@oxc-parser/binding-linux-arm-musleabihf": "0.96.0",
+ "@oxc-parser/binding-linux-arm64-gnu": "0.96.0",
+ "@oxc-parser/binding-linux-arm64-musl": "0.96.0",
+ "@oxc-parser/binding-linux-riscv64-gnu": "0.96.0",
+ "@oxc-parser/binding-linux-s390x-gnu": "0.96.0",
+ "@oxc-parser/binding-linux-x64-gnu": "0.96.0",
+ "@oxc-parser/binding-linux-x64-musl": "0.96.0",
+ "@oxc-parser/binding-wasm32-wasi": "0.96.0",
+ "@oxc-parser/binding-win32-arm64-msvc": "0.96.0",
+ "@oxc-parser/binding-win32-x64-msvc": "0.96.0"
}
},
"node_modules/nuxt/node_modules/oxc-transform": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/oxc-transform/-/oxc-transform-0.94.0.tgz",
- "integrity": "sha512-nHFFyPVWNNe7WLsAiQ6iwfsuTW/1esT+BJg+9rlvcSa0mfcZTpNo3TlBfj9IerLdDmYHJnSYsx8jjFZhoGfZ1w==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/oxc-transform/-/oxc-transform-0.96.0.tgz",
+ "integrity": "sha512-dQPNIF+gHpSkmC0+Vg9IktNyhcn28Y8R3eTLyzn52UNymkasLicl3sFAtz7oEVuFmCpgGjaUTKkwk+jW2cHpDQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -13538,21 +13443,21 @@
"url": "https://github.com/sponsors/Boshen"
},
"optionalDependencies": {
- "@oxc-transform/binding-android-arm64": "0.94.0",
- "@oxc-transform/binding-darwin-arm64": "0.94.0",
- "@oxc-transform/binding-darwin-x64": "0.94.0",
- "@oxc-transform/binding-freebsd-x64": "0.94.0",
- "@oxc-transform/binding-linux-arm-gnueabihf": "0.94.0",
- "@oxc-transform/binding-linux-arm-musleabihf": "0.94.0",
- "@oxc-transform/binding-linux-arm64-gnu": "0.94.0",
- "@oxc-transform/binding-linux-arm64-musl": "0.94.0",
- "@oxc-transform/binding-linux-riscv64-gnu": "0.94.0",
- "@oxc-transform/binding-linux-s390x-gnu": "0.94.0",
- "@oxc-transform/binding-linux-x64-gnu": "0.94.0",
- "@oxc-transform/binding-linux-x64-musl": "0.94.0",
- "@oxc-transform/binding-wasm32-wasi": "0.94.0",
- "@oxc-transform/binding-win32-arm64-msvc": "0.94.0",
- "@oxc-transform/binding-win32-x64-msvc": "0.94.0"
+ "@oxc-transform/binding-android-arm64": "0.96.0",
+ "@oxc-transform/binding-darwin-arm64": "0.96.0",
+ "@oxc-transform/binding-darwin-x64": "0.96.0",
+ "@oxc-transform/binding-freebsd-x64": "0.96.0",
+ "@oxc-transform/binding-linux-arm-gnueabihf": "0.96.0",
+ "@oxc-transform/binding-linux-arm-musleabihf": "0.96.0",
+ "@oxc-transform/binding-linux-arm64-gnu": "0.96.0",
+ "@oxc-transform/binding-linux-arm64-musl": "0.96.0",
+ "@oxc-transform/binding-linux-riscv64-gnu": "0.96.0",
+ "@oxc-transform/binding-linux-s390x-gnu": "0.96.0",
+ "@oxc-transform/binding-linux-x64-gnu": "0.96.0",
+ "@oxc-transform/binding-linux-x64-musl": "0.96.0",
+ "@oxc-transform/binding-wasm32-wasi": "0.96.0",
+ "@oxc-transform/binding-win32-arm64-msvc": "0.96.0",
+ "@oxc-transform/binding-win32-x64-msvc": "0.96.0"
}
},
"node_modules/nypm": {
@@ -13585,6 +13490,13 @@
"node": ">=0.10.0"
}
},
+ "node_modules/object-deep-merge": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/object-deep-merge/-/object-deep-merge-2.0.0.tgz",
+ "integrity": "sha512-3DC3UMpeffLTHiuXSy/UG4NOIYTLlY9u3V82+djSCLYClWobZiS4ivYzpIUWrRY/nfsJ8cWsKyG3QfyLePmhvg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/object-hash": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
@@ -13596,15 +13508,15 @@
}
},
"node_modules/ofetch": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.4.1.tgz",
- "integrity": "sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==",
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/ofetch/-/ofetch-1.5.1.tgz",
+ "integrity": "sha512-2W4oUZlVaqAPAil6FUg/difl6YhqhUR7x2eZY4bQCko22UXg3hptq9KLQdqFClV+Wu85UX7hNtdGTngi/1BxcA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "destr": "^2.0.3",
- "node-fetch-native": "^1.6.4",
- "ufo": "^1.5.4"
+ "destr": "^2.0.5",
+ "node-fetch-native": "^1.6.7",
+ "ufo": "^1.6.1"
}
},
"node_modules/ohash": {
@@ -13615,9 +13527,9 @@
"license": "MIT"
},
"node_modules/on-change": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/on-change/-/on-change-6.0.0.tgz",
- "integrity": "sha512-J7kocOS+ZNyjmW6tUUTtA7jLt8GjQlrOdz9z3yLNTvdsswO+b5lYSdMVzDczWnooyFAkkQiKyap5g/Zba+cFRA==",
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/on-change/-/on-change-6.0.1.tgz",
+ "integrity": "sha512-P7o0hkMahOhjb1niG28vLNAXsJrRcfpJvYWcTmPt/Tf4xedcF2PA1E9++N1tufY8/vIsaiJgHhjQp53hJCe+zw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -13710,9 +13622,9 @@
}
},
"node_modules/oxc-minify": {
- "version": "0.94.0",
- "resolved": "https://registry.npmjs.org/oxc-minify/-/oxc-minify-0.94.0.tgz",
- "integrity": "sha512-7+9iyxwpzfjuiEnSqNJYzTsC1Oud742PPkr/4S1bGY930U4tApdLEK8zmgbT57c1/56cfNOndqZaeQZiAfnJ5A==",
+ "version": "0.96.0",
+ "resolved": "https://registry.npmjs.org/oxc-minify/-/oxc-minify-0.96.0.tgz",
+ "integrity": "sha512-dXeeGrfPJJ4rMdw+NrqiCRtbzVX2ogq//R0Xns08zql2HjV3Zi2SBJ65saqfDaJzd2bcHqvGWH+M44EQCHPAcA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -13722,32 +13634,32 @@
"url": "https://github.com/sponsors/Boshen"
},
"optionalDependencies": {
- "@oxc-minify/binding-android-arm64": "0.94.0",
- "@oxc-minify/binding-darwin-arm64": "0.94.0",
- "@oxc-minify/binding-darwin-x64": "0.94.0",
- "@oxc-minify/binding-freebsd-x64": "0.94.0",
- "@oxc-minify/binding-linux-arm-gnueabihf": "0.94.0",
- "@oxc-minify/binding-linux-arm-musleabihf": "0.94.0",
- "@oxc-minify/binding-linux-arm64-gnu": "0.94.0",
- "@oxc-minify/binding-linux-arm64-musl": "0.94.0",
- "@oxc-minify/binding-linux-riscv64-gnu": "0.94.0",
- "@oxc-minify/binding-linux-s390x-gnu": "0.94.0",
- "@oxc-minify/binding-linux-x64-gnu": "0.94.0",
- "@oxc-minify/binding-linux-x64-musl": "0.94.0",
- "@oxc-minify/binding-wasm32-wasi": "0.94.0",
- "@oxc-minify/binding-win32-arm64-msvc": "0.94.0",
- "@oxc-minify/binding-win32-x64-msvc": "0.94.0"
+ "@oxc-minify/binding-android-arm64": "0.96.0",
+ "@oxc-minify/binding-darwin-arm64": "0.96.0",
+ "@oxc-minify/binding-darwin-x64": "0.96.0",
+ "@oxc-minify/binding-freebsd-x64": "0.96.0",
+ "@oxc-minify/binding-linux-arm-gnueabihf": "0.96.0",
+ "@oxc-minify/binding-linux-arm-musleabihf": "0.96.0",
+ "@oxc-minify/binding-linux-arm64-gnu": "0.96.0",
+ "@oxc-minify/binding-linux-arm64-musl": "0.96.0",
+ "@oxc-minify/binding-linux-riscv64-gnu": "0.96.0",
+ "@oxc-minify/binding-linux-s390x-gnu": "0.96.0",
+ "@oxc-minify/binding-linux-x64-gnu": "0.96.0",
+ "@oxc-minify/binding-linux-x64-musl": "0.96.0",
+ "@oxc-minify/binding-wasm32-wasi": "0.96.0",
+ "@oxc-minify/binding-win32-arm64-msvc": "0.96.0",
+ "@oxc-minify/binding-win32-x64-msvc": "0.96.0"
}
},
"node_modules/oxc-parser": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.93.0.tgz",
- "integrity": "sha512-ktMzTb3AqYCAsgnGTsWOhJYEBxGhxm6F+Ja9HsRibvVYBnA/BCiALAYLQk6M47mdEyybP9B3sOj56UDT+VIkMg==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/oxc-parser/-/oxc-parser-0.95.0.tgz",
+ "integrity": "sha512-Te8fE/SmiiKWIrwBwxz5Dod87uYvsbcZ9JAL5ylPg1DevyKgTkxCXnPEaewk1Su2qpfNmry5RHoN+NywWFCG+A==",
"dev": true,
"license": "MIT",
"peer": true,
"dependencies": {
- "@oxc-project/types": "^0.93.0"
+ "@oxc-project/types": "^0.95.0"
},
"engines": {
"node": "^20.19.0 || >=22.12.0"
@@ -13756,27 +13668,27 @@
"url": "https://github.com/sponsors/Boshen"
},
"optionalDependencies": {
- "@oxc-parser/binding-android-arm64": "0.93.0",
- "@oxc-parser/binding-darwin-arm64": "0.93.0",
- "@oxc-parser/binding-darwin-x64": "0.93.0",
- "@oxc-parser/binding-freebsd-x64": "0.93.0",
- "@oxc-parser/binding-linux-arm-gnueabihf": "0.93.0",
- "@oxc-parser/binding-linux-arm-musleabihf": "0.93.0",
- "@oxc-parser/binding-linux-arm64-gnu": "0.93.0",
- "@oxc-parser/binding-linux-arm64-musl": "0.93.0",
- "@oxc-parser/binding-linux-riscv64-gnu": "0.93.0",
- "@oxc-parser/binding-linux-s390x-gnu": "0.93.0",
- "@oxc-parser/binding-linux-x64-gnu": "0.93.0",
- "@oxc-parser/binding-linux-x64-musl": "0.93.0",
- "@oxc-parser/binding-wasm32-wasi": "0.93.0",
- "@oxc-parser/binding-win32-arm64-msvc": "0.93.0",
- "@oxc-parser/binding-win32-x64-msvc": "0.93.0"
+ "@oxc-parser/binding-android-arm64": "0.95.0",
+ "@oxc-parser/binding-darwin-arm64": "0.95.0",
+ "@oxc-parser/binding-darwin-x64": "0.95.0",
+ "@oxc-parser/binding-freebsd-x64": "0.95.0",
+ "@oxc-parser/binding-linux-arm-gnueabihf": "0.95.0",
+ "@oxc-parser/binding-linux-arm-musleabihf": "0.95.0",
+ "@oxc-parser/binding-linux-arm64-gnu": "0.95.0",
+ "@oxc-parser/binding-linux-arm64-musl": "0.95.0",
+ "@oxc-parser/binding-linux-riscv64-gnu": "0.95.0",
+ "@oxc-parser/binding-linux-s390x-gnu": "0.95.0",
+ "@oxc-parser/binding-linux-x64-gnu": "0.95.0",
+ "@oxc-parser/binding-linux-x64-musl": "0.95.0",
+ "@oxc-parser/binding-wasm32-wasi": "0.95.0",
+ "@oxc-parser/binding-win32-arm64-msvc": "0.95.0",
+ "@oxc-parser/binding-win32-x64-msvc": "0.95.0"
}
},
"node_modules/oxc-transform": {
- "version": "0.93.0",
- "resolved": "https://registry.npmjs.org/oxc-transform/-/oxc-transform-0.93.0.tgz",
- "integrity": "sha512-QCwM2nMAWf4hEBehLVA2apllxdmmWLb5M0in9HwC2boaaFbP0QntbLy4hfRZGur2KKyEBErZbH9S5NYX8eHslg==",
+ "version": "0.95.0",
+ "resolved": "https://registry.npmjs.org/oxc-transform/-/oxc-transform-0.95.0.tgz",
+ "integrity": "sha512-SmS5aThb5K0SoUZgzGbikNBjrGHfOY4X5TEqBlaZb1uy5YgXbUSbpakpZJ13yW36LNqy8Im5+y+sIk5dlzpZ/w==",
"dev": true,
"license": "MIT",
"engines": {
@@ -13786,21 +13698,21 @@
"url": "https://github.com/sponsors/Boshen"
},
"optionalDependencies": {
- "@oxc-transform/binding-android-arm64": "0.93.0",
- "@oxc-transform/binding-darwin-arm64": "0.93.0",
- "@oxc-transform/binding-darwin-x64": "0.93.0",
- "@oxc-transform/binding-freebsd-x64": "0.93.0",
- "@oxc-transform/binding-linux-arm-gnueabihf": "0.93.0",
- "@oxc-transform/binding-linux-arm-musleabihf": "0.93.0",
- "@oxc-transform/binding-linux-arm64-gnu": "0.93.0",
- "@oxc-transform/binding-linux-arm64-musl": "0.93.0",
- "@oxc-transform/binding-linux-riscv64-gnu": "0.93.0",
- "@oxc-transform/binding-linux-s390x-gnu": "0.93.0",
- "@oxc-transform/binding-linux-x64-gnu": "0.93.0",
- "@oxc-transform/binding-linux-x64-musl": "0.93.0",
- "@oxc-transform/binding-wasm32-wasi": "0.93.0",
- "@oxc-transform/binding-win32-arm64-msvc": "0.93.0",
- "@oxc-transform/binding-win32-x64-msvc": "0.93.0"
+ "@oxc-transform/binding-android-arm64": "0.95.0",
+ "@oxc-transform/binding-darwin-arm64": "0.95.0",
+ "@oxc-transform/binding-darwin-x64": "0.95.0",
+ "@oxc-transform/binding-freebsd-x64": "0.95.0",
+ "@oxc-transform/binding-linux-arm-gnueabihf": "0.95.0",
+ "@oxc-transform/binding-linux-arm-musleabihf": "0.95.0",
+ "@oxc-transform/binding-linux-arm64-gnu": "0.95.0",
+ "@oxc-transform/binding-linux-arm64-musl": "0.95.0",
+ "@oxc-transform/binding-linux-riscv64-gnu": "0.95.0",
+ "@oxc-transform/binding-linux-s390x-gnu": "0.95.0",
+ "@oxc-transform/binding-linux-x64-gnu": "0.95.0",
+ "@oxc-transform/binding-linux-x64-musl": "0.95.0",
+ "@oxc-transform/binding-wasm32-wasi": "0.95.0",
+ "@oxc-transform/binding-win32-arm64-msvc": "0.95.0",
+ "@oxc-transform/binding-win32-x64-msvc": "0.95.0"
}
},
"node_modules/oxc-walker": {
@@ -13917,19 +13829,6 @@
"parse-statements": "1.0.11"
}
},
- "node_modules/parse-ms": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz",
- "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/parse-path": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/parse-path/-/parse-path-7.1.0.tgz",
@@ -14279,13 +14178,13 @@
}
},
"node_modules/postcss-colormin": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-7.0.4.tgz",
- "integrity": "sha512-ziQuVzQZBROpKpfeDwmrG+Vvlr0YWmY/ZAk99XD+mGEBuEojoFekL41NCsdhyNUtZI7DPOoIWIR7vQQK9xwluw==",
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-7.0.5.tgz",
+ "integrity": "sha512-ekIBP/nwzRWhEMmIxHHbXHcMdzd1HIUzBECaj5KEdLz9DVP2HzT065sEhvOx1dkLjYW7jyD0CngThx6bpFi2fA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"caniuse-api": "^3.0.0",
"colord": "^2.9.3",
"postcss-value-parser": "^4.2.0"
@@ -14298,13 +14197,13 @@
}
},
"node_modules/postcss-convert-values": {
- "version": "7.0.7",
- "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-7.0.7.tgz",
- "integrity": "sha512-HR9DZLN04Xbe6xugRH6lS4ZQH2zm/bFh/ZyRkpedZozhvh+awAfbA0P36InO4fZfDhvYfNJeNvlTf1sjwGbw/A==",
+ "version": "7.0.8",
+ "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-7.0.8.tgz",
+ "integrity": "sha512-+XNKuPfkHTCEo499VzLMYn94TiL3r9YqRE3Ty+jP7UX4qjewUONey1t7CG21lrlTLN07GtGM8MqFVp86D4uKJg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"postcss-value-parser": "^4.2.0"
},
"engines": {
@@ -14315,9 +14214,9 @@
}
},
"node_modules/postcss-discard-comments": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-7.0.4.tgz",
- "integrity": "sha512-6tCUoql/ipWwKtVP/xYiFf1U9QgJ0PUvxN7pTcsQ8Ns3Fnwq1pU5D5s1MhT/XySeLq6GXNvn37U46Ded0TckWg==",
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-7.0.5.tgz",
+ "integrity": "sha512-IR2Eja8WfYgN5n32vEGSctVQ1+JARfu4UH8M7bgGh1bC+xI/obsPJXaBpQF7MAByvgwZinhpHpdrmXtvVVlKcQ==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -14488,13 +14387,13 @@
}
},
"node_modules/postcss-merge-rules": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-7.0.6.tgz",
- "integrity": "sha512-2jIPT4Tzs8K87tvgCpSukRQ2jjd+hH6Bb8rEEOUDmmhOeTcqDg5fEFK8uKIu+Pvc3//sm3Uu6FRqfyv7YF7+BQ==",
+ "version": "7.0.7",
+ "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-7.0.7.tgz",
+ "integrity": "sha512-njWJrd/Ms6XViwowaaCc+/vqhPG3SmXn725AGrnl+BgTuRPEacjiLEaGq16J6XirMJbtKkTwnt67SS+e2WGoew==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"caniuse-api": "^3.0.0",
"cssnano-utils": "^5.0.1",
"postcss-selector-parser": "^7.1.0"
@@ -14555,13 +14454,13 @@
}
},
"node_modules/postcss-minify-params": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-7.0.4.tgz",
- "integrity": "sha512-3OqqUddfH8c2e7M35W6zIwv7jssM/3miF9cbCSb1iJiWvtguQjlxZGIHK9JRmc8XAKmE2PFGtHSM7g/VcW97sw==",
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-7.0.5.tgz",
+ "integrity": "sha512-FGK9ky02h6Ighn3UihsyeAH5XmLEE2MSGH5Tc4tXMFtEDx7B+zTG6hD/+/cT+fbF7PbYojsmmWjyTwFwW1JKQQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"cssnano-utils": "^5.0.1",
"postcss-value-parser": "^4.2.0"
},
@@ -14826,13 +14725,13 @@
}
},
"node_modules/postcss-normalize-unicode": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-7.0.4.tgz",
- "integrity": "sha512-LvIURTi1sQoZqj8mEIE8R15yvM+OhbR1avynMtI9bUzj5gGKR/gfZFd8O7VMj0QgJaIFzxDwxGl/ASMYAkqO8g==",
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-7.0.5.tgz",
+ "integrity": "sha512-X6BBwiRxVaFHrb2WyBMddIeB5HBjJcAaUHyhLrM2FsxSq5TFqcHSsK7Zu1otag+o0ZphQGJewGH1tAyrD0zX1Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"postcss-value-parser": "^4.2.0"
},
"engines": {
@@ -14892,13 +14791,13 @@
}
},
"node_modules/postcss-reduce-initial": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-7.0.4.tgz",
- "integrity": "sha512-rdIC9IlMBn7zJo6puim58Xd++0HdbvHeHaPgXsimMfG1ijC5A9ULvNLSE0rUKVJOvNMcwewW4Ga21ngyJjY/+Q==",
+ "version": "7.0.5",
+ "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-7.0.5.tgz",
+ "integrity": "sha512-RHagHLidG8hTZcnr4FpyMB2jtgd/OcyAazjMhoy5qmWJOx1uxKh4ntk0Pb46ajKM0rkf32lRH4C8c9qQiPR6IA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"caniuse-api": "^3.0.0"
},
"engines": {
@@ -15166,22 +15065,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/pretty-ms": {
- "version": "9.3.0",
- "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.3.0.tgz",
- "integrity": "sha512-gjVS5hOP+M3wMm5nmNOucbIrqudzs9v/57bWRHQWLYklXqoXKrVfYW2W9+glfGsqtPgpiz5WwyEEB+ksXIx3gQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "parse-ms": "^4.0.0"
- },
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/process": {
"version": "0.11.10",
"resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
@@ -15290,17 +15173,17 @@
}
},
"node_modules/puppeteer-core": {
- "version": "24.25.0",
- "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.25.0.tgz",
- "integrity": "sha512-8Xs6q3Ut+C8y7sAaqjIhzv1QykGWG4gc2mEZ2mYE7siZFuRp4xQVehOf8uQKSQAkeL7jXUs3mknEeiqnRqUKvQ==",
+ "version": "24.29.1",
+ "resolved": "https://registry.npmjs.org/puppeteer-core/-/puppeteer-core-24.29.1.tgz",
+ "integrity": "sha512-ErJ9qKCK+bdLvBa7QVSQTBSPm8KZbl1yC/WvhrZ0ut27hDf2QBzjDsn1IukzE1i1KtZ7NYGETOV4W1beoo9izA==",
"license": "Apache-2.0",
"dependencies": {
- "@puppeteer/browsers": "2.10.12",
- "chromium-bidi": "9.1.0",
+ "@puppeteer/browsers": "2.10.13",
+ "chromium-bidi": "10.5.1",
"debug": "^4.4.3",
- "devtools-protocol": "0.0.1508733",
+ "devtools-protocol": "0.0.1521046",
"typed-query-selector": "^2.12.0",
- "webdriver-bidi-protocol": "0.3.7",
+ "webdriver-bidi-protocol": "0.3.8",
"ws": "^8.18.3"
},
"engines": {
@@ -15508,31 +15391,18 @@
}
},
"node_modules/regjsparser": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.12.0.tgz",
- "integrity": "sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==",
+ "version": "0.13.0",
+ "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.13.0.tgz",
+ "integrity": "sha512-NZQZdC5wOE/H3UT28fVGL+ikOZcEzfMGk/c3iN9UGxzWHMa1op7274oyiUVrAG4B2EuFhus8SvkaYnhvW92p9Q==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
- "jsesc": "~3.0.2"
+ "jsesc": "~3.1.0"
},
"bin": {
"regjsparser": "bin/parser"
}
},
- "node_modules/regjsparser/node_modules/jsesc": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz",
- "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "jsesc": "bin/jsesc"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/replace-in-file": {
"version": "6.3.5",
"resolved": "https://registry.npmjs.org/replace-in-file/-/replace-in-file-6.3.5.tgz",
@@ -15629,6 +15499,19 @@
"node": ">=8.6.0"
}
},
+ "node_modules/reserved-identifiers": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/reserved-identifiers/-/reserved-identifiers-1.2.0.tgz",
+ "integrity": "sha512-yE7KUfFvaBFzGPs5H3Ops1RevfUEsDc5Iz65rOwWg4lE8HJSYtle77uul3+573457oHvBKuHYDl/xqUkKpEEdw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/resolve": {
"version": "1.22.11",
"resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.11.tgz",
@@ -15752,9 +15635,9 @@
"license": "MIT"
},
"node_modules/rollup": {
- "version": "4.52.5",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.52.5.tgz",
- "integrity": "sha512-3GuObel8h7Kqdjt0gxkEzaifHTqLVW56Y/bjN7PSQtkKr0w3V/QYSdt6QWYtd7A1xUtYQigtdUfgj1RvWVtorw==",
+ "version": "4.53.2",
+ "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.53.2.tgz",
+ "integrity": "sha512-MHngMYwGJVi6Fmnk6ISmnk7JAHRNF0UkuucA0CUW3N3a4KnONPEZz+vUanQP/ZC/iY1Qkf3bwPWzyY84wEks1g==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -15769,28 +15652,28 @@
"npm": ">=8.0.0"
},
"optionalDependencies": {
- "@rollup/rollup-android-arm-eabi": "4.52.5",
- "@rollup/rollup-android-arm64": "4.52.5",
- "@rollup/rollup-darwin-arm64": "4.52.5",
- "@rollup/rollup-darwin-x64": "4.52.5",
- "@rollup/rollup-freebsd-arm64": "4.52.5",
- "@rollup/rollup-freebsd-x64": "4.52.5",
- "@rollup/rollup-linux-arm-gnueabihf": "4.52.5",
- "@rollup/rollup-linux-arm-musleabihf": "4.52.5",
- "@rollup/rollup-linux-arm64-gnu": "4.52.5",
- "@rollup/rollup-linux-arm64-musl": "4.52.5",
- "@rollup/rollup-linux-loong64-gnu": "4.52.5",
- "@rollup/rollup-linux-ppc64-gnu": "4.52.5",
- "@rollup/rollup-linux-riscv64-gnu": "4.52.5",
- "@rollup/rollup-linux-riscv64-musl": "4.52.5",
- "@rollup/rollup-linux-s390x-gnu": "4.52.5",
- "@rollup/rollup-linux-x64-gnu": "4.52.5",
- "@rollup/rollup-linux-x64-musl": "4.52.5",
- "@rollup/rollup-openharmony-arm64": "4.52.5",
- "@rollup/rollup-win32-arm64-msvc": "4.52.5",
- "@rollup/rollup-win32-ia32-msvc": "4.52.5",
- "@rollup/rollup-win32-x64-gnu": "4.52.5",
- "@rollup/rollup-win32-x64-msvc": "4.52.5",
+ "@rollup/rollup-android-arm-eabi": "4.53.2",
+ "@rollup/rollup-android-arm64": "4.53.2",
+ "@rollup/rollup-darwin-arm64": "4.53.2",
+ "@rollup/rollup-darwin-x64": "4.53.2",
+ "@rollup/rollup-freebsd-arm64": "4.53.2",
+ "@rollup/rollup-freebsd-x64": "4.53.2",
+ "@rollup/rollup-linux-arm-gnueabihf": "4.53.2",
+ "@rollup/rollup-linux-arm-musleabihf": "4.53.2",
+ "@rollup/rollup-linux-arm64-gnu": "4.53.2",
+ "@rollup/rollup-linux-arm64-musl": "4.53.2",
+ "@rollup/rollup-linux-loong64-gnu": "4.53.2",
+ "@rollup/rollup-linux-ppc64-gnu": "4.53.2",
+ "@rollup/rollup-linux-riscv64-gnu": "4.53.2",
+ "@rollup/rollup-linux-riscv64-musl": "4.53.2",
+ "@rollup/rollup-linux-s390x-gnu": "4.53.2",
+ "@rollup/rollup-linux-x64-gnu": "4.53.2",
+ "@rollup/rollup-linux-x64-musl": "4.53.2",
+ "@rollup/rollup-openharmony-arm64": "4.53.2",
+ "@rollup/rollup-win32-arm64-msvc": "4.53.2",
+ "@rollup/rollup-win32-ia32-msvc": "4.53.2",
+ "@rollup/rollup-win32-x64-gnu": "4.53.2",
+ "@rollup/rollup-win32-x64-msvc": "4.53.2",
"fsevents": "~2.3.2"
}
},
@@ -15892,12 +15775,6 @@
"node": ">= 12"
}
},
- "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==",
- "license": "MIT"
- },
"node_modules/run-applescript": {
"version": "7.1.0",
"resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-7.1.0.tgz",
@@ -16120,6 +15997,16 @@
"randombytes": "^2.1.0"
}
},
+ "node_modules/seroval": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/seroval/-/seroval-1.3.2.tgz",
+ "integrity": "sha512-RbcPH1n5cfwKrru7v7+zrZvjLurgHhGyso3HTyGtRivGWgYjbOmGuivCQaORNELjNONoK35nj28EoWul9sb1zQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/serve-placeholder": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/serve-placeholder/-/serve-placeholder-2.0.2.tgz",
@@ -16216,9 +16103,9 @@
}
},
"node_modules/simple-git": {
- "version": "3.28.0",
- "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.28.0.tgz",
- "integrity": "sha512-Rs/vQRwsn1ILH1oBUy8NucJlXmnnLeLCfcvbSehkPzbv3wwoFWIdtfd6Ndo6ZPhlPsCZ60CPI4rxurnwAa+a2w==",
+ "version": "3.30.0",
+ "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.30.0.tgz",
+ "integrity": "sha512-q6lxyDsCmEal/MEGhP1aVyQ3oxnagGlBDOVSIB4XUVLl1iZh0Pah6ebC9V4xBap/RfgP2WlI8EKs0WS0rMEJHg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -16389,9 +16276,9 @@
}
},
"node_modules/srvx": {
- "version": "0.8.16",
- "resolved": "https://registry.npmjs.org/srvx/-/srvx-0.8.16.tgz",
- "integrity": "sha512-hmcGW4CgroeSmzgF1Ihwgl+Ths0JqAJ7HwjP2X7e3JzY7u4IydLMcdnlqGQiQGUswz+PO9oh/KtCpOISIvs9QQ==",
+ "version": "0.9.6",
+ "resolved": "https://registry.npmjs.org/srvx/-/srvx-0.9.6.tgz",
+ "integrity": "sha512-5L4rT6qQqqb+xcoDoklUgCNdmzqJ6vbcDRwPVGRXewF55IJH0pqh0lQlrJ266ZWTKJ4mfeioqHQJeAYesS+RrQ==",
"dev": true,
"license": "MIT",
"bin": {
@@ -16627,13 +16514,13 @@
"license": "ISC"
},
"node_modules/stylehacks": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-7.0.6.tgz",
- "integrity": "sha512-iitguKivmsueOmTO0wmxURXBP8uqOO+zikLGZ7Mm9e/94R4w5T999Js2taS/KBOnQ/wdC3jN3vNSrkGDrlnqQg==",
+ "version": "7.0.7",
+ "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-7.0.7.tgz",
+ "integrity": "sha512-bJkD0JkEtbRrMFtwgpJyBbFIwfDDONQ1Ov3sDLZQP8HuJ73kBOyx66H4bOcAbVWmnfLdvQ0AJwXxOMkpujcO6g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.25.1",
+ "browserslist": "^4.27.0",
"postcss-selector-parser": "^7.1.0"
},
"engines": {
@@ -16768,9 +16655,9 @@
}
},
"node_modules/superjson": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.3.tgz",
- "integrity": "sha512-ay3d+LW/S6yppKoTz3Bq4mG0xrS5bFwfWEBmQfbC7lt5wmtk+Obq0TxVuA9eYRirBTQb1K3eEpBRHMQEo0WyVw==",
+ "version": "2.2.5",
+ "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.5.tgz",
+ "integrity": "sha512-zWPTX96LVsA/eVYnqOM2+ofcdPqdS1dAF1LN4TS2/MWuUpfitd9ctTa87wt4xrYnZnkLtS69xpBdSxVBP5Rm6w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -16842,11 +16729,11 @@
}
},
"node_modules/svgo/node_modules/sax": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz",
- "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==",
+ "version": "1.4.3",
+ "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.3.tgz",
+ "integrity": "sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==",
"dev": true,
- "license": "ISC"
+ "license": "BlueOak-1.0.0"
},
"node_modules/symbol-tree": {
"version": "3.2.4",
@@ -17107,11 +16994,11 @@
}
},
"node_modules/tar": {
- "version": "7.5.1",
- "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.1.tgz",
- "integrity": "sha512-nlGpxf+hv0v7GkWBK2V9spgactGOp0qvfWRxUMjqHyzrt3SgwE48DIv/FhqPHJYLHpgW1opq3nERbz5Anq7n1g==",
+ "version": "7.5.2",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-7.5.2.tgz",
+ "integrity": "sha512-7NyxrTE4Anh8km8iEy7o0QYPs+0JKBTj5ZaqHg6B39erLg0qYXN3BijtShwbsNSvQ+LN75+KV+C4QR/f6Gwnpg==",
"dev": true,
- "license": "ISC",
+ "license": "BlueOak-1.0.0",
"dependencies": {
"@isaacs/fs-minipass": "^4.0.0",
"chownr": "^3.0.0",
@@ -17149,9 +17036,9 @@
}
},
"node_modules/terser": {
- "version": "5.44.0",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.44.0.tgz",
- "integrity": "sha512-nIVck8DK+GM/0Frwd+nIhZ84pR/BX7rmXMfYwyg+Sri5oGVE99/E3KvXqpC2xHFxyqXyGHTKBSioxxplrO4I4w==",
+ "version": "5.44.1",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.44.1.tgz",
+ "integrity": "sha512-t/R3R/n0MSwnnazuPpPNVO60LX0SKL45pyl9YlvxIdkH0Of7D5qM2EVe+yASRIlY5pZ73nclYJfNANGWPwFDZw==",
"dev": true,
"license": "BSD-2-Clause",
"dependencies": {
@@ -17236,11 +17123,14 @@
"license": "MIT"
},
"node_modules/tinyexec": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.1.tgz",
- "integrity": "sha512-5uC6DDlmeqiOwCPmK9jMSdOuZTh8bU39Ys6yidB+UTt5hfZUPGAypSgFRiEp+jbi9qH40BLDvy85jIU88wKSqw==",
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/tinyexec/-/tinyexec-1.0.2.tgz",
+ "integrity": "sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": ">=18"
+ }
},
"node_modules/tinyglobby": {
"version": "0.2.15",
@@ -17320,6 +17210,23 @@
"node": ">=8.0"
}
},
+ "node_modules/to-valid-identifier": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/to-valid-identifier/-/to-valid-identifier-1.0.0.tgz",
+ "integrity": "sha512-41wJyvKep3yT2tyPqX/4blcfybknGB4D+oETKLs7Q76UiPqRpUJK3hr1nxelyYO0PHKVzJwlu0aCeEAsGI6rpw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@sindresorhus/base62": "^1.0.0",
+ "reserved-identifiers": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=20"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/toidentifier": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
@@ -17423,9 +17330,9 @@
}
},
"node_modules/type-fest": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.1.0.tgz",
- "integrity": "sha512-wQ531tuWvB6oK+pchHIu5lHe5f5wpSCqB8Kf4dWQRbOYc9HTge7JL0G4Qd44bh6QuJCccIzL3bugb8GI0MwHrg==",
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-5.2.0.tgz",
+ "integrity": "sha512-xxCJm+Bckc6kQBknN7i9fnP/xobQRsRQxR01CztFkp/h++yfVxUUcmMgfR2HttJx/dpWjS9ubVuyspJv24Q9DA==",
"dev": true,
"license": "(MIT OR CC0-1.0)",
"dependencies": {
@@ -17523,16 +17430,6 @@
"@types/estree": "^1.0.0"
}
},
- "node_modules/undici": {
- "version": "7.16.0",
- "resolved": "https://registry.npmjs.org/undici/-/undici-7.16.0.tgz",
- "integrity": "sha512-QEg3HPMll0o3t2ourKwOeUAZ159Kn9mx5pnzHRQO8+Wixmh88YdZRiIwat0iNzNNXn0yoEtXJqFpyW7eM8BV7g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=20.18.1"
- }
- },
"node_modules/undici-types": {
"version": "7.16.0",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz",
@@ -17540,17 +17437,13 @@
"license": "MIT"
},
"node_modules/unenv": {
- "version": "2.0.0-rc.21",
- "resolved": "https://registry.npmjs.org/unenv/-/unenv-2.0.0-rc.21.tgz",
- "integrity": "sha512-Wj7/AMtE9MRnAXa6Su3Lk0LNCfqDYgfwVjwRFVum9U7wsto1imuHqk4kTm7Jni+5A0Hn7dttL6O/zjvUvoo+8A==",
+ "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": {
- "defu": "^6.1.4",
- "exsolve": "^1.0.7",
- "ohash": "^2.0.11",
- "pathe": "^2.0.3",
- "ufo": "^1.6.1"
+ "pathe": "^2.0.3"
}
},
"node_modules/unhead": {
@@ -17567,9 +17460,9 @@
}
},
"node_modules/unicorn-magic": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz",
- "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==",
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz",
+ "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==",
"dev": true,
"license": "MIT",
"engines": {
@@ -17689,32 +17582,33 @@
}
},
"node_modules/unplugin-vue-router": {
- "version": "0.15.0",
- "resolved": "https://registry.npmjs.org/unplugin-vue-router/-/unplugin-vue-router-0.15.0.tgz",
- "integrity": "sha512-PyGehCjd9Ny9h+Uer4McbBjjib3lHihcyUEILa7pHKl6+rh8N7sFyw4ZkV+N30Oq2zmIUG7iKs3qpL0r+gXAaQ==",
+ "version": "0.16.1",
+ "resolved": "https://registry.npmjs.org/unplugin-vue-router/-/unplugin-vue-router-0.16.1.tgz",
+ "integrity": "sha512-7A7gUVzLIYMBrBPKk8l4lZoZXDOrO8+etw6/RTrqG3OzpLUUZEXJFUW7+OyMIpQK93sEbdkR2z9ZNNl/r32FMw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@vue-macros/common": "3.0.0-beta.16",
- "@vue/language-core": "^3.0.1",
- "ast-walker-scope": "^0.8.1",
+ "@babel/generator": "^7.28.5",
+ "@vue-macros/common": "^3.1.1",
+ "@vue/language-core": "^3.1.2",
+ "ast-walker-scope": "^0.8.3",
"chokidar": "^4.0.3",
"json5": "^2.2.3",
- "local-pkg": "^1.1.1",
- "magic-string": "^0.30.17",
- "mlly": "^1.7.4",
+ "local-pkg": "^1.1.2",
+ "magic-string": "^0.30.21",
+ "mlly": "^1.8.0",
"muggle-string": "^0.4.1",
"pathe": "^2.0.3",
"picomatch": "^4.0.3",
"scule": "^1.3.0",
- "tinyglobby": "^0.2.14",
- "unplugin": "^2.3.5",
- "unplugin-utils": "^0.2.4",
- "yaml": "^2.8.0"
+ "tinyglobby": "^0.2.15",
+ "unplugin": "^2.3.10",
+ "unplugin-utils": "^0.3.1",
+ "yaml": "^2.8.1"
},
"peerDependencies": {
"@vue/compiler-sfc": "^3.5.17",
- "vue-router": "^4.5.1"
+ "vue-router": "^4.6.0"
},
"peerDependenciesMeta": {
"vue-router": {
@@ -17722,6 +17616,23 @@
}
}
},
+ "node_modules/unplugin-vue-router/node_modules/unplugin-utils": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/unplugin-utils/-/unplugin-utils-0.3.1.tgz",
+ "integrity": "sha512-5lWVjgi6vuHhJ526bI4nlCOmkCIF3nnfXkCMDeMJrtdvxTs6ZFCM8oNufGTsDbKv/tJ/xj8RpvXjRuPBZJuJog==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "pathe": "^2.0.3",
+ "picomatch": "^4.0.3"
+ },
+ "engines": {
+ "node": ">=20.19.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sxzz"
+ }
+ },
"node_modules/unrs-resolver": {
"version": "1.11.1",
"resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz",
@@ -17759,9 +17670,9 @@
}
},
"node_modules/unstorage": {
- "version": "1.17.1",
- "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.17.1.tgz",
- "integrity": "sha512-KKGwRTT0iVBCErKemkJCLs7JdxNVfqTPc/85ae1XES0+bsHbc/sFBfVi5kJp156cc51BHinIH2l3k0EZ24vOBQ==",
+ "version": "1.17.2",
+ "resolved": "https://registry.npmjs.org/unstorage/-/unstorage-1.17.2.tgz",
+ "integrity": "sha512-cKEsD6iBWJgOMJ6vW1ID/SYuqNf8oN4yqRk8OYqaVQ3nnkJXOT1PSpaMh2QfzLs78UN5kSNRD2c/mgjT8tX7+w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -17771,7 +17682,7 @@
"h3": "^1.15.4",
"lru-cache": "^10.4.3",
"node-fetch-native": "^1.6.7",
- "ofetch": "^1.4.1",
+ "ofetch": "^1.5.0",
"ufo": "^1.6.1"
},
"peerDependencies": {
@@ -17989,9 +17900,9 @@
}
},
"node_modules/vite": {
- "version": "7.1.12",
- "resolved": "https://registry.npmjs.org/vite/-/vite-7.1.12.tgz",
- "integrity": "sha512-ZWyE8YXEXqJrrSLvYgrRP7p62OziLW7xI5HYGWFzOvupfAlrLvURSzv/FyGyy0eidogEM3ujU+kUG1zuHgb6Ug==",
+ "version": "7.2.2",
+ "resolved": "https://registry.npmjs.org/vite/-/vite-7.2.2.tgz",
+ "integrity": "sha512-BxAKBWmIbrDgrokdGZH1IgkIk/5mMHDreLDmCJ0qpyJaAteP8NvMhkwr/ZCQNqNH97bw/dANTE9PDzqwJghfMQ==",
"dev": true,
"license": "MIT",
"peer": true,
@@ -18212,19 +18123,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/vite-plugin-checker/node_modules/unicorn-magic": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.3.0.tgz",
- "integrity": "sha512-+QBBXBCvifc56fsbuxZQ6Sic3wqqc3WWaqxs58gvJrcOuN83HGTCwz3oS5phzU9LthRNE9VrJCFCLUgHeeFnfA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/vite-plugin-eslint2": {
"version": "5.0.4",
"resolved": "https://registry.npmjs.org/vite-plugin-eslint2/-/vite-plugin-eslint2-5.0.4.tgz",
@@ -18307,15 +18205,15 @@
}
},
"node_modules/vite-plugin-vue-tracer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/vite-plugin-vue-tracer/-/vite-plugin-vue-tracer-1.0.1.tgz",
- "integrity": "sha512-L5/vAhT6oYbH4RSQYGLN9VfHexWe7SGzca1pJ7oPkL6KtxWA1jbGeb3Ri1JptKzqtd42HinOq4uEYqzhVWrzig==",
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/vite-plugin-vue-tracer/-/vite-plugin-vue-tracer-1.1.3.tgz",
+ "integrity": "sha512-fM7hfHELZvbPnSn8EKZwHfzxm5EfYFQIclz8rwcNXfodNbRkwNvh0AGMtaBfMxQ9HC5KVa3KitwHnmE4ezDemw==",
"dev": true,
"license": "MIT",
"dependencies": {
"estree-walker": "^3.0.3",
"exsolve": "^1.0.7",
- "magic-string": "^0.30.19",
+ "magic-string": "^0.30.21",
"pathe": "^2.0.3",
"source-map-js": "^1.2.1"
},
@@ -18496,17 +18394,17 @@
"license": "MIT"
},
"node_modules/vue": {
- "version": "3.5.22",
- "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.22.tgz",
- "integrity": "sha512-toaZjQ3a/G/mYaLSbV+QsQhIdMo9x5rrqIpYRObsJ6T/J+RyCSFwN2LHNVH9v8uIcljDNa3QzPVdv3Y6b9hAJQ==",
+ "version": "3.5.24",
+ "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.24.tgz",
+ "integrity": "sha512-uTHDOpVQTMjcGgrqFPSb8iO2m1DUvo+WbGqoXQz8Y1CeBYQ0FXf2z1gLRaBtHjlRz7zZUBHxjVB5VTLzYkvftg==",
"license": "MIT",
"peer": true,
"dependencies": {
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-sfc": "3.5.22",
- "@vue/runtime-dom": "3.5.22",
- "@vue/server-renderer": "3.5.22",
- "@vue/shared": "3.5.22"
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-sfc": "3.5.24",
+ "@vue/runtime-dom": "3.5.24",
+ "@vue/server-renderer": "3.5.24",
+ "@vue/shared": "3.5.24"
},
"peerDependencies": {
"typescript": "*"
@@ -18651,9 +18549,9 @@
}
},
"node_modules/webdriver-bidi-protocol": {
- "version": "0.3.7",
- "resolved": "https://registry.npmjs.org/webdriver-bidi-protocol/-/webdriver-bidi-protocol-0.3.7.tgz",
- "integrity": "sha512-wIx5Gu/LLTeexxilpk8WxU2cpGAKlfbWRO5h+my6EMD1k5PYqM1qQO1MHUFf4f3KRnhBvpbZU7VkizAgeSEf7g==",
+ "version": "0.3.8",
+ "resolved": "https://registry.npmjs.org/webdriver-bidi-protocol/-/webdriver-bidi-protocol-0.3.8.tgz",
+ "integrity": "sha512-21Yi2GhGntMc671vNBCjiAeEVknXjVRoyu+k+9xOMShu+ZQfpGQwnBqbNz/Sv4GXZ6JmutlPAi2nIJcrymAWuQ==",
"license": "Apache-2.0"
},
"node_modules/webidl-conversions": {
@@ -18684,6 +18582,18 @@
"node": ">=18"
}
},
+ "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==",
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/whatwg-mimetype": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz",
@@ -19059,9 +18969,9 @@
}
},
"node_modules/yocto-queue": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz",
- "integrity": "sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg==",
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.2.tgz",
+ "integrity": "sha512-4LCcse/U2MHZ63HAJVE+v71o7yOdIe4cZ70Wpf8D/IyjDKYQLV5GD46B+hSTjJsvV5PztjvHoU580EftxjDZFQ==",
"dev": true,
"license": "MIT",
"engines": {
@@ -19071,30 +18981,17 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/yoctocolors": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.2.tgz",
- "integrity": "sha512-CzhO+pFNo8ajLM2d2IW/R93ipy99LWjtwblvC1RsoSUMZgyLbYFr221TnSNT7GjGdYui6P459mw9JH/g/zW2ug==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=18"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/youch": {
- "version": "4.1.0-beta.11",
- "resolved": "https://registry.npmjs.org/youch/-/youch-4.1.0-beta.11.tgz",
- "integrity": "sha512-sQi6PERyO/mT8w564ojOVeAlYTtVQmC2GaktQAf+IdI75/GKIggosBuvyVXvEV+FATAT6RbLdIjFoiIId4ozoQ==",
+ "version": "4.1.0-beta.12",
+ "resolved": "https://registry.npmjs.org/youch/-/youch-4.1.0-beta.12.tgz",
+ "integrity": "sha512-X+AQ2EdigcZb2h1XQmBMm19TrrfKXxEXWpnf8ThbARwiiSf/pA7MvRTCj5VHCI9z3vjJBsDeqWWyvaI9Bfp9Pg==",
"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",
+ "@poppinss/dumper": "^0.6.5",
+ "@speed-highlight/core": "^1.2.9",
+ "cookie-es": "^2.0.0",
"youch-core": "^0.3.3"
}
},
@@ -19109,6 +19006,13 @@
"error-stack-parser-es": "^1.0.5"
}
},
+ "node_modules/youch/node_modules/cookie-es": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/cookie-es/-/cookie-es-2.0.0.tgz",
+ "integrity": "sha512-RAj4E421UYRgqokKUmotqAwuplYw15qtdXfY+hGzgCJ/MBjCVZcSoHK/kH9kocfjRjcDME7IiDWR/1WX1TM2Pg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/zip-stream": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-6.0.1.tgz",
diff --git a/print/package.json b/print/package.json
index a7e8ebb6ed..94d834303a 100644
--- a/print/package.json
+++ b/print/package.json
@@ -18,48 +18,48 @@
"dependencies": {
"@jamescoyle/vue-icon": "0.1.2",
"@mdi/js": "7.4.47",
- "@sentry/node": "10.20.0",
- "axios": "1.12.2",
+ "@sentry/node": "10.23.0",
+ "axios": "1.13.2",
"colorjs.io": "0.5.2",
- "dayjs": "1.11.18",
+ "dayjs": "1.11.19",
"deepmerge": "4.3.1",
"hal-json-vuex": "3.0.0-alpha.10",
- "isomorphic-dompurify": "2.29.0",
+ "isomorphic-dompurify": "2.31.0",
"lodash-es": "4.17.21",
- "puppeteer-core": "24.25.0",
+ "puppeteer-core": "24.29.1",
"runes": "0.4.3",
"vuex": "4.1.0"
},
"devDependencies": {
- "@eslint/compat": "1.4.0",
- "@eslint/js": "9.38.0",
- "@nuxt/eslint": "1.9.0",
- "@nuxt/eslint-config": "1.9.0",
- "@nuxtjs/i18n": "10.1.1",
+ "@eslint/compat": "1.4.1",
+ "@eslint/js": "9.39.1",
+ "@nuxt/eslint": "1.10.0",
+ "@nuxt/eslint-config": "1.10.0",
+ "@nuxtjs/i18n": "10.2.0",
"@nuxtjs/tailwindcss": "6.14.0",
"@tailwindcss/typography": "0.5.19",
- "@typescript-eslint/eslint-plugin": "8.46.2",
+ "@typescript-eslint/eslint-plugin": "8.46.4",
"@vitest/coverage-v8": "3.2.4",
- "@vue/compiler-dom": "3.5.22",
- "@vue/compiler-sfc": "3.5.22",
- "@vue/runtime-dom": "3.5.22",
- "@vue/server-renderer": "3.5.22",
- "@vue/shared": "3.5.22",
+ "@vue/compiler-dom": "3.5.24",
+ "@vue/compiler-sfc": "3.5.24",
+ "@vue/runtime-dom": "3.5.24",
+ "@vue/server-renderer": "3.5.24",
+ "@vue/shared": "3.5.24",
"@vue/test-utils": "2.4.6",
- "eslint": "9.38.0",
+ "eslint": "9.39.1",
"eslint-config-prettier": "10.1.8",
"eslint-plugin-local-rules": "3.0.2",
"eslint-plugin-prettier": "5.5.4",
"eslint-plugin-vue": "10.5.1",
"eslint-plugin-vue-scoped-css": "2.12.0",
- "globals": "16.4.0",
- "nuxt": "4.1.3",
+ "globals": "16.5.0",
+ "nuxt": "4.2.1",
"prettier": "3.6.2",
"sass": "1.82.0",
"vite-plugin-eslint2": "5.0.4",
"vite-svg-loader": "5.1.0",
"vitest": "3.2.4",
- "vue": "3.5.22"
+ "vue": "3.5.24"
},
"overrides": {
"uri-js": "npm:uri-js-replace"
diff --git a/renovate.json b/renovate.json
index dccac29ced..8164a98870 100644
--- a/renovate.json
+++ b/renovate.json
@@ -5,8 +5,8 @@
":prConcurrentLimitNone"
],
"constraints": {
- "node": "24.10.0",
- "php": "8.4.13"
+ "node": "24.11.0",
+ "php": "8.4.14"
},
"automergeType": "branch",
"rebaseWhen": "conflicted",
diff --git a/reverse-proxy-nginx.conf b/reverse-proxy-nginx.conf
index 114ceaed2c..83031eb56e 100644
--- a/reverse-proxy-nginx.conf
+++ b/reverse-proxy-nginx.conf
@@ -11,7 +11,7 @@ http {
'' close;
}
- resolver 127.0.0.11;
+ resolver 127.0.0.11 valid=0s;
include /etc/nginx/mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
diff --git a/translation/package-lock.json b/translation/package-lock.json
index 1cbcf1dbbe..f981a47a05 100644
--- a/translation/package-lock.json
+++ b/translation/package-lock.json
@@ -6,13 +6,13 @@
"": {
"name": "@ecamp3/translations",
"dependencies": {
- "deepl-node": "1.20.0"
+ "deepl-node": "1.21.0"
}
},
"node_modules/@types/node": {
- "version": "24.9.1",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-24.9.1.tgz",
- "integrity": "sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==",
+ "version": "24.10.1",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.10.1.tgz",
+ "integrity": "sha512-GNWcUTRBgIRJD5zj+Tq0fKOJ5XZajIiBroOF0yvj2bSU1WvNdYS/dn9UxwsujGW4JX06dnHyjV2y9rRaybH0iQ==",
"license": "MIT",
"dependencies": {
"undici-types": "~7.16.0"
@@ -34,9 +34,9 @@
"license": "MIT"
},
"node_modules/axios": {
- "version": "1.12.2",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.12.2.tgz",
- "integrity": "sha512-vMJzPewAlRyOgxV2dU0Cuz2O8zzzx9VYtbJOaBgXFeLc4IV/Eg50n4LowmehOOR61S8ZMpc2K5Sa7g6A4jfkUw==",
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.13.2.tgz",
+ "integrity": "sha512-VPk9ebNqPcy5lRGuSlKx752IlDatOjT9paPlm8A7yOuW2Fbvp4X3JznJtT4f0GzGLLiWE9W8onz51SqLYwzGaA==",
"license": "MIT",
"dependencies": {
"follow-redirects": "^1.15.6",
@@ -86,9 +86,9 @@
}
},
"node_modules/deepl-node": {
- "version": "1.20.0",
- "resolved": "https://registry.npmjs.org/deepl-node/-/deepl-node-1.20.0.tgz",
- "integrity": "sha512-2MNJgJgQQWHAieaKYJyxYe1g21P8MYOtMbcS7ApyBHT8856c6EYO9RRNevodGaIf0oiKMzwyenJ59O7B0NQyGw==",
+ "version": "1.21.0",
+ "resolved": "https://registry.npmjs.org/deepl-node/-/deepl-node-1.21.0.tgz",
+ "integrity": "sha512-5j6OcA6Q65QdcQUDKesWlwiyXSwBQ6/+N82/z6oCcZcco2h/CC9pn1PKxm7XqvydJWqXTNG0+pwhxnTQ4p6HhA==",
"license": "MIT",
"dependencies": {
"@types/node": ">=12.0",
diff --git a/translation/package.json b/translation/package.json
index 797b715341..fd2e94ccc5 100755
--- a/translation/package.json
+++ b/translation/package.json
@@ -2,7 +2,7 @@
"name": "@ecamp3/translations",
"private": true,
"dependencies": {
- "deepl-node": "1.20.0"
+ "deepl-node": "1.21.0"
},
"scripts": {
"sort-common-de": "node deepl.js ../common/locales/de.json ../common/locales/de.json",