import React from 'react'; import { View, StyleSheet, ViewStyle } from 'react-native'; import { IconButton } from 'react-native-paper'; import { Presence } from '../../store/contacts/types'; interface IProps { presence: Presence; size?: number; customView?: React.ReactNode; style?: ViewStyle; } export const PresenceView: React.FunctionComponent = ({ presence, size = 16, customView, style, }) => { const getPresenceIcon = () => { switch (presence) { case Presence.online: case Presence.mobile_online: return ( ); case Presence.away: case Presence.manual_away: return ( ); case Presence.busy: case Presence.busy_audio: case Presence.busy_video: return ( ); case Presence.DoNotDisturb: return ( ); default: return ( ); } }; return {customView ? customView : getPresenceIcon()}; }; const styles = StyleSheet.create({ presenceCircle: { alignItems: 'center', justifyContent: 'center', }, dndIcon: { margin: 0, padding: 0, }, });