On mobile, the sidebar was 192px wide (w-48) and could appear collapsed (icons-only)
depending on prior desktop state. This introduces effectivelyCollapsed to always force
expanded mode when the mobile overlay is open, and uses a narrower w-40 (160px) width
to reduce screen coverage on small devices like iPhone SE (375px).
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- Make project card grids responsive (single column on mobile, 2 cols on sm)
- Remove fixed w-56 card width so cards fill available space on mobile
- Convert modals to bottom-sheet style on mobile (items-end, rounded-t-2xl)
- Add max-h-[90vh] + overflow-y-auto to modals for small screens
- Increase touch targets to min 44px on action buttons and interactive elements
- Refactor DashboardTaskList rows from rigid grid to flexible layout
- Remove min-w-[600px] wrapper that forced horizontal scroll on task list
- Make tab navigation horizontally scrollable instead of wrapping on mobile
- Reduce left padding on etape child tasks for narrow screens
- Stack modal action buttons vertically on mobile (flex-col-reverse)
- Add responsive text sizing for headings and dates
- Fix share dialog invite input to stack on mobile
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Add backdrop overlay with tap-to-dismiss, enforce 44px touch targets on the
toggle button, auto-close on route change, clean up z-index layering, remove
duplicate translate logic, and respect safe-area insets for standalone PWA mode.
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- Add view mode dropdown with "Semaine" (7 days) and "2 semaines" (14 days)
- Biweekly mode shows compact cards (smaller padding, no tablo badge, shorter labels)
- Navigation steps by 1 or 2 weeks based on current view mode
- Dynamic column count and card sizing based on view config
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Create shared GanttChart component with week navigation, day columns,
today indicator, and positioned task cards
- Task cards color-coded by status (blue/orange/purple/green)
- Replace list-based RoadmapView in Tasks page with GanttChart
- Replace list-based RoadmapSection in Tablo Details page with GanttChart
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add due_date column to tasks table with Supabase migration
- Update database types and tasks_with_assignee view
- Add DatePicker to TaskModal for setting due dates
- Display due dates on KanbanTaskCard, list view, and Etapes section
- Enable Roadmap tab on both Tasks page and Tablo Details page
- Add RoadmapView components with timeline grouped by Etape
- Highlight overdue dates in red across all views
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Map each tablo color to a dedicated Lucide icon (Zap, Leaf, Gem, Flame, etc.)
- Apply contrast-aware icon color: dark gray for light backgrounds (yellow, cyan), white for all others
- NavigationBar: always use gray icon for sidebar consistency; active nav item uses light purple background (#804EEC tint)
- Apply icons to NavigationBar, tablos, tablo-details, tablo (dashboard), and tasks pages
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Set purple (#804EEC) as default ChannelBadge background color
- Update ChannelPreview active state to purple highlight (was blue)
- Add "Discussions" title header to chat page
- Standardize all page headers to text-2xl font-bold (tablos, tasks, files, planning)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- NavigationBar: add light/dark theme support with adaptive text colors
- TopBar: match navbar background color in both themes
- main.css: make navbar-background/darker CSS variables theme-aware
- tablo-details: restore working invite button with full share dialog
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- ActionCard: new disabled and badge props; disabled state shows opacity-50, cursor-not-allowed, prevents clicks
- Badge renders inline next to the label (e.g., "Bientôt")
- Invite Team card: permanently disabled with "Bientôt" badge visible without clicking
- Remove onInviteTeam prop and toast callback
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- EventModal now accepts optional isOpen/onClose/defaultTabloId/defaultDate props; when provided it works as a controlled dialog without needing to navigate to /planning/create
- When used as a route child (existing behavior), falls back to URL params and navigate(-1) as before
- Events view "Créer un événement" button opens EventModal inline instead of navigating, passing the current tablo and date as defaults
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- TopBar: replace standalone Événements link with a segmented toggle pill (Calendrier | Événements) that only appears on /planning, with the active tab highlighted white
- planning.tsx events view: replace date badge with ActionCard-style icon container (bg-[#F4F3FF] / text-[#7F56D9]) matching the purple design system
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- planning.tsx: when ?tab=events, render a new card-based events view instead of the calendar; cards show date badge (month/day), title, description, time, and tablo name; includes search input and filter button; wired to existing useEventsByTablo hook and navigate-to-create flow
- TopBar.tsx: add "Événements" nav link that toggles to /planning?tab=events, with active state highlighting
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- Add /tasks and /files to SEARCH_ROUTES so the TopBar search input is active on those pages
- Tasks page reads search query from URL ?q= param instead of local state; remove duplicate search input from header
- Files page reads ?q= param to filter tablos and files by name
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- Rework tasks page with new board/list views, header with view tabs (Tableau, Liste, Roadmap, Calendrier), search and filter dropdown
- Board view: new card style with tablo row, assignee avatar, kebab menu (ouvrir/déplacer)
- List view: grouped by status, table with fixed column layout, kebab actions
- Add files page (/fichiers) with per-project file tables, folder cards, upload modal, download/delete actions
- Add /all-filenames API endpoint to fetch all tablo file names in a single call
- Add files nav item and recent projects section in NavigationBar
- Translate all UI strings to French
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
- ExceptionModal: cast Zod v4 schema with `as any` to satisfy @hookform/resolvers v5 type definitions
- TopBar: wrap logout mutate call in arrow function to match MouseEventHandler type
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Replace renderTabloListView with reusable ProjectCard / ProjectCardList components
- Card layout with status badge, progress bar, date, and delete action
- Default view shows 6 tablos with expand/collapse toggle
- Add DashboardTaskList component showing tasks assigned to the current user
- Toggle done/todo inline; "Add Task" button opens TaskModal with tablo selection
- Wire TopBar search input to URL param ?q= to filter tablos on the overview page
- Add TopBar component to Layout (was missing)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>