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 | 2x 2x | import React from 'react';
import { Warning, CicrleCheck } from '@sb/ui/components/atoms/Icons/index.native';
import { View } from 'react-native';
interface StatusIconProps {
status?: 'error' | 'success' | 'warning' | 'default';
size?: number;
width?: number;
height?: number;
}
const StatusIcon = ({
status = 'default',
size = 20,
width = 20,
height = 20,
}: StatusIconProps) => {
const config = {
error: {
icon: <Warning size={size} color="red" width={width} height={height} />,
color: 'red',
},
success: {
icon: <CicrleCheck size={size} color="green" width={width} height={height} />,
color: 'green',
},
warning: {
icon: <Warning size={size} color="orange" width={width} height={height} />,
color: 'orange',
},
default: {
icon: null,
color: 'transparent',
},
};
return (
<View style={{ width: size, height: size }} className="items-center justify-center">
{config[status as keyof typeof config].icon}
</View>
);
};
StatusIcon.displayName = 'StatusIcon';
export default StatusIcon;
|