MultinaireIcon
SVG icon component with theme-aware colors and optional press handling.
Basic Usage
import { MultinaireIcon } from '@multinaire/multinaire-design';
<MultinaireIcon icon="Home" />
<MultinaireIcon icon="Settings" size={32} color="primary" />
Props
| Prop | Type | Default | Description |
|---|---|---|---|
icon | IconName | — | Icon name from the Iconsax library or the built-in custom icon set |
size | number | 20 | Size of the icon in pixels. Defaults to 20 |
color | ColorKeys | — | Icon color key from the active theme palette |
type | IconType | 'Linear' | Iconsax icon style variant. Defaults to 'Linear' |
margin | SpacingProps | 2 | Margin around the icon. Defaults to 2 |
isLoading | boolean | false | Show a circular loading skeleton in place of the icon |
onPress | () => void | — | Press handler for interactive icons |
Available Icons
Custom Icons (MultinaireIcons)
Built-in branded icons for common social and brand use cases:
| Name | Description |
|---|---|
CustomApple | Apple logo |
CustomFacebook | Facebook logo |
CustomGithub | GitHub logo |
CustomGoogle | Google logo |
CustomInstagram | Instagram logo |
CustomLinkedIn | LinkedIn logo |
CustomPlan | Plan/pricing icon |
CustomX | X (formerly Twitter) logo |
Iconsax Icons
993 icons available via the Iconsax library. Common icons include:
- Navigation:
Home,Back,Forward,Menu,Close - Actions:
Add,Edit,Delete,Save,Share - Media:
Camera,Image,Video,Play,Pause - Communication:
Message,Email,Phone,Notification - UI:
Check,Search,Filter,Settings,More
Examples
Different Sizes
<MultinaireIcon icon="Star" size={16} />
<MultinaireIcon icon="Star" size={24} />
<MultinaireIcon icon="Star" size={32} />
Colors
<MultinaireIcon icon="Heart" color="primary" />
<MultinaireIcon icon="Heart" color="error" />
<MultinaireIcon icon="Heart" color="neutral" />
Pressable Icon
<MultinaireIcon
icon="Settings"
size={28}
onPress={() => navigation.navigate('Settings')}
/>
Custom (Brand) Icons
<MultinaireIcon icon="CustomApple" size={24} />
<MultinaireIcon icon="CustomGoogle" size={24} />
<MultinaireIcon icon="CustomGithub" size={24} />
Loading State
<MultinaireIcon icon="User" isLoading />