UNPKG

react-native-chating-ui-kit

Version:

CometChat React Native UI Kit is a collection of custom UI Components designed to build text , chat and calling features in your application. The UI Kit is developed to keep developers in mind and aims to reduce development efforts significantly

60 lines 2.44 kB
import { CometChat } from '@cometchat-pro/react-native-chat'; import { CALL_BUSY, CALL_CANCELLED, CALL_ENDED, CALL_INITIATED, CALL_ONGOING, CALL_REJECTED, CALL_UNANSWERED, } from '../shared/constants/UIKitConstants'; import { localize } from '../shared/resources/CometChatLocalize'; export class CallUtils { static isInitiator(initiator, loggedInUser) { return initiator.getUid() == loggedInUser.getUid(); } static getCallStatus(message, loggedInUser) { if (!(message instanceof CometChat.Call)) return ''; let call = message; let callMessageText = ''; let initiator = call.getCallInitiator(); switch (call.getStatus()) { case CALL_INITIATED: if (this.isInitiator(initiator, loggedInUser)) { callMessageText = `${localize('OUTGOING_CALL')}`; } else { callMessageText = `${localize('INCOMING_CALL')}`; } break; case CALL_ONGOING: callMessageText = `${localize('CALL_ACCEPTED')}`; break; case CALL_ENDED: callMessageText = `${localize('CALL_ENDED')}`; break; case CALL_UNANSWERED: if (this.isInitiator(initiator, loggedInUser)) { callMessageText = `${localize('CALL_UNANSWERED')}`; } else { callMessageText = `${localize('CALL_MISSED')}`; } break; case CALL_CANCELLED: if (this.isInitiator(initiator, loggedInUser)) { callMessageText = `${localize('CALL_CANCELLED')}`; } else { callMessageText = `${localize('CALL_MISSED')}`; } break; case CALL_REJECTED: case CALL_BUSY: if (this.isInitiator(initiator, loggedInUser)) { callMessageText = `${localize('CALL_REJECTED')}`; } else { callMessageText = `${localize('CALL_MISSED')}`; } break; } if (callMessageText == undefined || callMessageText == "undefined") console.log(message, loggedInUser); return callMessageText; } } //# sourceMappingURL=CallUtils.js.map