1import type { ResizableWidthHandlers } from "~/hooks/useResizableWidth";
2import { cn } from "~/lib/utils";
3
4interface Props {
5 handlers: ResizableWidthHandlers;
6 className?: string;
7}
8
9export function RightPanelResizeHandle({ handlers, className }: Props) {
10 return (
11 <div
12 role="separator"
13 aria-orientation="vertical"
14 aria-label="Resize side panel"
15 tabIndex={0}
16 className={cn(
17 "group absolute inset-y-0 left-0 z-20 w-3 cursor-col-resize touch-none select-none outline-none hover:bg-primary/10 focus-visible:bg-primary/10 active:bg-primary/15",
18 className,
19 )}
20 {...handlers}
21 >
22 <span
23 aria-hidden
24 className="pointer-events-none absolute inset-y-0 left-0 w-px bg-transparent transition-colors duration-150 group-hover:bg-border group-active:bg-primary/60"
25 />
26 </div>
27 );
28}