All files / src/components/ui/icons index.ts

100% Statements 113/113
100% Branches 5/5
7.81% Functions 5/64
100% Lines 113/113

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 1141x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x  
/**
 * Icon System - Centralized UI Icons
 *
 * This module exports both the new unified Icon component and
 * individual icon components for backward compatibility.
 *
 * Recommended Usage:
 * ```tsx
 * import { Icon } from '@/components/ui/icons';
 * <Icon name="heart" size={24} />
 * ```
 *
 * Legacy Usage (still supported):
 * ```tsx
 * import { HeartIcon } from '@/components/ui/icons';
 * <HeartIcon width={24} height={24} />
 * ```
 */
 
// ============================================================================
// NEW ICON SYSTEM (Recommended)
// ============================================================================
 
/**
 * Main Icon component with lazy loading and consistent API
 * @see Icon.tsx for full documentation
 */
export { Icon } from './Icon';
export type { IconProps } from './Icon';
 
/**
 * Icon registry types and utilities
 */
export type { IconName, IconComponent } from './registry';
export { iconRegistry, getIconNames, hasIcon } from './registry';
 
// ============================================================================
// INDIVIDUAL ICON COMPONENTS (Backward Compatible)
// ============================================================================
 
// Navigation & Actions
export { default as ArrowIcon } from './ArrowIcon';
export { default as ArrowLeftIcon } from './ArrowLeftIcon';
export { default as ArrowRightIcon } from './ArrowRightIcon';
export { default as CloseIcon } from './CloseIcon';
export { default as UpArrowIcon } from './UpArrowIcon';
export { default as ReloadIcon } from './ReloadIcon';
export { default as ArrowsLeftRightIcon } from './ArrowsLeftRightIcon';
 
// User Interface
export { default as HeartIcon } from './HeartIcon';
export { default as CartIcon } from './CartIcon';
export { default as SearchIcon } from './SearchIcon';
export { default as UserIcon } from './UserIcon';
export { default as UsersIcon } from './UsersIcon';
export { default as TrashIcon } from './TrashIcon';
export { default as StarIcon } from './StarIcon';
export { default as CheckCircleIcon } from './CheckCircleIcon';
export { default as PlusIcon } from './PlusIcon';
export { default as MinusIcon } from './MinusIcon';
export { default as DashboardIcon } from './DashboardIcon';
export { default as PackageIcon } from './PackageIcon';
export { default as DownloadIcon } from './DownloadIcon';
export { default as HomeIcon } from './HomeIcon';
export { default as EyeIcon } from './EyeIcon';
export { default as AlertTriangleIcon } from './AlertTriangleIcon';
export { default as AlertCircleIcon } from './AlertCircleIcon';
export { default as InfoCircleIcon } from './InfoCircleIcon';
export { default as CheckIcon } from './CheckIcon';
export { default as ChevronDownIcon } from './ChevronDownIcon';
export { default as XCircleIcon } from './XCircleIcon';
export { default as SadFaceIcon } from './SadFaceIcon';
export { default as ExpandIcon } from './ExpandIcon';
export { default as TagIcon } from './TagIcon';
export { default as ChevronLeftIcon } from './ChevronLeftIcon';
export { default as ChevronRightIcon } from './ChevronRightIcon';
export { default as EmptyCartIcon } from './EmptyCartIcon';
export { default as EditIcon } from './EditIcon';
export { default as ShoppingBagIcon } from './ShoppingBagIcon';
export { default as GridIcon } from './GridIcon';
export { default as ListIcon } from './ListIcon';
export { default as ClockIcon } from './ClockIcon';
export { default as LogoutIcon } from './LogoutIcon';
 
// Contact & Location
export { default as MapPinIcon } from './MapPinIcon';
export { default as PhoneIcon } from './PhoneIcon';
export { default as EmailIcon } from './EmailIcon';
 
// Social Media
export { default as FacebookIcon } from './FacebookIcon';
export { default as InstagramIcon } from './InstagramIcon';
export { default as TwitterIcon } from './TwitterIcon';
export { default as LinkedinIcon } from './LinkedinIcon';
export { default as GithubIcon } from './GithubIcon';
export { default as GoogleIcon } from './GoogleIcon';
export { default as PinterestIcon } from './PinterestIcon';
 
// Payment Methods
export { default as VisaIcon } from './VisaIcon';
export { default as MasterCardIcon } from './MasterCardIcon';
export { default as PaypalIcon } from './PaypalIcon';
export { default as ApplePayIcon } from './ApplePayIcon';
export { default as GooglePayIcon } from './GooglePayIcon';
 
// App Stores
export { default as AppStoreIcon } from './AppStoreIcon';
export { default as GooglePlayIcon } from './GooglePlayIcon';
 
// Mobile
export { default as MenuIcon } from './MenuIcon';
export { default as MicIcon } from './MicIcon';
export { default as MicOffIcon } from './MicOffIcon';