From 40916d3127f97bc3dd27c1388d77b489b3c29d65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Fri, 15 May 2026 19:07:07 +0200 Subject: [PATCH] feat(coach): swap the sources-rail toggle to a shadcn Checkbox Replace the raw in the sources rail with a shadcn-style backed by radix-ui. The new primitive ships a real focus ring, a Space-toggles keyboard contract, and a touch- friendly hit target so the rail behaves correctly on the right-edge side-tray surface mobile users open via the chevron button. --- .../insights/coach-panel/sources-rail.tsx | 20 ++++---- src/components/ui/checkbox.tsx | 47 +++++++++++++++++++ 2 files changed, 58 insertions(+), 9 deletions(-) create mode 100644 src/components/ui/checkbox.tsx diff --git a/src/components/insights/coach-panel/sources-rail.tsx b/src/components/insights/coach-panel/sources-rail.tsx index bb84eccfc..3db63809f 100644 --- a/src/components/insights/coach-panel/sources-rail.tsx +++ b/src/components/insights/coach-panel/sources-rail.tsx @@ -10,6 +10,7 @@ import { Smile, } from "lucide-react"; +import { Checkbox } from "@/components/ui/checkbox"; import { Select, SelectContent, @@ -234,20 +235,21 @@ export function SourcesRail({ !checked && "opacity-60", )} > - ` primitive so the rail + ships a real focus ring, a proper keyboard contract + (Space toggles, Tab moves), and a touch-friendly + hit target on the side-tray surface. The wrapping + `