mirror of
https://github.com/AutoMaker-Org/automaker.git
synced 2026-02-01 20:23:36 +00:00
- Add global TooltipProvider wrapper in app.tsx for entire application - Remove 36 duplicate TooltipProvider instances across 20 UI component files - Clean up imports by removing TooltipProvider from component imports - Follow Radix UI best practices for TooltipProvider placement - Reduce code by 62 lines while maintaining all tooltip functionality Closes #694 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
40 lines
1.2 KiB
TypeScript
40 lines
1.2 KiB
TypeScript
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
|
|
import { ImageIcon } from 'lucide-react';
|
|
import { cn } from '@/lib/utils';
|
|
|
|
interface BoardControlsProps {
|
|
isMounted: boolean;
|
|
onShowBoardBackground: () => void;
|
|
}
|
|
|
|
export function BoardControls({ isMounted, onShowBoardBackground }: BoardControlsProps) {
|
|
if (!isMounted) return null;
|
|
|
|
const buttonClass = cn(
|
|
'inline-flex h-8 items-center justify-center rounded-md px-2 text-sm font-medium transition-all duration-200 cursor-pointer',
|
|
'text-muted-foreground hover:text-foreground hover:bg-accent',
|
|
'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
|
|
'border border-border'
|
|
);
|
|
|
|
return (
|
|
<div className="flex items-center gap-2">
|
|
{/* Board Background Button */}
|
|
<Tooltip>
|
|
<TooltipTrigger asChild>
|
|
<button
|
|
onClick={onShowBoardBackground}
|
|
className={buttonClass}
|
|
data-testid="board-background-button"
|
|
>
|
|
<ImageIcon className="w-4 h-4" />
|
|
</button>
|
|
</TooltipTrigger>
|
|
<TooltipContent>
|
|
<p>Board Background Settings</p>
|
|
</TooltipContent>
|
|
</Tooltip>
|
|
</div>
|
|
);
|
|
}
|