UNPKG

@cometchat/chat-uikit-react-native

Version:

Ready-to-use Chat UI Components for React Native

73 lines (68 loc) 2.61 kB
//@ts-ignore import { CometChat } from '@cometchat/chat-sdk-react-native'; import { CometChatUIEventHandler } from '../shared'; export const listners = { addListener: { userListener: ({ userStatusListenerId, handleUserStatus }: any) => CometChat.addUserListener( userStatusListenerId, new CometChat.UserListener({ onUserOnline: (onlineUser: any) => { handleUserStatus(onlineUser); /* when someuser/friend comes online, user will be received here */ }, onUserOffline: (offlineUser: any) => { handleUserStatus(offlineUser); /* when someuser/friend went offline, user will be received here */ }, }) ), messageListener: ({ msgTypingListenerId, msgTypingIndicator }: any) => CometChatUIEventHandler.addMessageListener( msgTypingListenerId, { onTypingStarted: (typistDetails: any) => { msgTypingIndicator(typistDetails, 'typing'); }, onTypingEnded: (typistDetails: any) => { msgTypingIndicator(typistDetails, ''); }, } ), groupListener: ({ groupListenerId, handleGroupListener }: any) => CometChat.addGroupListener( groupListenerId, new CometChat.GroupListener({ onGroupMemberKicked: (message: any, kickedUser: any, kickedBy: any, kickedFrom: any) => { handleGroupListener(kickedFrom); }, onGroupMemberBanned: (message: any, bannedUser: any, bannedBy: any, bannedFrom: any) => { handleGroupListener(bannedFrom); }, onMemberAddedToGroup: ( message: any, userAdded: any, userAddedBy: any, userAddedIn: any ) => { console.log('onMemberAddedToGroup', userAddedIn); handleGroupListener(userAddedIn); }, onGroupMemberLeft: (message: any, leavingUser: any, group: any) => { handleGroupListener(group); }, onGroupMemberJoined: (message: any, joinedUser: any, joinedGroup: any) => { handleGroupListener(joinedGroup); }, }) ), }, removeListner: { removeUserListener: ({ userStatusListenerId }: any) => CometChat.removeUserListener(userStatusListenerId), removeMessageListener: ({ msgTypingListenerId }: any) => CometChatUIEventHandler.removeMessageListener(msgTypingListenerId), removeGroupListener: ({ groupListenerId }: any) => CometChat.removeGroupListener(groupListenerId), }, };