From ebaf509a2f15a4541598672a0e01257efdbc1af8 Mon Sep 17 00:00:00 2001 From: Thomas Peterson Date: Sun, 31 May 2026 11:12:53 +0200 Subject: [PATCH] =?UTF-8?q?Fundament:=20Symfony+API-Platform-Backend=20&?= =?UTF-8?q?=20Vue-SPA=20(Phase=200=E2=80=932)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Stack & Setup - Dockerisierte Dev-Umgebung (PHP 8.4-FPM, Nginx, MariaDB 11.4) - Symfony 7.4 + API Platform 4.3, Doctrine ORM, LexikJWT, Messenger - Vue 3 + TS (Vite), Vue Router, Pinia, Axios Kern-Domäne & Auth - Entitäten: User, PlatformPlan, Reseller, Company, Domain, Location, Employee, ContactLink (UUIDv7) - JWT-Login (/api/login), Rollen-Hierarchie, /api/me - Mandantentrennung via API-Platform-Query-Extension (Lesen) + TenantStampProcessor (Schreiben) Öffentliche Profile (SSR) - Profil-Landingpage, vCard-Download, QR-Code im Marken-Look - Stabiler NFC/QR-Kurz-Link /t/{code} -> Redirect aufs aktuelle Profil - Firmenspezifisches Branding (Farben/Logo) auf der Profilseite Verwaltungsoberfläche (SPA) - Brand-Look (dunkle Sidebar), rollenbasierte Navigation - Dashboard, Reseller (+Provisioning), Firmen, Mitarbeiter, Standorte, Domains, Design/Branding mit Live-Vorschau Konzept & Doku: docs/KONZEPT.md (inkl. Wallet/Sync §12), README.md Co-Authored-By: Claude Opus 4.8 --- .gitignore | 23 + README.md | 102 + backend/.editorconfig | 17 + backend/.env | 54 + backend/.env.dev | 4 + backend/.gitignore | 14 + backend/bin/console | 21 + backend/compose.override.yaml | 7 + backend/compose.yaml | 25 + backend/composer.json | 90 + backend/composer.lock | 8273 +++++++++++++++++ backend/config/bundles.php | 13 + backend/config/packages/api_platform.yaml | 7 + backend/config/packages/cache.yaml | 19 + backend/config/packages/doctrine.yaml | 46 + .../config/packages/doctrine_migrations.yaml | 6 + backend/config/packages/framework.yaml | 15 + .../packages/lexik_jwt_authentication.yaml | 4 + backend/config/packages/messenger.yaml | 22 + backend/config/packages/nelmio_cors.yaml | 10 + backend/config/packages/property_info.yaml | 3 + backend/config/packages/routing.yaml | 10 + backend/config/packages/security.yaml | 55 + backend/config/packages/twig.yaml | 6 + backend/config/packages/validator.yaml | 11 + backend/config/preload.php | 5 + backend/config/reference.php | 1817 ++++ backend/config/routes.yaml | 11 + backend/config/routes/api_platform.yaml | 4 + backend/config/routes/framework.yaml | 4 + backend/config/routes/security.yaml | 3 + backend/config/services.yaml | 23 + backend/migrations/.gitignore | 0 backend/migrations/Version20260530191712.php | 65 + backend/migrations/Version20260531085615.php | 33 + backend/public/assets/brand.css | 82 + backend/public/index.php | 9 + backend/src/ApiResource/.gitignore | 0 .../src/Command/BackfillShortCodesCommand.php | 37 + backend/src/Command/SeedCommand.php | 121 + backend/src/Controller/.gitignore | 0 .../Controller/CompanyBrandingController.php | 77 + backend/src/Controller/MeController.php | 38 + .../Controller/PublicProfileController.php | 97 + .../ResellerProvisioningController.php | 79 + backend/src/Controller/SecurityController.php | 20 + .../src/Controller/ShortLinkController.php | 34 + backend/src/Doctrine/TenantExtension.php | 120 + backend/src/Entity/.gitignore | 0 backend/src/Entity/Company.php | 182 + backend/src/Entity/ContactLink.php | 113 + backend/src/Entity/Domain.php | 134 + backend/src/Entity/Employee.php | 374 + backend/src/Entity/Location.php | 173 + backend/src/Entity/PlatformPlan.php | 131 + backend/src/Entity/Reseller.php | 145 + backend/src/Entity/ResellerOwnedInterface.php | 13 + backend/src/Entity/User.php | 183 + backend/src/Kernel.php | 11 + backend/src/Repository/.gitignore | 0 backend/src/Repository/CompanyRepository.php | 18 + .../src/Repository/ContactLinkRepository.php | 18 + backend/src/Repository/DomainRepository.php | 18 + backend/src/Repository/EmployeeRepository.php | 51 + backend/src/Repository/LocationRepository.php | 18 + .../src/Repository/PlatformPlanRepository.php | 18 + backend/src/Repository/ResellerRepository.php | 18 + backend/src/Repository/UserRepository.php | 32 + backend/src/Security/TenantContext.php | 38 + backend/src/Service/VCardBuilder.php | 73 + backend/src/State/TenantStampProcessor.php | 102 + backend/symfony.lock | 214 + backend/templates/base.html.twig | 16 + backend/templates/public/profile.html.twig | 154 + docker-compose.yml | 54 + docker/nginx/default.conf | 25 + docker/php/Dockerfile | 25 + docs/KONZEPT.md | 58 +- docs/design-reference/website-home.jpeg | Bin 0 -> 800761 bytes frontend/.gitignore | 24 + frontend/README.md | 5 + frontend/index.html | 13 + frontend/package-lock.json | 1759 ++++ frontend/package.json | 25 + frontend/public/favicon.svg | 1 + frontend/public/icons.svg | 24 + frontend/src/App.vue | 7 + frontend/src/api/client.ts | 38 + frontend/src/api/resources.ts | 39 + frontend/src/assets/brand.css | 78 + frontend/src/assets/hero.png | Bin 0 -> 13057 bytes frontend/src/assets/vite.svg | 1 + frontend/src/assets/vue.svg | 1 + frontend/src/components/HelloWorld.vue | 95 + frontend/src/components/Modal.vue | 32 + frontend/src/layouts/DashboardLayout.vue | 91 + frontend/src/main.ts | 10 + frontend/src/router/index.ts | 41 + frontend/src/stores/auth.ts | 55 + frontend/src/style.css | 296 + frontend/src/views/CompaniesView.vue | 114 + frontend/src/views/DashboardView.vue | 59 + frontend/src/views/DesignView.vue | 146 + frontend/src/views/DomainsView.vue | 118 + frontend/src/views/EmployeesView.vue | 260 + frontend/src/views/HomeView.vue | 23 + frontend/src/views/LocationsView.vue | 110 + frontend/src/views/LoginView.vue | 65 + frontend/src/views/PlaceholderView.vue | 16 + frontend/src/views/ResellersView.vue | 130 + frontend/tsconfig.app.json | 19 + frontend/tsconfig.json | 7 + frontend/tsconfig.node.json | 24 + frontend/vite.config.ts | 24 + 114 files changed, 17693 insertions(+), 2 deletions(-) create mode 100644 .gitignore create mode 100644 README.md create mode 100644 backend/.editorconfig create mode 100644 backend/.env create mode 100644 backend/.env.dev create mode 100644 backend/.gitignore create mode 100755 backend/bin/console create mode 100644 backend/compose.override.yaml create mode 100644 backend/compose.yaml create mode 100644 backend/composer.json create mode 100644 backend/composer.lock create mode 100644 backend/config/bundles.php create mode 100644 backend/config/packages/api_platform.yaml create mode 100644 backend/config/packages/cache.yaml create mode 100644 backend/config/packages/doctrine.yaml create mode 100644 backend/config/packages/doctrine_migrations.yaml create mode 100644 backend/config/packages/framework.yaml create mode 100644 backend/config/packages/lexik_jwt_authentication.yaml create mode 100644 backend/config/packages/messenger.yaml create mode 100644 backend/config/packages/nelmio_cors.yaml create mode 100644 backend/config/packages/property_info.yaml create mode 100644 backend/config/packages/routing.yaml create mode 100644 backend/config/packages/security.yaml create mode 100644 backend/config/packages/twig.yaml create mode 100644 backend/config/packages/validator.yaml create mode 100644 backend/config/preload.php create mode 100644 backend/config/reference.php create mode 100644 backend/config/routes.yaml create mode 100644 backend/config/routes/api_platform.yaml create mode 100644 backend/config/routes/framework.yaml create mode 100644 backend/config/routes/security.yaml create mode 100644 backend/config/services.yaml create mode 100644 backend/migrations/.gitignore create mode 100644 backend/migrations/Version20260530191712.php create mode 100644 backend/migrations/Version20260531085615.php create mode 100644 backend/public/assets/brand.css create mode 100644 backend/public/index.php create mode 100644 backend/src/ApiResource/.gitignore create mode 100644 backend/src/Command/BackfillShortCodesCommand.php create mode 100644 backend/src/Command/SeedCommand.php create mode 100644 backend/src/Controller/.gitignore create mode 100644 backend/src/Controller/CompanyBrandingController.php create mode 100644 backend/src/Controller/MeController.php create mode 100644 backend/src/Controller/PublicProfileController.php create mode 100644 backend/src/Controller/ResellerProvisioningController.php create mode 100644 backend/src/Controller/SecurityController.php create mode 100644 backend/src/Controller/ShortLinkController.php create mode 100644 backend/src/Doctrine/TenantExtension.php create mode 100644 backend/src/Entity/.gitignore create mode 100644 backend/src/Entity/Company.php create mode 100644 backend/src/Entity/ContactLink.php create mode 100644 backend/src/Entity/Domain.php create mode 100644 backend/src/Entity/Employee.php create mode 100644 backend/src/Entity/Location.php create mode 100644 backend/src/Entity/PlatformPlan.php create mode 100644 backend/src/Entity/Reseller.php create mode 100644 backend/src/Entity/ResellerOwnedInterface.php create mode 100644 backend/src/Entity/User.php create mode 100644 backend/src/Kernel.php create mode 100644 backend/src/Repository/.gitignore create mode 100644 backend/src/Repository/CompanyRepository.php create mode 100644 backend/src/Repository/ContactLinkRepository.php create mode 100644 backend/src/Repository/DomainRepository.php create mode 100644 backend/src/Repository/EmployeeRepository.php create mode 100644 backend/src/Repository/LocationRepository.php create mode 100644 backend/src/Repository/PlatformPlanRepository.php create mode 100644 backend/src/Repository/ResellerRepository.php create mode 100644 backend/src/Repository/UserRepository.php create mode 100644 backend/src/Security/TenantContext.php create mode 100644 backend/src/Service/VCardBuilder.php create mode 100644 backend/src/State/TenantStampProcessor.php create mode 100644 backend/symfony.lock create mode 100644 backend/templates/base.html.twig create mode 100644 backend/templates/public/profile.html.twig create mode 100644 docker-compose.yml create mode 100644 docker/nginx/default.conf create mode 100644 docker/php/Dockerfile create mode 100644 docs/design-reference/website-home.jpeg create mode 100644 frontend/.gitignore create mode 100644 frontend/README.md create mode 100644 frontend/index.html create mode 100644 frontend/package-lock.json create mode 100644 frontend/package.json create mode 100644 frontend/public/favicon.svg create mode 100644 frontend/public/icons.svg create mode 100644 frontend/src/App.vue create mode 100644 frontend/src/api/client.ts create mode 100644 frontend/src/api/resources.ts create mode 100644 frontend/src/assets/brand.css create mode 100644 frontend/src/assets/hero.png create mode 100644 frontend/src/assets/vite.svg create mode 100644 frontend/src/assets/vue.svg create mode 100644 frontend/src/components/HelloWorld.vue create mode 100644 frontend/src/components/Modal.vue create mode 100644 frontend/src/layouts/DashboardLayout.vue create mode 100644 frontend/src/main.ts create mode 100644 frontend/src/router/index.ts create mode 100644 frontend/src/stores/auth.ts create mode 100644 frontend/src/style.css create mode 100644 frontend/src/views/CompaniesView.vue create mode 100644 frontend/src/views/DashboardView.vue create mode 100644 frontend/src/views/DesignView.vue create mode 100644 frontend/src/views/DomainsView.vue create mode 100644 frontend/src/views/EmployeesView.vue create mode 100644 frontend/src/views/HomeView.vue create mode 100644 frontend/src/views/LocationsView.vue create mode 100644 frontend/src/views/LoginView.vue create mode 100644 frontend/src/views/PlaceholderView.vue create mode 100644 frontend/src/views/ResellersView.vue create mode 100644 frontend/tsconfig.app.json create mode 100644 frontend/tsconfig.json create mode 100644 frontend/tsconfig.node.json create mode 100644 frontend/vite.config.ts diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e23ee2a --- /dev/null +++ b/.gitignore @@ -0,0 +1,23 @@ +# Abhängigkeiten +/backend/vendor/ +/frontend/node_modules/ +/frontend/dist/ + +# Symfony +/backend/var/ +/backend/.env.local +/backend/.env.*.local +/backend/config/jwt/*.pem + +# Umgebung +.env.local +*.log + +# IDE/OS +.idea/ +.vscode/ +.DS_Store + +# Playwright-Artefakte +/.playwright-mcp/ +backend/.playwright-mcp/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..4a234b9 --- /dev/null +++ b/README.md @@ -0,0 +1,102 @@ +# vcard4reseller + +White-Label-Plattform für digitale Visitenkarten (Reseller → Firmenkunde → Mitarbeiter). +Konzept & Datenmodell: siehe [`docs/KONZEPT.md`](docs/KONZEPT.md). + +## Stack + +- **Backend:** Symfony 7.4 + API Platform 4.3, Doctrine ORM, LexikJWT, Messenger +- **Frontend:** Vue 3 + TypeScript (Vite), Vue Router, Pinia, Axios +- **DB:** MariaDB 11.4 +- **Dev-Umgebung:** Docker (PHP-FPM, Nginx, MariaDB) + +## Verzeichnisse + +``` +backend/ Symfony-API (JSON/JSON-LD) +frontend/ Vue-3-SPA (Dashboards) +docker/ Dockerfile (PHP) + Nginx-Config +docs/ Konzept & Datenmodell +``` + +## Schnellstart + +Voraussetzung: Docker + Node 25. + +```bash +# 1) Backend-Stack starten (PHP, Nginx, MariaDB) +export UID=$(id -u) GID=$(id -g) +docker compose up -d php nginx mariadb + +# 2) JWT-Schlüssel erzeugen (einmalig) +docker compose exec php php bin/console lexik:jwt:generate-keypair --skip-if-exists + +# 3) Frontend (Dev-Server mit API-Proxy auf :8080) +cd frontend && npm install && npm run dev +``` + +- API: http://localhost:8080/api +- Frontend: http://localhost:5173 +- MariaDB: localhost:3306 (DB `vcard4reseller`, User `app` / `app`) + +### Nützliche Befehle + +```bash +# Symfony-Console im Container +docker compose exec php php bin/console + +# Migration erstellen / ausführen +docker compose exec php php bin/console doctrine:migrations:diff +docker compose exec php php bin/console doctrine:migrations:migrate +``` + +## Status + +**Phase 0 (Setup) + Phase 1 (Kern-Domäne & Auth) abgeschlossen.** + +Phase 1 umfasst: Entitäten (User, PlatformPlan, Reseller, Company, Domain, +Location, Employee, ContactLink), JWT-Login (`POST /api/login`), +Rollen-Hierarchie und automatische Mandantentrennung über eine +API-Platform-Query-Extension (`src/Doctrine/TenantExtension.php`). + +Demo-Daten via `docker compose exec php php bin/console app:seed`: + +| Rolle | E-Mail | Passwort | +|-------|--------|----------| +| Plattform-Admin | admin@vcard4reseller.de | admin | +| Reseller-Admin | reseller@demo.de | reseller | +| Firmen-Admin | firma@muster.de | firma | + +**Phase 2 (öffentliche Profile) läuft.** Bereits umgesetzt: serverseitig +gerenderte Profilseite, vCard-Download und QR-Code im Marken-Look von +vcard4reseller.de (Design-Tokens in `backend/public/assets/brand.css`, +Referenz in `docs/design-reference/`). + +Öffentliche Endpunkte (kein Login): + +- `GET /p/{firma}/{mitarbeiter}` — Profil-Landingpage (Twig/SSR) +- `GET /p/{firma}/{mitarbeiter}/vcard.vcf` — vCard-Download +- `GET /p/{firma}/{mitarbeiter}/qr.png` — QR-Code (codiert die stabile Kurz-URL) +- `GET /t/{code}` — stabiler NFC/QR-Kurz-Link → Redirect aufs aktuelle Profil + +Beispiel (nach `app:seed`): http://localhost:8080/p/muster/erika-mustermann + +**Verwaltungsoberfläche (Vue-SPA) läuft.** Echtes Login gegen `/api/login`, +rollenbasierte App-Shell (dunkle Sidebar + Topbar im Brand-Look) und live an +die API gebundene Screens: + +- **Dashboard** — Kennzahlen (rollenabhängig: Reseller/Firmen/Mitarbeiter/…) +- **Reseller** — Übersicht + Anlegen inkl. Admin-Zugang (nur Plattform-Admin) +- **Firmen** — Liste + Anlegen/Löschen (Reseller) +- **Mitarbeiter** — Tabelle, Suche, Anlegen/Bearbeiten/Löschen, Link zur öffentlichen Profilseite +- **Standorte**, **Domains** — Liste + Anlegen (Domains mit A-Record-Hinweis) +- **Design** — firmenspezifisches Branding (Primärfarbe/Logo) mit Live-Vorschau +- **Einstellungen** — Platzhalter + +`/api/me` liefert der SPA Rollen + Mandantenkontext. + +Start: `cd frontend && npm run dev` → http://localhost:5173 (Login z. B. +reseller@demo.de / reseller). + +Nächster Schritt: Wallet-Pässe (Konzept §12, Google zuerst), E-Mail-Signaturen, +Druckdaten. Siehe `docs/KONZEPT.md` §9. diff --git a/backend/.editorconfig b/backend/.editorconfig new file mode 100644 index 0000000..6699076 --- /dev/null +++ b/backend/.editorconfig @@ -0,0 +1,17 @@ +# editorconfig.org + +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_size = 4 +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[{compose.yaml,compose.*.yaml}] +indent_size = 2 + +[*.md] +trim_trailing_whitespace = false diff --git a/backend/.env b/backend/.env new file mode 100644 index 0000000..167e09d --- /dev/null +++ b/backend/.env @@ -0,0 +1,54 @@ +# In all environments, the following files are loaded if they exist, +# the latter taking precedence over the former: +# +# * .env contains default values for the environment variables needed by the app +# * .env.local uncommitted file with local overrides +# * .env.$APP_ENV committed environment-specific defaults +# * .env.$APP_ENV.local uncommitted environment-specific overrides +# +# Real environment variables win over .env files. +# +# DO NOT DEFINE PRODUCTION SECRETS IN THIS FILE NOR IN ANY OTHER COMMITTED FILES. +# https://symfony.com/doc/current/configuration/secrets.html +# +# Run "composer dump-env prod" to compile .env files for production use (requires symfony/flex >=1.2). +# https://symfony.com/doc/current/best_practices.html#use-environment-variables-for-infrastructure-configuration + +###> symfony/framework-bundle ### +APP_ENV=dev +APP_SECRET= +APP_SHARE_DIR=var/share +###< symfony/framework-bundle ### + +###> symfony/routing ### +# Configure how to generate URLs in non-HTTP contexts, such as CLI commands. +# See https://symfony.com/doc/current/routing.html#generating-urls-in-commands +DEFAULT_URI=http://localhost +###< symfony/routing ### + +###> nelmio/cors-bundle ### +CORS_ALLOW_ORIGIN='^https?://(localhost|127\.0\.0\.1)(:[0-9]+)?$' +###< nelmio/cors-bundle ### + +###> doctrine/doctrine-bundle ### +# Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url +# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml +# +# DATABASE_URL="sqlite:///%kernel.project_dir%/var/data_%kernel.environment%.db" +# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=8.0.32&charset=utf8mb4" +# DATABASE_URL="mysql://app:!ChangeMe!@127.0.0.1:3306/app?serverVersion=10.11.2-MariaDB&charset=utf8mb4" +DATABASE_URL="mysql://app:app@mariadb:3306/vcard4reseller?serverVersion=11.4.0-MariaDB&charset=utf8mb4" +###< doctrine/doctrine-bundle ### + +###> lexik/jwt-authentication-bundle ### +JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem +JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem +JWT_PASSPHRASE=d75959918d9ccc5c89c62edbd6e6c6af82d6e2a3d303c53a6f3328e94a05b60a +###< lexik/jwt-authentication-bundle ### + +###> symfony/messenger ### +# Choose one of the transports below +# MESSENGER_TRANSPORT_DSN=amqp://guest:guest@localhost:5672/%2f/messages +# MESSENGER_TRANSPORT_DSN=redis://localhost:6379/messages +MESSENGER_TRANSPORT_DSN=doctrine://default?auto_setup=0 +###< symfony/messenger ### diff --git a/backend/.env.dev b/backend/.env.dev new file mode 100644 index 0000000..7cf9f13 --- /dev/null +++ b/backend/.env.dev @@ -0,0 +1,4 @@ + +###> symfony/framework-bundle ### +APP_SECRET=6a99dc78ab52a33deba7f8bd986720dc +###< symfony/framework-bundle ### diff --git a/backend/.gitignore b/backend/.gitignore new file mode 100644 index 0000000..94a2aab --- /dev/null +++ b/backend/.gitignore @@ -0,0 +1,14 @@ + +###> symfony/framework-bundle ### +/.env.local +/.env.local.php +/.env.*.local +/config/secrets/prod/prod.decrypt.private.php +/public/bundles/ +/var/ +/vendor/ +###< symfony/framework-bundle ### + +###> lexik/jwt-authentication-bundle ### +/config/jwt/*.pem +###< lexik/jwt-authentication-bundle ### diff --git a/backend/bin/console b/backend/bin/console new file mode 100755 index 0000000..d8d530e --- /dev/null +++ b/backend/bin/console @@ -0,0 +1,21 @@ +#!/usr/bin/env php + doctrine/doctrine-bundle ### + database: + ports: + - "5432" +###< doctrine/doctrine-bundle ### diff --git a/backend/compose.yaml b/backend/compose.yaml new file mode 100644 index 0000000..89c74d1 --- /dev/null +++ b/backend/compose.yaml @@ -0,0 +1,25 @@ + +services: +###> doctrine/doctrine-bundle ### + database: + image: postgres:${POSTGRES_VERSION:-16}-alpine + environment: + POSTGRES_DB: ${POSTGRES_DB:-app} + # You should definitely change the password in production + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-!ChangeMe!} + POSTGRES_USER: ${POSTGRES_USER:-app} + healthcheck: + test: ["CMD", "pg_isready", "-d", "${POSTGRES_DB:-app}", "-U", "${POSTGRES_USER:-app}"] + timeout: 5s + retries: 5 + start_period: 60s + volumes: + - database_data:/var/lib/postgresql/data:rw + # You may use a bind-mounted host directory instead, so that it is harder to accidentally remove the volume and lose all your data! + # - ./docker/db/data:/var/lib/postgresql/data:rw +###< doctrine/doctrine-bundle ### + +volumes: +###> doctrine/doctrine-bundle ### + database_data: +###< doctrine/doctrine-bundle ### diff --git a/backend/composer.json b/backend/composer.json new file mode 100644 index 0000000..9bfd89b --- /dev/null +++ b/backend/composer.json @@ -0,0 +1,90 @@ +{ + "type": "project", + "license": "proprietary", + "minimum-stability": "stable", + "prefer-stable": true, + "require": { + "php": ">=8.2", + "ext-ctype": "*", + "ext-iconv": "*", + "api-platform/doctrine-orm": "^4.3", + "api-platform/symfony": "^4.3", + "doctrine/doctrine-bundle": "^3.2", + "doctrine/doctrine-migrations-bundle": "^4.0", + "doctrine/orm": "^3.6", + "endroid/qr-code": "^6.1", + "lexik/jwt-authentication-bundle": "^3.2", + "nelmio/cors-bundle": "^2.6", + "phpdocumentor/reflection-docblock": "^6.0", + "phpstan/phpdoc-parser": "^2.3", + "symfony/asset": "7.4.*", + "symfony/console": "7.4.*", + "symfony/dotenv": "7.4.*", + "symfony/expression-language": "7.4.*", + "symfony/flex": "^2", + "symfony/framework-bundle": "7.4.*", + "symfony/messenger": "7.4.*", + "symfony/property-access": "7.4.*", + "symfony/property-info": "7.4.*", + "symfony/runtime": "7.4.*", + "symfony/security-bundle": "7.4.*", + "symfony/serializer": "7.4.*", + "symfony/twig-bundle": "7.4.*", + "symfony/uid": "7.4.*", + "symfony/validator": "7.4.*", + "symfony/yaml": "7.4.*" + }, + "config": { + "allow-plugins": { + "php-http/discovery": true, + "symfony/flex": true, + "symfony/runtime": true + }, + "bump-after-update": true, + "sort-packages": true + }, + "autoload": { + "psr-4": { + "App\\": "src/" + } + }, + "autoload-dev": { + "psr-4": { + "App\\Tests\\": "tests/" + } + }, + "replace": { + "symfony/polyfill-ctype": "*", + "symfony/polyfill-iconv": "*", + "symfony/polyfill-php72": "*", + "symfony/polyfill-php73": "*", + "symfony/polyfill-php74": "*", + "symfony/polyfill-php80": "*", + "symfony/polyfill-php81": "*", + "symfony/polyfill-php82": "*" + }, + "scripts": { + "auto-scripts": { + "cache:clear": "symfony-cmd", + "assets:install %PUBLIC_DIR%": "symfony-cmd" + }, + "post-install-cmd": [ + "@auto-scripts" + ], + "post-update-cmd": [ + "@auto-scripts" + ] + }, + "conflict": { + "symfony/symfony": "*" + }, + "extra": { + "symfony": { + "allow-contrib": false, + "require": "7.4.*" + } + }, + "require-dev": { + "symfony/maker-bundle": "^1.67" + } +} diff --git a/backend/composer.lock b/backend/composer.lock new file mode 100644 index 0000000..4dd38c1 --- /dev/null +++ b/backend/composer.lock @@ -0,0 +1,8273 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", + "This file is @generated automatically" + ], + "content-hash": "d338a65321dc56060e7c17bb67662ca5", + "packages": [ + { + "name": "api-platform/doctrine-common", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/doctrine-common.git", + "reference": "089b196c2f8e4d14333aaa3c6db33356e8fd8be0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/doctrine-common/zipball/089b196c2f8e4d14333aaa3c6db33356e8fd8be0", + "reference": "089b196c2f8e4d14333aaa3c6db33356e8fd8be0", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.2.6", + "api-platform/state": "^4.2.4", + "doctrine/collections": "^2.1 || ^3.0", + "doctrine/common": "^3.2.2", + "doctrine/persistence": "^3.2 || ^4.0", + "php": ">=8.2" + }, + "conflict": { + "doctrine/persistence": "<1.3" + }, + "require-dev": { + "doctrine/mongodb-odm": "^2.10", + "doctrine/orm": "^2.17 || ^3.0", + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2", + "symfony/type-info": "^7.3 || ^8.0" + }, + "suggest": { + "api-platform/graphql": "For GraphQl mercure subscriptions.", + "api-platform/http-cache": "For HTTP cache invalidation.", + "phpstan/phpdoc-parser": "For PHP documentation support.", + "symfony/config": "For XML resource configuration.", + "symfony/mercure-bundle": "For mercure updates publisher.", + "symfony/yaml": "For YAML resource configuration." + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Doctrine\\Common\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "Common files used by api-platform/doctrine-orm and api-platform/doctrine-odm", + "homepage": "https://api-platform.com", + "keywords": [ + "doctrine", + "graphql", + "odm", + "orm", + "rest" + ], + "support": { + "source": "https://github.com/api-platform/doctrine-common/tree/v4.3.7" + }, + "time": "2026-05-04T13:25:58+00:00" + }, + { + "name": "api-platform/doctrine-orm", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/doctrine-orm.git", + "reference": "095a4c56cdd9986208100dedd5d28be50a4830ba" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/doctrine-orm/zipball/095a4c56cdd9986208100dedd5d28be50a4830ba", + "reference": "095a4c56cdd9986208100dedd5d28be50a4830ba", + "shasum": "" + }, + "require": { + "api-platform/doctrine-common": "^4.2.23", + "api-platform/metadata": "^4.2", + "api-platform/serializer": "^4.2.16", + "api-platform/state": "^4.2.4", + "composer/semver": "^3.4", + "doctrine/orm": "^2.17 || ^3.0.1", + "php": ">=8.2" + }, + "require-dev": { + "doctrine/doctrine-bundle": "^2.11 || ^3.1", + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2", + "ramsey/uuid": "^4.7", + "ramsey/uuid-doctrine": "^2.0", + "symfony/cache": "^6.4 || ^7.0 || ^8.0", + "symfony/framework-bundle": "^6.4 || ^7.0 || ^8.0", + "symfony/property-access": "^6.4 || ^7.0 || ^8.0", + "symfony/property-info": "^6.4 || ^7.1 || ^8.0", + "symfony/serializer": "^6.4 || ^7.0 || ^8.0", + "symfony/type-info": "^7.3 || ^8.0", + "symfony/uid": "^6.4 || ^7.0 || ^8.0", + "symfony/validator": "^6.4.11 || ^7.0 || ^8.0", + "symfony/yaml": "^6.4 || ^7.0 || ^8.0" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Doctrine\\Orm\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "Doctrine ORM bridge", + "homepage": "https://api-platform.com", + "keywords": [ + "api", + "doctrine", + "graphql", + "orm", + "rest" + ], + "support": { + "source": "https://github.com/api-platform/doctrine-orm/tree/v4.3.7" + }, + "time": "2026-05-07T11:45:31+00:00" + }, + { + "name": "api-platform/documentation", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/documentation.git", + "reference": "f07b444aef1f75bb07beb9f8d799213f05070e5f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/documentation/zipball/f07b444aef1f75bb07beb9f8d799213f05070e5f", + "reference": "f07b444aef1f75bb07beb9f8d799213f05070e5f", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.3", + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.5 || ^12.2" + }, + "type": "project", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Documentation\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "API Platform documentation controller.", + "support": { + "source": "https://github.com/api-platform/documentation/tree/v4.3.7" + }, + "time": "2026-04-30T12:21:24+00:00" + }, + { + "name": "api-platform/http-cache", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/http-cache.git", + "reference": "dd7c092b9abee06e72fd58544fe714b6c2a61efa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/http-cache/zipball/dd7c092b9abee06e72fd58544fe714b6c2a61efa", + "reference": "dd7c092b9abee06e72fd58544fe714b6c2a61efa", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.3", + "api-platform/state": "^4.3", + "php": ">=8.2", + "symfony/http-foundation": "^6.4.14 || ^7.0 || ^8.0" + }, + "require-dev": { + "guzzlehttp/guzzle": "^6.0 || ^7.0 || ^8.0", + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2", + "symfony/dependency-injection": "^6.4 || ^7.0 || ^8.0", + "symfony/http-client": "^6.4 || ^7.0 || ^8.0", + "symfony/type-info": "^7.3 || ^8.0" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\HttpCache\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/comunnity/contributors" + } + ], + "description": "API Platform HttpCache component", + "homepage": "https://api-platform.com", + "keywords": [ + "api", + "cache", + "http", + "rest" + ], + "support": { + "source": "https://github.com/api-platform/http-cache/tree/v4.3.7" + }, + "time": "2026-04-30T12:21:24+00:00" + }, + { + "name": "api-platform/hydra", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/hydra.git", + "reference": "317a696e396b80ba87de2560679c362923ef0a14" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/hydra/zipball/317a696e396b80ba87de2560679c362923ef0a14", + "reference": "317a696e396b80ba87de2560679c362923ef0a14", + "shasum": "" + }, + "require": { + "api-platform/documentation": "^4.3", + "api-platform/json-schema": "^4.3", + "api-platform/jsonld": "^4.3", + "api-platform/metadata": "^4.3", + "api-platform/serializer": "^4.3", + "api-platform/state": "^4.3", + "php": ">=8.2", + "symfony/type-info": "^7.3 || ^8.0", + "symfony/web-link": "^6.4 || ^7.1 || ^8.0" + }, + "require-dev": { + "api-platform/doctrine-common": "^4.3", + "api-platform/doctrine-odm": "^4.3", + "api-platform/doctrine-orm": "^4.3", + "phpspec/prophecy": "^1.19", + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Hydra\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "API Hydra support", + "homepage": "https://api-platform.com", + "keywords": [ + "Hydra", + "JSON-LD", + "api", + "graphql", + "jsonapi", + "rest" + ], + "support": { + "source": "https://github.com/api-platform/hydra/tree/v4.3.7" + }, + "time": "2026-05-11T11:50:19+00:00" + }, + { + "name": "api-platform/json-schema", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/json-schema.git", + "reference": "23dc2c388a08f2006b9189a0883a08f8837d7249" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/json-schema/zipball/23dc2c388a08f2006b9189a0883a08f8837d7249", + "reference": "23dc2c388a08f2006b9189a0883a08f8837d7249", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.3", + "php": ">=8.2", + "symfony/console": "^6.4 || ^7.0 || ^8.0", + "symfony/property-info": "^6.4 || ^7.1 || ^8.0", + "symfony/serializer": "^6.4 || ^7.0 || ^8.0", + "symfony/type-info": "^7.3 || ^8.0", + "symfony/uid": "^6.4 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\JsonSchema\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "Generate a JSON Schema from a PHP class", + "homepage": "https://api-platform.com", + "keywords": [ + "JSON Schema", + "api", + "json", + "openapi", + "rest", + "swagger" + ], + "support": { + "source": "https://github.com/api-platform/json-schema/tree/v4.3.7" + }, + "time": "2026-04-30T12:21:24+00:00" + }, + { + "name": "api-platform/jsonld", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/jsonld.git", + "reference": "20ca6d7b5c11674c3046d710aaa0c9bc1795e54b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/jsonld/zipball/20ca6d7b5c11674c3046d710aaa0c9bc1795e54b", + "reference": "20ca6d7b5c11674c3046d710aaa0c9bc1795e54b", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.3", + "api-platform/serializer": "^4.3", + "api-platform/state": "^4.3", + "php": ">=8.2" + }, + "require-dev": { + "phpunit/phpunit": "^11.5 || ^12.2", + "symfony/type-info": "^7.3 || ^8.0" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "files": [ + "./HydraContext.php" + ], + "psr-4": { + "ApiPlatform\\JsonLd\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "API JSON-LD support", + "homepage": "https://api-platform.com", + "keywords": [ + "Hydra", + "JSON-LD", + "api", + "graphql", + "rest" + ], + "support": { + "source": "https://github.com/api-platform/jsonld/tree/v4.3.7" + }, + "time": "2026-04-30T12:21:24+00:00" + }, + { + "name": "api-platform/metadata", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/metadata.git", + "reference": "2272ab2bc4f1c8e4e3ae358952ed15c09830bd3b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/metadata/zipball/2272ab2bc4f1c8e4e3ae358952ed15c09830bd3b", + "reference": "2272ab2bc4f1c8e4e3ae358952ed15c09830bd3b", + "shasum": "" + }, + "require": { + "doctrine/inflector": "^2.0", + "php": ">=8.2", + "psr/cache": "^1.0 || ^2.0 || ^3.0", + "psr/log": "^1.0 || ^2.0 || ^3.0", + "symfony/property-info": "^6.4 || ^7.1 || ^8.0", + "symfony/string": "^6.4 || ^7.0 || ^8.0", + "symfony/type-info": "^7.3 || ^8.0" + }, + "require-dev": { + "api-platform/json-schema": "^4.3", + "api-platform/openapi": "^4.3", + "api-platform/state": "^4.3", + "phpspec/prophecy-phpunit": "^2.2", + "phpstan/phpdoc-parser": "^1.29 || ^2.0", + "phpunit/phpunit": "^11.5 || ^12.2", + "symfony/config": "^6.4 || ^7.0 || ^8.0", + "symfony/routing": "^6.4 || ^7.0 || ^8.0", + "symfony/var-dumper": "^6.4 || ^7.0 || ^8.0", + "symfony/web-link": "^6.4 || ^7.1 || ^8.0", + "symfony/yaml": "^6.4 || ^7.0 || ^8.0" + }, + "suggest": { + "phpstan/phpdoc-parser": "For PHP documentation support.", + "symfony/config": "For XML resource configuration.", + "symfony/yaml": "For YAML resource configuration." + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Metadata\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "API Resource-oriented metadata attributes and factories", + "homepage": "https://api-platform.com", + "keywords": [ + "Hydra", + "JSON-LD", + "api", + "graphql", + "hal", + "jsonapi", + "openapi", + "rest", + "swagger" + ], + "support": { + "source": "https://github.com/api-platform/metadata/tree/v4.3.7" + }, + "time": "2026-05-28T13:34:59+00:00" + }, + { + "name": "api-platform/openapi", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/openapi.git", + "reference": "1562617e7500a50c2b6e6f43a0fb29a6a47e83a2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/openapi/zipball/1562617e7500a50c2b6e6f43a0fb29a6a47e83a2", + "reference": "1562617e7500a50c2b6e6f43a0fb29a6a47e83a2", + "shasum": "" + }, + "require": { + "api-platform/json-schema": "^4.3", + "api-platform/metadata": "^4.3", + "api-platform/state": "^4.3", + "php": ">=8.2", + "symfony/console": "^6.4 || ^7.0 || ^8.0", + "symfony/filesystem": "^6.4 || ^7.0 || ^8.0", + "symfony/property-access": "^6.4 || ^7.0 || ^8.0", + "symfony/serializer": "^6.4 || ^7.0 || ^8.0", + "symfony/type-info": "^7.3 || ^8.0" + }, + "require-dev": { + "api-platform/doctrine-common": "^4.3", + "api-platform/doctrine-odm": "^4.3", + "api-platform/doctrine-orm": "^4.3", + "api-platform/serializer": "^4.3", + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2", + "symfony/type-info": "^7.3 || ^8.0" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\OpenApi\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "Models to build and serialize an OpenAPI specification.", + "homepage": "https://api-platform.com", + "keywords": [ + "Hydra", + "JSON-LD", + "api", + "graphql", + "hal", + "jsonapi", + "openapi", + "rest", + "swagger" + ], + "support": { + "source": "https://github.com/api-platform/openapi/tree/v4.3.7" + }, + "time": "2026-04-30T12:21:24+00:00" + }, + { + "name": "api-platform/serializer", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/serializer.git", + "reference": "2c4f996bb6e5fef49106df0c48d0c1954e10998b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/serializer/zipball/2c4f996bb6e5fef49106df0c48d0c1954e10998b", + "reference": "2c4f996bb6e5fef49106df0c48d0c1954e10998b", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.3", + "api-platform/state": "^4.3", + "php": ">=8.2", + "symfony/property-access": "^6.4 || ^7.0 || ^8.0", + "symfony/property-info": "^6.4 || ^7.1 || ^8.0", + "symfony/serializer": "^6.4.37 || ^7.4.9 || ^8.0.9", + "symfony/validator": "^6.4.11 || ^7.0 || ^8.0" + }, + "require-dev": { + "api-platform/doctrine-common": "^4.3", + "api-platform/doctrine-odm": "^4.3", + "api-platform/doctrine-orm": "^4.3", + "api-platform/json-schema": "^4.3", + "api-platform/openapi": "^4.3", + "doctrine/collections": "^2.1", + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2", + "sebastian/exporter": "^6.3.2 || ^7.0.2", + "symfony/mercure-bundle": "*", + "symfony/type-info": "^7.3 || ^8.0", + "symfony/var-dumper": "^6.4 || ^7.0 || ^8.0", + "symfony/yaml": "^6.4 || ^7.0 || ^8.0" + }, + "suggest": { + "api-platform/doctrine-odm": "To support Doctrine MongoDB ODM state options.", + "api-platform/doctrine-orm": "To support Doctrine ORM state options." + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Serializer\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "API Platform core Serializer", + "homepage": "https://api-platform.com", + "keywords": [ + "api", + "graphql", + "rest", + "serializer" + ], + "support": { + "source": "https://github.com/api-platform/serializer/tree/v4.3.7" + }, + "time": "2026-05-12T10:07:44+00:00" + }, + { + "name": "api-platform/state", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/state.git", + "reference": "6e3f6d75e605ba7171a7590c82da5126979a936b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/state/zipball/6e3f6d75e605ba7171a7590c82da5126979a936b", + "reference": "6e3f6d75e605ba7171a7590c82da5126979a936b", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.3", + "php": ">=8.2", + "psr/container": "^1.0 || ^2.0", + "symfony/deprecation-contracts": "^3.1", + "symfony/http-kernel": "^6.4.13 || ^7.0 || ^8.0", + "symfony/serializer": "^6.4 || ^7.0 || ^8.0", + "symfony/translation-contracts": "^3.0" + }, + "require-dev": { + "api-platform/serializer": "^4.3", + "api-platform/validator": "^4.3.1", + "phpunit/phpunit": "^11.5 || ^12.2", + "symfony/http-foundation": "^6.4.14 || ^7.0 || ^8.0", + "symfony/object-mapper": "^7.4 || ^8.0", + "symfony/type-info": "^7.4 || ^8.0", + "symfony/web-link": "^6.4 || ^7.1 || ^8.0", + "willdurand/negotiation": "^3.1" + }, + "suggest": { + "api-platform/serializer": "To use API Platform serializer.", + "api-platform/validator": "To use API Platform validation.", + "symfony/http-foundation": "To use our HTTP providers and processor.", + "symfony/web-link": "To support adding web links to the response headers.", + "willdurand/negotiation": "To use the API Platform content negoatiation provider." + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\State\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "API Platform State component ", + "homepage": "https://api-platform.com", + "keywords": [ + "Hydra", + "JSON-LD", + "api", + "graphql", + "hal", + "jsonapi", + "openapi", + "rest", + "swagger" + ], + "support": { + "source": "https://github.com/api-platform/state/tree/v4.3.7" + }, + "time": "2026-05-22T12:02:28+00:00" + }, + { + "name": "api-platform/symfony", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/symfony.git", + "reference": "2660c6a24915b0302243ef30a77f6531b2f846a9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/symfony/zipball/2660c6a24915b0302243ef30a77f6531b2f846a9", + "reference": "2660c6a24915b0302243ef30a77f6531b2f846a9", + "shasum": "" + }, + "require": { + "api-platform/documentation": "^4.3", + "api-platform/http-cache": "^4.3", + "api-platform/hydra": "^4.3", + "api-platform/json-schema": "^4.3", + "api-platform/jsonld": "^4.3", + "api-platform/metadata": "^4.3", + "api-platform/openapi": "^4.3", + "api-platform/serializer": "^4.3", + "api-platform/state": "^4.3", + "api-platform/validator": "^4.3.1", + "php": ">=8.2", + "symfony/asset": "^6.4 || ^7.0 || ^8.0", + "symfony/finder": "^6.4 || ^7.0 || ^8.0", + "symfony/http-kernel": "^6.4.13 || ^7.0 || ^8.0", + "symfony/property-access": "^6.4 || ^7.0 || ^8.0", + "symfony/property-info": "^6.4 || ^7.0 || ^8.0", + "symfony/security-core": "^6.4 || ^7.0 || ^8.0", + "symfony/serializer": "^6.4 || ^7.0 || ^8.0", + "willdurand/negotiation": "^3.1" + }, + "require-dev": { + "api-platform/doctrine-common": "^4.3", + "api-platform/doctrine-odm": "^4.3", + "api-platform/doctrine-orm": "^4.3", + "api-platform/elasticsearch": "^4.3", + "api-platform/graphql": "^4.3", + "api-platform/hal": "^4.3", + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2", + "symfony/expression-language": "^6.4 || ^7.0 || ^8.0", + "symfony/intl": "^6.4 || ^7.0 || ^8.0", + "symfony/mercure-bundle": "*", + "symfony/object-mapper": "^7.0 || ^8.0", + "symfony/routing": "^6.4 || ^7.0 || ^8.0", + "symfony/type-info": "^7.3 || ^8.0", + "symfony/validator": "^6.4.11 || ^7.0 || ^8.0", + "webonyx/graphql-php": "^15.0" + }, + "suggest": { + "api-platform/doctrine-odm": "To support MongoDB. Only versions 4.0 and later are supported.", + "api-platform/doctrine-orm": "To support Doctrine ORM.", + "api-platform/elasticsearch": "To support Elasticsearch.", + "api-platform/graphql": "To support GraphQL.", + "api-platform/hal": "to support the HAL format", + "api-platform/json-api": "to support the JSON-API format", + "api-platform/ramsey-uuid": "To support Ramsey's UUID identifiers.", + "phpstan/phpdoc-parser": "To support extracting metadata from PHPDoc.", + "psr/cache-implementation": "To use metadata caching.", + "symfony/cache": "To have metadata caching when using Symfony integration.", + "symfony/config": "To load XML configuration files.", + "symfony/expression-language": "To use authorization and mercure advanced features.", + "symfony/http-client": "To use the HTTP cache invalidation system.", + "symfony/mercure-bundle": "To support mercure integration.", + "symfony/messenger": "To support messenger integration and asynchronous Mercure updates.", + "symfony/security": "To use authorization features.", + "symfony/twig-bundle": "To use the Swagger UI integration.", + "symfony/uid": "To support Symfony UUID/ULID identifiers.", + "symfony/web-profiler-bundle": "To use the data collector." + }, + "type": "symfony-bundle", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Symfony\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "Symfony API Platform integration", + "homepage": "https://api-platform.com", + "keywords": [ + "Hydra", + "JSON-LD", + "api", + "graphql", + "hal", + "jsonapi", + "openapi", + "rest", + "swagger", + "symfony" + ], + "support": { + "source": "https://github.com/api-platform/symfony/tree/v4.3.7" + }, + "time": "2026-05-29T07:06:36+00:00" + }, + { + "name": "api-platform/validator", + "version": "v4.3.7", + "source": { + "type": "git", + "url": "https://github.com/api-platform/validator.git", + "reference": "6df6804799f8831469d2602d0845a0316e81fbab" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/api-platform/validator/zipball/6df6804799f8831469d2602d0845a0316e81fbab", + "reference": "6df6804799f8831469d2602d0845a0316e81fbab", + "shasum": "" + }, + "require": { + "api-platform/metadata": "^4.3", + "php": ">=8.2", + "symfony/http-kernel": "^6.4.13 || ^7.1 || ^8.0", + "symfony/serializer": "^6.4 || ^7.1 || ^8.0", + "symfony/type-info": "^7.3 || ^8.0", + "symfony/validator": "^6.4.11 || ^7.1 || ^8.0", + "symfony/web-link": "^6.4 || ^7.1 || ^8.0" + }, + "require-dev": { + "phpspec/prophecy-phpunit": "^2.2", + "phpunit/phpunit": "^11.5 || ^12.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/api-platform/api-platform", + "name": "api-platform/api-platform" + }, + "symfony": { + "require": "^6.4 || ^7.0 || ^8.0" + }, + "branch-alias": { + "dev-3.4": "3.4.x-dev", + "dev-4.1": "4.1.x-dev", + "dev-4.2": "4.2.x-dev", + "dev-main": "4.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "ApiPlatform\\Validator\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "kevin@dunglas.fr", + "homepage": "https://dunglas.fr" + }, + { + "name": "API Platform Community", + "homepage": "https://api-platform.com/community/contributors" + } + ], + "description": "API Platform validator component", + "homepage": "https://api-platform.com", + "keywords": [ + "api", + "graphql", + "rest", + "validator" + ], + "support": { + "source": "https://github.com/api-platform/validator/tree/v4.3.7" + }, + "time": "2026-05-07T11:45:31+00:00" + }, + { + "name": "bacon/bacon-qr-code", + "version": "v3.1.1", + "source": { + "type": "git", + "url": "https://github.com/Bacon/BaconQrCode.git", + "reference": "4da2233e72eeecd9be3b62e0dc2cc9ed8e2e31c2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Bacon/BaconQrCode/zipball/4da2233e72eeecd9be3b62e0dc2cc9ed8e2e31c2", + "reference": "4da2233e72eeecd9be3b62e0dc2cc9ed8e2e31c2", + "shasum": "" + }, + "require": { + "dasprid/enum": "^1.0.3", + "ext-iconv": "*", + "php": "^8.1" + }, + "require-dev": { + "phly/keep-a-changelog": "^2.12", + "phpunit/phpunit": "^10.5.11 || ^11.0.4", + "spatie/phpunit-snapshot-assertions": "^5.1.5", + "spatie/pixelmatch-php": "^1.2.0", + "squizlabs/php_codesniffer": "^3.9" + }, + "suggest": { + "ext-imagick": "to generate QR code images" + }, + "type": "library", + "autoload": { + "psr-4": { + "BaconQrCode\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-2-Clause" + ], + "authors": [ + { + "name": "Ben Scholzen 'DASPRiD'", + "email": "mail@dasprids.de", + "homepage": "https://dasprids.de/", + "role": "Developer" + } + ], + "description": "BaconQrCode is a QR code generator for PHP.", + "homepage": "https://github.com/Bacon/BaconQrCode", + "support": { + "issues": "https://github.com/Bacon/BaconQrCode/issues", + "source": "https://github.com/Bacon/BaconQrCode/tree/v3.1.1" + }, + "time": "2026-04-05T21:06:35+00:00" + }, + { + "name": "composer/semver", + "version": "3.4.4", + "source": { + "type": "git", + "url": "https://github.com/composer/semver.git", + "reference": "198166618906cb2de69b95d7d47e5fa8aa1b2b95" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/composer/semver/zipball/198166618906cb2de69b95d7d47e5fa8aa1b2b95", + "reference": "198166618906cb2de69b95d7d47e5fa8aa1b2b95", + "shasum": "" + }, + "require": { + "php": "^5.3.2 || ^7.0 || ^8.0" + }, + "require-dev": { + "phpstan/phpstan": "^1.11", + "symfony/phpunit-bridge": "^3 || ^7" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Composer\\Semver\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nils Adermann", + "email": "naderman@naderman.de", + "homepage": "http://www.naderman.de" + }, + { + "name": "Jordi Boggiano", + "email": "j.boggiano@seld.be", + "homepage": "http://seld.be" + }, + { + "name": "Rob Bast", + "email": "rob.bast@gmail.com", + "homepage": "http://robbast.nl" + } + ], + "description": "Semver library that offers utilities, version constraint parsing and validation.", + "keywords": [ + "semantic", + "semver", + "validation", + "versioning" + ], + "support": { + "irc": "ircs://irc.libera.chat:6697/composer", + "issues": "https://github.com/composer/semver/issues", + "source": "https://github.com/composer/semver/tree/3.4.4" + }, + "funding": [ + { + "url": "https://packagist.com", + "type": "custom" + }, + { + "url": "https://github.com/composer", + "type": "github" + } + ], + "time": "2025-08-20T19:15:30+00:00" + }, + { + "name": "dasprid/enum", + "version": "1.0.7", + "source": { + "type": "git", + "url": "https://github.com/DASPRiD/Enum.git", + "reference": "b5874fa9ed0043116c72162ec7f4fb50e02e7cce" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/DASPRiD/Enum/zipball/b5874fa9ed0043116c72162ec7f4fb50e02e7cce", + "reference": "b5874fa9ed0043116c72162ec7f4fb50e02e7cce", + "shasum": "" + }, + "require": { + "php": ">=7.1 <9.0" + }, + "require-dev": { + "phpunit/phpunit": "^7 || ^8 || ^9 || ^10 || ^11", + "squizlabs/php_codesniffer": "*" + }, + "type": "library", + "autoload": { + "psr-4": { + "DASPRiD\\Enum\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-2-Clause" + ], + "authors": [ + { + "name": "Ben Scholzen 'DASPRiD'", + "email": "mail@dasprids.de", + "homepage": "https://dasprids.de/", + "role": "Developer" + } + ], + "description": "PHP 7.1 enum implementation", + "keywords": [ + "enum", + "map" + ], + "support": { + "issues": "https://github.com/DASPRiD/Enum/issues", + "source": "https://github.com/DASPRiD/Enum/tree/1.0.7" + }, + "time": "2025-09-16T12:23:56+00:00" + }, + { + "name": "doctrine/collections", + "version": "2.6.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/collections.git", + "reference": "7713da39d8e237f28411d6a616a3dce5e20d5de2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/collections/zipball/7713da39d8e237f28411d6a616a3dce5e20d5de2", + "reference": "7713da39d8e237f28411d6a616a3dce5e20d5de2", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1", + "php": "^8.1", + "symfony/polyfill-php84": "^1.30" + }, + "require-dev": { + "doctrine/coding-standard": "^14", + "ext-json": "*", + "phpstan/phpstan": "^2.1.30", + "phpstan/phpstan-phpunit": "^2.0.7", + "phpunit/phpunit": "^10.5.58 || ^11.5.42 || ^12.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Collections\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Collections library that adds additional functionality on top of PHP arrays.", + "homepage": "https://www.doctrine-project.org/projects/collections.html", + "keywords": [ + "array", + "collections", + "iterators", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/collections/issues", + "source": "https://github.com/doctrine/collections/tree/2.6.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcollections", + "type": "tidelift" + } + ], + "time": "2026-01-15T10:01:58+00:00" + }, + { + "name": "doctrine/common", + "version": "3.5.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/common.git", + "reference": "d9ea4a54ca2586db781f0265d36bea731ac66ec5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/common/zipball/d9ea4a54ca2586db781f0265d36bea731ac66ec5", + "reference": "d9ea4a54ca2586db781f0265d36bea731ac66ec5", + "shasum": "" + }, + "require": { + "doctrine/persistence": "^2.0 || ^3.0 || ^4.0", + "php": "^7.1 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^9.0 || ^10.0", + "doctrine/collections": "^1", + "phpstan/phpstan": "^1.4.1", + "phpstan/phpstan-phpunit": "^1", + "phpunit/phpunit": "^7.5.20 || ^8.5 || ^9.0", + "squizlabs/php_codesniffer": "^3.0", + "symfony/phpunit-bridge": "^6.1", + "vimeo/psalm": "^4.4" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "PHP Doctrine Common project is a library that provides additional functionality that other Doctrine projects depend on such as better reflection support, proxies and much more.", + "homepage": "https://www.doctrine-project.org/projects/common.html", + "keywords": [ + "common", + "doctrine", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/common/issues", + "source": "https://github.com/doctrine/common/tree/3.5.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fcommon", + "type": "tidelift" + } + ], + "time": "2025-01-01T22:12:03+00:00" + }, + { + "name": "doctrine/dbal", + "version": "4.4.3", + "source": { + "type": "git", + "url": "https://github.com/doctrine/dbal.git", + "reference": "61e730f1658814821a85f2402c945f3883407dec" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/dbal/zipball/61e730f1658814821a85f2402c945f3883407dec", + "reference": "61e730f1658814821a85f2402c945f3883407dec", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.1.5", + "php": "^8.2", + "psr/cache": "^1|^2|^3", + "psr/log": "^1|^2|^3" + }, + "require-dev": { + "doctrine/coding-standard": "14.0.0", + "fig/log-test": "^1", + "jetbrains/phpstorm-stubs": "2023.2", + "phpstan/phpstan": "2.1.30", + "phpstan/phpstan-phpunit": "2.0.7", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "11.5.50", + "slevomat/coding-standard": "8.27.1", + "squizlabs/php_codesniffer": "4.0.1", + "symfony/cache": "^6.3.8|^7.0|^8.0", + "symfony/console": "^5.4|^6.3|^7.0|^8.0" + }, + "suggest": { + "symfony/console": "For helpful console commands such as SQL execution and import of files." + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\DBAL\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + } + ], + "description": "Powerful PHP database abstraction layer (DBAL) with many features for database schema introspection and management.", + "homepage": "https://www.doctrine-project.org/projects/dbal.html", + "keywords": [ + "abstraction", + "database", + "db2", + "dbal", + "mariadb", + "mssql", + "mysql", + "oci8", + "oracle", + "pdo", + "pgsql", + "postgresql", + "queryobject", + "sasql", + "sql", + "sqlite", + "sqlserver", + "sqlsrv" + ], + "support": { + "issues": "https://github.com/doctrine/dbal/issues", + "source": "https://github.com/doctrine/dbal/tree/4.4.3" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdbal", + "type": "tidelift" + } + ], + "time": "2026-03-20T08:52:12+00:00" + }, + { + "name": "doctrine/deprecations", + "version": "1.1.6", + "source": { + "type": "git", + "url": "https://github.com/doctrine/deprecations.git", + "reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/deprecations/zipball/d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca", + "reference": "d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca", + "shasum": "" + }, + "require": { + "php": "^7.1 || ^8.0" + }, + "conflict": { + "phpunit/phpunit": "<=7.5 || >=14" + }, + "require-dev": { + "doctrine/coding-standard": "^9 || ^12 || ^14", + "phpstan/phpstan": "1.4.10 || 2.1.30", + "phpstan/phpstan-phpunit": "^1.0 || ^2", + "phpunit/phpunit": "^7.5 || ^8.5 || ^9.6 || ^10.5 || ^11.5 || ^12.4 || ^13.0", + "psr/log": "^1 || ^2 || ^3" + }, + "suggest": { + "psr/log": "Allows logging deprecations via PSR-3 logger implementation" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Deprecations\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "A small layer on top of trigger_error(E_USER_DEPRECATED) or PSR-3 logging with options to disable all deprecations or selectively for packages.", + "homepage": "https://www.doctrine-project.org/", + "support": { + "issues": "https://github.com/doctrine/deprecations/issues", + "source": "https://github.com/doctrine/deprecations/tree/1.1.6" + }, + "time": "2026-02-07T07:09:04+00:00" + }, + { + "name": "doctrine/doctrine-bundle", + "version": "3.2.2", + "source": { + "type": "git", + "url": "https://github.com/doctrine/DoctrineBundle.git", + "reference": "af84173db6978c3d2688ea3bcf3a91720b0704ce" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/DoctrineBundle/zipball/af84173db6978c3d2688ea3bcf3a91720b0704ce", + "reference": "af84173db6978c3d2688ea3bcf3a91720b0704ce", + "shasum": "" + }, + "require": { + "doctrine/dbal": "^4.0", + "doctrine/deprecations": "^1.0", + "doctrine/persistence": "^4", + "doctrine/sql-formatter": "^1.0.1", + "php": "^8.4", + "symfony/cache": "^6.4 || ^7.0 || ^8.0", + "symfony/config": "^6.4 || ^7.0 || ^8.0", + "symfony/console": "^6.4 || ^7.0 || ^8.0", + "symfony/dependency-injection": "^6.4 || ^7.0 || ^8.0", + "symfony/doctrine-bridge": "^6.4.3 || ^7.0.3 || ^8.0", + "symfony/framework-bundle": "^6.4 || ^7.0 || ^8.0", + "symfony/service-contracts": "^3" + }, + "conflict": { + "doctrine/orm": "<3.0 || >=4.0", + "twig/twig": "<3.0.4" + }, + "require-dev": { + "doctrine/coding-standard": "^14", + "doctrine/orm": "^3.4.4", + "phpstan/phpstan": "2.1.1", + "phpstan/phpstan-phpunit": "2.0.3", + "phpstan/phpstan-strict-rules": "^2", + "phpstan/phpstan-symfony": "^2.0", + "phpunit/phpunit": "^12.3.10", + "psr/log": "^3.0", + "symfony/doctrine-messenger": "^6.4 || ^7.0 || ^8.0", + "symfony/expression-language": "^6.4 || ^7.0 || ^8.0", + "symfony/messenger": "^6.4 || ^7.0 || ^8.0", + "symfony/property-info": "^6.4 || ^7.0 || ^8.0", + "symfony/security-bundle": "^6.4 || ^7.0 || ^8.0", + "symfony/stopwatch": "^6.4 || ^7.0 || ^8.0", + "symfony/string": "^6.4 || ^7.0 || ^8.0", + "symfony/twig-bridge": "^6.4 || ^7.0 || ^8.0", + "symfony/validator": "^6.4 || ^7.0 || ^8.0", + "symfony/web-profiler-bundle": "^6.4 || ^7.0 || ^8.0", + "symfony/yaml": "^6.4 || ^7.0 || ^8.0", + "twig/twig": "^3.21.1" + }, + "suggest": { + "doctrine/orm": "The Doctrine ORM integration is optional in the bundle.", + "ext-pdo": "*", + "symfony/web-profiler-bundle": "To use the data collector." + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Doctrine\\Bundle\\DoctrineBundle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + }, + { + "name": "Doctrine Project", + "homepage": "https://www.doctrine-project.org/" + } + ], + "description": "Symfony DoctrineBundle", + "homepage": "https://www.doctrine-project.org", + "keywords": [ + "database", + "dbal", + "orm", + "persistence" + ], + "support": { + "issues": "https://github.com/doctrine/DoctrineBundle/issues", + "source": "https://github.com/doctrine/DoctrineBundle/tree/3.2.2" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdoctrine-bundle", + "type": "tidelift" + } + ], + "time": "2025-12-24T12:24:29+00:00" + }, + { + "name": "doctrine/doctrine-migrations-bundle", + "version": "4.0.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/DoctrineMigrationsBundle.git", + "reference": "20505da78735744fb4a42a3bb9a416b345ad6f7c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/DoctrineMigrationsBundle/zipball/20505da78735744fb4a42a3bb9a416b345ad6f7c", + "reference": "20505da78735744fb4a42a3bb9a416b345ad6f7c", + "shasum": "" + }, + "require": { + "doctrine/dbal": "^4", + "doctrine/doctrine-bundle": "^3", + "doctrine/migrations": "^3.2", + "php": "^8.4", + "psr/log": "^3", + "symfony/config": "^6.4 || ^7.0 || ^8.0", + "symfony/console": "^6.4 || ^7.0 || ^8.0", + "symfony/dependency-injection": "^6.4 || ^7.0 || ^8.0", + "symfony/deprecation-contracts": "^3", + "symfony/framework-bundle": "^6.4 || ^7.0 || ^8.0", + "symfony/http-foundation": "^6.4 || ^7.0 || ^8.0", + "symfony/http-kernel": "^6.4 || ^7.0 || ^8.0", + "symfony/service-contracts": "^3.0" + }, + "require-dev": { + "composer/semver": "^3.0", + "doctrine/coding-standard": "^14", + "doctrine/orm": "^3", + "phpstan/phpstan": "^2", + "phpstan/phpstan-deprecation-rules": "^2", + "phpstan/phpstan-phpunit": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpstan/phpstan-symfony": "^2", + "phpunit/phpunit": "^12.5", + "symfony/var-exporter": "^6.4 || ^7 || ^8" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Doctrine\\Bundle\\MigrationsBundle\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Doctrine Project", + "homepage": "https://www.doctrine-project.org" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony DoctrineMigrationsBundle", + "homepage": "https://www.doctrine-project.org", + "keywords": [ + "dbal", + "migrations", + "schema" + ], + "support": { + "issues": "https://github.com/doctrine/DoctrineMigrationsBundle/issues", + "source": "https://github.com/doctrine/DoctrineMigrationsBundle/tree/4.0.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fdoctrine-migrations-bundle", + "type": "tidelift" + } + ], + "time": "2025-12-05T08:14:38+00:00" + }, + { + "name": "doctrine/event-manager", + "version": "2.1.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/event-manager.git", + "reference": "dda33921b198841ca8dbad2eaa5d4d34769d18cf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/event-manager/zipball/dda33921b198841ca8dbad2eaa5d4d34769d18cf", + "reference": "dda33921b198841ca8dbad2eaa5d4d34769d18cf", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "conflict": { + "doctrine/common": "<2.9" + }, + "require-dev": { + "doctrine/coding-standard": "^14", + "phpdocumentor/guides-cli": "^1.4", + "phpstan/phpstan": "^2.1.32", + "phpunit/phpunit": "^10.5.58" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "The Doctrine Event Manager is a simple PHP event system that was built to be used with the various Doctrine projects.", + "homepage": "https://www.doctrine-project.org/projects/event-manager.html", + "keywords": [ + "event", + "event dispatcher", + "event manager", + "event system", + "events" + ], + "support": { + "issues": "https://github.com/doctrine/event-manager/issues", + "source": "https://github.com/doctrine/event-manager/tree/2.1.1" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fevent-manager", + "type": "tidelift" + } + ], + "time": "2026-01-29T07:11:08+00:00" + }, + { + "name": "doctrine/inflector", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/inflector.git", + "reference": "6d6c96277ea252fc1304627204c3d5e6e15faa3b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/inflector/zipball/6d6c96277ea252fc1304627204c3d5e6e15faa3b", + "reference": "6d6c96277ea252fc1304627204c3d5e6e15faa3b", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^12.0 || ^13.0", + "phpstan/phpstan": "^1.12 || ^2.0", + "phpstan/phpstan-phpunit": "^1.4 || ^2.0", + "phpstan/phpstan-strict-rules": "^1.6 || ^2.0", + "phpunit/phpunit": "^8.5 || ^12.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Inflector\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Inflector is a small library that can perform string manipulations with regard to upper/lowercase and singular/plural forms of words.", + "homepage": "https://www.doctrine-project.org/projects/inflector.html", + "keywords": [ + "inflection", + "inflector", + "lowercase", + "manipulation", + "php", + "plural", + "singular", + "strings", + "uppercase", + "words" + ], + "support": { + "issues": "https://github.com/doctrine/inflector/issues", + "source": "https://github.com/doctrine/inflector/tree/2.1.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finflector", + "type": "tidelift" + } + ], + "time": "2025-08-10T19:31:58+00:00" + }, + { + "name": "doctrine/instantiator", + "version": "2.1.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/instantiator.git", + "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/23da848e1a2308728fe5fdddabf4be17ff9720c7", + "reference": "23da848e1a2308728fe5fdddabf4be17ff9720c7", + "shasum": "" + }, + "require": { + "php": "^8.4" + }, + "require-dev": { + "doctrine/coding-standard": "^14", + "ext-pdo": "*", + "ext-phar": "*", + "phpbench/phpbench": "^1.2", + "phpstan/phpstan": "^2.1", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^10.5.58" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com", + "homepage": "https://ocramius.github.io/" + } + ], + "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", + "homepage": "https://www.doctrine-project.org/projects/instantiator.html", + "keywords": [ + "constructor", + "instantiate" + ], + "support": { + "issues": "https://github.com/doctrine/instantiator/issues", + "source": "https://github.com/doctrine/instantiator/tree/2.1.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" + } + ], + "time": "2026-01-05T06:47:08+00:00" + }, + { + "name": "doctrine/lexer", + "version": "3.0.1", + "source": { + "type": "git", + "url": "https://github.com/doctrine/lexer.git", + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/lexer/zipball/31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "reference": "31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "doctrine/coding-standard": "^12", + "phpstan/phpstan": "^1.10", + "phpunit/phpunit": "^10.5", + "psalm/plugin-phpunit": "^0.18.3", + "vimeo/psalm": "^5.21" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Common\\Lexer\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + } + ], + "description": "PHP Doctrine Lexer parser library that can be used in Top-Down, Recursive Descent Parsers.", + "homepage": "https://www.doctrine-project.org/projects/lexer.html", + "keywords": [ + "annotations", + "docblock", + "lexer", + "parser", + "php" + ], + "support": { + "issues": "https://github.com/doctrine/lexer/issues", + "source": "https://github.com/doctrine/lexer/tree/3.0.1" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Flexer", + "type": "tidelift" + } + ], + "time": "2024-02-05T11:56:58+00:00" + }, + { + "name": "doctrine/migrations", + "version": "3.9.7", + "source": { + "type": "git", + "url": "https://github.com/doctrine/migrations.git", + "reference": "96cb2a89b56c9efb0bac38e606dc0b0f13e650ec" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/migrations/zipball/96cb2a89b56c9efb0bac38e606dc0b0f13e650ec", + "reference": "96cb2a89b56c9efb0bac38e606dc0b0f13e650ec", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2", + "doctrine/dbal": "^3.6 || ^4", + "doctrine/deprecations": "^0.5.3 || ^1", + "doctrine/event-manager": "^1.2 || ^2.0", + "php": "^8.1", + "psr/log": "^1.1.3 || ^2 || ^3", + "symfony/console": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/stopwatch": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/var-exporter": "^6.2 || ^7.0 || ^8.0" + }, + "conflict": { + "doctrine/orm": "<2.12 || >=4" + }, + "require-dev": { + "doctrine/coding-standard": "^14", + "doctrine/orm": "^2.13 || ^3", + "doctrine/persistence": "^2 || ^3 || ^4", + "doctrine/sql-formatter": "^1.0", + "ext-pdo_sqlite": "*", + "fig/log-test": "^1", + "phpstan/phpstan": "^2", + "phpstan/phpstan-deprecation-rules": "^2", + "phpstan/phpstan-phpunit": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpstan/phpstan-symfony": "^2", + "phpunit/phpunit": "^10.3 || ^11.0 || ^12.0", + "symfony/cache": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/process": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/yaml": "^5.4 || ^6.0 || ^7.0 || ^8.0" + }, + "suggest": { + "doctrine/sql-formatter": "Allows to generate formatted SQL with the diff command.", + "symfony/yaml": "Allows the use of yaml for migration configuration files." + }, + "bin": [ + "bin/doctrine-migrations" + ], + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Migrations\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Michael Simonson", + "email": "contact@mikesimonson.com" + } + ], + "description": "PHP Doctrine Migrations project offer additional functionality on top of the database abstraction layer (DBAL) for versioning your database schema and easily deploying changes to it. It is a very easy to use and a powerful tool.", + "homepage": "https://www.doctrine-project.org/projects/migrations.html", + "keywords": [ + "database", + "dbal", + "migrations" + ], + "support": { + "issues": "https://github.com/doctrine/migrations/issues", + "source": "https://github.com/doctrine/migrations/tree/3.9.7" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fmigrations", + "type": "tidelift" + } + ], + "time": "2026-04-23T19:33:20+00:00" + }, + { + "name": "doctrine/orm", + "version": "3.6.7", + "source": { + "type": "git", + "url": "https://github.com/doctrine/orm.git", + "reference": "bc217c0e19c3a9eadfa67697143b87c9ba01272c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/orm/zipball/bc217c0e19c3a9eadfa67697143b87c9ba01272c", + "reference": "bc217c0e19c3a9eadfa67697143b87c9ba01272c", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2", + "doctrine/collections": "^2.2", + "doctrine/dbal": "^3.8.2 || ^4", + "doctrine/deprecations": "^0.5.3 || ^1", + "doctrine/event-manager": "^1.2 || ^2", + "doctrine/inflector": "^1.4 || ^2.0", + "doctrine/instantiator": "^1.3 || ^2", + "doctrine/lexer": "^3", + "doctrine/persistence": "^3.3.1 || ^4", + "ext-ctype": "*", + "php": "^8.1", + "psr/cache": "^1 || ^2 || ^3", + "symfony/console": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/var-exporter": "^6.3.9 || ^7.0 || ^8.0" + }, + "require-dev": { + "doctrine/coding-standard": "^14.0", + "phpbench/phpbench": "^1.0", + "phpstan/extension-installer": "^1.4", + "phpstan/phpstan": "2.1.23", + "phpstan/phpstan-deprecation-rules": "^2", + "phpunit/phpunit": "^10.5.0 || ^11.5", + "psr/log": "^1 || ^2 || ^3", + "symfony/cache": "^5.4 || ^6.2 || ^7.0 || ^8.0" + }, + "suggest": { + "ext-dom": "Provides support for XSD validation for XML mapping files", + "symfony/cache": "Provides cache support for Setup Tool with doctrine/cache 2.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\ORM\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "Object-Relational-Mapper for PHP", + "homepage": "https://www.doctrine-project.org/projects/orm.html", + "keywords": [ + "database", + "orm" + ], + "support": { + "issues": "https://github.com/doctrine/orm/issues", + "source": "https://github.com/doctrine/orm/tree/3.6.7" + }, + "time": "2026-05-25T16:45:47+00:00" + }, + { + "name": "doctrine/persistence", + "version": "4.2.0", + "source": { + "type": "git", + "url": "https://github.com/doctrine/persistence.git", + "reference": "49ab73e0d3e2ac8d1f5ecda3dd8acd5503781e8b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/persistence/zipball/49ab73e0d3e2ac8d1f5ecda3dd8acd5503781e8b", + "reference": "49ab73e0d3e2ac8d1f5ecda3dd8acd5503781e8b", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1", + "doctrine/event-manager": "^1 || ^2", + "php": "^8.1", + "psr/cache": "^1.0 || ^2.0 || ^3.0" + }, + "require-dev": { + "doctrine/coding-standard": "^14", + "phpstan/phpstan": "2.1.30", + "phpstan/phpstan-phpunit": "^2", + "phpstan/phpstan-strict-rules": "^2", + "phpunit/phpunit": "^10.5.58 || ^12", + "symfony/cache": "^4.4 || ^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/finder": "^4.4 || ^5.4 || ^6.0 || ^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\Persistence\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Guilherme Blanco", + "email": "guilhermeblanco@gmail.com" + }, + { + "name": "Roman Borschel", + "email": "roman@code-factory.org" + }, + { + "name": "Benjamin Eberlei", + "email": "kontakt@beberlei.de" + }, + { + "name": "Jonathan Wage", + "email": "jonwage@gmail.com" + }, + { + "name": "Johannes Schmitt", + "email": "schmittjoh@gmail.com" + }, + { + "name": "Marco Pivetta", + "email": "ocramius@gmail.com" + } + ], + "description": "The Doctrine Persistence project is a set of shared interfaces and functionality that the different Doctrine object mappers share.", + "homepage": "https://www.doctrine-project.org/projects/persistence.html", + "keywords": [ + "mapper", + "object", + "odm", + "orm", + "persistence" + ], + "support": { + "issues": "https://github.com/doctrine/persistence/issues", + "source": "https://github.com/doctrine/persistence/tree/4.2.0" + }, + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Fpersistence", + "type": "tidelift" + } + ], + "time": "2026-04-26T12:12:52+00:00" + }, + { + "name": "doctrine/sql-formatter", + "version": "1.5.4", + "source": { + "type": "git", + "url": "https://github.com/doctrine/sql-formatter.git", + "reference": "9563949f5cd3bd12a17d12fb980528bc141c5806" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/doctrine/sql-formatter/zipball/9563949f5cd3bd12a17d12fb980528bc141c5806", + "reference": "9563949f5cd3bd12a17d12fb980528bc141c5806", + "shasum": "" + }, + "require": { + "php": "^8.1" + }, + "require-dev": { + "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" + ], + "type": "library", + "autoload": { + "psr-4": { + "Doctrine\\SqlFormatter\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jeremy Dorn", + "email": "jeremy@jeremydorn.com", + "homepage": "https://jeremydorn.com/" + } + ], + "description": "a PHP SQL highlighting library", + "homepage": "https://github.com/doctrine/sql-formatter/", + "keywords": [ + "highlight", + "sql" + ], + "support": { + "issues": "https://github.com/doctrine/sql-formatter/issues", + "source": "https://github.com/doctrine/sql-formatter/tree/1.5.4" + }, + "time": "2026-02-08T16:21:46+00:00" + }, + { + "name": "endroid/qr-code", + "version": "6.1.3", + "source": { + "type": "git", + "url": "https://github.com/endroid/qr-code.git", + "reference": "5fa534856ed95649d67c0eab0cabc03ab1d8e0e2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/endroid/qr-code/zipball/5fa534856ed95649d67c0eab0cabc03ab1d8e0e2", + "reference": "5fa534856ed95649d67c0eab0cabc03ab1d8e0e2", + "shasum": "" + }, + "require": { + "bacon/bacon-qr-code": "^3.0", + "php": "^8.4" + }, + "require-dev": { + "endroid/quality": "dev-main", + "ext-gd": "*", + "khanamiryan/qrcode-detector-decoder": "^2.0.3", + "setasign/fpdf": "^1.8.2" + }, + "suggest": { + "ext-gd": "Enables you to write PNG images", + "khanamiryan/qrcode-detector-decoder": "Enables you to use the image validator", + "roave/security-advisories": "Makes sure package versions with known security issues are not installed", + "setasign/fpdf": "Enables you to use the PDF writer" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-main": "6.x-dev" + } + }, + "autoload": { + "psr-4": { + "Endroid\\QrCode\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jeroen van den Enden", + "email": "info@endroid.nl" + } + ], + "description": "Endroid QR Code", + "homepage": "https://github.com/endroid/qr-code", + "keywords": [ + "code", + "endroid", + "php", + "qr", + "qrcode" + ], + "support": { + "issues": "https://github.com/endroid/qr-code/issues", + "source": "https://github.com/endroid/qr-code/tree/6.1.3" + }, + "funding": [ + { + "url": "https://github.com/endroid", + "type": "github" + } + ], + "time": "2026-02-05T07:01:58+00:00" + }, + { + "name": "lcobucci/jwt", + "version": "5.6.0", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "bb3e9f21e4196e8afc41def81ef649c164bca25e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/bb3e9f21e4196e8afc41def81ef649c164bca25e", + "reference": "bb3e9f21e4196e8afc41def81ef649c164bca25e", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "ext-sodium": "*", + "php": "~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0", + "psr/clock": "^1.0" + }, + "require-dev": { + "infection/infection": "^0.29", + "lcobucci/clock": "^3.2", + "lcobucci/coding-standard": "^11.0", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.2", + "phpstan/phpstan": "^1.10.7", + "phpstan/phpstan-deprecation-rules": "^1.1.3", + "phpstan/phpstan-phpunit": "^1.3.10", + "phpstan/phpstan-strict-rules": "^1.5.0", + "phpunit/phpunit": "^11.1" + }, + "suggest": { + "lcobucci/clock": ">= 3.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Lcobucci\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Luís Cobucci", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "keywords": [ + "JWS", + "jwt" + ], + "support": { + "issues": "https://github.com/lcobucci/jwt/issues", + "source": "https://github.com/lcobucci/jwt/tree/5.6.0" + }, + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } + ], + "time": "2025-10-17T11:30:53+00:00" + }, + { + "name": "lexik/jwt-authentication-bundle", + "version": "v3.2.0", + "source": { + "type": "git", + "url": "https://github.com/lexik/LexikJWTAuthenticationBundle.git", + "reference": "60df75dc70ee6f597929cb2f0812adda591dfa4b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lexik/LexikJWTAuthenticationBundle/zipball/60df75dc70ee6f597929cb2f0812adda591dfa4b", + "reference": "60df75dc70ee6f597929cb2f0812adda591dfa4b", + "shasum": "" + }, + "require": { + "ext-openssl": "*", + "lcobucci/jwt": "^5.0", + "php": ">=8.2", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/deprecation-contracts": "^2.4|^3.0", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/security-bundle": "^6.4|^7.0|^8.0", + "symfony/translation-contracts": "^1.0|^2.0|^3.0" + }, + "require-dev": { + "api-platform/core": "^3.0|^4.0", + "rector/rector": "^1.2", + "symfony/browser-kit": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dom-crawler": "^6.4|^7.0|^8.0", + "symfony/filesystem": "^6.4|^7.0|^8.0", + "symfony/framework-bundle": "^6.4|^7.0|^8.0", + "symfony/phpunit-bridge": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0" + }, + "suggest": { + "gesdinet/jwt-refresh-token-bundle": "Implements a refresh token system over Json Web Tokens in Symfony", + "spomky-labs/lexik-jose-bridge": "Provides a JWT Token encoder with encryption support" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Lexik\\Bundle\\JWTAuthenticationBundle\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jeremy Barthe", + "email": "j.barthe@lexik.fr", + "homepage": "https://github.com/jeremyb" + }, + { + "name": "Nicolas Cabot", + "email": "n.cabot@lexik.fr", + "homepage": "https://github.com/slashfan" + }, + { + "name": "Cedric Girard", + "email": "c.girard@lexik.fr", + "homepage": "https://github.com/cedric-g" + }, + { + "name": "Dev Lexik", + "email": "dev@lexik.fr", + "homepage": "https://github.com/lexik" + }, + { + "name": "Robin Chalas", + "email": "robin.chalas@gmail.com", + "homepage": "https://github.com/chalasr" + }, + { + "name": "Lexik Community", + "homepage": "https://github.com/lexik/LexikJWTAuthenticationBundle/graphs/contributors" + } + ], + "description": "This bundle provides JWT authentication for your Symfony REST API", + "homepage": "https://github.com/lexik/LexikJWTAuthenticationBundle", + "keywords": [ + "Authentication", + "JWS", + "api", + "bundle", + "jwt", + "rest", + "symfony" + ], + "support": { + "issues": "https://github.com/lexik/LexikJWTAuthenticationBundle/issues", + "source": "https://github.com/lexik/LexikJWTAuthenticationBundle/tree/v3.2.0" + }, + "funding": [ + { + "url": "https://github.com/chalasr", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/lexik/jwt-authentication-bundle", + "type": "tidelift" + } + ], + "time": "2025-12-20T17:47:00+00:00" + }, + { + "name": "nelmio/cors-bundle", + "version": "2.6.1", + "source": { + "type": "git", + "url": "https://github.com/nelmio/NelmioCorsBundle.git", + "reference": "3d80dbcd5d1eb5f8b20ed5199e1778d44c2e4d1c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nelmio/NelmioCorsBundle/zipball/3d80dbcd5d1eb5f8b20ed5199e1778d44c2e4d1c", + "reference": "3d80dbcd5d1eb5f8b20ed5199e1778d44c2e4d1c", + "shasum": "" + }, + "require": { + "psr/log": "^1.0 || ^2.0 || ^3.0", + "symfony/framework-bundle": "^5.4 || ^6.0 || ^7.0 || ^8.0" + }, + "require-dev": { + "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": { + "branch-alias": { + "dev-master": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "Nelmio\\CorsBundle\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nelmio", + "homepage": "http://nelm.io" + }, + { + "name": "Symfony Community", + "homepage": "https://github.com/nelmio/NelmioCorsBundle/contributors" + } + ], + "description": "Adds CORS (Cross-Origin Resource Sharing) headers support in your Symfony application", + "keywords": [ + "api", + "cors", + "crossdomain" + ], + "support": { + "issues": "https://github.com/nelmio/NelmioCorsBundle/issues", + "source": "https://github.com/nelmio/NelmioCorsBundle/tree/2.6.1" + }, + "time": "2026-01-12T15:59:08+00:00" + }, + { + "name": "phpdocumentor/reflection-common", + "version": "2.2.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionCommon.git", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b", + "shasum": "" + }, + "require": { + "php": "^7.2 || ^8.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-2.x": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "Common reflection classes used by phpdocumentor to reflect the code structure", + "homepage": "http://www.phpdoc.org", + "keywords": [ + "FQSEN", + "phpDocumentor", + "phpdoc", + "reflection", + "static analysis" + ], + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionCommon/issues", + "source": "https://github.com/phpDocumentor/ReflectionCommon/tree/2.x" + }, + "time": "2020-06-27T09:03:43+00:00" + }, + { + "name": "phpdocumentor/reflection-docblock", + "version": "6.0.3", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git", + "reference": "7bae67520aa9f5ecc506d646810bd40d9da54582" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/7bae67520aa9f5ecc506d646810bd40d9da54582", + "reference": "7bae67520aa9f5ecc506d646810bd40d9da54582", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.1", + "ext-filter": "*", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.2", + "phpdocumentor/type-resolver": "^2.0", + "phpstan/phpdoc-parser": "^2.0", + "webmozart/assert": "^1.9.1 || ^2" + }, + "require-dev": { + "mockery/mockery": "~1.3.5 || ~1.6.0", + "phpstan/extension-installer": "^1.1", + "phpstan/phpstan": "^1.8", + "phpstan/phpstan-mockery": "^1.1", + "phpstan/phpstan-webmozart-assert": "^1.2", + "phpunit/phpunit": "^9.5", + "psalm/phar": "^5.26", + "shipmonk/dead-code-detector": "^0.5.1" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + }, + { + "name": "Jaap van Otterdijk", + "email": "opensource@ijaap.nl" + } + ], + "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.", + "support": { + "issues": "https://github.com/phpDocumentor/ReflectionDocBlock/issues", + "source": "https://github.com/phpDocumentor/ReflectionDocBlock/tree/6.0.3" + }, + "time": "2026-03-18T20:49:53+00:00" + }, + { + "name": "phpdocumentor/type-resolver", + "version": "2.0.0", + "source": { + "type": "git", + "url": "https://github.com/phpDocumentor/TypeResolver.git", + "reference": "327a05bbee54120d4786a0dc67aad30226ad4cf9" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/327a05bbee54120d4786a0dc67aad30226ad4cf9", + "reference": "327a05bbee54120d4786a0dc67aad30226ad4cf9", + "shasum": "" + }, + "require": { + "doctrine/deprecations": "^1.0", + "php": "^7.4 || ^8.0", + "phpdocumentor/reflection-common": "^2.0", + "phpstan/phpdoc-parser": "^2.0" + }, + "require-dev": { + "ext-tokenizer": "*", + "phpbench/phpbench": "^1.2", + "phpstan/extension-installer": "^1.4", + "phpstan/phpstan": "^2.1", + "phpstan/phpstan-phpunit": "^2.0", + "phpunit/phpunit": "^9.5", + "psalm/phar": "^4" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-1.x": "1.x-dev", + "dev-2.x": "2.x-dev" + } + }, + "autoload": { + "psr-4": { + "phpDocumentor\\Reflection\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mike van Riel", + "email": "me@mikevanriel.com" + } + ], + "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names", + "support": { + "issues": "https://github.com/phpDocumentor/TypeResolver/issues", + "source": "https://github.com/phpDocumentor/TypeResolver/tree/2.0.0" + }, + "time": "2026-01-06T21:53:42+00:00" + }, + { + "name": "phpstan/phpdoc-parser", + "version": "2.3.2", + "source": { + "type": "git", + "url": "https://github.com/phpstan/phpdoc-parser.git", + "reference": "a004701b11273a26cd7955a61d67a7f1e525a45a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/a004701b11273a26cd7955a61d67a7f1e525a45a", + "reference": "a004701b11273a26cd7955a61d67a7f1e525a45a", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0" + }, + "require-dev": { + "doctrine/annotations": "^2.0", + "nikic/php-parser": "^5.3.0", + "php-parallel-lint/php-parallel-lint": "^1.2", + "phpstan/extension-installer": "^1.0", + "phpstan/phpstan": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^9.6", + "symfony/process": "^5.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "PHPStan\\PhpDocParser\\": [ + "src/" + ] + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "PHPDoc parser with support for nullable, intersection and generic types", + "support": { + "issues": "https://github.com/phpstan/phpdoc-parser/issues", + "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.2" + }, + "time": "2026-01-25T14:56:51+00:00" + }, + { + "name": "psr/cache", + "version": "3.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/cache.git", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "reference": "aa5030cfa5405eccfdcb1083ce040c2cb8d253bf", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Cache\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for caching libraries", + "keywords": [ + "cache", + "psr", + "psr-6" + ], + "support": { + "source": "https://github.com/php-fig/cache/tree/3.0.0" + }, + "time": "2021-02-03T23:26:27+00:00" + }, + { + "name": "psr/clock", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/clock.git", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "reference": "e41a24703d4560fd0acb709162f73b8adfc3aa0d", + "shasum": "" + }, + "require": { + "php": "^7.0 || ^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Psr\\Clock\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for reading the clock.", + "homepage": "https://github.com/php-fig/clock", + "keywords": [ + "clock", + "now", + "psr", + "psr-20", + "time" + ], + "support": { + "issues": "https://github.com/php-fig/clock/issues", + "source": "https://github.com/php-fig/clock/tree/1.0.0" + }, + "time": "2022-11-25T14:36:26+00:00" + }, + { + "name": "psr/container", + "version": "2.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/container.git", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "reference": "c71ecc56dfe541dbd90c5360474fbc405f8d5963", + "shasum": "" + }, + "require": { + "php": ">=7.4.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Container\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common Container Interface (PHP FIG PSR-11)", + "homepage": "https://github.com/php-fig/container", + "keywords": [ + "PSR-11", + "container", + "container-interface", + "container-interop", + "psr" + ], + "support": { + "issues": "https://github.com/php-fig/container/issues", + "source": "https://github.com/php-fig/container/tree/2.0.2" + }, + "time": "2021-11-05T16:47:00+00:00" + }, + { + "name": "psr/event-dispatcher", + "version": "1.0.0", + "source": { + "type": "git", + "url": "https://github.com/php-fig/event-dispatcher.git", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0", + "reference": "dbefd12671e8a14ec7f180cab83036ed26714bb0", + "shasum": "" + }, + "require": { + "php": ">=7.2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\EventDispatcher\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Standard interfaces for event handling.", + "keywords": [ + "events", + "psr", + "psr-14" + ], + "support": { + "issues": "https://github.com/php-fig/event-dispatcher/issues", + "source": "https://github.com/php-fig/event-dispatcher/tree/1.0.0" + }, + "time": "2019-01-08T18:20:26+00:00" + }, + { + "name": "psr/link", + "version": "2.0.1", + "source": { + "type": "git", + "url": "https://github.com/php-fig/link.git", + "reference": "84b159194ecfd7eaa472280213976e96415433f7" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/link/zipball/84b159194ecfd7eaa472280213976e96415433f7", + "reference": "84b159194ecfd7eaa472280213976e96415433f7", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "suggest": { + "fig/link-util": "Provides some useful PSR-13 utilities" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Link\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "http://www.php-fig.org/" + } + ], + "description": "Common interfaces for HTTP links", + "homepage": "https://github.com/php-fig/link", + "keywords": [ + "http", + "http-link", + "link", + "psr", + "psr-13", + "rest" + ], + "support": { + "source": "https://github.com/php-fig/link/tree/2.0.1" + }, + "time": "2021-03-11T23:00:27+00:00" + }, + { + "name": "psr/log", + "version": "3.0.2", + "source": { + "type": "git", + "url": "https://github.com/php-fig/log.git", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "reference": "f16e1d5863e37f8d8c2a01719f5b34baa2b714d3", + "shasum": "" + }, + "require": { + "php": ">=8.0.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.x-dev" + } + }, + "autoload": { + "psr-4": { + "Psr\\Log\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "PHP-FIG", + "homepage": "https://www.php-fig.org/" + } + ], + "description": "Common interface for logging libraries", + "homepage": "https://github.com/php-fig/log", + "keywords": [ + "log", + "psr", + "psr-3" + ], + "support": { + "source": "https://github.com/php-fig/log/tree/3.0.2" + }, + "time": "2024-09-11T13:17:53+00:00" + }, + { + "name": "symfony/asset", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/asset.git", + "reference": "d2e2f014ccd6ec9fae8dbe6336a4164346a2a856" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/asset/zipball/d2e2f014ccd6ec9fae8dbe6336a4164346a2a856", + "reference": "d2e2f014ccd6ec9fae8dbe6336a4164346a2a856", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "conflict": { + "symfony/http-foundation": "<6.4" + }, + "require-dev": { + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Asset\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Manages URL generation and versioning of web assets such as CSS stylesheets, JavaScript files and image files", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/asset/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/cache", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/cache.git", + "reference": "4c09e18a92cce126cc0d1155825279fca8cd0673" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/cache/zipball/4c09e18a92cce126cc0d1155825279fca8cd0673", + "reference": "4c09e18a92cce126cc0d1155825279fca8cd0673", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/cache": "^2.0|^3.0", + "psr/log": "^1.1|^2|^3", + "symfony/cache-contracts": "^3.6", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/service-contracts": "^2.5|^3", + "symfony/var-exporter": "^6.4|^7.0|^8.0" + }, + "conflict": { + "doctrine/dbal": "<3.6", + "ext-redis": "<6.1", + "ext-relay": "<0.12.1", + "symfony/dependency-injection": "<6.4", + "symfony/http-kernel": "<6.4", + "symfony/var-dumper": "<6.4" + }, + "provide": { + "psr/cache-implementation": "2.0|3.0", + "psr/simple-cache-implementation": "1.0|2.0|3.0", + "symfony/cache-implementation": "1.1|2.0|3.0" + }, + "require-dev": { + "cache/integration-tests": "dev-master", + "doctrine/dbal": "^3.6|^4", + "predis/predis": "^1.1|^2.0", + "psr/simple-cache": "^1.0|^2.0|^3.0", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/filesystem": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/messenger": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Cache\\": "" + }, + "classmap": [ + "Traits/ValueWrapper.php" + ], + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides extended PSR-6, PSR-16 (and tags) implementations", + "homepage": "https://symfony.com", + "keywords": [ + "caching", + "psr6" + ], + "support": { + "source": "https://github.com/symfony/cache/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-24T08:43:14+00:00" + }, + { + "name": "symfony/cache-contracts", + "version": "v3.7.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/cache-contracts.git", + "reference": "225e8a254166bd3442e370c6f50145465db63831" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/cache-contracts/zipball/225e8a254166bd3442e370c6f50145465db63831", + "reference": "225e8a254166bd3442e370c6f50145465db63831", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/cache": "^3.0" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Cache\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to caching", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/cache-contracts/tree/v3.7.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-05T15:33:14+00:00" + }, + { + "name": "symfony/clock", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/clock.git", + "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/clock/zipball/674fa3b98e21531dd040e613479f5f6fa8f32111", + "reference": "674fa3b98e21531dd040e613479f5f6fa8f32111", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/clock": "^1.0", + "symfony/polyfill-php83": "^1.28" + }, + "provide": { + "psr/clock-implementation": "1.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/now.php" + ], + "psr-4": { + "Symfony\\Component\\Clock\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Decouples applications from the system clock", + "homepage": "https://symfony.com", + "keywords": [ + "clock", + "psr20", + "time" + ], + "support": { + "source": "https://github.com/symfony/clock/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/config", + "version": "v7.4.10", + "source": { + "type": "git", + "url": "https://github.com/symfony/config.git", + "reference": "d91b6c7cd2a8c9a9c2b8d26c8f5ed48edf99ef57" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/config/zipball/d91b6c7cd2a8c9a9c2b8d26c8f5ed48edf99ef57", + "reference": "d91b6c7cd2a8c9a9c2b8d26c8f5ed48edf99ef57", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/filesystem": "^7.1|^8.0", + "symfony/polyfill-ctype": "~1.8" + }, + "conflict": { + "symfony/finder": "<6.4", + "symfony/service-contracts": "<2.5" + }, + "require-dev": { + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", + "symfony/messenger": "^6.4|^7.0|^8.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/yaml": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Config\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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.4.10" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-03T14:20:49+00:00" + }, + { + "name": "symfony/console", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/console.git", + "reference": "85095d2573eaefaf35e40b9513a9bf09f72cd217" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/console/zipball/85095d2573eaefaf35e40b9513a9bf09f72cd217", + "reference": "85095d2573eaefaf35e40b9513a9bf09f72cd217", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/string": "^7.2|^8.0" + }, + "conflict": { + "symfony/dependency-injection": "<6.4", + "symfony/dotenv": "<6.4", + "symfony/event-dispatcher": "<6.4", + "symfony/lock": "<6.4", + "symfony/process": "<6.4" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/lock": "^6.4|^7.0|^8.0", + "symfony/messenger": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Console\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Eases the creation of beautiful and testable command line interfaces", + "homepage": "https://symfony.com", + "keywords": [ + "cli", + "command-line", + "console", + "terminal" + ], + "support": { + "source": "https://github.com/symfony/console/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-24T08:56:14+00:00" + }, + { + "name": "symfony/dependency-injection", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/dependency-injection.git", + "reference": "f299e20ce983be6c0744952533c6dfeaaa1448e2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/f299e20ce983be6c0744952533c6dfeaaa1448e2", + "reference": "f299e20ce983be6c0744952533c6dfeaaa1448e2", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/service-contracts": "^3.6", + "symfony/var-exporter": "^6.4.20|^7.2.5|^8.0" + }, + "conflict": { + "ext-psr": "<1.1|>=2", + "symfony/config": "<6.4", + "symfony/finder": "<6.4", + "symfony/yaml": "<6.4" + }, + "provide": { + "psr/container-implementation": "1.1|2.0", + "symfony/service-implementation": "1.1|2.0|3.0" + }, + "require-dev": { + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\DependencyInjection\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-20T14:07:29+00:00" + }, + { + "name": "symfony/deprecation-contracts", + "version": "v3.7.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/deprecation-contracts.git", + "reference": "50f59d1f3ca46d41ac911f97a78626b6756af35b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/50f59d1f3ca46d41ac911f97a78626b6756af35b", + "reference": "50f59d1f3ca46d41ac911f97a78626b6756af35b", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.7-dev" + } + }, + "autoload": { + "files": [ + "function.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "A generic function and convention to trigger deprecation notices", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/deprecation-contracts/tree/v3.7.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-13T15:52:40+00:00" + }, + { + "name": "symfony/doctrine-bridge", + "version": "v7.4.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/doctrine-bridge.git", + "reference": "7a87c85853f3069e3657a823c62b02952de46b0a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/doctrine-bridge/zipball/7a87c85853f3069e3657a823c62b02952de46b0a", + "reference": "7a87c85853f3069e3657a823c62b02952de46b0a", + "shasum": "" + }, + "require": { + "doctrine/event-manager": "^2", + "doctrine/persistence": "^3.1|^4", + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "doctrine/collections": "<1.8", + "doctrine/dbal": "<3.6", + "doctrine/lexer": "<1.1", + "doctrine/orm": "<2.15", + "symfony/cache": "<6.4", + "symfony/dependency-injection": "<6.4", + "symfony/form": "<6.4.6|>=7,<7.0.6", + "symfony/http-foundation": "<6.4", + "symfony/http-kernel": "<6.4", + "symfony/lock": "<6.4", + "symfony/messenger": "<6.4", + "symfony/property-info": "<6.4", + "symfony/security-bundle": "<6.4", + "symfony/security-core": "<6.4", + "symfony/validator": "<7.4" + }, + "require-dev": { + "doctrine/collections": "^1.8|^2.0", + "doctrine/data-fixtures": "^1.1|^2", + "doctrine/dbal": "^3.6|^4", + "doctrine/orm": "^2.15|^3", + "psr/log": "^1|^2|^3", + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/doctrine-messenger": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/form": "^7.2|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/lock": "^6.4|^7.0|^8.0", + "symfony/messenger": "^6.4|^7.0|^8.0", + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/property-info": "^6.4|^7.0|^8.0", + "symfony/security-core": "^6.4|^7.0|^8.0", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4|^7.0|^8.0", + "symfony/type-info": "^7.1.8|^8.0", + "symfony/uid": "^6.4|^7.0|^8.0", + "symfony/validator": "^7.4|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0" + }, + "type": "symfony-bridge", + "autoload": { + "psr-4": { + "Symfony\\Bridge\\Doctrine\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides integration for Doctrine with various Symfony components", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/doctrine-bridge/tree/v7.4.9" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-29T14:19:39+00:00" + }, + { + "name": "symfony/dotenv", + "version": "v7.4.11", + "source": { + "type": "git", + "url": "https://github.com/symfony/dotenv.git", + "reference": "82e9b1355c68ef7b96397dbd34cc75a92eebae7c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/dotenv/zipball/82e9b1355c68ef7b96397dbd34cc75a92eebae7c", + "reference": "82e9b1355c68ef7b96397dbd34cc75a92eebae7c", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "conflict": { + "symfony/console": "<6.4", + "symfony/process": "<6.4" + }, + "require-dev": { + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Dotenv\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Registers environment variables from a .env file", + "homepage": "https://symfony.com", + "keywords": [ + "dotenv", + "env", + "environment" + ], + "support": { + "source": "https://github.com/symfony/dotenv/tree/v7.4.11" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-11T13:02:51+00:00" + }, + { + "name": "symfony/error-handler", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/error-handler.git", + "reference": "8dd79d8af777ee6cba2fd4d98da6ffb839f3c0fa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/8dd79d8af777ee6cba2fd4d98da6ffb839f3c0fa", + "reference": "8dd79d8af777ee6cba2fd4d98da6ffb839f3c0fa", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/polyfill-php85": "^1.32", + "symfony/var-dumper": "^6.4|^7.0|^8.0" + }, + "conflict": { + "symfony/deprecation-contracts": "<2.5", + "symfony/http-kernel": "<6.4" + }, + "require-dev": { + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/serializer": "^6.4|^7.0|^8.0", + "symfony/webpack-encore-bundle": "^1.0|^2.0" + }, + "bin": [ + "Resources/bin/patch-type-declarations" + ], + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\ErrorHandler\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/event-dispatcher", + "version": "v7.4.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher.git", + "reference": "e4a2e29753c7801f7a8340e066cfa788f3bc8101" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/e4a2e29753c7801f7a8340e066cfa788f3bc8101", + "reference": "e4a2e29753c7801f7a8340e066cfa788f3bc8101", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/event-dispatcher-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/dependency-injection": "<6.4", + "symfony/service-contracts": "<2.5" + }, + "provide": { + "psr/event-dispatcher-implementation": "1.0", + "symfony/event-dispatcher-implementation": "2.0|3.0" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/error-handler": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/framework-bundle": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\EventDispatcher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/event-dispatcher/tree/v7.4.9" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-18T13:18:21+00:00" + }, + { + "name": "symfony/event-dispatcher-contracts", + "version": "v3.7.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/event-dispatcher-contracts.git", + "reference": "ccba7060602b7fed0b03c85bf025257f76d9ef32" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/ccba7060602b7fed0b03c85bf025257f76d9ef32", + "reference": "ccba7060602b7fed0b03c85bf025257f76d9ef32", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/event-dispatcher": "^1" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\EventDispatcher\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to dispatching event", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/event-dispatcher-contracts/tree/v3.7.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-01-05T13:30:16+00:00" + }, + { + "name": "symfony/expression-language", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/expression-language.git", + "reference": "87ff95687748f4af65e4d5a6e917d448ec52aa83" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/expression-language/zipball/87ff95687748f4af65e4d5a6e917d448ec52aa83", + "reference": "87ff95687748f4af65e4d5a6e917d448ec52aa83", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/service-contracts": "^2.5|^3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\ExpressionLanguage\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an engine that can compile and evaluate expressions", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/expression-language/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/filesystem", + "version": "v7.4.11", + "source": { + "type": "git", + "url": "https://github.com/symfony/filesystem.git", + "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/d721ea61b4a5fba8c5b6e7c1feda19efea144b50", + "reference": "d721ea61b4a5fba8c5b6e7c1feda19efea144b50", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.8" + }, + "require-dev": { + "symfony/process": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Filesystem\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides basic utilities for the filesystem", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/filesystem/tree/v7.4.11" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-11T16:38:44+00:00" + }, + { + "name": "symfony/finder", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/finder.git", + "reference": "e0be088d22278583a82da281886e8c3592fbf149" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/finder/zipball/e0be088d22278583a82da281886e8c3592fbf149", + "reference": "e0be088d22278583a82da281886e8c3592fbf149", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "require-dev": { + "symfony/filesystem": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Finder\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Finds files and directories via an intuitive fluent interface", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/finder/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/flex", + "version": "v2.11.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/flex.git", + "reference": "4a6d98eea3ebc7f68d82810cb682eedca2649e99" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/flex/zipball/4a6d98eea3ebc7f68d82810cb682eedca2649e99", + "reference": "4a6d98eea3ebc7f68d82810cb682eedca2649e99", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^2.1", + "php": ">=8.1" + }, + "conflict": { + "composer/semver": "<1.7.2", + "symfony/dotenv": "<5.4" + }, + "require-dev": { + "composer/composer": "^2.1", + "phpunit/phpunit": "^12.4", + "symfony/dotenv": "^6.4.41|^7.4.13|^8.0.13", + "symfony/filesystem": "^6.4|^7.4|^8.0", + "symfony/process": "^6.4|^7.4|^8.0" + }, + "type": "composer-plugin", + "extra": { + "class": "Symfony\\Flex\\Flex" + }, + "autoload": { + "psr-4": { + "Symfony\\Flex\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien.potencier@gmail.com" + } + ], + "description": "Composer plugin for Symfony", + "support": { + "issues": "https://github.com/symfony/flex/issues", + "source": "https://github.com/symfony/flex/tree/v2.11.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-29T17:25:22+00:00" + }, + { + "name": "symfony/framework-bundle", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/framework-bundle.git", + "reference": "8be39c7bf9e6f58fe49c07927572a9df7c961c95" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/framework-bundle/zipball/8be39c7bf9e6f58fe49c07927572a9df7c961c95", + "reference": "8be39c7bf9e6f58fe49c07927572a9df7c961c95", + "shasum": "" + }, + "require": { + "composer-runtime-api": ">=2.1", + "ext-xml": "*", + "php": ">=8.2", + "symfony/cache": "^6.4.12|^7.0|^8.0", + "symfony/config": "^7.4.4|^8.0.4", + "symfony/dependency-injection": "^7.4.4|^8.0.4", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/error-handler": "^7.3|^8.0", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/filesystem": "^7.1|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^7.4|^8.0", + "symfony/http-kernel": "^7.4|^8.0", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php85": "^1.32", + "symfony/routing": "^7.4|^8.0" + }, + "conflict": { + "doctrine/persistence": "<1.3", + "phpdocumentor/reflection-docblock": "<5.2|>=7", + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/asset": "<6.4", + "symfony/asset-mapper": "<6.4", + "symfony/clock": "<6.4", + "symfony/console": "<6.4", + "symfony/dom-crawler": "<6.4", + "symfony/dotenv": "<6.4", + "symfony/form": "<7.4", + "symfony/http-client": "<6.4", + "symfony/lock": "<6.4", + "symfony/mailer": "<6.4", + "symfony/messenger": "<7.4", + "symfony/mime": "<6.4.37|>=7.0,<7.4.9|>=8.0,<8.0.9", + "symfony/property-access": "<6.4", + "symfony/property-info": "<6.4", + "symfony/runtime": "<6.4.13|>=7.0,<7.1.6", + "symfony/scheduler": "<6.4.4|>=7.0.0,<7.0.4", + "symfony/security-core": "<6.4", + "symfony/security-csrf": "<7.2", + "symfony/serializer": "<7.2.5", + "symfony/stopwatch": "<6.4", + "symfony/translation": "<7.3", + "symfony/twig-bridge": "<6.4", + "symfony/twig-bundle": "<6.4", + "symfony/validator": "<6.4", + "symfony/web-profiler-bundle": "<6.4", + "symfony/webhook": "<7.2", + "symfony/workflow": "<7.4" + }, + "require-dev": { + "doctrine/persistence": "^1.3|^2|^3", + "dragonmantank/cron-expression": "^3.1", + "phpdocumentor/reflection-docblock": "^5.2|^6.0", + "seld/jsonlint": "^1.10", + "symfony/asset": "^6.4|^7.0|^8.0", + "symfony/asset-mapper": "^6.4|^7.0|^8.0", + "symfony/browser-kit": "^6.4|^7.0|^8.0", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/css-selector": "^6.4|^7.0|^8.0", + "symfony/dom-crawler": "^6.4|^7.0|^8.0", + "symfony/dotenv": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/form": "^7.4|^8.0", + "symfony/html-sanitizer": "^6.4|^7.0|^8.0", + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/json-streamer": "^7.3|^8.0", + "symfony/lock": "^6.4|^7.0|^8.0", + "symfony/mailer": "^6.4|^7.0|^8.0", + "symfony/messenger": "^7.4|^8.0", + "symfony/mime": "^6.4.37|^7.4.9|^8.0.9", + "symfony/notifier": "^6.4|^7.0|^8.0", + "symfony/object-mapper": "^7.3|^8.0", + "symfony/polyfill-intl-icu": "~1.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/property-info": "^6.4|^7.0|^8.0", + "symfony/rate-limiter": "^6.4|^7.0|^8.0", + "symfony/runtime": "^6.4.13|^7.1.6|^8.0", + "symfony/scheduler": "^6.4.4|^7.0.4|^8.0", + "symfony/security-bundle": "^6.4|^7.0|^8.0", + "symfony/semaphore": "^6.4|^7.0|^8.0", + "symfony/serializer": "^7.2.5|^8.0", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/string": "^6.4|^7.0|^8.0", + "symfony/translation": "^7.3|^8.0", + "symfony/twig-bundle": "^6.4|^7.0|^8.0", + "symfony/type-info": "^7.1.8|^8.0", + "symfony/uid": "^6.4|^7.0|^8.0", + "symfony/validator": "^7.4|^8.0", + "symfony/web-link": "^6.4|^7.0|^8.0", + "symfony/webhook": "^7.2|^8.0", + "symfony/workflow": "^7.4|^8.0", + "symfony/yaml": "^7.3|^8.0", + "twig/twig": "^3.12" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Symfony\\Bundle\\FrameworkBundle\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-23T18:04:28+00:00" + }, + { + "name": "symfony/http-foundation", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-foundation.git", + "reference": "bc354f47c62301e990b7874fa662326368508e2c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/bc354f47c62301e990b7874fa662326368508e2c", + "reference": "bc354f47c62301e990b7874fa662326368508e2c", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "^1.1" + }, + "conflict": { + "doctrine/dbal": "<3.6", + "symfony/cache": "<6.4.12|>=7.0,<7.1.5" + }, + "require-dev": { + "doctrine/dbal": "^3.6|^4", + "predis/predis": "^1.1|^2.0", + "symfony/cache": "^6.4.12|^7.1.5|^8.0", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/mime": "^6.4|^7.0|^8.0", + "symfony/rate-limiter": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpFoundation\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Defines an object-oriented layer for the HTTP specification", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/http-foundation/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-24T11:20:33+00:00" + }, + { + "name": "symfony/http-kernel", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/http-kernel.git", + "reference": "9df847980c436451f4f51d1284491bb4356dd989" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/9df847980c436451f4f51d1284491bb4356dd989", + "reference": "9df847980c436451f4f51d1284491bb4356dd989", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/error-handler": "^6.4|^7.0|^8.0", + "symfony/event-dispatcher": "^7.3|^8.0", + "symfony/http-foundation": "^7.4|^8.0", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "symfony/browser-kit": "<6.4", + "symfony/cache": "<6.4", + "symfony/config": "<6.4", + "symfony/console": "<6.4", + "symfony/dependency-injection": "<6.4", + "symfony/doctrine-bridge": "<6.4", + "symfony/flex": "<2.10", + "symfony/form": "<6.4", + "symfony/http-client": "<6.4", + "symfony/http-client-contracts": "<2.5", + "symfony/mailer": "<6.4", + "symfony/messenger": "<6.4", + "symfony/translation": "<6.4", + "symfony/translation-contracts": "<2.5", + "symfony/twig-bridge": "<6.4", + "symfony/validator": "<6.4", + "symfony/var-dumper": "<6.4", + "twig/twig": "<3.12" + }, + "provide": { + "psr/log-implementation": "1.0|2.0|3.0" + }, + "require-dev": { + "psr/cache": "^1.0|^2.0|^3.0", + "symfony/browser-kit": "^6.4|^7.0|^8.0", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/css-selector": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4.1|^7.0.1|^8.0", + "symfony/dom-crawler": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", + "symfony/http-client-contracts": "^2.5|^3", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/property-access": "^7.1|^8.0", + "symfony/routing": "^6.4|^7.0|^8.0", + "symfony/serializer": "^7.1|^8.0", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4|^7.0|^8.0", + "symfony/translation-contracts": "^2.5|^3", + "symfony/uid": "^6.4|^7.0|^8.0", + "symfony/validator": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0", + "symfony/var-exporter": "^6.4|^7.0|^8.0", + "twig/twig": "^3.12" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\HttpKernel\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "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.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-27T08:31:43+00:00" + }, + { + "name": "symfony/messenger", + "version": "v7.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/messenger.git", + "reference": "906387986caecc10b2ad2e85f715d834e5133a04" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/messenger/zipball/906387986caecc10b2ad2e85f715d834e5133a04", + "reference": "906387986caecc10b2ad2e85f715d834e5133a04", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/log": "^1|^2|^3", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/console": "<7.2", + "symfony/event-dispatcher": "<6.4", + "symfony/event-dispatcher-contracts": "<2.5", + "symfony/framework-bundle": "<6.4", + "symfony/http-kernel": "<7.3", + "symfony/lock": "<7.4", + "symfony/serializer": "<6.4.32|>=7.3,<7.3.10|>=7.4,<7.4.4|>=8.0,<8.0.4" + }, + "require-dev": { + "psr/cache": "^1.0|^2.0|^3.0", + "symfony/console": "^7.2|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^7.3|^8.0", + "symfony/lock": "^7.4|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/rate-limiter": "^6.4|^7.0|^8.0", + "symfony/routing": "^6.4|^7.0|^8.0", + "symfony/serializer": "^6.4.32|~7.3.10|^7.4.4|^8.0.4", + "symfony/service-contracts": "^2.5|^3", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/validator": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Messenger\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Samuel Roze", + "email": "samuel.roze@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Helps applications send and receive messages to/from other applications or via message queues", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/messenger/tree/v7.4.12" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-19T07:02:47+00:00" + }, + { + "name": "symfony/password-hasher", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/password-hasher.git", + "reference": "18a7d92126c95962f7efbcc9e421ba710a366847" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/password-hasher/zipball/18a7d92126c95962f7efbcc9e421ba710a366847", + "reference": "18a7d92126c95962f7efbcc9e421ba710a366847", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "conflict": { + "symfony/security-core": "<6.4" + }, + "require-dev": { + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/security-core": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\PasswordHasher\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Robin Chalas", + "email": "robin.chalas@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides password hashing utilities", + "homepage": "https://symfony.com", + "keywords": [ + "hashing", + "password" + ], + "support": { + "source": "https://github.com/symfony/password-hasher/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/polyfill-intl-grapheme", + "version": "v1.38.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-grapheme.git", + "reference": "e9247d281d694a5120554d9afaf54e070e88a603" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/e9247d281d694a5120554d9afaf54e070e88a603", + "reference": "e9247d281d694a5120554d9afaf54e070e88a603", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Grapheme\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's grapheme_* functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "grapheme", + "intl", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.38.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-26T05:58:03+00:00" + }, + { + "name": "symfony/polyfill-intl-normalizer", + "version": "v1.38.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-intl-normalizer.git", + "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/2d446c214bdbe5b71bde5011b060a05fece3ae6b", + "reference": "2d446c214bdbe5b71bde5011b060a05fece3ae6b", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "suggest": { + "ext-intl": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Intl\\Normalizer\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for intl's Normalizer class and related functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "intl", + "normalizer", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.38.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-25T13:48:31+00:00" + }, + { + "name": "symfony/polyfill-mbstring", + "version": "v1.38.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-mbstring.git", + "reference": "14c5439eec4ccff081ac14eca2dc57feb2a66d92" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/14c5439eec4ccff081ac14eca2dc57feb2a66d92", + "reference": "14c5439eec4ccff081ac14eca2dc57feb2a66d92", + "shasum": "" + }, + "require": { + "ext-iconv": "*", + "php": ">=7.2" + }, + "provide": { + "ext-mbstring": "*" + }, + "suggest": { + "ext-mbstring": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Mbstring\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for the Mbstring extension", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "mbstring", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.38.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-26T12:51:13+00:00" + }, + { + "name": "symfony/polyfill-php83", + "version": "v1.38.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php83.git", + "reference": "8339098cae28673c15cce00d80734af0453054e2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php83/zipball/8339098cae28673c15cce00d80734af0453054e2", + "reference": "8339098cae28673c15cce00d80734af0453054e2", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php83\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.3+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php83/tree/v1.38.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-26T12:51:13+00:00" + }, + { + "name": "symfony/polyfill-php84", + "version": "v1.38.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php84.git", + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", + "reference": "f4e1dfaee5b74aba5964fe1fd4dfc7ba5e3085fa", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php84\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.4+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php84/tree/v1.38.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-26T12:51:13+00:00" + }, + { + "name": "symfony/polyfill-php85", + "version": "v1.38.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php85.git", + "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1", + "reference": "ba2ba04f3352cfa2dcbbcb90aee13ed967f505b1", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php85\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.5+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php85/tree/v1.38.1" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-26T02:25:22+00:00" + }, + { + "name": "symfony/polyfill-uuid", + "version": "v1.37.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-uuid.git", + "reference": "26dfec253c4cf3e51b541b52ddf7e42cb0908e94" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-uuid/zipball/26dfec253c4cf3e51b541b52ddf7e42cb0908e94", + "reference": "26dfec253c4cf3e51b541b52ddf7e42cb0908e94", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "provide": { + "ext-uuid": "*" + }, + "suggest": { + "ext-uuid": "For best performance" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Uuid\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill for uuid functions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "uuid" + ], + "support": { + "source": "https://github.com/symfony/polyfill-uuid/tree/v1.37.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-10T16:19:22+00:00" + }, + { + "name": "symfony/property-access", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/property-access.git", + "reference": "b7dad9dae8b8a47ef7ecc76c8569e7d8c7d90cfc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/property-access/zipball/b7dad9dae8b8a47ef7ecc76c8569e7d8c7d90cfc", + "reference": "b7dad9dae8b8a47ef7ecc76c8569e7d8c7d90cfc", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/property-info": "^6.4.32|~7.3.10|^7.4.4|^8.0.4" + }, + "require-dev": { + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/var-exporter": "^6.4.1|^7.0.1|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\PropertyAccess\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides functions to read and write from/to an object or array using a simple string notation", + "homepage": "https://symfony.com", + "keywords": [ + "access", + "array", + "extraction", + "index", + "injection", + "object", + "property", + "property-path", + "reflection" + ], + "support": { + "source": "https://github.com/symfony/property-access/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/property-info", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/property-info.git", + "reference": "ac5e82528b986c4f7cfccbf7764b5d2e824d6175" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/property-info/zipball/ac5e82528b986c4f7cfccbf7764b5d2e824d6175", + "reference": "ac5e82528b986c4f7cfccbf7764b5d2e824d6175", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/string": "^6.4|^7.0|^8.0", + "symfony/type-info": "^7.4.7|^8.0.7" + }, + "conflict": { + "phpdocumentor/reflection-docblock": "<5.2|>=7", + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/cache": "<6.4", + "symfony/dependency-injection": "<6.4", + "symfony/serializer": "<6.4" + }, + "require-dev": { + "phpdocumentor/reflection-docblock": "^5.2|^6.0", + "phpstan/phpdoc-parser": "^1.0|^2.0", + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/serializer": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\PropertyInfo\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "dunglas@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Extracts information about PHP class' properties using metadata of popular sources", + "homepage": "https://symfony.com", + "keywords": [ + "doctrine", + "phpdoc", + "property", + "symfony", + "type", + "validator" + ], + "support": { + "source": "https://github.com/symfony/property-info/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/routing", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/routing.git", + "reference": "3a162171bb008e5e0f15dce6581373a4c0e8390d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/routing/zipball/3a162171bb008e5e0f15dce6581373a4c0e8390d", + "reference": "3a162171bb008e5e0f15dce6581373a4c0e8390d", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/config": "<6.4", + "symfony/dependency-injection": "<6.4", + "symfony/yaml": "<6.4" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Routing\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Maps an HTTP request to a set of configuration variables", + "homepage": "https://symfony.com", + "keywords": [ + "router", + "routing", + "uri", + "url" + ], + "support": { + "source": "https://github.com/symfony/routing/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-24T11:20:33+00:00" + }, + { + "name": "symfony/runtime", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/runtime.git", + "reference": "1a24cf8aab3a9378117718b35525c4126ad3adec" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/runtime/zipball/1a24cf8aab3a9378117718b35525c4126ad3adec", + "reference": "1a24cf8aab3a9378117718b35525c4126ad3adec", + "shasum": "" + }, + "require": { + "composer-plugin-api": "^1.0|^2.0", + "php": ">=8.2" + }, + "conflict": { + "symfony/dotenv": "<6.4" + }, + "require-dev": { + "composer/composer": "^2.6", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/dotenv": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0" + }, + "type": "composer-plugin", + "extra": { + "class": "Symfony\\Component\\Runtime\\Internal\\ComposerPlugin" + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Runtime\\": "", + "Symfony\\Runtime\\Symfony\\Component\\": "Internal/" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Enables decoupling PHP applications from global state", + "homepage": "https://symfony.com", + "keywords": [ + "runtime" + ], + "support": { + "source": "https://github.com/symfony/runtime/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-23T18:04:28+00:00" + }, + { + "name": "symfony/security-bundle", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/security-bundle.git", + "reference": "0cbc6528aa583795ab44e43b4e92a09acf927c6f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/security-bundle/zipball/0cbc6528aa583795ab44e43b4e92a09acf927c6f", + "reference": "0cbc6528aa583795ab44e43b4e92a09acf927c6f", + "shasum": "" + }, + "require": { + "composer-runtime-api": ">=2.1", + "ext-xml": "*", + "php": ">=8.2", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/config": "^7.4|^8.0", + "symfony/dependency-injection": "^6.4.11|^7.1.4|^8.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4.13|^7.1.6|^8.0", + "symfony/password-hasher": "^6.4|^7.0|^8.0", + "symfony/security-core": "^7.4|^8.0", + "symfony/security-csrf": "^6.4|^7.0|^8.0", + "symfony/security-http": "^7.4|^8.0", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/browser-kit": "<6.4", + "symfony/console": "<6.4", + "symfony/framework-bundle": "<6.4", + "symfony/http-client": "<6.4", + "symfony/ldap": "<6.4", + "symfony/serializer": "<6.4", + "symfony/twig-bundle": "<6.4", + "symfony/validator": "<6.4" + }, + "require-dev": { + "symfony/asset": "^6.4|^7.0|^8.0", + "symfony/browser-kit": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/css-selector": "^6.4|^7.0|^8.0", + "symfony/dom-crawler": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/form": "^6.4|^7.0|^8.0", + "symfony/framework-bundle": "^6.4.13|^7.1.6|^8.0", + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/ldap": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/rate-limiter": "^6.4|^7.0|^8.0", + "symfony/runtime": "^6.4.13|^7.1.6|^8.0", + "symfony/serializer": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4|^7.0|^8.0", + "symfony/twig-bridge": "^6.4|^7.0|^8.0", + "symfony/twig-bundle": "^6.4|^7.0|^8.0", + "symfony/validator": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0", + "twig/twig": "^3.15", + "web-token/jwt-library": "^3.3.2|^4.0" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Symfony\\Bundle\\SecurityBundle\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides a tight integration of the Security component into the Symfony full-stack framework", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/security-bundle/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-23T16:05:06+00:00" + }, + { + "name": "symfony/security-core", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/security-core.git", + "reference": "25db686fcf2a3fe00e1cf6dcab1fcb7aac71ba9b" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/security-core/zipball/25db686fcf2a3fe00e1cf6dcab1fcb7aac71ba9b", + "reference": "25db686fcf2a3fe00e1cf6dcab1fcb7aac71ba9b", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/event-dispatcher-contracts": "^2.5|^3", + "symfony/password-hasher": "^6.4|^7.0|^8.0", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/dependency-injection": "<6.4", + "symfony/event-dispatcher": "<6.4", + "symfony/http-foundation": "<6.4", + "symfony/ldap": "<6.4", + "symfony/translation": "<6.4.3|>=7.0,<7.0.3", + "symfony/validator": "<6.4" + }, + "require-dev": { + "psr/cache": "^1.0|^2.0|^3.0", + "psr/container": "^1.1|^2.0", + "psr/log": "^1|^2|^3", + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/ldap": "^6.4|^7.0|^8.0", + "symfony/string": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4.3|^7.0.3|^8.0", + "symfony/validator": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Security\\Core\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Security Component - Core Library", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/security-core/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-23T16:05:06+00:00" + }, + { + "name": "symfony/security-csrf", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/security-csrf.git", + "reference": "16b3aa2f67d02fb0dbd013a8759bbe90daaa9c5d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/security-csrf/zipball/16b3aa2f67d02fb0dbd013a8759bbe90daaa9c5d", + "reference": "16b3aa2f67d02fb0dbd013a8759bbe90daaa9c5d", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/security-core": "^6.4|^7.0|^8.0" + }, + "conflict": { + "symfony/http-foundation": "<6.4" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Security\\Csrf\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Security Component - CSRF Library", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/security-csrf/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/security-http", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/security-http.git", + "reference": "da3c28025a664e6a88e1af104a74457d99301161" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/security-http/zipball/da3c28025a664e6a88e1af104a74457d99301161", + "reference": "da3c28025a664e6a88e1af104a74457d99301161", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/event-dispatcher": "^6.4|^7.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/polyfill-mbstring": "~1.0", + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/security-core": "^7.3|^8.0", + "symfony/service-contracts": "^2.5|^3" + }, + "conflict": { + "symfony/clock": "<6.4", + "symfony/http-client-contracts": "<3.0", + "symfony/security-bundle": "<6.4", + "symfony/security-csrf": "<6.4" + }, + "require-dev": { + "psr/log": "^1|^2|^3", + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/clock": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/http-client-contracts": "^3.0", + "symfony/rate-limiter": "^6.4|^7.0|^8.0", + "symfony/routing": "^6.4|^7.0|^8.0", + "symfony/security-csrf": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4|^7.0|^8.0", + "web-token/jwt-library": "^3.3.2|^4.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Security\\Http\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Security Component - HTTP Integration", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/security-http/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-25T06:06:12+00:00" + }, + { + "name": "symfony/serializer", + "version": "v7.4.10", + "source": { + "type": "git", + "url": "https://github.com/symfony/serializer.git", + "reference": "268c5aa6c4bd675eddd89348e7ecac292a843ddd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/serializer/zipball/268c5aa6c4bd675eddd89348e7ecac292a843ddd", + "reference": "268c5aa6c4bd675eddd89348e7ecac292a843ddd", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-php84": "^1.30" + }, + "conflict": { + "phpdocumentor/reflection-docblock": "<5.2|>=7", + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/dependency-injection": "<6.4", + "symfony/property-access": "<6.4.31|>=7.0,<7.4.2|>=8.0,<8.0.2", + "symfony/property-info": "<6.4", + "symfony/type-info": "<7.2.5", + "symfony/uid": "<6.4", + "symfony/validator": "<6.4", + "symfony/yaml": "<6.4" + }, + "require-dev": { + "phpdocumentor/reflection-docblock": "^5.2|^6.0", + "phpstan/phpdoc-parser": "^1.0|^2.0", + "seld/jsonlint": "^1.10", + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^7.2|^8.0", + "symfony/error-handler": "^6.4|^7.0|^8.0", + "symfony/filesystem": "^6.4|^7.0|^8.0", + "symfony/form": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/messenger": "^6.4|^7.0|^8.0", + "symfony/mime": "^6.4|^7.0|^8.0", + "symfony/property-access": "^6.4.31|^7.4.2|^8.0.2", + "symfony/property-info": "^6.4|^7.0|^8.0", + "symfony/translation-contracts": "^2.5|^3", + "symfony/type-info": "^7.2.5|^8.0", + "symfony/uid": "^6.4|^7.0|^8.0", + "symfony/validator": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0", + "symfony/var-exporter": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Serializer\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/serializer/tree/v7.4.10" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-03T13:03:28+00:00" + }, + { + "name": "symfony/service-contracts", + "version": "v3.7.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/service-contracts.git", + "reference": "d25d82433a80eba6aa0e6c24b61d7370d99e444a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/d25d82433a80eba6aa0e6c24b61d7370d99e444a", + "reference": "d25d82433a80eba6aa0e6c24b61d7370d99e444a", + "shasum": "" + }, + "require": { + "php": ">=8.1", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "ext-psr": "<1.1|>=2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Service\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to writing services", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/service-contracts/tree/v3.7.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-28T09:44:51+00:00" + }, + { + "name": "symfony/stopwatch", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/stopwatch.git", + "reference": "70a852d72fec4d51efb1f48dcd968efcaf5ccb89" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/stopwatch/zipball/70a852d72fec4d51efb1f48dcd968efcaf5ccb89", + "reference": "70a852d72fec4d51efb1f48dcd968efcaf5ccb89", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/service-contracts": "^2.5|^3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Stopwatch\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides a way to profile code", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/stopwatch/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/string", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/string.git", + "reference": "961683010db3b27ec6ebcd7308e6e1ee8fa7ffde" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/string/zipball/961683010db3b27ec6ebcd7308e6e1ee8fa7ffde", + "reference": "961683010db3b27ec6ebcd7308e6e1ee8fa7ffde", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3.0", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-intl-grapheme": "~1.33", + "symfony/polyfill-intl-normalizer": "~1.0", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/translation-contracts": "<2.5" + }, + "require-dev": { + "symfony/emoji": "^7.1|^8.0", + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/intl": "^6.4|^7.0|^8.0", + "symfony/translation-contracts": "^2.5|^3.0", + "symfony/var-exporter": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "files": [ + "Resources/functions.php" + ], + "psr-4": { + "Symfony\\Component\\String\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an object-oriented API to strings and deals with bytes, UTF-8 code points and grapheme clusters in a unified way", + "homepage": "https://symfony.com", + "keywords": [ + "grapheme", + "i18n", + "string", + "unicode", + "utf-8", + "utf8" + ], + "support": { + "source": "https://github.com/symfony/string/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-23T15:23:29+00:00" + }, + { + "name": "symfony/translation-contracts", + "version": "v3.7.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/translation-contracts.git", + "reference": "0ab302977a952b42fd51475c4ebac81f8da0a95d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/0ab302977a952b42fd51475c4ebac81f8da0a95d", + "reference": "0ab302977a952b42fd51475c4ebac81f8da0a95d", + "shasum": "" + }, + "require": { + "php": ">=8.1" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/contracts", + "name": "symfony/contracts" + }, + "branch-alias": { + "dev-main": "3.7-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Contracts\\Translation\\": "" + }, + "exclude-from-classmap": [ + "/Test/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Generic abstractions related to translation", + "homepage": "https://symfony.com", + "keywords": [ + "abstractions", + "contracts", + "decoupling", + "interfaces", + "interoperability", + "standards" + ], + "support": { + "source": "https://github.com/symfony/translation-contracts/tree/v3.7.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-01-05T13:30:16+00:00" + }, + { + "name": "symfony/twig-bridge", + "version": "v7.4.12", + "source": { + "type": "git", + "url": "https://github.com/symfony/twig-bridge.git", + "reference": "81663873d946531129c76c65e80b681ce99c0e89" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/twig-bridge/zipball/81663873d946531129c76c65e80b681ce99c0e89", + "reference": "81663873d946531129c76c65e80b681ce99c0e89", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/translation-contracts": "^2.5|^3", + "twig/twig": "^3.21" + }, + "conflict": { + "phpdocumentor/reflection-docblock": "<5.2|>=7", + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/console": "<6.4", + "symfony/form": "<6.4.32|>7,<7.3.10|>7.4,<7.4.4|>8.0,<8.0.4", + "symfony/http-foundation": "<6.4", + "symfony/http-kernel": "<6.4", + "symfony/mime": "<6.4.37|>7,<7.4.9|>8.0,<8.0.9", + "symfony/serializer": "<6.4", + "symfony/translation": "<6.4", + "symfony/workflow": "<6.4" + }, + "require-dev": { + "egulias/email-validator": "^2.1.10|^3|^4", + "league/html-to-markdown": "^5.0", + "phpdocumentor/reflection-docblock": "^5.2|^6.0", + "symfony/asset": "^6.4|^7.0|^8.0", + "symfony/asset-mapper": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/emoji": "^7.1|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", + "symfony/form": "^6.4.32|~7.3.10|^7.4.4|^8.0.4", + "symfony/html-sanitizer": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^7.3|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/intl": "^6.4|^7.0|^8.0", + "symfony/mime": "^6.4.37|^7.4.9|^8.0.9", + "symfony/polyfill-intl-icu": "~1.0", + "symfony/property-info": "^6.4|^7.0|^8.0", + "symfony/routing": "^6.4|^7.0|^8.0", + "symfony/security-acl": "^2.8|^3.0", + "symfony/security-core": "^6.4|^7.0|^8.0", + "symfony/security-csrf": "^6.4|^7.0|^8.0", + "symfony/security-http": "^6.4|^7.0|^8.0", + "symfony/serializer": "^6.4.3|^7.0.3|^8.0", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4|^7.0|^8.0", + "symfony/validator": "^6.4|^7.0|^8.0", + "symfony/web-link": "^6.4|^7.0|^8.0", + "symfony/workflow": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0", + "twig/cssinliner-extra": "^3", + "twig/inky-extra": "^3", + "twig/markdown-extra": "^3" + }, + "type": "symfony-bridge", + "autoload": { + "psr-4": { + "Symfony\\Bridge\\Twig\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides integration for Twig with various Symfony components", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/twig-bridge/tree/v7.4.12" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-29T17:13:54+00:00" + }, + { + "name": "symfony/twig-bundle", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/twig-bundle.git", + "reference": "ba1e06d7ff1ebb1d1799b6608d925f4eaba88d95" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/twig-bundle/zipball/ba1e06d7ff1ebb1d1799b6608d925f4eaba88d95", + "reference": "ba1e06d7ff1ebb1d1799b6608d925f4eaba88d95", + "shasum": "" + }, + "require": { + "composer-runtime-api": ">=2.1", + "php": ">=8.2", + "symfony/config": "^7.4|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4.13|^7.1.6|^8.0", + "symfony/twig-bridge": "^7.3|^8.0", + "twig/twig": "^3.12" + }, + "conflict": { + "symfony/framework-bundle": "<6.4", + "symfony/translation": "<6.4" + }, + "require-dev": { + "symfony/asset": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", + "symfony/form": "^6.4|^7.0|^8.0", + "symfony/framework-bundle": "^6.4.13|^7.1.6|^8.0", + "symfony/routing": "^6.4|^7.0|^8.0", + "symfony/runtime": "^6.4.13|^7.1.6", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4|^7.0|^8.0", + "symfony/web-link": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0" + }, + "type": "symfony-bundle", + "autoload": { + "psr-4": { + "Symfony\\Bundle\\TwigBundle\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides a tight integration of Twig into the Symfony full-stack framework", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/twig-bundle/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/type-info", + "version": "v7.4.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/type-info.git", + "reference": "cafeedbf157b890e94ac5b83eaed85595106d5d6" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/type-info/zipball/cafeedbf157b890e94ac5b83eaed85595106d5d6", + "reference": "cafeedbf157b890e94ac5b83eaed85595106d5d6", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/container": "^1.1|^2.0", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "conflict": { + "phpstan/phpdoc-parser": "<1.30" + }, + "require-dev": { + "phpstan/phpdoc-parser": "^1.30|^2.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\TypeInfo\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Mathias Arlaud", + "email": "mathias.arlaud@gmail.com" + }, + { + "name": "Baptiste LEDUC", + "email": "baptiste.leduc@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Extracts PHP types information.", + "homepage": "https://symfony.com", + "keywords": [ + "PHPStan", + "phpdoc", + "symfony", + "type" + ], + "support": { + "source": "https://github.com/symfony/type-info/tree/v7.4.9" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-22T15:21:55+00:00" + }, + { + "name": "symfony/uid", + "version": "v7.4.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/uid.git", + "reference": "2676b524340abcfe4d6151ec698463cebafee439" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/uid/zipball/2676b524340abcfe4d6151ec698463cebafee439", + "reference": "2676b524340abcfe4d6151ec698463cebafee439", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/polyfill-uuid": "^1.15" + }, + "require-dev": { + "symfony/console": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Uid\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Grégoire Pineau", + "email": "lyrixx@lyrixx.info" + }, + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides an object-oriented API to generate and represent UIDs", + "homepage": "https://symfony.com", + "keywords": [ + "UID", + "ulid", + "uuid" + ], + "support": { + "source": "https://github.com/symfony/uid/tree/v7.4.9" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-30T15:19:22+00:00" + }, + { + "name": "symfony/validator", + "version": "v7.4.10", + "source": { + "type": "git", + "url": "https://github.com/symfony/validator.git", + "reference": "c76458623af9a3fe3b2e5b09b36453f334c2a361" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/validator/zipball/c76458623af9a3fe3b2e5b09b36453f334c2a361", + "reference": "c76458623af9a3fe3b2e5b09b36453f334c2a361", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-ctype": "~1.8", + "symfony/polyfill-mbstring": "~1.0", + "symfony/polyfill-php83": "^1.27", + "symfony/translation-contracts": "^2.5|^3" + }, + "conflict": { + "doctrine/lexer": "<1.1", + "symfony/dependency-injection": "<6.4", + "symfony/doctrine-bridge": "<7.0", + "symfony/expression-language": "<6.4", + "symfony/http-kernel": "<6.4", + "symfony/intl": "<6.4", + "symfony/property-info": "<6.4", + "symfony/translation": "<6.4.3|>=7.0,<7.0.3", + "symfony/var-exporter": "<6.4.25|>=7.0,<7.3.3", + "symfony/yaml": "<6.4" + }, + "require-dev": { + "egulias/email-validator": "^2.1.10|^3|^4", + "symfony/cache": "^6.4|^7.0|^8.0", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/expression-language": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/intl": "^6.4|^7.0|^8.0", + "symfony/mime": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/property-info": "^6.4|^7.0|^8.0", + "symfony/string": "^6.4|^7.0|^8.0", + "symfony/translation": "^6.4.3|^7.0.3|^8.0", + "symfony/type-info": "^7.1.8", + "symfony/yaml": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Validator\\": "" + }, + "exclude-from-classmap": [ + "/Tests/", + "/Resources/bin/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides tools to validate values", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/validator/tree/v7.4.10" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-05T15:30:56+00:00" + }, + { + "name": "symfony/var-dumper", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-dumper.git", + "reference": "9510c3966f749a1d1ff0059e1eabef6cc621e7fd" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/9510c3966f749a1d1ff0059e1eabef6cc621e7fd", + "reference": "9510c3966f749a1d1ff0059e1eabef6cc621e7fd", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-mbstring": "~1.0" + }, + "conflict": { + "symfony/console": "<6.4" + }, + "require-dev": { + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/uid": "^6.4|^7.0|^8.0", + "twig/twig": "^3.12" + }, + "bin": [ + "Resources/bin/var-dump-server" + ], + "type": "library", + "autoload": { + "files": [ + "Resources/functions/dump.php" + ], + "psr-4": { + "Symfony\\Component\\VarDumper\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Provides mechanisms for walking through any arbitrary PHP variable", + "homepage": "https://symfony.com", + "keywords": [ + "debug", + "dump" + ], + "support": { + "source": "https://github.com/symfony/var-dumper/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-30T13:44:50+00:00" + }, + { + "name": "symfony/var-exporter", + "version": "v7.4.9", + "source": { + "type": "git", + "url": "https://github.com/symfony/var-exporter.git", + "reference": "22e03a49c95ef054a43601cd159b222bfab1c701" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/22e03a49c95ef054a43601cd159b222bfab1c701", + "reference": "22e03a49c95ef054a43601cd159b222bfab1c701", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3" + }, + "require-dev": { + "symfony/property-access": "^6.4|^7.0|^8.0", + "symfony/serializer": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\VarExporter\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Allows exporting any serializable PHP data structure to plain PHP code", + "homepage": "https://symfony.com", + "keywords": [ + "clone", + "construct", + "export", + "hydrate", + "instantiate", + "lazy-loading", + "proxy", + "serialize" + ], + "support": { + "source": "https://github.com/symfony/var-exporter/tree/v7.4.9" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-04-18T13:18:21+00:00" + }, + { + "name": "symfony/web-link", + "version": "v7.4.8", + "source": { + "type": "git", + "url": "https://github.com/symfony/web-link.git", + "reference": "0711009963009e7d6d59149327f3ad633ee3fe25" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/web-link/zipball/0711009963009e7d6d59149327f3ad633ee3fe25", + "reference": "0711009963009e7d6d59149327f3ad633ee3fe25", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "psr/link": "^1.1|^2.0" + }, + "conflict": { + "symfony/http-kernel": "<6.4" + }, + "provide": { + "psr/link-implementation": "1.0|2.0" + }, + "require-dev": { + "symfony/http-kernel": "^6.4|^7.0|^8.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\WebLink\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Kévin Dunglas", + "email": "dunglas@gmail.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Manages links between resources", + "homepage": "https://symfony.com", + "keywords": [ + "dns-prefetch", + "http", + "http2", + "link", + "performance", + "prefetch", + "preload", + "prerender", + "psr13", + "push" + ], + "support": { + "source": "https://github.com/symfony/web-link/tree/v7.4.8" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-24T13:12:05+00:00" + }, + { + "name": "symfony/yaml", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/yaml.git", + "reference": "a7ec3b1156faf8815db7683ec7c1e7338e6f977c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/yaml/zipball/a7ec3b1156faf8815db7683ec7c1e7338e6f977c", + "reference": "a7ec3b1156faf8815db7683ec7c1e7338e6f977c", + "shasum": "" + }, + "require": { + "php": ">=8.2", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-ctype": "^1.8" + }, + "conflict": { + "symfony/console": "<6.4" + }, + "require-dev": { + "symfony/console": "^6.4|^7.0|^8.0" + }, + "bin": [ + "Resources/bin/yaml-lint" + ], + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Yaml\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Loads and dumps YAML files", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/yaml/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-25T06:06:12+00:00" + }, + { + "name": "twig/twig", + "version": "v3.27.1", + "source": { + "type": "git", + "url": "https://github.com/twigphp/Twig.git", + "reference": "ae2071bffb38f04847fc0864d730c94b9cb8ab74" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/twigphp/Twig/zipball/ae2071bffb38f04847fc0864d730c94b9cb8ab74", + "reference": "ae2071bffb38f04847fc0864d730c94b9cb8ab74", + "shasum": "" + }, + "require": { + "php": ">=8.1.0", + "symfony/deprecation-contracts": "^2.5|^3", + "symfony/polyfill-ctype": "^1.8", + "symfony/polyfill-mbstring": "^1.3" + }, + "require-dev": { + "php-cs-fixer/shim": "^3.0@stable", + "phpstan/phpstan": "^2.0@stable", + "psr/container": "^1.0|^2.0", + "symfony/phpunit-bridge": "^5.4.9|^6.4|^7.0" + }, + "type": "library", + "autoload": { + "files": [ + "src/Resources/core.php", + "src/Resources/debug.php", + "src/Resources/escaper.php", + "src/Resources/string_loader.php" + ], + "psr-4": { + "Twig\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com", + "homepage": "http://fabien.potencier.org", + "role": "Lead Developer" + }, + { + "name": "Twig Team", + "role": "Contributors" + }, + { + "name": "Armin Ronacher", + "email": "armin.ronacher@active-4.com", + "role": "Project Founder" + } + ], + "description": "Twig, the flexible, fast, and secure template language for PHP", + "homepage": "https://twig.symfony.com", + "keywords": [ + "templating" + ], + "support": { + "issues": "https://github.com/twigphp/Twig/issues", + "source": "https://github.com/twigphp/Twig/tree/v3.27.1" + }, + "funding": [ + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/twig/twig", + "type": "tidelift" + } + ], + "time": "2026-05-30T17:09:26+00:00" + }, + { + "name": "webmozart/assert", + "version": "2.4.0", + "source": { + "type": "git", + "url": "https://github.com/webmozarts/assert.git", + "reference": "9007ea6f45ecf352a9422b36644e4bfc039b9155" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/9007ea6f45ecf352a9422b36644e4bfc039b9155", + "reference": "9007ea6f45ecf352a9422b36644e4bfc039b9155", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-date": "*", + "ext-filter": "*", + "php": "^8.2" + }, + "suggest": { + "ext-intl": "", + "ext-simplexml": "", + "ext-spl": "" + }, + "type": "library", + "extra": { + "psalm": { + "pluginClass": "Webmozart\\Assert\\PsalmPlugin" + }, + "branch-alias": { + "dev-master": "2.0-dev", + "dev-feature/2-0": "2.0-dev" + } + }, + "autoload": { + "psr-4": { + "Webmozart\\Assert\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Bernhard Schussek", + "email": "bschussek@gmail.com" + }, + { + "name": "Woody Gilk", + "email": "woody.gilk@gmail.com" + } + ], + "description": "Assertions to validate method input/output with nice error messages.", + "keywords": [ + "assert", + "check", + "validate" + ], + "support": { + "issues": "https://github.com/webmozarts/assert/issues", + "source": "https://github.com/webmozarts/assert/tree/2.4.0" + }, + "time": "2026-05-20T13:07:01+00:00" + }, + { + "name": "willdurand/negotiation", + "version": "3.1.0", + "source": { + "type": "git", + "url": "https://github.com/willdurand/Negotiation.git", + "reference": "68e9ea0553ef6e2ee8db5c1d98829f111e623ec2" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/willdurand/Negotiation/zipball/68e9ea0553ef6e2ee8db5c1d98829f111e623ec2", + "reference": "68e9ea0553ef6e2ee8db5c1d98829f111e623ec2", + "shasum": "" + }, + "require": { + "php": ">=7.1.0" + }, + "require-dev": { + "symfony/phpunit-bridge": "^5.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.0-dev" + } + }, + "autoload": { + "psr-4": { + "Negotiation\\": "src/Negotiation" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "William Durand", + "email": "will+git@drnd.me" + } + ], + "description": "Content Negotiation tools for PHP provided as a standalone library.", + "homepage": "http://williamdurand.fr/Negotiation/", + "keywords": [ + "accept", + "content", + "format", + "header", + "negotiation" + ], + "support": { + "issues": "https://github.com/willdurand/Negotiation/issues", + "source": "https://github.com/willdurand/Negotiation/tree/3.1.0" + }, + "time": "2022-01-30T20:08:53+00:00" + } + ], + "packages-dev": [ + { + "name": "nikic/php-parser", + "version": "v5.7.0", + "source": { + "type": "git", + "url": "https://github.com/nikic/PHP-Parser.git", + "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82", + "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82", + "shasum": "" + }, + "require": { + "ext-ctype": "*", + "ext-json": "*", + "ext-tokenizer": "*", + "php": ">=7.4" + }, + "require-dev": { + "ircmaxell/php-yacc": "^0.0.7", + "phpunit/phpunit": "^9.0" + }, + "bin": [ + "bin/php-parse" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "5.x-dev" + } + }, + "autoload": { + "psr-4": { + "PhpParser\\": "lib/PhpParser" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Nikita Popov" + } + ], + "description": "A PHP parser written in PHP", + "keywords": [ + "parser", + "php" + ], + "support": { + "issues": "https://github.com/nikic/PHP-Parser/issues", + "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0" + }, + "time": "2025-12-06T11:56:16+00:00" + }, + { + "name": "symfony/maker-bundle", + "version": "v1.67.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/maker-bundle.git", + "reference": "6ce8b313845f16bcf385ee3cb31d8b24e30d5516" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/maker-bundle/zipball/6ce8b313845f16bcf385ee3cb31d8b24e30d5516", + "reference": "6ce8b313845f16bcf385ee3cb31d8b24e30d5516", + "shasum": "" + }, + "require": { + "composer-runtime-api": "^2.1", + "doctrine/inflector": "^2.0", + "nikic/php-parser": "^5.0", + "php": ">=8.1", + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/console": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/deprecation-contracts": "^2.2|^3", + "symfony/filesystem": "^6.4|^7.0|^8.0", + "symfony/finder": "^6.4|^7.0|^8.0", + "symfony/framework-bundle": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0" + }, + "conflict": { + "doctrine/doctrine-bundle": "<2.10", + "doctrine/orm": "<2.15" + }, + "require-dev": { + "composer/semver": "^3.0", + "doctrine/doctrine-bundle": "^2.10|^3.0", + "doctrine/orm": "^2.15|^3", + "doctrine/persistence": "^3.1|^4.0", + "symfony/http-client": "^6.4|^7.0|^8.0", + "symfony/phpunit-bridge": "^6.4.1|^7.0|^8.0", + "symfony/security-core": "^6.4|^7.0|^8.0", + "symfony/security-http": "^6.4|^7.0|^8.0", + "symfony/yaml": "^6.4|^7.0|^8.0", + "twig/twig": "^3.0|^4.x-dev" + }, + "type": "symfony-bundle", + "extra": { + "branch-alias": { + "dev-main": "1.x-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Bundle\\MakerBundle\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Maker helps you create empty commands, controllers, form classes, tests and more so you can forget about writing boilerplate code.", + "homepage": "https://symfony.com/doc/current/bundles/SymfonyMakerBundle/index.html", + "keywords": [ + "code generator", + "dev", + "generator", + "scaffold", + "scaffolding" + ], + "support": { + "issues": "https://github.com/symfony/maker-bundle/issues", + "source": "https://github.com/symfony/maker-bundle/tree/v1.67.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-03-18T13:39:06+00:00" + }, + { + "name": "symfony/process", + "version": "v7.4.13", + "source": { + "type": "git", + "url": "https://github.com/symfony/process.git", + "reference": "f5804be144caceb570f6747519999636b664f24c" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/process/zipball/f5804be144caceb570f6747519999636b664f24c", + "reference": "f5804be144caceb570f6747519999636b664f24c", + "shasum": "" + }, + "require": { + "php": ">=8.2" + }, + "type": "library", + "autoload": { + "psr-4": { + "Symfony\\Component\\Process\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Executes commands in sub-processes", + "homepage": "https://symfony.com", + "support": { + "source": "https://github.com/symfony/process/tree/v7.4.13" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "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": "2026-05-23T16:05:06+00:00" + } + ], + "aliases": [], + "minimum-stability": "stable", + "stability-flags": {}, + "prefer-stable": true, + "prefer-lowest": false, + "platform": { + "php": ">=8.2", + "ext-ctype": "*", + "ext-iconv": "*" + }, + "platform-dev": {}, + "plugin-api-version": "2.9.0" +} diff --git a/backend/config/bundles.php b/backend/config/bundles.php new file mode 100644 index 0000000..7c51105 --- /dev/null +++ b/backend/config/bundles.php @@ -0,0 +1,13 @@ + ['all' => true], + Nelmio\CorsBundle\NelmioCorsBundle::class => ['all' => true], + Doctrine\Bundle\DoctrineBundle\DoctrineBundle::class => ['all' => true], + Doctrine\Bundle\MigrationsBundle\DoctrineMigrationsBundle::class => ['all' => true], + Symfony\Bundle\SecurityBundle\SecurityBundle::class => ['all' => true], + Symfony\Bundle\TwigBundle\TwigBundle::class => ['all' => true], + ApiPlatform\Symfony\Bundle\ApiPlatformBundle::class => ['all' => true], + Symfony\Bundle\MakerBundle\MakerBundle::class => ['dev' => true], + Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle::class => ['all' => true], +]; diff --git a/backend/config/packages/api_platform.yaml b/backend/config/packages/api_platform.yaml new file mode 100644 index 0000000..02f295a --- /dev/null +++ b/backend/config/packages/api_platform.yaml @@ -0,0 +1,7 @@ +api_platform: + title: Hello API Platform + version: 1.0.0 + defaults: + stateless: true + cache_headers: + vary: ['Content-Type', 'Authorization', 'Origin'] diff --git a/backend/config/packages/cache.yaml b/backend/config/packages/cache.yaml new file mode 100644 index 0000000..6899b72 --- /dev/null +++ b/backend/config/packages/cache.yaml @@ -0,0 +1,19 @@ +framework: + cache: + # Unique name of your app: used to compute stable namespaces for cache keys. + #prefix_seed: your_vendor_name/app_name + + # The "app" cache stores to the filesystem by default. + # The data in this cache should persist between deploys. + # Other options include: + + # Redis + #app: cache.adapter.redis + #default_redis_provider: redis://localhost + + # APCu (not recommended with heavy random-write workloads as memory fragmentation can cause perf issues) + #app: cache.adapter.apcu + + # Namespaced pools use the above "app" backend by default + #pools: + #my.dedicated.cache: null diff --git a/backend/config/packages/doctrine.yaml b/backend/config/packages/doctrine.yaml new file mode 100644 index 0000000..290611c --- /dev/null +++ b/backend/config/packages/doctrine.yaml @@ -0,0 +1,46 @@ +doctrine: + dbal: + url: '%env(resolve:DATABASE_URL)%' + + # IMPORTANT: You MUST configure your server version, + # either here or in the DATABASE_URL env var (see .env file) + #server_version: '16' + + profiling_collect_backtrace: '%kernel.debug%' + orm: + validate_xml_mapping: true + naming_strategy: doctrine.orm.naming_strategy.underscore + identity_generation_preferences: + Doctrine\DBAL\Platforms\PostgreSQLPlatform: identity + auto_mapping: true + mappings: + App: + type: attribute + is_bundle: false + dir: '%kernel.project_dir%/src/Entity' + prefix: 'App\Entity' + alias: App + +when@test: + doctrine: + dbal: + # "TEST_TOKEN" is typically set by ParaTest + dbname_suffix: '_test%env(default::TEST_TOKEN)%' + +when@prod: + doctrine: + orm: + query_cache_driver: + type: pool + pool: doctrine.system_cache_pool + result_cache_driver: + type: pool + pool: doctrine.result_cache_pool + + framework: + cache: + pools: + doctrine.result_cache_pool: + adapter: cache.app + doctrine.system_cache_pool: + adapter: cache.system diff --git a/backend/config/packages/doctrine_migrations.yaml b/backend/config/packages/doctrine_migrations.yaml new file mode 100644 index 0000000..29231d9 --- /dev/null +++ b/backend/config/packages/doctrine_migrations.yaml @@ -0,0 +1,6 @@ +doctrine_migrations: + migrations_paths: + # namespace is arbitrary but should be different from App\Migrations + # as migrations classes should NOT be autoloaded + 'DoctrineMigrations': '%kernel.project_dir%/migrations' + enable_profiler: false diff --git a/backend/config/packages/framework.yaml b/backend/config/packages/framework.yaml new file mode 100644 index 0000000..7e1ee1f --- /dev/null +++ b/backend/config/packages/framework.yaml @@ -0,0 +1,15 @@ +# see https://symfony.com/doc/current/reference/configuration/framework.html +framework: + secret: '%env(APP_SECRET)%' + + # Note that the session will be started ONLY if you read or write from it. + session: true + + #esi: true + #fragments: true + +when@test: + framework: + test: true + session: + storage_factory_id: session.storage.factory.mock_file diff --git a/backend/config/packages/lexik_jwt_authentication.yaml b/backend/config/packages/lexik_jwt_authentication.yaml new file mode 100644 index 0000000..edfb69d --- /dev/null +++ b/backend/config/packages/lexik_jwt_authentication.yaml @@ -0,0 +1,4 @@ +lexik_jwt_authentication: + secret_key: '%env(resolve:JWT_SECRET_KEY)%' + public_key: '%env(resolve:JWT_PUBLIC_KEY)%' + pass_phrase: '%env(JWT_PASSPHRASE)%' diff --git a/backend/config/packages/messenger.yaml b/backend/config/packages/messenger.yaml new file mode 100644 index 0000000..19db483 --- /dev/null +++ b/backend/config/packages/messenger.yaml @@ -0,0 +1,22 @@ +framework: + messenger: + # Uncomment this (and the failed transport below) to send failed messages to this transport for later handling. + # failure_transport: failed + + transports: + # https://symfony.com/doc/current/messenger.html#transport-configuration + # async: '%env(MESSENGER_TRANSPORT_DSN)%' + # failed: 'doctrine://default?queue_name=failed' + sync: 'sync://' + + routing: + # Route your messages to the transports + # 'App\Message\YourMessage': async + +# when@test: +# framework: +# messenger: +# transports: +# # replace with your transport name here (e.g., my_transport: 'in-memory://') +# # For more Messenger testing tools, see https://github.com/zenstruck/messenger-test +# async: 'in-memory://' diff --git a/backend/config/packages/nelmio_cors.yaml b/backend/config/packages/nelmio_cors.yaml new file mode 100644 index 0000000..c766508 --- /dev/null +++ b/backend/config/packages/nelmio_cors.yaml @@ -0,0 +1,10 @@ +nelmio_cors: + defaults: + origin_regex: true + allow_origin: ['%env(CORS_ALLOW_ORIGIN)%'] + allow_methods: ['GET', 'OPTIONS', 'POST', 'PUT', 'PATCH', 'DELETE'] + allow_headers: ['Content-Type', 'Authorization'] + expose_headers: ['Link'] + max_age: 3600 + paths: + '^/': null diff --git a/backend/config/packages/property_info.yaml b/backend/config/packages/property_info.yaml new file mode 100644 index 0000000..dd31b9d --- /dev/null +++ b/backend/config/packages/property_info.yaml @@ -0,0 +1,3 @@ +framework: + property_info: + with_constructor_extractor: true diff --git a/backend/config/packages/routing.yaml b/backend/config/packages/routing.yaml new file mode 100644 index 0000000..0f34f87 --- /dev/null +++ b/backend/config/packages/routing.yaml @@ -0,0 +1,10 @@ +framework: + router: + # Configure how to generate URLs in non-HTTP contexts, such as CLI commands. + # See https://symfony.com/doc/current/routing.html#generating-urls-in-commands + default_uri: '%env(DEFAULT_URI)%' + +when@prod: + framework: + router: + strict_requirements: null diff --git a/backend/config/packages/security.yaml b/backend/config/packages/security.yaml new file mode 100644 index 0000000..bff0863 --- /dev/null +++ b/backend/config/packages/security.yaml @@ -0,0 +1,55 @@ +security: + password_hashers: + Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto' + + providers: + app_user_provider: + entity: + class: App\Entity\User + property: email + + firewalls: + dev: + pattern: ^/(_profiler|_wdt|assets|build)/ + security: false + + # Öffentlicher Login-Endpunkt: tauscht E-Mail/Passwort gegen ein JWT + login: + pattern: ^/api/login$ + stateless: true + json_login: + check_path: /api/login + username_path: email + password_path: password + success_handler: lexik_jwt_authentication.handler.authentication_success + failure_handler: lexik_jwt_authentication.handler.authentication_failure + + # Geschützte API: JWT im Authorization-Header + api: + pattern: ^/api + stateless: true + provider: app_user_provider + jwt: ~ + + main: + lazy: true + provider: app_user_provider + + access_control: + - { path: ^/api/login, roles: PUBLIC_ACCESS } + - { path: ^/api/docs, roles: PUBLIC_ACCESS } + - { path: ^/api, roles: IS_AUTHENTICATED_FULLY } + + role_hierarchy: + ROLE_PLATFORM_ADMIN: [ROLE_RESELLER_ADMIN, ROLE_COMPANY_ADMIN, ROLE_EMPLOYEE] + ROLE_RESELLER_ADMIN: [ROLE_COMPANY_ADMIN] + ROLE_COMPANY_ADMIN: [ROLE_EMPLOYEE] + +when@test: + security: + password_hashers: + Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: + algorithm: auto + cost: 4 + time_cost: 3 + memory_cost: 10 diff --git a/backend/config/packages/twig.yaml b/backend/config/packages/twig.yaml new file mode 100644 index 0000000..3f795d9 --- /dev/null +++ b/backend/config/packages/twig.yaml @@ -0,0 +1,6 @@ +twig: + file_name_pattern: '*.twig' + +when@test: + twig: + strict_variables: true diff --git a/backend/config/packages/validator.yaml b/backend/config/packages/validator.yaml new file mode 100644 index 0000000..dd47a6a --- /dev/null +++ b/backend/config/packages/validator.yaml @@ -0,0 +1,11 @@ +framework: + validation: + # Enables validator auto-mapping support. + # For instance, basic validation constraints will be inferred from Doctrine's metadata. + #auto_mapping: + # App\Entity\: [] + +when@test: + framework: + validation: + not_compromised_password: false diff --git a/backend/config/preload.php b/backend/config/preload.php new file mode 100644 index 0000000..5ebcdb2 --- /dev/null +++ b/backend/config/preload.php @@ -0,0 +1,5 @@ + [ + * 'App\\' => [ + * 'resource' => '../src/', + * ], + * ], + * ]); + * ``` + * + * @psalm-type ImportsConfig = list + * @psalm-type ParametersConfig = array|Param|null>|Param|null> + * @psalm-type ArgumentsType = list|array + * @psalm-type CallType = array|array{0:string, 1?:ArgumentsType, 2?:bool}|array{method:string, arguments?:ArgumentsType, returns_clone?:bool} + * @psalm-type TagsType = list>> // arrays inside the list must have only one element, with the tag name as the key + * @psalm-type CallbackType = string|array{0:string|ReferenceConfigurator,1:string}|\Closure|ReferenceConfigurator|ExpressionConfigurator + * @psalm-type DeprecationType = array{package: string, version: string, message?: string} + * @psalm-type DefaultsType = array{ + * public?: bool, + * tags?: TagsType, + * resource_tags?: TagsType, + * autowire?: bool, + * autoconfigure?: bool, + * bind?: array, + * } + * @psalm-type InstanceofType = array{ + * shared?: bool, + * lazy?: bool|string, + * public?: bool, + * properties?: array, + * configurator?: CallbackType, + * calls?: list, + * tags?: TagsType, + * resource_tags?: TagsType, + * autowire?: bool, + * bind?: array, + * constructor?: string, + * } + * @psalm-type DefinitionType = array{ + * class?: string, + * file?: string, + * parent?: string, + * shared?: bool, + * synthetic?: bool, + * lazy?: bool|string, + * public?: bool, + * abstract?: bool, + * deprecated?: DeprecationType, + * factory?: CallbackType, + * configurator?: CallbackType, + * arguments?: ArgumentsType, + * properties?: array, + * calls?: list, + * tags?: TagsType, + * resource_tags?: TagsType, + * decorates?: string, + * decoration_inner_name?: string, + * decoration_priority?: int, + * decoration_on_invalid?: 'exception'|'ignore'|null, + * autowire?: bool, + * autoconfigure?: bool, + * bind?: array, + * constructor?: string, + * from_callable?: CallbackType, + * } + * @psalm-type AliasType = string|array{ + * alias: string, + * public?: bool, + * deprecated?: DeprecationType, + * } + * @psalm-type PrototypeType = array{ + * resource: string, + * namespace?: string, + * exclude?: string|list, + * parent?: string, + * shared?: bool, + * lazy?: bool|string, + * public?: bool, + * abstract?: bool, + * deprecated?: DeprecationType, + * factory?: CallbackType, + * arguments?: ArgumentsType, + * properties?: array, + * configurator?: CallbackType, + * calls?: list, + * tags?: TagsType, + * resource_tags?: TagsType, + * autowire?: bool, + * autoconfigure?: bool, + * bind?: array, + * constructor?: string, + * } + * @psalm-type StackType = array{ + * stack: list>, + * public?: bool, + * deprecated?: DeprecationType, + * } + * @psalm-type ServicesConfig = array{ + * _defaults?: DefaultsType, + * _instanceof?: InstanceofType, + * ... + * } + * @psalm-type ExtensionType = array + * @psalm-type FrameworkConfig = array{ + * secret?: scalar|Param|null, + * http_method_override?: bool|Param, // Set true to enable support for the '_method' request parameter to determine the intended HTTP method on POST requests. // Default: false + * allowed_http_method_override?: null|list, + * trust_x_sendfile_type_header?: scalar|Param|null, // Set true to enable support for xsendfile in binary file responses. // Default: "%env(bool:default::SYMFONY_TRUST_X_SENDFILE_TYPE_HEADER)%" + * ide?: scalar|Param|null, // Default: "%env(default::SYMFONY_IDE)%" + * test?: bool|Param, + * default_locale?: scalar|Param|null, // Default: "en" + * set_locale_from_accept_language?: bool|Param, // Whether to use the Accept-Language HTTP header to set the Request locale (only when the "_locale" request attribute is not passed). // Default: false + * set_content_language_from_locale?: bool|Param, // Whether to set the Content-Language HTTP header on the Response using the Request locale. // Default: false + * enabled_locales?: list, + * trusted_hosts?: string|list, + * trusted_proxies?: mixed, // Default: ["%env(default::SYMFONY_TRUSTED_PROXIES)%"] + * trusted_headers?: string|list, + * error_controller?: scalar|Param|null, // Default: "error_controller" + * handle_all_throwables?: bool|Param, // HttpKernel will handle all kinds of \Throwable. // Default: true + * csrf_protection?: bool|array{ + * enabled?: scalar|Param|null, // Default: null + * stateless_token_ids?: list, + * check_header?: scalar|Param|null, // Whether to check the CSRF token in a header in addition to a cookie when using stateless protection. // Default: false + * cookie_name?: scalar|Param|null, // The name of the cookie to use when using stateless protection. // Default: "csrf-token" + * }, + * form?: bool|array{ // Form configuration + * enabled?: bool|Param, // Default: false + * csrf_protection?: bool|array{ + * enabled?: scalar|Param|null, // Default: null + * token_id?: scalar|Param|null, // Default: null + * field_name?: scalar|Param|null, // Default: "_token" + * field_attr?: array, + * }, + * }, + * http_cache?: bool|array{ // HTTP cache configuration + * enabled?: bool|Param, // Default: false + * debug?: bool|Param, // Default: "%kernel.debug%" + * trace_level?: "none"|"short"|"full"|Param, + * trace_header?: scalar|Param|null, + * default_ttl?: int|Param, + * private_headers?: list, + * skip_response_headers?: list, + * allow_reload?: bool|Param, + * allow_revalidate?: bool|Param, + * stale_while_revalidate?: int|Param, + * stale_if_error?: int|Param, + * terminate_on_cache_hit?: bool|Param, + * }, + * esi?: bool|array{ // ESI configuration + * enabled?: bool|Param, // Default: false + * }, + * ssi?: bool|array{ // SSI configuration + * enabled?: bool|Param, // Default: false + * }, + * fragments?: bool|array{ // Fragments configuration + * enabled?: bool|Param, // Default: false + * hinclude_default_template?: scalar|Param|null, // Default: null + * path?: scalar|Param|null, // Default: "/_fragment" + * }, + * profiler?: bool|array{ // Profiler configuration + * enabled?: bool|Param, // Default: false + * collect?: bool|Param, // Default: true + * collect_parameter?: scalar|Param|null, // The name of the parameter to use to enable or disable collection on a per request basis. // Default: null + * only_exceptions?: bool|Param, // Default: false + * only_main_requests?: bool|Param, // Default: false + * dsn?: scalar|Param|null, // Default: "file:%kernel.cache_dir%/profiler" + * collect_serializer_data?: bool|Param, // Enables the serializer data collector and profiler panel. // Default: false + * }, + * workflows?: bool|array{ + * enabled?: bool|Param, // Default: false + * workflows?: array, + * definition_validators?: list, + * support_strategy?: scalar|Param|null, + * initial_marking?: \BackedEnum|string|list, + * events_to_dispatch?: null|list, + * places?: string|list, + * }>, + * transitions?: list, + * to?: \BackedEnum|string|list, + * weight?: int|Param, // Default: 1 + * metadata?: array, + * }>, + * metadata?: array, + * }>, + * }, + * router?: bool|array{ // Router configuration + * enabled?: bool|Param, // Default: false + * resource?: scalar|Param|null, + * type?: scalar|Param|null, + * cache_dir?: scalar|Param|null, // Deprecated: Setting the "framework.router.cache_dir.cache_dir" configuration option is deprecated. It will be removed in version 8.0. // Default: "%kernel.build_dir%" + * default_uri?: scalar|Param|null, // The default URI used to generate URLs in a non-HTTP context. // Default: null + * http_port?: scalar|Param|null, // Default: 80 + * https_port?: scalar|Param|null, // Default: 443 + * strict_requirements?: scalar|Param|null, // set to true to throw an exception when a parameter does not match the requirements set to false to disable exceptions when a parameter does not match the requirements (and return null instead) set to null to disable parameter checks against requirements 'true' is the preferred configuration in development mode, while 'false' or 'null' might be preferred in production // Default: true + * utf8?: bool|Param, // Default: true + * }, + * session?: bool|array{ // Session configuration + * enabled?: bool|Param, // Default: false + * storage_factory_id?: scalar|Param|null, // Default: "session.storage.factory.native" + * handler_id?: scalar|Param|null, // Defaults to using the native session handler, or to the native *file* session handler if "save_path" is not null. + * name?: scalar|Param|null, + * cookie_lifetime?: scalar|Param|null, + * cookie_path?: scalar|Param|null, + * cookie_domain?: scalar|Param|null, + * cookie_secure?: true|false|"auto"|Param, // Default: "auto" + * cookie_httponly?: bool|Param, // Default: true + * cookie_samesite?: null|"lax"|"strict"|"none"|Param, // Default: "lax" + * use_cookies?: bool|Param, + * gc_divisor?: scalar|Param|null, + * gc_probability?: scalar|Param|null, + * gc_maxlifetime?: scalar|Param|null, + * save_path?: scalar|Param|null, // Defaults to "%kernel.cache_dir%/sessions" if the "handler_id" option is not null. + * metadata_update_threshold?: int|Param, // Seconds to wait between 2 session metadata updates. // Default: 0 + * sid_length?: int|Param, // Deprecated: Setting the "framework.session.sid_length.sid_length" configuration option is deprecated. It will be removed in version 8.0. No alternative is provided as PHP 8.4 has deprecated the related option. + * sid_bits_per_character?: int|Param, // Deprecated: Setting the "framework.session.sid_bits_per_character.sid_bits_per_character" configuration option is deprecated. It will be removed in version 8.0. No alternative is provided as PHP 8.4 has deprecated the related option. + * }, + * request?: bool|array{ // Request configuration + * enabled?: bool|Param, // Default: false + * formats?: array>, + * }, + * assets?: bool|array{ // Assets configuration + * enabled?: bool|Param, // Default: true + * strict_mode?: bool|Param, // Throw an exception if an entry is missing from the manifest.json. // Default: false + * version_strategy?: scalar|Param|null, // Default: null + * version?: scalar|Param|null, // Default: null + * version_format?: scalar|Param|null, // Default: "%%s?%%s" + * json_manifest_path?: scalar|Param|null, // Default: null + * base_path?: scalar|Param|null, // Default: "" + * base_urls?: string|list, + * packages?: array, + * }>, + * }, + * asset_mapper?: bool|array{ // Asset Mapper configuration + * enabled?: bool|Param, // Default: false + * paths?: string|array, + * excluded_patterns?: list, + * exclude_dotfiles?: bool|Param, // If true, any files starting with "." will be excluded from the asset mapper. // Default: true + * server?: bool|Param, // If true, a "dev server" will return the assets from the public directory (true in "debug" mode only by default). // Default: true + * public_prefix?: scalar|Param|null, // The public path where the assets will be written to (and served from when "server" is true). // Default: "/assets/" + * missing_import_mode?: "strict"|"warn"|"ignore"|Param, // Behavior if an asset cannot be found when imported from JavaScript or CSS files - e.g. "import './non-existent.js'". "strict" means an exception is thrown, "warn" means a warning is logged, "ignore" means the import is left as-is. // Default: "warn" + * extensions?: array, + * importmap_path?: scalar|Param|null, // The path of the importmap.php file. // Default: "%kernel.project_dir%/importmap.php" + * importmap_polyfill?: scalar|Param|null, // The importmap name that will be used to load the polyfill. Set to false to disable. // Default: "es-module-shims" + * importmap_script_attributes?: array, + * vendor_dir?: scalar|Param|null, // The directory to store JavaScript vendors. // Default: "%kernel.project_dir%/assets/vendor" + * precompress?: bool|array{ // Precompress assets with Brotli, Zstandard and gzip. + * enabled?: bool|Param, // Default: false + * formats?: list, + * extensions?: list, + * }, + * }, + * translator?: bool|array{ // Translator configuration + * enabled?: bool|Param, // Default: false + * fallbacks?: string|list, + * logging?: bool|Param, // Default: false + * formatter?: scalar|Param|null, // Default: "translator.formatter.default" + * cache_dir?: scalar|Param|null, // Default: "%kernel.cache_dir%/translations" + * default_path?: scalar|Param|null, // The default path used to load translations. // Default: "%kernel.project_dir%/translations" + * paths?: list, + * pseudo_localization?: bool|array{ + * enabled?: bool|Param, // Default: false + * accents?: bool|Param, // Default: true + * expansion_factor?: float|Param, // Default: 1.0 + * brackets?: bool|Param, // Default: true + * parse_html?: bool|Param, // Default: false + * localizable_html_attributes?: list, + * }, + * providers?: array, + * locales?: list, + * }>, + * globals?: array, + * domain?: string|Param, + * }>, + * }, + * validation?: bool|array{ // Validation configuration + * enabled?: bool|Param, // Default: true + * cache?: scalar|Param|null, // Deprecated: Setting the "framework.validation.cache.cache" configuration option is deprecated. It will be removed in version 8.0. + * enable_attributes?: bool|Param, // Default: true + * static_method?: string|list, + * translation_domain?: scalar|Param|null, // Default: "validators" + * email_validation_mode?: "html5"|"html5-allow-no-tld"|"strict"|"loose"|Param, // Default: "html5" + * mapping?: array{ + * paths?: list, + * }, + * not_compromised_password?: bool|array{ + * enabled?: bool|Param, // When disabled, compromised passwords will be accepted as valid. // Default: true + * endpoint?: scalar|Param|null, // API endpoint for the NotCompromisedPassword Validator. // Default: null + * }, + * disable_translation?: bool|Param, // Default: false + * auto_mapping?: array, + * }>, + * }, + * annotations?: bool|array{ + * enabled?: bool|Param, // Default: false + * }, + * serializer?: bool|array{ // Serializer configuration + * enabled?: bool|Param, // Default: true + * enable_attributes?: bool|Param, // Default: true + * name_converter?: scalar|Param|null, + * circular_reference_handler?: scalar|Param|null, + * max_depth_handler?: scalar|Param|null, + * mapping?: array{ + * paths?: list, + * }, + * default_context?: array, + * named_serializers?: array, + * include_built_in_normalizers?: bool|Param, // Whether to include the built-in normalizers // Default: true + * include_built_in_encoders?: bool|Param, // Whether to include the built-in encoders // Default: true + * }>, + * }, + * property_access?: bool|array{ // Property access configuration + * enabled?: bool|Param, // Default: true + * magic_call?: bool|Param, // Default: false + * magic_get?: bool|Param, // Default: true + * magic_set?: bool|Param, // Default: true + * throw_exception_on_invalid_index?: bool|Param, // Default: false + * throw_exception_on_invalid_property_path?: bool|Param, // Default: true + * }, + * type_info?: bool|array{ // Type info configuration + * enabled?: bool|Param, // Default: true + * aliases?: array, + * }, + * property_info?: bool|array{ // Property info configuration + * enabled?: bool|Param, // Default: true + * with_constructor_extractor?: bool|Param, // Registers the constructor extractor. + * }, + * cache?: array{ // Cache configuration + * prefix_seed?: scalar|Param|null, // Used to namespace cache keys when using several apps with the same shared backend. // Default: "_%kernel.project_dir%.%kernel.container_class%" + * app?: scalar|Param|null, // App related cache pools configuration. // Default: "cache.adapter.filesystem" + * system?: scalar|Param|null, // System related cache pools configuration. // Default: "cache.adapter.system" + * directory?: scalar|Param|null, // Default: "%kernel.share_dir%/pools/app" + * default_psr6_provider?: scalar|Param|null, + * default_redis_provider?: scalar|Param|null, // Default: "redis://localhost" + * default_valkey_provider?: scalar|Param|null, // Default: "valkey://localhost" + * default_memcached_provider?: scalar|Param|null, // Default: "memcached://localhost" + * default_doctrine_dbal_provider?: scalar|Param|null, // Default: "database_connection" + * default_pdo_provider?: scalar|Param|null, // Default: null + * pools?: array, + * tags?: scalar|Param|null, // Default: null + * public?: bool|Param, // Default: false + * default_lifetime?: scalar|Param|null, // Default lifetime of the pool. + * provider?: scalar|Param|null, // Overwrite the setting from the default provider for this adapter. + * early_expiration_message_bus?: scalar|Param|null, + * clearer?: scalar|Param|null, + * }>, + * }, + * php_errors?: array{ // PHP errors handling configuration + * log?: mixed, // Use the application logger instead of the PHP logger for logging PHP errors. // Default: true + * throw?: bool|Param, // Throw PHP errors as \ErrorException instances. // Default: true + * }, + * exceptions?: array, + * web_link?: bool|array{ // Web links configuration + * enabled?: bool|Param, // Default: true + * }, + * lock?: bool|string|array{ // Lock configuration + * enabled?: bool|Param, // Default: false + * resources?: string|array>, + * }, + * semaphore?: bool|string|array{ // Semaphore configuration + * enabled?: bool|Param, // Default: false + * resources?: string|array, + * }, + * messenger?: bool|array{ // Messenger configuration + * enabled?: bool|Param, // Default: true + * routing?: array, + * }>, + * serializer?: array{ + * default_serializer?: scalar|Param|null, // Service id to use as the default serializer for the transports. // Default: "messenger.transport.native_php_serializer" + * symfony_serializer?: array{ + * format?: scalar|Param|null, // Serialization format for the messenger.transport.symfony_serializer service (which is not the serializer used by default). // Default: "json" + * context?: array, + * }, + * }, + * transports?: array, + * failure_transport?: scalar|Param|null, // Transport name to send failed messages to (after all retries have failed). // Default: null + * retry_strategy?: string|array{ + * service?: scalar|Param|null, // Service id to override the retry strategy entirely. // Default: null + * max_retries?: int|Param, // Default: 3 + * delay?: int|Param, // Time in ms to delay (or the initial value when multiplier is used). // Default: 1000 + * multiplier?: float|Param, // If greater than 1, delay will grow exponentially for each retry: this delay = (delay * (multiple ^ retries)). // Default: 2 + * max_delay?: int|Param, // Max time in ms that a retry should ever be delayed (0 = infinite). // Default: 0 + * jitter?: float|Param, // Randomness to apply to the delay (between 0 and 1). // Default: 0.1 + * }, + * rate_limiter?: scalar|Param|null, // Rate limiter name to use when processing messages. // Default: null + * }>, + * failure_transport?: scalar|Param|null, // Transport name to send failed messages to (after all retries have failed). // Default: null + * stop_worker_on_signals?: int|string|list, + * default_bus?: scalar|Param|null, // Default: null + * buses?: array, + * }>, + * }>, + * }, + * scheduler?: bool|array{ // Scheduler configuration + * enabled?: bool|Param, // Default: false + * }, + * disallow_search_engine_index?: bool|Param, // Enabled by default when debug is enabled. // Default: true + * http_client?: bool|array{ // HTTP Client configuration + * enabled?: bool|Param, // Default: false + * max_host_connections?: int|Param, // The maximum number of connections to a single host. + * default_options?: array{ + * headers?: array, + * vars?: array, + * max_redirects?: int|Param, // The maximum number of redirects to follow. + * http_version?: scalar|Param|null, // The default HTTP version, typically 1.1 or 2.0, leave to null for the best version. + * resolve?: array, + * proxy?: scalar|Param|null, // The URL of the proxy to pass requests through or null for automatic detection. + * no_proxy?: scalar|Param|null, // A comma separated list of hosts that do not require a proxy to be reached. + * timeout?: float|Param, // The idle timeout, defaults to the "default_socket_timeout" ini parameter. + * max_duration?: float|Param, // The maximum execution time for the request+response as a whole. + * bindto?: scalar|Param|null, // A network interface name, IP address, a host name or a UNIX socket to bind to. + * verify_peer?: bool|Param, // Indicates if the peer should be verified in a TLS context. + * verify_host?: bool|Param, // Indicates if the host should exist as a certificate common name. + * cafile?: scalar|Param|null, // A certificate authority file. + * capath?: scalar|Param|null, // A directory that contains multiple certificate authority files. + * local_cert?: scalar|Param|null, // A PEM formatted certificate file. + * local_pk?: scalar|Param|null, // A private key file. + * passphrase?: scalar|Param|null, // The passphrase used to encrypt the "local_pk" file. + * ciphers?: scalar|Param|null, // A list of TLS ciphers separated by colons, commas or spaces (e.g. "RC3-SHA:TLS13-AES-128-GCM-SHA256"...) + * peer_fingerprint?: array{ // Associative array: hashing algorithm => hash(es). + * sha1?: mixed, + * pin-sha256?: mixed, + * md5?: mixed, + * }, + * crypto_method?: scalar|Param|null, // The minimum version of TLS to accept; must be one of STREAM_CRYPTO_METHOD_TLSv*_CLIENT constants. + * extra?: array, + * rate_limiter?: scalar|Param|null, // Rate limiter name to use for throttling requests. // Default: null + * caching?: bool|array{ // Caching configuration. + * enabled?: bool|Param, // Default: false + * cache_pool?: string|Param, // The taggable cache pool to use for storing the responses. // Default: "cache.http_client" + * shared?: bool|Param, // Indicates whether the cache is shared (public) or private. // Default: true + * max_ttl?: int|Param, // The maximum TTL (in seconds) allowed for cached responses. Null means no cap. // Default: null + * }, + * retry_failed?: bool|array{ + * enabled?: bool|Param, // Default: false + * retry_strategy?: scalar|Param|null, // service id to override the retry strategy. // Default: null + * http_codes?: int|string|array, + * }>, + * max_retries?: int|Param, // Default: 3 + * delay?: int|Param, // Time in ms to delay (or the initial value when multiplier is used). // Default: 1000 + * multiplier?: float|Param, // If greater than 1, delay will grow exponentially for each retry: delay * (multiple ^ retries). // Default: 2 + * max_delay?: int|Param, // Max time in ms that a retry should ever be delayed (0 = infinite). // Default: 0 + * jitter?: float|Param, // Randomness in percent (between 0 and 1) to apply to the delay. // Default: 0.1 + * }, + * }, + * mock_response_factory?: scalar|Param|null, // The id of the service that should generate mock responses. It should be either an invokable or an iterable. + * scoped_clients?: array, + * headers?: array, + * max_redirects?: int|Param, // The maximum number of redirects to follow. + * http_version?: scalar|Param|null, // The default HTTP version, typically 1.1 or 2.0, leave to null for the best version. + * resolve?: array, + * proxy?: scalar|Param|null, // The URL of the proxy to pass requests through or null for automatic detection. + * no_proxy?: scalar|Param|null, // A comma separated list of hosts that do not require a proxy to be reached. + * timeout?: float|Param, // The idle timeout, defaults to the "default_socket_timeout" ini parameter. + * max_duration?: float|Param, // The maximum execution time for the request+response as a whole. + * bindto?: scalar|Param|null, // A network interface name, IP address, a host name or a UNIX socket to bind to. + * verify_peer?: bool|Param, // Indicates if the peer should be verified in a TLS context. + * verify_host?: bool|Param, // Indicates if the host should exist as a certificate common name. + * cafile?: scalar|Param|null, // A certificate authority file. + * capath?: scalar|Param|null, // A directory that contains multiple certificate authority files. + * local_cert?: scalar|Param|null, // A PEM formatted certificate file. + * local_pk?: scalar|Param|null, // A private key file. + * passphrase?: scalar|Param|null, // The passphrase used to encrypt the "local_pk" file. + * ciphers?: scalar|Param|null, // A list of TLS ciphers separated by colons, commas or spaces (e.g. "RC3-SHA:TLS13-AES-128-GCM-SHA256"...). + * peer_fingerprint?: array{ // Associative array: hashing algorithm => hash(es). + * sha1?: mixed, + * pin-sha256?: mixed, + * md5?: mixed, + * }, + * crypto_method?: scalar|Param|null, // The minimum version of TLS to accept; must be one of STREAM_CRYPTO_METHOD_TLSv*_CLIENT constants. + * extra?: array, + * rate_limiter?: scalar|Param|null, // Rate limiter name to use for throttling requests. // Default: null + * caching?: bool|array{ // Caching configuration. + * enabled?: bool|Param, // Default: false + * cache_pool?: string|Param, // The taggable cache pool to use for storing the responses. // Default: "cache.http_client" + * shared?: bool|Param, // Indicates whether the cache is shared (public) or private. // Default: true + * max_ttl?: int|Param, // The maximum TTL (in seconds) allowed for cached responses. Null means no cap. // Default: null + * }, + * retry_failed?: bool|array{ + * enabled?: bool|Param, // Default: false + * retry_strategy?: scalar|Param|null, // service id to override the retry strategy. // Default: null + * http_codes?: int|string|array, + * }>, + * max_retries?: int|Param, // Default: 3 + * delay?: int|Param, // Time in ms to delay (or the initial value when multiplier is used). // Default: 1000 + * multiplier?: float|Param, // If greater than 1, delay will grow exponentially for each retry: delay * (multiple ^ retries). // Default: 2 + * max_delay?: int|Param, // Max time in ms that a retry should ever be delayed (0 = infinite). // Default: 0 + * jitter?: float|Param, // Randomness in percent (between 0 and 1) to apply to the delay. // Default: 0.1 + * }, + * }>, + * }, + * mailer?: bool|array{ // Mailer configuration + * enabled?: bool|Param, // Default: false + * message_bus?: scalar|Param|null, // The message bus to use. Defaults to the default bus if the Messenger component is installed. // Default: null + * dsn?: scalar|Param|null, // Default: null + * transports?: array, + * envelope?: array{ // Mailer Envelope configuration + * sender?: scalar|Param|null, + * recipients?: string|list, + * allowed_recipients?: string|list, + * }, + * headers?: array, + * dkim_signer?: bool|array{ // DKIM signer configuration + * enabled?: bool|Param, // Default: false + * key?: scalar|Param|null, // Key content, or path to key (in PEM format with the `file://` prefix) // Default: "" + * domain?: scalar|Param|null, // Default: "" + * select?: scalar|Param|null, // Default: "" + * passphrase?: scalar|Param|null, // The private key passphrase // Default: "" + * options?: array, + * }, + * smime_signer?: bool|array{ // S/MIME signer configuration + * enabled?: bool|Param, // Default: false + * key?: scalar|Param|null, // Path to key (in PEM format) // Default: "" + * certificate?: scalar|Param|null, // Path to certificate (in PEM format without the `file://` prefix) // Default: "" + * passphrase?: scalar|Param|null, // The private key passphrase // Default: null + * extra_certificates?: scalar|Param|null, // Default: null + * sign_options?: int|Param, // Default: null + * }, + * smime_encrypter?: bool|array{ // S/MIME encrypter configuration + * enabled?: bool|Param, // Default: false + * repository?: scalar|Param|null, // S/MIME certificate repository service. This service shall implement the `Symfony\Component\Mailer\EventListener\SmimeCertificateRepositoryInterface`. // Default: "" + * cipher?: int|Param, // A set of algorithms used to encrypt the message // Default: null + * }, + * }, + * secrets?: bool|array{ + * enabled?: bool|Param, // Default: true + * vault_directory?: scalar|Param|null, // Default: "%kernel.project_dir%/config/secrets/%kernel.runtime_environment%" + * local_dotenv_file?: scalar|Param|null, // Default: "%kernel.project_dir%/.env.%kernel.environment%.local" + * decryption_env_var?: scalar|Param|null, // Default: "base64:default::SYMFONY_DECRYPTION_SECRET" + * }, + * notifier?: bool|array{ // Notifier configuration + * enabled?: bool|Param, // Default: false + * message_bus?: scalar|Param|null, // The message bus to use. Defaults to the default bus if the Messenger component is installed. // Default: null + * chatter_transports?: array, + * texter_transports?: array, + * notification_on_failed_messages?: bool|Param, // Default: false + * channel_policy?: array>, + * admin_recipients?: list, + * }, + * rate_limiter?: bool|array{ // Rate limiter configuration + * enabled?: bool|Param, // Default: false + * limiters?: array, + * limit?: int|Param, // The maximum allowed hits in a fixed interval or burst. + * interval?: scalar|Param|null, // Configures the fixed interval if "policy" is set to "fixed_window" or "sliding_window". The value must be a number followed by "second", "minute", "hour", "day", "week" or "month" (or their plural equivalent). + * rate?: array{ // Configures the fill rate if "policy" is set to "token_bucket". + * interval?: scalar|Param|null, // Configures the rate interval. The value must be a number followed by "second", "minute", "hour", "day", "week" or "month" (or their plural equivalent). + * amount?: int|Param, // Amount of tokens to add each interval. // Default: 1 + * }, + * }>, + * }, + * uid?: bool|array{ // Uid configuration + * enabled?: bool|Param, // Default: true + * default_uuid_version?: 7|6|4|1|Param, // Default: 7 + * name_based_uuid_version?: 5|3|Param, // Default: 5 + * name_based_uuid_namespace?: scalar|Param|null, + * time_based_uuid_version?: 7|6|1|Param, // Default: 7 + * time_based_uuid_node?: scalar|Param|null, + * }, + * html_sanitizer?: bool|array{ // HtmlSanitizer configuration + * enabled?: bool|Param, // Default: false + * sanitizers?: array, + * block_elements?: string|list, + * drop_elements?: string|list, + * allow_attributes?: array, + * drop_attributes?: array, + * force_attributes?: array>, + * force_https_urls?: bool|Param, // Transforms URLs using the HTTP scheme to use the HTTPS scheme instead. // Default: false + * allowed_link_schemes?: string|list, + * allowed_link_hosts?: null|string|list, + * allow_relative_links?: bool|Param, // Allows relative URLs to be used in links href attributes. // Default: false + * allowed_media_schemes?: string|list, + * allowed_media_hosts?: null|string|list, + * allow_relative_medias?: bool|Param, // Allows relative URLs to be used in media source attributes (img, audio, video, ...). // Default: false + * with_attribute_sanitizers?: string|list, + * without_attribute_sanitizers?: string|list, + * max_input_length?: int|Param, // The maximum length allowed for the sanitized input. // Default: 0 + * }>, + * }, + * webhook?: bool|array{ // Webhook configuration + * enabled?: bool|Param, // Default: false + * message_bus?: scalar|Param|null, // The message bus to use. // Default: "messenger.default_bus" + * routing?: array, + * }, + * remote-event?: bool|array{ // RemoteEvent configuration + * enabled?: bool|Param, // Default: false + * }, + * json_streamer?: bool|array{ // JSON streamer configuration + * enabled?: bool|Param, // Default: false + * }, + * } + * @psalm-type NelmioCorsConfig = array{ + * defaults?: array{ + * allow_credentials?: bool|Param, // Default: false + * allow_origin?: list, + * allow_headers?: list, + * allow_methods?: list, + * allow_private_network?: bool|Param, // Default: false + * expose_headers?: list, + * max_age?: scalar|Param|null, // Default: 0 + * hosts?: list, + * origin_regex?: bool|Param, // Default: false + * forced_allow_origin_value?: scalar|Param|null, // Default: null + * skip_same_as_origin?: bool|Param, // Default: true + * }, + * paths?: array, + * allow_headers?: list, + * allow_methods?: list, + * allow_private_network?: bool|Param, + * expose_headers?: list, + * max_age?: scalar|Param|null, // Default: 0 + * hosts?: list, + * origin_regex?: bool|Param, + * forced_allow_origin_value?: scalar|Param|null, // Default: null + * skip_same_as_origin?: bool|Param, + * }>, + * } + * @psalm-type DoctrineConfig = array{ + * dbal?: array{ + * default_connection?: scalar|Param|null, + * types?: array, + * driver_schemes?: array, + * connections?: array, + * mapping_types?: array, + * default_table_options?: array, + * schema_manager_factory?: scalar|Param|null, // Default: "doctrine.dbal.default_schema_manager_factory" + * result_cache?: scalar|Param|null, + * replicas?: array, + * }>, + * }, + * orm?: array{ + * default_entity_manager?: scalar|Param|null, + * enable_native_lazy_objects?: bool|Param, // Deprecated: The "enable_native_lazy_objects" option is deprecated and will be removed in DoctrineBundle 4.0, as native lazy objects are now always enabled. // Default: true + * controller_resolver?: bool|array{ + * enabled?: bool|Param, // Default: true + * auto_mapping?: bool|Param, // Deprecated: The "doctrine.orm.controller_resolver.auto_mapping.auto_mapping" option is deprecated and will be removed in DoctrineBundle 4.0, as it only accepts `false` since 3.0. // Set to true to enable using route placeholders as lookup criteria when the primary key doesn't match the argument name // Default: false + * evict_cache?: bool|Param, // Set to true to fetch the entity from the database instead of using the cache, if any // Default: false + * }, + * entity_managers?: array, + * }>, + * }>, + * }, + * connection?: scalar|Param|null, + * class_metadata_factory_name?: scalar|Param|null, // Default: "Doctrine\\ORM\\Mapping\\ClassMetadataFactory" + * default_repository_class?: scalar|Param|null, // Default: "Doctrine\\ORM\\EntityRepository" + * auto_mapping?: scalar|Param|null, // Default: false + * naming_strategy?: scalar|Param|null, // Default: "doctrine.orm.naming_strategy.default" + * quote_strategy?: scalar|Param|null, // Default: "doctrine.orm.quote_strategy.default" + * typed_field_mapper?: scalar|Param|null, // Default: "doctrine.orm.typed_field_mapper.default" + * entity_listener_resolver?: scalar|Param|null, // Default: null + * fetch_mode_subselect_batch_size?: scalar|Param|null, + * repository_factory?: scalar|Param|null, // Default: "doctrine.orm.container_repository_factory" + * schema_ignore_classes?: list, + * validate_xml_mapping?: bool|Param, // Set to "true" to opt-in to the new mapping driver mode that was added in Doctrine ORM 2.14 and will be mandatory in ORM 3.0. See https://github.com/doctrine/orm/pull/6728. // Default: false + * second_level_cache?: array{ + * region_cache_driver?: string|array{ + * type?: scalar|Param|null, // Default: null + * id?: scalar|Param|null, + * pool?: scalar|Param|null, + * }, + * region_lock_lifetime?: scalar|Param|null, // Default: 60 + * log_enabled?: bool|Param, // Default: true + * region_lifetime?: scalar|Param|null, // Default: 3600 + * enabled?: bool|Param, // Default: true + * factory?: scalar|Param|null, + * regions?: array, + * loggers?: array, + * }, + * hydrators?: array, + * mappings?: array, + * dql?: array{ + * string_functions?: array, + * numeric_functions?: array, + * datetime_functions?: array, + * }, + * filters?: array, + * }>, + * identity_generation_preferences?: array, + * }>, + * resolve_target_entities?: array, + * }, + * } + * @psalm-type DoctrineMigrationsConfig = array{ + * enable_service_migrations?: bool|Param, // Whether to enable fetching migrations from the service container. // Default: false + * migrations_paths?: array, + * services?: array, + * factories?: array, + * storage?: array{ // Storage to use for migration status metadata. + * table_storage?: array{ // The default metadata storage, implemented as a table in the database. + * table_name?: scalar|Param|null, // Default: null + * version_column_name?: scalar|Param|null, // Default: null + * version_column_length?: scalar|Param|null, // Default: null + * executed_at_column_name?: scalar|Param|null, // Default: null + * execution_time_column_name?: scalar|Param|null, // Default: null + * }, + * }, + * migrations?: list, + * connection?: scalar|Param|null, // Connection name to use for the migrations database. // Default: null + * em?: scalar|Param|null, // Entity manager name to use for the migrations database (available when doctrine/orm is installed). // Default: null + * all_or_nothing?: scalar|Param|null, // Run all migrations in a transaction. // Default: false + * check_database_platform?: scalar|Param|null, // Adds an extra check in the generated migrations to allow execution only on the same platform as they were initially generated on. // Default: true + * custom_template?: scalar|Param|null, // Custom template path for generated migration classes. // Default: null + * organize_migrations?: scalar|Param|null, // Organize migrations mode. Possible values are: "BY_YEAR", "BY_YEAR_AND_MONTH", false // Default: false + * enable_profiler?: bool|Param, // Whether or not to enable the profiler collector to calculate and visualize migration status. This adds some queries overhead. // Default: false + * transactional?: bool|Param, // Whether or not to wrap migrations in a single transaction. // Default: true + * } + * @psalm-type SecurityConfig = array{ + * access_denied_url?: scalar|Param|null, // Default: null + * session_fixation_strategy?: "none"|"migrate"|"invalidate"|Param, // Default: "migrate" + * hide_user_not_found?: bool|Param, // Deprecated: The "hide_user_not_found" option is deprecated and will be removed in 8.0. Use the "expose_security_errors" option instead. + * expose_security_errors?: \Symfony\Component\Security\Http\Authentication\ExposeSecurityLevel::None|\Symfony\Component\Security\Http\Authentication\ExposeSecurityLevel::AccountStatus|\Symfony\Component\Security\Http\Authentication\ExposeSecurityLevel::All|Param, // Default: "none" + * erase_credentials?: bool|Param, // Default: true + * access_decision_manager?: array{ + * strategy?: "affirmative"|"consensus"|"unanimous"|"priority"|Param, + * service?: scalar|Param|null, + * strategy_service?: scalar|Param|null, + * allow_if_all_abstain?: bool|Param, // Default: false + * allow_if_equal_granted_denied?: bool|Param, // Default: true + * }, + * password_hashers?: array, + * hash_algorithm?: scalar|Param|null, // Name of hashing algorithm for PBKDF2 (i.e. sha256, sha512, etc..) See hash_algos() for a list of supported algorithms. // Default: "sha512" + * key_length?: scalar|Param|null, // Default: 40 + * ignore_case?: bool|Param, // Default: false + * encode_as_base64?: bool|Param, // Default: true + * iterations?: scalar|Param|null, // Default: 5000 + * cost?: int|Param, // Default: null + * memory_cost?: scalar|Param|null, // Default: null + * time_cost?: scalar|Param|null, // Default: null + * id?: scalar|Param|null, + * }>, + * providers?: array, + * }, + * entity?: array{ + * class?: scalar|Param|null, // The full entity class name of your user class. + * property?: scalar|Param|null, // Default: null + * manager_name?: scalar|Param|null, // Default: null + * }, + * memory?: array{ + * users?: array, + * }>, + * }, + * ldap?: array{ + * service?: scalar|Param|null, + * base_dn?: scalar|Param|null, + * search_dn?: scalar|Param|null, // Default: null + * search_password?: scalar|Param|null, // Default: null + * extra_fields?: list, + * default_roles?: string|list, + * role_fetcher?: scalar|Param|null, // Default: null + * uid_key?: scalar|Param|null, // Default: "sAMAccountName" + * filter?: scalar|Param|null, // Default: "({uid_key}={user_identifier})" + * password_attribute?: scalar|Param|null, // Default: null + * }, + * lexik_jwt?: array{ + * class?: scalar|Param|null, // Default: "Lexik\\Bundle\\JWTAuthenticationBundle\\Security\\User\\JWTUser" + * }, + * }>, + * firewalls?: array, + * security?: bool|Param, // Default: true + * user_checker?: scalar|Param|null, // The UserChecker to use when authenticating users in this firewall. // Default: "security.user_checker" + * request_matcher?: scalar|Param|null, + * access_denied_url?: scalar|Param|null, + * access_denied_handler?: scalar|Param|null, + * entry_point?: scalar|Param|null, // An enabled authenticator name or a service id that implements "Symfony\Component\Security\Http\EntryPoint\AuthenticationEntryPointInterface". + * provider?: scalar|Param|null, + * stateless?: bool|Param, // Default: false + * lazy?: bool|Param, // Default: false + * context?: scalar|Param|null, + * logout?: array{ + * enable_csrf?: bool|Param|null, // Default: null + * csrf_token_id?: scalar|Param|null, // Default: "logout" + * csrf_parameter?: scalar|Param|null, // Default: "_csrf_token" + * csrf_token_manager?: scalar|Param|null, + * path?: scalar|Param|null, // Default: "/logout" + * target?: scalar|Param|null, // Default: "/" + * invalidate_session?: bool|Param, // Default: true + * clear_site_data?: string|list<"*"|"cache"|"cookies"|"storage"|"executionContexts"|Param>, + * delete_cookies?: string|array, + * }, + * switch_user?: array{ + * provider?: scalar|Param|null, + * parameter?: scalar|Param|null, // Default: "_switch_user" + * role?: scalar|Param|null, // Default: "ROLE_ALLOWED_TO_SWITCH" + * target_route?: scalar|Param|null, // Default: null + * }, + * required_badges?: list, + * custom_authenticators?: list, + * login_throttling?: array{ + * limiter?: scalar|Param|null, // A service id implementing "Symfony\Component\HttpFoundation\RateLimiter\RequestRateLimiterInterface". + * max_attempts?: int|Param, // Default: 5 + * interval?: scalar|Param|null, // Default: "1 minute" + * lock_factory?: scalar|Param|null, // The service ID of the lock factory used by the login rate limiter (or null to disable locking). // Default: null + * cache_pool?: string|Param, // The cache pool to use for storing the limiter state // Default: "cache.rate_limiter" + * storage_service?: string|Param, // The service ID of a custom storage implementation, this precedes any configured "cache_pool" // Default: null + * }, + * x509?: array{ + * provider?: scalar|Param|null, + * user?: scalar|Param|null, // Default: "SSL_CLIENT_S_DN_Email" + * credentials?: scalar|Param|null, // Default: "SSL_CLIENT_S_DN" + * user_identifier?: scalar|Param|null, // Default: "emailAddress" + * }, + * remote_user?: array{ + * provider?: scalar|Param|null, + * user?: scalar|Param|null, // Default: "REMOTE_USER" + * }, + * jwt?: array{ + * provider?: scalar|Param|null, // Default: null + * authenticator?: scalar|Param|null, // Default: "lexik_jwt_authentication.security.jwt_authenticator" + * }, + * login_link?: array{ + * check_route?: scalar|Param|null, // Route that will validate the login link - e.g. "app_login_link_verify". + * check_post_only?: scalar|Param|null, // If true, only HTTP POST requests to "check_route" will be handled by the authenticator. // Default: false + * signature_properties?: list, + * lifetime?: int|Param, // The lifetime of the login link in seconds. // Default: 600 + * max_uses?: int|Param, // Max number of times a login link can be used - null means unlimited within lifetime. // Default: null + * used_link_cache?: scalar|Param|null, // Cache service id used to expired links of max_uses is set. + * success_handler?: scalar|Param|null, // A service id that implements Symfony\Component\Security\Http\Authentication\AuthenticationSuccessHandlerInterface. + * failure_handler?: scalar|Param|null, // A service id that implements Symfony\Component\Security\Http\Authentication\AuthenticationFailureHandlerInterface. + * provider?: scalar|Param|null, // The user provider to load users from. + * secret?: scalar|Param|null, // Default: "%kernel.secret%" + * always_use_default_target_path?: bool|Param, // Default: false + * default_target_path?: scalar|Param|null, // Default: "/" + * login_path?: scalar|Param|null, // Default: "/login" + * target_path_parameter?: scalar|Param|null, // Default: "_target_path" + * use_referer?: bool|Param, // Default: false + * failure_path?: scalar|Param|null, // Default: null + * failure_forward?: bool|Param, // Default: false + * failure_path_parameter?: scalar|Param|null, // Default: "_failure_path" + * }, + * form_login?: array{ + * provider?: scalar|Param|null, + * remember_me?: bool|Param, // Default: true + * success_handler?: scalar|Param|null, + * failure_handler?: scalar|Param|null, + * check_path?: scalar|Param|null, // Default: "/login_check" + * use_forward?: bool|Param, // Default: false + * login_path?: scalar|Param|null, // Default: "/login" + * username_parameter?: scalar|Param|null, // Default: "_username" + * password_parameter?: scalar|Param|null, // Default: "_password" + * csrf_parameter?: scalar|Param|null, // Default: "_csrf_token" + * csrf_token_id?: scalar|Param|null, // Default: "authenticate" + * enable_csrf?: bool|Param, // Default: false + * post_only?: bool|Param, // Default: true + * form_only?: bool|Param, // Default: false + * always_use_default_target_path?: bool|Param, // Default: false + * default_target_path?: scalar|Param|null, // Default: "/" + * target_path_parameter?: scalar|Param|null, // Default: "_target_path" + * use_referer?: bool|Param, // Default: false + * failure_path?: scalar|Param|null, // Default: null + * failure_forward?: bool|Param, // Default: false + * failure_path_parameter?: scalar|Param|null, // Default: "_failure_path" + * }, + * form_login_ldap?: array{ + * provider?: scalar|Param|null, + * remember_me?: bool|Param, // Default: true + * success_handler?: scalar|Param|null, + * failure_handler?: scalar|Param|null, + * check_path?: scalar|Param|null, // Default: "/login_check" + * use_forward?: bool|Param, // Default: false + * login_path?: scalar|Param|null, // Default: "/login" + * username_parameter?: scalar|Param|null, // Default: "_username" + * password_parameter?: scalar|Param|null, // Default: "_password" + * csrf_parameter?: scalar|Param|null, // Default: "_csrf_token" + * csrf_token_id?: scalar|Param|null, // Default: "authenticate" + * enable_csrf?: bool|Param, // Default: false + * post_only?: bool|Param, // Default: true + * form_only?: bool|Param, // Default: false + * always_use_default_target_path?: bool|Param, // Default: false + * default_target_path?: scalar|Param|null, // Default: "/" + * target_path_parameter?: scalar|Param|null, // Default: "_target_path" + * use_referer?: bool|Param, // Default: false + * failure_path?: scalar|Param|null, // Default: null + * failure_forward?: bool|Param, // Default: false + * failure_path_parameter?: scalar|Param|null, // Default: "_failure_path" + * service?: scalar|Param|null, // Default: "ldap" + * dn_string?: scalar|Param|null, // Default: "{user_identifier}" + * query_string?: scalar|Param|null, + * search_dn?: scalar|Param|null, // Default: "" + * search_password?: scalar|Param|null, // Default: "" + * }, + * json_login?: array{ + * provider?: scalar|Param|null, + * remember_me?: bool|Param, // Default: true + * success_handler?: scalar|Param|null, + * failure_handler?: scalar|Param|null, + * check_path?: scalar|Param|null, // Default: "/login_check" + * use_forward?: bool|Param, // Default: false + * login_path?: scalar|Param|null, // Default: "/login" + * username_path?: scalar|Param|null, // Default: "username" + * password_path?: scalar|Param|null, // Default: "password" + * }, + * json_login_ldap?: array{ + * provider?: scalar|Param|null, + * remember_me?: bool|Param, // Default: true + * success_handler?: scalar|Param|null, + * failure_handler?: scalar|Param|null, + * check_path?: scalar|Param|null, // Default: "/login_check" + * use_forward?: bool|Param, // Default: false + * login_path?: scalar|Param|null, // Default: "/login" + * username_path?: scalar|Param|null, // Default: "username" + * password_path?: scalar|Param|null, // Default: "password" + * service?: scalar|Param|null, // Default: "ldap" + * dn_string?: scalar|Param|null, // Default: "{user_identifier}" + * query_string?: scalar|Param|null, + * search_dn?: scalar|Param|null, // Default: "" + * search_password?: scalar|Param|null, // Default: "" + * }, + * access_token?: array{ + * provider?: scalar|Param|null, + * remember_me?: bool|Param, // Default: true + * success_handler?: scalar|Param|null, + * failure_handler?: scalar|Param|null, + * realm?: scalar|Param|null, // Default: null + * token_extractors?: string|list, + * token_handler?: string|array{ + * id?: scalar|Param|null, + * oidc_user_info?: string|array{ + * base_uri?: scalar|Param|null, // Base URI of the userinfo endpoint on the OIDC server, or the OIDC server URI to use the discovery (require "discovery" to be configured). + * discovery?: array{ // Enable the OIDC discovery. + * cache?: array{ + * id?: scalar|Param|null, // Cache service id to use to cache the OIDC discovery configuration. + * }, + * }, + * claim?: scalar|Param|null, // Claim which contains the user identifier (e.g. sub, email, etc.). // Default: "sub" + * client?: scalar|Param|null, // HttpClient service id to use to call the OIDC server. + * }, + * oidc?: array{ + * discovery?: array{ // Enable the OIDC discovery. + * base_uri?: string|list, + * cache?: array{ + * id?: scalar|Param|null, // Cache service id to use to cache the OIDC discovery configuration. + * }, + * }, + * claim?: scalar|Param|null, // Claim which contains the user identifier (e.g.: sub, email..). // Default: "sub" + * audience?: scalar|Param|null, // Audience set in the token, for validation purpose. + * issuers?: list, + * algorithm?: array, + * algorithms?: list, + * key?: scalar|Param|null, // Deprecated: The "key" option is deprecated and will be removed in 8.0. Use the "keyset" option instead. // JSON-encoded JWK used to sign the token (must contain a "kty" key). + * keyset?: scalar|Param|null, // JSON-encoded JWKSet used to sign the token (must contain a list of valid public keys). + * encryption?: bool|array{ + * enabled?: bool|Param, // Default: false + * enforce?: bool|Param, // When enabled, the token shall be encrypted. // Default: false + * algorithms?: list, + * keyset?: scalar|Param|null, // JSON-encoded JWKSet used to decrypt the token (must contain a list of valid private keys). + * }, + * }, + * cas?: array{ + * validation_url?: scalar|Param|null, // CAS server validation URL + * prefix?: scalar|Param|null, // CAS prefix // Default: "cas" + * http_client?: scalar|Param|null, // HTTP Client service // Default: null + * }, + * oauth2?: scalar|Param|null, + * }, + * }, + * http_basic?: array{ + * provider?: scalar|Param|null, + * realm?: scalar|Param|null, // Default: "Secured Area" + * }, + * http_basic_ldap?: array{ + * provider?: scalar|Param|null, + * realm?: scalar|Param|null, // Default: "Secured Area" + * service?: scalar|Param|null, // Default: "ldap" + * dn_string?: scalar|Param|null, // Default: "{user_identifier}" + * query_string?: scalar|Param|null, + * search_dn?: scalar|Param|null, // Default: "" + * search_password?: scalar|Param|null, // Default: "" + * }, + * remember_me?: array{ + * secret?: scalar|Param|null, // Default: "%kernel.secret%" + * service?: scalar|Param|null, + * user_providers?: string|list, + * catch_exceptions?: bool|Param, // Default: true + * signature_properties?: list, + * token_provider?: string|array{ + * service?: scalar|Param|null, // The service ID of a custom remember-me token provider. + * doctrine?: bool|array{ + * enabled?: bool|Param, // Default: false + * connection?: scalar|Param|null, // Default: null + * }, + * }, + * token_verifier?: scalar|Param|null, // The service ID of a custom rememberme token verifier. + * name?: scalar|Param|null, // Default: "REMEMBERME" + * lifetime?: int|Param, // Default: 31536000 + * path?: scalar|Param|null, // Default: "/" + * domain?: scalar|Param|null, // Default: null + * secure?: true|false|"auto"|Param, // Default: false + * httponly?: bool|Param, // Default: true + * samesite?: null|"lax"|"strict"|"none"|Param, // Default: null + * always_remember_me?: bool|Param, // Default: false + * remember_me_parameter?: scalar|Param|null, // Default: "_remember_me" + * }, + * }>, + * access_control?: list, + * attributes?: array, + * route?: scalar|Param|null, // Default: null + * methods?: string|list, + * allow_if?: scalar|Param|null, // Default: null + * roles?: string|list, + * }>, + * role_hierarchy?: array>, + * } + * @psalm-type TwigConfig = array{ + * form_themes?: list, + * globals?: array, + * autoescape_service?: scalar|Param|null, // Default: null + * autoescape_service_method?: scalar|Param|null, // Default: null + * base_template_class?: scalar|Param|null, // Deprecated: The child node "base_template_class" at path "twig.base_template_class" is deprecated. + * cache?: scalar|Param|null, // Default: true + * charset?: scalar|Param|null, // Default: "%kernel.charset%" + * debug?: bool|Param, // Default: "%kernel.debug%" + * strict_variables?: bool|Param, // Default: "%kernel.debug%" + * auto_reload?: scalar|Param|null, + * optimizations?: int|Param, + * default_path?: scalar|Param|null, // The default path used to load templates. // Default: "%kernel.project_dir%/templates" + * file_name_pattern?: string|list, + * paths?: array, + * date?: array{ // The default format options used by the date filter. + * format?: scalar|Param|null, // Default: "F j, Y H:i" + * interval_format?: scalar|Param|null, // Default: "%d days" + * timezone?: scalar|Param|null, // The timezone used when formatting dates, when set to null, the timezone returned by date_default_timezone_get() is used. // Default: null + * }, + * number_format?: array{ // The default format options for the number_format filter. + * decimals?: int|Param, // Default: 0 + * decimal_point?: scalar|Param|null, // Default: "." + * thousands_separator?: scalar|Param|null, // Default: "," + * }, + * mailer?: array{ + * html_to_text_converter?: scalar|Param|null, // A service implementing the "Symfony\Component\Mime\HtmlToTextConverter\HtmlToTextConverterInterface". // Default: null + * }, + * } + * @psalm-type ApiPlatformConfig = array{ + * title?: scalar|Param|null, // The title of the API. // Default: "" + * description?: scalar|Param|null, // The description of the API. // Default: "" + * version?: scalar|Param|null, // The version of the API. // Default: "0.0.0" + * show_webby?: bool|Param, // If true, show Webby on the documentation page // Default: true + * use_symfony_listeners?: bool|Param, // Uses Symfony event listeners instead of the ApiPlatform\Symfony\Controller\MainController. // Default: false + * name_converter?: scalar|Param|null, // Specify a name converter to use. // Default: null + * asset_package?: scalar|Param|null, // Specify an asset package name to use. // Default: null + * path_segment_name_generator?: scalar|Param|null, // Specify a path name generator to use. // Default: "api_platform.metadata.path_segment_name_generator.underscore" + * inflector?: scalar|Param|null, // Specify an inflector to use. // Default: "api_platform.metadata.inflector" + * validator?: array{ + * serialize_payload_fields?: mixed, // Set to null to serialize all payload fields when a validation error is thrown, or set the fields you want to include explicitly. // Default: [] + * query_parameter_validation?: bool|Param, // Deprecated: Will be removed in API Platform 5.0. // Default: true + * }, + * jsonapi?: array{ + * use_iri_as_id?: bool|Param, // Set to false to use entity identifiers instead of IRIs as the "id" field in JSON:API responses. // Default: true + * }, + * eager_loading?: bool|array{ + * enabled?: bool|Param, // Default: true + * fetch_partial?: bool|Param, // Fetch only partial data according to serialization groups. If enabled, Doctrine ORM entities will not work as expected if any of the other fields are used. // Default: false + * max_joins?: int|Param, // Max number of joined relations before EagerLoading throws a RuntimeException // Default: 30 + * force_eager?: bool|Param, // Force join on every relation. If disabled, it will only join relations having the EAGER fetch mode. // Default: true + * }, + * handle_symfony_errors?: bool|Param, // Allows to handle symfony exceptions. // Default: false + * enable_swagger?: bool|Param, // Enable the Swagger documentation and export. // Default: true + * enable_json_streamer?: bool|Param, // Enable json streamer. // Default: false + * enable_swagger_ui?: bool|Param, // Enable Swagger UI // Default: true + * enable_re_doc?: bool|Param, // Enable ReDoc // Default: true + * enable_scalar?: bool|Param, // Enable Scalar API Reference // Default: true + * enable_entrypoint?: bool|Param, // Enable the entrypoint // Default: true + * enable_docs?: bool|Param, // Enable the docs // Default: true + * enable_profiler?: bool|Param, // Enable the data collector and the WebProfilerBundle integration. // Default: true + * enable_phpdoc_parser?: bool|Param, // Enable resource metadata collector using PHPStan PhpDocParser. // Default: true + * enable_link_security?: bool|Param, // Deprecated: This option is always enabled and will be removed in API Platform 5.0. // Enable security for Links (sub resources). // Default: true + * collection?: array{ + * exists_parameter_name?: scalar|Param|null, // The name of the query parameter to filter on nullable field values. // Default: "exists" + * order?: scalar|Param|null, // The default order of results. // Default: "ASC" + * order_parameter_name?: scalar|Param|null, // The name of the query parameter to order results. // Default: "order" + * order_nulls_comparison?: "nulls_smallest"|"nulls_largest"|"nulls_always_first"|"nulls_always_last"|Param|null, // The nulls comparison strategy. // Default: null + * pagination?: bool|array{ + * enabled?: bool|Param, // Default: true + * page_parameter_name?: scalar|Param|null, // The default name of the parameter handling the page number. // Default: "page" + * enabled_parameter_name?: scalar|Param|null, // The name of the query parameter to enable or disable pagination. // Default: "pagination" + * items_per_page_parameter_name?: scalar|Param|null, // The name of the query parameter to set the number of items per page. // Default: "itemsPerPage" + * partial_parameter_name?: scalar|Param|null, // The name of the query parameter to enable or disable partial pagination. // Default: "partial" + * }, + * }, + * mapping?: array{ + * imports?: list, + * paths?: list, + * }, + * resource_class_directories?: list, + * serializer?: array{ + * hydra_prefix?: bool|Param, // Use the "hydra:" prefix. // Default: false + * }, + * doctrine?: bool|array{ + * enabled?: bool|Param, // Default: true + * }, + * doctrine_mongodb_odm?: bool|array{ + * enabled?: bool|Param, // Default: false + * }, + * oauth?: bool|array{ + * enabled?: bool|Param, // Default: false + * clientId?: scalar|Param|null, // The oauth client id. // Default: "" + * clientSecret?: scalar|Param|null, // The OAuth client secret. Never use this parameter in your production environment. It exposes crucial security information. This feature is intended for dev/test environments only. Enable "oauth.pkce" instead // Default: "" + * pkce?: bool|Param, // Enable the oauth PKCE. // Default: false + * type?: scalar|Param|null, // The oauth type. // Default: "oauth2" + * flow?: scalar|Param|null, // The oauth flow grant type. // Default: "application" + * tokenUrl?: scalar|Param|null, // The oauth token url. // Default: "" + * authorizationUrl?: scalar|Param|null, // The oauth authentication url. // Default: "" + * refreshUrl?: scalar|Param|null, // The oauth refresh url. // Default: "" + * scopes?: list, + * }, + * graphql?: bool|array{ + * enabled?: bool|Param, // Default: false + * default_ide?: scalar|Param|null, // Default: "graphiql" + * graphiql?: bool|array{ + * enabled?: bool|Param, // Default: false + * }, + * introspection?: bool|array{ + * enabled?: bool|Param, // Default: true + * }, + * max_query_depth?: int|Param, // Default: 20 + * graphql_playground?: bool|array{ // Deprecated: The "graphql_playground" configuration is deprecated and will be ignored. + * enabled?: bool|Param, // Default: false + * }, + * max_query_complexity?: int|Param, // Default: 500 + * nesting_separator?: scalar|Param|null, // The separator to use to filter nested fields. // Default: "_" + * collection?: array{ + * pagination?: bool|array{ + * enabled?: bool|Param, // Default: true + * }, + * }, + * }, + * swagger?: array{ + * persist_authorization?: bool|Param, // Persist the SwaggerUI Authorization in the localStorage. // Default: false + * versions?: list, + * api_keys?: array, + * http_auth?: array, + * swagger_ui_extra_configuration?: mixed, // To pass extra configuration to Swagger UI, like docExpansion or filter. // Default: [] + * }, + * http_cache?: array{ + * public?: bool|Param|null, // To make all responses public by default. // Default: null + * invalidation?: bool|array{ // Enable the tags-based cache invalidation system. + * enabled?: bool|Param, // Default: false + * varnish_urls?: list, + * urls?: list, + * scoped_clients?: list, + * max_header_length?: int|Param, // Max header length supported by the cache server. // Default: 7500 + * request_options?: mixed, // To pass options to the client charged with the request. // Default: [] + * purger?: scalar|Param|null, // Specify a purger to use (available values: "api_platform.http_cache.purger.varnish.ban", "api_platform.http_cache.purger.varnish.xkey", "api_platform.http_cache.purger.souin"). // Default: "api_platform.http_cache.purger.varnish" + * xkey?: array{ // Deprecated: The "xkey" configuration is deprecated, use your own purger to customize surrogate keys or the appropriate parameters. + * glue?: scalar|Param|null, // xkey glue between keys // Default: " " + * }, + * }, + * }, + * mercure?: bool|array{ + * enabled?: bool|Param, // Default: false + * hub_url?: scalar|Param|null, // The URL sent in the Link HTTP header. If not set, will default to the URL for MercureBundle's default hub. // Default: null + * include_type?: bool|Param, // Always include @type in updates (including delete ones). // Default: false + * }, + * messenger?: bool|array{ + * enabled?: bool|Param, // Default: true + * }, + * elasticsearch?: bool|array{ + * enabled?: bool|Param, // Default: false + * hosts?: list, + * ssl_ca_bundle?: scalar|Param|null, // Path to the SSL CA bundle file for Elasticsearch SSL verification. // Default: null + * ssl_verification?: bool|Param, // Enable or disable SSL verification for Elasticsearch connections. // Default: true + * client?: "elasticsearch"|"opensearch"|Param, // The search engine client to use: "elasticsearch" or "opensearch". // Default: "elasticsearch" + * }, + * openapi?: array{ + * contact?: array{ + * name?: scalar|Param|null, // The identifying name of the contact person/organization. // Default: null + * url?: scalar|Param|null, // The URL pointing to the contact information. MUST be in the format of a URL. // Default: null + * email?: scalar|Param|null, // The email address of the contact person/organization. MUST be in the format of an email address. // Default: null + * }, + * termsOfService?: scalar|Param|null, // A URL to the Terms of Service for the API. MUST be in the format of a URL. // Default: null + * tags?: list, + * license?: array{ + * name?: scalar|Param|null, // The license name used for the API. // Default: null + * url?: scalar|Param|null, // URL to the license used for the API. MUST be in the format of a URL. // Default: null + * identifier?: scalar|Param|null, // An SPDX license expression for the API. The identifier field is mutually exclusive of the url field. // Default: null + * }, + * swagger_ui_extra_configuration?: mixed, // To pass extra configuration to Swagger UI, like docExpansion or filter. // Default: [] + * scalar_extra_configuration?: mixed, // To pass extra configuration to Scalar API Reference, like theme or darkMode. // Default: [] + * overrideResponses?: bool|Param, // Whether API Platform adds automatic responses to the OpenAPI documentation. // Default: true + * error_resource_class?: scalar|Param|null, // The class used to represent errors in the OpenAPI documentation. // Default: null + * validation_error_resource_class?: scalar|Param|null, // The class used to represent validation errors in the OpenAPI documentation. // Default: null + * }, + * maker?: bool|array{ + * enabled?: bool|Param, // Default: true + * namespace_prefix?: scalar|Param|null, // Add a prefix to all maker generated classes. e.g set it to "Api" to set the maker namespace to "App\Api\" (if the maker.root_namespace config is App). e.g. App\Api\State\MyStateProcessor // Default: "" + * }, + * mcp?: bool|array{ + * enabled?: bool|Param, // Default: true + * format?: scalar|Param|null, // The serialization format used for MCP tool input/output. Must be a format registered in api_platform.formats (e.g. "jsonld", "json", "jsonapi"). // Default: "jsonld" + * }, + * exception_to_status?: array, + * formats?: array, + * }>, + * patch_formats?: array, + * }>, + * docs_formats?: array, + * }>, + * error_formats?: array, + * }>, + * jsonschema_formats?: list, + * defaults?: array{ + * uri_template?: mixed, + * short_name?: mixed, + * description?: mixed, + * types?: mixed, + * operations?: mixed, + * formats?: mixed, + * input_formats?: mixed, + * output_formats?: mixed, + * uri_variables?: mixed, + * route_prefix?: mixed, + * defaults?: mixed, + * requirements?: mixed, + * options?: mixed, + * stateless?: mixed, + * sunset?: mixed, + * accept_patch?: mixed, + * status?: mixed, + * host?: mixed, + * schemes?: mixed, + * condition?: mixed, + * controller?: mixed, + * class?: mixed, + * url_generation_strategy?: mixed, + * deprecation_reason?: mixed, + * headers?: mixed, + * cache_headers?: mixed, + * normalization_context?: mixed, + * denormalization_context?: mixed, + * collect_denormalization_errors?: mixed, + * hydra_context?: mixed, + * openapi?: mixed, + * validation_context?: mixed, + * filters?: mixed, + * mercure?: mixed, + * messenger?: mixed, + * input?: mixed, + * output?: mixed, + * order?: mixed, + * fetch_partial?: mixed, + * force_eager?: mixed, + * pagination_client_enabled?: mixed, + * pagination_client_items_per_page?: mixed, + * pagination_client_partial?: mixed, + * pagination_via_cursor?: mixed, + * pagination_enabled?: mixed, + * pagination_fetch_join_collection?: mixed, + * pagination_use_output_walkers?: mixed, + * pagination_items_per_page?: mixed, + * pagination_maximum_items_per_page?: mixed, + * pagination_partial?: mixed, + * pagination_type?: mixed, + * security?: mixed, + * security_message?: mixed, + * security_post_denormalize?: mixed, + * security_post_denormalize_message?: mixed, + * security_post_validation?: mixed, + * security_post_validation_message?: mixed, + * composite_identifier?: mixed, + * exception_to_status?: mixed, + * query_parameter_validation_enabled?: mixed, + * links?: mixed, + * graph_ql_operations?: mixed, + * provider?: mixed, + * processor?: mixed, + * state_options?: mixed, + * rules?: mixed, + * policy?: mixed, + * middleware?: mixed, + * parameters?: array + * }>, + * strict_query_parameter_validation?: mixed, + * hide_hydra_operation?: mixed, + * json_stream?: mixed, + * extra_properties?: mixed, + * map?: mixed, + * mcp?: mixed, + * route_name?: mixed, + * errors?: mixed, + * read?: mixed, + * deserialize?: mixed, + * validate?: mixed, + * write?: mixed, + * serialize?: mixed, + * content_negotiation?: mixed, + * priority?: mixed, + * name?: mixed, + * allow_create?: mixed, + * item_uri_template?: mixed, + * ... + * }, + * } + * @psalm-type MakerConfig = array{ + * root_namespace?: scalar|Param|null, // Default: "App" + * generate_final_classes?: bool|Param, // Default: true + * generate_final_entities?: bool|Param, // Default: false + * } + * @psalm-type LexikJwtAuthenticationConfig = array{ + * public_key?: scalar|Param|null, // The key used to sign tokens (useless for HMAC). If not set, the key will be automatically computed from the secret key. // Default: null + * additional_public_keys?: list, + * secret_key?: scalar|Param|null, // The key used to sign tokens. It can be a raw secret (for HMAC), a raw RSA/ECDSA key or the path to a file itself being plaintext or PEM. // Default: null + * pass_phrase?: scalar|Param|null, // The key passphrase (useless for HMAC) // Default: "" + * token_ttl?: scalar|Param|null, // Default: 3600 + * allow_no_expiration?: bool|Param, // Allow tokens without "exp" claim (i.e. indefinitely valid, no lifetime) to be considered valid. Caution: usage of this should be rare. // Default: false + * clock_skew?: scalar|Param|null, // Default: 0 + * encoder?: array{ + * service?: scalar|Param|null, // Default: "lexik_jwt_authentication.encoder.lcobucci" + * signature_algorithm?: scalar|Param|null, // Default: "RS256" + * }, + * user_id_claim?: scalar|Param|null, // Default: "username" + * token_extractors?: array{ + * authorization_header?: bool|array{ + * enabled?: bool|Param, // Default: true + * prefix?: scalar|Param|null, // Default: "Bearer" + * name?: scalar|Param|null, // Default: "Authorization" + * }, + * cookie?: bool|array{ + * enabled?: bool|Param, // Default: false + * name?: scalar|Param|null, // Default: "BEARER" + * }, + * query_parameter?: bool|array{ + * enabled?: bool|Param, // Default: false + * name?: scalar|Param|null, // Default: "bearer" + * }, + * split_cookie?: bool|array{ + * enabled?: bool|Param, // Default: false + * cookies?: list, + * }, + * }, + * remove_token_from_body_when_cookies_used?: scalar|Param|null, // Default: true + * set_cookies?: array, + * }>, + * api_platform?: bool|array{ // API Platform compatibility: add check_path in OpenAPI documentation. + * enabled?: bool|Param, // Default: false + * check_path?: scalar|Param|null, // The login check path to add in OpenAPI. // Default: null + * username_path?: scalar|Param|null, // The path to the username in the JSON body. // Default: null + * password_path?: scalar|Param|null, // The path to the password in the JSON body. // Default: null + * }, + * access_token_issuance?: bool|array{ + * enabled?: bool|Param, // Default: false + * signature?: array{ + * algorithm?: scalar|Param|null, // The algorithm use to sign the access tokens. + * key?: scalar|Param|null, // The signature key. It shall be JWK encoded. + * }, + * encryption?: bool|array{ + * enabled?: bool|Param, // Default: false + * key_encryption_algorithm?: scalar|Param|null, // The key encryption algorithm is used to encrypt the token. + * content_encryption_algorithm?: scalar|Param|null, // The key encryption algorithm is used to encrypt the token. + * key?: scalar|Param|null, // The encryption key. It shall be JWK encoded. + * }, + * }, + * access_token_verification?: bool|array{ + * enabled?: bool|Param, // Default: false + * signature?: array{ + * header_checkers?: list, + * claim_checkers?: list, + * mandatory_claims?: list, + * allowed_algorithms?: list, + * keyset?: scalar|Param|null, // The signature keyset. It shall be JWKSet encoded. + * }, + * encryption?: bool|array{ + * enabled?: bool|Param, // Default: false + * continue_on_decryption_failure?: bool|Param, // If enable, non-encrypted tokens or tokens that failed during decryption or verification processes are accepted. // Default: false + * header_checkers?: list, + * allowed_key_encryption_algorithms?: list, + * allowed_content_encryption_algorithms?: list, + * keyset?: scalar|Param|null, // The encryption keyset. It shall be JWKSet encoded. + * }, + * }, + * blocklist_token?: bool|array{ + * enabled?: bool|Param, // Default: false + * cache?: scalar|Param|null, // Storage to track blocked tokens // Default: "cache.app" + * }, + * } + * @psalm-type ConfigType = array{ + * imports?: ImportsConfig, + * parameters?: ParametersConfig, + * services?: ServicesConfig, + * framework?: FrameworkConfig, + * nelmio_cors?: NelmioCorsConfig, + * doctrine?: DoctrineConfig, + * doctrine_migrations?: DoctrineMigrationsConfig, + * security?: SecurityConfig, + * twig?: TwigConfig, + * api_platform?: ApiPlatformConfig, + * lexik_jwt_authentication?: LexikJwtAuthenticationConfig, + * "when@dev"?: array{ + * imports?: ImportsConfig, + * parameters?: ParametersConfig, + * services?: ServicesConfig, + * framework?: FrameworkConfig, + * nelmio_cors?: NelmioCorsConfig, + * doctrine?: DoctrineConfig, + * doctrine_migrations?: DoctrineMigrationsConfig, + * security?: SecurityConfig, + * twig?: TwigConfig, + * api_platform?: ApiPlatformConfig, + * maker?: MakerConfig, + * lexik_jwt_authentication?: LexikJwtAuthenticationConfig, + * }, + * "when@prod"?: array{ + * imports?: ImportsConfig, + * parameters?: ParametersConfig, + * services?: ServicesConfig, + * framework?: FrameworkConfig, + * nelmio_cors?: NelmioCorsConfig, + * doctrine?: DoctrineConfig, + * doctrine_migrations?: DoctrineMigrationsConfig, + * security?: SecurityConfig, + * twig?: TwigConfig, + * api_platform?: ApiPlatformConfig, + * lexik_jwt_authentication?: LexikJwtAuthenticationConfig, + * }, + * "when@test"?: array{ + * imports?: ImportsConfig, + * parameters?: ParametersConfig, + * services?: ServicesConfig, + * framework?: FrameworkConfig, + * nelmio_cors?: NelmioCorsConfig, + * doctrine?: DoctrineConfig, + * doctrine_migrations?: DoctrineMigrationsConfig, + * security?: SecurityConfig, + * twig?: TwigConfig, + * api_platform?: ApiPlatformConfig, + * lexik_jwt_authentication?: LexikJwtAuthenticationConfig, + * }, + * ..., + * }> + * } + */ +final class App +{ + /** + * @param ConfigType $config + * + * @psalm-return ConfigType + */ + public static function config(array $config): array + { + /** @var ConfigType $config */ + $config = AppReference::config($config); + + return $config; + } +} + +namespace Symfony\Component\Routing\Loader\Configurator; + +/** + * This class provides array-shapes for configuring the routes of an application. + * + * Example: + * + * ```php + * // config/routes.php + * namespace Symfony\Component\Routing\Loader\Configurator; + * + * return Routes::config([ + * 'controllers' => [ + * 'resource' => 'routing.controllers', + * ], + * ]); + * ``` + * + * @psalm-type RouteConfig = array{ + * path: string|array, + * controller?: string, + * methods?: string|list, + * requirements?: array, + * defaults?: array, + * options?: array, + * host?: string|array, + * schemes?: string|list, + * condition?: string, + * locale?: string, + * format?: string, + * utf8?: bool, + * stateless?: bool, + * } + * @psalm-type ImportConfig = array{ + * resource: string, + * type?: string, + * exclude?: string|list, + * prefix?: string|array, + * name_prefix?: string, + * trailing_slash_on_root?: bool, + * controller?: string, + * methods?: string|list, + * requirements?: array, + * defaults?: array, + * options?: array, + * host?: string|array, + * schemes?: string|list, + * condition?: string, + * locale?: string, + * format?: string, + * utf8?: bool, + * stateless?: bool, + * } + * @psalm-type AliasConfig = array{ + * alias: string, + * deprecated?: array{package:string, version:string, message?:string}, + * } + * @psalm-type RoutesConfig = array{ + * "when@dev"?: array, + * "when@prod"?: array, + * "when@test"?: array, + * ... + * } + */ +final class Routes +{ + /** + * @param RoutesConfig $config + * + * @psalm-return RoutesConfig + */ + public static function config(array $config): array + { + return $config; + } +} diff --git a/backend/config/routes.yaml b/backend/config/routes.yaml new file mode 100644 index 0000000..cef258c --- /dev/null +++ b/backend/config/routes.yaml @@ -0,0 +1,11 @@ +# yaml-language-server: $schema=../vendor/symfony/routing/Loader/schema/routing.schema.json + +# This file is the entry point to configure the routes of your app. +# Methods with the #[Route] attribute are automatically imported. +# See also https://symfony.com/doc/current/routing.html + +# To list all registered routes, run the following command: +# bin/console debug:router + +controllers: + resource: routing.controllers diff --git a/backend/config/routes/api_platform.yaml b/backend/config/routes/api_platform.yaml new file mode 100644 index 0000000..38f11cb --- /dev/null +++ b/backend/config/routes/api_platform.yaml @@ -0,0 +1,4 @@ +api_platform: + resource: . + type: api_platform + prefix: /api diff --git a/backend/config/routes/framework.yaml b/backend/config/routes/framework.yaml new file mode 100644 index 0000000..bc1feac --- /dev/null +++ b/backend/config/routes/framework.yaml @@ -0,0 +1,4 @@ +when@dev: + _errors: + resource: '@FrameworkBundle/Resources/config/routing/errors.php' + prefix: /_error diff --git a/backend/config/routes/security.yaml b/backend/config/routes/security.yaml new file mode 100644 index 0000000..f853be1 --- /dev/null +++ b/backend/config/routes/security.yaml @@ -0,0 +1,3 @@ +_security_logout: + resource: security.route_loader.logout + type: service diff --git a/backend/config/services.yaml b/backend/config/services.yaml new file mode 100644 index 0000000..79b8ce2 --- /dev/null +++ b/backend/config/services.yaml @@ -0,0 +1,23 @@ +# yaml-language-server: $schema=../vendor/symfony/dependency-injection/Loader/schema/services.schema.json + +# This file is the entry point to configure your own services. +# Files in the packages/ subdirectory configure your dependencies. +# See also https://symfony.com/doc/current/service_container/import.html + +# Put parameters here that don't need to change on each machine where the app is deployed +# https://symfony.com/doc/current/best_practices.html#use-parameters-for-application-configuration +parameters: + +services: + # default configuration for services in *this* file + _defaults: + autowire: true # Automatically injects dependencies in your services. + autoconfigure: true # Automatically registers your services as commands, event subscribers, etc. + + # makes classes in src/ available to be used as services + # this creates a service per class whose id is the fully-qualified class name + App\: + resource: '../src/' + + # add more service definitions when explicit configuration is needed + # please note that last definitions always *replace* previous ones diff --git a/backend/migrations/.gitignore b/backend/migrations/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/backend/migrations/Version20260530191712.php b/backend/migrations/Version20260530191712.php new file mode 100644 index 0000000..4a451b8 --- /dev/null +++ b/backend/migrations/Version20260530191712.php @@ -0,0 +1,65 @@ +addSql('CREATE TABLE company (id BINARY(16) NOT NULL, name VARCHAR(150) NOT NULL, slug VARCHAR(100) NOT NULL, status VARCHAR(20) NOT NULL, self_edit_enabled TINYINT NOT NULL, branding_config JSON NOT NULL, created_at DATETIME NOT NULL, reseller_id BINARY(16) NOT NULL, INDEX IDX_4FBF094F91E6A19D (reseller_id), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('CREATE TABLE contact_link (id BINARY(16) NOT NULL, type VARCHAR(40) NOT NULL, url VARCHAR(500) NOT NULL, label VARCHAR(120) DEFAULT NULL, position INT NOT NULL, employee_id BINARY(16) NOT NULL, INDEX IDX_1E531B0E8C03F15C (employee_id), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('CREATE TABLE domain (id BINARY(16) NOT NULL, hostname VARCHAR(255) NOT NULL, type VARCHAR(20) NOT NULL, status VARCHAR(20) NOT NULL, tls_status VARCHAR(20) NOT NULL, verification_checked_at DATETIME DEFAULT NULL, company_id BINARY(16) NOT NULL, UNIQUE INDEX UNIQ_A7A91E0BE551C011 (hostname), INDEX IDX_A7A91E0B979B1AD6 (company_id), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('CREATE TABLE employee (id BINARY(16) NOT NULL, first_name VARCHAR(100) NOT NULL, last_name VARCHAR(100) NOT NULL, slug VARCHAR(120) NOT NULL, title VARCHAR(150) DEFAULT NULL, position VARCHAR(150) DEFAULT NULL, department VARCHAR(150) DEFAULT NULL, email VARCHAR(180) DEFAULT NULL, phone VARCHAR(50) DEFAULT NULL, mobile VARCHAR(50) DEFAULT NULL, photo_path VARCHAR(255) DEFAULT NULL, bio LONGTEXT DEFAULT NULL, status VARCHAR(20) NOT NULL, self_edit_allowed TINYINT NOT NULL, editable_fields JSON NOT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, company_id BINARY(16) NOT NULL, location_id BINARY(16) DEFAULT NULL, INDEX IDX_5D9F75A1979B1AD6 (company_id), INDEX IDX_5D9F75A164D218E (location_id), UNIQUE INDEX uniq_employee_company_slug (company_id, slug), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('CREATE TABLE location (id BINARY(16) NOT NULL, name VARCHAR(150) NOT NULL, street VARCHAR(255) DEFAULT NULL, postal_code VARCHAR(20) DEFAULT NULL, city VARCHAR(120) DEFAULT NULL, country VARCHAR(2) DEFAULT NULL, phone VARCHAR(50) DEFAULT NULL, email VARCHAR(180) DEFAULT NULL, branding_override JSON NOT NULL, company_id BINARY(16) NOT NULL, INDEX IDX_5E9E89CB979B1AD6 (company_id), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('CREATE TABLE platform_plan (id BINARY(16) NOT NULL, name VARCHAR(100) NOT NULL, slug VARCHAR(100) NOT NULL, price_per_month INT NOT NULL, max_profiles INT NOT NULL, max_companies INT NOT NULL, features JSON NOT NULL, UNIQUE INDEX UNIQ_59523C51989D9B62 (slug), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('CREATE TABLE reseller (id BINARY(16) NOT NULL, name VARCHAR(150) NOT NULL, slug VARCHAR(100) NOT NULL, primary_domain VARCHAR(255) DEFAULT NULL, status VARCHAR(20) NOT NULL, branding_config JSON NOT NULL, created_at DATETIME NOT NULL, platform_plan_id BINARY(16) DEFAULT NULL, UNIQUE INDEX UNIQ_18015899989D9B62 (slug), INDEX IDX_18015899FDA9C8C9 (platform_plan_id), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('CREATE TABLE `user` (id BINARY(16) NOT NULL, email VARCHAR(180) NOT NULL, roles JSON NOT NULL, password VARCHAR(255) NOT NULL, status VARCHAR(20) NOT NULL, created_at DATETIME NOT NULL, last_login_at DATETIME DEFAULT NULL, reseller_id BINARY(16) DEFAULT NULL, company_id BINARY(16) DEFAULT NULL, employee_id BINARY(16) DEFAULT NULL, INDEX IDX_8D93D64991E6A19D (reseller_id), INDEX IDX_8D93D649979B1AD6 (company_id), UNIQUE INDEX UNIQ_8D93D6498C03F15C (employee_id), UNIQUE INDEX uniq_user_email (email), PRIMARY KEY (id)) DEFAULT CHARACTER SET utf8mb4'); + $this->addSql('ALTER TABLE company ADD CONSTRAINT FK_4FBF094F91E6A19D FOREIGN KEY (reseller_id) REFERENCES reseller (id)'); + $this->addSql('ALTER TABLE contact_link ADD CONSTRAINT FK_1E531B0E8C03F15C FOREIGN KEY (employee_id) REFERENCES employee (id)'); + $this->addSql('ALTER TABLE domain ADD CONSTRAINT FK_A7A91E0B979B1AD6 FOREIGN KEY (company_id) REFERENCES company (id)'); + $this->addSql('ALTER TABLE employee ADD CONSTRAINT FK_5D9F75A1979B1AD6 FOREIGN KEY (company_id) REFERENCES company (id)'); + $this->addSql('ALTER TABLE employee ADD CONSTRAINT FK_5D9F75A164D218E FOREIGN KEY (location_id) REFERENCES location (id)'); + $this->addSql('ALTER TABLE location ADD CONSTRAINT FK_5E9E89CB979B1AD6 FOREIGN KEY (company_id) REFERENCES company (id)'); + $this->addSql('ALTER TABLE reseller ADD CONSTRAINT FK_18015899FDA9C8C9 FOREIGN KEY (platform_plan_id) REFERENCES platform_plan (id)'); + $this->addSql('ALTER TABLE `user` ADD CONSTRAINT FK_8D93D64991E6A19D FOREIGN KEY (reseller_id) REFERENCES reseller (id)'); + $this->addSql('ALTER TABLE `user` ADD CONSTRAINT FK_8D93D649979B1AD6 FOREIGN KEY (company_id) REFERENCES company (id)'); + $this->addSql('ALTER TABLE `user` ADD CONSTRAINT FK_8D93D6498C03F15C FOREIGN KEY (employee_id) REFERENCES employee (id)'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('ALTER TABLE company DROP FOREIGN KEY FK_4FBF094F91E6A19D'); + $this->addSql('ALTER TABLE contact_link DROP FOREIGN KEY FK_1E531B0E8C03F15C'); + $this->addSql('ALTER TABLE domain DROP FOREIGN KEY FK_A7A91E0B979B1AD6'); + $this->addSql('ALTER TABLE employee DROP FOREIGN KEY FK_5D9F75A1979B1AD6'); + $this->addSql('ALTER TABLE employee DROP FOREIGN KEY FK_5D9F75A164D218E'); + $this->addSql('ALTER TABLE location DROP FOREIGN KEY FK_5E9E89CB979B1AD6'); + $this->addSql('ALTER TABLE reseller DROP FOREIGN KEY FK_18015899FDA9C8C9'); + $this->addSql('ALTER TABLE `user` DROP FOREIGN KEY FK_8D93D64991E6A19D'); + $this->addSql('ALTER TABLE `user` DROP FOREIGN KEY FK_8D93D649979B1AD6'); + $this->addSql('ALTER TABLE `user` DROP FOREIGN KEY FK_8D93D6498C03F15C'); + $this->addSql('DROP TABLE company'); + $this->addSql('DROP TABLE contact_link'); + $this->addSql('DROP TABLE domain'); + $this->addSql('DROP TABLE employee'); + $this->addSql('DROP TABLE location'); + $this->addSql('DROP TABLE platform_plan'); + $this->addSql('DROP TABLE reseller'); + $this->addSql('DROP TABLE `user`'); + } +} diff --git a/backend/migrations/Version20260531085615.php b/backend/migrations/Version20260531085615.php new file mode 100644 index 0000000..a6d7a83 --- /dev/null +++ b/backend/migrations/Version20260531085615.php @@ -0,0 +1,33 @@ +addSql('ALTER TABLE employee ADD short_code VARCHAR(16) DEFAULT NULL'); + $this->addSql('CREATE UNIQUE INDEX uniq_employee_shortcode ON employee (short_code)'); + } + + public function down(Schema $schema): void + { + // this down() migration is auto-generated, please modify it to your needs + $this->addSql('DROP INDEX uniq_employee_shortcode ON employee'); + $this->addSql('ALTER TABLE employee DROP short_code'); + } +} diff --git a/backend/public/assets/brand.css b/backend/public/assets/brand.css new file mode 100644 index 0000000..2fd5cb9 --- /dev/null +++ b/backend/public/assets/brand.css @@ -0,0 +1,82 @@ +/* vcard4reseller — Marken-Design-System (orientiert an vcard4reseller.de) */ +:root { + --psc-orange: #f58220; + --psc-orange-dark: #d96500; + --psc-orange-soft: #fff2e7; + --psc-orange-soft-2: #fff8f1; + --psc-border: #f4d4bb; + --text: #343434; + --dark: #222222; + --muted: #6f6f6f; + --bg: #f7f7f7; + --white: #ffffff; + --success: #238636; + --shadow: 0 18px 45px rgba(30, 30, 30, 0.10); + --shadow-sm: 0 6px 18px rgba(30, 30, 30, 0.08); + --radius: 22px; + --radius-sm: 14px; + --font: Arial, Helvetica, sans-serif; +} + +* { box-sizing: border-box; } + +body { + margin: 0; + font-family: var(--font); + color: var(--text); + background: var(--bg); + line-height: 1.55; + -webkit-font-smoothing: antialiased; +} + +h1, h2, h3 { color: var(--dark); font-weight: 700; line-height: 1.2; margin: 0 0 .4em; } + +a { color: var(--psc-orange-dark); text-decoration: none; } +a:hover { text-decoration: underline; } + +/* Marken-Logo (Wortmarke) */ +.brand-logo { + display: inline-flex; + align-items: center; + font-weight: 700; + font-size: 1.15rem; + color: var(--dark); + letter-spacing: -0.01em; +} +.brand-logo .tag { + background: var(--psc-orange); + color: var(--white); + padding: 2px 10px; + border-radius: 999px; + margin-left: 4px; +} + +/* Pill-Buttons */ +.btn { + display: inline-flex; + align-items: center; + gap: .5rem; + padding: .7rem 1.4rem; + border-radius: var(--radius-sm); + font-weight: 600; + font-size: .95rem; + border: 1px solid transparent; + cursor: pointer; + transition: transform .08s ease, box-shadow .15s ease, background .15s ease; +} +.btn:hover { text-decoration: none; transform: translateY(-1px); } +.btn-primary { background: var(--psc-orange); color: var(--white); box-shadow: var(--shadow-sm); } +.btn-primary:hover { background: var(--psc-orange-dark); color: var(--white); } +.btn-soft { background: var(--psc-orange-soft); color: var(--psc-orange-dark); } +.btn-soft:hover { background: var(--psc-border); color: var(--psc-orange-dark); } +.btn-ghost { background: var(--white); color: var(--dark); border-color: #e7e7e7; } + +/* Karte */ +.card { + background: var(--white); + border-radius: var(--radius); + box-shadow: var(--shadow); + border: 1px solid #f0f0f0; +} + +.muted { color: var(--muted); } diff --git a/backend/public/index.php b/backend/public/index.php new file mode 100644 index 0000000..c0037a8 --- /dev/null +++ b/backend/public/index.php @@ -0,0 +1,9 @@ +employees->findWithoutShortCode(); + + foreach ($missing as $employee) { + $employee->ensureShortCode(); + } + $this->em->flush(); + + $io->success(sprintf('%d Mitarbeiter mit Kurz-Code versehen.', count($missing))); + + return Command::SUCCESS; + } +} diff --git a/backend/src/Command/SeedCommand.php b/backend/src/Command/SeedCommand.php new file mode 100644 index 0000000..4ab3fb9 --- /dev/null +++ b/backend/src/Command/SeedCommand.php @@ -0,0 +1,121 @@ +em->getRepository(User::class)->findOneBy(['email' => 'admin@vcard4reseller.de'])) { + $io->warning('Demo-Daten existieren bereits — übersprungen.'); + + return Command::SUCCESS; + } + + // Plattform-Paket + $plan = (new PlatformPlan()) + ->setName('Professional')->setSlug('professional') + ->setPricePerMonth(24900)->setMaxProfiles(500)->setMaxCompanies(8) + ->setFeatures(['vcard', 'wallet', 'nfc', 'print']); + $this->em->persist($plan); + + // Plattform-Admin + $admin = (new User())->setEmail('admin@vcard4reseller.de')->setRoles([User::ROLE_PLATFORM_ADMIN]); + $admin->setPassword($this->hasher->hashPassword($admin, 'admin')); + $this->em->persist($admin); + + // Zwei Reseller mit je einer Firma (Beweis der Mandantentrennung) + $this->createReseller($plan, 'Demo Druckerei', 'demo', 'reseller@demo.de', 'Muster GmbH', 'muster', 'firma@muster.de', 'Erika', 'Mustermann'); + $this->createReseller($plan, 'Print Studio', 'printstudio', 'reseller@printstudio.de', 'Beispiel AG', 'beispiel', 'firma@beispiel.de', 'Max', 'Beispiel'); + + $this->em->flush(); + + $io->success('Demo-Daten angelegt.'); + $io->table(['Rolle', 'E-Mail', 'Passwort'], [ + ['Plattform-Admin', 'admin@vcard4reseller.de', 'admin'], + ['Reseller-Admin', 'reseller@demo.de', 'reseller'], + ['Reseller-Admin', 'reseller@printstudio.de', 'reseller'], + ['Firmen-Admin', 'firma@muster.de', 'firma'], + ['Firmen-Admin', 'firma@beispiel.de', 'firma'], + ]); + + return Command::SUCCESS; + } + + private function createReseller( + PlatformPlan $plan, + string $resellerName, + string $resellerSlug, + string $resellerEmail, + string $companyName, + string $companySlug, + string $companyEmail, + string $firstName, + string $lastName, + ): void { + $reseller = (new Reseller()) + ->setName($resellerName)->setSlug($resellerSlug) + ->setPrimaryDomain($resellerSlug.'.vcard4reseller.de') + ->setPlatformPlan($plan); + $this->em->persist($reseller); + + $resellerAdmin = (new User()) + ->setEmail($resellerEmail)->setRoles([User::ROLE_RESELLER_ADMIN])->setReseller($reseller); + $resellerAdmin->setPassword($this->hasher->hashPassword($resellerAdmin, 'reseller')); + $this->em->persist($resellerAdmin); + + $company = (new Company()) + ->setName($companyName)->setSlug($companySlug)->setReseller($reseller)->setSelfEditEnabled(true); + $this->em->persist($company); + + $companyAdmin = (new User()) + ->setEmail($companyEmail)->setRoles([User::ROLE_COMPANY_ADMIN]) + ->setReseller($reseller)->setCompany($company); + $companyAdmin->setPassword($this->hasher->hashPassword($companyAdmin, 'firma')); + $this->em->persist($companyAdmin); + + $location = (new Location()) + ->setName('Hauptsitz')->setStreet('Musterstr. 1')->setPostalCode('10115') + ->setCity('Berlin')->setCountry('DE')->setCompany($company); + $this->em->persist($location); + + $employee = (new Employee()) + ->setFirstName($firstName)->setLastName($lastName) + ->setSlug(strtolower($firstName.'-'.$lastName)) + ->setPosition('Geschäftsführung')->setEmail(strtolower($firstName).'@'.$companySlug.'.de') + ->setPhone('+49 30 1234567')->setCompany($company)->setLocation($location) + ->setSelfEditAllowed(true); + $this->em->persist($employee); + + $link = (new ContactLink()) + ->setType('linkedin')->setUrl('https://linkedin.com/in/'.strtolower($firstName)) + ->setPosition(0); + $employee->addContactLink($link); + $this->em->persist($link); + } +} diff --git a/backend/src/Controller/.gitignore b/backend/src/Controller/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/backend/src/Controller/CompanyBrandingController.php b/backend/src/Controller/CompanyBrandingController.php new file mode 100644 index 0000000..215bcb1 --- /dev/null +++ b/backend/src/Controller/CompanyBrandingController.php @@ -0,0 +1,77 @@ +em->getRepository(Company::class)->find(Uuid::fromString($id)); + if (!$company instanceof Company) { + throw new NotFoundHttpException('Firma nicht gefunden.'); + } + $this->assertAccess($company); + + $data = json_decode($request->getContent(), true) ?? []; + $company->setBrandingConfig($this->sanitize($data)); + $this->em->flush(); + + return new JsonResponse($company->getBrandingConfig()); + } + + private function assertAccess(Company $company): void + { + if ($this->tenant->isPlatformAdmin()) { + return; + } + $reseller = $this->tenant->getReseller(); + if (null === $reseller || $company->getReseller()?->getId()->equals($reseller->getId()) !== true) { + throw new AccessDeniedHttpException('Firma gehört nicht zum eigenen Mandanten.'); + } + $own = $this->tenant->getCompany(); + if (null !== $own && !$company->getId()->equals($own->getId())) { + throw new AccessDeniedHttpException('Nur die eigene Firma darf bearbeitet werden.'); + } + } + + /** Nur erlaubte, validierte Felder übernehmen (verhindert CSS-Injection). */ + private function sanitize(array $data): array + { + $out = []; + foreach (['primaryColor', 'primaryDark'] as $key) { + $val = (string) ($data[$key] ?? ''); + if (preg_match('/^#[0-9a-fA-F]{6}$/', $val)) { + $out[$key] = $val; + } + } + $logo = (string) ($data['logoUrl'] ?? ''); + if (str_starts_with($logo, 'https://') || str_starts_with($logo, '/')) { + $out['logoUrl'] = $logo; + } + + return $out; + } +} diff --git a/backend/src/Controller/MeController.php b/backend/src/Controller/MeController.php new file mode 100644 index 0000000..c312409 --- /dev/null +++ b/backend/src/Controller/MeController.php @@ -0,0 +1,38 @@ +security->getUser(); + if (!$user instanceof User) { + return new JsonResponse(['error' => 'Not authenticated'], 401); + } + + $reseller = $user->getReseller(); + $company = $user->getCompany(); + + return new JsonResponse([ + 'id' => (string) $user->getId(), + 'email' => $user->getEmail(), + 'roles' => $user->getRoles(), + 'reseller' => $reseller ? ['id' => (string) $reseller->getId(), 'name' => $reseller->getName()] : null, + 'company' => $company ? ['id' => (string) $company->getId(), 'name' => $company->getName()] : null, + ]); + } +} diff --git a/backend/src/Controller/PublicProfileController.php b/backend/src/Controller/PublicProfileController.php new file mode 100644 index 0000000..89dde30 --- /dev/null +++ b/backend/src/Controller/PublicProfileController.php @@ -0,0 +1,97 @@ +resolve($companySlug, $slug); + + return $this->render('public/profile.html.twig', [ + 'e' => $employee, + 'profileUrl' => $this->profileUrl($employee), + 'shareUrl' => $this->shareUrl($employee), + ]); + } + + #[Route('/p/{companySlug}/{slug}/vcard.vcf', name: 'public_profile_vcard', methods: ['GET'])] + public function vcard(string $companySlug, string $slug, VCardBuilder $builder): Response + { + $employee = $this->resolve($companySlug, $slug); + + return new Response($builder->build($employee), 200, [ + 'Content-Type' => 'text/vcard; charset=utf-8', + 'Content-Disposition' => sprintf('attachment; filename="%s.vcf"', $employee->getSlug()), + ]); + } + + #[Route('/p/{companySlug}/{slug}/qr.png', name: 'public_profile_qr', methods: ['GET'])] + public function qr(string $companySlug, string $slug): Response + { + $employee = $this->resolve($companySlug, $slug); + + $result = (new Builder( + writer: new PngWriter(), + data: $this->shareUrl($employee), + encoding: new Encoding('UTF-8'), + errorCorrectionLevel: ErrorCorrectionLevel::Medium, + size: 320, + margin: 12, + ))->build(); + + return new Response($result->getString(), 200, ['Content-Type' => $result->getMimeType()]); + } + + private function resolve(string $companySlug, string $slug): Employee + { + $employee = $this->employees->findPublic($companySlug, $slug); + if (null === $employee) { + throw $this->createNotFoundException('Profil nicht gefunden.'); + } + + return $employee; + } + + private function profileUrl(Employee $employee): string + { + return $this->generateUrl('public_profile', [ + 'companySlug' => $employee->getCompany()->getSlug(), + 'slug' => $employee->getSlug(), + ], UrlGeneratorInterface::ABSOLUTE_URL); + } + + /** + * Stabile Teilen-URL: bevorzugt den Kurz-Code (/t/{code}, NFC/QR-tauglich), + * fällt sonst auf die Profil-URL zurück. + */ + private function shareUrl(Employee $employee): string + { + if (null !== $employee->getShortCode()) { + return $this->generateUrl('short_link', ['code' => $employee->getShortCode()], UrlGeneratorInterface::ABSOLUTE_URL); + } + + return $this->profileUrl($employee); + } +} diff --git a/backend/src/Controller/ResellerProvisioningController.php b/backend/src/Controller/ResellerProvisioningController.php new file mode 100644 index 0000000..ae0bd87 --- /dev/null +++ b/backend/src/Controller/ResellerProvisioningController.php @@ -0,0 +1,79 @@ +getContent(), true) ?? []; + + $name = trim((string) ($d['name'] ?? '')); + $slug = trim((string) ($d['slug'] ?? '')); + if ('' === $name || '' === $slug) { + return new JsonResponse(['error' => 'name und slug sind erforderlich.'], 422); + } + + $reseller = (new Reseller())->setName($name)->setSlug($slug); + if (!empty($d['primaryDomain'])) { + $reseller->setPrimaryDomain((string) $d['primaryDomain']); + } + if (!empty($d['planId'])) { + $plan = $this->em->getRepository(PlatformPlan::class)->find($d['planId']); + if ($plan instanceof PlatformPlan) { + $reseller->setPlatformPlan($plan); + } + } + + $adminEmail = trim((string) ($d['adminEmail'] ?? '')); + $adminPassword = (string) ($d['adminPassword'] ?? ''); + $admin = null; + if ('' !== $adminEmail && '' !== $adminPassword) { + $admin = (new User()) + ->setEmail($adminEmail) + ->setRoles([User::ROLE_RESELLER_ADMIN]) + ->setReseller($reseller); + $admin->setPassword($this->hasher->hashPassword($admin, $adminPassword)); + } + + try { + $this->em->persist($reseller); + if ($admin) { + $this->em->persist($admin); + } + $this->em->flush(); + } catch (UniqueConstraintViolationException) { + return new JsonResponse(['error' => 'Slug oder Admin-E-Mail bereits vergeben.'], 422); + } + + return new JsonResponse([ + 'id' => (string) $reseller->getId(), + 'name' => $reseller->getName(), + 'slug' => $reseller->getSlug(), + 'adminCreated' => null !== $admin, + ], 201); + } +} diff --git a/backend/src/Controller/SecurityController.php b/backend/src/Controller/SecurityController.php new file mode 100644 index 0000000..57dd8fc --- /dev/null +++ b/backend/src/Controller/SecurityController.php @@ -0,0 +1,20 @@ + 'Authentication failed'], 401); + } +} diff --git a/backend/src/Controller/ShortLinkController.php b/backend/src/Controller/ShortLinkController.php new file mode 100644 index 0000000..882ead4 --- /dev/null +++ b/backend/src/Controller/ShortLinkController.php @@ -0,0 +1,34 @@ +employees->findByShortCode($code); + if (null === $employee) { + throw $this->createNotFoundException('Unbekannter Code.'); + } + + return new RedirectResponse($this->generateUrl('public_profile', [ + 'companySlug' => $employee->getCompany()->getSlug(), + 'slug' => $employee->getSlug(), + ]), 302); + } +} diff --git a/backend/src/Doctrine/TenantExtension.php b/backend/src/Doctrine/TenantExtension.php new file mode 100644 index 0000000..eb038a6 --- /dev/null +++ b/backend/src/Doctrine/TenantExtension.php @@ -0,0 +1,120 @@ +apply($qb, $resourceClass); + } + + /** @param array $identifiers */ + public function applyToItem( + QueryBuilder $qb, + QueryNameGeneratorInterface $nameGenerator, + string $resourceClass, + array $identifiers, + ?Operation $operation = null, + array $context = [], + ): void { + $this->apply($qb, $resourceClass); + } + + private function apply(QueryBuilder $qb, string $resourceClass): void + { + // Plattform-Admins sehen alles + if ($this->tenant->isPlatformAdmin()) { + return; + } + + $reseller = $this->tenant->getReseller(); + if (null === $reseller) { + // Kein Mandantenkontext → nichts ausliefern (statt Datenleck) + $qb->andWhere('1 = 0'); + + return; + } + + $alias = $qb->getRootAliases()[0]; + + // Join-Pfad zur Reseller-/Company-Spalte je nach Entität + [$companyAlias, $resellerExpr] = match ($resourceClass) { + Company::class => [$alias, "$alias.reseller"], + Location::class, Domain::class => [ + $this->joinOnce($qb, "$alias.company", 'tc'), + 'tc.reseller', + ], + Employee::class => [ + $this->joinOnce($qb, "$alias.company", 'tc'), + 'tc.reseller', + ], + ContactLink::class => (function () use ($qb, $alias) { + $this->joinOnce($qb, "$alias.employee", 'te'); + $c = $this->joinOnce($qb, 'te.company', 'tc'); + + return [$c, 'tc.reseller']; + })(), + default => [null, null], + }; + + if (null === $resellerExpr) { + return; // nicht mandantengebunden (z. B. PlatformPlan) + } + + $qb->andWhere("$resellerExpr = :tenant_reseller") + ->setParameter('tenant_reseller', $reseller->getId(), 'uuid'); + + // Firmen-Admins/Mitarbeiter zusätzlich auf ihre Company einschränken + $company = $this->tenant->getCompany(); + if (null !== $company) { + if (Company::class === $resourceClass) { + $qb->andWhere("$alias = :tenant_company"); + } else { + $qb->andWhere("$companyAlias = :tenant_company"); + } + $qb->setParameter('tenant_company', $company->getId(), 'uuid'); + } + } + + /** Fügt einen Join nur hinzu, falls der Alias noch nicht existiert. */ + private function joinOnce(QueryBuilder $qb, string $path, string $alias): string + { + foreach ($qb->getDQLPart('join') as $joins) { + foreach ($joins as $join) { + if ($join->getAlias() === $alias) { + return $alias; + } + } + } + $qb->join($path, $alias); + + return $alias; + } +} diff --git a/backend/src/Entity/.gitignore b/backend/src/Entity/.gitignore new file mode 100644 index 0000000..e69de29 diff --git a/backend/src/Entity/Company.php b/backend/src/Entity/Company.php new file mode 100644 index 0000000..c8e4290 --- /dev/null +++ b/backend/src/Entity/Company.php @@ -0,0 +1,182 @@ + */ + #[ORM\OneToMany(targetEntity: Location::class, mappedBy: 'company')] + private Collection $locations; + + /** @var Collection */ + #[ORM\OneToMany(targetEntity: Employee::class, mappedBy: 'company')] + private Collection $employees; + + /** @var Collection */ + #[ORM\OneToMany(targetEntity: Domain::class, mappedBy: 'company')] + private Collection $domains; + + #[ORM\Column(type: 'datetime_immutable')] + private \DateTimeImmutable $createdAt; + + public function __construct() + { + $this->id = Uuid::v7(); + $this->createdAt = new \DateTimeImmutable(); + $this->locations = new ArrayCollection(); + $this->employees = new ArrayCollection(); + $this->domains = new ArrayCollection(); + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getName(): string + { + return $this->name; + } + + public function setName(string $name): self + { + $this->name = $name; + + return $this; + } + + public function getSlug(): string + { + return $this->slug; + } + + public function setSlug(string $slug): self + { + $this->slug = $slug; + + return $this; + } + + public function getStatus(): string + { + return $this->status; + } + + public function setStatus(string $status): self + { + $this->status = $status; + + return $this; + } + + public function isSelfEditEnabled(): bool + { + return $this->selfEditEnabled; + } + + public function setSelfEditEnabled(bool $selfEditEnabled): self + { + $this->selfEditEnabled = $selfEditEnabled; + + return $this; + } + + public function getBrandingConfig(): array + { + return $this->brandingConfig; + } + + public function setBrandingConfig(array $brandingConfig): self + { + $this->brandingConfig = $brandingConfig; + + return $this; + } + + public function getReseller(): ?Reseller + { + return $this->reseller; + } + + public function setReseller(Reseller $reseller): self + { + $this->reseller = $reseller; + + return $this; + } + + /** @return Collection */ + public function getLocations(): Collection + { + return $this->locations; + } + + /** @return Collection */ + public function getEmployees(): Collection + { + return $this->employees; + } + + /** @return Collection */ + public function getDomains(): Collection + { + return $this->domains; + } + + public function getCreatedAt(): \DateTimeImmutable + { + return $this->createdAt; + } +} diff --git a/backend/src/Entity/ContactLink.php b/backend/src/Entity/ContactLink.php new file mode 100644 index 0000000..94cdf38 --- /dev/null +++ b/backend/src/Entity/ContactLink.php @@ -0,0 +1,113 @@ +id = Uuid::v7(); + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getType(): string + { + return $this->type; + } + + public function setType(string $type): self + { + $this->type = $type; + + return $this; + } + + public function getUrl(): string + { + return $this->url; + } + + public function setUrl(string $url): self + { + $this->url = $url; + + return $this; + } + + public function getLabel(): ?string + { + return $this->label; + } + + public function setLabel(?string $label): self + { + $this->label = $label; + + return $this; + } + + public function getPosition(): int + { + return $this->position; + } + + public function setPosition(int $position): self + { + $this->position = $position; + + return $this; + } + + public function getEmployee(): Employee + { + return $this->employee; + } + + public function setEmployee(Employee $employee): self + { + $this->employee = $employee; + + return $this; + } + + public function getReseller(): ?Reseller + { + return $this->employee->getReseller(); + } +} diff --git a/backend/src/Entity/Domain.php b/backend/src/Entity/Domain.php new file mode 100644 index 0000000..370014e --- /dev/null +++ b/backend/src/Entity/Domain.php @@ -0,0 +1,134 @@ +id = Uuid::v7(); + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getHostname(): string + { + return $this->hostname; + } + + public function setHostname(string $hostname): self + { + $this->hostname = $hostname; + + return $this; + } + + public function getType(): string + { + return $this->type; + } + + public function setType(string $type): self + { + $this->type = $type; + + return $this; + } + + public function getStatus(): string + { + return $this->status; + } + + public function setStatus(string $status): self + { + $this->status = $status; + + return $this; + } + + public function getTlsStatus(): string + { + return $this->tlsStatus; + } + + public function setTlsStatus(string $tlsStatus): self + { + $this->tlsStatus = $tlsStatus; + + return $this; + } + + public function getVerificationCheckedAt(): ?\DateTimeImmutable + { + return $this->verificationCheckedAt; + } + + public function setVerificationCheckedAt(?\DateTimeImmutable $verificationCheckedAt): self + { + $this->verificationCheckedAt = $verificationCheckedAt; + + return $this; + } + + public function getCompany(): Company + { + return $this->company; + } + + public function setCompany(Company $company): self + { + $this->company = $company; + + return $this; + } + + public function getReseller(): ?Reseller + { + return $this->company->getReseller(); + } +} diff --git a/backend/src/Entity/Employee.php b/backend/src/Entity/Employee.php new file mode 100644 index 0000000..c1a03ae --- /dev/null +++ b/backend/src/Entity/Employee.php @@ -0,0 +1,374 @@ + */ + #[ORM\OneToMany(targetEntity: ContactLink::class, mappedBy: 'employee', cascade: ['persist', 'remove'], orphanRemoval: true)] + #[ORM\OrderBy(['position' => 'ASC'])] + private Collection $contactLinks; + + #[ORM\Column(type: 'datetime_immutable')] + private \DateTimeImmutable $createdAt; + + #[ORM\Column(type: 'datetime_immutable')] + private \DateTimeImmutable $updatedAt; + + public function __construct() + { + $this->id = Uuid::v7(); + $this->shortCode = bin2hex(random_bytes(4)); + $this->createdAt = new \DateTimeImmutable(); + $this->updatedAt = new \DateTimeImmutable(); + $this->contactLinks = new ArrayCollection(); + } + + public function getShortCode(): ?string + { + return $this->shortCode; + } + + public function ensureShortCode(): void + { + if (null === $this->shortCode) { + $this->shortCode = bin2hex(random_bytes(4)); + } + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getFirstName(): string + { + return $this->firstName; + } + + public function setFirstName(string $firstName): self + { + $this->firstName = $firstName; + + return $this; + } + + public function getLastName(): string + { + return $this->lastName; + } + + public function setLastName(string $lastName): self + { + $this->lastName = $lastName; + + return $this; + } + + public function getSlug(): string + { + return $this->slug; + } + + public function setSlug(string $slug): self + { + $this->slug = $slug; + + return $this; + } + + public function getTitle(): ?string + { + return $this->title; + } + + public function setTitle(?string $title): self + { + $this->title = $title; + + return $this; + } + + public function getPosition(): ?string + { + return $this->position; + } + + public function setPosition(?string $position): self + { + $this->position = $position; + + return $this; + } + + public function getDepartment(): ?string + { + return $this->department; + } + + public function setDepartment(?string $department): self + { + $this->department = $department; + + return $this; + } + + public function getEmail(): ?string + { + return $this->email; + } + + public function setEmail(?string $email): self + { + $this->email = $email; + + return $this; + } + + public function getPhone(): ?string + { + return $this->phone; + } + + public function setPhone(?string $phone): self + { + $this->phone = $phone; + + return $this; + } + + public function getMobile(): ?string + { + return $this->mobile; + } + + public function setMobile(?string $mobile): self + { + $this->mobile = $mobile; + + return $this; + } + + public function getPhotoPath(): ?string + { + return $this->photoPath; + } + + public function setPhotoPath(?string $photoPath): self + { + $this->photoPath = $photoPath; + + return $this; + } + + public function getBio(): ?string + { + return $this->bio; + } + + public function setBio(?string $bio): self + { + $this->bio = $bio; + + return $this; + } + + public function getStatus(): string + { + return $this->status; + } + + public function setStatus(string $status): self + { + $this->status = $status; + + return $this; + } + + public function isSelfEditAllowed(): bool + { + return $this->selfEditAllowed; + } + + public function setSelfEditAllowed(bool $selfEditAllowed): self + { + $this->selfEditAllowed = $selfEditAllowed; + + return $this; + } + + /** @return string[] */ + public function getEditableFields(): array + { + return $this->editableFields; + } + + /** @param string[] $editableFields */ + public function setEditableFields(array $editableFields): self + { + $this->editableFields = $editableFields; + + return $this; + } + + public function getCompany(): Company + { + return $this->company; + } + + public function setCompany(Company $company): self + { + $this->company = $company; + + return $this; + } + + public function getLocation(): ?Location + { + return $this->location; + } + + public function setLocation(?Location $location): self + { + $this->location = $location; + + return $this; + } + + public function getUser(): ?User + { + return $this->user; + } + + public function setUser(?User $user): self + { + $this->user = $user; + + return $this; + } + + /** @return Collection */ + public function getContactLinks(): Collection + { + return $this->contactLinks; + } + + public function addContactLink(ContactLink $link): self + { + if (!$this->contactLinks->contains($link)) { + $this->contactLinks->add($link); + $link->setEmployee($this); + } + + return $this; + } + + public function removeContactLink(ContactLink $link): self + { + $this->contactLinks->removeElement($link); + + return $this; + } + + public function getReseller(): ?Reseller + { + return $this->company->getReseller(); + } + + public function getCreatedAt(): \DateTimeImmutable + { + return $this->createdAt; + } + + public function getUpdatedAt(): \DateTimeImmutable + { + return $this->updatedAt; + } + + public function touch(): void + { + $this->updatedAt = new \DateTimeImmutable(); + } +} diff --git a/backend/src/Entity/Location.php b/backend/src/Entity/Location.php new file mode 100644 index 0000000..41ce7ae --- /dev/null +++ b/backend/src/Entity/Location.php @@ -0,0 +1,173 @@ +id = Uuid::v7(); + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getName(): string + { + return $this->name; + } + + public function setName(string $name): self + { + $this->name = $name; + + return $this; + } + + public function getStreet(): ?string + { + return $this->street; + } + + public function setStreet(?string $street): self + { + $this->street = $street; + + return $this; + } + + public function getPostalCode(): ?string + { + return $this->postalCode; + } + + public function setPostalCode(?string $postalCode): self + { + $this->postalCode = $postalCode; + + return $this; + } + + public function getCity(): ?string + { + return $this->city; + } + + public function setCity(?string $city): self + { + $this->city = $city; + + return $this; + } + + public function getCountry(): ?string + { + return $this->country; + } + + public function setCountry(?string $country): self + { + $this->country = $country; + + return $this; + } + + public function getPhone(): ?string + { + return $this->phone; + } + + public function setPhone(?string $phone): self + { + $this->phone = $phone; + + return $this; + } + + public function getEmail(): ?string + { + return $this->email; + } + + public function setEmail(?string $email): self + { + $this->email = $email; + + return $this; + } + + public function getBrandingOverride(): array + { + return $this->brandingOverride; + } + + public function setBrandingOverride(array $brandingOverride): self + { + $this->brandingOverride = $brandingOverride; + + return $this; + } + + public function getCompany(): Company + { + return $this->company; + } + + public function setCompany(Company $company): self + { + $this->company = $company; + + return $this; + } + + public function getReseller(): ?Reseller + { + return $this->company->getReseller(); + } +} diff --git a/backend/src/Entity/PlatformPlan.php b/backend/src/Entity/PlatformPlan.php new file mode 100644 index 0000000..e429401 --- /dev/null +++ b/backend/src/Entity/PlatformPlan.php @@ -0,0 +1,131 @@ +id = Uuid::v7(); + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getName(): string + { + return $this->name; + } + + public function setName(string $name): self + { + $this->name = $name; + + return $this; + } + + public function getSlug(): string + { + return $this->slug; + } + + public function setSlug(string $slug): self + { + $this->slug = $slug; + + return $this; + } + + public function getPricePerMonth(): int + { + return $this->pricePerMonth; + } + + public function setPricePerMonth(int $pricePerMonth): self + { + $this->pricePerMonth = $pricePerMonth; + + return $this; + } + + public function getMaxProfiles(): int + { + return $this->maxProfiles; + } + + public function setMaxProfiles(int $maxProfiles): self + { + $this->maxProfiles = $maxProfiles; + + return $this; + } + + public function getMaxCompanies(): int + { + return $this->maxCompanies; + } + + public function setMaxCompanies(int $maxCompanies): self + { + $this->maxCompanies = $maxCompanies; + + return $this; + } + + /** @return string[] */ + public function getFeatures(): array + { + return $this->features; + } + + /** @param string[] $features */ + public function setFeatures(array $features): self + { + $this->features = $features; + + return $this; + } +} diff --git a/backend/src/Entity/Reseller.php b/backend/src/Entity/Reseller.php new file mode 100644 index 0000000..295b5e0 --- /dev/null +++ b/backend/src/Entity/Reseller.php @@ -0,0 +1,145 @@ + */ + #[ORM\OneToMany(targetEntity: Company::class, mappedBy: 'reseller')] + private Collection $companies; + + #[ORM\Column(type: 'datetime_immutable')] + private \DateTimeImmutable $createdAt; + + public function __construct() + { + $this->id = Uuid::v7(); + $this->createdAt = new \DateTimeImmutable(); + $this->companies = new ArrayCollection(); + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getName(): string + { + return $this->name; + } + + public function setName(string $name): self + { + $this->name = $name; + + return $this; + } + + public function getSlug(): string + { + return $this->slug; + } + + public function setSlug(string $slug): self + { + $this->slug = $slug; + + return $this; + } + + public function getPrimaryDomain(): ?string + { + return $this->primaryDomain; + } + + public function setPrimaryDomain(?string $primaryDomain): self + { + $this->primaryDomain = $primaryDomain; + + return $this; + } + + public function getStatus(): string + { + return $this->status; + } + + public function setStatus(string $status): self + { + $this->status = $status; + + return $this; + } + + public function getBrandingConfig(): array + { + return $this->brandingConfig; + } + + public function setBrandingConfig(array $brandingConfig): self + { + $this->brandingConfig = $brandingConfig; + + return $this; + } + + public function getPlatformPlan(): ?PlatformPlan + { + return $this->platformPlan; + } + + public function setPlatformPlan(?PlatformPlan $platformPlan): self + { + $this->platformPlan = $platformPlan; + + return $this; + } + + /** @return Collection */ + public function getCompanies(): Collection + { + return $this->companies; + } + + public function getCreatedAt(): \DateTimeImmutable + { + return $this->createdAt; + } +} diff --git a/backend/src/Entity/ResellerOwnedInterface.php b/backend/src/Entity/ResellerOwnedInterface.php new file mode 100644 index 0000000..74a83f2 --- /dev/null +++ b/backend/src/Entity/ResellerOwnedInterface.php @@ -0,0 +1,13 @@ +id = Uuid::v7(); + $this->createdAt = new \DateTimeImmutable(); + } + + public function getId(): Uuid + { + return $this->id; + } + + public function getEmail(): string + { + return $this->email; + } + + public function setEmail(string $email): self + { + $this->email = $email; + + return $this; + } + + public function getUserIdentifier(): string + { + return $this->email; + } + + /** @return string[] */ + public function getRoles(): array + { + $roles = $this->roles; + $roles[] = 'ROLE_USER'; + + return array_values(array_unique($roles)); + } + + /** @param string[] $roles */ + public function setRoles(array $roles): self + { + $this->roles = $roles; + + return $this; + } + + public function getPassword(): string + { + return $this->password; + } + + public function setPassword(string $password): self + { + $this->password = $password; + + return $this; + } + + public function getStatus(): string + { + return $this->status; + } + + public function setStatus(string $status): self + { + $this->status = $status; + + return $this; + } + + public function getReseller(): ?Reseller + { + return $this->reseller; + } + + public function setReseller(?Reseller $reseller): self + { + $this->reseller = $reseller; + + return $this; + } + + public function getCompany(): ?Company + { + return $this->company; + } + + public function setCompany(?Company $company): self + { + $this->company = $company; + + return $this; + } + + public function getEmployee(): ?Employee + { + return $this->employee; + } + + public function setEmployee(?Employee $employee): self + { + $this->employee = $employee; + + return $this; + } + + public function getCreatedAt(): \DateTimeImmutable + { + return $this->createdAt; + } + + public function getLastLoginAt(): ?\DateTimeImmutable + { + return $this->lastLoginAt; + } + + public function setLastLoginAt(?\DateTimeImmutable $lastLoginAt): self + { + $this->lastLoginAt = $lastLoginAt; + + return $this; + } + + public function eraseCredentials(): void + { + // ggf. temporäre, sensible Daten löschen + } +} diff --git a/backend/src/Kernel.php b/backend/src/Kernel.php new file mode 100644 index 0000000..779cd1f --- /dev/null +++ b/backend/src/Kernel.php @@ -0,0 +1,11 @@ + + */ +class CompanyRepository extends ServiceEntityRepository +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, Company::class); + } +} diff --git a/backend/src/Repository/ContactLinkRepository.php b/backend/src/Repository/ContactLinkRepository.php new file mode 100644 index 0000000..dd391c7 --- /dev/null +++ b/backend/src/Repository/ContactLinkRepository.php @@ -0,0 +1,18 @@ + + */ +class ContactLinkRepository extends ServiceEntityRepository +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, ContactLink::class); + } +} diff --git a/backend/src/Repository/DomainRepository.php b/backend/src/Repository/DomainRepository.php new file mode 100644 index 0000000..e9aec09 --- /dev/null +++ b/backend/src/Repository/DomainRepository.php @@ -0,0 +1,18 @@ + + */ +class DomainRepository extends ServiceEntityRepository +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, Domain::class); + } +} diff --git a/backend/src/Repository/EmployeeRepository.php b/backend/src/Repository/EmployeeRepository.php new file mode 100644 index 0000000..1a2e609 --- /dev/null +++ b/backend/src/Repository/EmployeeRepository.php @@ -0,0 +1,51 @@ + + */ +class EmployeeRepository extends ServiceEntityRepository +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, Employee::class); + } + + /** + * Lädt ein öffentlich sichtbares (aktives) Profil anhand Firmen- und + * Mitarbeiter-Slug. Nicht mandantengefiltert – diese Seiten sind öffentlich. + */ + public function findPublic(string $companySlug, string $slug): ?Employee + { + return $this->createQueryBuilder('e') + ->join('e.company', 'c') + ->andWhere('c.slug = :companySlug') + ->andWhere('e.slug = :slug') + ->andWhere('e.status = :status') + ->setParameter('companySlug', $companySlug) + ->setParameter('slug', $slug) + ->setParameter('status', 'active') + ->getQuery() + ->getOneOrNullResult(); + } + + /** Aktives Profil über den stabilen NFC/QR-Kurz-Code (für /t/{code}). */ + public function findByShortCode(string $shortCode): ?Employee + { + return $this->findOneBy(['shortCode' => $shortCode, 'status' => 'active']); + } + + /** @return Employee[] Mitarbeiter ohne Kurz-Code (für Backfill). */ + public function findWithoutShortCode(): array + { + return $this->createQueryBuilder('e') + ->andWhere('e.shortCode IS NULL') + ->getQuery() + ->getResult(); + } +} diff --git a/backend/src/Repository/LocationRepository.php b/backend/src/Repository/LocationRepository.php new file mode 100644 index 0000000..f841bcb --- /dev/null +++ b/backend/src/Repository/LocationRepository.php @@ -0,0 +1,18 @@ + + */ +class LocationRepository extends ServiceEntityRepository +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, Location::class); + } +} diff --git a/backend/src/Repository/PlatformPlanRepository.php b/backend/src/Repository/PlatformPlanRepository.php new file mode 100644 index 0000000..3c1ad06 --- /dev/null +++ b/backend/src/Repository/PlatformPlanRepository.php @@ -0,0 +1,18 @@ + + */ +class PlatformPlanRepository extends ServiceEntityRepository +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, PlatformPlan::class); + } +} diff --git a/backend/src/Repository/ResellerRepository.php b/backend/src/Repository/ResellerRepository.php new file mode 100644 index 0000000..c9d3af5 --- /dev/null +++ b/backend/src/Repository/ResellerRepository.php @@ -0,0 +1,18 @@ + + */ +class ResellerRepository extends ServiceEntityRepository +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, Reseller::class); + } +} diff --git a/backend/src/Repository/UserRepository.php b/backend/src/Repository/UserRepository.php new file mode 100644 index 0000000..f9e9ad0 --- /dev/null +++ b/backend/src/Repository/UserRepository.php @@ -0,0 +1,32 @@ + + */ +class UserRepository extends ServiceEntityRepository implements PasswordUpgraderInterface +{ + public function __construct(ManagerRegistry $registry) + { + parent::__construct($registry, User::class); + } + + public function upgradePassword(PasswordAuthenticatedUserInterface $user, string $newHashedPassword): void + { + if (!$user instanceof User) { + throw new UnsupportedUserException(sprintf('Instances of "%s" are not supported.', $user::class)); + } + + $user->setPassword($newHashedPassword); + $this->getEntityManager()->persist($user); + $this->getEntityManager()->flush(); + } +} diff --git a/backend/src/Security/TenantContext.php b/backend/src/Security/TenantContext.php new file mode 100644 index 0000000..3ac619b --- /dev/null +++ b/backend/src/Security/TenantContext.php @@ -0,0 +1,38 @@ +security->isGranted(User::ROLE_PLATFORM_ADMIN); + } + + public function getReseller(): ?Reseller + { + $user = $this->security->getUser(); + + return $user instanceof User ? $user->getReseller() : null; + } + + public function getCompany(): ?Company + { + $user = $this->security->getUser(); + + return $user instanceof User ? $user->getCompany() : null; + } +} diff --git a/backend/src/Service/VCardBuilder.php b/backend/src/Service/VCardBuilder.php new file mode 100644 index 0000000..3f53aa4 --- /dev/null +++ b/backend/src/Service/VCardBuilder.php @@ -0,0 +1,73 @@ +getCompany(); + $location = $e->getLocation(); + + $lines = []; + $lines[] = 'BEGIN:VCARD'; + $lines[] = 'VERSION:3.0'; + $lines[] = 'N:'.$this->esc($e->getLastName()).';'.$this->esc($e->getFirstName()).';;;'; + $lines[] = 'FN:'.$this->esc(trim($e->getFirstName().' '.$e->getLastName())); + + if ($company) { + $lines[] = 'ORG:'.$this->esc($company->getName()); + } + if ($e->getPosition()) { + $lines[] = 'TITLE:'.$this->esc($e->getPosition()); + } + if ($e->getEmail()) { + $lines[] = 'EMAIL;TYPE=WORK:'.$this->esc($e->getEmail()); + } + if ($e->getPhone()) { + $lines[] = 'TEL;TYPE=WORK,VOICE:'.$this->esc($e->getPhone()); + } + if ($e->getMobile()) { + $lines[] = 'TEL;TYPE=CELL:'.$this->esc($e->getMobile()); + } + + if ($location && ($location->getStreet() || $location->getCity())) { + // ADR: ;;Straße;Ort;;PLZ;Land + $lines[] = 'ADR;TYPE=WORK:;;' + .$this->esc((string) $location->getStreet()).';' + .$this->esc((string) $location->getCity()).';;' + .$this->esc((string) $location->getPostalCode()).';' + .$this->esc((string) $location->getCountry()); + } + + foreach ($e->getContactLinks() as $link) { + $lines[] = 'URL:'.$this->esc($link->getUrl()); + } + + if ($e->getBio()) { + $lines[] = 'NOTE:'.$this->esc($e->getBio()); + } + + $lines[] = 'REV:'.$e->getUpdatedAt()->format('Ymd\THis\Z'); + $lines[] = 'END:VCARD'; + + // vCard verlangt CRLF-Zeilenenden + return implode("\r\n", $lines)."\r\n"; + } + + /** Escaping gemäß vCard-Spezifikation. */ + private function esc(string $value): string + { + return str_replace( + ['\\', "\n", ',', ';'], + ['\\\\', '\\n', '\\,', '\\;'], + $value, + ); + } +} diff --git a/backend/src/State/TenantStampProcessor.php b/backend/src/State/TenantStampProcessor.php new file mode 100644 index 0000000..f270e01 --- /dev/null +++ b/backend/src/State/TenantStampProcessor.php @@ -0,0 +1,102 @@ + $uriVariables + * @param array $context + */ + public function process(mixed $data, Operation $operation, array $uriVariables = [], array $context = []): mixed + { + $this->stampAndValidate($data); + + return $this->inner->process($data, $operation, $uriVariables, $context); + } + + private function stampAndValidate(mixed $data): void + { + // Plattform-Admins dürfen mandantenübergreifend schreiben + if ($this->tenant->isPlatformAdmin()) { + return; + } + + $reseller = $this->tenant->getReseller(); + if (null === $reseller && $this->isTenantOwned($data)) { + throw new AccessDeniedHttpException('Kein Mandantenkontext.'); + } + + match (true) { + $data instanceof Company => $data->setReseller($reseller), + $data instanceof Location, + $data instanceof Domain => $this->assertCompany($data->getCompany()), + $data instanceof Employee => $this->assertEmployee($data), + $data instanceof ContactLink => $this->assertCompany($data->getEmployee()->getCompany()), + default => null, + }; + } + + private function assertEmployee(Employee $employee): void + { + $this->assertCompany($employee->getCompany()); + + // Standort muss zur selben Firma gehören + $location = $employee->getLocation(); + if (null !== $location && !$location->getCompany()->getId()->equals($employee->getCompany()->getId())) { + throw new AccessDeniedHttpException('Standort gehört nicht zur Firma.'); + } + } + + /** Prüft, dass die referenzierte Firma im Mandanten des Nutzers liegt. */ + private function assertCompany(Company $company): void + { + $reseller = $this->tenant->getReseller(); + if (null === $reseller || null === $company->getReseller() + || !$company->getReseller()->getId()->equals($reseller->getId())) { + throw new AccessDeniedHttpException('Firma gehört nicht zum eigenen Reseller.'); + } + + // Firmen-Admins dürfen nur in ihrer eigenen Firma schreiben + $own = $this->tenant->getCompany(); + if (null !== $own && !$company->getId()->equals($own->getId())) { + throw new AccessDeniedHttpException('Schreibzugriff nur auf die eigene Firma.'); + } + } + + private function isTenantOwned(mixed $data): bool + { + return $data instanceof Company + || $data instanceof Location + || $data instanceof Domain + || $data instanceof Employee + || $data instanceof ContactLink; + } +} diff --git a/backend/symfony.lock b/backend/symfony.lock new file mode 100644 index 0000000..e974e10 --- /dev/null +++ b/backend/symfony.lock @@ -0,0 +1,214 @@ +{ + "api-platform/symfony": { + "version": "4.3", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "4.0", + "ref": "e9952e9f393c2d048f10a78f272cd35e807d972b" + }, + "files": [ + "config/packages/api_platform.yaml", + "config/routes/api_platform.yaml", + "src/ApiResource/.gitignore" + ] + }, + "doctrine/deprecations": { + "version": "1.1", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "1.0", + "ref": "fdd756167454623e21f1d769c5b814b243782a67" + } + }, + "doctrine/doctrine-bundle": { + "version": "3.2", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "3.0", + "ref": "d39a3bd844edfe90c20ae520b804a3bf4f82b4ad" + }, + "files": [ + "config/packages/doctrine.yaml", + "src/Entity/.gitignore", + "src/Repository/.gitignore" + ] + }, + "doctrine/doctrine-migrations-bundle": { + "version": "4.0", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "3.1", + "ref": "1d01ec03c6ecbd67c3375c5478c9a423ae5d6a33" + }, + "files": [ + "config/packages/doctrine_migrations.yaml", + "migrations/.gitignore" + ] + }, + "lexik/jwt-authentication-bundle": { + "version": "3.2", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "2.5", + "ref": "e9481b233a11ef7e15fe055a2b21fd3ac1aa2bb7" + }, + "files": [ + "config/packages/lexik_jwt_authentication.yaml" + ] + }, + "nelmio/cors-bundle": { + "version": "2.6", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "1.5", + "ref": "6bea22e6c564fba3a1391615cada1437d0bde39c" + }, + "files": [ + "config/packages/nelmio_cors.yaml" + ] + }, + "symfony/console": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "5.3", + "ref": "1781ff40d8a17d87cf53f8d4cf0c8346ed2bb461" + }, + "files": [ + "bin/console" + ] + }, + "symfony/flex": { + "version": "2.11", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "2.4", + "ref": "52e9754527a15e2b79d9a610f98185a1fe46622a" + }, + "files": [ + ".env", + ".env.dev" + ] + }, + "symfony/framework-bundle": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.4", + "ref": "d5dcd308c8becd725c9d8b91e31aab1ff0bbc30b" + }, + "files": [ + "config/packages/cache.yaml", + "config/packages/framework.yaml", + "config/preload.php", + "config/routes/framework.yaml", + "config/services.yaml", + "public/index.php", + "src/Controller/.gitignore", + "src/Kernel.php", + ".editorconfig" + ] + }, + "symfony/maker-bundle": { + "version": "1.67", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "1.0", + "ref": "fadbfe33303a76e25cb63401050439aa9b1a9c7f" + } + }, + "symfony/messenger": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "6.0", + "ref": "d8936e2e2230637ef97e5eecc0eea074eecae58b" + }, + "files": [ + "config/packages/messenger.yaml" + ] + }, + "symfony/property-info": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.3", + "ref": "dae70df71978ae9226ae915ffd5fad817f5ca1f7" + }, + "files": [ + "config/packages/property_info.yaml" + ] + }, + "symfony/routing": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.4", + "ref": "bc94c4fd86f393f3ab3947c18b830ea343e51ded" + }, + "files": [ + "config/packages/routing.yaml", + "config/routes.yaml" + ] + }, + "symfony/security-bundle": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.4", + "ref": "c42fee7802181cdd50f61b8622715829f5d2335c" + }, + "files": [ + "config/packages/security.yaml", + "config/routes/security.yaml" + ] + }, + "symfony/twig-bundle": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "6.4", + "ref": "f250159ebe99153d0c640a3e7742876fc7453f2c" + }, + "files": [ + "config/packages/twig.yaml", + "templates/base.html.twig" + ] + }, + "symfony/uid": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.0", + "ref": "0df5844274d871b37fc3816c57a768ffc60a43a5" + } + }, + "symfony/validator": { + "version": "7.4", + "recipe": { + "repo": "github.com/symfony/recipes", + "branch": "main", + "version": "7.0", + "ref": "8c1c4e28d26a124b0bb273f537ca8ce443472bfd" + }, + "files": [ + "config/packages/validator.yaml" + ] + } +} diff --git a/backend/templates/base.html.twig b/backend/templates/base.html.twig new file mode 100644 index 0000000..434781e --- /dev/null +++ b/backend/templates/base.html.twig @@ -0,0 +1,16 @@ + + + + + + {% block title %}vcard4reseller{% endblock %} + + + {% block stylesheets %}{% endblock %} + {% block meta %}{% endblock %} + + + {% block body %}{% endblock %} + {% block javascripts %}{% endblock %} + + diff --git a/backend/templates/public/profile.html.twig b/backend/templates/public/profile.html.twig new file mode 100644 index 0000000..dea80ea --- /dev/null +++ b/backend/templates/public/profile.html.twig @@ -0,0 +1,154 @@ +{% extends 'base.html.twig' %} + +{% set fullName = (e.firstName ~ ' ' ~ e.lastName)|trim %} +{% set reseller = e.company.reseller %} + +{# Firmenspezifisches Branding – defensiv validiert #} +{% set b = e.company.brandingConfig %} +{% set primary = (b.primaryColor is defined and b.primaryColor matches '/^#[0-9a-fA-F]{6}$/') ? b.primaryColor : null %} +{% set primaryDark = (b.primaryDark is defined and b.primaryDark matches '/^#[0-9a-fA-F]{6}$/') ? b.primaryDark : primary %} +{% set logo = (b.logoUrl is defined and (b.logoUrl starts with 'https://' or b.logoUrl starts with '/')) ? b.logoUrl : null %} + +{% block title %}{{ fullName }} – {{ e.company.name }}{% endblock %} + +{% block meta %} + + + + +{% endblock %} + +{% block stylesheets %} +{% if primary %} + +{% endif %} + +{% endblock %} + +{% block body %} +
+
+
+ {% if logo %}{% endif %} +
+
+ {% if e.photoPath %} + {{ fullName }} + {% else %} +
{{ (e.firstName|first ~ e.lastName|first)|upper }}
+ {% endif %} +

{{ fullName }}

+ {% if e.position or e.department %} +
{{ e.position }}{% if e.position and e.department %} · {% endif %}{{ e.department }}
+ {% endif %} +
{{ e.company.name }}
+
+ +
+ + ⬇ Kontakt speichern (vCard) + +
+ {% if e.phone %}Anrufen{% endif %} + {% if e.mobile %}Mobil{% endif %} + {% if e.email %}E-Mail{% endif %} +
+
+ + {% if e.bio %} +
+
Über mich
+

{{ e.bio }}

+
+ {% endif %} + + {% if e.contactLinks|length %} +
+
Links
+ +
+ {% endif %} + +
+
Profil teilen
+ QR-Code zum Profil +

QR-Code scannen, um dieses Profil zu öffnen

+
+
+ +
+ bereitgestellt über + +
+
+{% endblock %} diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..e631993 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,54 @@ +services: + php: + build: + context: ./docker/php + args: + UID: ${UID:-1000} + GID: ${GID:-1000} + volumes: + - ./backend:/app + depends_on: + mariadb: + condition: service_healthy + environment: + DATABASE_URL: "mysql://app:app@mariadb:3306/vcard4reseller?serverVersion=11.4.0-MariaDB&charset=utf8mb4" + + nginx: + image: nginx:1.27-alpine + ports: + - "8080:80" + volumes: + - ./backend:/app:ro + - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro + depends_on: + - php + + mariadb: + image: mariadb:11.4 + ports: + - "3306:3306" + environment: + MARIADB_ROOT_PASSWORD: root + MARIADB_DATABASE: vcard4reseller + MARIADB_USER: app + MARIADB_PASSWORD: app + volumes: + - mariadb_data:/var/lib/mysql + healthcheck: + test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"] + interval: 5s + timeout: 5s + retries: 10 + + node: + image: node:25-alpine + working_dir: /app + volumes: + - ./frontend:/app + ports: + - "5173:5173" + command: sh -c "npm install && npm run dev -- --host 0.0.0.0" + profiles: ["frontend"] + +volumes: + mariadb_data: diff --git a/docker/nginx/default.conf b/docker/nginx/default.conf new file mode 100644 index 0000000..57c47a7 --- /dev/null +++ b/docker/nginx/default.conf @@ -0,0 +1,25 @@ +server { + listen 80; + server_name _; + root /app/public; + + location / { + try_files $uri /index.php$is_args$args; + } + + location ~ ^/index\.php(/|$) { + fastcgi_pass php:9000; + fastcgi_split_path_info ^(.+\.php)(/.*)$; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param DOCUMENT_ROOT $document_root; + internal; + } + + # Direkte .php-Aufrufe (außer index.php) blockieren + location ~ \.php$ { + return 404; + } + + client_max_body_size 16m; +} diff --git a/docker/php/Dockerfile b/docker/php/Dockerfile new file mode 100644 index 0000000..710c09c --- /dev/null +++ b/docker/php/Dockerfile @@ -0,0 +1,25 @@ +FROM php:8.4-fpm-bookworm + +# System-Abhängigkeiten für die PHP-Extensions +RUN apt-get update && apt-get install -y --no-install-recommends \ + git unzip libicu-dev libzip-dev libpng-dev libjpeg-dev libfreetype6-dev \ + && docker-php-ext-configure gd --with-freetype --with-jpeg \ + && docker-php-ext-install -j"$(nproc)" intl pdo_mysql zip gd opcache \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +# Composer aus dem offiziellen Image übernehmen +COPY --from=composer:2 /usr/bin/composer /usr/bin/composer + +# Symfony CLI (praktisch für Maker/Server/Checks) +RUN curl -1sLf 'https://dl.cloudsmith.io/public/symfony/stable/setup.deb.sh' | bash \ + && apt-get update && apt-get install -y --no-install-recommends symfony-cli \ + && apt-get clean && rm -rf /var/lib/apt/lists/* + +# Nicht-root-User passend zur Host-UID (vermeidet Datei-Rechte-Probleme) +ARG UID=1000 +ARG GID=1000 +RUN groupmod -g "${GID}" www-data 2>/dev/null || true \ + && usermod -u "${UID}" -g "${GID}" www-data 2>/dev/null || true + +WORKDIR /app +USER www-data diff --git a/docs/KONZEPT.md b/docs/KONZEPT.md index 0e14666..3c737a3 100644 --- a/docs/KONZEPT.md +++ b/docs/KONZEPT.md @@ -94,7 +94,8 @@ und legen sie versioniert ab. Öffentliche Endpunkte liefern immer den aktuellen - **NfcTag** — physischer Tag. Felder: `uid`, `shortUrl`, `employee_id` (nullable bis Zuweisung), `status` (`unassigned`/`active`/`disabled`), `lastScanAt`. - **QrCode** — generierter QR (statisch oder dynamische Redirect-URL). Felder: `target`, `imageAsset`, `employee_id`. -- **WalletPass** — Referenz auf Apple/Google-Pass. Felder: `provider`, `serial`, `passUrl`, `employee_id`, `lastGeneratedAt`. +- **WalletPass** — Referenz auf Apple/Google-Pass. Felder: `provider` (`apple`|`google`), `serial`, `authToken` (Apple Web-Service-Auth), `passUrl`, `employee_id`, `lastGeneratedAt`. Siehe §12. +- **WalletDevice** — registriertes Apple-Gerät für Push-Updates (Apple-spezifisch). Felder: `deviceLibraryId`, `pushToken`, `serial` (→ WalletPass), `registeredAt`. Google braucht das nicht (Server-Push über die API). - **GeneratedArtifact** (optional, generisch) — Cache abgeleiteter Outputs: `type` (vcard/print_pdf/signature_html), `employee_id`, `payload`/`fileRef`, `generatedAt`, `version`. ### Vertrieb & Abrechnung @@ -132,6 +133,7 @@ erDiagram Employee ||--o| NfcTag : verknüpft Employee ||--o{ QrCode : hat Employee ||--o| WalletPass : hat + WalletPass ||--o{ WalletDevice : "Apple-Push" Employee ||--o{ GeneratedArtifact : erzeugt Employee ||--o| User : "Self-Service" @@ -226,7 +228,7 @@ Alle unter `/api`, JWT-geschützt, mandantengescoped. Beispiele: ### Noch offen -4. **Wallet-Pässe:** Apple Developer Account + Google Wallet API vorhanden? (Zertifikate erforderlich) +4. **Wallet-Pässe:** Apple Developer Account + Google Wallet API vorhanden? (Zertifikate erforderlich). White-Label-Frage: läuft der Apple-Pass unter *einem* zentralen Pass Type ID (Plattform) oder pro Reseller? Konzept dazu in §12. 5. **Druckdaten:** Welches Format erwarten die Druckereien (PDF/X, bestimmte Maße, Beschnitt)? Gibt es Vorlagen? 6. **Bestehende Daten/Branding:** Existieren Design-Assets/CI zur bestehenden vcard4reseller.de, die wir übernehmen? @@ -245,3 +247,55 @@ Alle unter `/api`, JWT-geschützt, mandantengescoped. Beispiele: **Datenmodell-Ergänzung** an `Company` bzw. neue Entität **`Domain`**: `hostname`, `type` (`subdomain`|`custom`), `status` (`pending`|`verified`|`failed`), `verificationCheckedAt`, `tlsStatus`, `company_id`. + +--- + +## 12. Wallet-Pässe & Kontakt-Synchronisation + +### Das Grundproblem + +Eine heruntergeladene **vCard (.vcf) ist ein Schnappschuss**: Einmal in der Kontakte-App gespeichert, aktualisiert sie sich nicht mehr. Ändert ein Mitarbeiter seine Nummer, haben alle Empfänger veraltete Daten. Das ist eine OS-Einschränkung. Es gibt drei Wege zu „aktuellen Daten": + +| Weg | Echter Auto-Sync? | Wo landet es? | Aufwand | +|-----|-------------------|---------------|---------| +| **Wallet-Pass** (Apple/Google) | **Ja, over-the-air** | Wallet-App (nicht Kontakte) | hoch (Zertifikate) | +| **Link behalten** (QR/NFC/Kurz-URL) | Daten aktuell *beim Öffnen*, vCard wird live generiert | Browser → Kontakt bei Bedarf neu | ✅ umgesetzt (Phase 2) | +| **CardDAV** | Ja, auf Kontakt-Ebene | native Kontakte-App | mittel, für Einzel-Empfänger unpraktisch (account-basiert) | + +**Fazit:** Den einzigen echten „Push in eine bereits gespeicherte Karte" liefert der **Wallet-Pass**. Der **Link** (unsere Profilseite) ist der pragmatische Standard: nicht die Daten, sondern der Link wird gespeichert; die vCard erzeugen wir bei jedem Abruf frisch. + +### Apple Wallet (PassKit) + +- `.pkpass` = ZIP aus `pass.json` + Bildern + `manifest.json` + **PKCS#7-Signatur** (Pass Type ID-Zertifikat + Apple-WWDR-Cert). +- Pass-Stil `generic` (Visitenkarte): Name / Position / Firma / Telefon / E-Mail / Link. +- PHP: z. B. `includable/php-pkpass`, gekapselt in einem `WalletService`. +- **Sync (Push):** Pass enthält `webServiceURL` + `authenticationToken`. + 1. Nutzer fügt Pass hinzu → Gerät **registriert** sich (→ `WalletDevice`). + 2. Profil ändert sich → **leerer APNs-Push** an registrierte Geräte. + 3. Gerät holt aktualisierten Pass von unserer **PassKit-Web-Service-API** ab. +- Nötige Endpunkte (PassKit Web Service): `register`, `unregister`, `list serials`, `latest pass`. + +### Google Wallet + +- REST-API + Service-Account (kostenlos). *Generic*-Pass-**Klasse** + pro Mitarbeiter ein **Objekt**. +- Hinzufügen via „Add to Google Wallet"-Link (signiertes JWT). +- **Sync:** Objekt server-seitig per API **patchen** → Google pusht selbst. Kein APNs, keine Geräte-Registrierung. → einfacher als Apple, daher **als erster Wallet-Kanal empfohlen**. + +### Einbettung in die Architektur + +``` +Employee geändert ──► ProfileUpdated-Event ──► Messenger (async) + ├─ Apple: Pass neu signieren + APNs-Push an WalletDevices + └─ Google: Wallet-Objekt per API patchen (Google pusht selbst) +``` + +Neue Bausteine: `WalletPass`/`WalletDevice` (Datenmodell §4), `WalletService` (Pass bauen/signieren/patchen), `ApplePassController` (Web-Service-Endpunkte), Messenger-Handler am `ProfileUpdated`-Event (gleicher Trigger wie `Employee::touch()`). + +### White-Label-Überlegung + +Apple Pass Type ID ist an *einen* Apple-Account gebunden. Optionen: **(a)** ein zentraler Pass Type ID der Plattform für alle Reseller (einfacher, Branding über Pass-Felder/Logo) oder **(b)** pro Reseller ein eigener (aufwändig, jeder Reseller braucht Apple-Account). Empfehlung: **(a)** zentral, Reseller-/Firmen-Branding über Logo & Farben im Pass. → zu klären (offene Frage #4). + +### Voraussetzungen (offen) + +- Apple Developer Account + Pass Type ID + Zertifikat (`.p12`) — für Apple Wallet. +- Google-Cloud-Projekt + Wallet-API + Service-Account — für Google Wallet. diff --git a/docs/design-reference/website-home.jpeg b/docs/design-reference/website-home.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..0075b044ff88377b59f31b5b33ffe38f65b78f85 GIT binary patch literal 800761 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

ejrqKoGCb6ftAauf!>NC<+>-j|x!?Pk< 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%0AX2 z)c7(Y?c1f@g>G8vM8yP;H1EC=KQjxeRiOI`Dr(joTDV@iA5$eliimEQ_ zQb3Yw!mUZ6wfU(}B?}m%@ky)k5%cOw+c}5YQ+m68cd8l%Jr|rmcM~XX`86nAdlolN zfwy>x+dEXb9-$?A4whir>h>Y6BauBa4^7x7=F5j<=93;Z5)Rw3f%6e_&4};u#m7UZ z#}{>bJ@=|hzRm0F+okESOsvL0rL-ob&Lu?F>nm>`rgp~efy3Fd5xP7vx>g#T;uvLz zrp$_;iol@QikY(Alw6uO7)RU9%g4;-b{%(Ol zkoxP!yOF(^%5I0%cFR?^F5g()ySe4);tnjKVM*rJ_PjRuVlz$Dc#%pus#2KR<7QUQp%LNqr@k7>0<;ZhDhH_aZeS zBAvP>0BP4~e4La}7={V{n9AL3`gxQLrG`|~!ayqSizA3e3eWg^4LGs6&Ai3FngH0# z)SdK+`;h+NQuL-nBi}GHOXz7$rJ~IIRblI*=@^ua;h~V}L&Q9~=$tpJJJk~#966_R zi!gNwY1V?>74q#BvH-0^5I?Lw%^Nb^?S0bisYjFkwt=Hfm>Pa%17gpOu59mK*bOEA zgyZ=841akawuq;&wq-1z&)4?h-mFx9DJnQ=V}E%^^_Z>g7WXK zFa{t*_5ahe2Z(q;ivi>}prbI00`5xYdqH7QK^0b|PA+Y?ii>=sG!*9CJiihT9cy_J z@CxgBA#JJ{XLV=Pk1oD)0#1!;O3XgS&B>1v&fIsfnv*%QdW-Cgj9q!70X@MX0DOFa z(-82NQ2}3~ADsc5oE&15KUE^iH$gWpwh(^_NgO=NprAJ)Kb4{%ni1gC1k|M)$0XqI z%mUnal&Uz|qB!^ubDuvih>ETZw<=v1|}KuCQt9KHQDjR-8!6eKIlpMZQbVk?zDL;-aSFz zKxrGUg$+8)E|#?Fb96O<MJ831bBbPG*qjx1v9-@zG@sg_&`57q9t#_nSVR`y%dH zzeHg@oyt5nWBYl$rs86J{GIS2A(E+PU|)*Se#mue*!YB=Q(wv0+0+1Sc62%T0HTZ= zn(Jg6{r2ci{ab`Zo6z;EqNs+?9#^@!)A85Own(n?K^6^(#?UQ$>+#CK9mA%`TO@viHa{k?+U8do^U<;i%;92&QG& znrr7x`2z{NZv2J)i0*e-pJ6@EsI711GI?fRp%M999{a~bsxa*9@Tj*-cLs>MZ}o`E zcV1qab6p1x8y8OMzMZo43^%n*y7MG_@K$Mz))t$mU-`mAd)W`0b^YNCCB=Z(f%I9e zg$~mO=DBeiz5KgnV&G0$2*?Qo0@wJ=gYiae&p?Nb{G*%AS$CtuC?;*qE_m4w7 zMrQ8^oy;k1cZd!N^Ta$K5)gh?mfNtqmbX{(aPA;_&agqDN2w1?{`JLU*ZQVll%(E` zLHn|m!6A9tcU-!fX&o#gB_^9Iq9{hD2ZlHbLq~@W9m{?M;^_5hI-9k+fy+MQDMl^@ zwL7~d;km9{9gA^Al->tpP$W6nOUpZmXUqn-XMG?tVT{Ov5KROGy^3}`o)2mHd1S-7_d{g8FKepET8*i-vRaF$%`xr_ zd!-{25*>*VbWW;#2hqiCeZ50ioB{oo1B>6UA)mf!k&v+5s_mtABR)84 zxujKbI}6k9bak9fW2KkR>~do|OJ*?*3Pla|zH)jfypJ;cx{dtJS!~lwM`}Aa?~>K& zDbxiLNp5%+T490ZHVj?w3tjL=QjXe4@c~++-h08^0hq8Q`r#4vfa``q&Ta$ zr`eVGIK#F=xV3QDc&uvL<0rF9U13&EENQU1J~A#Plt%am<0~M1-uW?VH2-=<(U)Nv z{cIhx>dB>L*!E^oZ6zHC2eM6Yr%>ISB{k!e;~8m==R&sGBei>_)srRl7IeFje7$X^ z^^?<5^z;-5(6MQW7xlSi3u_hrt-{hEEi5i_;Dh!#aiKV7em<{cni%auR`t#Y$ShJY zV&>uz_dHpI4k7=Yc*n(jqH9MZXysgMv1f5z?DMv~OU#%HEa z($bk7snX=mplH3N8eC`gf?l}YvqmlgH6O6OyWF3S@Gcjpag4Y>I9tku)yY~%wnSd8 zRI2unnhBOKH0O9o7!`ilY-W>F8MGOjvJ{ASb;dhY>0;u*n&u8iHg**1@ojHj%5&N( zS-*yU3HF>g-`&Mj*0Zuj@!gVErP3Xzp<4P9YCnRSNv%wDCR`+*_odLKRpUr($Emp3 z2O80B8{e->7epJ9%*|}I7KJ(J6&6s5YW%6`mD<6BJz`tJ?QIqnp5?-wSsnAbJ6x}g zGK-?Gmg@wu*wc2O-=d5DFibPLtMq6Q%!XZ9eBQRXiy*^{pBm+|c@P&?U>=zqxPaQt zv5)2Ljt_U`FR9Uc!5`v_Q}3l>?Y<0H;GQ+rUES$385 zM@`8&HOG|2wVXy1z#=Inr6$N)0@FRDC7#QR-Cr4km%909kkZ^JqHgIn*sv5@6JK^f z@@wRU)OTcx)h5KLB~&yjt}c2>SL#!Sd2BZYAO_B$_Ca;WQBBzEVg?}PeT~MXEBavf z7IKwV3qN!#h}@WNjL79hITE^i9I!B|98@`n`OqsuR>_uS=lAhJ%GCq7Ob28qL>L(H zcl&!zHdkE<5Vp!$s}2JqR_!f3dix8H$7+)|pgZ=JEAJ=gBJxVg+&ps+uG)KWsb)3ePaxl4mFz?0NdRyYL`EbH=#Yyy)3^m5BD9+e`H*U$c6I$Ll_EqAJ zr7=g=b($(;J)i~2C*c(bA*Q(1tqybd*E<^1xj!zsxr1I!&%v56DT}m64K^d-F&<3* z_5$}k;T1=6kC~n>RN32Otvdv?)YxCH*i5Ey!tyG{bxWo~y}RNjPMvQZsmb#Nw1u;F zq@nwLed7W7ti2j^?GZNltPFfd(qU{%r$dnY`0ypvvw5|A6imNE6UjZy=EFXWQ&aM4 zVarR+OKh1lEFvR+^69eEwIuZHRZYw1-8(9M$smQPy2B8uW06>N8H$%H?#*=Q&Lm&# za#@^pO?8U`BN{}cRr|E?92Q@?zZd#&-a7iElDora>1DuZII61aIPv~`HG1`;zH?yK zyq&X+Cv`E*DY})}{-JPmmCHwyYe%KqHR@8YUuXmuHp13Y-V=KaxEG8i5U3d(JRJd3 z8dnHdW-=>#Io>rJ#bW+|MYVFe6zvtQxLYo|sH&NRV0Cr;t1KZU$caKUz5wj>tF3t`o2;5`HYTbYfdmUmNFoWVRD> z-sc7jiSH3#mR#1u2w#|9;|oqij`<#r6vY`3>avQMj1LFf#wuy(Iy;w6**+Z=fH4qp zVGVeG+1M7p=fFboSmIVn;iL!0S90jeM)$lO{zWPa^TPq_!^93wO#VPq_Rjq!USs1o zE@@s~>(%V#4%q!uOI&Fg zENw-fn|z0nG1nY(+J30>? zCp#irY1XFp?YhT#2LjLhFD-#UtH<(jWW26Iz(*%yL5Y_u${lAU7lKRrOm8YEG3{BY zqU7txEG`K2d}n6(Zfb%h;O36vZ{FbPp!2!-Vkoln^-|c%q=>J>W{g*UgGQ1@QQn5j zY4Tx9I+jzchRpU#zLA%~>cVBY*y@g(pmW_`xR#`2o)K4A)PlZsdXvQ>i>KjXGm zQ8Lf{JBXC{N-Uh+62*3_@xy9W=@P4=9oD-sy7BQc3}9TU;IXGscRH2%QKJ*m#Yz#a z(|hHEb~5D-91YnZASjJ=9*k?UyCqEydV9BE*RTL*t;uxL>rpiysS)82+7?1TW2J8U z{@Ht|?TVr?d*>W4k&#ne%>%c{`tUbfvAwoyZ|wISiMY3gpUygalXZUH)aS&{4!*Vbfo$Or~A?hd9lXoyQizdEm{fa7hqu5eW+yV*ZiK>Lyt!Gs|l_ zj9Pxu)Y$X~2@4!K><=w^rVvIw$l7D5^KK>7QfUu{MY zBQR=8u%bUp9Fs8-KWHaJMI~xq9<|yPjHrF5G~W5ub5D?sed;!k0I&RF;99AdR+yy- zv8BGKbP1wnPI9^k(Vta5vP%-+Wt$tA^yz{nJYZuV0uBreL?ZjxNIETTR$2Puit_OHTVv7+rYBw;|S!BXxp3yq7B_zuYy|i+{FRu7+aC^>g{YliB+CS zS7-L9XmGSWHlJ^TYu+YFF=_%FkOv-dt!1mZL-J=P@m)DEy95#wAx^y+Cd#+(%i@w} z{|94V9T#QO{fz>m5{h&q-AGB7bc?WbNOvxsib@F!f^^9uwKTFc7<9+N(%mge34-qh zSoagZ_xZyQ$aQw+s3KT?d8JZ?-coI%em>01 zB{@~GExz@OL@)o9IvZghtQUjoRT``QR{15oK4P`sWb$>D^xAD;`D1((N_TN+_ zTDrfKdTVvdXv5;ndQat(Vvo?_%O3u?Ph_gdQgN>OjPjW7Y7`7r;Ps7la?Zu4IU7fh zk3(sbkR2RwPhFE&b<{EW#bDsI1sqrUCgPtV7)kW4-DK7(>WxjHdnG&36LLO%@19Aw zheTzq1&Olx9D_CRrO)aDg6%R!^7{>|!wht-NWn^zd}PILrVX(e_mh*ELT$*F1GDP4 zi63{Yd*j%}43j%or!nVl`vkP`#<_bQ6~c$yxm!mN%41D*Phy;vN|!^PJ&jf+OwN_E zCDl7+o2YzUFdT1d$fqPRVNS3sM?eo28(q`;Mmlm8Rd%MCcR~J~==~D{Va90Mf_$=xg^1e^2gGLAtCTxoR?;66 zAYa6yP}2tmBcc_TlCpOOr;lEEBq$;#^Eo5nwX7<=*7A8~cbj*~iFie8s2%r|faYCx zlJ;}%gS+Z^MezlEBQk5OagdxKMNIfdIJUpWXWAI1BsM7ZK%Iay+HF+L7QDXwPegpe zQ=BcVabFsHSu5N-5q9;ZjX|?(W{GB&2VtY1l<9j&NZLD4qO~(Vk3>}2-MUdk^s*s- z#j`?6osM8+ZGChla#-~-Sm%(a9l33%uoOXVjy`Gqvau#cRM@6qux!j`)zqF}Z@n{d z$-Itse1;ykzIxl)ruzvB_dUg>TiASzd&M1Z{U&~(jNOb?&`o+!<}WVRy`2`;v#x!I*|me{J}T43)pGwnKhyu;|CS z>D5$ZMCz3oId11_hZ~tY9uDp~+kCGLdnhPh1|dWmHYm#T%gcJBfF^xc_MS{^>8(vo z&36{=ID3eQj$n<%`@pg!`HIWK%kBIv@VD)zuy&)#`Hw&U0pjR z?dT5_=~OG5MQ3j}1Fh_Vs?Kd1Tis$Ind92{3JEqiAKyS_@Y5jbkxKd0&&$WYsY*KY zv);aJGQx<_Se{S^tC61Jq9{Q8~H)ho8OBK3=2~9*#g0wVzjuE)Ap&wWLtP&d{JNv889QOFkk#?eZ|zdFT@AhEufCx+C_gG zK?%+&j@!R2`c{FE=2eQ3f?ZhaJ@V^&dVJ*=FE=$^X#K(Q+I5i%6|H>=|XGPRlfNcIA+o$RiTpoDk6%uIGtU z70)6vD7_7^4}(WAcd*>E{bh zsxkD+Y}#mG=l6Aj3)Lf48nSA4sIjbQTsP|ys9hFbK$yP&KwY>xPIoSHH(p*d zI=)q9{H->S)A#&%?y_;qI6j5hDi(;tv((l zn6@(Y2(S9RPrRL070MCL$c;-yRUas`gx*C#&3 zj5f?A+I10qbNd#ptINUqeAhB+y+^ z0F?Lap}xI`D4)Jh-LQTO(npux;_lmAj`8Ww9Ro{a)>cKibU1dDJ*~m(*o@$M{fd_P zau{TNL)gJZ8e1yIv0v%iR^*#H9595e;;YEJp3yDRcXD=he1qljq8c8B2>d-F`FuMQ zNM>x)UD1OvgPwudyEb6&MJw{p)l=e@L$x8YGxXV6F-ycF`|h507O>I>cFa$j79etj z7!?Xtuh=Jv11wC#AKB)wX&W&hC*78-E40U96_q)aqs!HD#4z*B0U<$D`f#1^QlpZK z*Qw1|4WR-ZhH^j`tP;I|1&W-n1oVxp`zlhDYqrM3*lw>D>+j2HG^qwaFUUv&lG`o(aRZB zG*==lVO2xgQ+_!ZgNgYP)N=5p(}kCMllCa)Uun@MH9B}S^6Ff2U^krh@B7mm`jzQ0 z#-uN}2Inxf`$_R!H+7j}_&AayPi=*1sL`Cv!oga;qweD;q%h8vAVEd@9K-+N7Sl&$27~G|L(w22=gt%Ba=;|2cEB@Rdyk~S?R&T_Scvqi7 zf9(4Pg^N9BZcLX=rA^`*6U)}HfCYgcc>ATDEBWV--Hya!O@qzq*K9rEBGPs5)W%tv z_dw%0OYX0Ff+pfiKN6#VQcSv)iKBOATtV<|H6yj{y1;^p-N1PIj@vts{ zDOSp55=>0WwyL{5?9l?0a<7ODklAp%NIAmD{2?EsoE;Sj+c)*PTXCOTJ8PVgA2s{U z?Tks9AZ^ilhCR8M3HfuXg+iWT$XW*~f|}%zcH6Cfbzm5 zbMbG_;_`VzQUXtCgv;b+S{4i}j(jWqZ~`&MMq>6)tt?_60ZWA(qWgk&tBl!ZQ~iRw zHE%L}TJv&6gtd5(g9ZXADo&-=69swMem?QVkQk<>U=uzpP8-ictjBZUxO$fY{BbC3 zBx_^)wU2E%GXTX>iA<<@$~yckGa0tuWpfGDWqHD^AHv z>L6X^*MB17qIts$G8s)qK|?iO3G+;PmREuA#+UIw`PikefO|XbPxOh+3ZRY zycl6JO51jGK5;oI$-z;?h{vc9nZ|FLKjc1wY39UXX9Y=%ekAauO|Wm#U?G}RR4x${ z^NCRMJJ9(43kP#}@kD-sY52{<1O+8x+U_rMsNQFaDRH9hpj0u$*0qS~l?!zZfxd{X-aSX##$>2C^ZxQQ+8 z3%8d>WywX~Kps=-e(3BprAbG#w0e2%q(#^xv}TuPL4=&NzdGVe z)Ri$0FY|C*-ZA7*2}E^-isrg9HeA$PqVPWb*n5x+mk zK4TTu@B_t_YzSRiwHrLtuWM4>dKpqGB0Q?G!pz)|C~P$@}>bB3m~jGeB`>-PzS!i^m2vy(^Rbdh{!<>vD4;G zOg1ehXm);$;f^E(3V#%wG&y+14bpKX;;|sOy8f8*`e-`|$rjXyZj+V)^$bEi#T+n!` z?V+viRKpCuumIy|SrfzXgXY4ze*I@XAO}7sb4x3dY`goVw=p4V42w_GQ->35g_W?0 z-3KFcst%a=uujCM!F!D_?iB^GD#L>G!XBFsG>LrbaUQ2$7G0RMAKGSg}x@?#`f!n z{UUSlN19w^c!(>_3m=Y-*eDc=H+>%Uskl`e+=YbaSepdP)(gn5Q6hP(GPn}1%CBFG8cZ=KW$@g!}hgW3x($*#wfu&k+iC|QNmwN2Apku!A3*OZlq4|+$ zT$1dfntTp%UvHp>O%YQ*Atn|SE_aDwMfS+qG<30fY@|{6MW2?vhGRv)+j*wYHW(Xo zZT=TC~LR20o&$qO0PXmG}1fD|%^-vVl@a zW-kURAsUntGiP-L7J#&={awRY{f5oQlia zyf>DfAQ@ppJeLs;4D#4JHCA~#4~@2l`EM}Yt$x&HNaop?6w5cr*I3@~di7(at;C7Q zA!ZE}E{Ff6*@!iTO|r<_&cM7$f(}I~U@_Hv?p~7PfDMOFgq&4wwVq%220o&N%*ak3 zUk2i3mpXQDcK!+-|8{7rtd?P$x?bV_?T^ObENHqDTt?$z`xN7Jkfiv7#8~zqHpPtw zY#>;*5QEoB+m*k-6CYC(k*7a-)i+L9-c@X$9CYITu3x)J-Pj&XqE2RngPBaxl_7$G z;x88?t-Q;Fea!SIoLPrRf2+KO+|^*4H-2?dSZBQ^<+jWI)p>4EXF(AG`jz7R!rWXa zHVz+mC$ja*swbt6AmzR@_kiiZ6jMPvKHOPzDM)>?eFQ)%PfpZleWOMCB?oo&Uz;Rd z-xejKhMDE2l?(Bl%--V6zL#W=3nmvuzBi5+N{M>)?H1S=Br|o`ugx$vjdVK-7 zC7@w+{LKo>o`z9&D*Nr@mHLfpGfF{2`o;wX_qPyOcn)c&u3)*XH|ppPjw%T{1A{

oK@WYqoZXF)_RhbVRR2Tvb&i2)8t2=E40q&8!D(rsdr1SY51DZ_`Ej11wOP92un}K9sfT`#3ZlctzH*%qNjji4BL97x!^u4YqC%#sI`51@Ps5;bZ*9Pq zdbrZ2@Sc%MZw#4v4~~N-g74MW&m4>>C){womC)NZ*nD!{IYGh|1bh`05!<=gHh7Ao zhao7l5>u&O3wgTI%Ds48e71JyXxo>LKwbgD-nC9e}M_Gluy+Y^DR22QF zhQhbm&La$wuzsMVOHKq2)jl+&wI}*j;aL2vf*Vq z4&$Z>75j<-DW@t#mA&TBCbro%S7(gE7=>NBI1l|aa$FfYxU(F26Ia6*UW~}P@>@~V zYMfW%JmO)b>((&l90)XBE2NE06~}Dc=e8Wpts)+QkDUL&Bm0>w~VF`LfU8=j} z-40TiP;UWj=RO)WHYx&s3K^SsLsIDe7fv*M?nG`GJ~z-#Z-mLV5K{E+N?JU9XTX}D zcNhGOj9$4YGP~^!`sm80!FIwtg&4GM-AB+gJeZa5lhCyxu{VNn`d!(BYFFZpXcTVn z#>$J=(%lx^8?Q_Tf%BN{$O`z-Fh{gNsT7ZqVa1lmJ@45sV$kB3FPI%93GTg8mQM_c zD!a|?>1Sl{?TEVl=7U9dV_b&=3UvRWgE57_J>en zjQZPoyloXw1mohKUs!q)`jY8RXn5FVX9HYwk%Sz6%Gg8b_|5m0T|C9k(`p7$2GU|_SD1jmVIxt_d0Yd}7-;`DHq{MOTz zVS`5J9VJ`e*V>q^sc=J9=#|2}LMTN0i4a!J+gYpV&#Ey*u11391AA2gOh8kYfaDa7 z@+esa#@C_^i+qmu{qPvVx;a;mxzw*8*SQ<;Dlop^*l_v=3;e3>u$+wN3YlAUJ2NI{ zNQ*N>_#&I->7O38+fb8Rkz4^e1F!tevw{}q1Xn^lh?jEnA{59YMfH}WB{7DyYD#$U zMthl?l|_i;Btaiv?l+$1+o7)ysZDsk_Q?ziq;H)dp777gg&| z*AM?(lYw6vfxG!>*x1WG8!n>hVz{>iTcRM7cI$yLJFs=OLj=ofZm4dLZu!n%JQ}0`n-n&IJ>BRwwl2{w#Vz9lWuUc&< z8_T!D&RW~kBFc*Bo3G7U^zO&)V^gNV^_R1gS3>~oIX*(TxEUhH>_ElV-lXZBk23q@!tGGcWjKB=9*U;6-L^c(6O%* zd37AUgS2L(emNawwyP{oo*fkUkzMB2 z?)o2`MI}G9i-ay}5Aru)=kn3}v%8NsIn*E@MM$b^%Xb(P_e$6}(_y79jP#gmtoiaW zzVakYCiV+gV94HHOPrqjVpR{mCwgbAw}Y6`rSH*O1K^TEX9SI#1J<^&>Gop;So#nHNaQfj!zxI z2q`r~4SfO%5m20p8DpNg${l5-)nnf$UC%s)QT968Kt2ZU0oDH4eIpI?$MFv0dGN}F ziqS104=Abdjhg;RP8{FWH`(AORFhmAY;b9J0y!bDt2vU~-zMoXN8yzO6pi`cx;+oU zki3pxCUG1}K8I(Z+MYHo@HF-Ij=HfD(z#FGfSJk0)(xKQV|!;o33Zi*?U_qgCBGwC zZ1+O`a!KEty{}tX%1yOR!!oxt917fG)O{>!o(yvp?$VP#!T36Z;c zlG)*`q7c!FXV#Du?l37SpDToCQXe?pJshi8N(uF2_JHJ84GwpSbkmF?d6gW$coHQL zerLE!OPzWwm%!cNIF?=j3R(q@?&sB91*+mr?#WYMV=;dDF<70*F2|a>Lrz|G z_(pw1K|J-E8P|}!ZdtR%8{FtCKDvS2Y6db2S^;Ic|xqQ?xkb-fE zyi=K#ohjCEbxe14-`uzOo7;%<|><`dax(GPbg>JEU`Iiy{#3yJj~9 zN!U{FP=6CHDN1|R)E&YnZ8iG&@v(EmAfhRa*`!Wv%>m&7ykTvu$B+--rK_))oDArJ z;;!dUmAM^lM;2c+1n1@BuT9p{Uz@LLU2alP93hIw5FYeR{aPJ^A%UVVB%j*1!N$*+ zuz^FQVtvB?14YXv+%By=e)eGGKB2d!O0?_@ZD?8&B}A25mIvPWrly!oPRYN{IUHMg z)OO2CUU9<@^g)c7Rqse|6T_AB_FiAGb7N%gyZ%RAx^(!OpF8xn_SGPS6}?-THQuO$ z!V)B6sF?b${mG8I=DF{XqwH|4WP4A1?m@2prl(KK5}Ta41x?Hb0~!(y`$pjNweek9 z9PY_D!@2qtpl2JOa)iRQLP%Zi1!*hckS;prg}` z%ceu+nX_=q1}!t|DxX|)c^bDz?&COs&x^}FEZttTJtNzSD7~LFO3M}DgMk(i;mU}N zOLiP^28xjj3<;FuqHo$JsHnCj&66}c(fO$CML}H!GxTI80~)*;007-J)W|NZ^!yw? zrY@(XmJKVurWE=r5_cH%jW+E{>ghxpH6ur_DtCp5d}bzms`{f!?tBoY9P+uVfk~FN zy>c6O`IXfPxzB3wVT6=32_WL9jY zcZenjw>V^144JD*5wN0hFFxL}ytfIF6O^xk1QrW2OmuSkm=5PSrIN!c_19K6sGPUy zVBz=1EbLa7IHz}eTAIycQ`7B|5Xo8;y4h?l+zWQWTS_oa0^a*wLlpb;zRwXDT$^a* z6~fNW9T@31kGXyM&^7YX_^^44p@H6t<}Zrx3EMa>oBJ@@(9)8JVP370wwZ{_KBz6g zu7r+%GZfCJdmGVg?n2);5#dM|V>m*WPvjNQ5C{U|EkkU2n>R!6uujVU{s#8o49tGH zq0;slJJwE&^-Ex%xsD=uu4f!af>BVn0?EHlVb&t)l{>hP$31JBH2z$m2mO`{m8*^q zw+PW~Sy8t1H=OR!0aA|%8;j!jCWqY0a;@HR`88VH8>EtU2Mc6RQ9|6?Zw{Y?jGKY9 zrS!cKm32i1w04X|SrF|CpYmC6ut?mR+5YA+qZ}u}yVYZT$h$fA;zN)U%w}zG37Ff- z8(m*-RX7(|uApGb_q~){Co=q0$5;I9rJuSVFR$Ca%gA8p6gj(nq}duRxa?^(`DW~f zAnT9{^a&DyBxM2Xs*q&{Wz{-)<2$x4^Nn`tc|<&IpY@3s7(8&v6FFvg3)(Z?#%`){ z3NSmW+f8-VQR!}O+ep`yAznCM9JakVWrf~c-eFaS>~}y@GImQ&H=L$5vzg}Fnk?t- zF@oi#o8+;_hhLYHbK7wLq?aH#woFci=0&{Q@hw5(rID8z)^1zMN2kj5f@`8 z=A7KFv)kq=Z7+l`&JPc#0R%B0Goq0C&BEeZK9OHU1 z!zMZ9a_GF>E|rE%WbF9;Rn*No7@0%2mmxZ9J#I3+4~Kcd2@wX{LUuBCMqESv6JxqI zxut`ZIa89%K|p5(MWD%zrEsZI`TX?r`u)!LauPj^EoX!S%{^R>@sc3SHMdO;yXQFB zE_RmDb(@hK*6cvXfI(UB5|w_Dd&zyy?+r>eD|+~l>7-Qm^=&-VH3nO$LdQq^*jwd@ z%&+u8SD6LOvR18iWv<1&lacReQF`pq$R4DgR&M6>i9|qDR!hT`He@4~80vjiQv>NU z9+hc3^RM}VQq*1($zwTqnDPUKhyhvJuc<8qb_3VWBWphE*QfJbvGM$1gT9ChF+&o; z^^4rJLMgDZ>F^)c$|k*L*AS_7kCGn7-H=z&LIkV){`6);D45yF zGcL`tSC-rg6L4d0SiQXkRnl`ouv2CSwB&9jn@&(P_Bmz4`&$(pMCsTe_tZ3kBg~J7 zVT&ND;>m1Y(?G*0rr;6t2A324cOZ=c&>^8M6~BzD8D;BW`e7&ehclgN6c;1UCUM5E zj5ohSfy&mg4H!UNyN7 zQd&r_OKtIV7#hUMkhcGDGyCy&PJn0ow9(6{nla~PSMab-4KDGis{+*Zo5zA3g6F_= zctp5f(@Lwha&F084f{(g@|$ub*3{>a%nHJ&YDSST{V69IY`6MH=Kb7ncqG+3kqu8r z!MYEZt5N5#w~G-Q1{cguXAbjej|tL| zEB1>?EaEEHjgGC!l-P0z6S^=Zu_L!z4F+P{zbyOP3D)4Y?GKIMD>d8MYz`k9Udb&& zvWp!j`;u)BfTmv7hhM9f9f_CtL`GN4=;HFx8f_)XK&7}W*11npLsFD{==FEWEd2S& zCJI)awS2<^!aE+V1_pD_Am)&Q)fxefEQZQK{kMbhHr6(DZWVidnUMp{E9BJ`gtO)g zV)bkbnY;*?MZS>FkS+aoT}LFo{>;>DOKcURC30*3u^I6rj%Kz2?&UfO73XI`Jf3wpc)|mcu!UWiZ4SNL73+y36}>2`WTk{9 zBtJO?+G@X4(qW&F*niL+G~YlAuG!l8@e>yl z#2xsW1XV7Z#@0uc&t5Afx|Z;`PGIT9TEZEnjlZ@b@YZD2@#10U$g)0tIr0+geTyEE znsg<<$=5e|d(04TcgzOF3rE;BI64NAY?LODl=!)_;mD$sElx9oWm$vz%p+_i+2 zpwd%P)IXJDch+pZtJ>iy;NLoXMJ#(SK5LMW-9!zGXhIZyp4fO=jsnPISe}I#s4omi zwK`N}wB@kVgIE+lkZGVY>x`~kdHO{3jY*R=_R1{EDt`F9xDh;=d$*WV-%Tb<$pwcD z->t$YScT(o_|e3uE?)je(TQm!&Q5>=N`{hCnf{zFU5)L_7M#Ya52xB1c4kGd1P+HF zl|uKQ;a_Q*iD+7T|wx6Uw8@)WgY_NIWHWa9w$F~5A zEN=tHl0ffQfV>Q-x1vcP|>l0=srVHyGeA+=@UsBCuQc1~>vOzdQm3*rb*O zC|^roHmxbYgP(Wv0YGrx6W|ptp*#)EjqA6mfy2=!Kn5y0KKguu}%$weXO zWf#?pVo{*wskF?47fj(VfZ|M`c=LRNk*V{%ycE#b_0YFLFIWhv0fEhdQGk}JmvyH= zS?Kl9vfJV61UJu{=dfO9zKLJ>^n8ai9FQLkdS2y;%M@A&C?M?SgD2+=U(bs*6)stg zetH${Ty}M|%Z9Mhx)MOARiFzhAP-Tuh^~E7K(DwEvHL(ACo90r) z(9qBeL;WpcXoL(4J}ig^UHS#^^HMcv(*G3k#;2>#C-a#Y@A9*#qirkaNn_=xa|7KR zEVywWhIMe?#%Fk7fd>5VHa;U=yH3yx!J9w}fY;ZP)Z;Xz7qfs~6P*z!4{^DZ9zFn` z1Ha%gK_l`XLO;flFl7=50_})#@nWtrXs{CCGplFVGG(f2x=K6@eG>M%4{mxBk2x9| zj>iRKqdohz!;Fw{m9B%`<$0_3xOiL?W1%}48WXt| zK+nLGq_45KQ%Q+o>ED$PrN-3#_VX4RKIck}!h5a(=ecCzRtD?|;Y}J?1D#~mJkDK) zvF%^Kr%paZ@~82&v5>ZN#J$of8sde6_Egg5F{J1vpYCw2ph0$X>HORGIeb$rQ+T_l zs<^m#mwE6$70wqP$TEuhk!@}Ilz?z;7nPMkVa;u%F7peOVB#JB>n~SE`TUo6#~%%u z)`H%tiWS$6QD8DU2gxBGIlk(BENpn7AhfV8m#-hCX`~vqpt-zbI5V*g=Njl(;+#_M z-&ToOVMG0ZMdwfeejm=*lDzQVBW?3gS?#I^U;AW_%YqEgRD;&G@Vs|p@WV#qT9-RN zQ0!(ap=Fbf@aT14b2oRlDhAbqK9C&mKzutT&b;h=8+acz-EJLy3ObH&mtzBEV4z_D z5A*QJ3eVdl5WbT%3a5ds2m)QQ45T##w-aG#Mi`lF{6_bsJckb1_5I&fb!F#N4d}6S z<080HpMqW1gfqmF+N$DXcAG^N)W?7u2BZZQn~kHz^GHWGr+Xc&`fO$%%L_?3)C+m2 zqKaQv95ht&8$dPTmdUUjFeR@>+gRcP&g$qe$dwJ@%8&<3wvAA`Q4msv_sLiZ`Yj#- zo3S4`mQC)@Nze#3fk?E5 zP5$zpk=|rXt2v6R_X4bGr^}!6Y-LMEWP#kwR}g5_Xn(d?GwA3P&^_D<{^Sx7_?~fK zwVqXbGQ)gxH?NpbsWI1l>bnyJb|_L*6q=N2g6-0jJZY7%leS^trk9c#ML2D3PvvKoGZ8B@?~|g@Jig_?%%p!U(Q#vxD3a4KiWU zx;>B~pDB%{074)_TGcjV3?k~3|H^Np*-%MJrS0ZP02HZR#Aj*&V>WT9thLs&;vg^m zAa{RTR79vS%{`BKtNw1KmJPeESFJ{ee=v`0UQryPnmk0VKDf^5ZWpw-2=18FFyD6M z-R&g1H}A6ewXG;pn6ef+5-C1!2HBkFY0F?c&X6dgcZ8Sg!&o2ZmzX~qP(mZXW^>t| z;krugEVeZ6APyPGvT!r1=sb8~l}z*5BVH*f+&Z+~y?lBS28Cwa59Yr1z^K?ajQL$AKzk>bBbo0)j%SVDgzx;I<@20^EM@J(goKkNV)y#Qux%1#2+*cqis$ zqo$F|YAwI(D7bsSZ@F&^4$6b|6o54~LX*0kyRBY-ZB|zP&fT=>hA`zcsKM{iO^i?@ zcU~Dz3JX1&TMezpeBk0W>Mq-uRe%2niWlw-j6`K|XmGgvdQ&JCn)y8}S8Ib#JW53asBBD=wJ|0-LVNM8gn#sXV z3~Neo$z49Ve&O?RDj&hOvY9U zfOG+_;&V+^Me{sq0t@apK*R9c3?Ne)bA|`h*>d!P*KcZCaEsajZR#wzftEmvN!RJ| zm|tyZDl%v=wE&kuQeQlLly&!tre-*IE|7a%m7m`Ud)+S48LdfE8aDZ~6IWC7`Xiu| zkXH61@?0kBxa*;JZ>O?=U*A!T?Bvd3Vx%V!1R(zA5DPcnU6~i&$}ny`*YJ{<2;ir) zq+UdnUe;ZHG=i1!th?$p+(C^Bak390KT7IZjpwziS2LBChz+%CI;uxU#CiE)pq;$V^Ktg``rsPXOaPrA3qLwp zELOT-@6EAoJ)o6u9v>Mq9KVWDnt2wMO=i7d<`K+Kx0tRgKp_Oy!J4&Wu8=JntVnpO zX4e2BP1b2)kU;?_D`DiWRSggy2^^F>Y*#Mf@Gyda&!|YIyLY>HtbBP=d%+`J1;in_ zWJ=n^KTz=Ew`qfEJ&BuLBg`g7QoA}cXX9GeyJQ$($U8He$ST<*_UL{&1+vMH!Jf|r zTV`)z6}9Hf@rmUQ6V(-|1l+CFNweUcYE||Q*k$tAHYfKH_`F^>`GVvI8IJ;f51uR- z0_G8+#cj2;!o?GSCtbjY=m(-o2Afd%GK50TyezH=^I# zH_-ELw~!036eng?4TMHTiP3Gb8-kov{Cu+plTSpMla5?xzZBCu-%JSA!XzMbY#lSU z&$YN)J8;;er76BJtij z46f?YZ|dqzes5c8z`{C10%?eEZJLCam>nEC1ZKxH_0g7;S*$k_r)(x$)&{LCr!2kL z+GcGL_o9n(9BDpqbky7Q`3ByPn^+7iRen+K5s+TEqrsCH+TGnfpOgd<>@~Ht5;=8n zDH+n>s^cO~N|lzDBMwa`Ze^gMB~MMGeDXz=X~d3-b7o0vdE)!an$}6t;+glJ;?E)+ zcGvUfOKurAH}GQ@3n#)A2n^gE^1cL|r0_hg0{aKNM;}>acrc~~Y0)Zp$9n`{wu;#8 z6RST-UPBt^Y!N|ANF$`3A;e4Tht*rcIqqqdvzE0R)|~ha6Uodkk_AM$MTv;`7H6q$ zQRx`$$G$60${LI#oPdk+t?xWykQKaMymdDN~E4Oi_&fFLnx zn^t59K5(mFetP@%`U-nl1t0H`yRg2?4RM2h3CCjkQk|qk4aCea1NRaS_!67 zTNV@eyx2f=mm5DaB`18Xm^rmoXuWy+OSct)vb*xK_6~(I0)(e&3LaK9^G#r}52q<5um+cR~uccG4Cqifl~w@w`Iljmw?-u(n^Z|jmT zYzu=^RdqY!96Oml%bH7im5%YXG*g<+p)kQdmg?b=kti#5)q!DkgUOsm9^O8t6}6i_ zwT+^VG+o(zJp{;jUr1x{(u1}TCHV>Rhe`Uoo*^+a8JKm8MN9nXBbF`qX@Ghb-}U78 z$rc?xr`pR5c~Ryv;$63EqLXe$e&k2*UpDB2bLUN_ydqd4Akm1EF}b2?aYYmOqbjJO z)04V{IZk$Q62{ue!p{JbY3_sTcc#8M|D)y-y0=7Lrvkql zzi@I*>kR*rON%VpzUj%r+L>Bl((#%|khxv!klGb9N#oUq)*;#?j01pg9A((c)L0e( z+i`VRz*|~}%s83`ofi5y8o&n_E?Hp8Ygc|wkgxRx|JfFZU@;#@^XfxEO#^hr%A0xQ z)cJ~U2_9j{C@`sl=%5%eL7I2qAWz+;0(b0k!lB`+YjW-K;V3>%v~5EJ-6t4)FWeE1 zJQ^1GAXgXcOqR4RqbY{4NRYsHrnzWD%igue3o9<#*Irg!iDFDx%YXd?Wm>PQ zM2#3q+vxS3Ch&gG1lK3K40C@=aR#Fu+sH1W4UT~mBeezYvvPlnadEqj@0P|$ZT?f@ zGv+e{p(yjA+#z=r(_~p=dEpNf_}eoc&J9K+DC3|aqt)WnLcDFyY({)M@Y$MLt$0mr z4L_SxVS)ITjd(=YamRj~)oBsqZc?D`PqO#3J{sFm+vbicT~r$^eJ6T9r_}|%6eyg} ztG0Uze3?4PxTG_l+EO_iHv5m18s7tDMZccr9#OtN$vR1>^40K!>mGN$J441Eb-ypn z(A5eY9}FZ;*pK}up{H*kjic5tVYoOqn2tLxKGY0+XyKS^Cu2+e!(Q$b)nr56cvc`> z@2|(Y_y0L&!5K!j*y`ER)Y&lE@cY7)3%Qj5xnnQn4*M;)W!nW^&su~2e;V#}%MTP; z@$kTko+w5Cfz!^zoP9Z@%7u#QPtE^)BJurdTjOu4s+@hb|AC5W>g&0P0f1i4Mby3T zG+utLmy1aO4Hl$aXfU>JS!IShsxXCrOIJMNLI}�>)iH2(G|^D4;E<%^$)}v2yzv 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

ydQK~$oQ=4--RY!QU3!F?pr!_=~v$} zpSu=mYk8UP+QSoK!J{pd*z7Hq6Vj}^?cOOxrh>T;tv20f?$fT`+%uVdIy&hM&qaV>ghS}vz4uU7fPz4m`zPE zD}7fyKQ=nx&Imd-q5m#)6Zv9h(zwpSli!@u-3k56Lwd~y?N(nBn)BUu-7RUec)VNE zD%0xMQrb;U*w5cA9%ie_6swpxDFt9#CH~k~Sgw)8k6wzA>P{Q!PJX}WSc&}ny(;@s zsy+N}1*ERVOU&p0Y8=o-bDM+qEcSYuUm~tEY&q_%XI(OJq`&&HefCM01fnCY#!-zS z)90j*r2CG&3LW%5fAq!n0bg>n-GH~b$xqg>QKpTHnNOQn8c*Y|mWs~~$wkW?zk?9_ zAC5^H- zNlYu7XQ-00!-LNE>r%busxrU}(_YvyU6(Ew`4_~}Qfr5JXJLd_$!+_r#tfB4A`LqI z5MOtBwe$s;5^qO-z=8feCP9c;V%f_1cX|EWcWAUaq2zNtwy`)o0#3K`s=G_Px*sPy zBP;%wKOAUxqJVmhqbT09OIyCSeT%`(F-e1ioNc35#$PL6rxp|;$2^GcGj5!b)O707 z3si-8VPXv3lp5=t8~7%S)28H`Gj(gEzWI8wS@`3vjL7F*Mq1ZZPU1@DsWn3YaA6c_I-O$SBr9Siv*F8G_a%g{Eb3e;0f)hnVv7d9iJ$>eS@B&GD9X| zth7S#8D7!AUP<8`@3@GLBExCTyD>uc`C~LEEo;DYN4ZL_CWUMvcgL;+KkM$#G%HLk zubqCi{~n#W&{3W8U3i_kgjBB;O4tzc}C^Y;x#4>U>CA^keoii9{fQR$-U+l z+kW4P<|nbwiSw!sgl{7G!F!0VoKim}Oc-H)H7ZY`J{BgUyq-V#iU> zQ_{B5G?}CZVJ6d)uN#a@?1ehDK1R;gDm)f>EAT0b;dzF`lwE7JofNj#eYSAhtBnud z1#r>z_)%wC0I@|7+ThvTnUkIGXZtf3yC5!#iOm;}xZ7B$YO>hvdkt)SInn6ZFIK22 z4P+8|y-2T6$hVtrepPdP%LNl$?^+Rqhp!F4P0;2o8ls1uhc@KQCLR^3>O9YI{`m@$ zag`ykI7+!^r$t}i_r&?3SbnK!sqM#KGZ?R06n&9!MwGv29=gtK}n~WLrU~c~JA?nnbl~hZ<~BMsL_ANfE4@Dh*XySqDjQ zOySQHb8|4aMQ0#<>Wm*|l(o26PudjenT~wmvb}wMoCMc&qq80Q3tjo}BznK5R)2Lq z!=bKja*GFZ15sYm!1J02x~b~(fGH}}M`ruHDlMoEc%oXfB3YosDZ&k(e>hD3Ty|yg zi#dn6(0*ZY@_wW}g{ee__l@LrNu+dgC8UjAU>2D|9PzOE#rQYjK}IZ^O+0a)=ZxU8 zgvu}mVU1{a)f9-FZ%)Rg{(XBALFuN*rR^5R7sLV3ynRCyy+x5FxTY5-Bs4xgIi|25 zlTx$E8Q&w;fNx?Vd~QT1-KP55Zl!$Atc)cX#>j4;j9-?E2g@wBe=)0H_|>%f1)*`h z(pNOxq(x?=;X64+XtS7@4nC5l(^CJ>F62*bEYq)^VZ%Y27E38V53L$2IvQ7 z-G*n$b_W~?_Aa`TMrV&D>J{V1kYu%{D{iUw~${e6C4pN)ymXRw&_D=pqdbF>xdfMHz=nLPWMcq=@xsLMnu<&GG zxxF(-KWaibGhv85OYfp+&FHq^i;RpaYIS|2!y}vBV3du0L~4Fk@goOfVq%)5{UP1r z>+rdH5%2nVxA%a{2mJvKMu~l&)gKt~hWh}$SIsat;?nz29_Fx2kw}3My71epEFy1r%>DsbP@*!5iv%%Kpoo8GsM?E zzSf$3o9`q2z?RlD!}bm9Szb_QnO(pxjw?f>ZeehuLj^nuqXQ7O6oR>pJt+I|SJN;7 zT8BkFlIC@&iVqQ?nzAOU-&b`=8pNp~QnqD=J&-(<@Etn-5febjHv~8`ET2_1(Y9%@ zHF6g(8LzB1FtiuThI6evNP2d1)b`7Tahl^xA**1G|}u$LYv_0_!iRve~2`XXPH8)*I=-c!^O5(g7R${P4vR8pJz{i2?9 zG2F@2;~{=XhZx$^{O0&z$m3u)BEHuKc!u}2ELF@_=)BaM&D)oekHLY@c~hz1n>?;! znD_~^$nz?aqP(IeMJ;7HKG|%GiHW1~1G3s)`umw{5u%B2H)cH{27J^gN50DWqMah{ z<=o=j4;pCjRmP=5PixnJm%E9gEfej|KFGQ(%fC7`b~2VAw=nlpxq2m;?EDCc7>T|? z0JD>f`nIaSyG&e%ySqh1obD9lTW}@Wya){qPLzrhv%r|g$H}hUfJwLUxgC1G)VbI1 zCewE#hIzgHoUqp7hqv`+yDO9GCxyhjB9kuW_$sufUUgN-_SJK~n%ehv@boc^mNp+< zZypk7){s`R@W`yHI|4j*&W;uc8W9=YIAfpX(S+(u!1~`*_rkzqy;lD0mM22zB%-~{ z;&s8Kv8Dc~bM>+hF;f+EzW&D*U*s!Fq6A+}&yHUxGU`4b5b}Q3=GCUp zK@7fA4Dzdt>dhNg;YlM0=Ou4f7RNmucyT+#&Z@UEyIx5}R&&1w`OYZQ z@UyHxa^BrKEuQ6*vaOyP)K`6%lVAKbA(5=L3!^ShZ?(ubqwOdqfSEH=r1`|Qy+M+K z*Lw1o46rhkq=nY1hE!!3ncY)Q^_}7A6V8G&idwwnqw#FNUOeZs7?frsk&do113T~P zZZC-Wxx@B!=NCLvzO})~Y{H+&F$9GyW2I#@UZ0q}`DvrdH?;D=-!dDHs((ZbgFpmM zzD0d;rX?DD{b_u169O@-hKlQ6#?e}@d0d)4=w?f4W%%`3^h*~xX`Jm!Tj^5*6eQgZ5JmD zX4MU)g!!^l>%$`mUSrK#;f7r9;e=7ejYfEh`5RJw`HuM`(8Gw;`KAr}-U1BKJLA(O z-<9-okWpFHhQ79Jrk~=flb&sUBgPAk2#Ut(4g2Io9^uoXgVrla&CUp^Ua^KBs@*)1 zYU=TIG50vsSvfF~?OI(KG#j7Z=GwBDID?L;bP=Rpt=bvUhzpU4`%*bE{eYUMiZW1& zw!z3_5FIh1Pb1tY;-JnF9}{at!V9;7Ky|UghGFtniUZb&5G6XrN|D*-pRQO2R@RYH z9KJ=FX4TSFGf(m+oKr{?NQ@)S)+;_K4ooeI+kLfc&R9`Zv_E}NS1EL&CE0hK`&|2z zH2tUTRXpYG%Guy3xTapa%Z|qwA=@m(WJ;%d5tp z@(VIHegPVTrL)iGBV1cCm%VB0pKHoJP!pIgDT&HGNQcKss<>t&d}M5)79=W`X~AT-PAvU~hXY0C{P zc!Ba-Cm$7m_ABVR3p7i(JLw;|AYx;o5n*WE!CAo$)wVR)9Dur~nAH1w#1F zxpL}o0cmd9QYbQ|i-LiiLKs%aBcv3}SRARb_lS_ol*RC0@6)XL2AucYm$I=SpuMeqfB`AHwQA ze_9UYDnt{%)q5N}D&c0ihi`Tstz~eW&nFg7RsW2ggtSvaisdjg!{~IiqR;Ha$jEY) zBV)MuK-x98D9yOTH0R3;kqzU}#h3Ect@lzj5Al3C5`AU3)c0Z=ZsqSchf##n70qF5J1WVdX_-ySa z&3Gm)ytd)vD-B<CK$>;vKhG_Vk1;i|Nx zP6Rrz< zzjyXs-Wj&*9UC`8WA*L7Q0zH~8ijXx#RXo@2YFszoXvL1B;7gvTSj=vYy3qc6Qn1E z9K}T?`G~MS2SJI3uqQ^f2cona!_&>1;@UmvF4$KoER?y&3v;!>m1Y2g6;UT<^T1^3 zfcrAm>oH&()98nal>?|Yqw>N7on4RxiXsEQ+j8tTZ&M?@A(|n<2u%~%o zO#|=+=uh)d+PW*=cIsXhiIaTBhq{!*exZkgv$vupq()EOHNO-z2dK=JGKJ5`9#22wJd&)xFo{KkEHqcruVz2Rgs;eBh~Uo~o<(Nx{frIRrAMX0CW zhJUBNv#wEbBSvpZlzGcvgK=*AXK)+O_?%quyC35!*#>++6zYzjJ!;oqxAg1Tl4noN z!Y}PEX&&VO>HkulE;4;qe$Se}sN8yz{|At|-mqBf>KGuOmPkF*x@DH*w_j$Z|7g6-c4C#c~C zv^saC*uTnA>QK>JbFdL7E-cZ!FRM$U3weTU2D9{_p~W7P9VbDm=oNE@HI`PKg!QMf zQMO?WrE~!THa#41BAQxtQG7CQj`5kQ9B+hd%94?Hnx|zzkNj{^x60cUbXVU`HLI+m z1^z?ZG_qRF?cw}8PNd9T<`z^U(#O7K4)vb=4(-32b!Y2;)Z(_=f>-9&upSoTSjpav`o?<6yLt6}_EuiEiG9xE=j)%VT=%7x zkM#Ho(b@PK3%$u3_64EFAuT@h<4m<3b`g|d7YuIvav=RIGIMkd^Y_=+fzHvkH5*QM zIgr0-hi}tr8z!3S$el#W=@a~(o}dMoi4`&Fl1NWaoYV$j@YRrwu;6+97vCp60z*28 zMsLJ_;qM(YaDqBKwpX7L>{kSyY?rCVp>FGQ)!RpfZM@9n3Bd&VCipxDvC)yNU{3f) z!Scr2xfVr#iAVTv9l=wp)FPMezm&|G1UiWX#U|ooXvxX12el+52Z7?NGv z&%#}G`O=D^P0m|WIShy3PIHd*yS%N0w;uHNcT%XZlnfjX8QlglE?H~0nv;{#z2W-rE73bKg+d3_R|e< zUROiF@99ZtL#*Gk6YXUW_tY@7Pa-}0pZRVv-k;GJ*2KWq^jZheGN}l&`ukLn)OJz= z@}-f-lw{@%GIa6#gz*$WU~e8KeLU$|3@12WOd(q0AU5YkO#eVz8vtf$Dc7J3*8Piw z|3Ll`A~*vzob*zr8uxJpb0U_}{nnM|{j3_DArm=kU9 zhq!8u6b1YTz8Ds}zs%jk!~7RC8TtUs0;r=@5S66bIsInW;EcbmL_ZI*D*qRRN|_T0 zglEfstrgvNrr^s57p}jnrYjISp!W$)$Cn>w^6<^s+{qNs^t(%}GLoXKE(*(D;^yuCq1St6#b!DY)C#)%M||YHUdV0~jay+$`UGh)xm{ zyRV2;@LRg$ZrQAJ_`P8xO!~X+UqP73;l1&@%4QE4WA*ZUt3bl_%_V{P;0&X4qV37cmK62?QKkkM%yLuNEDKWC|@7VtRr0CV|FRcXo7BGr{0&= zWbOp1)7~a}N?x4U)%*Kip1Jx3W|Ox^Wxo#_4M z0;y7W5}`Ac_`KQQQ!2)FAHQrG6n6z#^}e}6$qQk+&-6v+VTw7!ZA5-aGU27ML4yh} zvw!|=nfWAowdkwMS10(tBHdfkI$fWH;X>Rp%!?2T%oh?}K;rJdOi8)oGBw>EDYe4Y zgi_t+N7oTNw(4Zs&?k)G^)zz@zT&&enNRNs;JO61opW)Bm@X!M$5xz=b_v!P4wvfN z-uw#jp!R_hdHrVd?~_QfS|)X=m7-u6_js^lD0F#@hIPu}V@V!oe(&boU()V~crs9GPrgPvIb1~x_D5b$0L1t8$5kEIE8m2vU~$qfDiPm==!Rwv@Z zE==*QA2>s8;EvMGBBu^fX_JGw$nwML;AK610+t}3w~+Y(7{uJE3!wqo_0D9%b0G@S z>pZzz*->7Y3Jl6Y`Oz{sJZ<<;s=r_Pj|z;BAweNj4=_mJ#2^!P$Ld&u8;ikk!inDL z(aVMiZcNV-DZ2h=qJPb& z(tzRjnJ~*Il1!DnBP)BDfK9+hq&GYtA`}~4M|1#=!>mZ@?*b!8;bqu~I4qUiIWjI} z;|h}Z>cwzzPC@S=3IXd}7)l10#wW7)#OPxH#ZLz5KBioya06ioDHBfqk7zdiZANi( zRB2^!So0$Mdvsk$ZlnsNgo2arqAn z2$tca`Ivs%vtGZsbn)eB#QKOHV4w-<#VoVbRhzK={$KuqCq2JpHJ17ZUJNufQJh$A<8fwe?-Cyzt(2D+hrsK@s zD184vKOl^tZ*X$p`3ImT&VNmH+k({6yC{NUzCyAIuv6iJ&=|56 z9Q*b-7lfD~nLt7pS*A9NYhPx%U^-ag890t&<$j$R4i?5R71TSz5^)L%#YV*k24&*P zHP0@kz!FtISiT`@ghr_V+G8gHY5Dl!NTgFATp*N|y^xl0Ac3qPE;i3c^_-=)(#DSmK~OZedE#;1p>$6QW#gARTX(S0Hu(B14HNuLo!ww;@a9 zLZ-1-z>Dk-x0-_cxPcX*RzT-oY+F-Y78YzSmNbNI5tafzoPdVFDK`+ofMEJKDRu-_ z6nd1C1xdq|hymds0PbKCm1HrTG%v0$Ed;9#h=!$5tR0_w9v&mhrKBCg1z6{rgCi0} z`H4Pty$t$EgdmU$!3qpPX$rHr$fBXa%Y|(CK-Yc(;BXa)>z)@E4p%Ez%0?(iF+8?^ zwt#jU9^a49&OOr#p=;9oeGKzQ4~1o2Cy^9jqMD$Z&#mM}?)oz%&y7b<-G=|lE~*_U zQ*-mZJBXzx#G~g9x2T|Gpc%eVdD57FOb6j@%zX=jCE|d$&0+?QAWPM ze1G&;TG?p0P0XE;x&4n9h{>tz&8}tMY55J>Q8PTsLow(Qp0_i`TSUg?j1^4hwKnHWw#)DO{nO$d`9EvAOzF%L zseICxgt@dY48ds)TbPw~gh|PG>mA^z{QL^))VE>%I4+ewcKk zUQq!btSaepv6PzjGiz4pvV@(JYLwE(z-{7>=JvxfJ!_T4?X<( zvwVd_1fJ74!#BgsCllyJC>8d2T_IH|9!`zpl_HdfM$9XD3OV0wY}1Wj_pW}bM!ye{ zOT+Ti>amh}X^uV7rGgY;)J>Xicxh9@B&1G-ik;%QKw1Q-+sEb&+09E6vaz^cltEM9 z{t$x)SdjUL$C1DuJ9&q^+xPB%3I9eqk_Lw>UB|~_{<6Ud-G$nUXea@_e-VhCgF#}lxx`Pr zQM6c!kX~gcFdZ0*Cyw06uqEW8UxjNZ$}>zV#s#{FAtDO3dMLFdW3-`xJi)?d~=t%?Sx@eGfZKdM#ozy z%x<0kZ?}HU2vf|?b%!y1_Nz-;m^AskjBB<4yJ`kNT|Ha&NKuV%4U2 zhaB3Z)UE^;njkEs+oS(LuPAoFjolu1utUS2>gpiW@uFer>CaSK$e0b^E z7r$%I<=0t-6Un{yi*j=I#gFiAUiJJM!p)KJe;DYEODRdzG%;6NU5MP*u0S-k@3PI? zS}t6YocXw%UzKIK+{^nxu^3PKs9-r%y$m*2nlMql!(GVFkBmx)c=1B?8MTmotJAc~ z#fUdh0A2u8TW?p!1#D)CB~o&x#ylfunq(v+q}4#CfOKUGJ%#vRJxp_fHtZK)Ct3iF z#uvYDf>`G#W#KtQ_rJl{oP$GyMF(I2Ke_89UGJ#yATnQe+BPRPE*Y{~MYFG=(CPyT z!}Y{C1L4MtTcm>%T2Y*VwC{ZK;#+-9#Oc zn|DVRLhb9{2l_01_-S`q>TD}Mv-?$tyF*6XoTxMG8)LkxhiTIhYRS*5 zs8J0FEPGmjd+5c+6m{^$`dELUU2bdkfqmgSOjJYMs7e2lYQuvm?#C!NVcPUk^3cfY zh?CN~;s8}x5M#zuYUu?(#q#&BKA)5CW%DGQkEm_-8;xDfv&N6pT9aTGu2WBvd+_m3 z7_rv-yBys7$QA0$P{U93agmU@KYHbLyj`-Z(e)EpI!d~l5%ZHW^>y|tThzWhh2b28 z9$R7lfZ?O{5!i2OR`=tF-LmsUqdV)C4v+7(6?1P#2NEaFR)X_D{djv({yvF4&e)X& z6z4T>H6Fa)pH0eNDCGClw~vQHdd$i3M9WLP7`=(p%Cd(|AIQC#NS#bo{Z!@St7f~i zj;b9~RA7|8j9aDqwY(gEpidzKsf9Sz$l5$C${=ykQ%jJsz=;+y_0a=!jt1AFWD zv=Q5sBEAyu1|4M3AY@V_WwUr*3*OH2;%1kzPgeF$gZ*WLe{9+Y47p6E! z5~$iJU_TY>mC~K^Q{Hp*3jRcG@7})P4#{%VO%hHP_vl=d6Qk{DCTpXWCK9%K1B|qq znQ93WdCg+XuPYJS&XWj3*X6&lu=}!KVxGBOGlEU4>qD%%@p|Hpv&oj}nUg`Yv9~9s zcm)xJ)|+#%^dOM`^B7uHwNb3LG`g~zMwlvk^~IOvujfQ^Q%MKSQr zH4=QLc*XW36J?LEJ$D%zq3V#Raa6(hO|p_AgPW&l_RxOGT$~88S7PzcUy)CJG741D zyE-k!6~}^us_SD*Ibp7Lh64}TJfpFHa%QIlokrt}E|qb;yE7b%S#oDQR3FtdcCK7H zbfzhKoa|>>SzDV~?->n0Yi^|@{p2$?o`02BA{yyhr>(5A&Ak_uc<^bj-|1S=yCG(4 zxbSs(ZUd*S!VaGmN$DzV9BTVO^_6wHmIOgT?puR^ZmN^#+fjZPUl|X-6~g5(B3>Wi zpV)3MdKy}Q0((p29URK-9b-8(43ob8DoGK*AP&<)Y$8%3Vbq z5<$t1;>PYI=u5-t5@!kO6)$9%I3u8G?JE$I9G9GwqX8?B(?C`;69I`d>me}+S17?H zDop-?822Ey9phF%hfkdF!sDqkPv?0`YIVhQYL+KVcIqG-g1^3E>w zw2$Zm1^J+c7#CPGtV%%xk{Sy~TE&qVjbH@8URh2KGH&S~WC}i9v;MZlW}seKY(|Kf zCMJ41u3kGOLysn|LK)-_pb=)`^F3=jz%m$P(^v$SHR+F>$p~&mOX<4#Ej-`kKFo|e zLZhT8*)Vd5;l@Dq0qV{Kz(ayA>%_R8e{FjIzlDzCzmoRTzmj%tq>0gm_g@2w{67Oq z(z#jRZDJTd#_v4&pZ(-N7nUY6J}2e>lePb2KjF;Ys@j-8{Qbqv_=NBBJ+%DyhIJLS z%747g`+b*nqQQRvd(7>an@aIon;S{VLmk#jAyB$+-S*g`$ND5;4o+2?qTbg(Ux~fd zUo_I34-qa{#r-&BdmM2U!CU({NAK_>rL@uBnyF5|7>Z$@6UQR_lC+jcz4Z?Kt;S42 zK}-Mb@bnRUcjcL~U z7r~hhmc*0B_o5E%FFrWLoG2}crLpf z)FA~{zRam(bz*#0*aMR60pn2|;Q!#d0c#vsYYHpNyhOSZuxh+?JAdMR#S&rOsnl+% zI0i2b74e;9S?eUk#nqP^g`5=*^RnPd_@kbmvWm&httHZKrZ83ZfLKD<{dyRrK6)bp z=M%-+qvSf3#bnW6+V4RFHD6&5Bfx@`W~Jv`uEtT}7ND)w;N0(BeF9u1CHPTr{GL{*)^L@guqz&iSZjModm2S= zh^w{+1p|_QJtdgv1Jo3bpaip@L7u&VB52UL!RYpaFMY^3m_F1Va{-2K0qpt)bvyZ$ zRPL0Q@qeoik|n*-4galuPY#1=Z5RGMUt`qoHUE@gdY-U=zvj-3-CLgQf9B4~jko`$ zJ^00Ld$aZZKgxIhf6Dg)9unR8VktMVX`!Y6OIsjvVf_E6Er|XPa~}Kw{JR>`@BRP5 ztld>3G7M92&o_#GyDpapoT=k#gF`anJ7Mf~0c>bxp{ekCT{&GwO1a06xh+}Drlp=w z+`u=lU?n>TK1mfz%1HLc5jv$!$3(HFwYThtc20P*0KSX*Q3(3Gy&q*{zCT4&jNn_x z$n`bkaTgW5tv$Q}wz;IwG4!ZU*_eNtWqK=44DLMoF2XE$YKHA~V|B}C7#06B-JRVu zaJLzS)P|HS&HDg4CIb!ULBv{eq0cJ~Ru`Y5P%1`q7z~pOy#f8{aZIy_Y2~*Xn(GcH z|BzyHM!Wgb2QuBeot8_*%st)wxHk6z1~TiLxO#m(w?Fuy-v=S7*H`TZcHr~%}JM3o`q z_(G}`E5quF`A8(cr;(3ORUBKaPK|M@b}12 zxaquI4oJ24R~xDD@$sHEK#TVKep{Pdj?oB6l!UF0F^y88X%0T@I3VFbrp*^HfShe^ zObp#GpFdp#1?BjPSdAh~2hgc**@5o8i@3>Hs#M3G@j0$n%5v!vzUUweUpdM$fg(OzK+~VScp;qHX(3rv${lIFM9{|>Nc>Us-Vx+{s2;N)p8?*9xeQc zvdBP{YZBZB7JRYpF7)2esharNzdswTI)}_Fs8XKS6!wjtv7BYlYh@7V9o+PG)lHQm z?Ol~|qVVQ5A>(@zHaTj?Cqvm*E}m+-r6@!qCeT#M65X4bXNA7ME*>x{>^JB-!-O|= z&K`q5IB*VOloP=i7Q*Az$!-HHb<`~>N8>z?iMZ)xAGk&On#876b;NFt- z8|#zo;B5*?x^5&oy?CwuPzC@D{W~jevccR_p%bOqFWJ6=#`GD2Ba%9fKh+BpMu*Vb zuN;TQUO(?IW7p}&n2UlWlb(L0bk^w2v0L-Ov#`sMamL9V-)nps<$b|YwH|XP zo1sklgXmcLoMGf&V>xB&A4J<*dyt4Lj2-OXdrZakdZ1M&ZYE|RoWCRL-r#D6W2|P> zKmJZ8TN*S7g?Gnw9^b=!$-~!k``|6i*q9d?m=;86i^!0C3#Dab)5g~Ob%L-TnwrEAaXRS+Z%+I>nHM?xu|rApl!A~ece%XHr1 z{Qh&&?}vIU^}6Gl#!FDa^n{5VL53~hMgt63`e^(@tl)nvky&PXq`FKnbd(OG37 z^C!nj0aMnutt~a4Nn>?_+nC7QPfJcz;k~82K1nE4>WpiC2{K%f!c*TwX>WG{d!Wg4A{F%gi4&`S3_`^ z*3Yu?H=12ij1Q`9FKy`_s#9cBOEf#E4$I=XxCTeKw>K)9tRG`ArcT|-bYA-1mX1;0 z{zLN|?14Q)2X88MnDCO4F1pkS{PGDZRotrv?=ZG4hkcnif%dgJ2FGFAos}!K(lk0d z{FUxiLT#5y74z51V4WlxL%(5c zW;%X=%?hI)8Kga6`6+voM_9Fid$A6wNWW-ef}mhYywJDme8uvDZC)|sjWDAbciu_x z?15X=*jU560k}?M%{G2P6@>3P_v5ctt@W6{XS^T9O-O48N?qWm;_u_r+_)eSs)1gn z#f{RZhpdhTOdbr>SQ&alFAs$-Y0jduYxM0{njngli~JWc8ppI=*HHokX3r!9)F0jk z=8nrB-`leBO3AacMWoWwI3i&5JBwB=3=cHVJeJ z8b%>gMEbz2aKyJBw%C>2N-IwMj##h>MLFhN{VB`h-BZ(9#X@yTcd7QoM4@p(FO&2N zh2_mO28M_GgxZJS>Y%W|&EQ>HD6>4BKi*v%h#iR(G*2-hJ5K(ji#~X~$bGjVNih*$ zPmuj-+S;0D|L3!$#Ov$Ma8D98v|RMBYR#b*{-aARkD;guLzKC&GbTeq=ABge+k@(J zUG7g`az2<#IdwXeH`Kb;PyQA{X%sh*|Gt?F5Gr+jx=4e?FByoPVz~R^bK@K@)oo>^ zy8==6UgfwXP2jO7|L0>ncRT)0m=+B3u*<9elCF5iI`vJxP2|oGr>N(HPH4M^u-jeT ztM+0E?ZxMqQGW{+6Ioq;ar`7|JZM7TD0EXjY9{!~qHa9=i>>pvJ@35hK12K5+r=6P zZI!Ub6ShpFqiA1abfu5YLQ@076R#gG1rg`&a*1@=N2Iqqn1RclLl?RYOLW(W1~bD% z{FKmO9*NSs9yyN>AJ=&~Im@0^mXt4~**M!5N<*U7s|7vREzFY(&5WD;>(-i%Ej6c0 z6>JtVUEjFN&oLjC=>Gw1CW0m|&Hn(JfPVmV(0RAS*%|AC+U8Vc?j>5kyz;cR@%X03 zKY+*i;{`<>D$`%Jcu8gnca}?q8%AFZ>K|rQ3uwf<*nP}@^L&!gXlkj@ z;WxEGOIM=fZvF}B?Y{2SST(g2p?`IKVp;Wsn(ee@h&-)p+UTl*SahB(qj~L@Cz(CK zuN3Un%FOpuY5ZTsPV(d!I=lrgM*CXUj?RBXrO!lLx$@c;wQX!+#!V1UJ-#i%jQSnz zhTD}iY+El}p($@j?Q{M0Az$GCV(zWOqH4dt(LoxKkdO}Pl4lgvgvu}{2l7!T2ld5h3g*&XM}^g z4e_`}MK1Qrvr=7M?KSx=NPlkj@5~lt=M=e9)XVcr7zw(6IC@pu9VcDQv2vwd{NW7i zbJdayuVx1}kB%bqHtpxR@MU)Q!ZvM}uEi-b6I(bhntM>za~QR;>gR9=_Nf!ye8myM zyUfsEDjw8#)1@atL^(jmBb?=EWdP^3(v1&_Flb!f9f-)xYT;T z%piD={1=GZ*p&L?_YcR67Xu57j9Z$#M9NP4tG}VgdsB@DZ{96&ljbpnI1m#172>q% zVAZVc8~fg$luY&rko_ZQ&^noZgsQV#eC|97-M%W%N{Pw1fR zPaJ_&cwpvV5&pfde}A4_j98??{sJ+(7;VYB59_IF8 zmZkv3dr6|b7kSZmvImJB(hypCJdZ9$({FihaQ1?4vWdN}<;nm$;T4mwCbI5qfbCSi zA3fWBQlF30iX1P3`eSTLP8ZDXjU|%Bdu5`V_|bC(v+CeTRvj{nkP?Bv@_f9Dpb5XA z?QwcRO->&X81=Zac~s4%dPoH&EL462O)f;RR0=F>aTV>lNF-(1BBZ4;TP-f#NH--Ks&CfFI1jLC>yTmS%d>+@53TYA% zcv?~xlZCvM8y}CduiIp`aR@K8!(~2@un=Kiuc5w;g1o^R`6{Q@fniM|zE9I2{PmLU zjRtiO<`#Z>BL?S2msIw5fGOqu2MU_T2*ok|(@(#JG*`NP_i2iww05xil3qj*8Jz?F zElU2ngPfK9Jq$Lg#%yv|7O;w$o@#KkalIyb{aZ-V84lIHyTon8THZ7)D+2p zpbR#u`YWA+rdk_D47-LDIoDUzhg;5T{ zg6RRm1baG-08I!Lxa;@GsZ)r~g3Y1eUMRT=DtolNyi(st^j1!NXXKNX??i1HZmP|4 zw{F_jmiZCi#^edZOrE-HZA$MpxUPVPVV2S={;nHNiX{oJb_#K>=v}XBz zjAuh(&!TOMyRLgjUcqXq5n1fiP&}x((oMc3v(~7~ZaTE0W$o2<;~7495)mEAX)pKk zT&*_g*8eE%*Q_MHkzf#1oHBoPJMX&_WrN<=h~POjr$Ttlk834sWW%)(Ql}7Hb(FXt zw@elE4ZhxH)l&jD)ba+3qKPEY2dPmB1a%U0PD`sTskYIAX~+33pMH(%cxiMT7ln+h z4JXHpTbS*iCNf&MaZU5jcD%eaan%v!=hzF-7wMHbKMfN`+;2?6iX?n=uO&r)^elnO z$n2=I4w6{sEe}TPGlw~SDui0(V|;fzW1MH3ky%t@fm=*(j21s`z(nWEKdPByZ0 zDyL}sy8MwrWUjZMH+2tIEIZ(~H(4uljC6!xn}+!6_+I0BZnV6M1HhE z9M#P^`J;~4UOjx*+P!1*L`8L1w5QfPwc+KFOuAC5#|zh|UF)m)&0jXE4f{fdD%~t5 z1yfZR?1s;5L(?0I!$zbDHj;`}2xiAbLHJQatDD%jw5HZn{S99<225>h?+p2-`#r2S zLNS0&y`^Tv;vk>1ql4IWU1{FktgonMbI1nD;5VNwgE<~O+c8berQJenvfD!XG@)Kz zQtQUckQ6ijUOa8W)TC+^mA$OLK;RBFc~>IB2}y^%JdfHsd4i4Sa&~>g`==K#@{~vK z-xl(8oV34J#Z5iWH#e0wHZXE4$u21<&WKN4i`t6nqqTB(qW}{>T9%%ya@cp(Gd8wQ zYH69_)6nRU=HqrRuMUe8@{z3Th}cNE4Y-Z2ls{=NR>Hi?K)gpK{A!n*7s_~MYx{)y zW&4h6o`1E?C#yNf@U>$x;fnSvxqFLb=r|^NCe_sVjf`phaj@>l(xZ%?+Sk%{*`YB> z#2sn`Zsp-5AhwCKpua#o?#0(_8hj<(@l}UTTYdp~f*cOZLF(@W$3R}egb8n%GbnZ1 z#Pnu`A`2yg`)+2IRilEAd&pg?x0gDjEtR?PJ+pB0=2tc14};@7xoW})0+Z4(q2y^ zu_?5YAUO|K7*a^Qo${q!$yBQP<;%NCWc=mSga-$DX+PmeZ!P)6cCOx}v%o&naMbsg_ zw10sz4bC`5=!kEdKKQx+FsNz>e;*0PHWk|2AC?d(d6O(#(xcWx)v{=@5|Sy~Ij_Tg zqNJuy6IX5LP3MTdUzte0v5G_7wP;d3Hdiv~65k)MB=^qUV<#}CH>D%OlXNL=>!4z> z^)Hb39xw^zXf%JYmJWE4064E?x=mDFhEsfJqBP*O&>4w$9=Vv`E1^)x&#W2~Kwve% zZ-wan%M;OKN9w9V6fpbf9Jbip1u1JGZLj-<$$vRfOlT5wbp`LNT727Unpa}z{BU?% z+9`U@#@Odbeb-WSg7fP!nLxy7mY~%jbZ_6bzVgy_zP9L78VuI-K`_S(xXsOni|(=f zWM$yP%}U)?R~X(GP85sGy?HeK)0ZCRsvfG%F<@QOmgew&yNtxhmn80G8&!K`Nw z=UqFPqd)2wR$;kHw83 z|M-?x%Lo7-s?Iv)?b8ys8boOboNf!1TtZq_LwFeMTc2`ozE|VRJZFt4(;Oey(n#8? zRng%)w6syGOwFP2AF}Nsv}>S(N6eDgbIZ%kS|p(#IvbCO8mjTHmy|E6aZ5t36MTbQ zYec`G?*mGSo^v(`)HJM+S#{~{LT~7Z{Vl^;3Tdk863(f4Obek}(R~m|8mb zCbJPyq4Hvv^R1K+_C`1Nit$Jq(Q*6>boT0wscErAWxphwGx{fsy|cyuDg{@4?rB*q zeE=8lS!r=&bEfacs%*o-ekm1qQvT*|-{Z@z#$@Ar;bE3MruAacnCM+9>luCn3Y{M> zhRF`JmTE*Y@1_zTats`=|KuAIF}KcvSycb7N>mOm1QYU8=tw8pnE~bfJ$m>)pum*> zPszZCAymo#nGB@*lJK9&K=l8a47|r0+oS&VcWu9e*nj*0YWwx9eD=K!CL%25@UG#Q z;%we=?<*R}NT~TvYnZ?B>@=;Sz7IH4bP1{$pOhD~$TTseCgDW7y!FDMv6D4WEW(bv zGhLt-6OA5*DFuz{=9kK2bVupt!7bub6)c115gsi;rv4i2#b1zy zZJ>@kFSQLH^9HRhs@L=1BF-0vR1B4~b8Tz-E#bzhed0Jfj~2ID53ktY@l*=IP{_Ck z*DxGPe6CE_f9EFk=|O|hcqZ)4={<@E@*O?i?+8U7h)qLQB6JjwDqgFr+2>^Q49@Q5 zqqen0(1Gmsv<)iE4~K=c0x?|zp6m?$235a0Gu;+PJ#mDl?d(0429c+bvk5l;` z+0ec@KhtKNzrZvv+UBozwb=Y3e-g2oXRIWc72{Y>MQ;5#cQ1I0XjR6>l8sW??4wBq zXgbO%!WaWlR&SGr9RbImfetVra;?49zZ>AR6Zc0fcbC^;Hj}x*#*?G z1~q*}UJZyieCR)Lw><`qtP&fQcWb+Pa>b0#yDqqxPca$YhYB7Lr-St^altxZ{gUl5 zFiW}yi!KLX&N^-#ATIfOzIYBH$*k{M%NFGVE(bt21*m=H!NOLi2E@UbJ25zf5P@iH z-`)k^eI>4ZAdBVu5r3)d*8r^do#kEp-Pa%uS`_{a7m!cC0*UgP6xPe_keGt70%Qz2 zVeu|Ccj^ZeJo9A;Kg~t@0VKbP1HAOQHRDBS^8a8a@3sP{P)reoTF1cdxa>lh2aV!?mloQf6O`@HZlF&!Y2c94$WvN9z*tS2*TQ=uM z03lp7(k#&!edO+ZA}V zg)i>~9^gc=MF#9#)W)D-kFVvfECF4C0xjEU(l2iUC|D@*u<-rIc>6G0CGCd#Yi@P7 zdpybMk@ME#TvFDQJPWzgo|X%xwD)G@Q_s`h>#AF>As^uTf^>!-nV8nAnR3P;rUj!k zWACV_Td{mrlqD`bzJu8IUY=-X=a=oW9q69Hgny4cTScXkRJ(ga-TIh@BD39IbJiv9 zvOK&cnYw)K9+W*anP0*u;YX}Wc%d2*(FL6Lj@*vrFVI}(z3wjzj;}es-61C?=B7z0 zZ<*xfO~!TRJBj;^=SP3Dvj#OJwFcrzAI%sS7dJ`OX-H_iy7=MAbf*1oH4m|!1(nCjKbs7>85ygpVnPw~b+WGr| zr}lsymjocA?ytvmZJ^8izquob1sD%(^rvr=xCom9$27h!#Z-RkVI&ada?IgZ0LHBR zfb)x_|62c(Jyy#!*^5mk0zx&tUa-e$V*6L}Llfff(r#{e$RhT_#?OMihLDm&uO{tnyx z%`VLf4M(IpR`O1ooN(wRWynU()I#D*)FOrx(_35Qot22{Z2YaaA ztk7@Kn4yR@;c2djZl=I_DPV( z9Rm>e_sOx}neH^3`||`@D_X_W4G5@Xpt0OHOe{iF7~E-}Sa?%@75012P(=$X(x4*Y ztN9$oK;4ILm{|KGd^;iFvlhj^KOFl(T%Yn=-1~$@cYI>wEJL&Z^|v))s7=)|e2R$_`owXjY~2C1aw;883z zS{TqZg^&*ge+y@1J_UZ1dTOuff1sL);=cL88k){5LBFL)i>I^FxVe~m*P_zz2hBxD zGQR#$Ev&KJxS4_oBT|Y0grfLW*tY_V?Y4#%;Kw=g(NwPpeXxPLA4<$GB8b=259KEV zq5-X0KMn&c;WY4Lu7H&XtkZ6K?hN8QcKReSn2(lD?O!uG{hrO?U;^frU2~ zFpzT`dV-9W`!IlV@H>FDBm^4(8F9nJeAN4UddtyS+AmscSl)Tp5kHRY1SZ$A91GR=(L`~Ttg zW%$qA*I%HDyMK3`dj0>ue>I4WFsNHcMBGBU{nr~P#*zA7uUFqjz8FU&KlL-$K$YRG5aiKarnig^LZCaVNr6oa z3L3^Iv@~B{)sLk9S`e*C03BITig;vIfG{?FPO1^$4X%j*cN}Ap$}J7bbo0oGYpQSO zEe`t6FL}NlzkHRF2t$KeOr9DX#2TJiKV5Y?KbtN5v(51`Z zr&%XRP)#{IFeoMZ1@_n76<2dcm+3K#mjo-tLFUOUWJMKiqoYo@!|(%pIaNpIMVk@L z(^njIqjLQYjM=sUEOgO#SLK~M-{zNf-;BW~2t~q1$z~f@o)?-Mik;NR1t0-Q1%&-t zYYDkie2azt0?I}86L{Q-P%V$3kRxeN=rAL9H_1A5Yx_Xdp1VT-iG-139^t4~9~*V; z+qffBgYc$dU5KFgWX%^tUTKc_Vxz(xAI*h9KVkp!8mZNTI`^zKKan)0`n)y9xXc_^ zF@fm{CRsw+%${UZ=adoZM?2orPtF2vweRRphwPseq}l&g{I*d)%weN8sy|B5CDgD$ zc}OW~kzKD@eGm+%Wz#qBIT8Z`X`~Q>CSM!Hsj3x93K?GE zJH+lbBNrgP#$fCf{9sIDsxw2c{umgU!f_W*v_7NeQv)&B+c>haHg$Pj_G?0+jXF+u zRqU~>(|2`)cV-DBY_6yr&a~#FNzvyqBEaYWH;R*h)``^F_I=ueXAUv?mal zFR=IsrdQk={E{%v9kLzb>G=|pwIO@F#8?|@0Wk;y+aA^(QEtMPBuyQ~JpBrL62 zeiY=uP*qf#OM=Og6QiC~it`)`m@=(4GEFyPr9IuPr$(|P$U0Q6!}cWq7{TeSCjK@y z?h7ueOO6h!SKcV`C$d%=T<{!+{d8T}8O>AiuS4JvqLL?Fv#zPzNkP+I$(AMgG4Keh zHx!KFL76=yZ(!^AqiUIW!YI+l|MC7QW$v%KjMcmLtI|sX-+AioJ$9eDH%l+h+!Sg zlUDiIpOJIAaL*QQ68G&6REok=MlYM3uf>zmRWr`C4~#O8h!1$#6W9o=iFmbiG#7q) zx6&2FJbNYm*eTv`c7(_0S%F$Rm_frXEkcPybdK-$>l=(amMBq2x8LKG!f4RcX)Vd9KDk;_oP#g^tRKwg%aqft>#~ec$a=g)Zx!FZ)K-@9d9^QYzqo{NtcDb{g3DT18U-o4XLmF~H?inuAg zI?>z`?t=)w=5673&YRI)BTtDFHg`I!yc0-$_K*92$*b^FoS$o3=7y?nCEvA@DE1iT z3-3uqH#EH|@@y6uvPk;gmkYO5SvLJ>zE#&p<58j=IrEilZR$mhv~W(~lhZ;H{hr27 zLAo@sP1d2bF6ksvg!K{!yOtBi>gT9#9BDdB%PZ7?(*5oHw;J_==CYEOSU6I#aVT4; zI8I0&rKA_r`4jH5DnxH@r*6rj{R>({f!WL} zPih(qmkkPpWpo;cBRUHE?zhkD-Odp>&lh^EZ$BVNf0n32)JGKwwPGi<_|vp@yed;X zyr+l7$Fy&gyu3n18H^wjF+3G{FMqYDk>@xIpPqkWXF_r)x_*&s&so5uPI9+KEaO0f zOv->j21B)7zXy@Mo0I0JAU>Wo&$FXjXu8!15pH$8r~~3bIblsZuib*<^#{yV5CQsj z;4M|N8DYw_o02b{HhN)^+Ate)<9VvI;EzK(`9(AZspSLGsth>%8ZC0&6gVsL$(4b7 zM&#F|*{QBX!!-%SDW8-Phi!9ZsrA>{SViur=hfA*{9if0D$>0Xouk+w!Nq;zApQ~$ zhiHh2SipZ~rbMZvnm=vLlz3k0tzVa*57oLcxuO25xbxwgkTjoZc+F3bbb zcN)?@M?NT=*@~QwjesmNOvGq(sQ#dLrb}pXGox=_Y1wWVUMrXB-5@tLmDUHp#8D#c zd0l7lfspx7-@it;zy`HbVOxbDn?`CZ1>8f@*4i`t%z?aeNYAc?arh>gfSk9RlExB; zZeCkj?_-K9>#A6s-6j!-bsdJfvybf5@ejLa(5C)N?okLW+t$iUs~J!l zLecxZ`vO7TB2;gv*q$d;fpJJh4RzWZ z5Tq`(&w_Y_w!))&M?J5FwsZpn=HI04@S9p<93gdzj=1#@A8;azeMY&P8e;dTkDY(L zVxJRzWk6)!kb5G_&mg*q!_VO@9Spd9^oa(ORT3sm(0P(q3tW=0QmfK;d9A#6T5QK5 zcc>#DGPfk8mgj(vHf7KmX)el=Nb9uN%>`O?{u%rcc!5aF%Rdal7tV+AE*e5F!9&iK z2Mif`miuow;WJJFXSR8WJkgATFeOsDB86T((NEfTHP;;4w_YOJ?k>l2bm3`v{=ICS z9JbNl!9dSzXbd#KKawSKn~etbEr=;{SLe66ne^w^Xpbx?wOrM0`2TLz6rf6%YM=ZI zbo3A&nEhXd2mXGu))wD<=tvJt0g8tH)dr+Y|10x#R7k=Bs z`~^x*pE2Ngks9f+xk9`dL%4&b#tx@~Hc%j_Kf6M{5@~w}v8#I19A*22hxIKztIiO$ zL`gAiVR?fK$e7#h5nltCedfYfJKv7OSw zb}|}$Mq6v52iq<*EA4%a(EO}h12|`A%|+-~dzVkHGNZOv8A5z($?AQ0asl4Vv2%2y zb2_2Ry5+jxn0FXdf}6kk(XtYtfEFFY6z9l2!7-n6#X$N zj3qq6))uGL5n1R09+2h>Y?zMrs{Xpb={4qw6w*t~kKKfCw~&+43UEslnQ3ZSdKuM5 zzcHh#A3Zd(UwcDv?rg-(h; zz<0dI-=7a)+mHQ-NXt1~IFYZ%4`Y1q^;=dwNzC>B3ysX!72P6yemPmbo+!+k1ik$} zG#x01DDAEIVh|Ys?wxJBi$0VLWsID;!5ePdxFLSi>bvP3Ri5L6e<&HWg?+set&qm! z`)pGWHJlm>?$7I-00;)O7KA~UZtx~~H+*GdtG^R^$65j-Yy$CyN5UgB<$XuOZ;0P_ zr`J<$0)bTddNd{&$;tg^piJZEDN({wWGJ|o4*Bq5{R4IPeGpKPA-KuLW(v%|VPSXZ zqS_=$z5hUdN(j_;2yW`Z7Mzad>*c!dH4Y`eY~kNK^lAbnAih!+HN5MQKma!Xfe^J% z$CYtZz7N0{Yw&PheA7GDRBf?#@l)qf;z{K>;gM;#yRTHG01_a4M)$Zc#?|w3(d&^V zUm2hj#aA|Asfs!P+%FJzW_d-^?lO4sTUHH5U3yBCraJ@cy<&ojGXv`cT(FrU$^PufBD1ACg(z@Ae;nbK4C=5PrpxL0?DI1-92{wwhC`*Zh`bn4!UyP5|$ z@Nog%xn=gLU2h2b=>TxeucQGj!owfXd)7}U0jz(23z$b62qy!hf0W;z&Vzfo2KPtW z0sMMKIPbr(HQ1=NQEk!w;lp*G83M4tB=Pz1eDE*{7x;%L8K8ZX$x)ccZfyzg*f22dBs02mxfhHqgrt@%pjKR_!RTb>Q9y(W1u z^`|agIeEZqPzKRUHvz4k0b>XVN}za0>%#6muZ^P$33`6s2bq6+@IBF*KUP|i0}Rc~ zD}VBxRxcR|a4?PP2bl1KEdZfp)xMU&#;(|F2o8RK)2m_VegQI_rp4v<2D^Jh(jj2NI-H{ndUY z0MDWTEnu89)*i0xz{Gz)%$(={YetZ^7}lsY6|ha)njNrf&cKIN?LhU5+P^@LfkH&3 z-$3qC?A-eU<8>q4&-W`GeW7Lh4`^-)ggBojqYjtwsVdO7s#M{(lPM`$Q3$bRfGnL# zzHEa8?rGsyD?qVow&W(_X!~=B`_ZBx2AZYxg!OW`C0Yi3a!!39RN7uFKjDlbnjp}b zW|)a&+e_9ESamv2iTYZi-Wg4aS_lIM)IUB*1@0;N3U}q3}nc#!%{0pXT(i( zzU}_)GMv!3BxYr07WZAqitdbN^?GQYYN)+{@pJgI$6>ZFd{o@C@qV2c6HWhuJTY>Z zRCPWVN>CF}K@`%q9t;cO828uPX%@g;OJp6ss$ySZ)`}>q(e1j34?>N!vz}osQ4$4R zCXpm-s9G)V;4cYqt$aii+4M?CE}B+NDhRW9VJw>&Zp6#0&2?uJ*yL00hbc`J1-bW*r&&voB4InyqGs~P5|d4Y@EQNZ+g7poBPn5TuJ3ZT3DRyAqcf%{ z$2C&moJY-A7GB?qs<&oTw=~sE9a22l?1kPy=B2+}abi2(MyfAx*flBNeI<-}onXf( z81jtxRG7|kv+h84{&USRhXH%l@Ernwx69yYa&#%rlryTwVq7pR97wBU zlXYyhTyXpdWxth;6|GCfL~~_3a#muv)nRG~h1j7zdW3dkq*3P2I*nhrdnK2VoVCV3 z??NX;Ys8bV`4YL1hLJyu-4jynzj;(+j#8RNK3@}lZ`3$ztRR<^5s(XHwKJUGKlK&aWr)SEdQ3Q9T{{O%H9aqbh4BG6*U0;Lomh1wv+1 zIz^EFQ5H_sT1oPC9GC`q#P*XVfwH*9Y zd1Bkv59rR<6)ZTIiz=Tg(mn@g`(lWyMF!y7_x77EHYqNZRMDIYa?g;OCXwth#E3W= zyy~eRLNitx+n#Y5kv$-s(wLg);Zt3r2*e~JfO=>~52YP&Abvwru0+O2-xYNH5|o#%7XMps5ZKfVt{5Aa-8y)}m0 zZ!Qn!YnI-XRH^9@pe8BVxQ55_;Q(1w@EEe9=}Oh(9>&$u;?oi3zvWX11#7N24k zb#ZWrDt((>+^&-t-wNT2(9?Meo)k7j^}slgw=SJH9|;cLkakU4P;-h>QJo-SW8mKK zT$YdIzt`ZDBrA zal|B|p@uw&QuR5N68n><5=|)8L*!-pZfRyg@bqdT#DGtWv}b_ju8E6EMlc$>8t1{> z02G}amzuEk%I_Zj>G2NP;Zzl0Qb1f4o|12kAu9{ZnjJa1CpwJQ#Q7%T+x-{E;n@@s zj(P$E-RUtLnO1IfFZ^e@yA%P!YuwCN{F>0Jd1H+ZI6I$?z6UEyW>I958ASO>bjEov z%Eru;{iD#LHZkEm$87POM_^gC;gm`HogtJu)|c%?!g49DFZ)A?Rt3e!+?8Y-ZsZ|$ z0bp6X=8C07Qt|FA_m{_KR)P!n!$Knx7uL{n_+P^vU}Cp3+C{J&z@1<+!InXb-g1yGk(AX7<_*FS6_e5y+HxD5`=kB*~}|-AHXr6^v8@6`hTQjrduuOWp$_B8Ktq9P8G=z z+RKI`LH(x;qSid#)E_+7%WQnP8&0I@5H`#Cb(nWi>G%gDJw_YJ4;ZKCu{Isuas~KR zjF`?~18+5~$6!xssv%}cN$pwc^PH*{PX*rg9Xpo@a!;SdTh3*w2@&hWDyK@m0h(fgf9+XdReRwZ@8$q zxAX(e)oe;U&`7BL>q6utBq1#kH~GHdCoH^QOr4u0oofxgYB$1ET$RcR*?GV{lf=A2 zmW}S&VGT$+_`hd~-e{2Cl{Hl?bg_zrDj8ms3oNtdB#|avSu}VfD^M*SJ~mP8Y}A@q zO_*r!TT)}&Bd@An%j^JI&>TK~a_uD7vZT9#D`i_=w<`1$&Sa(k>Txc|wBUdub6m08 z`1biQ?|qT;`tWI;L zz`b|-g~Qs(%HlhW>9r!qvkNX0igxLS{bM~ZWvS;^pTlr?3~a4 z0+k@*i{dl#^T%h%ew0jx73LRwd=eMw=1eYpPaENRfrwN!VrtU0wAo{RUo)vCLl0wk z`AFgOU4m&B+C+ht1s1|u+=b-Kxgc_zHG``#;Zo+qtJo<$BL6rNjX`g%9oql%-+}gU zgB*SnubdgyE~8qyqPPF&D-ck=^?~s|%mOQf#V2u?i2U=h!6HJ*(E2u+qN>V;2(X6BVbKFV>tHL@@XnY0GPb8v{O#fPiJ4IpV(@GtPi+Hx19~@X&1PqX{CFB~6xET58~Hh6DGV8YmTJ-lx3hxP86G~f?pCDd2#6PP z-#2@Sw^sM|@VwiH7(b%s_0RliH+^{p#=15VvjC=NqS;@R{BDjh^((uY85f)of=N!V z7`V_6_fFEJ7j+&Bq9CA@zLjYp=T;=Kk1HG0^f-DWAye6S9@86 zlbLE5Eb$(4X=usgCs}(M4+})(+z$-9%vjjuLXyVsQrD_t<$B-TnqqRACXI9992%*y zbL2W$kRmSA`E^#_!CKOU$rWhx*u4$!oxN)*TkR<78Cg_0YkYaF+BEE4h>k}b-~`X6 z(buBB&12$Rrj!JFl;-(-?-M%$B{#Uta^A%UDBgnl&-A=GUr&vV-#~n@;Q@+FPhY>( zT|TeQjO^YRts?lTsWUfSv*i`vQmI~JN)yX*3gt2)v3Q}B&z{F3)M))%aQAW!&UO%2 zX4n`K3=UAK>!Uae{HY<`^O!uHrA~$D2^$RoRv_ngT>?@SlvHd+wBQnxrhj9^0cc4Vp|jE6hlWIM;^7%UB&(x_9!{6DidH_ z=Omt2o@44OyWYJF3)TQ9HgR)puEIZs8*J)?ncKoN{?P|oS}E;YZ^la|VL)#Z4}C@J z0QzA4l1=__!T5}~`ZdI*LTciGgT~i&jPI6))hyC+(=qhkaD%wE+A(6+*s^I-PS<>Mxii#fuo3Soi&5kFz5FFo zBmc{FTAi1Ois5c0LBB5Lx9g?ci?+($7aXqQ*-6eAxhc+ZH}nVMU`%89rKnYv-j9Mv z@pa;EU;m&p3A4z;tL#QWg@FUJ4o#aUO$c5&vRU4lMh7u!?49YBvV}A=XQOC*Wm&FO zcp;(??zLD`H>!O|GiG3A|6X-FxItu_KZHE3yAA|Pi+*D!3TzFyJ8OFoU#BV4U&G&R ztnj%5xdN7qCJt?$DLX4Ob%Wi4u` zd4vh$8>+s+!Kn0S$o^-1s7}A)O5*tZ<8=0J8$R2R>p?WQ2R6Os(3X8aZwjBiIq(xV zM>UKjZN4;NmVAjT$m zV2EyP8jyUE&~`IWdLQu$mt)cpt#a>$(A5P*`Sj;kcfoiG6tMp)(*7N-;qb@(xcqbT z@wC-}aC2E%un}0dni68+?wo7R-q|-| zV|a>jd28;~g-XuMyqagi5Y;_9uV#o8xv8gnGwB~Wnvvt88J2EM1&2Pu5Njwzk0+$E zM8m^qXIUgPM-d7TW+TuPa1#awb_wC>d*Sctl*gvPlVG33ePYXpqhpmpud3E_lk2Pj6 z&Y7;y_E(x6pZ2RpSK02G>S{i&g;e^|ZQ4(jZ>hP$Gi_-1Q*&AN4q<~Agy)d*CX(l( zhCTId!;bF5A|~FJB&@|Ky~lfq0k?thn5>9~J7Z%_w&x-JaHFOg;z!7!kq9}@Yj%SK zGcYeit>tl$tvebEAenCfjonnW3*tcLocNxJ9$mD&Mx!lUTsF%8MC0JoEs!*>+BL>ASBbVQnTBH`Jz+1Fq4?_JeV3W$G zpbkB+S`aU_h)s`ek6Mxe`)i5Y^H^`g9tHWH*@OBEP~8%Ej#_zll$1zCIy)k>Qi}XX zJX(_wUpgMf|W=QIMs{R*9y2Y0B%TfrHl9I=MZ0_Mq zw7cy@8x*D@Gp-8bI7m`G8N75xMxSk7c~=0Xn4s$|ZcgQJvs0pUaZmnQ(|f4e#52R5 z)5-do>BEhDyqHeOm8sj74m&gFFd-3@FDovCni`Q#`%4t2(6`KO7)*)ECYnvaUe<)s zF-@hR;8Y;GPsEDg7i8JXC@9K09gnbnoP-GfNB zRLOslo(t}0YEWbtuewoo;-QRKSaNrG%H6Ypcan0t^wBy>07e4j-!cB;o3o zf_T*;p?zC7o|dNv>nkR$r?>$wo2g=i5hf^hmvHB5NTj6{PrzsLW$vL1gsH|Z942X- zH0KmPt}zgCQX;ermY;11^NPBY)A}}`vY@pTrghrig15W7@?)Y8MM_?I_MI=u90sTf z*t+l26-Sr|+T#4@_t6&wBGPo9qHjPg+@$w@FQoAKu5qEnTrQUSw?a;^fJxPN6wB!q zl5eXg77CIM*V%)Qgqi5md@sgi#whHp_6YsR*MjJ#Yh+9o>=zBfBqy?5_u%NWAA<~H z(1>1$m1XZLKMhP+*G?{-O2WCasG0UewKL~ki-3w_a?m<8JzsSpdtBdOxJTDujn>LC z$4fUy#Ao=shXCppp!9iXu&&hLX2KGgbtf1#uhzPlwG0ot0BLcO_(=G*oCxy|b!b8h zwdZ!j)oX_tFE!!uiiCzdIJ>#{O5-QkK!j&pbGcqu%z(VZDLizAF-(4o=(R(VGG){@w-V?@7wa!PyPjS_HtH;(p&hS*v0k6XVEL6pAfi8-l;5B27#6{8u9DzlNB7 z-7@b#i%S58m_16rdjY(>{$q$4(6{j4o51|{5VK+rqKrwf<)0Cw9DjlSXX@%t8}dqD z^;^*hZE30c>YV5x#d9x?Lo3yNBGI@kN4QNrYhdc0_OKen1@sYx_>wIgg!3vUTZmF! zr_L*m{*KU$h=yPam0~f6%Us9rQ3_4eqY%?JjGdTN^lDU5Xg-Falszyft1P2&SDiQg zojE9uE-AcU@}*Xad-zS9-a|m}I}g?*azG9RODi)a1fCh{e&4?<3W2A&9Nk2{dCJG< zWh!)0aAa^2(yS2FD4)HWU2l08^(l29Y=}Fa@$G~6k!E>dE3GNUH7(Jj_k!8UM-cZx z2^a8Q#BRu;R5XG7B27X6NZ5)O<~Q*l-c#TO+{K{h#MJc|ls_@ArI+)YExM`BfjWE? zpk`kR-D@Nayt@pvxnAW%S3(Kh*{?HE8QpwLj#N+5NxY|wfUarPt#m>ff%m`~#C_;` zV>v^r?TQvf`8p$u@=jdnD&J=%0=&Ce25VK_O~-qlIbQY)Am%mluvoeN@lX%QZzX=a zR=Fx9sN4`-&TarULU>q2_jwQ!=%CwJP8|?u{=>yR`rhP7bGdQ@*9!wU#GRcQiYK~# z?{uWOBDfLh6>*SG$mBK>iicf%-LYKA%L}Zy?K>dPpL7Z9oG5X?1JPV6%^j*~xKOfqo2gRA7fKrk%V!%%b zfJn!3cAZ5RCV**gJ0_50`hzE6rzI{}tHu)7uU<*;2JVvJa_UcUuB(CvR%yHGgwN?( z>^c>c?k)R-;jK)X0#na++Y zTG4nP^#JeL-&_xV_kh#i-u(y^2e6)Kc`uH4mG1%=xD!AbrI^|Uyu0$?I_}EAbOE6E z1-LREaCCV99)6g3@+hYrV2!T;Y|>%6oO;H4yl|xPFks+0vBl~~h?JYp`@6}+Z@xdg zN2NwS5j4EL^9$%i;1oonP&E^IX!UnjWburm(~W6S1_Zcm5n!pRTmQ#B@_(J|Cm)l- zMKQuL6U_P!bW(J9v7Ow50+avi4*9=5)gKr6s7fSo%>YRC*WSYU zRb2207NY73KlYAu>ST2XHSK&B$vU!Z)+;DrijT+gr^`>mFkqVpk!-Gdy8fur^2%24 z@U8iVI5V#nGE~v7lVeLMVa=2XT;4j&t$*&>r=$45F2;L$b6Hx=Fj9w3f=et zqTz;!07jYZ9(j4f5;rC1=3$hG{H$nFM#oDXUaUFmQ&pZ5`-&dZPrHhpGnPf!0haIc z9haBQ*K&v2L?y+Vm8g6Lw6ssq;%e6WTn4p!v{cE+8}vS#*hqr89{ZE-A@=jm!C|=A zY=H@ob-@-vMdympF9vXqxPwrm^Kl-*U@*e+JW@jMN3EgSR73C(W!yPLHKS(W@n#7k z|8uM&K2oD%cx%kE{qX3kZ*c>Y1HoDWk4{A0$qWb5ov_EPg>wV&v9*eAHJZ1EaU7j5 zH#(v(pgN@U96)rCK|C1|!%fZz|KLeNxbG72UM+tlS#c}Q-E0t?I)VjMSG+#9S+QcO z@J^*f4Bo)kP0ezABJKP9yZ2X5TSw|$us2e{l<-$ccP`~Bs@LmD0^s}!m*=X6x6bX2 zF^M6?0czC>Ru?bGK3MKqD_9w6ye$dVOWZ=Es~*OChF1OiGhNztinoqz-t`c1R`bN` znjwgqq>k9vs*7>r1D`N@{O~zS+<@eYdN0zE08kMft>)Off*yWac^+7(^T$U-Ob6i* zD(l$GZlDn6s~REQv>#8&foT#W+T+RDLw5ERh>J2 zu(veZb^e`qZvu1UUnRK5bhlq|=dU8Is|DNuUtRfD{VH$m!X_XW0(t$kuxSCR-F%^u zp>(34`DCprD#GP0b4fe9eviV&@%^`oYm=|8rC7 zkoTPECUvgJ5VCL%iTBvUgx9FvN?oR9#t@rsw;E^Hh~}r-X}N|Ze0XfuGtASt?u`FJ zpkN7Z6+d8IjH_WdgI`@Ofy-wE>>eP-2|raBNK|bXR6arz6lZX{d^38hZ-j60-FR;} zy#Qg8%zzTzqDLF|?TAFiWO1Rs9xM!x)Z%Q@IzlNG`yEL}taQPj2A0K+yFf}Nna$xi z@54sDa|=+QLn$6&>q`Bb_8ziMskQz!rxMyd7NwDTu1%B{N=8Yt1QW>IuU9* zPyLU}J?PmkG?@Yd#6Y8nc+Q-p!3NfONc15fV^N2wTRfcfGHl8~71(HaZoR-H49wn@ zl?a=4kG;en!=bCq@nqYqv$S{I&C%Q8uucxtcvY2tM%lL^xCdmhGX0Ugo#*cZW$baw z-OO^3ne43D6W_NcG&B;>vW4?ABr>(!T>;&>V0J_5yv*f!CQ^`f3I)wZwwxbIwE5MM3!GpFw^(mjFL<3j1H2VPX2;5$}W z*Z>NzDzQ-X1cK2gdzBZ817WyJv70TzB*0_{+H=3)@O_2xQGe1J3F@zsv^J&FhJ^#))E2CD36Vo4r|H_vw32<5LvgGUU)&{wm18yprjW+yxEB7|s2EI) zyCo;T7UXkl(qoAmS=?16G_Ji2di0QMu7Sv0rL!Sv_l8Kf&cAW}&%2m2ZkI{Em>SA- z+Q}?F;}*g@pKVtOJE^W5zx9y!RXTcxMvl1oP}E0583hl~KGJRwnuEkOk-2}~(Fe7( zO@Bybt!+~4zNR#yypEiFeAy~z%-}g(samA_1%d10sL8SRcRz9$qS335ej}wqg#9_w z*YnO}i&W<97tb7iv=F`ZtPOcYY&smkC~Cp_ZFut53Sz%gc|DWEPp;YRNc{r!Vw(yB zgJ`{0++O^bTT_GIX8xXQ>htJ20^SM)k$_-RqL8!gH85%zwQRc-a6iyOf*=ZK7S_X~ zndn!I6$F#IVsNTo8Fw#JdYRkB6#_-*6hL9|j>`5SbWco{F2^*mhPrAO3KLxzyAWX4 z!rcdwT%H=lYP<$eZNk-b92BSf)qX1Rf)RrUR1DQT2t$`bZdknD+S)1MTyImCWuOKfn9#lffq9Iq(5w znSDXpOXvTSygs4Um3XtDtW*q^Ys2(i|1e%oejwZpd$D<3w70(@X^-(QG_^9Yg|O|R zdOl}a#h8JSf$3^qSxmIHt~w8E(!nx@jDsZl9*$yF-XTTdZfW4c(k(Q4$W&O8?|t>H zrqzJQifI}=bQ^<(pJ~cNf-KkZEQfraUehs7)~(85T3OLIa$na45pFeLN80RUMh{(V zMpBJb1!S2wr+FBVQ&@G0m7wkAV^ne>6b;c%bYr~%@P&<*KxsGL!##wX!I6bg>CbJ= zV$m^#5V!f`@4hkqEH>Yy-g$_)Ow$FMH>{_J$?koBce2s){M)=^F64(d_m?Rrfe+qZ zUP8$#Cp0E&Zf48=^WcDVb@h1+rF2tv9uYw5t}f2uOc#_u$m4J2u`)iE{s5fnCdrkw z-*1=BvYxqKTah~96IiTRT~}|?9F+9sg)u=`gI8ElR9a*+mE^;nFJw7|UIdvT;

zHb&kzyjH6zlGRU+7HV9Mvd;kxUw)>^D1ovOhL)RbuhGh{<8v9v{NP}j*zWEw##hHw zt)VR<_ACfdmH;%c4x~?lT#_s~g*5hODPX(ou#T4C8UmAT2Zh7Ngz|hif%4vgioBAC zqxCVcr5sqjKfzbFG@CbZK<&|2Q)XJM@1d(^3!62PDVcUKNtj9Qsn3cf9a{uCt#Max z%R84zZgN4omFn9VCmke^#_qUb%S zcytDm(G^v^@3wAIDMVMO`4uDaA{P;Sc=nembM}__Hhb!uykQ^F_zwXSW3s;Bom^>Q zf)jnXJysju^FSk3{qG+nCHoy&+mPDiR%|&j4!Fm3AZ5vho;?4H-F?$Ie&nt&1R8%V zzkI{3j~V+|Y3E0RlNma_itHB&cUU1CMOKP3!<rr-_Ut4rErEMK_kM-28{SX&rij@MuO$ zyu~e-Xsoz{i*{vl%!G2sZ%#t8l&Xd11`8W^0)Nm($hGH953k;S807e>EJH&yMvGuq zO-xz;ON^25kf+)9;5K+6nw2^CrSWZL)O4IFIVVS#22Y8Dwa2(Y8^xjMfT{y#ynK>5 zxQ_$2=)IM}cMizJsBuQn@>TWF5{w=?SQU9W2by?DK0C*J6yV)IyX!(=%oX5}HeVuE zZKN<;lG1YfQlf=8uc6`wRR|L+vHmWxmmU_N1x29>sHrgao_g_M+dZi(BJqj6WzE$= zCWi$WmbBrOI-ux&ex&+5`PJ%V3DE3vGou+`&Af1%qVX@yI5c83?sNv5ao_Eh#EyPe zrYXo7WXTwwAqi$o1k>xyP1pwtKi)OR;`yejciZrJeW!O#Jz-NK?ZQJxt})5tNR6DC zotErzGnN6k%nDWJ17;9UGDv<;bI#Es0CdyRoHKm7BSSNvQc-vu%Ly@C@f|FagfzwL zNN>p|)iVSQXri1w%s&ZVRGq_AET(_`6gBP6Rp7Ab3?Y6R{VVgZ{yV<;he!%ep?Vdn zpm>yIip-YGmdcDLy^;}=QMY5(4E7t}7rQ=-toi)G$TtJ%4k5vQ4wfcYgST0RJfqjf zmloM&wz*Sh=s&=NcZ9m2Fds3H6`WY{+*|tPpE1KFEbOp|d9MYgz|4hcrbhz6Cd3Gr2FuXuN+9m~&# z;;(Aw+3XiRb{MS{ezjwriCAfu&b&O>H6=oRg$U|6J+F-}nY*IaxI8+a{BwsB&whw(U*~tkxtm<@?^sO^_Xkzq7%xY+znEV@++mY3R;jwZ=RP0923Rv-S|Pn zCC*@SFC)kING4%zD69_ZtF(LND!Jb0erFm``33_|btIC!_axBBM%}q!N|M0H7&M0{ z$rz`UapUXVj-|it>x2&-ueLR0>5haTn+>Qfne0D$axGpz(6(%rX#KG4&&JiKk&v-_ zN3TC*#N|DcCKm2(nzb>>-=%XdZb5Wo8YN2jD~z>Za3VO#!I{i}8+Opg!L}U~>sMsU zZ0E6)Idgl0yT50t^dx^HBk3&Xtu42)7B;!fuKJiD<3 z<#GE}lGVEk7Opk;A1n#wnMu*9GCpy;bAvwnK8}6KTLO?IHU*jbMRnUvTqu`*m}{Fb zAG0$dytpDhz2pWh^6y)Go_=#x>IiSe%l?*LN<{MV*B=JJ4|$37EG7Uv3=*~hsMP&Y4&?d@|zdOK>boZj}zVajMW0P-VRqXTFM7` zV29W>#(z_vmD&;wq^EQ_Q3{nYT2~?gE~2z6m|=a+oTBJ&Gmlk~*k$iCWA(+L1%*Rn zltl<0R(o4MVlBTBmZJq|qCkc6(Bmt4a$#GTrZVHiaqfVn%DnA!WdmQWSK>W<;}+|& zD;~7uciJ}8X^YO66wZ2gv4%TV#YIuQ>o2Xj+U-U6+(z3H=SgZYd(S>-V?-nvehbcT zrrbO)hXj3Y!cJ>UZjn5oE5KJGhLp|ZWN>Hh8=1M*Q5f$c%3&$ZO|dSd3Ko`64z``H zLqjfj9qFbRY-G>1kO%IBTX7e)O|Sq*V-60woxuF6*wk2C>g5a?)seb4fJWq)fpO5{ z!rKg=VuX1Mn1xvij?z(5b ztJmyJ-G=ZSM(J+u>)D;*o~e5LVAO6VnD^{z&@j{@v$imoDAGAL{KP4GdSvlHnL_76z*= zt!TC$i1Upkn6qdTU^z%6>t6ZP?O8CXmu^+Ssr`3ZVgkLaNC(8%y_7sWPr~tK?nWC4 zC1=m(?42-Yo(#UsNr*TsvG?_v!wjpCVr4?z3K6L&kq;(NmmT~jRBD8s?dP9SEUq#W6`5 zgi>cDt=zt?Axq=d1`SOrIX&jJ2sz_rwz3wc@}X(*oEK?M3yC;7jB=_*Z6J^vMZ+@L zNJSl7riTe8kB1)0Fr}9&OPeGHJIoZ|;dY)$ar=aX$BRehJXgyMXayrJoyv;%GJU0Ts)d}HTN>z!7aQU4<>v&_GAAI) zEN8|=rIB!URz4x|18<^_N$2UL2bS_@Y-mPI?fC}-CR{`l9($roh?hw)Jvlb3W7$W( zQGut)Ba*6y-Uw?Ht$Gl$Rn{+@ z=nOYG_qQhNR5EWW5+Rb8(aH%3sw-Ys`*yt|^gSIVfsdVKi5hva0gY^XMQ{hG4o)3E zJO)>aMTHIXQNDpchYBXcdz!|0y3dW0`iKSO!PN7NEf}0StXlcI+u9Ej;z%Ro`uS4+ zy1&pK=Kb2!uqio2HdCf2PoFqKiz{Qq_M&$c5^|EnC+3(!F*o4w=#84f)gmG!+$8fG zIQ2M0yd)H~^9}u`dsMkDKo=4H*2%R|0?wOEw^`}lK_hja@9EB}>Op+ExZ1JUeP=uv zPnX=sym2?9i67XIIc^Y5IqYnYWk8dg^CtRR(-g9f^4&2Ymw#DuKyEr->IS5a~Di{%;J$rXK421;#TWMv^&k(he1nbJPOg2S{W+oxSv zF>a3Hm@7qDK}{O=uteO(sc7WGqCpqpQBrNursk|xsEJ#j$R%UXv{QYp_MRE7(V6~W zYpjMv5>c{8U;;L2F_=JJEJIHgQ1iqOxilCWE|4xZ05d?{0FJ#z_ymm5_8$+EFHHVl zl@rgN9Qe*nlii^H4{4Uum1qf4FK|SFbSQZ$@IvD0`;Rsyx_{Jwd(LfJzU`-_@Yh{B zPt#9L=NvXPYXTkM{f7vE#s5eG!DrGvzuvwY^X;u)`mI;>&mwOinEB73CJR7?Le~095CFBJcyG50#T^){sX`^d8WCEwb&*nnk6M zO@sSWk{BhyOA{eqfn8aXdsarFEd-^QSZ^kJ*18_RrDI6Ud9dUP8=`~Tb=cPdG_nQe z%X1yP!oD?n0N5b$mW-jXPj)K+r3w5B9KQDbQ2;7@3LDOU&4Eeq6Umc&&gfCt0F2b& zBNNUF!zX}c0MtMOrkVkJpUUCYBu{C9z47AL1g|+1C9IC*@Z&bu@E-3Q-bJ6DJO&PI zm-TehQQ-&&u-|wR_v0}esgsc!MFJdVHhFCtAQ|+Dwrz?53aMC=jxLe`?B8XQ)ORy% z0rvfSI(8X;A~(vf`QfH=xvUA&SXjz zlLLT72a%@U8^MURru5(eIsATj6>E&wY&>=_sO+i1HR&&iDgv0?#zYcHlOrntA}(Qf zq+`xQS4VZp8KMn9%yYiqThkm#hC`g8R%Q-=>L;LgEaX>$G|N}XNA}V z(YH=(0@tSKl4U?O2HcwH%@_6*A9CFr}=l_KDqn|#a31c<>`9U#gQ0Bq^37LRF3+aT)V&Qg% z@)cwMHy{gWCE?=!7jWl3$K1F+Jo4Xote+5v(ht1gf}8)LFp}W^r+?>b znED@>aAM=Z`9HC|1F74bJmy3`SknKE;YCVP@cxhPk`bqY#vi}=cA7U#kN%XtI02kb zDe|vBP2UcAEdR2}pOpN!@A@B&kUMaBRVj{d!$&dDvu#jW+=Y>R>Xw8hx$LCo2Ky4h z?@{+}=DM}MFLN#2Bl>rLqVgxbpzkkvk;jDu!h{P<83V1o?H4k`M3PQRJV3*BD^uw{ z!<&=lGP9~r^Cokz12+mwoLGFHUO(Elnu68DR1vuKzOiYQJE3DxM=X4o)Z*3pXypG` zV&QYMTRP#wXCj2}S!Ds;lctg>b$!uHlNZ*ht#m&-+-}{f-ggdcBmG*-oyjLJQU#Pa z+4CY99n*5UO+p>6seJ8_Zd9B5_)pW#P8lapr!?J)`Ng7!Sz?R)n228<)ih6@A6fj~ z>UUs$ECpxPz{ZT^Gs7w4WK2n{YYzN)weIqq2wt3a;qy$=H3QX<6B1?ggM-_>dp=4a zIjYvdUSQ_i^1+q$;;U4+FHskfw0f$_Z!^7*}l{R=a&XbOBXXVP{xA zsyOP_9xe$G3kWskB2^jpke|h6oz5DYeFcbsyO!HF>dhF5;qKCU#w_1HlUu{5Gr_;M z16BK1x=?p{!C7yfB5sEODD>P3}^(Me(b@HD6bcUkhN^ zkftnR6KBX`Z0iuAy_mrdcbQ;Z6a$M|zNV`C#R;fNnD_(Y0xXlh?-h@W!U;>!nlYLu;K zthC|<>m#mgxi3A&_GNDdVb6OhwTo+G!xN17nqWuj=jqj73Ys0_Fc5q6f(xdunQ9K$ zo{i;+^*A%VyrWspL-p$3!lqyW`vnGi(f$jEkEo9*v1N0EA#zQ@$>HTPr{88Xx$eHv zXKv#it`(8X3vr6xot#0ssye-tbSG<|?Uu-}ou8?n#?A9;50{rnn+9m(*Y+COaD1QDe4U_Po9vr`(~7H%8G zy)M^&)Ub;k>5>%*AKi}#J`?2PAJXf$e}RF~>oxu=>^lfOJNdi>=aa{LI9!HI7DSYtJdT2m4z22lFe4@!x zUC}AxyvNuRMJi^Z<{*Dp(i(BIC_v1(I%UQ**Uq8ZxzXV8eL#fV>#p*-NdGOrVE*8k zn1H&rAQXpX`chXPt_oLs*rQ0vg1ODXKcwZx7wVS>C2cjx-jwYJNW`U*24V3rGO~m$ z23lfB7SH*=&>%Gm_5(w=FKG1!ytz`JJ!ug7>ZD$kJRvGO3L}=w+wSs9OFZOvtRzm* z)$2gm@+s;*boPR1rdE?s3sQ;tXm?2b{(wr47c*4LY@!zLqSfrjB^U}jfByVynom@6 z>^kzK)jkh4QuRe^YOQ7j&mBl~)t~g^Iirr8R0MqjTg`(e_HhdE=lZ?23c-3> z4{-FN5D={(vQQ|WDuhIhD8}=G0gCqk(f$)9xF>7GYZBDuXOmn9iCmTcuDZ`%XL#e~ zH5~K8+U?n=H%^&5Ct?)hb_sljf1xS+L`;~#fpjP;eb77Io>0N7&Td7>E;)A;M6hb6 zCaIDK-fL;TeRYvCv!ydJBd@E*7*sv;T!xD3O;}big0;h<_4F?^#o59JF{keyQZZTm zMez(~Ys+R?@fBN=q$8+T7CF6a^LVENMh?O3#*WTg71iR-nf4CFh_uqxWKjTxQO*wn zBM3!%w})KI8t(GTC!gH*U9voOD0?laaLT~IXEp9Ct>Ag8p+T%fNyhIM!Z}!*ZcocuT7JczYfg@(xtg`RTa+le?vB9& zYFtk*H>1rLqDnou-6&$I#_c5&Qb*peH=aEfioV>wrC1{mN*NviJ)N?cXB#mg)?hYv zCJs5$W7%v5tIXJd)EE6lp(I*s5$$*6yyBGRd-&SMCi8wQNVsN_()cyK4xYwpMRSt! z^L?i2tSC7dGww=DQ=Z8$w*c;#vP>f^=O-5z7h2+qdwjlS!St8r2yJg|V^G|qCW@98 zA>kE_`rJyU<*FZ1T#kps{1Qv)yhLvWVpknkOP#JMi=D2r#jOB!7ETA!N1w%~tKScx zV%BOewtzz5cRi(s?ezIt%H=x#Y)ol7hT1IJ@>3>W5oH}eFXwHth00=oMkGutT=7>6jayx%M?s=W}E=p+o~!1LZJ6qQX7Ir!N28nqpvF+8MTsl5fU z#!|qDN2&D3p6khl8{g+4{w*K(V~4;S%&p-uS3pSprc zrkt-o_3xkTZl@FeZW6wymHgc#9CQ%UloglV|H%vTO8cV~?KfWDXqL=gR;Ua&9{7&j7)w8ez-n86 zq~~EaD=Py@hN#{H(sv|cB{=0oc%g1Oc*Q^7xDJ*9!E)e{1L?u0Eu|ucP#{RqtA`Bd z08I;@;Eqe`ZSBVy*h-S533`)zVyrWBPA_fMbMb*L7sJi3m>d?kKbcr?wtvuHk|%50 ztJlMiYA3NDFvr2vL^3E3htLaibtEW8#Ogns?8VW#wCSnQSVANv!VM3n!H<$J~hj85BF$c03e(Q#EG6zS-Jj^qy_; zu$l_LPZXyzLGjiUQ6B$g_V5B0Tun*&?L3s?dvHt}f=q&B(qMkw)TqmMD#_-ewswwW zym3i&Lqr@ifpjQ%i&_i6k$mU7qEHwA=XH!1|Zc~-_id^N= z8h++PePTS2EBPbI|Lv1z?%;rF-Rd4ob^E#wlDOIgtG4e!7US5e5;YC*u;54TYo*Ne zn6Gct_UD*%7k9U6zUqyOXm|G4C=KsiFKwLGMU04cW4HVBs;*T&JkA{Mu+Ohuvfo`& z)pFQ^wq>glw0{=ykyoEzoqUosfxkiGj>-R!~sV~M0JmN{J7pJx?+p^abopKT5WlTc2Ksi2Ydp3v0W zpiHhNeIcXzVy1;<*UD%P1pKO$3CRIAE5GsO-yFP$*ni3^f&SLIlV^q&g+PT zALMo#@aH>brE71?ZEx?@z#NRHcqbtZ2(4ykj<9G58yuFx)O^1W6)9;m9LayAH1FLi z+N92dfjK;(s1aczbWBf{hYW1H=j^?bIx5VF1fh{q{@fhQcr{QCn4OuSkaels7^gL zHP@}~(XtRtn_Y47y#M{qcFeY_yu_senb%2Os(?D!Q{6fQjmtG)4Ld-H7nL9^Im>94 zki>2NVLNbV8{UTdafcD<^Sj&6QBlNe3krT>GrW0#@B8{7&b;X2P`F|&u$WYTK-;W) zO3oU)G^sIxIW4(rVbOhcfYMSYx(Dj<5J*UjRC(2NeoY_nD?tWp)JUP&72>Sq7l~)D z)-kQRyhWr2oXcI^Y3GtAG&t8veMYK3qA;z-e54)+){M-zL5b*!=mo3?wpxkj7&Ajw z?LJka@-rRr+I}BIBzUseFVr*6T{MC!i)l#g(eu!-(eOT@uK+$aky}mxswNc&m%T?A z_%D!xmUpg~7ci=_L53bd#73kOwC;V7Og?@oY@Ln}pe{vtTNAioo;F4`Ic#1FkR0cG zifHvvWcH)bFULTWUWeS@s}i?7MG5E8dPWW{O^)0 z>b$jk37UGjs?mEhJu~N`Yw3t;F+=Wa(i|QKX&^4>914?i@Ph&ef8!5`BIdUBb~8C6 z5L&vbUct8y9W2@6S!G6#G+q)>B~VFp;|O2y$QC+a9&aPlwm>X)wx_3sZd7H-$c?gEtnK~b@aI2GV9*(OxUQyC&Rmo`u8k3vCP7QDFFgRg#rX35>ZhsSMmY^2rJJu z)bN8EFgnoXoA>IW4!~#@;|O5KVPi!lMJUH0F>wfx`VIFT(e+He-CGGHjgm&MeG01$ z=Ht|N7Nql;lYVi-8F(6MQRWzyQ+c0k1;%_P%}X5M^+|?q9^ly>t7dgtwxsj!Zzowy znWI|n6JwyXAPE5{M8+lgCr?XeSY#Ka3&@JVVR!P$W`HY9`5p)QmV`SPBx+?hU*bu! zSz8zF(9A_fdyXoyRp0jQOoVA^kA+?Eln~23gBIymMKKm~d>%FIjTJ99-B~ArE3mWZ z$Fi|lFC#-s8It;xrO8co+!yt1^L;{F>(y(5Zze~apW(|AbBi+ha&6Q4^FCV{K||SZ zm9#qc8&%&4Bz4sXmAv+gm4SIL6WrATEN@O&qWzVQL+u8X2rE#n?nje;1AVe{g zTs(k{nJy;1HaW3ur_fEd9aw?#Dw`bxGR0FdNzK^Sq3^5pgoh(#h_+RHHrvnI!R8j( zd8jWh*w{H)Vgit_otR-yu=$5+0roBWn?AG)-A1%*Owed;3I;BhhIGa2o0x1*)y7H1 z3se|7v(f{09c+?&;jV9x>$3kA?jrpE5$@tmz?5An?D7Jqildr=IMqZ`S=Il3F>ji5 zx&0-M>D!Z%ztA!_TQ1A#@_^C`GN1)GGvV(LxU{+EsU(EKMbCdz$>+kH$N*v>E3eIb z`RF-Yp+jKyF`8H^qIk;dlEPEzXD&XoyR*bm_gpVpP6K!+$gNgF+u7@4at#&}uqBm= zqNv7>df6H(!jLq;`Efi&#JKXp1ywh#Uo93juxx-v-F@whMr8M$JVhBBymr~sY->as zvepIfKq?kk{Bcaf&WPn&oE0IVY3_k5Yh0R_5Paxui1?PH>OajtV_bkJCib#CdZ*vS zPC1=+{3e$0duXUk-zi-&6V+PvMWEK_n&muLfO@J#l`?03V0~B=RMu4*1TD)onqMpR zmVgkJA>$3ZxO5sGQ@JrePM$!kByK+8)P26BFDtL={6@g+S((=-adXB%_*TQMMD*f= z{*slgqJjk)rXuSJYGX&v!j$)PJ1d@a4;MywJO)VTGXibCLFT#TFm&AzR(2_}baX_! zL~cKFlT4ajNy{lr%N1K;V${);bbqeV8^AphKUXTL>)d>PV|{r(D;jT6;bUKc2#Tef8JDO9S81zB|t62T$%vlN{Rl-MJc)PRgweYE+|n%++v(~a}Ux1J8I z(rUFkK3%cHuZSz21MCz#nfN`Ja{XwQ4;vgH+k-J(^j(=m3I?Ehr)(r~RhgeT{G%y!34)_jO|wc|cx>AqkuYVSnn|inY`s%fvAj z)>a=lsxS1jc^P_j^g_2!cVmc-=Q{82kIir)ZL5E8uf5;Cr9_hYW}W$!ou zKkGAzG{;PGJ@APyH$BZV^k@^5TFL4FoLvQBzh{1IU_LJy<9=w^B`yo>pNy~k;p;;M zqihbd(j)31U~{G|JYx9*VvI{0@n)jduX(w!FY}lJFmdj*KPi^;X$EldDY=ZouH_5G z>1_7B@)+COrDJ)t%jT0rv+aHPfi4r0`=J+20AuJ>G)iHeh9G2qn6~cavbvTpUr>0E zof&osDt~C*Qy`QA%xb{J^A9Aiyx({!IS}mfithhWiUa7B9C-Su+d(vt6!{LIGg#@2#&Hx6-tJz}0o+W}>J0~}G^R1$v7XOe24PzZ=< zXIN-4AS?0Xn9%ZHQjmWuYYD#%sQI7DT1`_@9Mp)vmzRP@V0l?+;!FaTm;ZHHNMLy( zHX&Zsyw}z8-vC;OTippVk@FJCJLnmij=BxFOltZ zZ0vE(0cBaOYEc}XDHH@T6Ol(YDyK$#(BXCo@;5$YXFBFXSb^0@4&OVnARZ*fa?$o= zA(~$)XjHC@Qb&o*r4zkFZ~OsK2(AprLuRDb`-#kghn@L70`*%)f^by$)pSrV2L>%! zEhumA9Rp0o5T!j!SAnsDMA5%|3y5q1PO`Nqp7OJV3`f_Q*^A$q>mJ#*)MEauZdbxZ zfW%z4EqiPqX7$N3wm9>%O+tcK#qE;INf?t9;bXsbc?c)>><`w?_2w*Dedd;M zk7}}mxChqarA}SW%gWOOyUf*#N*f{m67s%m1w4d=u46YdMJL(}}XN_yW8LBOJya~y?eQrPQl`fBN zwFxH5Zawh_$g%2Qmp*|c>%UZ}(sHwC)WQVhN35(pO^9pJBnS49dx1aauYOSwL|mAd zYtOR}p8Ex~a_yG&=nF~X<;iVa8h$Al7nmz7C+2A~>TwN!IWk8FQVNE@*L9nzeIi~C z5gt0MAMbd~d^R6-7}qs-AuGj1pXw{|tLZ2P-*c_;);aJMs$oJ$*|!i@U7WMQ_xz%KKbRQr4`j-5j>~j{usZcmv(($F*@_zk zVC>wdW>|{y;YRS9u^T)CsJalN}e5Vwe1Fnb)o3pSx1HuJp5sV_$B2amkMk;me zdihU4rZYss>uO7GXv7n~vY51jBk`-t`*7`9PMX-RRqJRQ2ZeK~U-s+A*{_x>te@d% zjF$}?YlM z%kMZ}?Xk0H3vcZe|D%@8qx7Q-A9GAEW`4&R;;rq;SX`bcpq#XaQwgapo_-#%u<^wY zkeW9uxU*qm0Xpjr_rm?(vG^C)B#2q8S6;fnf@<{4yr#q*%jm^@x~+VUoTWr(Jy4@T z0pnuFTBa@+*VsCW?x`o^-^^A)u*Qmoo$wisHQk+U78xJBt=DTjIb}^it$nM`fVtNA zZs{B!Z!9`Y<)nS9N}1d%qej(-I%d&1HnDT>E1Rp&OgMBr*paiEl~KPLKl4v?fOqwR zl}OW*K6e`AtSuFia@cs^lvAsu4)8K}k(|4G+eJS8(W{BzG4aXO6@P|#I}Rnj{30wc zm8=wAEC|(S2nRs0I4n4@(>n@>IM#qVC)6p|WYzA&T&#}ddZ+hqUfsMr#S}$9G=Cnq zj-5T729%nz1nFpdA*dsyJ#7NMRfIb4T%lOVpWUH?%}To!60%g zJ9+bmMUu-n9EbZcnTDPHh-pjv0& zLbefZK~56>GZNx24E z@aCaTsr685T%Z|fh5#x?QjEe2?S}zT0_0ApX)41j*()~Y3t4c7oQeU(dWU~^-Fij# zsL`&ohyzPZeu~Q{8dLZwpv<}Ne#y$eD}GkmXW>8$;@Ub^eS<{6VQmG`(_i4P>JII3 zlISp3UA#sBghgRdU1L3UfZD(Z_56Hf%EM?P?w`_^Y7MkmN)S7ACH}$EEd$a}M4rYf zu>y&z6dtWRf z4op6SFLvqRuU25RFxbP(RiKvNeo9v&2P~?aUGC)?D9I2KQ573iS3$=qn%(43>8~S^ zQjdZb1w!6vk%9b51P=@vJY)@5@|U~pzdBfO_wY=lEt5{kyA&7MtnFdgmcAQ)Y9pku zLeY#v?m_>?*24z23y3SS02fEwg_EK_>pniKpo3kB=tPUN7U{! zmz}MMh0N1^ENlxhan$2fbgcLBfCMx^iAH6NTz4rm z5F!5y&Cl`A<^QKr-y0QVAgmp;R5WtoZ^K2?YL4k zg(Tej`d9v#FA$Oj+W?fPmQ9<1{NeWhY@XlT{ZI1Bp}(*AUuY$?6hR+?e@t<`H5uEZ ztEK-JC~CSkAiNysZ|8Dj(!bHB_`K?N&lQa!8}+^u>Yl1?`Fh8rXdoVina9H$9RLpm zkxq=OFu-4IWSln^FHOFoa>tkn@AH^u&eqcY)OW@0Z?!Zh0 zuk*F_E3s&yZPgkTOVz-bZW+GmqQ2!}8bPeWBGWRl`H#FV#`|vs<0B9ll`&QvmuNrq zC|>y&1$orzi*^|Q(B`!EgE^`hiz7cW&*H}ufmggu7LM&X&B?jVzTA0x4_yFH-9z!L z*vYVmL``Ix7=CT4BbIW!J)d`y5#ixiUoo=Mwny~PQBD;l~dzer&ysn zFJC)zN(T7*2?=EkkS9Lc_WDTX$7Eh*0@0n1;H{P`I60xX z@X%7M9TA-r$HdR`l9du9EYDD1m4=GxDWD|hHRSoh#58Gy`5E(|B(n(K!}*q>r97eL zTqQY$y{KpD@CqayVfV5~7Ruv)1FaY;QKW}5QL~}tlgW$HTSn-H zj`0k@(-Hqyw4i~cHN^s_qlif_k_Wb>^&^kbPTk|$L%gR2KjNv&ob-1#`R-=gl{;i> zS-$`E8X7EEw391{3rkz;+@dq)O7!^kVV92HT@2o=pdN6x&h;RrcV09T?R`g<`ym*A zr%lpFq4t!tW@>)-m4MoxD-$pgwfVj)P?6y-CSEhuqp92D67&5jA&nbO;mmiq`WoBZ zjMwxn6+$#)oi<_2tEpA;*7tf%)C2C$8T`?~u>vGi0QYIpbo-Q9NVLDJwoTk?H0zZD z*H$J_E~BIl9vE(L==62SoL+Q-Pxnqc$HTY)jv>wVZ_Y{g=3K>#TN-kc0$b$wfsLz@ zf)Dk+&cm<8mbH6=A0xfZ3p$=>2$k&Hx5&CXaY{{JRaIirS*>GjiT!|@%tQ;eoqCZ~ znOV{@nX79)ADvOMFxwJ^;dIh^v=w@ypY-Q-N}8pYW=m*DX%rsJRpgd)kzc0A7(49P z6nz|^FL?13C`(#sW@QM2!@Krc^j561<=392w8l)!Iu~J!*9m4N8_`IznV#doLQ?k+ zqrE#DsPQxsl6iiodxu}NdN*;FlXt4_KO=PN?wpqsq(SG|Fgef7a8C#1(aL$bsD0Gf zE4?qDB~_w?swKLqnC(c_h(<@J&nYGG?y{_uB|HtJ__m|6ABlmyG|D#d;Jrrrwr_-H zD4nOORgJk76{wD%9Xo0az7lVG8EW_~iZ-3|(`|f*U-QT8d9bC>q{qNA+QBVL5s8F0 z^ft8KeFrs*BQzLIB}Ju2Go&6+sspUhl8q43fq5iD@_{T^FXHMoKoI&aql%YDsSFU1(&ujR?-0Bn#%gZQfFW<0$3Dzf{wy41^xmV7zoyOd7eL1R$e z0y|4_Sy9Xlt)j-b;mh0CYF3YBFB)&vhg`GKrh-K4^%u)loR^L&yb5Bd?WSZNB0TZo z)8eJ>nJ#83rI0U6H{z)6+%U~K?g2=@9SE`qj&gy!qHG|E>g2orE z^5HXNFbO5C{)`-+Un+vI#m8&l)z=d~dS9m<#Um8^Q4byV%!PFl`_k%;!6cE};-)aE z(6;KMn+u3D#y1Wddd~S~F7thsst=Pux7yQ!bGu-r!88f|E>1dZ+BFNwfxe&39lz!C z53gysY01)2S>k!IFS3b=48nuO0nu0L_?PwomTjm6oQ%0K(UjKF38VKz;|@nJ6P^KvzaebzO>IRqQl3tpOW;ahB?a2)Dao2bO&b)L9_U!Va+dJN@ata0$Aa<;H68!j7|h{LSXCxqT&U+9pjj8}I;V*LAb`lDYU5RqLj z^b}6wMpSaBtBLe3rgBn%R&aW&{@|LDXd3~aGNB3Q5xk)_8t)OkVng%dWXqPRp;34# zghq{xMu&IuR)IjXfs<5sYf3G9_2FgSIZZsYX#~l!Po-|{C1_SqN(95ncrK)Z|NckZ zx?4v#7_N?7y@b_h+wYqR$f$=j|C~(y-uo|Ar*B68%5wZu)k(cv ze=Q#s1dyop|BgA8H{S=KaKQurdnLG5f7fQ@{hi0Chu0PUm%7ul!l8kC49SdsfRd^X z8lLB1e&>!ys3&vE*2aPG6TG;M=ZoY7;50Ry%trNhX#j{c?V=mpE$MY-vYg;fe zKc0hg-6}=@LtgAdg9~43pDBa2T2iKXfaR6Ap8kpJ$qC*ht^2cev!G9#Va0hezINPb zo>HLmselj+h-sSX_(%VQ3(V>po1iu$y{F~G0Th*qdi6KjH?#IO#lvnHMJ>@7B9Cde5B@*gGtr+alq{bf&s22F~d#>5b(y z<_W|yJggdSPuIQE$^nGCUtq&}Ol%bYadfrZ$?Bw4uKb?G?^F!DE`4meK*bJINp9xR z>+^;ot$u&{$l8YI7Uw=_-5y54>KgNE_W2G2R#q~aoJC5j$e~E5Z9T+qpmfs{oQaPloaoY2;tvS89|J1)7tOzZi0!_38 zl2|yjMC-TPBZ!SJ!fRNMM>&vH(8$Zl_0a|&m0 zx72RGc*2iHtVxNfitXzzZTGuvhQ|7b*_^?BKaaGwnP?JPu{vcnu$&ruKBQbrx3TfO z(%N)tI$6~DmeAz!bk&DkJf^U5WQjf?9F5*9c&99XaTFK;J>}h~j1)f*#;)h^Sv4hD zKZ>EOxmLvL=p(Pe{n>>ndRG8F(s#e)lpHyZ@uhF`z+XrxRUR(CzXBtG0UI^Lm_)Fc zkgWWAif9^9CZiApFm{}_^nj7QtgB=c`mEcA&AC6wb)t!z*f{qPA5RS5N&I=7axK3O zCUwh3$#fQdOFGFeZ0K1cgDhJVW0nQ?02h*|YV74XyY$p3Grxa(Z_f5?p~UA;*KgaT zF8J+$kY8hmUO6r>RBg|@HRzW6n3g}M94L59o+xA|uQ7RF(Y5jSsn+`Su&gJWTK&fM zI#}6rWEG4xc?-$M4%zKn4Ef#5Q@Rx4)bRT}#aH?(Z~->*itYJL$zhyM5B$a+=%Y{9 z;JbpH8R>UAW_!T$@a9|cB*HzniH&Ddgwq_D4oc}D9W#khk9z~bz|A3}sDZ2TN4Vaf zG5RkwU}L|HDL+9F0N#EZq+>Bs_3*L`o98WV{s(C<9rN8W6{$L_hTo?UUt?gBPu(~k zRI}gwdRlf=b*&|9>lOqwHJMSK?v=M@IWk?m-=8v6HXtzwiv=9P>{aY~{lCy!?j!Gv z_l*b|p0CR8rm~2&^Z%n}ZMyVSXG)4Qf3S3ky!Q{9;nJAd|GvIm)o&+dq}am0(M;R_ zNce7i-P%k`AMV*NZIO}|i+2oCl>wkk`K%r2m!(T#V_=4CyMnOnbM~9Z88QqUa%Bhu zN;aHyXl%e_DuWFc(|r5}s;5o~rxZ)v0MKI3WdZjvlZch-cof-S0vaB8W&aO#?;RCI z)4hw5!=MBK$w~5{hzP=vhn$1~WfkGhXtfbIjIP7o$`W9c&peMJ?L0sDyrWeqa;)@_ zp=Wf+)&`+CP8}(0#3$&HEb&}hP0Ew9F}pWT%!<+%SqW`D$FF#r`?;fKntE#`_F%a2 zsQ*QHs=4n?;#HjcW%R3c?|oL8g+aSH=+bKtyk|Ghth?f|;2!B`!cJF#xB5+Vc58E` zKM^u-!zn!PTC4<*DXVZtqt3Eye{hE-?KpW<9UVh<4WBSEN3+q3@g|FYyy-Ol8QN|NejL&t}|-! zAz#q)ckR3FEd1@@q4T;!1I(5M#(kQmIHr8DC5oWx683asRLrJD8$sWpNZmssl-r^* zgj9v8$H0!EB!$fJZXoyIP2Gn-BA{}D{ak$kG`BDHxreqMTi3wH^);vL)oo|*ew12x zP{P3Vi{zmT%I%~~bnvtPu+iAz>ZSo=sE3n zeNdOLC9A}GqeQ+d3%TB+D+z(QBKhAko3NRN%c#86qunA0qbD0o_dOQoe3yTl$?xnM zl}_4y(r_s%2?N_snXEAohYybu{Zt6kFVx;FdYM->FvDkKRdrncD2KV0__nweGe2fj zgr<5#q(JNEag@7dfFdNQhJj!$85Zo2&dz+87`c_t^u%lhc3Z5d;oHJXxR`|gsc$C7 zTmXfppP879?L+FgZ-upbBaPb;KFj_PNU;z17a0kG%ND4?Ku9FmO&#ZTB#&DN-xN|= zO>cmYkhGhG7X)3drS}=m-*n)|a1?t~BWSg90U(!YW3C`?7CVuafyJ7ikjn80prhi;-&I3BdP`IONt*xG8iTSTbg=$_kfB$ot4WTVaUr5j~47474oCXF}N`{W1n&SE4!6pc_kjpCYp{TN%!}|!W_Eess{>2EO9Qv z@VT&*FPaBV9}`&H%UB$5K$EW)iM}LV98?Z` zqfWvL&V<5MnUmvx7FE$k2S;TWVxx>MLv;iX>;tHoAFr;}t|i}H@QEo__N938Z6WUl zA*S5y&d6ZT;uYNY)UrsfCRXr zOIIEPq}sju^ML!4Y4@-9{<@8S6L9+fEzE3p|JQYv-3NdnW^b%2`S;%|(EpZkH?HR! zW&Hs8diJF!!9}t{qRuKRlCKL4Z6)&MCk9DeQd$#Sag)e1C*TFX5zf!nk_n+%8Vd=c zsncahB)IAXAysvU(6>Gysj}>mBeaAB?l2JAubT)0u;+$+qXcFD0c3-Lpz>9xKnsT) zyFVo2LyWAs+vgGlMR~)jD#K%l?RgUSWSEAdhKgzU;oX90xqxo27CQnfDrE3C z(f0i0od*W$a;`Y)1IlhsykFfp+j?VgVzf7QvD(&@5mK@5Z7$ls`f$$-dJ^$F!pI*s zy*N~L?}HjbQnb42XYzFNymdzmlx=a2P;l%#;U3+7-0M-R?XJ z-Zi5=;ag0mcNCLIdv6H8d>Iy|lE!4+D!iF|p+ay=d2FeWbD?R99fB&8A7x>wx7!Yn z^=pb-L7enN{TNMZ(A(er3&;Lb(B>xAK!t=Cr*^45VAyp*rbeQ4P(*~P@dt
b&oUA9(AqoLSQrlwJ7MRaFei=@9^sIszb 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

2kU3!DFa=wu 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

bCf& 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 Si?@+~e+T^kYN3pOO#VNSKy8o! literal 0 HcmV?d00001 diff --git a/frontend/.gitignore b/frontend/.gitignore new file mode 100644 index 0000000..a547bf3 --- /dev/null +++ b/frontend/.gitignore @@ -0,0 +1,24 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? diff --git a/frontend/README.md b/frontend/README.md new file mode 100644 index 0000000..33895ab --- /dev/null +++ b/frontend/README.md @@ -0,0 +1,5 @@ +# Vue 3 + TypeScript + Vite + +This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 ` + + diff --git a/frontend/package-lock.json b/frontend/package-lock.json new file mode 100644 index 0000000..ac07cea --- /dev/null +++ b/frontend/package-lock.json @@ -0,0 +1,1759 @@ +{ + "name": "frontend", + "version": "0.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "frontend", + "version": "0.0.0", + "dependencies": { + "axios": "^1.16.1", + "pinia": "^3.0.4", + "vue": "^3.5.34", + "vue-router": "^4.6.4" + }, + "devDependencies": { + "@types/node": "^24.12.3", + "@vitejs/plugin-vue": "^6.0.6", + "@vue/tsconfig": "^0.9.1", + "typescript": "~6.0.2", + "vite": "^8.0.12", + "vue-tsc": "^3.2.8" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz", + "integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz", + "integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz", + "integrity": "sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.29.7" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/types": { + "version": "7.29.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz", + "integrity": "sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.29.7", + "@babel/helper-validator-identifier": "^7.29.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@emnapi/core": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.10.0.tgz", + "integrity": "sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/wasi-threads": "1.2.1", + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/runtime": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.10.0.tgz", + "integrity": "sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@emnapi/wasi-threads": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz", + "integrity": "sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", + "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==", + "license": "MIT" + }, + "node_modules/@napi-rs/wasm-runtime": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz", + "integrity": "sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@tybys/wasm-util": "^0.10.1" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/Brooooooklyn" + }, + "peerDependencies": { + "@emnapi/core": "^1.7.1", + "@emnapi/runtime": "^1.7.1" + } + }, + "node_modules/@oxc-project/types": { + "version": "0.132.0", + "resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.132.0.tgz", + "integrity": "sha512-FESMOxil5Se014ui/Eq8fT5uHJo6nIRwH0PfJrZJXs6Gek3ZVFOrpUv3YIZT20m+extU98Hg1Ym72U58rlsxUQ==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/Boshen" + } + }, + "node_modules/@rolldown/binding-android-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.0.2.tgz", + "integrity": "sha512-ZS4D1JPGn/MYQN/SYDWftIE/nVsM8j/AFOYEzAoOE2O3NktQOZru+/vYXGbR/qtdLdIfGCP0lcoJiYVzsEz+iQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.2.tgz", + "integrity": "sha512-vdFA9+C/rekyGce7WqHs/xoT0ioZEWaOFyZLIV1mEeNFaFDUQrPIo8Vs2GvJ6eetb3rzDUtUBgzto3ExpXJB3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-darwin-x64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.0.2.tgz", + "integrity": "sha512-BewSOwTHazv77DTYiAZXSqqKZ4KP/KonFisDMVU7PImxoWfB2aepnPhd2E4SWz3zDzYgDNbs6jBmTdgNnF02GA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-freebsd-x64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.0.2.tgz", + "integrity": "sha512-m41o7M0YWtUdqk61Tb+jnKb2rN++iRdIASlExkUoKfIAH30DOHCB8fVLzSUpbWHHU8esmEioY62PxzexE8MBuA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm-gnueabihf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.0.2.tgz", + "integrity": "sha512-jcojB9H7W/jS29pMKWAK1N+fU99vXodHDTatS3b3y/XSOCiHo0kkA74pL3jJmkoQtYpOCxDvaKs1fo2Ij/1X5w==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.0.2.tgz", + "integrity": "sha512-1jn6qDU5iiOgFgygDzKUuKP0maTi0/f1+sBLgvij/76C77Nm3ts6ufz9Bjg5q5dduxiUIxtq86JIoBvo1xQ4Ig==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-arm64-musl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.0.2.tgz", + "integrity": "sha512-QVLO/czFMdoMFSqlX3bcswcJNm/23r+qoa/jgtmFc/qEp6/jXmIkDjF/XIo8dPfGaiwy1xfQn8o77L79GeXFgw==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-ppc64-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.0.2.tgz", + "integrity": "sha512-hgO5Abm0w5UL6FEa2iFnZqo2KlK7TQ5QhV5x09hujBf7t5KzHQ1VmfPuTpqRy/rNlSxua3eWH374xxiVrP+lcA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-s390x-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.0.2.tgz", + "integrity": "sha512-fy8rXxuYEu602abC8MUNaPjYLIFzReOaEIEMKMUa0rFEUxNpVXhs15KSSQ4qlqSaM7B6rcj9rDZgADh/IGDzLQ==", + "cpu": [ + "s390x" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-gnu": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.2.tgz", + "integrity": "sha512-0+bOkiQ779+r1WpoHOWHqncvyySci0vKph+myNDYb+im6meJAzHQXay6oEgnkHuUGouM1LKTZwqKpBow6Kj7CQ==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-linux-x64-musl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.0.2.tgz", + "integrity": "sha512-mjSkrzZK5Qsl0a9d1JgILOiuZOSDTVdKENcSXBoqbzSrspLR/4/IRVDo5wd2GgZjNss/viBFJdeq+j7qH2nypw==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-openharmony-arm64": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.0.2.tgz", + "integrity": "sha512-1v5vHasdfQAZoEHakBV72LIFAC9JjnymsiKxp+GEr/ma3+NJCPSaYK+qavInOovJkgwFrs7GccX2d6IgDA3Z5w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "openharmony" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-wasm32-wasi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.0.2.tgz", + "integrity": "sha512-mb1VobWn6NheziTk5/WEaR6AKVbrwT5sOi6C7zk3gy/pD1qtJfU1j4PgTo2NJnOtbL9Dl3Aeei8w9jJ7qC2jZQ==", + "cpu": [ + "wasm32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@emnapi/core": "1.10.0", + "@emnapi/runtime": "1.10.0", + "@napi-rs/wasm-runtime": "^1.1.4" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-arm64-msvc": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.0.2.tgz", + "integrity": "sha512-SqKonF56vA/L2yHwHYcEp2P34URpOZ7d1fS635cTkpDnUtEGdUbhI6NzsPdqeSWvAAeGDrxjWjNmibDIdFf9/A==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/binding-win32-x64-msvc": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.0.2.tgz", + "integrity": "sha512-v7qRI7gXLRINcOGXt+7YmAZ6iFuyZVMIoXAxhd8oP+DR9dLfL9GfNIx7PLMxmhZdvq8waUJBQiWN9EKNy+TRBQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": "^20.19.0 || >=22.12.0" + } + }, + "node_modules/@rolldown/pluginutils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz", + "integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==", + "dev": true, + "license": "MIT" + }, + "node_modules/@tybys/wasm-util": { + "version": "0.10.2", + "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.2.tgz", + "integrity": "sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "tslib": "^2.4.0" + } + }, + "node_modules/@types/node": { + "version": "24.12.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-24.12.4.tgz", + "integrity": "sha512-GUUEShf+PBCGW2KaXwcIt3Yk+e3pkKwWKb9GSyM9WQVE+ep2jzmHdGsHzu4wgcZy5fN9FBdVzjpBQsYlpfpgLA==", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~7.16.0" + } + }, + "node_modules/@vitejs/plugin-vue": { + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-6.0.7.tgz", + "integrity": "sha512-km+p+XdSz9Sxm5rqUbqcSfZYaAniKxWBj1KURl+Jr7UaPvvX7BmaWMdP69I5rrFDeQGyxAG7NXdc57vz+snhWg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rolldown/pluginutils": "^1.0.1" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "peerDependencies": { + "vite": "^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", + "vue": "^3.2.25" + } + }, + "node_modules/@volar/language-core": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-2.4.28.tgz", + "integrity": "sha512-w4qhIJ8ZSitgLAkVay6AbcnC7gP3glYM3fYwKV3srj8m494E3xtrCv6E+bWviiK/8hs6e6t1ij1s2Endql7vzQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "2.4.28" + } + }, + "node_modules/@volar/source-map": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-2.4.28.tgz", + "integrity": "sha512-yX2BDBqJkRXfKw8my8VarTyjv48QwxdJtvRgUpNE5erCsgEUdI2DsLbpa+rOQVAJYshY99szEcRDmyHbF10ggQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@volar/typescript": { + "version": "2.4.28", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-2.4.28.tgz", + "integrity": "sha512-Ja6yvWrbis2QtN4ClAKreeUZPVYMARDYZl9LMEv1iQ1QdepB6wn0jTRxA9MftYmYa4DQ4k/DaSZpFPUfxl8giw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "path-browserify": "^1.0.1", + "vscode-uri": "^3.0.8" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.35.tgz", + "integrity": "sha512-BUmHaR1J+O+CKZ9uJucdVTEr1LHsdyvv7vG3eNRhK3CczEHeMd/LtsHAuD7PbrxvI2envCY2v7HI1vC1aBRzKw==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.3", + "@vue/shared": "3.5.35", + "entities": "^7.0.1", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.35.tgz", + "integrity": "sha512-k+bprkXxuqhVajgTx5mUHuir7TwQzUKOWR40ng1ncAqQRPnrLngGGgqVEEhOnTMlc8btHYVKmrP8s5Qyg0hvYA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.35", + "@vue/shared": "3.5.35" + } + }, + "node_modules/@vue/compiler-sfc": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.35.tgz", + "integrity": "sha512-G5VPMcXTSywXBgtFOZOnHKBxKSrwXUcvY1iaF5/hRcy7t0J6CH/d8ha9F4nzi00Fax1eLV0QHM7v4mQu68jydw==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.29.3", + "@vue/compiler-core": "3.5.35", + "@vue/compiler-dom": "3.5.35", + "@vue/compiler-ssr": "3.5.35", + "@vue/shared": "3.5.35", + "estree-walker": "^2.0.2", + "magic-string": "^0.30.21", + "postcss": "^8.5.15", + "source-map-js": "^1.2.1" + } + }, + "node_modules/@vue/compiler-ssr": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.35.tgz", + "integrity": "sha512-rGhAeXgdM7/ffTJGXT69rCCdTmjDewnFuUZfBQQHTdcEBeWdT5HCGY60y2ytLJr9/Dsu7IntUi5z/w0h6Rjnzw==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.35", + "@vue/shared": "3.5.35" + } + }, + "node_modules/@vue/devtools-api": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.9.tgz", + "integrity": "sha512-kIE8wvwlcZ6TJTbNeU2HQNtaxLx3a84aotTITUuL/4bzfPxzajGBOoqjMhwZJ8L9qFYDU/lAYMEEm11dnZOD6g==", + "license": "MIT", + "dependencies": { + "@vue/devtools-kit": "^7.7.9" + } + }, + "node_modules/@vue/devtools-kit": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.9.tgz", + "integrity": "sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==", + "license": "MIT", + "dependencies": { + "@vue/devtools-shared": "^7.7.9", + "birpc": "^2.3.0", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1", + "superjson": "^2.2.2" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.9.tgz", + "integrity": "sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==", + "license": "MIT", + "dependencies": { + "rfdc": "^1.4.1" + } + }, + "node_modules/@vue/language-core": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-3.3.3.tgz", + "integrity": "sha512-X6p+7nfY7vVT6dQwUJ+v0Jfq/lwIfhL2jMi91dQ3ln4hnlGXlxsDu/FNkeyHYgvYtyQy18ZX76IZy7X4diDbiQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "2.4.28", + "@vue/compiler-dom": "^3.5.0", + "@vue/shared": "^3.5.0", + "alien-signals": "^3.2.0", + "muggle-string": "^0.4.1", + "path-browserify": "^1.0.1", + "picomatch": "^4.0.4" + } + }, + "node_modules/@vue/reactivity": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.35.tgz", + "integrity": "sha512-tVc+SsHConvh/Lz64qq1pP3rYArBmK42xonovEcxY74SQtvctZodG/zhq54P5dr38cVuw25d27cPNRdlMidpGQ==", + "license": "MIT", + "dependencies": { + "@vue/shared": "3.5.35" + } + }, + "node_modules/@vue/runtime-core": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.35.tgz", + "integrity": "sha512-A/xFNX9loIcWDygeQuNCfKuh0CoYBzxhqEMNah5TSFg9Z53DrFYEN2qi5CU9necjM1OWYegYREUTHmXTmhfXtg==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.35", + "@vue/shared": "3.5.35" + } + }, + "node_modules/@vue/runtime-dom": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.35.tgz", + "integrity": "sha512-odrJ1C391dbGnyDRh8U+rnP7J2amIEzfmRk5vXy7xi3aZhEXofTvpi0T4HJb6jlNqQZTNPR5MPHSB3RHNkIORA==", + "license": "MIT", + "dependencies": { + "@vue/reactivity": "3.5.35", + "@vue/runtime-core": "3.5.35", + "@vue/shared": "3.5.35", + "csstype": "^3.2.3" + } + }, + "node_modules/@vue/server-renderer": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.35.tgz", + "integrity": "sha512-NkebSOYdB97wi8OQcO3HqzZSlymJi/aWsN/7h74OSVhRTm6qGs3Jp3e0rCXynmWwSlKeRrnlIug+ilYoHBmQDA==", + "license": "MIT", + "dependencies": { + "@vue/compiler-ssr": "3.5.35", + "@vue/shared": "3.5.35" + }, + "peerDependencies": { + "vue": "3.5.35" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.35.tgz", + "integrity": "sha512-zSbjL7gRXwks2ZQLRGCajBtBXEOXW9Ddhn/HvSdrGkE2dqGnumzW8XtusRrxrE9LvqtiqDXQ+A60Hp6mvdYxfA==", + "license": "MIT" + }, + "node_modules/@vue/tsconfig": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/@vue/tsconfig/-/tsconfig-0.9.1.tgz", + "integrity": "sha512-buvjm+9NzLCJL29KY1j1991YYJ5e6275OiK+G4jtmfIb+z4POywbdm0wXusT9adVWqe0xqg70TbI7+mRx4uU9w==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "typescript": ">= 5.8", + "vue": "^3.4.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + }, + "vue": { + "optional": true + } + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "license": "MIT", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/alien-signals": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/alien-signals/-/alien-signals-3.2.1.tgz", + "integrity": "sha512-I8FjmltrfnDFoZedi5CG8DghVYNhzb/Ijluz7tCSJH0xpd0484Kowhbb1XDYOxfJpU1p5wnM2X54dA+IfGyD1g==", + "dev": true, + "license": "MIT" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/axios": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.16.1.tgz", + "integrity": "sha512-caYkukvroVPO8KrzuJEb50Hm07KwfBZPEC3VeFHTsqWHvKTsy54hjJz9BS/cdaypROE2rH6xvm9mHX4fgWkr3A==", + "license": "MIT", + "dependencies": { + "follow-redirects": "^1.16.0", + "form-data": "^4.0.5", + "https-proxy-agent": "^5.0.1", + "proxy-from-env": "^2.1.0" + } + }, + "node_modules/birpc": { + "version": "2.9.0", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.9.0.tgz", + "integrity": "sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/copy-anything": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-4.0.5.tgz", + "integrity": "sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==", + "license": "MIT", + "dependencies": { + "is-what": "^5.2.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/csstype": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz", + "integrity": "sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==", + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-libc": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz", + "integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==", + "dev": true, + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/entities": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/entities/-/entities-7.0.1.tgz", + "integrity": "sha512-TWrgLOFUQTH994YUyl1yT4uyavY5nNB5muff+RtWaqNVCAK408b5ZnnbNAUEWLTCpum9w6arT70i1XdQ4UeOPA==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.2.tgz", + "integrity": "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz", + "integrity": "sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.6", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "license": "MIT" + }, + "node_modules/fdir": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz", + "integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12.0.0" + }, + "peerDependencies": { + "picomatch": "^3 || ^4" + }, + "peerDependenciesMeta": { + "picomatch": { + "optional": true + } + } + }, + "node_modules/follow-redirects": { + "version": "1.16.0", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.16.0.tgz", + "integrity": "sha512-y5rN/uOsadFT/JfYwhxRS5R7Qce+g3zG97+JrtFZlC9klX/W5hD7iiLzScI4nZqUS7DNUdhPgw4xI8W2LuXlUw==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "license": "MIT", + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.5.tgz", + "integrity": "sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "es-set-tostringtag": "^2.1.0", + "hasown": "^2.0.2", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", + "function-bind": "^1.1.2", + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/gopd": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hasown": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.4.tgz", + "integrity": "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/hookable": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", + "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", + "license": "MIT" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "license": "MIT", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/is-what": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-5.5.0.tgz", + "integrity": "sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==", + "license": "MIT", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/lightningcss": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz", + "integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==", + "dev": true, + "license": "MPL-2.0", + "dependencies": { + "detect-libc": "^2.0.3" + }, + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "lightningcss-android-arm64": "1.32.0", + "lightningcss-darwin-arm64": "1.32.0", + "lightningcss-darwin-x64": "1.32.0", + "lightningcss-freebsd-x64": "1.32.0", + "lightningcss-linux-arm-gnueabihf": "1.32.0", + "lightningcss-linux-arm64-gnu": "1.32.0", + "lightningcss-linux-arm64-musl": "1.32.0", + "lightningcss-linux-x64-gnu": "1.32.0", + "lightningcss-linux-x64-musl": "1.32.0", + "lightningcss-win32-arm64-msvc": "1.32.0", + "lightningcss-win32-x64-msvc": "1.32.0" + } + }, + "node_modules/lightningcss-android-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz", + "integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-arm64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz", + "integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-darwin-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz", + "integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-freebsd-x64": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz", + "integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm-gnueabihf": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz", + "integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz", + "integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-arm64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz", + "integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==", + "cpu": [ + "arm64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-gnu": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz", + "integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "glibc" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-linux-x64-musl": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz", + "integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==", + "cpu": [ + "x64" + ], + "dev": true, + "libc": [ + "musl" + ], + "license": "MPL-2.0", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-arm64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz", + "integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/lightningcss-win32-x64-msvc": { + "version": "1.32.0", + "resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz", + "integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MPL-2.0", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 12.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/magic-string": { + "version": "0.30.21", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz", + "integrity": "sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.5" + } + }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/muggle-string": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.4.1.tgz", + "integrity": "sha512-VNTrAak/KhO2i8dqqnqnAHOa3cYBwXEZe9h+D5h/1ZqFSTEFHdM65lR7RoIqq3tBBYavsOXV84NoHXZ0AkPyqQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz", + "integrity": "sha512-ZB9RH/39qpq5Vu6Y+NmUaFhQR6pp+M2Xt76XBnEwDaGcVAqhlvxrl3B2bKS5D3NH3QR76v3aSrKaF/Kiy7lEtQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "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==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz", + "integrity": "sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pinia": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-3.0.4.tgz", + "integrity": "sha512-l7pqLUFTI/+ESXn6k3nu30ZIzW5E2WZF/LaHJEpoq6ElcLD+wduZoB2kBN19du6K/4FDpPMazY2wJr+IndBtQw==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^7.7.7" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.5.0", + "vue": "^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/postcss": { + "version": "8.5.15", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz", + "integrity": "sha512-FfR8sjd4em2T6fb3I2MwAJU7HWVMr9zba+enmQeeWFfCbm+UOC/0X4DS8XtpUTMwWMGbjKYP7xjfNekzyGmB3A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.12", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/proxy-from-env": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-2.1.0.tgz", + "integrity": "sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "license": "MIT" + }, + "node_modules/rolldown": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.2.tgz", + "integrity": "sha512-oZx5zVDtVB44AW3eaifgDml1gWRDZGvjcfdxonE4swNPG98PrrXjaO/KrnUjzlMnztCCRVlUueA1kCXhARGk6g==", + "dev": true, + "license": "MIT", + "dependencies": { + "@oxc-project/types": "=0.132.0", + "@rolldown/pluginutils": "^1.0.0" + }, + "bin": { + "rolldown": "bin/cli.mjs" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "optionalDependencies": { + "@rolldown/binding-android-arm64": "1.0.2", + "@rolldown/binding-darwin-arm64": "1.0.2", + "@rolldown/binding-darwin-x64": "1.0.2", + "@rolldown/binding-freebsd-x64": "1.0.2", + "@rolldown/binding-linux-arm-gnueabihf": "1.0.2", + "@rolldown/binding-linux-arm64-gnu": "1.0.2", + "@rolldown/binding-linux-arm64-musl": "1.0.2", + "@rolldown/binding-linux-ppc64-gnu": "1.0.2", + "@rolldown/binding-linux-s390x-gnu": "1.0.2", + "@rolldown/binding-linux-x64-gnu": "1.0.2", + "@rolldown/binding-linux-x64-musl": "1.0.2", + "@rolldown/binding-openharmony-arm64": "1.0.2", + "@rolldown/binding-wasm32-wasi": "1.0.2", + "@rolldown/binding-win32-arm64-msvc": "1.0.2", + "@rolldown/binding-win32-x64-msvc": "1.0.2" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/speakingurl": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", + "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/superjson": { + "version": "2.2.6", + "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.6.tgz", + "integrity": "sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==", + "license": "MIT", + "dependencies": { + "copy-anything": "^4" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/tinyglobby": { + "version": "0.2.16", + "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.16.tgz", + "integrity": "sha512-pn99VhoACYR8nFHhxqix+uvsbXineAasWm5ojXoN8xEwK5Kd3/TrhNn1wByuD52UxWRLy8pu+kRMniEi6Eq9Zg==", + "dev": true, + "license": "MIT", + "dependencies": { + "fdir": "^6.5.0", + "picomatch": "^4.0.4" + }, + "engines": { + "node": ">=12.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/SuperchupuDev" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "license": "0BSD", + "optional": true + }, + "node_modules/typescript": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-6.0.3.tgz", + "integrity": "sha512-y2TvuxSZPDyQakkFRPZHKFm+KKVqIisdg9/CZwm9ftvKXLP8NRWj38/ODjNbr43SsoXqNuAisEf1GdCxqWcdBw==", + "devOptional": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "7.16.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.16.0.tgz", + "integrity": "sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==", + "dev": true, + "license": "MIT" + }, + "node_modules/vite": { + "version": "8.0.14", + "resolved": "https://registry.npmjs.org/vite/-/vite-8.0.14.tgz", + "integrity": "sha512-s4BJJ+5y1pYL6Otw51FHhVJQhPnuRinKig64g/1+EUNaJsd3gCKdD31IPFvswUgW9/60QT9oFHbZHbQK5imcxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "lightningcss": "^1.32.0", + "picomatch": "^4.0.4", + "postcss": "^8.5.15", + "rolldown": "1.0.2", + "tinyglobby": "^0.2.16" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^20.19.0 || >=22.12.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^20.19.0 || >=22.12.0", + "@vitejs/devtools": "^0.1.18", + "esbuild": "^0.27.0 || ^0.28.0", + "jiti": ">=1.21.0", + "less": "^4.0.0", + "sass": "^1.70.0", + "sass-embedded": "^1.70.0", + "stylus": ">=0.54.8", + "sugarss": "^5.0.0", + "terser": "^5.16.0", + "tsx": "^4.8.1", + "yaml": "^2.4.2" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "@vitejs/devtools": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "jiti": { + "optional": true + }, + "less": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + }, + "tsx": { + "optional": true + }, + "yaml": { + "optional": true + } + } + }, + "node_modules/vscode-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.1.0.tgz", + "integrity": "sha512-/BpdSx+yCQGnCvecbyXdxHDkuk55/G3xwnC0GqY4gmQ3j+A+g8kzzgB4Nk/SINjqn6+waqw3EgbVF2QKExkRxQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/vue": { + "version": "3.5.35", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.35.tgz", + "integrity": "sha512-cx89fnr+0kVGHiNFG6y6s0bdjypJRFNZn6x3WPstNdQR1bi1mbB7h4v5IBGTsPJU3nK1+0Iqj3Zf+hZWMieR4Q==", + "license": "MIT", + "dependencies": { + "@vue/compiler-dom": "3.5.35", + "@vue/compiler-sfc": "3.5.35", + "@vue/runtime-dom": "3.5.35", + "@vue/server-renderer": "3.5.35", + "@vue/shared": "3.5.35" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/vue-router": { + "version": "4.6.4", + "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.6.4.tgz", + "integrity": "sha512-Hz9q5sa33Yhduglwz6g9skT8OBPii+4bFn88w6J+J4MfEo4KRRpmiNG/hHHkdbRFlLBOqxN8y8gf2Fb0MTUgVg==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^6.6.4" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "vue": "^3.5.0" + } + }, + "node_modules/vue-router/node_modules/@vue/devtools-api": { + "version": "6.6.4", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.4.tgz", + "integrity": "sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==", + "license": "MIT" + }, + "node_modules/vue-tsc": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-3.3.3.tgz", + "integrity": "sha512-SWUEG7YRUeDJHT7Xsuhf02elYX2gxPzzAII7OxDAh4KNOr4QHQ0Lls0YfnaO5GNd560CwVa2HTfdqmA5MqvRqQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/typescript": "2.4.28", + "@vue/language-core": "3.3.3" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": ">=5.0.0" + } + } + } +} diff --git a/frontend/package.json b/frontend/package.json new file mode 100644 index 0000000..4e05b5f --- /dev/null +++ b/frontend/package.json @@ -0,0 +1,25 @@ +{ + "name": "frontend", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vue-tsc -b && vite build", + "preview": "vite preview" + }, + "dependencies": { + "axios": "^1.16.1", + "pinia": "^3.0.4", + "vue": "^3.5.34", + "vue-router": "^4.6.4" + }, + "devDependencies": { + "@types/node": "^24.12.3", + "@vitejs/plugin-vue": "^6.0.6", + "@vue/tsconfig": "^0.9.1", + "typescript": "~6.0.2", + "vite": "^8.0.12", + "vue-tsc": "^3.2.8" + } +} diff --git a/frontend/public/favicon.svg b/frontend/public/favicon.svg new file mode 100644 index 0000000..6893eb1 --- /dev/null +++ b/frontend/public/favicon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/public/icons.svg b/frontend/public/icons.svg new file mode 100644 index 0000000..e952219 --- /dev/null +++ b/frontend/public/icons.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/frontend/src/App.vue b/frontend/src/App.vue new file mode 100644 index 0000000..a78fb6f --- /dev/null +++ b/frontend/src/App.vue @@ -0,0 +1,7 @@ + + + diff --git a/frontend/src/api/client.ts b/frontend/src/api/client.ts new file mode 100644 index 0000000..efb916b --- /dev/null +++ b/frontend/src/api/client.ts @@ -0,0 +1,38 @@ +import axios from 'axios' + +// Zentraler HTTP-Client für die Symfony-API. +// Im Dev läuft alles über den Vite-Proxy (/api → :8080). +const client = axios.create({ + baseURL: import.meta.env.VITE_API_BASE_URL ?? '/api', + headers: { + Accept: 'application/ld+json', + }, +}) + +// JWT (falls vorhanden) an jede Anfrage hängen +client.interceptors.request.use((config) => { + const token = localStorage.getItem('token') + if (token) { + config.headers.Authorization = `Bearer ${token}` + } + return config +}) + +// Bei abgelaufenem/ungültigem Token automatisch ausloggen +client.interceptors.response.use( + (res) => res, + (error) => { + const status = error?.response?.status + const url: string = error?.config?.url ?? '' + if (status === 401 && !url.includes('/login')) { + localStorage.removeItem('token') + localStorage.removeItem('user') + if (location.pathname !== '/login') { + location.href = '/login' + } + } + return Promise.reject(error) + }, +) + +export default client diff --git a/frontend/src/api/resources.ts b/frontend/src/api/resources.ts new file mode 100644 index 0000000..0a9d66a --- /dev/null +++ b/frontend/src/api/resources.ts @@ -0,0 +1,39 @@ +import client from './client' + +// Minimaler Wrapper um die API-Platform-Resourcen (Hydra/JSON-LD). + +export interface Collection { + member: T[] + totalItems: number +} + +const LD = { headers: { 'Content-Type': 'application/ld+json' } } + +export async function list( + resource: string, + params: Record = {}, +): Promise> { + const { data } = await client.get(`/${resource}`, { params }) + return { member: data.member ?? [], totalItems: data.totalItems ?? 0 } +} + +export async function getOne(iri: string): Promise { + const { data } = await client.get(iri.replace(/^\/api/, '')) + return data as T +} + +export async function create(resource: string, payload: Record): Promise { + const { data } = await client.post(`/${resource}`, payload, LD) + return data as T +} + +export async function update(iri: string, payload: Record): Promise { + const { data } = await client.patch(iri.replace(/^\/api/, ''), payload, { + headers: { 'Content-Type': 'application/merge-patch+json' }, + }) + return data as T +} + +export async function remove(iri: string): Promise { + await client.delete(iri.replace(/^\/api/, '')) +} diff --git a/frontend/src/assets/brand.css b/frontend/src/assets/brand.css new file mode 100644 index 0000000..ac472b4 --- /dev/null +++ b/frontend/src/assets/brand.css @@ -0,0 +1,78 @@ +/* vcard4reseller — Design-Tokens (orientiert an vcard4reseller.de) */ +:root { + --psc-orange: #f58220; + --psc-orange-dark: #d96500; + --psc-orange-soft: #fff2e7; + --psc-orange-soft-2: #fff8f1; + --psc-border: #f4d4bb; + --text: #343434; + --dark: #222222; + --sidebar: #1d1d1f; + --sidebar-hover: #2a2a2d; + --muted: #6f6f6f; + --bg: #f7f7f7; + --white: #ffffff; + --success: #238636; + --danger: #c0392b; + --line: #ececec; + --shadow: 0 18px 45px rgba(30, 30, 30, 0.10); + --shadow-sm: 0 6px 18px rgba(30, 30, 30, 0.08); + --radius: 18px; + --radius-sm: 12px; + --font: Arial, Helvetica, sans-serif; +} + +* { box-sizing: border-box; } + +html, body, #app { height: 100%; } + +body { + margin: 0; + font-family: var(--font); + color: var(--text); + background: var(--bg); + line-height: 1.5; + -webkit-font-smoothing: antialiased; +} + +h1, h2, h3 { color: var(--dark); font-weight: 700; margin: 0; } +a { color: var(--psc-orange-dark); text-decoration: none; } + +/* Wortmarke */ +.brand-logo { display: inline-flex; align-items: center; font-weight: 700; font-size: 1.1rem; } +.brand-logo .tag { background: var(--psc-orange); color: #fff; padding: 1px 9px; border-radius: 999px; margin-left: 3px; } + +/* Buttons */ +.btn { + display: inline-flex; align-items: center; gap: .5rem; + padding: .6rem 1.1rem; border-radius: var(--radius-sm); + font-weight: 600; font-size: .9rem; border: 1px solid transparent; + cursor: pointer; font-family: var(--font); + transition: transform .08s ease, background .15s ease, box-shadow .15s ease; +} +.btn:hover { transform: translateY(-1px); } +.btn:disabled { opacity: .55; cursor: not-allowed; transform: none; } +.btn-primary { background: var(--psc-orange); color: #fff; box-shadow: var(--shadow-sm); } +.btn-primary:hover { background: var(--psc-orange-dark); } +.btn-soft { background: var(--psc-orange-soft); color: var(--psc-orange-dark); } +.btn-ghost { background: #fff; color: var(--dark); border-color: #e3e3e3; } +.btn-sm { padding: .35rem .6rem; font-size: .82rem; } + +/* Karten */ +.card { background: #fff; border-radius: var(--radius); box-shadow: var(--shadow-sm); border: 1px solid #f0f0f0; } + +/* Form-Felder */ +.field { display: flex; flex-direction: column; gap: .3rem; margin-bottom: .9rem; } +.field label { font-size: .8rem; font-weight: 600; color: var(--muted); } +.input, select.input, textarea.input { + padding: .6rem .75rem; border: 1px solid #e0e0e0; border-radius: var(--radius-sm); + font-size: .92rem; font-family: var(--font); color: var(--text); background: #fff; +} +.input:focus { outline: none; border-color: var(--psc-orange); box-shadow: 0 0 0 3px var(--psc-orange-soft); } + +/* Status-Badge */ +.badge { display: inline-block; padding: .15rem .6rem; border-radius: 999px; font-size: .75rem; font-weight: 600; } +.badge-active { background: #e7f6ec; color: var(--success); } +.badge-inactive { background: #f0f0f0; color: var(--muted); } + +.muted { color: var(--muted); } diff --git a/frontend/src/assets/hero.png b/frontend/src/assets/hero.png new file mode 100644 index 0000000000000000000000000000000000000000..02251f4b956c55af2d76fd0788124d7eee2b45eb GIT binary patch literal 13057 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 P00000NkvXXu0mjft=yBf literal 0 HcmV?d00001 diff --git a/frontend/src/assets/vite.svg b/frontend/src/assets/vite.svg new file mode 100644 index 0000000..5101b67 --- /dev/null +++ b/frontend/src/assets/vite.svg @@ -0,0 +1 @@ +Vite diff --git a/frontend/src/assets/vue.svg b/frontend/src/assets/vue.svg new file mode 100644 index 0000000..770e9d3 --- /dev/null +++ b/frontend/src/assets/vue.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/frontend/src/components/HelloWorld.vue b/frontend/src/components/HelloWorld.vue new file mode 100644 index 0000000..c232865 --- /dev/null +++ b/frontend/src/components/HelloWorld.vue @@ -0,0 +1,95 @@ + + + diff --git a/frontend/src/components/Modal.vue b/frontend/src/components/Modal.vue new file mode 100644 index 0000000..2caa391 --- /dev/null +++ b/frontend/src/components/Modal.vue @@ -0,0 +1,32 @@ + + + + + diff --git a/frontend/src/layouts/DashboardLayout.vue b/frontend/src/layouts/DashboardLayout.vue new file mode 100644 index 0000000..5f530d7 --- /dev/null +++ b/frontend/src/layouts/DashboardLayout.vue @@ -0,0 +1,91 @@ + + + + + diff --git a/frontend/src/main.ts b/frontend/src/main.ts new file mode 100644 index 0000000..260445c --- /dev/null +++ b/frontend/src/main.ts @@ -0,0 +1,10 @@ +import { createApp } from 'vue' +import { createPinia } from 'pinia' +import './assets/brand.css' +import App from './App.vue' +import router from './router' + +const app = createApp(App) +app.use(createPinia()) +app.use(router) +app.mount('#app') diff --git a/frontend/src/router/index.ts b/frontend/src/router/index.ts new file mode 100644 index 0000000..fd4b343 --- /dev/null +++ b/frontend/src/router/index.ts @@ -0,0 +1,41 @@ +import { createRouter, createWebHistory } from 'vue-router' +import { useAuthStore } from '@/stores/auth' + +const router = createRouter({ + history: createWebHistory(), + routes: [ + { path: '/', redirect: '/app' }, + { + path: '/login', + name: 'login', + component: () => import('@/views/LoginView.vue'), + }, + { + path: '/app', + component: () => import('@/layouts/DashboardLayout.vue'), + meta: { requiresAuth: true }, + children: [ + { path: '', name: 'dashboard', component: () => import('@/views/DashboardView.vue') }, + { path: 'resellers', name: 'resellers', component: () => import('@/views/ResellersView.vue') }, + { path: 'companies', name: 'companies', component: () => import('@/views/CompaniesView.vue') }, + { path: 'employees', name: 'employees', component: () => import('@/views/EmployeesView.vue') }, + { path: 'locations', name: 'locations', component: () => import('@/views/LocationsView.vue') }, + { path: 'domains', name: 'domains', component: () => import('@/views/DomainsView.vue') }, + { path: 'design', name: 'design', component: () => import('@/views/DesignView.vue') }, + { path: 'settings', name: 'settings', component: () => import('@/views/PlaceholderView.vue'), props: { title: 'Einstellungen' } }, + ], + }, + ], +}) + +router.beforeEach((to) => { + const auth = useAuthStore() + if (to.meta.requiresAuth && !auth.isAuthenticated) { + return { name: 'login', query: { redirect: to.fullPath } } + } + if (to.name === 'login' && auth.isAuthenticated) { + return { path: '/app' } + } +}) + +export default router diff --git a/frontend/src/stores/auth.ts b/frontend/src/stores/auth.ts new file mode 100644 index 0000000..3011327 --- /dev/null +++ b/frontend/src/stores/auth.ts @@ -0,0 +1,55 @@ +import { defineStore } from 'pinia' +import { ref, computed } from 'vue' +import client from '@/api/client' + +export interface TenantRef { + id: string + name: string +} + +export interface CurrentUser { + id: string + email: string + roles: string[] + reseller: TenantRef | null + company: TenantRef | null +} + +export const useAuthStore = defineStore('auth', () => { + const token = ref(localStorage.getItem('token')) + const user = ref( + JSON.parse(localStorage.getItem('user') || 'null'), + ) + + const isAuthenticated = computed(() => !!token.value) + const roles = computed(() => user.value?.roles ?? []) + const isPlatformAdmin = computed(() => roles.value.includes('ROLE_PLATFORM_ADMIN')) + const isResellerAdmin = computed(() => roles.value.includes('ROLE_RESELLER_ADMIN')) + const isCompanyAdmin = computed(() => roles.value.includes('ROLE_COMPANY_ADMIN')) + + async function login(email: string, password: string) { + const { data } = await client.post('/login', { email, password }) + token.value = data.token + localStorage.setItem('token', data.token) + await fetchMe() + } + + async function fetchMe() { + const { data } = await client.get('/me') + user.value = data + localStorage.setItem('user', JSON.stringify(data)) + } + + function logout() { + token.value = null + user.value = null + localStorage.removeItem('token') + localStorage.removeItem('user') + } + + return { + token, user, isAuthenticated, roles, + isPlatformAdmin, isResellerAdmin, isCompanyAdmin, + login, fetchMe, logout, + } +}) diff --git a/frontend/src/style.css b/frontend/src/style.css new file mode 100644 index 0000000..527d4fb --- /dev/null +++ b/frontend/src/style.css @@ -0,0 +1,296 @@ +:root { + --text: #6b6375; + --text-h: #08060d; + --bg: #fff; + --border: #e5e4e7; + --code-bg: #f4f3ec; + --accent: #aa3bff; + --accent-bg: rgba(170, 59, 255, 0.1); + --accent-border: rgba(170, 59, 255, 0.5); + --social-bg: rgba(244, 243, 236, 0.5); + --shadow: + rgba(0, 0, 0, 0.1) 0 10px 15px -3px, rgba(0, 0, 0, 0.05) 0 4px 6px -2px; + + --sans: system-ui, 'Segoe UI', Roboto, sans-serif; + --heading: system-ui, 'Segoe UI', Roboto, sans-serif; + --mono: ui-monospace, Consolas, monospace; + + font: 18px/145% var(--sans); + letter-spacing: 0.18px; + color-scheme: light dark; + color: var(--text); + background: var(--bg); + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + + @media (max-width: 1024px) { + font-size: 16px; + } +} + +@media (prefers-color-scheme: dark) { + :root { + --text: #9ca3af; + --text-h: #f3f4f6; + --bg: #16171d; + --border: #2e303a; + --code-bg: #1f2028; + --accent: #c084fc; + --accent-bg: rgba(192, 132, 252, 0.15); + --accent-border: rgba(192, 132, 252, 0.5); + --social-bg: rgba(47, 48, 58, 0.5); + --shadow: + rgba(0, 0, 0, 0.4) 0 10px 15px -3px, rgba(0, 0, 0, 0.25) 0 4px 6px -2px; + } + + #social .button-icon { + filter: invert(1) brightness(2); + } +} + +body { + margin: 0; +} + +h1, +h2 { + font-family: var(--heading); + font-weight: 500; + color: var(--text-h); +} + +h1 { + font-size: 56px; + letter-spacing: -1.68px; + margin: 32px 0; + @media (max-width: 1024px) { + font-size: 36px; + margin: 20px 0; + } +} +h2 { + font-size: 24px; + line-height: 118%; + letter-spacing: -0.24px; + margin: 0 0 8px; + @media (max-width: 1024px) { + font-size: 20px; + } +} +p { + margin: 0; +} + +code, +.counter { + font-family: var(--mono); + display: inline-flex; + border-radius: 4px; + color: var(--text-h); +} + +code { + font-size: 15px; + line-height: 135%; + padding: 4px 8px; + background: var(--code-bg); +} + +.counter { + font-size: 16px; + padding: 5px 10px; + border-radius: 5px; + color: var(--accent); + background: var(--accent-bg); + border: 2px solid transparent; + transition: border-color 0.3s; + margin-bottom: 24px; + + &:hover { + border-color: var(--accent-border); + } + &:focus-visible { + outline: 2px solid var(--accent); + outline-offset: 2px; + } +} + +.hero { + position: relative; + + .base, + .framework, + .vite { + inset-inline: 0; + margin: 0 auto; + } + + .base { + width: 170px; + position: relative; + z-index: 0; + } + + .framework, + .vite { + position: absolute; + } + + .framework { + z-index: 1; + top: 34px; + height: 28px; + transform: perspective(2000px) rotateZ(300deg) rotateX(44deg) rotateY(39deg) + scale(1.4); + } + + .vite { + z-index: 0; + top: 107px; + height: 26px; + width: auto; + transform: perspective(2000px) rotateZ(300deg) rotateX(40deg) rotateY(39deg) + scale(0.8); + } +} + +#app { + width: 1126px; + max-width: 100%; + margin: 0 auto; + text-align: center; + border-inline: 1px solid var(--border); + min-height: 100svh; + display: flex; + flex-direction: column; + box-sizing: border-box; +} + +#center { + display: flex; + flex-direction: column; + gap: 25px; + place-content: center; + place-items: center; + flex-grow: 1; + + @media (max-width: 1024px) { + padding: 32px 20px 24px; + gap: 18px; + } +} + +#next-steps { + display: flex; + border-top: 1px solid var(--border); + text-align: left; + + & > div { + flex: 1 1 0; + padding: 32px; + @media (max-width: 1024px) { + padding: 24px 20px; + } + } + + .icon { + margin-bottom: 16px; + width: 22px; + height: 22px; + } + + @media (max-width: 1024px) { + flex-direction: column; + text-align: center; + } +} + +#docs { + border-right: 1px solid var(--border); + + @media (max-width: 1024px) { + border-right: none; + border-bottom: 1px solid var(--border); + } +} + +#next-steps ul { + list-style: none; + padding: 0; + display: flex; + gap: 8px; + margin: 32px 0 0; + + .logo { + height: 18px; + } + + a { + color: var(--text-h); + font-size: 16px; + border-radius: 6px; + background: var(--social-bg); + display: flex; + padding: 6px 12px; + align-items: center; + gap: 8px; + text-decoration: none; + transition: box-shadow 0.3s; + + &:hover { + box-shadow: var(--shadow); + } + .button-icon { + height: 18px; + width: 18px; + } + } + + @media (max-width: 1024px) { + margin-top: 20px; + flex-wrap: wrap; + justify-content: center; + + li { + flex: 1 1 calc(50% - 8px); + } + + a { + width: 100%; + justify-content: center; + box-sizing: border-box; + } + } +} + +#spacer { + height: 88px; + border-top: 1px solid var(--border); + @media (max-width: 1024px) { + height: 48px; + } +} + +.ticks { + position: relative; + width: 100%; + + &::before, + &::after { + content: ''; + position: absolute; + top: -4.5px; + border: 5px solid transparent; + } + + &::before { + left: 0; + border-left-color: var(--border); + } + &::after { + right: 0; + border-right-color: var(--border); + } +} diff --git a/frontend/src/views/CompaniesView.vue b/frontend/src/views/CompaniesView.vue new file mode 100644 index 0000000..cd3d2e8 --- /dev/null +++ b/frontend/src/views/CompaniesView.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/frontend/src/views/DashboardView.vue b/frontend/src/views/DashboardView.vue new file mode 100644 index 0000000..db3cb1b --- /dev/null +++ b/frontend/src/views/DashboardView.vue @@ -0,0 +1,59 @@ + + + + + diff --git a/frontend/src/views/DesignView.vue b/frontend/src/views/DesignView.vue new file mode 100644 index 0000000..dd2a43f --- /dev/null +++ b/frontend/src/views/DesignView.vue @@ -0,0 +1,146 @@ + + + + + diff --git a/frontend/src/views/DomainsView.vue b/frontend/src/views/DomainsView.vue new file mode 100644 index 0000000..7f3b7b9 --- /dev/null +++ b/frontend/src/views/DomainsView.vue @@ -0,0 +1,118 @@ + + + + + diff --git a/frontend/src/views/EmployeesView.vue b/frontend/src/views/EmployeesView.vue new file mode 100644 index 0000000..1e4950a --- /dev/null +++ b/frontend/src/views/EmployeesView.vue @@ -0,0 +1,260 @@ + + + + + diff --git a/frontend/src/views/HomeView.vue b/frontend/src/views/HomeView.vue new file mode 100644 index 0000000..4b78134 --- /dev/null +++ b/frontend/src/views/HomeView.vue @@ -0,0 +1,23 @@ + + + diff --git a/frontend/src/views/LocationsView.vue b/frontend/src/views/LocationsView.vue new file mode 100644 index 0000000..dca740d --- /dev/null +++ b/frontend/src/views/LocationsView.vue @@ -0,0 +1,110 @@ + + + + + diff --git a/frontend/src/views/LoginView.vue b/frontend/src/views/LoginView.vue new file mode 100644 index 0000000..460a59a --- /dev/null +++ b/frontend/src/views/LoginView.vue @@ -0,0 +1,65 @@ + + + + + diff --git a/frontend/src/views/PlaceholderView.vue b/frontend/src/views/PlaceholderView.vue new file mode 100644 index 0000000..66e248e --- /dev/null +++ b/frontend/src/views/PlaceholderView.vue @@ -0,0 +1,16 @@ + + + + + diff --git a/frontend/src/views/ResellersView.vue b/frontend/src/views/ResellersView.vue new file mode 100644 index 0000000..fe1182d --- /dev/null +++ b/frontend/src/views/ResellersView.vue @@ -0,0 +1,130 @@ + + + + + diff --git a/frontend/tsconfig.app.json b/frontend/tsconfig.app.json new file mode 100644 index 0000000..927dd5b --- /dev/null +++ b/frontend/tsconfig.app.json @@ -0,0 +1,19 @@ +{ + "extends": "@vue/tsconfig/tsconfig.dom.json", + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo", + "types": ["vite/client"], + + /* Path-Alias passend zu vite.config.ts */ + "paths": { + "@/*": ["./src/*"] + }, + + /* Linting */ + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["src/**/*.ts", "src/**/*.tsx", "src/**/*.vue"] +} diff --git a/frontend/tsconfig.json b/frontend/tsconfig.json new file mode 100644 index 0000000..1ffef60 --- /dev/null +++ b/frontend/tsconfig.json @@ -0,0 +1,7 @@ +{ + "files": [], + "references": [ + { "path": "./tsconfig.app.json" }, + { "path": "./tsconfig.node.json" } + ] +} diff --git a/frontend/tsconfig.node.json b/frontend/tsconfig.node.json new file mode 100644 index 0000000..d3c52ea --- /dev/null +++ b/frontend/tsconfig.node.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo", + "target": "es2023", + "lib": ["ES2023"], + "module": "esnext", + "types": ["node"], + "skipLibCheck": true, + + /* Bundler mode */ + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "moduleDetection": "force", + "noEmit": true, + + /* Linting */ + "noUnusedLocals": true, + "noUnusedParameters": true, + "erasableSyntaxOnly": true, + "noFallthroughCasesInSwitch": true + }, + "include": ["vite.config.ts"] +} diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts new file mode 100644 index 0000000..3dc6e5f --- /dev/null +++ b/frontend/vite.config.ts @@ -0,0 +1,24 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' +import { fileURLToPath, URL } from 'node:url' + +// https://vite.dev/config/ +export default defineConfig({ + plugins: [vue()], + resolve: { + alias: { + '@': fileURLToPath(new URL('./src', import.meta.url)), + }, + }, + server: { + host: true, + port: 5173, + proxy: { + // API des Symfony-Backends im Dev durchreichen → kein CORS-Problem + '/api': { + target: 'http://localhost:8080', + changeOrigin: true, + }, + }, + }, +})

T!S^ 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�!_wQU!q1f{F= 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