@messenger-box/slack-ui-mobile 10.0.3-alpha.7 → 10.0.3-alpha.72

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.
Files changed (144) hide show
  1. package/lib/components/Actionsheet.js +96 -0
  2. package/lib/components/Actionsheet.js.map +1 -0
  3. package/lib/components/AppRootContextProviderComponent.js +16 -2
  4. package/lib/components/AppRootContextProviderComponent.js.map +1 -1
  5. package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js +13 -7
  6. package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js.map +1 -1
  7. package/lib/components/CustomBottomTabs/CustomBottomTabs.js +11 -24
  8. package/lib/components/CustomBottomTabs/CustomBottomTabs.js.map +1 -1
  9. package/lib/components/CustomDrawer/CustomDrawer.js +31 -31
  10. package/lib/components/CustomDrawer/CustomDrawer.js.map +1 -1
  11. package/lib/components/Header/styles.js +2 -2
  12. package/lib/components/Header/styles.js.map +1 -1
  13. package/lib/components/LoadingSpinner/index.js +3 -3
  14. package/lib/components/LoadingSpinner/index.js.map +1 -1
  15. package/lib/components/NavigationHeader/InboxNavigationHeader.js +20 -25
  16. package/lib/components/NavigationHeader/InboxNavigationHeader.js.map +1 -1
  17. package/lib/components/NavigationHeader/NavigationHeader.js +58 -40
  18. package/lib/components/NavigationHeader/NavigationHeader.js.map +1 -1
  19. package/lib/components/NavigationHeader/NavigationHeaderChat.js +9 -9
  20. package/lib/components/NavigationHeader/NavigationHeaderChat.js.map +1 -1
  21. package/lib/components/NavigationHeader/index.js +1 -1
  22. package/lib/components/SlackSearchInput/Suggestion.js +1 -1
  23. package/lib/components/SlackSearchInput/Tag.js +1 -1
  24. package/lib/components/SlackSearchInput/index.js +3 -3
  25. package/lib/components/SlackSearchInput/index.js.map +1 -1
  26. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js +19 -4
  27. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js.map +1 -1
  28. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js +41 -31
  29. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js.map +1 -1
  30. package/lib/compute.js +32 -23
  31. package/lib/compute.js.map +1 -1
  32. package/lib/constants/Colors.js +2 -2
  33. package/lib/constants/globalStyles.js +3 -3
  34. package/lib/constants/globalStyles.js.map +1 -1
  35. package/lib/hooks/useOptimizedChannelsQueries.js +106 -0
  36. package/lib/hooks/useOptimizedChannelsQueries.js.map +1 -0
  37. package/lib/index.js +1 -1
  38. package/lib/index.js.map +1 -1
  39. package/lib/navigation/SearchTabNavigation.js +47 -39
  40. package/lib/navigation/SearchTabNavigation.js.map +1 -1
  41. package/lib/navigation/TeamTabNavigation.js +51 -38
  42. package/lib/navigation/TeamTabNavigation.js.map +1 -1
  43. package/lib/queries/slackuiQueries.js +129 -0
  44. package/lib/queries/slackuiQueries.js.map +1 -0
  45. package/lib/routes.json +32 -23
  46. package/lib/screens/Account/AccountScreen.js +23 -26
  47. package/lib/screens/Account/AccountScreen.js.map +1 -1
  48. package/lib/screens/Activity/ActivityScreen.js +6 -2
  49. package/lib/screens/Activity/ActivityScreen.js.map +1 -1
  50. package/lib/screens/Channels/Add/AddName.js +33 -8
  51. package/lib/screens/Channels/Add/AddName.js.map +1 -1
  52. package/lib/screens/Channels/Add/AddVisibility.js +6 -6
  53. package/lib/screens/Channels/Add/AddVisibility.js.map +1 -1
  54. package/lib/screens/Channels/AddChannel.js +5 -3
  55. package/lib/screens/Channels/AddChannel.js.map +1 -1
  56. package/lib/screens/Channels/Channels.js +101 -95
  57. package/lib/screens/Channels/Channels.js.map +1 -1
  58. package/lib/screens/Files/FilesScreen.js +2 -2
  59. package/lib/screens/Files/FilesScreen.js.map +1 -1
  60. package/lib/screens/Home/Components/Channels/Channels.js +91 -77
  61. package/lib/screens/Home/Components/Channels/Channels.js.map +1 -1
  62. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js +249 -115
  63. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js.map +1 -1
  64. package/lib/screens/Home/Components/InviteMembers/index.js +88 -0
  65. package/lib/screens/Home/Components/InviteMembers/index.js.map +1 -0
  66. package/lib/screens/Home/Components/Teams/Teams.js +110 -47
  67. package/lib/screens/Home/Components/Teams/Teams.js.map +1 -1
  68. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js +44 -75
  69. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js.map +1 -1
  70. package/lib/screens/Home/HomeScreen.js +161 -194
  71. package/lib/screens/Home/HomeScreen.js.map +1 -1
  72. package/lib/screens/Home/styles.js +4 -4
  73. package/lib/screens/Home/styles.js.map +1 -1
  74. package/lib/screens/Inbox/InboxChannelDetail.js +67 -34
  75. package/lib/screens/Inbox/InboxChannelDetail.js.map +1 -1
  76. package/lib/screens/Inbox/InboxDialogMessages.js +2 -2
  77. package/lib/screens/Inbox/InboxDialogMessages.js.map +1 -1
  78. package/lib/screens/Inbox/InboxScreen.js +3 -3
  79. package/lib/screens/Inbox/InboxScreen.js.map +1 -1
  80. package/lib/screens/Login.js +4 -2
  81. package/lib/screens/Login.js.map +1 -1
  82. package/lib/screens/Organization/AddWorkspace.js +42 -38
  83. package/lib/screens/Organization/AddWorkspace.js.map +1 -1
  84. package/lib/screens/Organization/CreateOrganization.js +11 -2
  85. package/lib/screens/Organization/CreateOrganization.js.map +1 -1
  86. package/lib/screens/Organization/InitialChannelOnboarding.js +22 -4
  87. package/lib/screens/Organization/InitialChannelOnboarding.js.map +1 -1
  88. package/lib/screens/Organization/InitializeOrganizationChannel.js +9 -4
  89. package/lib/screens/Organization/InitializeOrganizationChannel.js.map +1 -1
  90. package/lib/screens/Organization/InviteOrganizationMembers.js +52 -10
  91. package/lib/screens/Organization/InviteOrganizationMembers.js.map +1 -1
  92. package/lib/screens/Peoples/AddByEmail.js +24 -6
  93. package/lib/screens/Peoples/AddByEmail.js.map +1 -1
  94. package/lib/screens/Peoples/AddFromContacts.js +172 -87
  95. package/lib/screens/Peoples/AddFromContacts.js.map +1 -1
  96. package/lib/screens/Peoples/AddPeople.js +21 -42
  97. package/lib/screens/Peoples/AddPeople.js.map +1 -1
  98. package/lib/screens/Peoples/People.js +42 -4
  99. package/lib/screens/Peoples/People.js.map +1 -1
  100. package/lib/screens/Profile/ProfileScreen.js +27 -12
  101. package/lib/screens/Profile/ProfileScreen.js.map +1 -1
  102. package/lib/screens/Saved/SavedScreen.js +2 -2
  103. package/lib/screens/Saved/SavedScreen.js.map +1 -1
  104. package/lib/screens/Search/Channels.js +20 -32
  105. package/lib/screens/Search/Channels.js.map +1 -1
  106. package/lib/screens/Search/Files.js +2 -2
  107. package/lib/screens/Search/Files.js.map +1 -1
  108. package/lib/screens/Search/JumpTo.js +2 -2
  109. package/lib/screens/Search/JumpTo.js.map +1 -1
  110. package/lib/screens/Search/People.js +19 -27
  111. package/lib/screens/Search/People.js.map +1 -1
  112. package/lib/screens/Search/Recents.js +26 -31
  113. package/lib/screens/Search/Recents.js.map +1 -1
  114. package/lib/screens/Search/SearchAddChannel.js +366 -227
  115. package/lib/screens/Search/SearchAddChannel.js.map +1 -1
  116. package/lib/screens/Search/SearchChannelPeople.js +70 -37
  117. package/lib/screens/Search/SearchChannelPeople.js.map +1 -1
  118. package/lib/screens/Search/SearchScreen.js +5 -3
  119. package/lib/screens/Search/SearchScreen.js.map +1 -1
  120. package/lib/screens/Search/styles.js +2 -2
  121. package/lib/screens/Search/styles.js.map +1 -1
  122. package/lib/screens/Teams/AddTeam.js +3 -3
  123. package/lib/screens/Teams/AddTeam.js.map +1 -1
  124. package/lib/screens/Teams/Components/Channels/Channels.js +6 -6
  125. package/lib/screens/Teams/Components/Channels/Channels.js.map +1 -1
  126. package/lib/screens/Teams/Components/Members/Members.js +7 -3
  127. package/lib/screens/Teams/Components/Members/Members.js.map +1 -1
  128. package/lib/screens/Teams/Team.js +6 -8
  129. package/lib/screens/Teams/Team.js.map +1 -1
  130. package/lib/screens/Teams/Teams.js +137 -106
  131. package/lib/screens/Teams/Teams.js.map +1 -1
  132. package/lib/screens/Teams/useTeams.js +41 -0
  133. package/lib/screens/Teams/useTeams.js.map +1 -0
  134. package/lib/screens/Wiki/WikiScreen.js +2 -2
  135. package/lib/screens/Wiki/WikiScreen.js.map +1 -1
  136. package/lib/theme/index.js +2 -2
  137. package/lib/theme/index.js.map +1 -1
  138. package/package.json +6 -4
  139. package/lib/navigation/ActivityNavigator.js +0 -61
  140. package/lib/navigation/ActivityNavigator.js.map +0 -1
  141. package/lib/navigation/ExploreNavigator.js +0 -583
  142. package/lib/navigation/ExploreNavigator.js.map +0 -1
  143. package/lib/navigation/InboxNavigator.js +0 -183
  144. package/lib/navigation/InboxNavigator.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ProfileScreen.js","sources":["../../../src/screens/Profile/ProfileScreen.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { SafeAreaView, TouchableOpacity } from 'react-native';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { IUserState } from '@adminide-stack/core';\nimport { Store, userSelector, logoutAndRedirect } from '@adminide-stack/user-auth0-client';\nimport {\n Avatar,\n Badge,\n Box,\n Button,\n ButtonText,\n HStack,\n Heading,\n Icon,\n Image,\n Text,\n Toast,\n VStack,\n Divider,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport { useGetUserByIdQuery } from 'common/lib/generated/generated.js';\nimport { now } from 'lodash-es';\nimport { Feather, Ionicons, MaterialCommunityIcons } from '@expo/vector-icons';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\n\nconst ProfileScreen = () => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const dispatch = useDispatch();\n const userState = useSelector<Store.Auth, IUserState>(userSelector);\n const [user, setUser] = useState<any>(null);\n const timestamp = now();\n const date = new Date(timestamp);\n const {\n data: userData,\n loading,\n error,\n } = useGetUserByIdQuery({\n variables: {\n userId: route?.params?.userId || userState?.id,\n },\n });\n\n useEffect(() => {\n if (userData?.getUserAccount) setUser(userData?.getUserAccount);\n }, [userData]);\n\n return (\n <Box flex={1}>\n <VStack flex={1} space={'md'} px={'$4'} py={'$4'}>\n <Box w={'100%'} h={'$96'}>\n <Image\n resizeMode={'cover'}\n borderRadius={10}\n source={{\n uri: user?.picture,\n }}\n alt=\"Profile image\"\n style={{\n width: '100%',\n height: '100%',\n resizeMode: 'cover',\n }}\n // style={{\n // height: 70,\n // width: 70,\n // resizeMode: 'contain',\n // borderRadius: 35,\n // }}\n />\n </Box>\n <Box>\n <Heading>\n {user?.givenName} {user?.familyName}\n </Heading>\n </Box>\n <HStack space={'sm'} alignItems={'center'}>\n <Box w={'$3'} h={'$3'} bg={'$green800'} rounded={'$full'} mr={'$2'} />\n <Text color={'$black'}>Active</Text>\n </HStack>\n <HStack space={'sm'} alignItems={'center'}>\n <Ionicons color=\"black\" name=\"time-outline\" size={20} />\n <Text color={'$black'}>\n {date?.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })} local time\n </Text>\n </HStack>\n <Button\n mt={'$2'}\n variant={'outline'}\n rounded={'$lg'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n borderColor={'$trueGray400'}\n >\n <ButtonText pl={'$1'} style={{ color: 'black', fontWeight: 'bold' }}>\n Edit Status\n </ButtonText>\n </Button>\n <Button\n variant={'outline'}\n rounded={'$lg'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n borderColor={'$trueGray400'}\n >\n <ButtonText pl={'$1'} style={{ color: 'black', fontWeight: 'bold' }}>\n Edit Profile\n </ButtonText>\n </Button>\n {/* <Button\n variant={'outline'}\n rounded={'$lg'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n borderColor={'$trueGray400'}\n >\n <Feather color=\"black\" name=\"message-circle\" size={20} />\n <ButtonText pl={'$1'} style={{ color: 'black', fontWeight: 'bold' }}>\n Message\n </ButtonText>\n </Button>\n <Button\n variant={'outline'}\n rounded={'$lg'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n borderColor={'$trueGray400'}\n >\n <Feather color=\"black\" name=\"headphones\" size={20} />\n <ButtonText pl={'$1'} style={{ color: 'black', fontWeight: 'bold' }}>\n Huddle\n </ButtonText>\n </Button> */}\n <Divider bg={'$trueGray300'} />\n <Heading size={'sm'}>Contact Information</Heading>\n <HStack space={'sm'} alignItems={'center'}>\n <MaterialCommunityIcons color=\"black\" name=\"email-outline\" size={20} />\n <Text color={'black'}>{user?.email}</Text>\n </HStack>\n </VStack>\n </Box>\n );\n};\n\nexport default ProfileScreen;\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"ProfileScreen.js","sources":["../../../src/screens/Profile/ProfileScreen.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { SafeAreaView, TouchableOpacity } from 'react-native';\nimport { useDispatch, useSelector } from 'react-redux';\nimport { IUserState } from '@adminide-stack/core';\nimport { Store, userSelector, logoutAndRedirect } from '@adminide-stack/user-auth0-client';\nimport {\n Avatar,\n Badge,\n Box,\n Button,\n ButtonText,\n HStack,\n Heading,\n Icon,\n Image,\n Text,\n Toast,\n ToastAlert,\n VStack,\n Divider,\n useToast,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport { useUserByIdQuery, useUpdateUserProfileMutation } from '../../queries/slackuiQueries';\nimport { now } from 'lodash-es';\nimport { Feather, Ionicons, MaterialCommunityIcons } from '@expo/vector-icons';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport colors from 'tailwindcss/colors';\n\nconst ProfileScreen = () => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const dispatch = useDispatch();\n const userState = useSelector<Store.Auth, IUserState>(userSelector);\n const [user, setUser] = useState<any>(null);\n const timestamp = now();\n const date = new Date(timestamp);\n const toast = useToast();\n const { data: userData, loading, error } = useUserByIdQuery(route?.params?.userId || userState?.id);\n\n const [updateUserProfile, { loading: updateLoading }] = useUpdateUserProfileMutation();\n\n useEffect(() => {\n if (userData?.getUserAccount) setUser(userData?.getUserAccount);\n }, [userData]);\n\n const handleEditProfile = () => {\n if (user?.id) {\n navigation.navigate('EditProfile', { user });\n }\n };\n\n return (\n <Box className=\"flex-1\">\n <VStack className=\"flex-1 px-4 py-4\" space={'md'}>\n <Box className=\"w-full h-[96px]\">\n <Image\n resizeMode={'cover'}\n borderRadius={10}\n source={{\n uri: user?.picture,\n }}\n alt=\"Profile image\"\n style={{\n width: '100%',\n height: '100%',\n resizeMode: 'cover',\n }}\n // style={{\n // height: 70,\n // width: 70,\n // resizeMode: 'contain',\n // borderRadius: 35,\n // }}\n />\n </Box>\n <Box>\n <Heading>\n {user?.givenName} {user?.familyName}\n </Heading>\n </Box>\n <HStack space={'sm'} className=\"items-center\">\n <Box className=\"w-[3px] h-[3px] bg-green-800 rounded-full mr-2\" />\n <Text color={colors.black}>Active</Text>\n </HStack>\n <HStack space={'sm'} className=\"items-center\">\n <Ionicons color=\"black\" name=\"time-outline\" size={20} />\n <Text color={colors.black}>\n {date?.toLocaleTimeString([], { hour: '2-digit', minute: '2-digit' })} local time\n </Text>\n </HStack>\n <Button\n variant={'outline'}\n className=\"mt-2 rounded-lg border-gray-400 active:bg-gray-200 hover:bg-gray-200\"\n onPress={() => {\n // TODO: Add status update functionality\n toast.show({\n placement: 'top',\n duration: 2000,\n render: ({ id }) => (\n <ToastAlert\n id={id}\n title={'Status update feature coming soon'}\n status={'info'}\n isClosable={false}\n />\n ),\n });\n }}\n >\n <ButtonText className=\"pl-1\" style={{ color: 'black', fontWeight: 'bold' }}>\n Edit Status\n </ButtonText>\n </Button>\n <Button\n variant={'outline'}\n className=\"rounded-lg border-gray-400 active:bg-gray-200 hover:bg-gray-200\"\n onPress={handleEditProfile}\n isDisabled={updateLoading}\n >\n <ButtonText className=\"pl-1\" style={{ color: 'black', fontWeight: 'bold' }}>\n Edit Profile\n </ButtonText>\n </Button>\n {/* <Button\n variant={'outline'}\n rounded={'$lg'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n borderColor={'$trueGray400'}\n >\n <Feather color=\"black\" name=\"message-circle\" size={20} />\n <ButtonText pl={'$1'} style={{ color: 'black', fontWeight: 'bold' }}>\n Message\n </ButtonText>\n </Button>\n <Button\n variant={'outline'}\n rounded={'$lg'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n borderColor={'$trueGray400'}\n >\n <Feather color=\"black\" name=\"headphones\" size={20} />\n <ButtonText pl={'$1'} style={{ color: 'black', fontWeight: 'bold' }}>\n Huddle\n </ButtonText>\n </Button> */}\n <Divider className=\"bg-gray-300\" />\n <Heading size={'sm'}>Contact Information</Heading>\n <HStack space={'sm'} className=\"items-center\">\n <MaterialCommunityIcons color=\"black\" name=\"email-outline\" size={20} />\n <Text color={'black'}>{user?.email}</Text>\n </HStack>\n </VStack>\n </Box>\n );\n};\n\nexport default ProfileScreen;\n"],"names":["React"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import React__default from'react';import {View}from'@admin-layout/gluestack-ui-mobile';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';const SavedScreen = ({
1
+ import React__default from'react';import {Box}from'@admin-layout/gluestack-ui-mobile';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';const SavedScreen = ({
2
2
  navigation,
3
3
  route
4
4
  }) => {
5
- return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, { bg: "#fff", flex: 1 }, /* @__PURE__ */ React__default.createElement(View, { flex: 1, bg: "#fff", pb: "$10", pt: "$2" }));
5
+ return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, { bg: "#fff", flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 bg-white pb-10 pt-2" }));
6
6
  };export{SavedScreen as default};//# sourceMappingURL=SavedScreen.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SavedScreen.js","sources":["../../../src/screens/Saved/SavedScreen.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport { StackNavigationProp } from '@react-navigation/stack';\nimport React, { useState } from 'react';\nimport { Pressable, Image, TouchableOpacity, FlatList } from 'react-native';\nimport { Actionsheet, View, Box, Text, Button } from '@admin-layout/gluestack-ui-mobile';\nimport { StatusBar } from 'expo-status-bar';\nimport { Header, Tiles } from '../../components';\nimport { NavigationRoutes } from '../../constants/routes';\nimport send from '../../../assets/images/send.png';\nimport comment from '../../../assets/images/comment.png';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\ntype SavedScreenProps = {\n //navigation: StackNavigationProp<HomeParamList, 'Home'>;\n route: any;\n navigation: any;\n};\n\nconst SavedScreen = ({ navigation, route }: SavedScreenProps) => {\n return (\n <VirtualizedScrollView bg={'#fff'} flex={1}>\n {/* <View style={styles.container}> */}\n <View flex={1} bg={'#fff'} pb={'$10'} pt={'$2'}>\n {/* <Header title='Saved Screen' /> */}\n {/* <StatusBar style=\"light\" /> */}\n </View>\n </VirtualizedScrollView>\n );\n};\n\nexport default SavedScreen;\n"],"names":["React"],"mappings":"0LAgBA,MAAM,cAAc,CAAC;AAAA,EACnB,UAAA;AAAA,EACA;AACF,CAAwB,KAAA;AACtB,EAAA,oDAAQ,qBAAsB,EAAA,EAAA,EAAA,EAAI,MAAQ,EAAA,IAAA,EAAM,qBAErCA,cAAA,CAAA,aAAA,CAAA,IAAA,EAAA,EAAK,IAAM,EAAA,CAAA,EAAG,IAAI,MAAQ,EAAA,EAAA,EAAI,KAAO,EAAA,EAAA,EAAI,MAG1C,CACJ,CAAA;AACR"}
1
+ {"version":3,"file":"SavedScreen.js","sources":["../../../src/screens/Saved/SavedScreen.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport { StackNavigationProp } from '@react-navigation/stack';\nimport React, { useState } from 'react';\nimport { Pressable, Image, TouchableOpacity, FlatList } from 'react-native';\nimport { Actionsheet, View, Box, Text, Button } from '@admin-layout/gluestack-ui-mobile';\nimport { StatusBar } from 'expo-status-bar';\nimport { Header, Tiles } from '../../components';\nimport { NavigationRoutes } from '../../constants/routes';\nimport send from '../../../assets/images/send.png';\nimport comment from '../../../assets/images/comment.png';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\ntype SavedScreenProps = {\n //navigation: StackNavigationProp<HomeParamList, 'Home'>;\n route: any;\n navigation: any;\n};\n\nconst SavedScreen = ({ navigation, route }: SavedScreenProps) => {\n return (\n <VirtualizedScrollView bg={'#fff'} flex={1}>\n {/* <View style={styles.container}> */}\n <Box className=\"flex-1 bg-white pb-10 pt-2\">\n {/* <Header title='Saved Screen' /> */}\n {/* <StatusBar style=\"light\" /> */}\n </Box>\n </VirtualizedScrollView>\n );\n};\n\nexport default SavedScreen;\n"],"names":["React"],"mappings":"yLAgBA,MAAM,cAAc,CAAC;AAAA,EACnB,UAAA;AAAA,EACA;AACF,CAAwB,KAAA;AACtB,EAAO,uBAAAA,cAAA,CAAA,aAAA,CAAC,qBAAsB,EAAA,EAAA,EAAA,EAAI,MAAQ,EAAA,IAAA,EAAM,qBAErCA,cAAA,CAAA,aAAA,CAAA,GAAA,EAAA,EAAI,SAAU,EAAA,4BAAA,EAGf,CACJ,CAAA;AACR"}
@@ -1,6 +1,6 @@
1
- import React__default,{useLayoutEffect}from'react';import {TouchableOpacity,Dimensions}from'react-native';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {useNavigation,useRoute,useFocusEffect}from'@react-navigation/native';import {startCase}from'lodash-es';import {VStack,FlatList,Box,Text,Spinner,HStack,Avatar,AvatarFallbackText,AvatarImage,AvatarBadge}from'@admin-layout/gluestack-ui-mobile';import {RoomType}from'common';import {Octicons}from'@expo/vector-icons';import'../../constants/device.js';import'../../constants/globalStyles.js';import'../../constants/Layout.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';Dimensions.get("window").width;
1
+ import React__default,{useLayoutEffect}from'react';import {TouchableOpacity,Dimensions}from'react-native';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {useNavigation,useRoute}from'@react-navigation/native';import {startCase}from'lodash-es';import {VStack,FlatList,Box,Text,Spinner,HStack,Avatar,AvatarFallbackText,AvatarImage,AvatarBadge}from'@admin-layout/gluestack-ui-mobile';import {RoomType}from'common';import {Octicons}from'@expo/vector-icons';import'../../constants/device.js';import'../../constants/globalStyles.js';import'../../constants/Layout.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import colors from'tailwindcss/colors';Dimensions.get("window").width;
2
2
  Dimensions.get("window").height;
3
- const ChannelsSearchScreen = ({
3
+ const Channels = ({
4
4
  channels,
5
5
  loading
6
6
  }) => {
@@ -9,10 +9,6 @@ const ChannelsSearchScreen = ({
9
9
  const user = useSelector(userSelector);
10
10
  useLayoutEffect(() => {
11
11
  }, []);
12
- useFocusEffect(React__default.useCallback(() => {
13
- return () => {
14
- };
15
- }, []));
16
12
  const openInbox = React__default.useCallback((item) => {
17
13
  var _a, _b, _c, _d, _e, _f, _g, _h;
18
14
  const channelMembers = (_c = (_b = (_a = item == null ? void 0 : item.members) == null ? void 0 : _a.filter((ch) => {
@@ -33,48 +29,40 @@ const ChannelsSearchScreen = ({
33
29
  item
34
30
  }) => {
35
31
  var _a, _b, _c, _d, _e, _f, _g;
36
- const matches = (_a = item == null ? void 0 : item.title) == null ? void 0 : _a.match(/\b(\w)/g);
37
- matches.join("").substring(0, 2);
32
+ (_a = item == null ? void 0 : item.title) == null ? void 0 : _a.match(/\b(\w)/g);
38
33
  const channelMembers = (_d = (_c = (_b = item == null ? void 0 : item.members) == null ? void 0 : _b.filter((ch) => {
39
34
  var _a2, _b2;
40
35
  return ((_a2 = ch == null ? void 0 : ch.user) == null ? void 0 : _a2.id) != (user == null ? void 0 : user.id) && ((_b2 = ch == null ? void 0 : ch.user) == null ? void 0 : _b2.__typename) == "UserAccount";
41
36
  })) == null ? void 0 : _c.map((m) => m == null ? void 0 : m.user)) != null ? _d : null;
42
37
  return /* @__PURE__ */ React__default.createElement(TouchableOpacity, { key: item == null ? void 0 : item.id, style: {
43
38
  marginVertical: 10
44
- }, onPress: () => openInbox(item) }, /* @__PURE__ */ React__default.createElement(HStack, { flex: 1, alignItems: "center", justifyContent: "space-between" }, /* @__PURE__ */ React__default.createElement(HStack, { flex: 1, alignItems: "center", space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { m: "$0", p: "$0" }, item.type == RoomType.Direct ? /* @__PURE__ */ React__default.createElement(Avatar, { key: "direct-channel-profile-msg-key", size: "sm", bg: "transparent" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, null, startCase((_f = (_e = channelMembers[0]) == null ? void 0 : _e.username) == null ? void 0 : _f.charAt(0))), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", size: "md", style: {
39
+ }, onPress: () => openInbox(item) }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center justify-center" }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center", space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { className: "m-0 p-0" }, item.type == RoomType.Direct ? /* @__PURE__ */ React__default.createElement(Avatar, { key: "direct-channel-profile-msg-key", size: "sm", className: "bg-transparent" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, null, startCase((_f = (_e = channelMembers[0]) == null ? void 0 : _e.username) == null ? void 0 : _f.charAt(0))), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", style: {
45
40
  borderRadius: 6,
46
41
  borderWidth: 2,
47
42
  borderColor: "#fff"
48
43
  }, source: {
49
44
  uri: (_g = channelMembers[0]) == null ? void 0 : _g.picture
50
- } }), (channelMembers == null ? void 0 : channelMembers.length) > 1 ? /* @__PURE__ */ React__default.createElement(
51
- AvatarBadge,
52
- {
53
- right: "-$1",
54
- bottom: "-$1",
55
- style: {
56
- width: 20,
57
- height: 20
58
- },
59
- alignItems: "center",
60
- bg: "#211627",
61
- rounded: "$md"
62
- },
63
- /* @__PURE__ */ React__default.createElement(Text, { style: {
64
- fontSize: 12,
65
- fontWeight: "bold",
66
- color: "#fff"
67
- } }, channelMembers == null ? void 0 : channelMembers.length)
68
- ) : /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
45
+ } }), (channelMembers == null ? void 0 : channelMembers.length) > 1 ? /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
46
+ width: 20,
47
+ height: 20
48
+ }, className: "right-[-1px] bottom-[-1px] items-center bg-[#211627] rounded-md" }, /* @__PURE__ */ React__default.createElement(Text, { style: {
49
+ fontSize: 12,
50
+ fontWeight: "bold",
51
+ color: "#fff"
52
+ } }, channelMembers == null ? void 0 : channelMembers.length)) : /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
69
53
  width: 10,
70
54
  height: 10
71
- }, bg: "$green800" })) : item.type == RoomType.Private ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "lock", size: 20 })) : /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "hash", size: 20 })), /* @__PURE__ */ React__default.createElement(Text, { color: "$coolGray800", fontWeight: "$bold" }, item.title))));
55
+ }, className: "bg-green-800" })) : item.type == RoomType.Private ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "lock", size: 20 })) : /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "hash", size: 20 })), /* @__PURE__ */ React__default.createElement(Text, { className: "text-gray-800 font-bold" }, item.title))));
72
56
  };
73
- return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "md", flex: 1, pt: "$2" }, /* @__PURE__ */ React__default.createElement(FlatList, { px: "$4", flex: 1, pb: "$10", keyExtractor: (item, index) => String(index), contentContainerStyle: {
57
+ return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "md", className: "flex-1 pt-2" }, /* @__PURE__ */ React__default.createElement(FlatList, { style: {
58
+ flex: 1,
59
+ paddingHorizontal: 4,
60
+ paddingBottom: 10
61
+ }, keyExtractor: (item, index) => String(index), contentContainerStyle: {
74
62
  flex: 1,
75
63
  marginBottom: 100
76
64
  }, data: channels && channels.length > 0 ? channels : [], renderItem: renderChannels, ListEmptyComponent: () => {
77
- return /* @__PURE__ */ React__default.createElement(Box, { bg: "#fff", py: "$2" }, (channels == null ? void 0 : channels.length) == 0 && loading ? /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { px: "$4", py: "$5" }, /* @__PURE__ */ React__default.createElement(Text, null, "No channels found"))) : /* @__PURE__ */ React__default.createElement(Spinner, { color: "$blue500" }));
65
+ return /* @__PURE__ */ React__default.createElement(Box, { className: "bg-white py-2" }, (channels == null ? void 0 : channels.length) == 0 && loading ? /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { className: "px-4 py-5" }, /* @__PURE__ */ React__default.createElement(Text, null, "No channels found"))) : /* @__PURE__ */ React__default.createElement(Spinner, { color: colors.blue[500] }));
78
66
  }, key: "search-channel-people-list", keyboardShouldPersistTaps: "always" })));
79
67
  };
80
- var Channels = React__default.memo(ChannelsSearchScreen);export{Channels as default};//# sourceMappingURL=Channels.js.map
68
+ var Channels$1 = React__default.memo(Channels);export{Channels$1 as default};//# sourceMappingURL=Channels.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Channels.js","sources":["../../../src/screens/Search/Channels.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport styles from './styles';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport {\n Text,\n VStack,\n Box,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n Spinner,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport { useGetChannelsByUserQuery } from 'common/lib/generated/generated.js';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { NavigationRoutes } from '../../constants';\nimport { useSelector } from 'react-redux';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst ChannelsSearchScreen = ({ channels, loading }) => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const user = useSelector(userSelector);\n\n useLayoutEffect(() => {\n // setLoading(true);\n }, []);\n\n useFocusEffect(\n React.useCallback(() => {\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n const openInbox = React.useCallback((item: any) => {\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n const memberImage =\n item.type === RoomType.Direct\n ? channelMembers?.length == 1\n ? channelMembers[0]?.picture ?? null\n : null\n : null;\n\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: item?.id?.toString(),\n title: item?.title?.toString(),\n totalMembers: item?.members?.length,\n memberImage: memberImage,\n channelType: item?.type,\n hideTabBar: true,\n });\n }, []);\n\n const renderChannels = ({ item }: any) => {\n const matches: any = item?.title?.match(/\\b(\\w)/g);\n const acronym: any = matches.join('').substring(0, 2); // JSON\n\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n return (\n <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => openInbox(item)}>\n <HStack flex={1} alignItems={'center'} justifyContent={'space-between'}>\n <HStack flex={1} alignItems={'center'} space={'sm'}>\n <Box m={'$0'} p={'$0'}>\n {item.type == RoomType.Direct ? (\n <Avatar key={'direct-channel-profile-msg-key'} size={'sm'} bg={'transparent'}>\n <AvatarFallbackText>\n {startCase(channelMembers[0]?.username?.charAt(0))}\n </AvatarFallbackText>\n <AvatarImage\n alt=\"image\"\n size={'md'}\n style={{\n // width: 25,\n // height: 25,\n borderRadius: 6,\n borderWidth: 2,\n borderColor: '#fff',\n }}\n source={{\n uri: channelMembers[0]?.picture,\n }}\n />\n {channelMembers?.length > 1 ? (\n <AvatarBadge\n // top={4}\n right={'-$1'}\n bottom={'-$1'}\n // size={5}\n style={{ width: 20, height: 20 }}\n alignItems={'center'}\n bg={'#211627'}\n // opacity={0.85}\n rounded={'$md'}\n >\n <Text style={{ fontSize: 12, fontWeight: 'bold', color: '#fff' }}>\n {channelMembers?.length}\n </Text>\n </AvatarBadge>\n ) : (\n <AvatarBadge style={{ width: 10, height: 10 }} bg=\"$green800\" />\n )}\n </Avatar>\n ) : item.type == RoomType.Private ? (\n <>\n <Octicons color=\"black\" name=\"lock\" size={20} />\n </>\n ) : (\n <Octicons color=\"black\" name=\"hash\" size={20} />\n )}\n </Box>\n <Text color=\"$coolGray800\" fontWeight=\"$bold\">\n {item.title}\n </Text>\n </HStack>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n return (\n <VirtualizedScrollView>\n <VStack space=\"md\" flex={1} pt={'$2'}>\n <FlatList\n px={'$4'}\n flex={1}\n pb={'$10'}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flex: 1,\n marginBottom: 100,\n }}\n data={channels && channels.length > 0 ? channels : []}\n renderItem={renderChannels}\n ListEmptyComponent={() => {\n return (\n <Box bg={'#fff'} py={'$2'}>\n {channels?.length == 0 && loading ? (\n <VStack space=\"sm\">\n <Box px=\"$4\" py={'$5'}>\n <Text>No channels found</Text>\n </Box>\n </VStack>\n ) : (\n <Spinner color={'$blue500'} />\n )}\n </Box>\n );\n }}\n key={'search-channel-people-list'}\n keyboardShouldPersistTaps=\"always\"\n />\n </VStack>\n </VirtualizedScrollView>\n );\n};\n\nexport default React.memo(ChannelsSearchScreen);\n"],"names":["React","_a","_b"],"mappings":"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"}
1
+ {"version":3,"file":"Channels.js","sources":["../../../src/screens/Search/Channels.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport styles from './styles';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport {\n Text,\n VStack,\n Box,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n Spinner,\n Button,\n ButtonText,\n ButtonIcon,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { NavigationRoutes } from '../../constants';\nimport { useSelector } from 'react-redux';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport colors from 'tailwindcss/colors';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\n// Define props interface for the component\ninterface ChannelsProps {\n channels?: any[];\n loading?: boolean;\n}\n\nconst Channels: React.FC<ChannelsProps> = ({ channels, loading }) => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const user = useSelector(userSelector);\n\n useLayoutEffect(() => {\n // Optional: Add any layout effects here\n }, []);\n\n const openInbox = React.useCallback((item: any) => {\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n const memberImage =\n item.type === RoomType.Direct\n ? channelMembers?.length == 1\n ? channelMembers[0]?.picture ?? null\n : null\n : null;\n\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: item?.id?.toString(),\n title: item?.title?.toString(),\n totalMembers: item?.members?.length,\n memberImage: memberImage,\n channelType: item?.type,\n hideTabBar: true,\n });\n }, []);\n\n const renderChannels = ({ item }: any) => {\n const matches: any = item?.title?.match(/\\b(\\w)/g);\n // const acronym: any = matches.join('').substring(0, 2); // JSON\n\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n return (\n <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => openInbox(item)}>\n <HStack className=\"flex-1 items-center justify-center\">\n <HStack className=\"flex-1 items-center\" space={'sm'}>\n <Box className=\"m-0 p-0\">\n {item.type == RoomType.Direct ? (\n <Avatar key={'direct-channel-profile-msg-key'} size={'sm'} className=\"bg-transparent\">\n <AvatarFallbackText>\n {startCase(channelMembers[0]?.username?.charAt(0))}\n </AvatarFallbackText>\n <AvatarImage\n alt=\"image\"\n style={{\n // width: 25,\n // height: 25,\n borderRadius: 6,\n borderWidth: 2,\n borderColor: '#fff',\n }}\n source={{\n uri: channelMembers[0]?.picture,\n }}\n />\n {channelMembers?.length > 1 ? (\n <AvatarBadge\n style={{ width: 20, height: 20 }}\n className=\"right-[-1px] bottom-[-1px] items-center bg-[#211627] rounded-md\"\n >\n <Text style={{ fontSize: 12, fontWeight: 'bold', color: '#fff' }}>\n {channelMembers?.length}\n </Text>\n </AvatarBadge>\n ) : (\n <AvatarBadge style={{ width: 10, height: 10 }} className=\"bg-green-800\" />\n )}\n </Avatar>\n ) : item.type == RoomType.Private ? (\n <>\n <Octicons color=\"black\" name=\"lock\" size={20} />\n </>\n ) : (\n <Octicons color=\"black\" name=\"hash\" size={20} />\n )}\n </Box>\n <Text className=\"text-gray-800 font-bold\">{item.title}</Text>\n </HStack>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n return (\n <VirtualizedScrollView>\n <VStack space=\"md\" className=\"flex-1 pt-2\">\n <FlatList\n style={{ flex: 1, paddingHorizontal: 4, paddingBottom: 10 }}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flex: 1,\n marginBottom: 100,\n }}\n data={channels && channels.length > 0 ? channels : []}\n renderItem={renderChannels}\n ListEmptyComponent={() => {\n return (\n <Box className=\"bg-white py-2\">\n {channels?.length == 0 && loading ? (\n <VStack space=\"sm\">\n <Box className=\"px-4 py-5\">\n <Text>No channels found</Text>\n </Box>\n </VStack>\n ) : (\n <Spinner color={colors.blue[500]} />\n )}\n </Box>\n );\n }}\n key={'search-channel-people-list'}\n keyboardShouldPersistTaps=\"always\"\n />\n </VStack>\n </VirtualizedScrollView>\n );\n};\n\nexport default React.memo(Channels);\n"],"names":["React","_a","_b"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import React__default,{useState,useLayoutEffect,useEffect}from'react';import {Dimensions}from'react-native';import {Box,Heading}from'@admin-layout/gluestack-ui-mobile';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {useNavigation,useRoute,useFocusEffect}from'@react-navigation/native';Dimensions.get("window").width;
2
- const windowHeight = Dimensions.get("window").height;
2
+ Dimensions.get("window").height;
3
3
  const FilesSearchScreen = (props) => {
4
4
  useNavigation();
5
5
  useRoute();
@@ -14,6 +14,6 @@ const FilesSearchScreen = (props) => {
14
14
  return () => {
15
15
  };
16
16
  }, []);
17
- return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, { bg: "#fff", flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1, justifyContent: "center", alignItems: "center", h: windowHeight - 200, bg: "#fff", pb: "$10" }, /* @__PURE__ */ React__default.createElement(Heading, null, "Files")));
17
+ return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, { bg: "#fff", flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { className: `flex-1 justify-center items-center bg-white pb-10 h-full` }, /* @__PURE__ */ React__default.createElement(Heading, null, "Files")));
18
18
  };
19
19
  var Files = React__default.memo(FilesSearchScreen);export{Files as default};//# sourceMappingURL=Files.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Files.js","sources":["../../../src/screens/Search/Files.tsx"],"sourcesContent":["// import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { Dimensions, Platform } from 'react-native';\n// import styles from './styles';\nimport { Text, Box, Center, Heading } from '@admin-layout/gluestack-ui-mobile';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\n// import { navigationRef } from '@common-stack/client-react';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst FilesSearchScreen = (props) => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n\n const [loading, setLoading] = useState<boolean>(false);\n\n useLayoutEffect(() => {\n // setLoading(true);\n }, []);\n\n useFocusEffect(\n React.useCallback(() => {\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n // const timer = setTimeout(() => {\n // setLoading(false);\n // }, 1000);\n\n return () => {\n //clearTimeout(timer);\n };\n }, []);\n\n return (\n <VirtualizedScrollView bg={'#fff'} flex={1}>\n <Box flex={1} justifyContent={'center'} alignItems={'center'} h={windowHeight - 200} bg={'#fff'} pb={'$10'}>\n <Heading>Files</Heading>\n </Box>\n </VirtualizedScrollView>\n );\n};\n\nexport default React.memo(FilesSearchScreen);\n"],"names":["React"],"mappings":"wVAQoB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AAC7C,MAAM,YAAe,GAAA,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA,MAAA;AAC9C,MAAM,oBAAoB,CAAS,KAAA,KAAA;AACjC,EAAmB,aAAmB;AACtC,EAAc,QAAc;AAC5B,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAkB,KAAK,CAAA;AACrD,EAAA,eAAA,CAAgB,MAAM;AAAA,GAEtB,EAAG,EAAE,CAAA;AACL,EAAe,cAAA,CAAAA,cAAA,CAAM,YAAY,MAAM;AACrC,IAAA,OAAO,MAAM;AAAA,KAGb;AAAA,GACF,EAAG,EAAE,CAAC,CAAA;AACN,EAAA,SAAA,CAAU,MAAM;AAKd,IAAA,OAAO,MAAM;AAAA,KAEb;AAAA,GACF,EAAG,EAAE,CAAA;AACL,EAAO,uBAAAA,cAAA,CAAA,aAAA,CAAC,qBAAsB,EAAA,EAAA,EAAA,EAAI,MAAQ,EAAA,IAAA,EAAM,qBACrCA,cAAA,CAAA,aAAA,CAAA,GAAA,EAAA,EAAI,IAAM,EAAA,CAAA,EAAG,cAAgB,EAAA,QAAA,EAAU,YAAY,QAAU,EAAA,CAAA,EAAG,YAAe,GAAA,GAAA,EAAK,EAAI,EAAA,MAAA,EAAQ,EAAI,EAAA,KAAA,EAAA,kBAChGA,cAAA,CAAA,aAAA,CAAA,OAAA,EAAA,IAAA,EAAQ,OAAK,CAClB,CACJ,CAAA;AACR,CAAA;AACA,YAAeA,cAAA,CAAM,KAAK,iBAAiB,CAAA"}
1
+ {"version":3,"file":"Files.js","sources":["../../../src/screens/Search/Files.tsx"],"sourcesContent":["// import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { Dimensions, Platform } from 'react-native';\n// import styles from './styles';\nimport { Text, Box, Center, Heading } from '@admin-layout/gluestack-ui-mobile';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\n// import { navigationRef } from '@common-stack/client-react';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst FilesSearchScreen = (props) => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n\n const [loading, setLoading] = useState<boolean>(false);\n\n useLayoutEffect(() => {\n // setLoading(true);\n }, []);\n\n useFocusEffect(\n React.useCallback(() => {\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n // const timer = setTimeout(() => {\n // setLoading(false);\n // }, 1000);\n\n return () => {\n //clearTimeout(timer);\n };\n }, []);\n\n return (\n <VirtualizedScrollView bg={'#fff'} flex={1}>\n <Box className={`flex-1 justify-center items-center bg-white pb-10 h-full`}>\n <Heading>Files</Heading>\n </Box>\n </VirtualizedScrollView>\n );\n};\n\nexport default React.memo(FilesSearchScreen);\n"],"names":["React"],"mappings":"wVAQoB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AACxB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AAC9C,MAAM,oBAAoB,CAAS,KAAA,KAAA;AACjC,EAAmB,aAAmB;AACtC,EAAc,QAAc;AAC5B,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAkB,KAAK,CAAA;AACrD,EAAA,eAAA,CAAgB,MAAM;AAAA,GAEtB,EAAG,EAAE,CAAA;AACL,EAAe,cAAA,CAAAA,cAAA,CAAM,YAAY,MAAM;AACrC,IAAA,OAAO,MAAM;AAAA,KAGb;AAAA,GACF,EAAG,EAAE,CAAC,CAAA;AACN,EAAA,SAAA,CAAU,MAAM;AAKd,IAAA,OAAO,MAAM;AAAA,KAEb;AAAA,GACF,EAAG,EAAE,CAAA;AACL,EAAA,uBAAQA,cAAA,CAAA,aAAA,CAAA,qBAAA,EAAA,EAAsB,EAAI,EAAA,MAAA,EAAQ,MAAM,CACtC,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,GAAI,EAAA,EAAA,SAAA,EAAW,CACZ,wDAAA,CAAA,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,OAAQ,EAAA,IAAA,EAAA,OAAK,CAClB,CACJ,CAAA;AACR,CAAA;AACA,YAAeA,cAAA,CAAM,KAAK,iBAAiB,CAAA"}
@@ -1,4 +1,4 @@
1
- import React__default,{useState}from'react';import {View,TouchableOpacity,Image,Text,Dimensions}from'react-native';import styles from'./styles.js';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {NavigationRoutes}from'../../constants/routes.js';import img from'../../assets/images/send.png.js';import img$1 from'../../assets/images/right.png.js';import {useNavigation,useRoute,useFocusEffect}from'@react-navigation/native';import'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';Dimensions.get("window").width;
1
+ import React__default,{useState}from'react';import {View,TouchableOpacity,Image,Text,Dimensions}from'react-native';import styles from'./styles.js';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {NavigationRoutes}from'../../constants/routes.js';import img from'../../assets/images/send.png.js';import img$1 from'../../assets/images/right.png.js';import {useNavigation,useRoute,useFocusEffect}from'@react-navigation/native';import'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';import'../../hooks/useOptimizedChannelsQueries.js';Dimensions.get("window").width;
2
2
  Dimensions.get("window").height;
3
3
  const JumpToScreen = (props) => {
4
4
  const {
@@ -12,7 +12,7 @@ const JumpToScreen = (props) => {
12
12
  return () => {
13
13
  };
14
14
  }, []));
15
- return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, { bg: "#fff", flex: 1 }, /* @__PURE__ */ React__default.createElement(View, { style: styles.container }, /* @__PURE__ */ React__default.createElement(View, { style: styles.channelContainer }, /* @__PURE__ */ React__default.createElement(TouchableOpacity, { style: [styles.headingContainer, {
15
+ return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, { className: "bg-white flex-1" }, /* @__PURE__ */ React__default.createElement(View, { style: styles.container }, /* @__PURE__ */ React__default.createElement(View, { style: styles.channelContainer }, /* @__PURE__ */ React__default.createElement(TouchableOpacity, { style: [styles.headingContainer, {
16
16
  marginTop: 10
17
17
  }], onPress: () => navigation.navigate(NavigationRoutes.Peoples, {
18
18
  orgName
@@ -1 +1 @@
1
- {"version":3,"file":"JumpTo.js","sources":["../../../src/screens/Search/JumpTo.tsx"],"sourcesContent":["// import { Ionicons } from '@expo/vector-icons';\nimport { StackNavigationProp } from '@react-navigation/stack';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { useFormik } from 'formik';\nimport { Pressable, Image, TouchableOpacity, Dimensions, View, Text } from 'react-native';\nimport styles from './styles';\nimport { StatusBar } from 'expo-status-bar';\n// import { Header, Tiles, NavigationHeader } from '../../components';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { NavigationRoutes } from '../../constants/routes';\nimport send from '../../assets/images/send.png';\nimport more from '../../assets/images/more.png';\nimport right from '../../assets/images/right.png';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\n// import { navigationRef } from '@common-stack/client-react';\nimport { useDrawerLayout } from '../../hooks';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\ntype JumpToScreenProps = {\n //navigation: StackNavigationProp<HomeParamList, 'Home'>;\n};\n\nconst JumpToScreen = (props: JumpToScreenProps) => {\n const { orgName, organizationDetail } = useDrawerLayout();\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const [loading, setLoading] = useState<boolean>(false);\n\n useFocusEffect(\n React.useCallback(() => {\n // navigation?.setOptions({\n // headerShown: true,\n // title: 'Search',\n // headerTitle: 'Search',\n // header: (props: any) => (\n // <NavigationHeader\n // {...props}\n // showToggle={false}\n // showFilter={false}\n // showTitle={false}\n // showProfile={false}\n // back={null}\n // isSearchBack={true}\n // // customHeader={\n // // <>\n // // <Box flex={1} bg={'#3f0e40'} px={2}>\n // // <Input\n // // InputLeftElement={\n // // <IconButton\n // // onPress={() => navigation.goBack()}\n // // icon={\n // // <Icon size={5} color=\"muted.400\" as={Ionicons} name=\"arrow-back\" />\n // // }\n // // />\n // // }\n // // size=\"lg\"\n // // placeholder=\"Jump to...\"\n // // variant=\"filled\"\n // // />\n // // </Box>\n // // </>\n // // }\n // />\n // ),\n // });\n\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n // const loadingComponent = () => (\n // <Box flex={1} justifyContent={'center'} alignItems={'center'} safeAreaTop>\n // <Spinner />\n // </Box>\n // );\n\n return (\n <VirtualizedScrollView bg={'#fff'} flex={1}>\n <View style={styles.container}>\n {/* <Header>\n <Input size=\"lg\" placeholder=\"Enter a search term\" variant=\"filled\" />\n </Header> */}\n {/* <StatusBar style=\"light\" /> */}\n\n {/* Channels */}\n <View style={styles.channelContainer}>\n <TouchableOpacity\n style={[\n styles.headingContainer,\n {\n marginTop: 10,\n },\n ]}\n onPress={() =>\n navigation.navigate(NavigationRoutes.Peoples, {\n orgName: orgName,\n })\n }\n >\n <View\n style={{\n borderRadius: 8,\n alignItems: 'center',\n flexDirection: 'row',\n }}\n >\n <Image\n style={{\n width: 25,\n height: 25,\n resizeMode: 'cover',\n }}\n source={send}\n />\n <Text\n style={{\n fontSize: 16,\n marginLeft: 10,\n }}\n >\n Browse People\n </Text>\n </View>\n <Image style={styles.iconStyle} source={right} />\n </TouchableOpacity>\n </View>\n\n {/* Direct Messages */}\n <View\n style={[\n styles.channelContainer,\n {\n borderBottomWidth: 0.4,\n borderBottomColor: '#868686',\n paddingBottom: 20,\n },\n ]}\n >\n <TouchableOpacity\n style={styles.headingContainer}\n onPress={() =>\n navigation.navigate(NavigationRoutes.Channels, {\n orgName: orgName,\n })\n }\n >\n <View\n style={{\n borderRadius: 8,\n alignItems: 'center',\n flexDirection: 'row',\n }}\n >\n <Image\n style={{\n width: 25,\n height: 25,\n resizeMode: 'cover',\n }}\n source={send}\n />\n <Text\n style={{\n fontSize: 16,\n marginLeft: 10,\n }}\n >\n Browse Channels\n </Text>\n </View>\n <Image style={styles.iconStyle} source={right} />\n </TouchableOpacity>\n </View>\n <View style={styles.bottomContainer}>\n <View\n style={{\n paddingVertical: 5,\n marginTop: 5,\n }}\n >\n <Text\n style={{\n color: '#000',\n fontSize: 15,\n fontWeight: '600',\n }}\n >\n History\n </Text>\n </View>\n </View>\n </View>\n </VirtualizedScrollView>\n );\n};\n\nexport default JumpToScreen;\n"],"names":["React","send","right"],"mappings":"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"}
1
+ {"version":3,"file":"JumpTo.js","sources":["../../../src/screens/Search/JumpTo.tsx"],"sourcesContent":["// import { Ionicons } from '@expo/vector-icons';\nimport { StackNavigationProp } from '@react-navigation/stack';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { useFormik } from 'formik';\nimport { Pressable, Image, TouchableOpacity, Dimensions, View, Text } from 'react-native';\nimport styles from './styles';\nimport { StatusBar } from 'expo-status-bar';\n// import { Header, Tiles, NavigationHeader } from '../../components';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { NavigationRoutes } from '../../constants/routes';\nimport send from '../../assets/images/send.png';\nimport more from '../../assets/images/more.png';\nimport right from '../../assets/images/right.png';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\n// import { navigationRef } from '@common-stack/client-react';\nimport { useDrawerLayout } from '../../hooks';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\ntype JumpToScreenProps = {\n //navigation: StackNavigationProp<HomeParamList, 'Home'>;\n};\n\nconst JumpToScreen = (props: JumpToScreenProps) => {\n const { orgName, organizationDetail } = useDrawerLayout();\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const [loading, setLoading] = useState<boolean>(false);\n\n useFocusEffect(\n React.useCallback(() => {\n // navigation?.setOptions({\n // headerShown: true,\n // title: 'Search',\n // headerTitle: 'Search',\n // header: (props: any) => (\n // <NavigationHeader\n // {...props}\n // showToggle={false}\n // showFilter={false}\n // showTitle={false}\n // showProfile={false}\n // back={null}\n // isSearchBack={true}\n // // customHeader={\n // // <>\n // // <Box flex={1} bg={'#3f0e40'} px={2}>\n // // <Input\n // // InputLeftElement={\n // // <IconButton\n // // onPress={() => navigation.goBack()}\n // // icon={\n // // <Icon size={5} color=\"muted.400\" as={Ionicons} name=\"arrow-back\" />\n // // }\n // // />\n // // }\n // // size=\"lg\"\n // // placeholder=\"Jump to...\"\n // // variant=\"filled\"\n // // />\n // // </Box>\n // // </>\n // // }\n // />\n // ),\n // });\n\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n // const loadingComponent = () => (\n // <Box flex={1} justifyContent={'center'} alignItems={'center'} safeAreaTop>\n // <Spinner />\n // </Box>\n // );\n\n return (\n <VirtualizedScrollView className=\"bg-white flex-1\">\n <View style={styles.container}>\n {/* <Header>\n <Input size=\"lg\" placeholder=\"Enter a search term\" variant=\"filled\" />\n </Header> */}\n {/* <StatusBar style=\"light\" /> */}\n\n {/* Channels */}\n <View style={styles.channelContainer}>\n <TouchableOpacity\n style={[\n styles.headingContainer,\n {\n marginTop: 10,\n },\n ]}\n onPress={() =>\n navigation.navigate(NavigationRoutes.Peoples, {\n orgName: orgName,\n })\n }\n >\n <View\n style={{\n borderRadius: 8,\n alignItems: 'center',\n flexDirection: 'row',\n }}\n >\n <Image\n style={{\n width: 25,\n height: 25,\n resizeMode: 'cover',\n }}\n source={send}\n />\n <Text\n style={{\n fontSize: 16,\n marginLeft: 10,\n }}\n >\n Browse People\n </Text>\n </View>\n <Image style={styles.iconStyle} source={right} />\n </TouchableOpacity>\n </View>\n\n {/* Direct Messages */}\n <View\n style={[\n styles.channelContainer,\n {\n borderBottomWidth: 0.4,\n borderBottomColor: '#868686',\n paddingBottom: 20,\n },\n ]}\n >\n <TouchableOpacity\n style={styles.headingContainer}\n onPress={() =>\n navigation.navigate(NavigationRoutes.Channels, {\n orgName: orgName,\n })\n }\n >\n <View\n style={{\n borderRadius: 8,\n alignItems: 'center',\n flexDirection: 'row',\n }}\n >\n <Image\n style={{\n width: 25,\n height: 25,\n resizeMode: 'cover',\n }}\n source={send}\n />\n <Text\n style={{\n fontSize: 16,\n marginLeft: 10,\n }}\n >\n Browse Channels\n </Text>\n </View>\n <Image style={styles.iconStyle} source={right} />\n </TouchableOpacity>\n </View>\n <View style={styles.bottomContainer}>\n <View\n style={{\n paddingVertical: 5,\n marginTop: 5,\n }}\n >\n <Text\n style={{\n color: '#000',\n fontSize: 15,\n fontWeight: '600',\n }}\n >\n History\n </Text>\n </View>\n </View>\n </View>\n </VirtualizedScrollView>\n );\n};\n\nexport default JumpToScreen;\n"],"names":["React","send","right"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import React__default,{useLayoutEffect}from'react';import {TouchableOpacity,Dimensions}from'react-native';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {useNavigation,useRoute,useFocusEffect}from'@react-navigation/native';import {startCase}from'lodash-es';import {VStack,FlatList,Box,Text,Spinner,HStack,Avatar,AvatarFallbackText,AvatarImage,AvatarBadge}from'@admin-layout/gluestack-ui-mobile';import {RoomType}from'common';import {Octicons}from'@expo/vector-icons';import'../../constants/device.js';import'../../constants/globalStyles.js';import'../../constants/Layout.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';Dimensions.get("window").width;
2
2
  Dimensions.get("window").height;
3
- const PeopleSearchScreen = ({
3
+ const People = ({
4
4
  channels,
5
5
  loading
6
6
  }) => {
@@ -33,48 +33,40 @@ const PeopleSearchScreen = ({
33
33
  item
34
34
  }) => {
35
35
  var _a, _b, _c, _d, _e, _f, _g;
36
- const matches = (_a = item == null ? void 0 : item.title) == null ? void 0 : _a.match(/\b(\w)/g);
37
- matches.join("").substring(0, 2);
36
+ (_a = item == null ? void 0 : item.title) == null ? void 0 : _a.match(/\b(\w)/g);
38
37
  const channelMembers = (_d = (_c = (_b = item == null ? void 0 : item.members) == null ? void 0 : _b.filter((ch) => {
39
38
  var _a2, _b2;
40
39
  return ((_a2 = ch == null ? void 0 : ch.user) == null ? void 0 : _a2.id) != (user == null ? void 0 : user.id) && ((_b2 = ch == null ? void 0 : ch.user) == null ? void 0 : _b2.__typename) == "UserAccount";
41
40
  })) == null ? void 0 : _c.map((m) => m == null ? void 0 : m.user)) != null ? _d : null;
42
41
  return /* @__PURE__ */ React__default.createElement(TouchableOpacity, { key: item == null ? void 0 : item.id, style: {
43
42
  marginVertical: 10
44
- }, onPress: () => openInbox(item) }, /* @__PURE__ */ React__default.createElement(HStack, { flex: 1, alignItems: "center", justifyContent: "space-between" }, /* @__PURE__ */ React__default.createElement(HStack, { flex: 1, alignItems: "center", space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { m: "$0", p: "$0" }, item.type == RoomType.Direct ? /* @__PURE__ */ React__default.createElement(Avatar, { key: "direct-channel-profile-msg-key", size: "sm", bg: "transparent" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, null, startCase((_f = (_e = channelMembers[0]) == null ? void 0 : _e.username) == null ? void 0 : _f.charAt(0))), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", size: "md", style: {
43
+ }, onPress: () => openInbox(item) }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center justify-between" }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center", space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { className: "m-0 p-0" }, item.type == RoomType.Direct ? /* @__PURE__ */ React__default.createElement(Avatar, { key: "direct-channel-profile-msg-key", size: "sm", className: "bg-transparent" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, null, startCase((_f = (_e = channelMembers[0]) == null ? void 0 : _e.username) == null ? void 0 : _f.charAt(0))), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", style: {
45
44
  borderRadius: 6,
46
45
  borderWidth: 2,
47
46
  borderColor: "#fff"
48
47
  }, source: {
49
48
  uri: (_g = channelMembers[0]) == null ? void 0 : _g.picture
50
- } }), (channelMembers == null ? void 0 : channelMembers.length) > 1 ? /* @__PURE__ */ React__default.createElement(
51
- AvatarBadge,
52
- {
53
- right: "-$1",
54
- bottom: "-$1",
55
- style: {
56
- width: 20,
57
- height: 20
58
- },
59
- alignItems: "center",
60
- bg: "#211627",
61
- rounded: "$md"
62
- },
63
- /* @__PURE__ */ React__default.createElement(Text, { style: {
64
- fontSize: 12,
65
- fontWeight: "bold",
66
- color: "#fff"
67
- } }, channelMembers == null ? void 0 : channelMembers.length)
68
- ) : /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
49
+ } }), (channelMembers == null ? void 0 : channelMembers.length) > 1 ? /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
50
+ width: 20,
51
+ height: 20
52
+ }, className: "right-[-1px] bottom-[1px] items-center bg-[#211627] rounded-md" }, /* @__PURE__ */ React__default.createElement(Text, { style: {
53
+ fontSize: 12,
54
+ fontWeight: "bold",
55
+ color: "#fff"
56
+ } }, channelMembers == null ? void 0 : channelMembers.length)) : /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
69
57
  width: 10,
70
58
  height: 10
71
- }, bg: "$green800" })) : item.type == RoomType.Private ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "lock", size: 20 })) : /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "hash", size: 20 })), /* @__PURE__ */ React__default.createElement(Text, { color: "$coolGray800", fontWeight: "$bold" }, item.title))));
59
+ }, className: "bg-green-800" })) : item.type == RoomType.Private ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "lock", size: 20 })) : /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "hash", size: 20 })), /* @__PURE__ */ React__default.createElement(Text, { className: "text-gray-800 font-bold" }, item.title))));
72
60
  };
73
- return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "md", flex: 1, pt: "$2" }, /* @__PURE__ */ React__default.createElement(FlatList, { px: "$4", flex: 1, pb: "$10", keyExtractor: (item, index) => String(index), contentContainerStyle: {
61
+ return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "md", className: "flex-1 pt-2" }, /* @__PURE__ */ React__default.createElement(FlatList, { style: {
62
+ paddingHorizontal: 4,
63
+ flex: 1,
64
+ paddingBottom: 10
65
+ }, keyExtractor: (item, index) => String(index), contentContainerStyle: {
74
66
  flex: 1,
75
67
  marginBottom: 100
76
68
  }, data: channels && channels.length > 0 ? channels : [], renderItem: renderChannels, ListEmptyComponent: () => {
77
- return /* @__PURE__ */ React__default.createElement(Box, { bg: "#fff", py: "$2" }, (channels == null ? void 0 : channels.length) == 0 && loading ? /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { px: "$4", py: "$5" }, /* @__PURE__ */ React__default.createElement(Text, null, "No channels found"))) : /* @__PURE__ */ React__default.createElement(Spinner, { color: "$blue500" }));
69
+ return /* @__PURE__ */ React__default.createElement(Box, { className: "bg-white py-2" }, (channels == null ? void 0 : channels.length) == 0 && loading ? /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { className: "px-4 py-5" }, /* @__PURE__ */ React__default.createElement(Text, null, "No channels found"))) : /* @__PURE__ */ React__default.createElement(Spinner, { color: "$blue500" }));
78
70
  }, key: "search-channel-people-list", keyboardShouldPersistTaps: "always" })));
79
71
  };
80
- var People = React__default.memo(PeopleSearchScreen);export{People as default};//# sourceMappingURL=People.js.map
72
+ var People$1 = React__default.memo(People);export{People$1 as default};//# sourceMappingURL=People.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"People.js","sources":["../../../src/screens/Search/People.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport styles from './styles';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport {\n Text,\n VStack,\n Box,\n Icon,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Spinner,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport { useGetChannelsByUserQuery } from 'common/lib/generated/generated.js';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { NavigationRoutes } from '../../constants';\nimport { useSelector } from 'react-redux';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst PeopleSearchScreen = ({ channels, loading }) => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const user = useSelector(userSelector);\n\n useLayoutEffect(() => {\n // setLoading(true);\n }, []);\n\n useFocusEffect(\n React.useCallback(() => {\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n const openInbox = React.useCallback((item: any) => {\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n const memberImage =\n item.type === RoomType.Direct\n ? channelMembers?.length == 1\n ? channelMembers[0]?.picture ?? null\n : null\n : null;\n\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: item?.id?.toString(),\n title: item?.title?.toString(),\n totalMembers: item?.members?.length,\n memberImage: memberImage,\n channelType: item?.type,\n hideTabBar: true,\n });\n }, []);\n\n const renderChannels = ({ item }: any) => {\n const matches: any = item?.title?.match(/\\b(\\w)/g);\n const acronym: any = matches.join('').substring(0, 2); // JSON\n\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n return (\n <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => openInbox(item)}>\n <HStack flex={1} alignItems={'center'} justifyContent={'space-between'}>\n <HStack flex={1} alignItems={'center'} space={'sm'}>\n <Box m={'$0'} p={'$0'}>\n {item.type == RoomType.Direct ? (\n <Avatar key={'direct-channel-profile-msg-key'} size={'sm'} bg={'transparent'}>\n <AvatarFallbackText>\n {startCase(channelMembers[0]?.username?.charAt(0))}\n </AvatarFallbackText>\n <AvatarImage\n alt=\"image\"\n size={'md'}\n style={{\n // width: 25,\n // height: 25,\n borderRadius: 6,\n borderWidth: 2,\n borderColor: '#fff',\n }}\n source={{\n uri: channelMembers[0]?.picture,\n }}\n />\n {channelMembers?.length > 1 ? (\n <AvatarBadge\n // top={4}\n right={'-$1'}\n bottom={'-$1'}\n // size={5}\n style={{ width: 20, height: 20 }}\n alignItems={'center'}\n bg={'#211627'}\n // opacity={0.85}\n rounded={'$md'}\n >\n <Text style={{ fontSize: 12, fontWeight: 'bold', color: '#fff' }}>\n {channelMembers?.length}\n </Text>\n </AvatarBadge>\n ) : (\n <AvatarBadge style={{ width: 10, height: 10 }} bg=\"$green800\" />\n )}\n </Avatar>\n ) : item.type == RoomType.Private ? (\n <>\n <Octicons color=\"black\" name=\"lock\" size={20} />\n </>\n ) : (\n <Octicons color=\"black\" name=\"hash\" size={20} />\n )}\n </Box>\n <Text color=\"$coolGray800\" fontWeight=\"$bold\">\n {item.title}\n </Text>\n </HStack>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n return (\n <VirtualizedScrollView>\n <VStack space=\"md\" flex={1} pt={'$2'}>\n <FlatList\n px={'$4'}\n flex={1}\n pb={'$10'}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flex: 1,\n marginBottom: 100,\n }}\n data={channels && channels.length > 0 ? channels : []}\n renderItem={renderChannels}\n ListEmptyComponent={() => {\n return (\n <Box bg={'#fff'} py={'$2'}>\n {channels?.length == 0 && loading ? (\n <VStack space=\"sm\">\n <Box px=\"$4\" py={'$5'}>\n <Text>No channels found</Text>\n </Box>\n </VStack>\n ) : (\n <Spinner color={'$blue500'} />\n )}\n </Box>\n );\n }}\n key={'search-channel-people-list'}\n keyboardShouldPersistTaps=\"always\"\n />\n </VStack>\n </VirtualizedScrollView>\n );\n};\n\nexport default React.memo(PeopleSearchScreen);\n"],"names":["React","_a","_b"],"mappings":"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"}
1
+ {"version":3,"file":"People.js","sources":["../../../src/screens/Search/People.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport styles from './styles';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport {\n Text,\n VStack,\n Box,\n Icon,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Spinner,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { NavigationRoutes } from '../../constants';\nimport { useSelector } from 'react-redux';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport colors from 'tailwindcss/colors';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\n// Define props interface for the component\ninterface PeopleProps {\n channels: any[];\n loading: boolean;\n}\n\nconst People: React.FC<PeopleProps> = ({ channels, loading }) => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const user = useSelector(userSelector);\n\n useLayoutEffect(() => {\n // setLoading(true);\n }, []);\n\n useFocusEffect(\n React.useCallback(() => {\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n const openInbox = React.useCallback((item: any) => {\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n const memberImage =\n item.type === RoomType.Direct\n ? channelMembers?.length == 1\n ? channelMembers[0]?.picture ?? null\n : null\n : null;\n\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: item?.id?.toString(),\n title: item?.title?.toString(),\n totalMembers: item?.members?.length,\n memberImage: memberImage,\n channelType: item?.type,\n hideTabBar: true,\n });\n }, []);\n\n const renderChannels = ({ item }: any) => {\n const matches: any = item?.title?.match(/\\b(\\w)/g);\n //const acronym: any = matches.join('').substring(0, 2); // JSON\n\n const channelMembers =\n item?.members\n ?.filter((ch: any) => ch?.user?.id != user?.id && ch?.user?.__typename == 'UserAccount')\n ?.map((m: any) => m?.user) ?? null;\n\n return (\n <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => openInbox(item)}>\n <HStack className=\"flex-1 items-center justify-between\">\n <HStack className=\"flex-1 items-center\" space={'sm'}>\n <Box className=\"m-0 p-0\">\n {item.type == RoomType.Direct ? (\n <Avatar key={'direct-channel-profile-msg-key'} size={'sm'} className=\"bg-transparent\">\n <AvatarFallbackText>\n {startCase(channelMembers[0]?.username?.charAt(0))}\n </AvatarFallbackText>\n <AvatarImage\n alt=\"image\"\n style={{\n // width: 25,\n // height: 25,\n borderRadius: 6,\n borderWidth: 2,\n borderColor: '#fff',\n }}\n source={{\n uri: channelMembers[0]?.picture,\n }}\n />\n {channelMembers?.length > 1 ? (\n <AvatarBadge\n style={{ width: 20, height: 20 }}\n className=\"right-[-1px] bottom-[1px] items-center bg-[#211627] rounded-md\"\n >\n <Text style={{ fontSize: 12, fontWeight: 'bold', color: '#fff' }}>\n {channelMembers?.length}\n </Text>\n </AvatarBadge>\n ) : (\n <AvatarBadge style={{ width: 10, height: 10 }} className=\"bg-green-800\" />\n )}\n </Avatar>\n ) : item.type == RoomType.Private ? (\n <>\n <Octicons color=\"black\" name=\"lock\" size={20} />\n </>\n ) : (\n <Octicons color=\"black\" name=\"hash\" size={20} />\n )}\n </Box>\n <Text className=\"text-gray-800 font-bold\">{item.title}</Text>\n </HStack>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n return (\n <VirtualizedScrollView>\n <VStack space=\"md\" className=\"flex-1 pt-2\">\n <FlatList\n style={{ paddingHorizontal: 4, flex: 1, paddingBottom: 10 }}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flex: 1,\n marginBottom: 100,\n }}\n data={channels && channels.length > 0 ? channels : []}\n renderItem={renderChannels}\n ListEmptyComponent={() => {\n return (\n <Box className=\"bg-white py-2\">\n {channels?.length == 0 && loading ? (\n <VStack space=\"sm\">\n <Box className=\"px-4 py-5\">\n <Text>No channels found</Text>\n </Box>\n </VStack>\n ) : (\n <Spinner color={'$blue500'} />\n )}\n </Box>\n );\n }}\n key={'search-channel-people-list'}\n keyboardShouldPersistTaps=\"always\"\n />\n </VStack>\n </VirtualizedScrollView>\n );\n};\n\nexport default React.memo(People);\n"],"names":["React","_a","_b"],"mappings":"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"}