Files
spotlightcam/frontend
Radosław Gierwiało c7e577bf12 feat(chat): add user status grouping and 'No heats' indicator
Improved participants sidebar UX by grouping users and clearly showing
who can't be contacted for match requests and why.

User Status Groups (in order):
1. Available - Online with declared heats (🟢 green dot)
   - Ready to receive match requests
   - Shows heat badges
   - Active match button with "Send match request" tooltip

2. Online - No Heats - Online but no heats declared (🟡 yellow dot)
   - Shows "No heats declared" gray badge
   - Match button disabled with "User has not declared heats yet" tooltip
   - Clear visual indicator of unavailability reason

3. Offline - Not currently online ( gray dot)
   - Can still send requests if they have heats (button faded)
   - Shows "No heats declared" badge if no heats
   - Match button disabled if no heats

Visual Improvements:
- Color-coded status dots for quick scanning
- Section headers with user counts per group
- "No heats declared" badge for users without heats
- Clear, contextual tooltips on disabled states
- Better spacing between groups (space-y-4 vs space-y-2)

Benefits:
- Users immediately see who's available to match
- No confusion about why buttons are disabled
- Priority given to online users with heats
- Reduced support questions
- Better conversion (users know what to do)

Applies to:
- Desktop sidebar (visible on chat tab)
- Mobile participants tab
2025-12-06 12:01:35 +01:00
..

React + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

React Compiler

The React Compiler is not enabled on this template because of its impact on dev & build performances. To add it, see this documentation.

Expanding the ESLint configuration

If you are developing a production application, we recommend using TypeScript with type-aware lint rules enabled. Check out the TS template for information on how to integrate TypeScript and typescript-eslint in your project.