refactor: split CommandFooter, perf tweaks

- extracted drawer modal to CommandDrawer (~180 lines)
- CommandFooter now under 270 lines
- replaced transition-all with specific props (colors, transform, etc)
- should reduce repaints on hover states
This commit is contained in:
N1C4T
2025-12-31 22:11:19 +04:00
parent 4a70f293c1
commit c3b737f901
47 changed files with 363 additions and 712 deletions

View File

@@ -2,30 +2,7 @@
import { ChevronRight } from 'lucide-react';
/**
* CategoryHeader - Expandable category header with selection count
*
* Features:
* - Chevron rotation animation on expand/collapse
* - Selection count badge
* - Focus state for keyboard navigation
*
* @param category - Category name
* @param isExpanded - Whether the category is expanded
* @param isFocused - Whether the header has keyboard focus
* @param onToggle - Callback to toggle expansion
* @param selectedCount - Number of selected apps in this category
* @param onFocus - Optional callback when header receives focus
*
* @example
* <CategoryHeader
* category="Browsers"
* isExpanded={true}
* isFocused={false}
* onToggle={() => toggleCategory("Browsers")}
* selectedCount={3}
* />
*/
// Clickable category header with chevron and selection count
export function CategoryHeader({
category,
isExpanded,