Commit graph

124 commits

Author SHA1 Message Date
senke
4e0fc84d87 error-propagation: fix retry handlers and mark Action 3.4.1.3 complete 2026-01-11 17:40:21 +01:00
senke
31159a30a2 error-propagation: implement retry for failed mutations (remaining handlers) 2026-01-11 17:39:51 +01:00
senke
a833aebe17 error-propagation: implement retry for failed mutations (ShareDialog, CommentSection) 2026-01-11 17:38:54 +01:00
senke
77ad72c17d error-propagation: implement retry for failed mutations (MarketplaceHome, RolesPage, SettingsPage) 2026-01-11 17:38:15 +01:00
senke
9077022a8f error-propagation: implement retry for failed mutations (AccountSettings) 2026-01-11 17:37:04 +01:00
senke
4f24ebf2bb error-propagation: implement retry for failed mutations (Cart) 2026-01-11 17:36:33 +01:00
senke
1149d033db error-propagation: implement retry for failed mutations (ProfileForm, LibraryPage) 2026-01-11 17:35:38 +01:00
senke
bb7178f9e9 error-propagation: highlight form fields on validation errors 2026-01-11 17:31:12 +01:00
senke
3e3016ac39 error-propagation: fix leftover toast.error in LibraryPage confirmBulkDelete 2026-01-11 17:13:00 +01:00
senke
af4c4686dd error-propagation: replace toast.error with ErrorDisplay in Cart component 2026-01-11 17:12:27 +01:00
senke
b0ea225ca8 error-propagation: replace toast.error with ErrorDisplay in AccountSettings 2026-01-11 17:11:51 +01:00
senke
e81eac29ad error-propagation: replace toast.error with ErrorDisplay in ProfileForm 2026-01-11 17:11:03 +01:00
senke
8d5665c774 error-propagation: replace toast.error with ErrorDisplay in ChatSidebar and CreateRoomDialog 2026-01-11 17:10:27 +01:00
senke
a549c3658e error-propagation: replace toast.error with ErrorDisplay in SharePlaylistModal and AddCollaboratorModal 2026-01-11 17:08:58 +01:00
senke
95b6f005c3 error-propagation: replace toast.error with ErrorDisplay in ShareDialog and CommentSection 2026-01-11 17:08:04 +01:00
senke
c404c95a14 error-propagation: replace toast.error with ErrorDisplay in SettingsPage (query and mutation errors) 2026-01-11 17:07:02 +01:00
senke
89e8f9a0b2 error-propagation: replace toast.error with ErrorDisplay in RolesPage (query and mutation errors) 2026-01-11 17:06:30 +01:00
senke
d5bf823037 error-propagation: replace toast.error and inline error with ErrorDisplay in TrackDetailPage 2026-01-11 17:05:23 +01:00
senke
c33ceb0da6 error-propagation: update PlaylistErrorBoundary to use ErrorDisplay component 2026-01-11 17:04:42 +01:00
senke
b03431c2ab error-propagation: update PlayerError to use ErrorDisplay component 2026-01-11 17:03:55 +01:00
senke
5456abb873 error-propagation: fix AuthErrorMessage tests for ErrorDisplay integration 2026-01-11 17:03:00 +01:00
senke
95911b7191 error-propagation: update AuthErrorMessage to use ErrorDisplay component 2026-01-11 17:02:34 +01:00
senke
6663a6501f error-propagation: replace toast errors with ErrorDisplay in LibraryPage 2026-01-11 17:00:25 +01:00
senke
63883b167c data-flow: remove unnecessary client-side filter pass-through
- Completed Action 2.2.1.1: Removed client-side filter logic from LibraryPage
- Removed unnecessary useMemo that was just passing through tracksData?.tracks
- Simplified to direct assignment: filteredTracks = tracksData?.tracks || []
- Backend handles all filtering (verified in Action 2.2.1.2)
- No actual filtering was happening - useMemo was just a pass-through
- Code simplified, behavior unchanged
2026-01-11 16:53:06 +01:00
senke
fbae159dba data-flow: remove duplicate LibraryPagePremium.tsx file
- Completed Action 2.2.1.3: Handled LibraryPage.tsx vs LibraryPagePremium.tsx duplication
- Updated LIBRARY_PAGE_AUDIT.md with file comparison
- Verified LibraryPage.tsx is active (imported via LazyLibrary in routing)
- Verified LibraryPagePremium.tsx is duplicate/unused (not imported anywhere)
- LibraryPagePremium.tsx is older version without debounce improvements
- Removed LibraryPagePremium.tsx - safe deletion, no references found
- Routing continues to use LibraryPage.tsx, no breakage
2026-01-11 16:51:47 +01:00
senke
2cf53900b2 data-flow: standardize debounce across all search inputs
- Completed Action 2.4.1.3: Audited and standardized search input debouncing
- Created SEARCH_DEBOUNCE_AUDIT.md documenting all search components
- Found 7 search components: 5 using useDebounce, 1 manual setTimeout, 1 manual search
- Standardized AddTrackToPlaylistModal to use useDebounce hook instead of manual setTimeout
- All automatic search inputs now use consistent debouncing (300-500ms delays)
- MessageSearch uses manual search (intentional, no debounce needed)
2026-01-11 16:51:23 +01:00
senke
66d02bd762 data-flow: add debounce to LibraryPage search and fix race condition
- Completed Actions 2.4.1.1, 2.4.1.2, and 2.4.1.4
- Action 2.4.1.1: Verified custom useDebounce hook exists (no external package needed)
- Action 2.4.1.2: Added useDebounce hook with 300ms delay to LibraryPage search
- Action 2.4.1.4: Fixed race condition by using debouncedSearchTerm for page reset
- Search now fires 300ms after typing stops, reducing API calls
- Page reset now waits for debounce to complete, preventing race conditions
2026-01-11 16:49:13 +01:00
senke
07470acfd5 data-flow: remove obsolete LibraryPage.tsx.old file
- Completed Action 2.2.1.5: Removed LibraryPage.tsx.old
- File verified as safe to delete (no imports/references found in Action 2.2.1.4)
- Cleanup of obsolete backup file
- Active LibraryPage.tsx remains unchanged
2026-01-11 16:43:47 +01:00
senke
2fce619940 api-contracts: install openapi-generator-cli and create type generation script
- Completed Action 1.1.2.1: Installed @openapitools/openapi-generator-cli
- Completed Action 1.1.2.2: Created generate-types.sh script
- Added swagger annotations to cmd/modern-server/main.go
- Regenerated swagger.yaml with proper info section
- Successfully generated TypeScript types to src/types/generated/

The script generates types from veza-backend-api/openapi.yaml using
typescript-axios generator and creates barrel exports.
2026-01-11 16:30:43 +01:00
senke
4df02d1f80 feat(ui): complete chat interface overhaul
- Replaced all basic Tailwind components with Premium Glassmorphism design
- Implemented neon accents and custom scrollbars
- Added typing indicators and file upload UI polish
- Integrated Chat Page with the new Layout system
2026-01-11 03:20:52 +01:00
senke
0eca0729b5 feat: Visual masterpiece - true light mode & premium UI
🎨 **True Light/Dark Mode**
- Implemented proper light mode with inverted color scheme
- Smooth theme transitions (0.3s ease)
- Light mode colors: white backgrounds, dark text, vibrant accents
- System theme detection with proper class application

🌈 **Enhanced Theme System**
- 4 color themes work in both light and dark modes
- Cyber (cyan/magenta), Ocean (blue/teal), Forest (green/lime), Sunset (orange/purple)
- Theme-specific glassmorphism effects
- Proper contrast in light mode

 **Premium Animations**
- Float, glow-pulse, slide-in, scale-in, rotate-in animations
- Smooth page transitions
- Hover effects with depth (lift, glow, scale)
- Micro-interactions on all interactive elements

🎯 **Visual Polish**
- Enhanced glassmorphism for light/dark modes
- Custom scrollbar with theme colors
- Beautiful text selection
- Focus indicators for accessibility
- Premium utility classes

🔧 **Technical Improvements**
- Updated UIStore to properly apply light/dark classes
- Added data-theme attribute for CSS targeting
- Smooth scroll behavior
- Optimized transitions

The app is now a visual masterpiece with perfect light/dark mode support!
2026-01-11 02:32:21 +01:00
senke
7452bd637a stabilisation commit A 2026-01-07 19:39:21 +01:00
senke
0eacac84b1 chore: resolve property mismatches and type conflicts for snake_case alignment 2026-01-07 11:15:48 +01:00
senke
c1f60e6481 chore: remove production logs in features 2026-01-07 10:32:53 +01:00
senke
a5b347ec9c stabilisation commit 2026-01-04 01:44:23 +01:00
senke
735e923ab4 fix: use correct WebSocket URL from env config for chat connection
- ChatPage now uses env.WS_URL (ws://127.0.0.1:8081/ws) instead of API response
- API response returns relative path /ws which was causing connection errors
- This fixes WebSocket connection errors in browser console
2026-01-04 01:44:23 +01:00
senke
269f0eb2ec fix: resolve stream server compilation errors and integrate chat stability fixes 2026-01-04 01:44:22 +01:00
senke
f576deff56 [T0-003] fix(frontend): Corriger erreurs TypeScript/React
- Variables non utilisées préfixées avec _
- Badge variants corrigés (outline -> default/secondary)
- Types ApiError corrigés (rate_limit supprimé)
- Logger errors corrigés (LogContext au lieu de Error)
- Types PaginatedResponse corrigés (items au lieu de data)
- Types génériques complexes corrigés (stateCleanup, undoRedo)
- Fichiers .example.ts exclus du typecheck
- Status undefined vérifié dans client.ts

Résultats:
- npm run build  (réussit)
- npm run typecheck  (0 erreurs)
- npm run lint ⚠️ (1521 erreurs restantes - style/variables non utilisées)

Files: 35 fichiers modifiés
Hours: 6 estimated, 6 actual
2026-01-04 01:44:20 +01:00
senke
0bd5079eb2 [FIX] PROD-010: Corriger ENUM PostgreSQL dans modèle User - Tests E2E passent
- Ajout de type:user_role dans le tag GORM du champ Role
- Amélioration de la détection d'erreurs ENUM dans le service Register
- L'endpoint /auth/register retourne maintenant 201 OK avec tokens
- Score production: 52/70 → 58/70
- PROD-010 marqué comme fixed (P0 blocker résolu)
2026-01-04 01:44:19 +01:00
senke
a5539f9d66 [FIX] PROD-007: Corriger erreurs TypeScript critiques (types, signatures, chemins de code) 2026-01-04 01:44:19 +01:00
senke
6e8c901976 [FIX] PROD-007: Corriger erreurs TypeScript critiques - imports et exports manquants 2026-01-04 01:44:18 +01:00
senke
bc42755e58 [FIX] PROD-007: Corriger erreurs TypeScript - ajouter override modifiers 2026-01-04 01:44:18 +01:00
senke
dfb035de3c [FIX] Update password minimum length validation to match backend
- Change password minimum length from 8 to 12 characters in RegisterForm
- Matches backend requirement (min=12 in RegisterRequest)
- Prevents validation errors when submitting registration form
- RegisterPage already had correct validation (12 chars)
2026-01-04 01:44:13 +01:00
senke
24319874a2 [INT-V2-003] Update documentation with id: string
- Replace id: number with id: string in player/README.md
- Replace id: number with id: string in Table.test.tsx
- Update test data to use string IDs
- Aligns with UUID standard (id: string everywhere)
2025-12-26 09:54:51 +01:00
senke
9747aaa041 [INT-ENDPOINT-001] Add frontend service for GET /api/v1/sessions/stats 2025-12-26 09:26:50 +01:00
senke
40591f70fc [INT-CLEANUP-004] Add barrel exports for clean imports 2025-12-26 09:25:52 +01:00
senke
f54e5e558f [INT-CLEANUP-002] Consolidate type definitions in single location 2025-12-26 09:22:05 +01:00
senke
563eb264b6 [INT-AUTH-002] Remove duplicate auth store - migrate to features/auth/store/authStore.ts 2025-12-26 09:11:46 +01:00
senke
2fd5b3935f [INT-API-004] Add request timeout configuration per endpoint type 2025-12-25 22:42:56 +01:00
senke
550d98b531 [INT-API-003] Standardize error handling across all services 2025-12-25 22:42:07 +01:00