senke
abc18e2fc6
refactor(ui): decompose FileUpload into file-upload module
...
- Add file-upload/ with useFileUpload, types, utils, and presentational
components: FileUploadDropzone, FileUploadErrorList, FileUploadFileList
- Remove monolithic file-upload.tsx; entry point is file-upload/index.ts
- Backward compatible: imports from './file-upload' resolve to module
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 21:09:08 +01:00
senke
0d1a426efa
test(ui): add LazyErrorFallback and LazyComponent stories; fix LazyComponent tests for fallback text
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:49:17 +01:00
senke
8bfabe79ad
refactor(ui): decompose LazyComponent into lazy-component module with LazyErrorFallback, LazyErrorBoundary, createLazyComponent
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:48:36 +01:00
senke
048861b7b6
test(views): add GearView stories Default, Loading, Empty, Error and GearViewSkeleton
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:38:59 +01:00
senke
3b4e322c37
refactor(views): decompose GearView into gear-view module with useGearView and sub-components
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:38:45 +01:00
senke
97103ae957
test(views): add ProfileView stories Default, Loading, Error and ProfileViewSkeleton
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:30:50 +01:00
senke
a3e24bd14a
refactor(views): decompose ProfileView into profile-view module with hook and sub-components
...
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 20:30:36 +01:00
senke
92b8a5678b
test(search): add stories Loading/Empty/Error and fix Search tests
...
- Stories: Loading, Empty, Error; decorator max-w-2xl min-h-layout-story
- SearchSkeleton.stories; fix tests: waitFor, Enter for history, keyboard nav query
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 19:45:52 +01:00
senke
76360fa736
refactor(search): decompose Search into sub-components
...
- Add features/search/components/search: types, useSearchSuggestions,
SearchInput, SearchDropdown, SearchSkeleton
- Search.tsx orchestrator; re-export from components/search for GlobalSearchBar
- No console.log; logger only; layout primitives in stories
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 19:45:41 +01:00
senke
df8c094454
feat(ui): implement skeleton-first loading and grid/list orchestration for CloudFileBrowser
2026-02-05 19:04:03 +01:00
senke
25fce07e3d
feat(ui): implement grid/list view orchestration with synchronized skeletons for GearView
2026-02-05 18:18:13 +01:00
senke
eb87ad07b3
chore(dx): add .cursorrules and design system audit documentation
2026-02-05 14:20:06 +01:00
senke
f515079909
docs(storybook): final comparison 67%→0%, contract update, silent toasts in Storybook
2026-02-05 13:39:59 +01:00
senke
07c9861db5
chore(storybook): reclassify story hierarchy (App/Pages, Layouts, UI, Features, Docs/Failures) and enable autodocs
2026-02-05 13:21:54 +01:00
senke
69f7550912
refactor(storybook): remove duplicate providers from stories (Phase 2)
...
Stories no longer wrap with QueryClientProvider, ToastProvider,
ThemeProvider, or MemoryRouter; global StorybookDecorator provides them.
- Route-specific pages use parameters.router.initialEntries
(ResetPasswordPage, VerifyEmailPage) or minimal MemoryRouter+Route
where useParams is needed (TrackDetailPage, PlaylistDetailPage).
- Stories that seeded query cache use useQueryClient() from global
decorator (FollowButton, CollaboratorManagement, CommentSection).
- Navbar, AuthLayout, DashboardLayout, Header, and 25+ story files
simplified to layout divs only.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 13:08:17 +01:00
senke
c63dabcc88
fix(storybook): mark ErrorBoundary error stories for audit allowlist
...
WithError and WithCustomFallback set parameters.storybookAudit.expectConsoleErrors
so audit/CI can treat their console errors as intentional (failure demo).
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-05 12:17:50 +01:00
senke
d18dd2cca4
fix(storybook): remediate crashes and improve mock stability
...
- Add global AuthProvider and QueryClientProvider
- Fix Loader2 reference error in CommentThread
- Fix coverUrl crash in ProductCard
- Fix double-slash URL bug in logger
- Improve MSW handlers and environment config
2026-02-04 19:33:00 +01:00
senke
62010f6a22
chore(storybook): improve configuration and cleanup
2026-02-04 00:44:40 +01:00
senke
04d65e55f6
stabilisation: fix commit
2026-02-03 09:56:11 +01:00
senke
0a054ac8d9
refactor(cart): migrate CheckoutView and MarketplaceView to useCartStore and fix stories
2026-02-03 09:50:51 +01:00
senke
5e8e8b5875
refactor(cart): migrate CartView and CartItem to useCartStore
2026-02-03 09:46:01 +01:00
senke
922851653f
refactor(cart): migrate Navbar to useCartStore and remove CartProvider decorator
2026-02-03 09:42:59 +01:00
senke
80d6b10793
refactor(cart): migrate WishlistView to useCartStore
2026-02-03 09:40:54 +01:00
senke
62118baaf5
feat(storybook): complete comprehensive ui coverage for auth, player, tracks, and groups
2026-02-02 20:55:57 +01:00
senke
4368dd8a20
feat(storybook): complete UI coverage with Batches 26-30
...
- Batch 26 (Tracks List/Grid): added stories for row, grid, sort, toggle, skeleton, empty states.
- Batch 27 (Dashboard): added stories for ActivityGraph, TrackList widget.
- Batch 28 (Education): added stories for CourseCard, MyCoursesView, QuizModal, CertificateModal.
- Batch 29 (Inventory): added stories for EquipmentCard, InventoryView.
- Batch 30 (Seller/Live): added stories for SellerDashboardView, FlashSaleModal, LiveStreamDetailView, TipStreamerModal.
- Verified build and fixed AudioProvider/service dependencies.
2026-02-02 20:47:47 +01:00
senke
0101ce176a
feat(storybook): add stories for Auth, Player, Tracks, Dashboard (Batches 22-25)
...
- Batch 22 (Auth/Settings): OAuthButtons, PasswordStrengthIndicator, ThemeSwitcher, TwoFactorSettings
- Batch 23 (Player): TimeDisplay, RepeatShuffleButtons, NextPreviousButtons, QualitySelector
- Batch 24 (Tracks): LikeButton, TrackFilters, TrackStatsDisplay
- Batch 25 (Dashboard): StatCard
- Fixed build issues with sonner dependencies.
2026-02-02 20:42:51 +01:00
senke
6169ec332c
feat(storybook): add stories for Feedback and Playlist components (Batches 20-21)
...
- Batch 20 (Feedback): Alert, Toast
- Batch 21 (Playlists): PlaylistCard, PlaylistHeader, AddTrackToPlaylistModal
- Verified successful build.
2026-02-02 20:38:52 +01:00
senke
7f3099ae7f
feat(storybook): add stories for Social, Notifications, and Modals (Batches 17-19)
...
- Batch 17 (Social): PostCard, CommentItem
- Batch 18 (Notifications): NotificationItem, NotificationBell, NotificationMenu
- Batch 19 (Modals): CreatorModal
- Fix: remove duplicate import in api.ts
- Verified successful build.
2026-02-02 20:33:45 +01:00
senke
286f027019
feat(storybook): achieve total UI coverage (Batches 13-16)
...
- Batch 13 (Library/Profile): UploadModal, FollowButton
- Batch 14 (Settings): AccountSettings, NotificationSettings
- Batch 15 (Layout): DashboardLayout, Header, Sidebar
- Batch 16 (Search): SearchBar, Search
- Verified successful build of all stories.
2026-02-02 20:29:46 +01:00
senke
be2854ec7c
feat(storybook): complete UI component coverage (batches 6-9)
...
- Batch 6: FAB, FormField, FloatingInput, AvatarUpload
- Batch 7: Modal, ConfirmationDialog, ImageViewerModal, ErrorDisplay, LoadingState
- Batch 8: DataList, WaveformVisualizer, OptimizedImage, VirtualizedList
- Batch 9: ImageCropper, LoadingSpinner, FocusTrap
- Achieved total coverage for src/components/ui
2026-02-02 19:50:45 +01:00
senke
417e9ba178
feat(storybook): expanded coverage for visual and feedback components (batch 5)
...
- Added stories for: Spinner, KodoEmptyState, HelpText, AstralBackground
- Increased coverage for utility and visual components
2026-02-02 19:46:27 +01:00
senke
49de999b27
feat(storybook): expanded coverage for structural components (batch 4)
...
- Added stories for: Label, Skeleton, ScrollArea, Toast, Collapsible, Sidebar
- Covered layout and feedback components
2026-02-02 19:44:58 +01:00
senke
0f8a0aad50
feat(storybook): expanded coverage for complex form & data components (batch 3)
...
- Added stories for: DatePicker, Select, RadioGroup, FileUpload, Table
- Achieved high coverage for core UI components
2026-02-02 19:41:12 +01:00
senke
21eb255294
feat(storybook): expanded coverage for complex UI components (batch 2)
...
- Added stories for: Accordion, Tabs, Textarea, Tooltip, Dialog, DropdownMenu
- Covered various interactive states and sub-components
2026-02-02 19:39:50 +01:00
senke
f64d400703
feat(storybook): expanded coverage for core UI components (batch 1)
...
- Added stories for: Button, Avatar, Switch, Slider, Alert, Progress
- Consolidated Button component to src/components/ui/button.tsx
- Removed legacy src/components/Button.tsx
2026-02-02 19:37:52 +01:00
senke
451cce8d33
feat: global update including storybook setup and backend fixes
...
- Web: Setup Storybook, added addons, configured Tailwind, added stories for UI components.
- Backend: Updated API router, database, workers, and auth in common.
- Stream Server: Removed SQLx queries and updated auth.
- Docs & Scripts: Updated documentation and recovery scripts.
2026-02-02 19:34:14 +01:00
senke
252918998d
improving UI: improve audio player phase 1
2026-01-26 19:18:52 +01:00
senke
dc87f0b09e
improving UI: adding API doc to Developer Page
2026-01-26 14:12:17 +01:00
senke
dbf5178223
feat(frontend): complete design system migration and cleanup old pages
2026-01-25 12:33:46 +01:00
senke
ce6434fef5
refactor of veza frontend ui- batch 1
2026-01-22 17:23:11 +01:00
senke
c92221f59e
refactor(frontend): improve sidebar and library ui with design system
...
- Update Sidebar to use Design System Button component and consistent styling
- Refactor LibraryPage to use Card variants (glass/gaming) for track grid
- Ensure consistent button usage across key UI components
- Fix type errors in DashboardPage
2026-01-18 22:40:59 +01:00
senke
a9eee2b3ea
refactor(frontend): enhance ui with design system components
...
- Refactor DashboardPage to use StatCard, new Button variants, and glassmorphism cards
- Update DashboardLayout to include AstralBackground for premium visual effect
- Style GlobalPlayer with glass-hud utility classes
- Fix type errors in LoginPage by using local Card shim
2026-01-18 22:36:15 +01:00
senke
a56594daf5
refactor(frontend): improve ui using design system
...
- Refactor Navbar, ChatInput, RegisterPage, and CreatePlaylistDialog to use @veza/design-system components
- Shim local UI components (Button, Input, Card) to align with Design System API and styles
- Fix hundreds of type errors by exporting missing components (SearchInput, FileUpload) and adding missing props (icon, variant)
2026-01-18 22:27:53 +01:00
senke
0876248ec1
stabilized but still broken MVP VERSION
2026-01-18 16:28:22 +01:00
senke
d86d5c5823
fix: Improve button click handling and error management
...
- Add explicit event prevention in onClick handler
- Add type='button' to prevent form submission
- Improve error handling in handleGenerate
- Reset loading state after successful generation
- Ensure button click events are properly handled
2026-01-18 14:49:59 +01:00
senke
4469b809b0
fix: Change Button variant from 'primary' to 'default'
...
- Button component uses 'default' variant for primary actions, not 'primary'
- Fixes issue where Generate Key button wasn't working
- Ensures button is properly styled and clickable
2026-01-18 14:49:32 +01:00
senke
b697a70a3d
fix: Prevent modal from closing on backdrop click when showing generated key
...
- Disable backdrop click to close when in step 2 (showing generated key)
- Ensures user can copy the key before modal closes
- Only allow closing via Done button after key is generated
2026-01-18 14:46:55 +01:00
senke
67aaf70ae9
fix: Make API key creation and generation buttons functional
...
- Update CreateAPIKeyModal to properly handle async operations
- Add loading states and form validation
- Wait for API response before showing generated key
- Add proper error handling and user feedback
- Disable buttons during generation
- Return full key from service for display in modal
- Fix Input component usage (add proper label wrapper)
- Ensure form validation works (name required, at least one scope)
2026-01-18 14:46:16 +01:00
senke
4b8b8f679e
fix: Utiliser iframe pour charger Swagger UI HTML directement
...
- Ajouter option useIframe pour charger /swagger/index.html dans un iframe
- Cela évite les problèmes avec /swagger/doc.json qui retourne 500
- Swagger UI HTML fonctionne correctement et affiche toute la documentation
- Garder le composant React comme fallback si nécessaire
2026-01-18 13:58:03 +01:00
senke
4a15e36ce1
fix: Corriger erreur de syntaxe dans SwaggerUI (backtick supplémentaire)
2026-01-18 13:56:06 +01:00