Commit Graph

24 Commits

Author SHA1 Message Date
8a3ef98c44 chore: entferne AuthApiClient, AuthTokenManager und DeviceInitializationConfig.jvm, da diese nicht mehr benötigt werden 2026-04-19 15:58:03 +02:00
e91b10daa3 JS-spezifische Module und Dateien entfernt, Multiplattform-Targets korrigiert
Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-18 14:16:29 +02:00
7bbb991e69 refactor(desktop, core): Onboarding zu DeviceInitialization umbenannt, Navigation und Screens angepasst
Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-04-18 11:10:05 +02:00
f719764914 chore(turnier-feature): remove unused ViewModels and UI components
- Removed `AbteilungViewModel`, `BewerbAnlegenViewModel`, `BewerbViewModel`, and `CreateBewerbWizardScreen`.
- Cleaned up related imports and unused domain models.
2026-04-13 14:38:16 +02:00
0e32999df4 feat(auth, ui): add Keycloak login flow and enhance LoginScreen UI
- Introduced `onKeycloakLogin` callback in LoginScreen for Keycloak-based authentication.
- Updated Login UI with "Login with Keycloak" button and loading indicator for OIDC flow.
- Implemented dividers and spacing for improved visual structure.

- Refactored LandingScreen into a separate file for better modularity and maintenance.
- Reintroduced LandingScreen features, hero section, and footer with enhanced composables.

- Added `composeHotReload` plugin and `uiTooling` dependency for development improvements.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-21 17:49:15 +01:00
499b93e100 Add registration tab to LoginScreen and implement OrganizerProfile screen 2026-03-20 23:57:21 +01:00
7f224f0d03 docs: add session log for Keycloak fixes and role-based dashboard POC
All checks were successful
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Successful in 8m0s
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Successful in 7m17s
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Successful in 4m7s
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Successful in 1m48s
- Logged details of the session addressing compiler warnings and roles in the dashboard POC under `docs/99_Journal/2026-03-19_Session_Log_POC_Rollen_Keycloak.md`.
- Documented Keycloak realm import challenges and resolution strategy for PostgreSQL volume reset.
- Verified JWT role extraction and dashboard routing logic for ADMIN and ORGANIZER roles.
- Included session outcomes and next steps for further validation and testing of the POC setup.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-19 17:45:20 +01:00
62264d9e02 refactor(ui, navigation): implement platform-specific routing and redesign components
- Added platform detection logic `currentPlatform()` in `PlatformType.js.kt`.
- Introduced platform-based behavior for LandingScreen, Dashboard, and Login flow.
- Replaced Row with FlowRow in PingScreen to improve button layout.
- Updated Meldestelle Dashboard with platform-specific headers and authentication checks.
- Adjusted AppHeader to accept `isAuthenticated` and `username` parameters.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-19 16:21:23 +01:00
38875a1040 refactor(auth): remove redundant semicolons in Sha256.kt
Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-16 11:00:21 +01:00
f7743aa7d9 fix(auth): correct typos, add suppression, and improve documentation clarity
- Fixed minor typos in comments for `LoginViewModel`, `OidcCallback`, and `AuthApiClient`.
- Added `@Suppress("REDUNDANT_CALL_OF_CONVERSION_METHOD")` in `Sha256.kt`.
- Improved phrasing and readability of function documentation across files.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-16 10:51:55 +01:00
92cb45f4f1 Fix: Align table formatting in Zora documentation and update Keycloak-related configurations
All checks were successful
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Successful in 7m42s
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Successful in 7m1s
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Successful in 2m58s
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Successful in 1m34s
2026-03-10 21:39:30 +01:00
15e253365a fix: wrap browser opening in withContext(Dispatchers.IO) for JVM OIDC callback
Ensures proper threading for desktop actions, preventing potential blocking issues during browser invocation.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-09 15:51:42 +01:00
b9a433f772 feat: implement OIDC PKCE flow for Keycloak login with frontend-client
Completed OIDC Authorization Code Flow with PKCE (S256) for JS and JVM platforms.
- Added `launchOidcFlow`, `consumePendingOidcCallback`, and `getOidcRedirectUri` with platform-specific implementations.
- Integrated SHA-256 and Base64URL helpers for PKCE.
- Updated `LoginViewModel` with OIDC logic (key handling, token exchange, state validation).
- Enhanced `LoginScreen` with an OIDC login button and loading spinner.
- Verified implementation with system hardening roadmap tasks.

Includes browser redirects for JS, localhost HTTP callback for JVM, and built-in Keycloak URL construction.

Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
2026-03-09 15:51:42 +01:00
994a3397c2 chore(infra): simplify Docker builds and remove unused WEB_BUILD_PROFILE
- Adjusted Dockerfile’s build process for production-only artifacts.
- Removed unused `WEB_BUILD_PROFILE` from `dc-gui.yaml`.
- Optimized Gradle settings for better caching and performance.
- Updated `.dockerignore` to include source packages previously excluded by mistake.
2026-02-01 21:17:22 +01:00
f00cc7681f chore(docs): update roadmap and add Sync Fix report, remove desktop-app from compose config
- Marked Phase 3 of roadmap as complete and adjusted next steps.
- Added detailed report documenting the Sync type mismatch resolution.
- Commented out the `desktop-app` service from `dc-gui.yaml`.
2026-02-01 18:48:00 +01:00
f78563f8c8 chore(frontend): refactor navigation and DI setup, remove unused shared module
- Replaced `initKoin` with `startKoin` for DI initialization consistency across platforms.
- Introduced `StateNavigationPort` with `StateFlow` to streamline navigation state management.
- Migrated `AppScreen` to sealed class with route mapping for better navigation handling.
- Deleted unused `frontend/shared` module and removed related dependencies from build files.
- Cleaned up legacy navigation and Redux-related code, aligning with MVVM architecture.
2026-02-01 13:46:39 +01:00
af0b7c5f9b chore(frontend): cleanup legacy code and improve localization consistency
- Removed deprecated `NotificationCard` component due to dependency on an outdated presentation layer.
- Translated comments and documentation to German for improved localization across `core.auth`, `ping-feature`, and `network`.
- Standardized comment formatting, improved doc clarity, and ensured consistent API documentation in all modules.
2026-02-01 12:00:10 +01:00
d0aef9e629 chore(docs, frontend): document and implement Web-App sync workaround for async driver issue
- Added session log documenting Web-App stabilization, including fixes for Webpack build and login issues.
- Implemented full-sync workaround in `PingEventRepositoryImpl` due to SQLDelight async driver limitations.
- Updated `PingDashboard` to display sync completion messages.
- Added `libs.sqldelight.coroutines` dependency and regenerated SQLDelight queries.
- Updated roadmap and journal with progress on frontend sync integration.
2026-01-27 23:26:18 +01:00
edb22ce864 chore(docs, frontend): document and implement Web-App sync workaround for async driver issue
- Added session log documenting Web-App stabilization, including fixes for Webpack build and login issues.
- Implemented full-sync workaround in `PingEventRepositoryImpl` due to SQLDelight async driver limitations.
- Updated `PingDashboard` to display sync completion messages.
- Added `libs.sqldelight.coroutines` dependency and regenerated SQLDelight queries.
- Updated roadmap and journal with progress on frontend sync integration.
2026-01-27 23:25:00 +01:00
637d610a5b refactor: enhance platform configuration, database schema handling, and Keycloak setup
Improved `PlatformConfig` API base URL resolution with enhanced logging and fallback logic. Revised database initialization with version checks, schema migration, and error handling. Updated Keycloak configuration to enable `Direct Access Grants` and refine CORS/redirect settings. Adjusted Webpack proxy settings for correct API routing.
2026-01-27 15:12:58 +01:00
48ee074dbd refactor: update Dockerfile paths, network module auth flow, and Keycloak config
Updated Dockerfiles to fix frontend path references after refactoring. Refactored `networkModule` to replace the `Auth` plugin with manual auth header injection for enhanced logout support. Adjusted Keycloak realm configuration to set default credentials as non-temporary. Improved error handling in `AuthApiClient` with detailed response messages.
2026-01-23 15:42:07 +01:00
e8124c047a refactor(auth, design-system): remove unused methods and annotations for cleanup
- Deleted obsolete methods such as `exchangeAuthorizationCode` and `logout` from the Auth module.
- Removed unused browser PKCE utilities and associated constants.
- Annotated unused components across the Design System with `@Suppress("unused")` for clarity.
- Simplified `LoginViewModel` to handle logout by clearing UI state directly.
2026-01-23 01:37:55 +01:00
ec97b62afa refactor(auth, design-system): remove unused methods and annotations for cleanup
- Deleted obsolete methods such as `exchangeAuthorizationCode` and `logout` from the Auth module.
- Removed unused browser PKCE utilities and associated constants.
- Annotated unused components across the Design System with `@Suppress("unused")` for clarity.
- Simplified `LoginViewModel` to handle logout by clearing UI state directly.
2026-01-23 01:36:46 +01:00
d7cf8200e1 refactor(auth): migrate Auth module from feature to core package
- Reorganized `auth-feature` into `core/auth` to improve architecture and modularity.
- Removed unused PKCE and OAuth callback utilities (`AuthCallbackParams`, `OAuthPkceService`).
- Updated imports and adjusted build scripts to reflect new module structure.
- Refactored `LoginScreen` and `PingScreen` to include `onBack` functionality in top bars for improved navigation.
- Corrected sync endpoint in `PingSyncService`.
2026-01-23 01:16:40 +01:00