aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShravya Ramesh <shravs1208@gmail.com>2021-04-09 13:46:42 -0700
committerShravya Ramesh <shravs1208@gmail.com>2021-04-09 13:46:42 -0700
commitbdd1ed17600da7b766e2b0fa97ad4cbf01234819 (patch)
treed4b8097cbea9ec7697967a62f2bf0be8ab30cc0a /src
parent55a5fa01be46a193d3917e1a334f300593a8ec01 (diff)
removed client ready from redux
Diffstat (limited to 'src')
-rw-r--r--src/components/profile/ProfileBody.tsx6
-rw-r--r--src/routes/Routes.tsx2
-rw-r--r--src/screens/chat/ChatListScreen.tsx51
-rw-r--r--src/store/actions/user.ts15
-rw-r--r--src/store/initialStates.ts1
-rw-r--r--src/utils/messages.ts4
6 files changed, 28 insertions, 51 deletions
diff --git a/src/components/profile/ProfileBody.tsx b/src/components/profile/ProfileBody.tsx
index dc68446b..e23249fa 100644
--- a/src/components/profile/ProfileBody.tsx
+++ b/src/components/profile/ProfileBody.tsx
@@ -63,7 +63,6 @@ const ProfileBody: React.FC<ProfileBodyProps> = ({
profile,
);
- const {chatClientReady} = useSelector((state: RootState) => state.user);
const {chatClient, setChannel} = useContext(ChatContext);
const state: RootState = useStore().getState();
@@ -97,8 +96,9 @@ const ProfileBody: React.FC<ProfileBodyProps> = ({
};
const onPressMessage = async () => {
- if (!chatClientReady) {
- Alert.alert('Something wrong with chat');
+ if (!chatClient.user) {
+ // TODO: Add refresh control to retry establishing chat connection
+ Alert.alert('Unable to connect chat');
}
const channel = chatClient.channel('messaging', {
members: [loggedInUserId, String(userXId)],
diff --git a/src/routes/Routes.tsx b/src/routes/Routes.tsx
index 173a6a6c..adc6253b 100644
--- a/src/routes/Routes.tsx
+++ b/src/routes/Routes.tsx
@@ -54,7 +54,7 @@ const Routes: React.FC = () => {
if (userId) {
fcmService.setUpPushNotifications();
fcmService.sendFcmTokenToServer();
- connectChatAccount(loggedInUserId, chatClient, dispatch);
+ connectChatAccount(loggedInUserId, chatClient);
}
}, []);
diff --git a/src/screens/chat/ChatListScreen.tsx b/src/screens/chat/ChatListScreen.tsx
index dbdb7994..eb886232 100644
--- a/src/screens/chat/ChatListScreen.tsx
+++ b/src/screens/chat/ChatListScreen.tsx
@@ -31,9 +31,6 @@ interface ChatListScreenProps {
*/
const ChatListScreen: React.FC<ChatListScreenProps> = () => {
const {chatClient} = useContext(ChatContext);
- const chatClientReady = useSelector(
- (state: RootState) => state.user.chatClientReady,
- );
const state: RootState = useStore().getState();
const loggedInUserId = state.user.user.userId;
@@ -65,31 +62,29 @@ const ChatListScreen: React.FC<ChatListScreenProps> = () => {
channel.create();
}}
/>
- {chatClientReady && (
- <Chat client={chatClient}>
- <View style={styles.chatContainer}>
- <ChannelList<
- LocalAttachmentType,
- LocalChannelType,
- LocalCommandType,
- LocalEventType,
- LocalMessageType,
- LocalReactionType,
- LocalUserType
- >
- filters={memoizedFilters}
- options={{
- presence: true,
- state: true,
- watch: true,
- }}
- sort={{last_message_at: -1}}
- maxUnreadCount={99}
- Preview={ChannelPreview}
- />
- </View>
- </Chat>
- )}
+ <Chat client={chatClient}>
+ <View style={styles.chatContainer}>
+ <ChannelList<
+ LocalAttachmentType,
+ LocalChannelType,
+ LocalCommandType,
+ LocalEventType,
+ LocalMessageType,
+ LocalReactionType,
+ LocalUserType
+ >
+ filters={memoizedFilters}
+ options={{
+ presence: true,
+ state: true,
+ watch: true,
+ }}
+ sort={{last_message_at: -1}}
+ maxUnreadCount={99}
+ Preview={ChannelPreview}
+ />
+ </View>
+ </Chat>
</SafeAreaView>
<TabsGradient />
</View>
diff --git a/src/store/actions/user.ts b/src/store/actions/user.ts
index 0ed57fe6..c7d0d5a7 100644
--- a/src/store/actions/user.ts
+++ b/src/store/actions/user.ts
@@ -11,7 +11,6 @@ import {getTokenOrLogout} from '../../utils';
import {
clearHeaderAndProfileImages,
profileCompletionStageUpdated,
- setChatClientReady,
setIsOnboardedUser,
setNewNotificationReceived,
setNewVersionAvailable,
@@ -235,17 +234,3 @@ export const suggestedPeopleAnimatedTutorialFinished = (
}
};
-export const updateChatClientReady = (
- chatClientReady: boolean,
-): ThunkAction<Promise<void>, RootState, unknown, Action<string>> => async (
- dispatch,
-) => {
- try {
- dispatch({
- type: setChatClientReady.type,
- payload: {chatClientReady},
- });
- } catch (error) {
- console.log(error);
- }
-};
diff --git a/src/store/initialStates.ts b/src/store/initialStates.ts
index 546c57a9..02331eb6 100644
--- a/src/store/initialStates.ts
+++ b/src/store/initialStates.ts
@@ -41,7 +41,6 @@ export const EMPTY_PROFILE_PREVIEW_LIST = <ProfilePreviewType[]>[];
export const NO_USER_DATA = {
user: <UserType>NO_USER,
- chatClientReady: <boolean>false,
profile: <ProfileInfoType>NO_PROFILE,
avatar: <string | undefined>undefined,
cover: <string | undefined>undefined,
diff --git a/src/utils/messages.ts b/src/utils/messages.ts
index b2162d34..1c83ca9f 100644
--- a/src/utils/messages.ts
+++ b/src/utils/messages.ts
@@ -1,6 +1,6 @@
import AsyncStorage from '@react-native-community/async-storage';
import moment from 'moment';
-import {updateChatClientReady} from '../store/actions';
+// import {updateChatClientReady} from '../store/actions';
import {AppDispatch} from '../store/configureStore';
import {RootState} from '../store/rootReducer';
import {ChannelGroupedType} from '../types';
@@ -98,9 +98,7 @@ export const connectChatAccount = async (
},
chatToken,
);
- dispatch(updateChatClientReady(true));
} catch (err) {
- dispatch(updateChatClientReady(false));
console.log('Error while connecting user to Stream: ', err);
}
};