@messenger-box/slack-ui-mobile 0.0.1-alpha.436
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/lib/apollo/index.d.ts +0 -0
- package/lib/apollo/index.js +1 -0
- package/lib/apollo/index.js.map +1 -0
- package/lib/assets/fonts/SpaceMono-Regular.ttf +0 -0
- package/lib/assets/fonts/circular-pro-bold.ttf +0 -0
- package/lib/assets/fonts/circular-pro-book.ttf +0 -0
- package/lib/assets/fonts/larsseit-bold.ttf +0 -0
- package/lib/assets/fonts/larsseit-italic.ttf +0 -0
- package/lib/assets/fonts/larsseit-thin.ttf +0 -0
- package/lib/assets/images/adaptive-icon.png +0 -0
- package/lib/assets/images/comment.png +0 -0
- package/lib/assets/images/favicon.png +0 -0
- package/lib/assets/images/filter.png +0 -0
- package/lib/assets/images/icon.png +0 -0
- package/lib/assets/images/more.png +0 -0
- package/lib/assets/images/right.png +0 -0
- package/lib/assets/images/send.png +0 -0
- package/lib/assets/images/splash.png +0 -0
- package/lib/assets/logo.png +0 -0
- package/lib/components/AddMemberToChannel/AddMemberToChannel.d.ts +3 -0
- package/lib/components/AddMemberToChannel/AddMemberToChannel.js +110 -0
- package/lib/components/AddMemberToChannel/AddMemberToChannel.js.map +1 -0
- package/lib/components/AddMemberToChannel/index.d.ts +2 -0
- package/lib/components/AddMemberToChannel/index.js +3 -0
- package/lib/components/AddMemberToChannel/index.js.map +1 -0
- package/lib/components/CachedImage/consts.d.ts +2 -0
- package/lib/components/CachedImage/consts.js +5 -0
- package/lib/components/CachedImage/consts.js.map +1 -0
- package/lib/components/CachedImage/index.d.ts +8 -0
- package/lib/components/CachedImage/index.js +92 -0
- package/lib/components/CachedImage/index.js.map +1 -0
- package/lib/components/CustomBottomTabs/CustomBottomTabs.d.ts +3 -0
- package/lib/components/CustomBottomTabs/CustomBottomTabs.js +56 -0
- package/lib/components/CustomBottomTabs/CustomBottomTabs.js.map +1 -0
- package/lib/components/CustomBottomTabs/index.d.ts +2 -0
- package/lib/components/CustomBottomTabs/index.js +3 -0
- package/lib/components/CustomBottomTabs/index.js.map +1 -0
- package/lib/components/CustomDrawer/CustomDrawer.d.ts +3 -0
- package/lib/components/CustomDrawer/CustomDrawer.js +99 -0
- package/lib/components/CustomDrawer/CustomDrawer.js.map +1 -0
- package/lib/components/CustomDrawer/index.d.ts +2 -0
- package/lib/components/CustomDrawer/index.js +3 -0
- package/lib/components/CustomDrawer/index.js.map +1 -0
- package/lib/components/Header/Header.d.ts +8 -0
- package/lib/components/Header/Header.js +19 -0
- package/lib/components/Header/Header.js.map +1 -0
- package/lib/components/Header/index.d.ts +2 -0
- package/lib/components/Header/index.js +3 -0
- package/lib/components/Header/index.js.map +1 -0
- package/lib/components/Header/styles.d.ts +43 -0
- package/lib/components/Header/styles.js +49 -0
- package/lib/components/Header/styles.js.map +1 -0
- package/lib/components/LoadingSpinner/index.d.ts +7 -0
- package/lib/components/LoadingSpinner/index.js +26 -0
- package/lib/components/LoadingSpinner/index.js.map +1 -0
- package/lib/components/NavigationComponent/NavigationComponent.d.ts +8 -0
- package/lib/components/NavigationComponent/NavigationComponent.js +88 -0
- package/lib/components/NavigationComponent/NavigationComponent.js.map +1 -0
- package/lib/components/NavigationComponent/index.d.ts +1 -0
- package/lib/components/NavigationComponent/index.js +2 -0
- package/lib/components/NavigationComponent/index.js.map +1 -0
- package/lib/components/NavigationHeader/NavigationHeader.d.ts +3 -0
- package/lib/components/NavigationHeader/NavigationHeader.js +67 -0
- package/lib/components/NavigationHeader/NavigationHeader.js.map +1 -0
- package/lib/components/NavigationHeader/NavigationHeaderChat.d.ts +3 -0
- package/lib/components/NavigationHeader/NavigationHeaderChat.js +58 -0
- package/lib/components/NavigationHeader/NavigationHeaderChat.js.map +1 -0
- package/lib/components/NavigationHeader/index.d.ts +4 -0
- package/lib/components/NavigationHeader/index.js +5 -0
- package/lib/components/NavigationHeader/index.js.map +1 -0
- package/lib/components/RootNavigation.d.ts +3 -0
- package/lib/components/RootNavigation.js +11 -0
- package/lib/components/RootNavigation.js.map +1 -0
- package/lib/components/Search/AddByEmail.d.ts +3 -0
- package/lib/components/Search/AddByEmail.js +35 -0
- package/lib/components/Search/AddByEmail.js.map +1 -0
- package/lib/components/Search/AddChannel.d.ts +3 -0
- package/lib/components/Search/AddChannel.js +120 -0
- package/lib/components/Search/AddChannel.js.map +1 -0
- package/lib/components/Search/AddFromContacts.d.ts +3 -0
- package/lib/components/Search/AddFromContacts.js +116 -0
- package/lib/components/Search/AddFromContacts.js.map +1 -0
- package/lib/components/Search/AddPeople.d.ts +3 -0
- package/lib/components/Search/AddPeople.js +340 -0
- package/lib/components/Search/AddPeople.js.map +1 -0
- package/lib/components/Search/AddTeam.d.ts +3 -0
- package/lib/components/Search/AddTeam.js +84 -0
- package/lib/components/Search/AddTeam.js.map +1 -0
- package/lib/components/Search/Channels.d.ts +3 -0
- package/lib/components/Search/Channels.js +226 -0
- package/lib/components/Search/Channels.js.map +1 -0
- package/lib/components/Search/People.d.ts +5 -0
- package/lib/components/Search/People.js +29 -0
- package/lib/components/Search/People.js.map +1 -0
- package/lib/components/Tiles/Tiles.d.ts +7 -0
- package/lib/components/Tiles/Tiles.js +21 -0
- package/lib/components/Tiles/Tiles.js.map +1 -0
- package/lib/components/Tiles/index.d.ts +2 -0
- package/lib/components/Tiles/index.js +3 -0
- package/lib/components/Tiles/index.js.map +1 -0
- package/lib/components/Tiles/styles.d.ts +40 -0
- package/lib/components/Tiles/styles.js +45 -0
- package/lib/components/Tiles/styles.js.map +1 -0
- package/lib/components/VirtualizedScrollView/VirtualizedScrollView.d.ts +3 -0
- package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js +7 -0
- package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js.map +1 -0
- package/lib/components/VirtualizedScrollView/index.d.ts +2 -0
- package/lib/components/VirtualizedScrollView/index.js +3 -0
- package/lib/components/VirtualizedScrollView/index.js.map +1 -0
- package/lib/components/index.d.ts +7 -0
- package/lib/components/index.js +8 -0
- package/lib/components/index.js.map +1 -0
- package/lib/config/env-config.d.ts +5 -0
- package/lib/config/env-config.js +10 -0
- package/lib/config/env-config.js.map +1 -0
- package/lib/config/index.d.ts +1 -0
- package/lib/config/index.js +2 -0
- package/lib/config/index.js.map +1 -0
- package/lib/constants/Colors.d.ts +57 -0
- package/lib/constants/Colors.js +62 -0
- package/lib/constants/Colors.js.map +1 -0
- package/lib/constants/Layout.d.ts +8 -0
- package/lib/constants/Layout.js +11 -0
- package/lib/constants/Layout.js.map +1 -0
- package/lib/constants/device.d.ts +10 -0
- package/lib/constants/device.js +31 -0
- package/lib/constants/device.js.map +1 -0
- package/lib/constants/fonts.d.ts +8 -0
- package/lib/constants/fonts.js +8 -0
- package/lib/constants/fonts.js.map +1 -0
- package/lib/constants/globalStyles.d.ts +202 -0
- package/lib/constants/globalStyles.js +90 -0
- package/lib/constants/globalStyles.js.map +1 -0
- package/lib/constants/index.d.ts +8 -0
- package/lib/constants/index.js +9 -0
- package/lib/constants/index.js.map +1 -0
- package/lib/constants/preloadImages.d.ts +6 -0
- package/lib/constants/preloadImages.js +9 -0
- package/lib/constants/preloadImages.js.map +1 -0
- package/lib/constants/routes.d.ts +19 -0
- package/lib/constants/routes.js +25 -0
- package/lib/constants/routes.js.map +1 -0
- package/lib/hooks/index.d.ts +5 -0
- package/lib/hooks/index.js +6 -0
- package/lib/hooks/index.js.map +1 -0
- package/lib/hooks/useCachedResources.d.ts +1 -0
- package/lib/hooks/useCachedResources.js +39 -0
- package/lib/hooks/useCachedResources.js.map +1 -0
- package/lib/hooks/useColorScheme.d.ts +2 -0
- package/lib/hooks/useColorScheme.js +8 -0
- package/lib/hooks/useColorScheme.js.map +1 -0
- package/lib/hooks/useColorScheme.web.d.ts +1 -0
- package/lib/hooks/useColorScheme.web.js +6 -0
- package/lib/hooks/useColorScheme.web.js.map +1 -0
- package/lib/hooks/useDrawerLayout.d.ts +12 -0
- package/lib/hooks/useDrawerLayout.js +49 -0
- package/lib/hooks/useDrawerLayout.js.map +1 -0
- package/lib/hooks/useExpoNotificationProvider.d.ts +7 -0
- package/lib/hooks/useExpoNotificationProvider.js +119 -0
- package/lib/hooks/useExpoNotificationProvider.js.map +1 -0
- package/lib/index.d.ts +8 -0
- package/lib/index.js +9 -0
- package/lib/index.js.map +1 -0
- package/lib/interfaces/index.d.ts +0 -0
- package/lib/interfaces/index.js +1 -0
- package/lib/interfaces/index.js.map +1 -0
- package/lib/module.d.ts +3 -0
- package/lib/module.js +4 -0
- package/lib/module.js.map +1 -0
- package/lib/navigation/AccountNavigator.d.ts +2 -0
- package/lib/navigation/AccountNavigator.js +37 -0
- package/lib/navigation/AccountNavigator.js.map +1 -0
- package/lib/navigation/ExploreNavigator.d.ts +2 -0
- package/lib/navigation/ExploreNavigator.js +243 -0
- package/lib/navigation/ExploreNavigator.js.map +1 -0
- package/lib/navigation/InboxNavigator.d.ts +2 -0
- package/lib/navigation/InboxNavigator.js +76 -0
- package/lib/navigation/InboxNavigator.js.map +1 -0
- package/lib/navigation/InboxTabNavigation.d.ts +3 -0
- package/lib/navigation/InboxTabNavigation.js +16 -0
- package/lib/navigation/InboxTabNavigation.js.map +1 -0
- package/lib/navigation/MentionsNavigator.d.ts +2 -0
- package/lib/navigation/MentionsNavigator.js +37 -0
- package/lib/navigation/MentionsNavigator.js.map +1 -0
- package/lib/navigation/SearchNavigator.d.ts +2 -0
- package/lib/navigation/SearchNavigator.js +37 -0
- package/lib/navigation/SearchNavigator.js.map +1 -0
- package/lib/navigation/index.d.ts +5 -0
- package/lib/navigation/index.js +6 -0
- package/lib/navigation/index.js.map +1 -0
- package/lib/screens/Account/AccountScreen.d.ts +3 -0
- package/lib/screens/Account/AccountScreen.js +128 -0
- package/lib/screens/Account/AccountScreen.js.map +1 -0
- package/lib/screens/Account/index.d.ts +2 -0
- package/lib/screens/Account/index.js +3 -0
- package/lib/screens/Account/index.js.map +1 -0
- package/lib/screens/Channels/AddChannel.d.ts +3 -0
- package/lib/screens/Channels/AddChannel.js +120 -0
- package/lib/screens/Channels/AddChannel.js.map +1 -0
- package/lib/screens/Channels/Channels.d.ts +3 -0
- package/lib/screens/Channels/Channels.js +219 -0
- package/lib/screens/Channels/Channels.js.map +1 -0
- package/lib/screens/Channels/index.d.ts +3 -0
- package/lib/screens/Channels/index.js +4 -0
- package/lib/screens/Channels/index.js.map +1 -0
- package/lib/screens/Files/FilesScreen.d.ts +6 -0
- package/lib/screens/Files/FilesScreen.js +11 -0
- package/lib/screens/Files/FilesScreen.js.map +1 -0
- package/lib/screens/Files/index.d.ts +2 -0
- package/lib/screens/Files/index.js +3 -0
- package/lib/screens/Files/index.js.map +1 -0
- package/lib/screens/Home/Components/Channels/Channels.d.ts +3 -0
- package/lib/screens/Home/Components/Channels/Channels.js +92 -0
- package/lib/screens/Home/Components/Channels/Channels.js.map +1 -0
- package/lib/screens/Home/Components/Channels/index.d.ts +2 -0
- package/lib/screens/Home/Components/Channels/index.js +3 -0
- package/lib/screens/Home/Components/Channels/index.js.map +1 -0
- package/lib/screens/Home/Components/DirectChannels/DirectChannels.d.ts +3 -0
- package/lib/screens/Home/Components/DirectChannels/DirectChannels.js +138 -0
- package/lib/screens/Home/Components/DirectChannels/DirectChannels.js.map +1 -0
- package/lib/screens/Home/Components/DirectChannels/index.d.ts +2 -0
- package/lib/screens/Home/Components/DirectChannels/index.js +3 -0
- package/lib/screens/Home/Components/DirectChannels/index.js.map +1 -0
- package/lib/screens/Home/Components/Teams/Teams.d.ts +3 -0
- package/lib/screens/Home/Components/Teams/Teams.js +91 -0
- package/lib/screens/Home/Components/Teams/Teams.js.map +1 -0
- package/lib/screens/Home/Components/Teams/index.d.ts +2 -0
- package/lib/screens/Home/Components/Teams/index.js +3 -0
- package/lib/screens/Home/Components/Teams/index.js.map +1 -0
- package/lib/screens/Home/HomeScreen.d.ts +3 -0
- package/lib/screens/Home/HomeScreen.js +261 -0
- package/lib/screens/Home/HomeScreen.js.map +1 -0
- package/lib/screens/Home/index.d.ts +2 -0
- package/lib/screens/Home/index.js +3 -0
- package/lib/screens/Home/index.js.map +1 -0
- package/lib/screens/Home/styles.d.ts +86 -0
- package/lib/screens/Home/styles.js +91 -0
- package/lib/screens/Home/styles.js.map +1 -0
- package/lib/screens/Inbox/InboxScreen.d.ts +3 -0
- package/lib/screens/Inbox/InboxScreen.js +19 -0
- package/lib/screens/Inbox/InboxScreen.js.map +1 -0
- package/lib/screens/Inbox/index.d.ts +2 -0
- package/lib/screens/Inbox/index.js +3 -0
- package/lib/screens/Inbox/index.js.map +1 -0
- package/lib/screens/Login.d.ts +2 -0
- package/lib/screens/Login.js +51 -0
- package/lib/screens/Login.js.map +1 -0
- package/lib/screens/Notification/NotificationsScreen.d.ts +2 -0
- package/lib/screens/Notification/NotificationsScreen.js +10 -0
- package/lib/screens/Notification/NotificationsScreen.js.map +1 -0
- package/lib/screens/Notification/index.d.ts +2 -0
- package/lib/screens/Notification/index.js +3 -0
- package/lib/screens/Notification/index.js.map +1 -0
- package/lib/screens/Organization/CreateOrganization.d.ts +3 -0
- package/lib/screens/Organization/CreateOrganization.js +174 -0
- package/lib/screens/Organization/CreateOrganization.js.map +1 -0
- package/lib/screens/Organization/index.d.ts +2 -0
- package/lib/screens/Organization/index.js +3 -0
- package/lib/screens/Organization/index.js.map +1 -0
- package/lib/screens/Peoples/AddByEmail.d.ts +3 -0
- package/lib/screens/Peoples/AddByEmail.js +35 -0
- package/lib/screens/Peoples/AddByEmail.js.map +1 -0
- package/lib/screens/Peoples/AddFromContacts.d.ts +3 -0
- package/lib/screens/Peoples/AddFromContacts.js +116 -0
- package/lib/screens/Peoples/AddFromContacts.js.map +1 -0
- package/lib/screens/Peoples/AddPeople.d.ts +3 -0
- package/lib/screens/Peoples/AddPeople.js +283 -0
- package/lib/screens/Peoples/AddPeople.js.map +1 -0
- package/lib/screens/Peoples/People.d.ts +3 -0
- package/lib/screens/Peoples/People.js +29 -0
- package/lib/screens/Peoples/People.js.map +1 -0
- package/lib/screens/Peoples/index.d.ts +3 -0
- package/lib/screens/Peoples/index.js +4 -0
- package/lib/screens/Peoples/index.js.map +1 -0
- package/lib/screens/Profile/ProfileScreen.d.ts +3 -0
- package/lib/screens/Profile/ProfileScreen.js +119 -0
- package/lib/screens/Profile/ProfileScreen.js.map +1 -0
- package/lib/screens/Profile/index.d.ts +2 -0
- package/lib/screens/Profile/index.js +3 -0
- package/lib/screens/Profile/index.js.map +1 -0
- package/lib/screens/Profile/styles.d.ts +84 -0
- package/lib/screens/Profile/styles.js +90 -0
- package/lib/screens/Profile/styles.js.map +1 -0
- package/lib/screens/Saved/SavedScreen.d.ts +7 -0
- package/lib/screens/Saved/SavedScreen.js +15 -0
- package/lib/screens/Saved/SavedScreen.js.map +1 -0
- package/lib/screens/Saved/index.d.ts +2 -0
- package/lib/screens/Saved/index.js +3 -0
- package/lib/screens/Saved/index.js.map +1 -0
- package/lib/screens/Saved/styles.d.ts +86 -0
- package/lib/screens/Saved/styles.js +91 -0
- package/lib/screens/Saved/styles.js.map +1 -0
- package/lib/screens/Search/JumpTo.d.ts +4 -0
- package/lib/screens/Search/JumpTo.js +123 -0
- package/lib/screens/Search/JumpTo.js.map +1 -0
- package/lib/screens/Search/SearchScreen.d.ts +4 -0
- package/lib/screens/Search/SearchScreen.js +194 -0
- package/lib/screens/Search/SearchScreen.js.map +1 -0
- package/lib/screens/Search/index.d.ts +3 -0
- package/lib/screens/Search/index.js +4 -0
- package/lib/screens/Search/index.js.map +1 -0
- package/lib/screens/Search/styles.d.ts +83 -0
- package/lib/screens/Search/styles.js +88 -0
- package/lib/screens/Search/styles.js.map +1 -0
- package/lib/screens/Teams/AddTeam.d.ts +3 -0
- package/lib/screens/Teams/AddTeam.js +84 -0
- package/lib/screens/Teams/AddTeam.js.map +1 -0
- package/lib/screens/Teams/index.d.ts +2 -0
- package/lib/screens/Teams/index.js +3 -0
- package/lib/screens/Teams/index.js.map +1 -0
- package/lib/screens/Wiki/WikiScreen.d.ts +6 -0
- package/lib/screens/Wiki/WikiScreen.js +11 -0
- package/lib/screens/Wiki/WikiScreen.js.map +1 -0
- package/lib/screens/Wiki/index.d.ts +2 -0
- package/lib/screens/Wiki/index.js +3 -0
- package/lib/screens/Wiki/index.js.map +1 -0
- package/lib/screens/index.d.ts +15 -0
- package/lib/screens/index.js +16 -0
- package/lib/screens/index.js.map +1 -0
- package/lib/utils/index.d.ts +0 -0
- package/lib/utils/index.js +2 -0
- package/lib/utils/index.js.map +1 -0
- package/package.json +71 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Login, Saved } from '../screens';
|
|
2
|
+
import { NavigationHeader, LoadingSpinnerDefault } from '../components';
|
|
3
|
+
import { Feature } from '@common-stack/client-react';
|
|
4
|
+
import { Lifecycle } from '@admin-layout/mobile-layout';
|
|
5
|
+
import { FontAwesome } from '@expo/vector-icons';
|
|
6
|
+
const mentionsConfig = {
|
|
7
|
+
['//:orgName/l/mentions']: {
|
|
8
|
+
exact: true,
|
|
9
|
+
name: 'Saved',
|
|
10
|
+
menu_position: 'bottom',
|
|
11
|
+
auth: true,
|
|
12
|
+
props: {
|
|
13
|
+
initialParams: { orgName: null },
|
|
14
|
+
component: (props) => (<Lifecycle renderWhenPhase={3 /* LifecyclePhase.Restored */} loadingRenderer={LoadingSpinnerDefault}>
|
|
15
|
+
<Saved {...props}/>
|
|
16
|
+
</Lifecycle>),
|
|
17
|
+
unauthenticatedComponent: (props) => <Login {...props}/>,
|
|
18
|
+
options: {
|
|
19
|
+
headerShown: true,
|
|
20
|
+
header: (props) => <NavigationHeader {...props}/>,
|
|
21
|
+
title: 'Mentions & reactions',
|
|
22
|
+
headerTitle: 'Mentions & reactions',
|
|
23
|
+
priority: 3,
|
|
24
|
+
tabBarActiveTintColor: '#000',
|
|
25
|
+
tabBarInactiveTintColor: 'black',
|
|
26
|
+
tabBarIcon: ({ color }) => <FontAwesome name="at" size={24} color={color}/>,
|
|
27
|
+
tabBarLabel: 'Mentions',
|
|
28
|
+
gestureEnabled: false,
|
|
29
|
+
swipeEnabled: false,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
export const mentionsFeature = new Feature({
|
|
35
|
+
routeConfig: mentionsConfig,
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=MentionsNavigator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MentionsNavigator.js","sourceRoot":"","sources":["../../src/navigation/MentionsNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAA2B,WAAW,EAA2B,MAAM,oBAAoB,CAAC;AAGnG,MAAM,cAAc,GAAG;IACnB,CAAC,uBAAuB,CAAC,EAAE;QACvB,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,OAAO;QACb,aAAa,EAAE,QAAQ;QACvB,IAAI,EAAE,IAAI;QACV,KAAK,EAAE;YACH,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YAChC,SAAS,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CACvB,CAAC,SAAS,CAAC,eAAe,CAAC,iCAAyB,CAAC,eAAe,CAAC,CAAC,qBAAqB,CAAC,CACxF;oBAAA,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EACrB;gBAAA,EAAE,SAAS,CAAC,CACf;YACD,wBAAwB,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAG;YAC9D,OAAO,EAAE;gBACL,WAAW,EAAE,IAAI;gBACjB,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAG;gBACvD,KAAK,EAAE,sBAAsB;gBAC7B,WAAW,EAAE,sBAAsB;gBACnC,QAAQ,EAAE,CAAC;gBACX,qBAAqB,EAAE,MAAM;gBAC7B,uBAAuB,EAAE,OAAO;gBAChC,UAAU,EAAE,CAAC,EAAE,KAAK,EAAkB,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAG;gBAC5F,WAAW,EAAE,UAAU;gBACvB,cAAc,EAAE,KAAK;gBACrB,YAAY,EAAE,KAAK;aACtB;SACJ;KACJ;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,OAAO,CAAC;IACvC,WAAW,EAAE,cAAqB;CACrC,CAAC,CAAC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { Login, Search } from '../screens';
|
|
2
|
+
import { NavigationHeader, LoadingSpinnerDefault } from '../components';
|
|
3
|
+
import { Feature } from '@common-stack/client-react';
|
|
4
|
+
import { Lifecycle } from '@admin-layout/mobile-layout';
|
|
5
|
+
import { AntDesign } from '@expo/vector-icons';
|
|
6
|
+
const searchConfig = {
|
|
7
|
+
['//:orgName/l/search']: {
|
|
8
|
+
exact: true,
|
|
9
|
+
name: 'Search',
|
|
10
|
+
menu_position: 'bottom',
|
|
11
|
+
auth: true,
|
|
12
|
+
props: {
|
|
13
|
+
initialParams: { orgName: null },
|
|
14
|
+
component: (props) => (<Lifecycle renderWhenPhase={3 /* LifecyclePhase.Restored */} loadingRenderer={LoadingSpinnerDefault}>
|
|
15
|
+
<Search {...props}/>
|
|
16
|
+
</Lifecycle>),
|
|
17
|
+
unauthenticatedComponent: (props) => <Login {...props}/>,
|
|
18
|
+
options: {
|
|
19
|
+
headerShown: true,
|
|
20
|
+
header: (props) => <NavigationHeader {...props}/>,
|
|
21
|
+
title: 'Search',
|
|
22
|
+
headerTitle: 'Search',
|
|
23
|
+
priority: 4,
|
|
24
|
+
tabBarActiveTintColor: '#000',
|
|
25
|
+
tabBarInactiveTintColor: 'black',
|
|
26
|
+
tabBarIcon: ({ color }) => <AntDesign name="search1" size={24} color={color}/>,
|
|
27
|
+
tabBarLabel: 'Search',
|
|
28
|
+
gestureEnabled: false,
|
|
29
|
+
swipeEnabled: false,
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
export const searchFeature = new Feature({
|
|
35
|
+
routeConfig: searchConfig,
|
|
36
|
+
});
|
|
37
|
+
//# sourceMappingURL=SearchNavigator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SearchNavigator.js","sourceRoot":"","sources":["../../src/navigation/SearchNavigator.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAsD,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAGnG,MAAM,YAAY,GAAG;IACjB,CAAC,qBAAqB,CAAC,EAAE;QACrB,KAAK,EAAE,IAAI;QACX,IAAI,EAAE,QAAQ;QACd,aAAa,EAAE,QAAQ;QACvB,IAAI,EAAE,IAAI;QACV,KAAK,EAAE;YACH,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;YAChC,SAAS,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CACvB,CAAC,SAAS,CAAC,eAAe,CAAC,iCAAyB,CAAC,eAAe,CAAC,CAAC,qBAAqB,CAAC,CACxF;oBAAA,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,EACtB;gBAAA,EAAE,SAAS,CAAC,CACf;YACD,wBAAwB,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,EAAG;YAC9D,OAAO,EAAE;gBACL,WAAW,EAAE,IAAI;gBACjB,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,EAAG;gBACvD,KAAK,EAAE,QAAQ;gBACf,WAAW,EAAE,QAAQ;gBACrB,QAAQ,EAAE,CAAC;gBACX,qBAAqB,EAAE,MAAM;gBAC7B,uBAAuB,EAAE,OAAO;gBAChC,UAAU,EAAE,CAAC,EAAE,KAAK,EAAkB,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAG;gBAC/F,WAAW,EAAE,QAAQ;gBACrB,cAAc,EAAE,KAAK;gBACrB,YAAY,EAAE,KAAK;aACtB;SACJ;KACJ;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC;IACrC,WAAW,EAAE,YAAmB;CACnC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/navigation/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { FlatList, SafeAreaView, Text, TouchableHighlight, View } from 'react-native';
|
|
3
|
+
import { useDispatch, useSelector } from 'react-redux';
|
|
4
|
+
import { userSelector, logoutAndRedirect } from '@adminide-stack/user-auth0-client';
|
|
5
|
+
import { Toast, Image } from 'native-base';
|
|
6
|
+
import { useNavigation } from '@react-navigation/native';
|
|
7
|
+
import { useGetOrgNameFromContextQuery } from '@admin-layout/client';
|
|
8
|
+
const AccountScreen = () => {
|
|
9
|
+
const { data: orgData, loading: orgLoading } = useGetOrgNameFromContextQuery();
|
|
10
|
+
React.useEffect(() => {
|
|
11
|
+
if (orgData === null || orgData === void 0 ? void 0 : orgData.getOrgNameFromContext) {
|
|
12
|
+
const params = Object.assign({}, orgData === null || orgData === void 0 ? void 0 : orgData.getOrgNameFromContext);
|
|
13
|
+
console.log('params', params);
|
|
14
|
+
}
|
|
15
|
+
}, [orgData === null || orgData === void 0 ? void 0 : orgData.getOrgNameFromContext]);
|
|
16
|
+
const accountSettings = [
|
|
17
|
+
{
|
|
18
|
+
id: '1',
|
|
19
|
+
title: 'Personal Information',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
id: '2',
|
|
23
|
+
title: 'Payments and payouts',
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
id: '3',
|
|
27
|
+
title: 'Notifications',
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
id: '4',
|
|
31
|
+
title: 'Travel for work',
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
const dispatch = useDispatch();
|
|
35
|
+
const userState = useSelector(userSelector);
|
|
36
|
+
return (<SafeAreaView>
|
|
37
|
+
<FlatList data={accountSettings} ListHeaderComponent={() => (<>
|
|
38
|
+
{/* Profile Picture + Name */}
|
|
39
|
+
<UserProfile />
|
|
40
|
+
{/* Banner */}
|
|
41
|
+
<Banner />
|
|
42
|
+
|
|
43
|
+
{/* Account Settings Header */}
|
|
44
|
+
<View style={{ margin: 20 }}>
|
|
45
|
+
<Text style={{ fontSize: 12, color: '#444', fontWeight: '400' }}>Account Settings</Text>
|
|
46
|
+
</View>
|
|
47
|
+
</>)} renderItem={({ item, index }) => {
|
|
48
|
+
return (<TouchableHighlight underlayColor={'transparent'} activeOpacity={0.5} style={{
|
|
49
|
+
marginTop: index === 0 ? 10 : 0,
|
|
50
|
+
marginBottom: 20,
|
|
51
|
+
marginHorizontal: 20,
|
|
52
|
+
height: 40,
|
|
53
|
+
borderBottomColor: 'lightgrey',
|
|
54
|
+
borderBottomWidth: 1,
|
|
55
|
+
}}>
|
|
56
|
+
<Text style={{ fontSize: 20, fontWeight: '300' }}>{item.title}</Text>
|
|
57
|
+
</TouchableHighlight>);
|
|
58
|
+
}}/>
|
|
59
|
+
|
|
60
|
+
{/* Hosting */}
|
|
61
|
+
|
|
62
|
+
{/* Referrals & Credits */}
|
|
63
|
+
</SafeAreaView>);
|
|
64
|
+
};
|
|
65
|
+
const UserProfile = () => {
|
|
66
|
+
var _a, _b, _c, _d;
|
|
67
|
+
const userState = useSelector(userSelector);
|
|
68
|
+
const dispatch = useDispatch();
|
|
69
|
+
const navigation = useNavigation();
|
|
70
|
+
const logout = () => {
|
|
71
|
+
//navigation.navigate('MainStack.Logout', { redirect: 'MainStack.MainDrawer.MainBottomTab.Account' })
|
|
72
|
+
try {
|
|
73
|
+
dispatch(logoutAndRedirect());
|
|
74
|
+
// dispatch(resetReduxState());
|
|
75
|
+
Toast.show({ title: 'Logging out' });
|
|
76
|
+
// await Auth.signOut();
|
|
77
|
+
}
|
|
78
|
+
catch (error) {
|
|
79
|
+
console.error('Error signing out', error);
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
// const logout = async () => {
|
|
83
|
+
// //navigation.navigate('MainStack.Logout', { redirect: 'MainStack.MainDrawer.MainBottomTab.Account' })
|
|
84
|
+
// try {
|
|
85
|
+
// dispatch(logoutAndRedirect());
|
|
86
|
+
// // dispatch(resetReduxState());
|
|
87
|
+
// Toast.show({ title: 'Logging out' });
|
|
88
|
+
// // await Auth.signOut();
|
|
89
|
+
// } catch (error) {
|
|
90
|
+
// console.error('Error signing out', error);
|
|
91
|
+
// }
|
|
92
|
+
// };
|
|
93
|
+
return (<View style={{ flexDirection: 'row', marginLeft: 20, paddingTop: 20 }}>
|
|
94
|
+
<Image alt="Profile Image" source={{
|
|
95
|
+
uri: (_a = userState === null || userState === void 0 ? void 0 : userState.profile) === null || _a === void 0 ? void 0 : _a.picture,
|
|
96
|
+
}} style={{
|
|
97
|
+
height: 70,
|
|
98
|
+
width: 70,
|
|
99
|
+
resizeMode: 'contain',
|
|
100
|
+
borderRadius: 35,
|
|
101
|
+
}}/>
|
|
102
|
+
<View style={{ justifyContent: 'center', marginLeft: 20 }}>
|
|
103
|
+
<Text style={{ fontSize: 24, fontWeight: 'bold' }}>{(_c = (_b = userState === null || userState === void 0 ? void 0 : userState.profile) === null || _b === void 0 ? void 0 : _b.name) !== null && _c !== void 0 ? _c : 'Enrique'}</Text>
|
|
104
|
+
<Text>{(_d = userState === null || userState === void 0 ? void 0 : userState.profile) === null || _d === void 0 ? void 0 : _d.email}</Text>
|
|
105
|
+
<TouchableHighlight underlayColor={'transparent'} activeOpacity={0.5} onPress={logout}>
|
|
106
|
+
<Text style={{ fontSize: 16, color: '#00A699' }}>Logout</Text>
|
|
107
|
+
</TouchableHighlight>
|
|
108
|
+
</View>
|
|
109
|
+
</View>);
|
|
110
|
+
};
|
|
111
|
+
const Banner = () => {
|
|
112
|
+
return (<View style={{
|
|
113
|
+
alignItems: 'center',
|
|
114
|
+
marginTop: 10,
|
|
115
|
+
paddingVertical: 20,
|
|
116
|
+
borderWidth: 1,
|
|
117
|
+
borderColor: 'lightgray',
|
|
118
|
+
}}>
|
|
119
|
+
<View>
|
|
120
|
+
<Text style={{ fontSize: 17, fontWeight: '300' }}>Earn money from your extra space</Text>
|
|
121
|
+
<TouchableHighlight underlayColor={'transparent'} activeOpacity={0.5} style={{ marginTop: 10 }}>
|
|
122
|
+
<Text style={{ fontSize: 15, fontWeight: 'bold', color: '#00A699' }}>Learn More</Text>
|
|
123
|
+
</TouchableHighlight>
|
|
124
|
+
</View>
|
|
125
|
+
</View>);
|
|
126
|
+
};
|
|
127
|
+
export default AccountScreen;
|
|
128
|
+
//# sourceMappingURL=AccountScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccountScreen.js","sourceRoot":"","sources":["../../../src/screens/Account/AccountScreen.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/screens/Account/index.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,iBAAiB,CAAC;AAEtC,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import React, { useState, useEffect } from 'react';
|
|
2
|
+
import { StyleSheet } from 'react-native';
|
|
3
|
+
import { Input, Text, VStack, Box, FormControl, Button } from 'native-base';
|
|
4
|
+
import Colors from '../../constants/Colors';
|
|
5
|
+
import { useAddChannelMutation } from '@messenger-box/platform-client';
|
|
6
|
+
import { NavigationRoutes } from '../../constants/routes';
|
|
7
|
+
const AddChannel = ({ navigation, route }) => {
|
|
8
|
+
const [name, setName] = useState('');
|
|
9
|
+
const [description, setDescription] = useState('');
|
|
10
|
+
const [showCreateButton, setShowCreateButton] = useState(false);
|
|
11
|
+
const [nameIsInvalid, setNameIsInvalid] = useState(false);
|
|
12
|
+
const [createChannel, createdChannel] = useAddChannelMutation({
|
|
13
|
+
onCompleted: (data) => {
|
|
14
|
+
var _a, _b, _c;
|
|
15
|
+
//console.log('create data',data)
|
|
16
|
+
if (data === null || data === void 0 ? void 0 : data.createChannel)
|
|
17
|
+
navigation.navigate(NavigationRoutes.AddPeople, {
|
|
18
|
+
channelId: (_a = data === null || data === void 0 ? void 0 : data.createChannel) === null || _a === void 0 ? void 0 : _a.id,
|
|
19
|
+
orgName: (_b = route === null || route === void 0 ? void 0 : route.params) === null || _b === void 0 ? void 0 : _b.orgName,
|
|
20
|
+
});
|
|
21
|
+
else
|
|
22
|
+
navigation.navigate(NavigationRoutes.Home, { orgName: (_c = route === null || route === void 0 ? void 0 : route.params) === null || _c === void 0 ? void 0 : _c.orgName });
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
// useEffect(() => {
|
|
26
|
+
// if(name && name.length > 0){
|
|
27
|
+
// let patt = /^[A-Za-z0-9_+\-]*$/;
|
|
28
|
+
// if (patt.test(name))
|
|
29
|
+
// {
|
|
30
|
+
// setNameIsInvalid(false)
|
|
31
|
+
// setShowCreateButton(true)
|
|
32
|
+
// }
|
|
33
|
+
// else
|
|
34
|
+
// {
|
|
35
|
+
// setNameIsInvalid(true)
|
|
36
|
+
// setShowCreateButton(false)
|
|
37
|
+
// }
|
|
38
|
+
// }
|
|
39
|
+
// else
|
|
40
|
+
// {
|
|
41
|
+
// setShowCreateButton(false)
|
|
42
|
+
// }
|
|
43
|
+
// // if(name && name.length > 0)
|
|
44
|
+
// // setShowCreateButton(true)
|
|
45
|
+
// // else
|
|
46
|
+
// // setShowCreateButton(false)
|
|
47
|
+
// }, [name])
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (name && name.length > 0)
|
|
50
|
+
setShowCreateButton(true);
|
|
51
|
+
else
|
|
52
|
+
setShowCreateButton(false);
|
|
53
|
+
}, [name]);
|
|
54
|
+
useEffect(() => {
|
|
55
|
+
navigation.setOptions({
|
|
56
|
+
headerShown: true,
|
|
57
|
+
headerTitleAlign: 'left',
|
|
58
|
+
headerTitleStyle: {},
|
|
59
|
+
headerRight: (props) => (<Button onPress={() => createNewChannel()} variant={'link'} _text={{ color: showCreateButton ? 'black' : 'gray.500' }} disabled={showCreateButton ? false : true}>
|
|
60
|
+
Create
|
|
61
|
+
</Button>),
|
|
62
|
+
});
|
|
63
|
+
}, [name, description, showCreateButton]);
|
|
64
|
+
const createNewChannel = () => {
|
|
65
|
+
if (name && name.length > 0) {
|
|
66
|
+
createChannel({
|
|
67
|
+
variables: {
|
|
68
|
+
name: name,
|
|
69
|
+
description: description,
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
// const setChannelName = (v:any) => {
|
|
75
|
+
// let nameStr = v.replace(/\s+/g, '-').toLowerCase();
|
|
76
|
+
// setName(nameStr)
|
|
77
|
+
// }
|
|
78
|
+
return (<Box flex={1} bg={'#fff'} shadow={1} py={2} h={'100%'}>
|
|
79
|
+
<VStack space="4">
|
|
80
|
+
<Box px="4" pt="4">
|
|
81
|
+
{/* <FormControl isInvalid={nameIsInvalid} mt="3"> */}
|
|
82
|
+
<FormControl mt="3">
|
|
83
|
+
<FormControl.Label>
|
|
84
|
+
<Text>Name</Text>
|
|
85
|
+
</FormControl.Label>
|
|
86
|
+
<Input maxLength={80} variant="underlined" placeholder=" e.g. Plan budget"
|
|
87
|
+
//textTransform={'lowercase'}
|
|
88
|
+
value={name} onChangeText={(v) => setName(v)} InputLeftElement={<Text color={'gray.500'}>#</Text>} InputRightElement={<Text color={'gray.500'}>{80 - name.length}</Text>}/>
|
|
89
|
+
<FormControl.ErrorMessage>
|
|
90
|
+
Channel names must be lowercase, and can't contain spaces,periods,or most punctuation.
|
|
91
|
+
</FormControl.ErrorMessage>
|
|
92
|
+
</FormControl>
|
|
93
|
+
<FormControl mt="3">
|
|
94
|
+
<FormControl.Label>
|
|
95
|
+
<Text>Description</Text>
|
|
96
|
+
</FormControl.Label>
|
|
97
|
+
<Input variant="underlined" placeholder="channel description" value={description} onChangeText={(v) => setDescription(v)}/>
|
|
98
|
+
</FormControl>
|
|
99
|
+
</Box>
|
|
100
|
+
</VStack>
|
|
101
|
+
</Box>);
|
|
102
|
+
};
|
|
103
|
+
const styles = StyleSheet.create({
|
|
104
|
+
container: {
|
|
105
|
+
flex: 1,
|
|
106
|
+
//justifyContent: 'center',
|
|
107
|
+
padding: 20,
|
|
108
|
+
},
|
|
109
|
+
itemView: {
|
|
110
|
+
paddingVertical: 8,
|
|
111
|
+
marginTop: 5,
|
|
112
|
+
},
|
|
113
|
+
headingText: {
|
|
114
|
+
color: Colors.light.text,
|
|
115
|
+
fontSize: 16,
|
|
116
|
+
fontWeight: '400',
|
|
117
|
+
},
|
|
118
|
+
});
|
|
119
|
+
export default AddChannel;
|
|
120
|
+
//# sourceMappingURL=AddChannel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AddChannel.js","sourceRoot":"","sources":["../../../src/screens/Channels/AddChannel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import React, { useState, useEffect } from 'react';
|
|
2
|
+
import { StyleSheet, TouchableHighlight, Dimensions } from 'react-native';
|
|
3
|
+
import { Input, View, Text, VStack, Box, Fab, Icon, HStack, SectionList, Heading, } from 'native-base';
|
|
4
|
+
import Colors from '../../constants/Colors';
|
|
5
|
+
import { NavigationRoutes } from '../../constants/routes';
|
|
6
|
+
import { AntDesign } from '@expo/vector-icons';
|
|
7
|
+
// import VirtualizedScrollView from '../VirtualizedScrollView';
|
|
8
|
+
import { useGetChannelsByUserQuery } from '@messenger-box/platform-client';
|
|
9
|
+
import { useIsFocused, useFocusEffect } from '@react-navigation/native';
|
|
10
|
+
import { useGetOrgNameFromContextQuery } from '@admin-layout/client';
|
|
11
|
+
import { navigationRef } from '@common-stack/client-react';
|
|
12
|
+
import { StatusBar } from 'expo-status-bar';
|
|
13
|
+
const windowWidth = Dimensions.get('window').width;
|
|
14
|
+
const windowHeight = Dimensions.get('window').height;
|
|
15
|
+
const Channels = ({ navigation, route }) => {
|
|
16
|
+
var _a, _b;
|
|
17
|
+
const isFocused = useIsFocused();
|
|
18
|
+
const [userChannels, setUserChannels] = useState([]);
|
|
19
|
+
const [intialUserChannels, setInitialUserChannels] = useState([]);
|
|
20
|
+
const currentRoute = (navigationRef === null || navigationRef === void 0 ? void 0 : navigationRef.isReady()) ? navigationRef === null || navigationRef === void 0 ? void 0 : navigationRef.getCurrentRoute() : null;
|
|
21
|
+
const { data: orgData, loading: orgLoading } = useGetOrgNameFromContextQuery();
|
|
22
|
+
const params = Object.assign({}, orgData === null || orgData === void 0 ? void 0 : orgData.getOrgNameFromContext);
|
|
23
|
+
const { data: userChannelsData, loading, error, refetch, } = useGetChannelsByUserQuery({
|
|
24
|
+
variables: {
|
|
25
|
+
criteria: {
|
|
26
|
+
orgName: ((_a = currentRoute === null || currentRoute === void 0 ? void 0 : currentRoute.params) === null || _a === void 0 ? void 0 : _a.orgName) || (params === null || params === void 0 ? void 0 : params.orgName),
|
|
27
|
+
},
|
|
28
|
+
// criteria: {
|
|
29
|
+
// $or: [{ orgName: params?.orgName }, { orgName: null }],
|
|
30
|
+
// },
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
// const [getChannelsByUser, { data: userChannelsData, loading, error, refetch }] = useGetChannelsByUserLazyQuery({
|
|
34
|
+
// onCompleted: (data: any) => {},
|
|
35
|
+
// });
|
|
36
|
+
useFocusEffect(React.useCallback(() => {
|
|
37
|
+
var _a;
|
|
38
|
+
if (currentRoute.params.orgName || (orgData === null || orgData === void 0 ? void 0 : orgData.getOrgNameFromContext)) {
|
|
39
|
+
const params = Object.assign({}, orgData === null || orgData === void 0 ? void 0 : orgData.getOrgNameFromContext);
|
|
40
|
+
// console.log('params', params);
|
|
41
|
+
navigation.setParams({ orgName: currentRoute.params.orgName || (params === null || params === void 0 ? void 0 : params.orgName) });
|
|
42
|
+
refetch({
|
|
43
|
+
criteria: {
|
|
44
|
+
orgName: ((_a = currentRoute === null || currentRoute === void 0 ? void 0 : currentRoute.params) === null || _a === void 0 ? void 0 : _a.orgName) || (params === null || params === void 0 ? void 0 : params.orgName),
|
|
45
|
+
},
|
|
46
|
+
// criteria: {
|
|
47
|
+
// $or: [{ orgName: params?.orgName }, { orgName: null }],
|
|
48
|
+
// },
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
return () => {
|
|
52
|
+
// Do something when the screen is unfocused
|
|
53
|
+
// Useful for cleanup functions
|
|
54
|
+
};
|
|
55
|
+
}, [(_b = orgData === null || orgData === void 0 ? void 0 : orgData.getOrgNameFromContext) === null || _b === void 0 ? void 0 : _b.orgName, currentRoute.params.orgName]));
|
|
56
|
+
useEffect(() => {
|
|
57
|
+
var _a, _b, _c;
|
|
58
|
+
if (userChannelsData) {
|
|
59
|
+
let userChannels = (_a = userChannelsData === null || userChannelsData === void 0 ? void 0 : userChannelsData.channelsByUser) === null || _a === void 0 ? void 0 : _a.filter((i) => i.type == 'CHANNEL');
|
|
60
|
+
// userChannels = userChannels.slice().sort((a:any, b:any) => b.title - a.title)
|
|
61
|
+
userChannels = (_c = (_b = userChannels === null || userChannels === void 0 ? void 0 : userChannels.slice()) === null || _b === void 0 ? void 0 : _b.sort((a, b) => a.title.localeCompare(b.title))) !== null && _c !== void 0 ? _c : [];
|
|
62
|
+
setUserChannels(userChannels);
|
|
63
|
+
setInitialUserChannels(userChannels);
|
|
64
|
+
}
|
|
65
|
+
}, [userChannelsData]);
|
|
66
|
+
useEffect(() => {
|
|
67
|
+
navigation.setOptions({
|
|
68
|
+
headerShown: true,
|
|
69
|
+
headerTitleAlign: 'left',
|
|
70
|
+
headerTitleStyle: {},
|
|
71
|
+
headerTitle: (props) => (<Box>
|
|
72
|
+
<Text fontSize={15} fontWeight={600}>
|
|
73
|
+
Channel Browser
|
|
74
|
+
</Text>
|
|
75
|
+
<Text>
|
|
76
|
+
{userChannels.length} {userChannels.length > 1 ? 'channels' : 'channel'}
|
|
77
|
+
</Text>
|
|
78
|
+
</Box>),
|
|
79
|
+
headerStyle: {
|
|
80
|
+
borderBottomWidth: 1,
|
|
81
|
+
},
|
|
82
|
+
});
|
|
83
|
+
}, [userChannels]);
|
|
84
|
+
const openInbox = (id, title) => {
|
|
85
|
+
var _a;
|
|
86
|
+
navigation.navigate(NavigationRoutes.DialogMessages, {
|
|
87
|
+
channelId: id,
|
|
88
|
+
title: title,
|
|
89
|
+
hideTabBar: true,
|
|
90
|
+
addMember: true,
|
|
91
|
+
orgName: (_a = currentRoute === null || currentRoute === void 0 ? void 0 : currentRoute.params) === null || _a === void 0 ? void 0 : _a.orgName,
|
|
92
|
+
});
|
|
93
|
+
// navigation.navigate('MainStack.Inbox.DialogMessages' as any, { channelId: id, hideTabBar: true,addMember:true });
|
|
94
|
+
};
|
|
95
|
+
const renderUserChannelItem = ({ item }) => {
|
|
96
|
+
return (<TouchableHighlight underlayColor={'transparent'} activeOpacity={0.5} key={item.id} style={{ marginTop: 1 }} onPress={() => openInbox(item.id, item.title)}>
|
|
97
|
+
<Box bg={'#fff'} shadow={1} py={2}>
|
|
98
|
+
<VStack space="5">
|
|
99
|
+
{/* <Box px="4" pt="4"> */}
|
|
100
|
+
<HStack px="4" py={1} space={2}>
|
|
101
|
+
<Text style={styles.headingText}>#</Text>
|
|
102
|
+
{/* <Box px="4" py={1}> */}
|
|
103
|
+
<Box px="2">
|
|
104
|
+
<Text style={styles.headingText}>{item.title}</Text>
|
|
105
|
+
<Text>You are a memeber</Text>
|
|
106
|
+
</Box>
|
|
107
|
+
</HStack>
|
|
108
|
+
{/* <Box px="4" py={1}>
|
|
109
|
+
<Text style={styles.headingText}># {item.title}</Text>
|
|
110
|
+
<Text > You are a memeber</Text>
|
|
111
|
+
</Box> */}
|
|
112
|
+
{/* <Box px="4" pb={2}>
|
|
113
|
+
You are a memeber
|
|
114
|
+
</Box> */}
|
|
115
|
+
</VStack>
|
|
116
|
+
</Box>
|
|
117
|
+
</TouchableHighlight>);
|
|
118
|
+
};
|
|
119
|
+
const parsedUserChannelData = React.useMemo(() => {
|
|
120
|
+
const obj = userChannels.reduce((r, { id, title }) => {
|
|
121
|
+
const l = title[0];
|
|
122
|
+
if (!r[l])
|
|
123
|
+
r[l] = [{ id: id, title: title }];
|
|
124
|
+
else
|
|
125
|
+
r[l].push({ id: id, title: title });
|
|
126
|
+
return r;
|
|
127
|
+
}, {});
|
|
128
|
+
const sorted = Object.entries(obj).sort(([a], [b]) => a.localeCompare(b));
|
|
129
|
+
const sortedFilteredData = sorted.map(([key, value]) => {
|
|
130
|
+
return {
|
|
131
|
+
title: key,
|
|
132
|
+
data: value,
|
|
133
|
+
};
|
|
134
|
+
});
|
|
135
|
+
return sortedFilteredData;
|
|
136
|
+
}, [userChannels]);
|
|
137
|
+
const searchChannels = (v) => {
|
|
138
|
+
if (v) {
|
|
139
|
+
let searchedChannel = userChannels.filter((o) => o.title.includes(v));
|
|
140
|
+
// const searchedChannel = userChannels.filter((i:any)=>i.title.toLowerCase() === v.toLowerCase()).map((ch:any)=>ch);
|
|
141
|
+
setUserChannels(searchedChannel);
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
setUserChannels(intialUserChannels);
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
return (<>
|
|
148
|
+
<StatusBar style="dark"/>
|
|
149
|
+
<View flex={1} bg={'#fff'}>
|
|
150
|
+
<Input bg={'white'} py={4} px={3} _input={{ placeholderTextColor: '#404040', fontSize: 14 }} variant="underlined" placeholder="Search for channels" onChange={({ nativeEvent: { eventCount, target, text } }) => {
|
|
151
|
+
searchChannels(text);
|
|
152
|
+
}} autoCapitalize={'none'} autoCorrect={false}/>
|
|
153
|
+
<View flex={1}>
|
|
154
|
+
{/* <VirtualizedScrollView> */}
|
|
155
|
+
<VStack space="2" flex={1}>
|
|
156
|
+
<SectionList contentContainerStyle={{
|
|
157
|
+
flexGrow: 1,
|
|
158
|
+
paddingBottom: 50,
|
|
159
|
+
}} w={'100%'} h={'100%'} maxW={'100%'} pb={20} mb={10} sections={parsedUserChannelData ? parsedUserChannelData : []} keyExtractor={(item, index) => item + index} renderItem={({ item }) => (<TouchableHighlight underlayColor={'transparent'} activeOpacity={0.5} key={item.id} style={{ marginTop: 1 }} onPress={() => openInbox(item.id, item.title)}>
|
|
160
|
+
<Box bg={'#fff'} shadow={2} py={2}>
|
|
161
|
+
<VStack space="5">
|
|
162
|
+
<HStack px="4" py={1} space={2}>
|
|
163
|
+
<Text style={styles.headingText}>#</Text>
|
|
164
|
+
|
|
165
|
+
<Box px="2">
|
|
166
|
+
<Text style={styles.headingText}>{item.title}</Text>
|
|
167
|
+
<Text>You are a memeber</Text>
|
|
168
|
+
</Box>
|
|
169
|
+
</HStack>
|
|
170
|
+
</VStack>
|
|
171
|
+
</Box>
|
|
172
|
+
</TouchableHighlight>)} renderSectionHeader={({ section: { title } }) => (<Heading bg={'muted.100'} color={'muted.600'} fontSize={'md'} px={2} pt="2" pb="2" textTransform={'uppercase'}>
|
|
173
|
+
{title}
|
|
174
|
+
</Heading>)} stickySectionHeadersEnabled={true} key={'search-channels-list'}/>
|
|
175
|
+
|
|
176
|
+
{/* <FlatList
|
|
177
|
+
data={userChannels && userChannels.length > 0 ? userChannels : []}
|
|
178
|
+
renderItem={renderUserChannelItem}
|
|
179
|
+
ListEmptyComponent={() => {
|
|
180
|
+
return (
|
|
181
|
+
<TouchableOpacity style={{ marginTop: 5 }}>
|
|
182
|
+
<Box bg={'#fff'} shadow={1} py={2}>
|
|
183
|
+
<VStack space="4">
|
|
184
|
+
<Box px="4" py={5}>
|
|
185
|
+
<Text style={styles.headingText}># No channels found</Text>
|
|
186
|
+
</Box>
|
|
187
|
+
</VStack>
|
|
188
|
+
</Box>
|
|
189
|
+
</TouchableOpacity>
|
|
190
|
+
);
|
|
191
|
+
}}
|
|
192
|
+
listKey={'search-channels-list'}
|
|
193
|
+
/> */}
|
|
194
|
+
</VStack>
|
|
195
|
+
{/* </VirtualizedScrollView> */}
|
|
196
|
+
</View>
|
|
197
|
+
|
|
198
|
+
<Fab onPress={() => { var _a; return navigation.navigate(NavigationRoutes.AddChannel, { orgName: (_a = route === null || route === void 0 ? void 0 : route.params) === null || _a === void 0 ? void 0 : _a.orgName }); }} bg={'white'} _pressed={{ backgroundColor: 'muted.400' }} bottom={10} renderInPortal={false} shadow={2} size="sm" icon={<Icon color="black" as={AntDesign} name="plus" size="sm"/>}/>
|
|
199
|
+
</View>
|
|
200
|
+
</>);
|
|
201
|
+
};
|
|
202
|
+
const styles = StyleSheet.create({
|
|
203
|
+
container: {
|
|
204
|
+
flex: 1,
|
|
205
|
+
//justifyContent: 'center',
|
|
206
|
+
padding: 20,
|
|
207
|
+
},
|
|
208
|
+
itemView: {
|
|
209
|
+
paddingVertical: 8,
|
|
210
|
+
marginTop: 5,
|
|
211
|
+
},
|
|
212
|
+
headingText: {
|
|
213
|
+
color: Colors.light.text,
|
|
214
|
+
fontSize: 16,
|
|
215
|
+
fontWeight: '400',
|
|
216
|
+
},
|
|
217
|
+
});
|
|
218
|
+
export default Channels;
|
|
219
|
+
//# sourceMappingURL=Channels.js.map
|