From bd2f89805d0bb1c2f1d08fe8d91099aa4f109d35 Mon Sep 17 00:00:00 2001
From: Ivan Chen <ivan@thetaggid.com>
Date: Tue, 29 Dec 2020 20:21:24 -0500
Subject: [TMA-461] Notifications Screen (#151)

* renamed ProfileStack to MainStack, created initial notifications data type

* cleaned up code

* added notifications to redux

* finished sectioned list

* updated types to make more sense

* finished sectioned notifications by date

* updated notification type and tested mock backend integration

* finished read or unread logic

* minor changes

* another minor fix

* finished integration

* moved stuff

* added ability to navigate to user profile

Co-authored-by: Husam Salhab <47015061+hsalhab@users.noreply.github.com>
---
 src/routes/profile/ProfileStackScreen.tsx | 166 ------------------------------
 1 file changed, 166 deletions(-)
 delete mode 100644 src/routes/profile/ProfileStackScreen.tsx

(limited to 'src/routes/profile/ProfileStackScreen.tsx')

diff --git a/src/routes/profile/ProfileStackScreen.tsx b/src/routes/profile/ProfileStackScreen.tsx
deleted file mode 100644
index 4fc9f0c7..00000000
--- a/src/routes/profile/ProfileStackScreen.tsx
+++ /dev/null
@@ -1,166 +0,0 @@
-import React from 'react';
-import {
-  IndividualMoment,
-  CaptionScreen,
-  SocialMediaTaggs,
-  SearchScreen,
-  ProfileScreen,
-  MomentCommentsScreen,
-  FollowersListScreen,
-  EditProfile,
-  CategorySelection,
-} from '../../screens';
-import {ProfileStack, ProfileStackParams} from './ProfileStackNavigator';
-import {RouteProp} from '@react-navigation/native';
-import {ScreenType} from '../../types';
-import {AvatarHeaderHeight} from '../../utils';
-import {StackNavigationOptions} from '@react-navigation/stack';
-
-/**
- * Trying to explain the purpose of each route on the stack (ACTUALLY A STACK)
- * Profile : To display the logged in user's profile when the userXId passed in to it is (undefined | null | empty string) else displays profile of the user being visited.
- * Search : To display the search screen. Search for a user on this screen, click on a result tile and navigate to the same.
- * When you click on the search icon after looking at a user's profile, the stack gets reset and you come back to the top of the stack (First screen : Search in this case)
- * SocialMediaTaggs : To display user data for any social media account set up by the user.
- * IndividualMoment : To display individual images uploaded by the user (Navigate to comments from this screen, click on a commenter's profile pic / username, look at a user's profile. Click on the profile icon again to come back to your own profile).
- * MomentCommentsScreen : Displays comments posted by users on an image uploaded by the user.
- * EditProfile : To edit logged in user's information.
- */
-
-type ProfileStackRouteProps = RouteProp<ProfileStackParams, 'Profile'>;
-
-interface ProfileStackProps {
-  route: ProfileStackRouteProps;
-}
-
-const ProfileStackScreen: React.FC<ProfileStackProps> = ({route}) => {
-  const {screenType} = route.params;
-
-  const isProfileStack = screenType === ScreenType.Profile;
-
-  const modalStyle: StackNavigationOptions = {
-    cardStyle: {backgroundColor: 'transparent'},
-    gestureDirection: 'vertical',
-    cardOverlayEnabled: true,
-    cardStyleInterpolator: ({current: {progress}}) => ({
-      cardStyle: {
-        opacity: progress.interpolate({
-          inputRange: [0, 0.5, 0.9, 1],
-          outputRange: [0, 0.25, 0.7, 1],
-        }),
-      },
-      overlayStyle: {
-        backgroundColor: '#505050',
-        opacity: progress.interpolate({
-          inputRange: [0, 1],
-          outputRange: [0, 0.9],
-          extrapolate: 'clamp',
-        }),
-      },
-    }),
-  };
-
-  return (
-    <ProfileStack.Navigator
-      screenOptions={{
-        headerShown: false,
-      }}
-      mode="card"
-      initialRouteName={isProfileStack ? 'Profile' : 'Search'}>
-      <ProfileStack.Screen
-        name="Profile"
-        component={ProfileScreen}
-        options={{
-          headerShown: true,
-          headerTransparent: true,
-          headerBackTitleVisible: false,
-          headerTitle: '',
-          headerTintColor: 'white',
-          headerStyle: {height: AvatarHeaderHeight},
-        }}
-        initialParams={{
-          screenType,
-        }}
-      />
-      {!isProfileStack ? (
-        <ProfileStack.Screen
-          name="Search"
-          component={SearchScreen}
-          initialParams={{screenType}}
-        />
-      ) : (
-        <React.Fragment />
-      )}
-      <ProfileStack.Screen
-        name="SocialMediaTaggs"
-        component={SocialMediaTaggs}
-        options={{
-          headerShown: true,
-          headerTransparent: true,
-          headerBackTitleVisible: false,
-          headerTitle: '',
-          headerTintColor: 'white',
-          headerStyle: {height: AvatarHeaderHeight},
-        }}
-        initialParams={{screenType}}
-      />
-      <ProfileStack.Screen
-        name="CategorySelection"
-        component={CategorySelection}
-        options={{
-          headerShown: true,
-          headerTransparent: true,
-          headerBackTitleVisible: false,
-          headerTintColor: 'white',
-          headerTitle: '',
-        }}
-      />
-      {isProfileStack ? (
-        <ProfileStack.Screen
-          name="CaptionScreen"
-          component={CaptionScreen}
-          options={{...modalStyle, gestureEnabled: false}}
-        />
-      ) : (
-        <React.Fragment />
-      )}
-      <ProfileStack.Screen
-        name="IndividualMoment"
-        component={IndividualMoment}
-        options={{
-          ...modalStyle,
-        }}
-        initialParams={{screenType}}
-      />
-      <ProfileStack.Screen
-        name="MomentCommentsScreen"
-        component={MomentCommentsScreen}
-        options={{
-          ...modalStyle,
-        }}
-        initialParams={{screenType}}
-      />
-      <ProfileStack.Screen
-        name="FollowersListScreen"
-        component={FollowersListScreen}
-        options={{
-          ...modalStyle,
-        }}
-        initialParams={{screenType}}
-      />
-      <ProfileStack.Screen
-        name="EditProfile"
-        component={EditProfile}
-        options={{
-          headerShown: true,
-          headerTitle: 'Edit Profile',
-          headerTransparent: true,
-          headerBackTitleVisible: false,
-          headerTintColor: 'white',
-        }}
-      />
-    </ProfileStack.Navigator>
-  );
-};
-
-export default ProfileStackScreen;
-- 
cgit v1.2.3-70-g09d2

