@messenger-box/slack-ui-mobile 10.0.3-alpha.0 → 10.0.3-alpha.5

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 (100) hide show
  1. package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js +1 -1
  2. package/lib/components/CustomBottomTabs/CustomBottomTabs.js.map +1 -1
  3. package/lib/components/CustomDrawer/CustomDrawer.js +3 -1
  4. package/lib/components/CustomDrawer/CustomDrawer.js.map +1 -1
  5. package/lib/components/NavigationHeader/InboxNavigationHeader.js +1 -1
  6. package/lib/components/NavigationHeader/InboxNavigationHeader.js.map +1 -1
  7. package/lib/components/NavigationHeader/NavigationHeader.js +1 -1
  8. package/lib/components/NavigationHeader/NavigationHeader.js.map +1 -1
  9. package/lib/components/NavigationHeader/NavigationHeaderChat.js.map +1 -1
  10. package/lib/components/SlackSearchInput/Suggestion.js +2 -2
  11. package/lib/components/SlackSearchInput/Tag.js +2 -2
  12. package/lib/components/SlackSearchInput/index.js +1 -1
  13. package/lib/components/SlackSearchInput/index.js.map +1 -1
  14. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js +4 -1
  15. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js.map +1 -1
  16. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js +3 -1
  17. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js.map +1 -1
  18. package/lib/constants/preloadImages.js +11 -11
  19. package/lib/constants/preloadImages.js.map +1 -1
  20. package/lib/hooks/useDrawerLayout.js +1 -1
  21. package/lib/hooks/useDrawerLayout.js.map +1 -1
  22. package/lib/hooks/useExpoNotificationProvider.js +1 -1
  23. package/lib/hooks/useExpoNotificationProvider.js.map +1 -1
  24. package/lib/navigation/ActivityNavigator.js +1 -1
  25. package/lib/navigation/ActivityNavigator.js.map +1 -1
  26. package/lib/navigation/ExploreNavigator.js +1 -1
  27. package/lib/navigation/ExploreNavigator.js.map +1 -1
  28. package/lib/navigation/InboxNavigator.js +1 -1
  29. package/lib/navigation/InboxNavigator.js.map +1 -1
  30. package/lib/navigation/SearchTabNavigation.js +1 -1
  31. package/lib/navigation/SearchTabNavigation.js.map +1 -1
  32. package/lib/navigation/TeamTabNavigation.js +1 -1
  33. package/lib/navigation/TeamTabNavigation.js.map +1 -1
  34. package/lib/screens/Account/AccountScreen.js +4 -1
  35. package/lib/screens/Account/AccountScreen.js.map +1 -1
  36. package/lib/screens/Channels/Add/AddName.js +2 -2
  37. package/lib/screens/Channels/Add/AddName.js.map +1 -1
  38. package/lib/screens/Channels/Add/AddVisibility.js +1 -1
  39. package/lib/screens/Channels/Add/AddVisibility.js.map +1 -1
  40. package/lib/screens/Channels/AddChannel.js +1 -1
  41. package/lib/screens/Channels/AddChannel.js.map +1 -1
  42. package/lib/screens/Channels/Channels.js +1 -1
  43. package/lib/screens/Channels/Channels.js.map +1 -1
  44. package/lib/screens/Home/Components/Channels/Channels.js +1 -1
  45. package/lib/screens/Home/Components/Channels/Channels.js.map +1 -1
  46. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js +1 -1
  47. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js.map +1 -1
  48. package/lib/screens/Home/Components/Teams/Teams.js +1 -1
  49. package/lib/screens/Home/Components/Teams/Teams.js.map +1 -1
  50. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js +1 -1
  51. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js.map +1 -1
  52. package/lib/screens/Home/HomeScreen.js +1 -1
  53. package/lib/screens/Home/HomeScreen.js.map +1 -1
  54. package/lib/screens/Home/styles.js +1 -1
  55. package/lib/screens/Inbox/InboxChannelDetail.js +7 -2
  56. package/lib/screens/Inbox/InboxChannelDetail.js.map +1 -1
  57. package/lib/screens/Inbox/InboxDialogMessages.js.map +1 -1
  58. package/lib/screens/Inbox/InboxThreadMessages.js.map +1 -1
  59. package/lib/screens/Inbox/InboxThreads.js.map +1 -1
  60. package/lib/screens/Login.js +1 -1
  61. package/lib/screens/Login.js.map +1 -1
  62. package/lib/screens/Organization/AddWorkspace.js.map +1 -1
  63. package/lib/screens/Organization/CreateOrganization.js +1 -1
  64. package/lib/screens/Organization/CreateOrganization.js.map +1 -1
  65. package/lib/screens/Organization/InitialChannelOnboarding.js +3 -3
  66. package/lib/screens/Organization/InitialChannelOnboarding.js.map +1 -1
  67. package/lib/screens/Organization/InitializeOrganizationChannel.js +1 -1
  68. package/lib/screens/Organization/InitializeOrganizationChannel.js.map +1 -1
  69. package/lib/screens/Organization/InviteOrganizationMembers.js +1 -1
  70. package/lib/screens/Organization/InviteOrganizationMembers.js.map +1 -1
  71. package/lib/screens/Peoples/AddByEmail.js +2 -2
  72. package/lib/screens/Peoples/AddByEmail.js.map +1 -1
  73. package/lib/screens/Peoples/AddFromContacts.js.map +1 -1
  74. package/lib/screens/Peoples/AddPeople.js +4 -4
  75. package/lib/screens/Peoples/AddPeople.js.map +1 -1
  76. package/lib/screens/Peoples/People.js +1 -1
  77. package/lib/screens/Profile/ProfileScreen.js.map +1 -1
  78. package/lib/screens/Search/Channels.js +1 -1
  79. package/lib/screens/Search/Channels.js.map +1 -1
  80. package/lib/screens/Search/Files.js +1 -1
  81. package/lib/screens/Search/Files.js.map +1 -1
  82. package/lib/screens/Search/JumpTo.js +2 -2
  83. package/lib/screens/Search/JumpTo.js.map +1 -1
  84. package/lib/screens/Search/People.js +1 -1
  85. package/lib/screens/Search/People.js.map +1 -1
  86. package/lib/screens/Search/Recents.js +1 -1
  87. package/lib/screens/Search/Recents.js.map +1 -1
  88. package/lib/screens/Search/SearchAddChannel.js +5 -5
  89. package/lib/screens/Search/SearchAddChannel.js.map +1 -1
  90. package/lib/screens/Search/SearchChannelPeople.js +1 -1
  91. package/lib/screens/Search/SearchChannelPeople.js.map +1 -1
  92. package/lib/screens/Search/SearchScreen.js.map +1 -1
  93. package/lib/screens/Search/styles.js +1 -1
  94. package/lib/screens/Teams/Components/Channels/Channels.js.map +1 -1
  95. package/lib/screens/Teams/Components/Members/Members.js +1 -1
  96. package/lib/screens/Teams/Components/Members/Members.js.map +1 -1
  97. package/lib/screens/Teams/Team.js.map +1 -1
  98. package/lib/screens/Teams/Teams.js +7 -4
  99. package/lib/screens/Teams/Teams.js.map +1 -1
  100. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
- import React__default,{useState}from'react';import {Dimensions,View,TouchableOpacity,Image,Text}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';Dimensions.get("window").width;
2
2
  Dimensions.get("window").height;
3
3
  const JumpToScreen = (props) => {
4
4
  const {
@@ -7,7 +7,7 @@ const JumpToScreen = (props) => {
7
7
  } = useDrawerLayout();
8
8
  const navigation = useNavigation();
9
9
  useRoute();
10
- useState(false);
10
+ const [loading, setLoading] = useState(false);
11
11
  useFocusEffect(React__default.useCallback(() => {
12
12
  return () => {
13
13
  };
@@ -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 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,4 +1,4 @@
1
- import React__default,{useLayoutEffect}from'react';import {Dimensions,TouchableOpacity}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,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
3
  const PeopleSearchScreen = ({
4
4
  channels,
@@ -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 { 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,4 +1,4 @@
1
- import React__default,{useLayoutEffect}from'react';import {Dimensions,TouchableOpacity}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,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
3
  const RecentsSearchScreen = ({
4
4
  channels,
@@ -1 +1 @@
1
- {"version":3,"file":"Recents.js","sources":["../../../src/screens/Search/Recents.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 Center,\n Heading,\n Input,\n View,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n Image,\n Checkbox,\n ChevronLeftIcon,\n KeyboardAvoidingView,\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 RecentsSearchScreen = ({ 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={'md'}>\n <Box m={'$0'} p={'$0'}>\n {item.type == RoomType.Direct ? (\n <Avatar 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={2}\n // right={-12}\n right={'-$1'}\n bottom={'-$1'}\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(RecentsSearchScreen);\n"],"names":["React","_a","_b"],"mappings":"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"}
1
+ {"version":3,"file":"Recents.js","sources":["../../../src/screens/Search/Recents.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 Center,\n Heading,\n Input,\n View,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n Image,\n Checkbox,\n ChevronLeftIcon,\n KeyboardAvoidingView,\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 RecentsSearchScreen = ({ 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={'md'}>\n <Box m={'$0'} p={'$0'}>\n {item.type == RoomType.Direct ? (\n <Avatar 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={2}\n // right={-12}\n right={'-$1'}\n bottom={'-$1'}\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(RecentsSearchScreen);\n"],"names":["React","_a","_b"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import React__default,{useState,useEffect,useCallback}from'react';import {HStack,Box,Avatar,AvatarFallbackText,AvatarImage,AvatarBadge,Text,Checkbox,CheckboxIndicator,CheckboxIcon,CheckIcon}from'@admin-layout/gluestack-ui-mobile';import {Dimensions,Keyboard,TouchableOpacity}from'react-native';import {RoomType}from'common';import {useGetChannelsByUserLazyQuery,useGetOrganizationMembersWithChannelsQuery}from'common/lib/generated/generated.js';import {DialogMessages}from'@messenger-box/platform-mobile';import {useNavigation,useIsFocused,useFocusEffect}from'@react-navigation/native';import {userSelector}from'@adminide-stack/user-auth0-client';import {useSelector}from'react-redux';import {startCase,uniqBy}from'lodash-es';import {MaterialIcons,Octicons}from'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';import'@react-navigation/core';import'../../components/Header/styles.js';import'../../components/Tiles/styles.js';import'../../components/CustomDrawer/CustomDrawer.js';import'../../components/CustomBottomTabs/CustomBottomTabs.js';import'../../components/NavigationHeader/NavigationHeader.js';import'@react-navigation/elements';import'@common-stack/client-react';import'../../components/NavigationHeader/InboxNavigationHeader.js';import {LoadingSpinnerDefault}from'../../components/LoadingSpinner/index.js';import'../../components/WorkSpaceDrawer/WorkSpaceDrawer.js';import'../../components/Channels/ChannelsByAlphabeticalAccordion.js';import {SlackInput}from'../../components/SlackSearchInput/index.js';var __defProp = Object.defineProperty;
1
+ import React__default,{useState,useEffect,useCallback}from'react';import {HStack,Box,Avatar,AvatarFallbackText,AvatarImage,AvatarBadge,Text,Checkbox,CheckboxIndicator,CheckboxIcon,CheckIcon}from'@admin-layout/gluestack-ui-mobile';import {Keyboard,TouchableOpacity,Dimensions}from'react-native';import {RoomType}from'common';import {useGetChannelsByUserLazyQuery,useGetOrganizationMembersWithChannelsQuery}from'common/lib/generated/generated.js';import {DialogMessages}from'@messenger-box/platform-mobile';import {useNavigation,useIsFocused,useFocusEffect}from'@react-navigation/native';import {userSelector}from'@adminide-stack/user-auth0-client';import {useSelector}from'react-redux';import {startCase,uniqBy}from'lodash-es';import {MaterialIcons,Octicons}from'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';import'@react-navigation/core';import'../../components/Header/styles.js';import'../../components/Tiles/styles.js';import'../../components/CustomDrawer/CustomDrawer.js';import'../../components/CustomBottomTabs/CustomBottomTabs.js';import'../../components/NavigationHeader/NavigationHeader.js';import'@react-navigation/elements';import'@common-stack/client-react';import'../../components/NavigationHeader/InboxNavigationHeader.js';import {LoadingSpinnerDefault}from'../../components/LoadingSpinner/index.js';import'../../components/WorkSpaceDrawer/WorkSpaceDrawer.js';import'../../components/Channels/ChannelsByAlphabeticalAccordion.js';import {SlackInput}from'../../components/SlackSearchInput/index.js';var __defProp = Object.defineProperty;
2
2
  var __defProps = Object.defineProperties;
3
3
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
@@ -52,12 +52,12 @@ const SearchAddChannel = (props) => {
52
52
  const user = useSelector(userSelector);
53
53
  const [channels, setChannels] = useState([]);
54
54
  const [initialOrgMembers, setInitialOrgMembers] = useState([]);
55
- useState([]);
55
+ const [selectedMembers, setSelectedMembers] = useState([]);
56
56
  const [selectedChannels, setSelectedChannels] = useState([]);
57
- useState(false);
57
+ const [showChannels, setShowChannels] = useState(false);
58
58
  const [offset, setOffset] = useState(0);
59
- useState([]);
60
- useState(0);
59
+ const [organizationMembers, setOrganizationMembers] = useState([]);
60
+ const [totalMembers, setTotalMembers] = useState(0);
61
61
  const [channelId, setChannelId] = useState(null);
62
62
  const [isSetInputFocusOut, setInputFocusOut] = useState(false);
63
63
  const [isCreateNewChannel, setIsCreateNewChannel] = useState(false);
@@ -1 +1 @@
1
- {"version":3,"file":"SearchAddChannel.js","sources":["../../../src/screens/Search/SearchAddChannel.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport {\n Text,\n Button,\n ButtonText,\n Box,\n Icon,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Checkbox,\n CheckboxLabel,\n CheckboxIndicator,\n CheckboxIcon,\n CheckIcon,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport { RoomType } from 'common';\nimport {\n useGetOrganizationMembersWithChannelsQuery,\n useGetChannelsByUserQuery,\n useGetChannelsByUserLazyQuery,\n useGetOrganizationMembersQuery,\n} from 'common/lib/generated/generated.js';\n// import { NavigationRoutes } from '../../constants/routes';\nimport { AntDesign, SimpleLineIcons } from '@expo/vector-icons';\nimport { Inbox, DialogMessages, DialogThreads } from '@messenger-box/platform-mobile';\n// import VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useIsFocused, useFocusEffect, useNavigation } from '@react-navigation/native';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport { useSelector } from 'react-redux';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { useDrawerLayout } from '../../hooks';\nimport { LoadingSpinnerDefault, SlackInput } from '../../components';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst screenHeight = Dimensions.get('screen').height;\n\nconst defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public, RoomType.Direct];\nconst orgMemersDataFetchLimit = 10;\nexport const useKeyboard = () => {\n const [keyboardHeight, setKeyboardHeight] = useState(0);\n\n useEffect(() => {\n function onKeyboardDidShow(e: KeyboardEvent) {\n // Remove type here if not using TypeScript\n setKeyboardHeight(e?.endCoordinates?.height ?? 0);\n }\n\n function onKeyboardDidHide() {\n setKeyboardHeight(0);\n }\n\n const showSubscription = Keyboard.addListener('keyboardDidShow', onKeyboardDidShow);\n const hideSubscription = Keyboard.addListener('keyboardDidHide', onKeyboardDidHide);\n return () => {\n showSubscription.remove();\n hideSubscription.remove();\n };\n }, []);\n\n return keyboardHeight;\n};\n\nconst SearchAddChannel = (props: any) => {\n const navigation = useNavigation<any>();\n const { orgName, organizationDetail } = useDrawerLayout();\n const isFocused = useIsFocused();\n const user = useSelector(userSelector);\n const [channels, setChannels] = useState<any>([]);\n const [initialOrgMembers, setInitialOrgMembers] = useState<any>([]);\n //const [searchValue, setSearchValue] = useState<any>(route?.params?.searchValue ?? '');\n const [selectedMembers, setSelectedMembers] = useState<any>([]);\n const [selectedChannels, setSelectedChannels] = useState<any>([]);\n const [showChannels, setShowChannels] = useState<boolean>(false);\n const [offset, setOffset] = useState(0);\n const [organizationMembers, setOrganizationMembers] = useState<any>([]);\n const [totalMembers, setTotalMembers] = useState<any>(0);\n const [channelId, setChannelId] = useState<any>(null);\n const [isSetInputFocusOut, setInputFocusOut] = useState<boolean>(false);\n const [isCreateNewChannel, setIsCreateNewChannel] = useState<boolean>(false);\n const keyboardHeight = useKeyboard();\n //const suggestions = ['apple', 'orange', 'banana', 'kiwi', 'tadff', 'radfe', 'sadfdf', 'uerer', 'ydafdf', 'zlaood'];\n // const [tags, setTags] = useState<string[]>([]);\n //const labelExtractor = (tag: string) => tag;\n const [tags, setTags] = useState<any[]>([]);\n const labelExtractor = (tag: any) => (tag?.id ? tag?.id : tag?.userId);\n const [getChannelByUser, { loading: isChannelByUserLoading }] = useGetChannelsByUserLazyQuery();\n const {\n data,\n loading: oLoading,\n error: oError,\n refetch,\n } = useGetOrganizationMembersWithChannelsQuery({\n variables: {\n orgName: orgName,\n channelCriteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n offset: offset,\n limit: orgMemersDataFetchLimit,\n },\n fetchPolicy: 'cache-and-network',\n });\n\n useFocusEffect(\n React.useCallback(() => {\n refetch({\n orgName: orgName,\n channelCriteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n offset: offset,\n limit: orgMemersDataFetchLimit,\n });\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n setChannels([]);\n setChannelId(null);\n setInitialOrgMembers([]);\n };\n }, [orgName]),\n );\n\n React.useEffect(() => {\n navigation.setOptions({\n headerLeft: (props: any) => (\n <TouchableOpacity onPress={() => navigation.goBack()}>\n <MaterialIcons size={20} name=\"close\" color={'black'} />\n </TouchableOpacity>\n ),\n });\n }, []);\n\n React.useEffect(() => {\n if (data?.channelsByUser) {\n const allChannels: any =\n data?.channelsByUser\n ?.filter((ch: any) =>\n ch.type == RoomType.Direct &&\n ch?.members?.length == 1 &&\n ch?.members?.filter((ch: any) => ch?.user?.id == user?.id)\n ? ch\n : ch?.members?.filter((m: any) => m?.user?.id != user?.id),\n )\n ?.map((i: any) => {\n const ch: any = { id: i?.id, title: i?.title, type: i?.type };\n const channelMembers =\n i.members\n ?.map((m: any) => m?.user)\n ?.filter((ch: any) =>\n i.members?.length == 1 && ch?.id == user?.id ? ch : ch?.id != user?.id,\n ) ?? null;\n const title =\n ch.type == RoomType.Direct\n ? channelMembers\n ?.map((u: any) => u?.givenName + ' ' + (u?.familyName ?? ''))\n ?.filter((mu: any) => mu)\n ?.join(', ') ?? ''\n : ch.title;\n ch.title = title;\n ch.channelImage = channelMembers[0]?.picture;\n ch.imageAcronym = startCase(channelMembers[0]?.username?.charAt(0));\n ch.members = channelMembers;\n ch.totalMembers = channelMembers?.length;\n ch.userId = null;\n ch.isOrgMembers = false;\n\n return ch;\n })\n ?.filter((ch: any) => ch) ?? [];\n\n const existingDirectChannelsToDelete = new Set(\n data?.channelsByUser?.map((ch: any) => ch?.members?.map((m: any) => m?.user?.id))?.flat(1),\n );\n\n const allOrgMembers: any =\n data?.getOrganizationMembers?.data\n ?.filter((m: any) => m?.user?.id != user?.id)\n .filter((obj: any) => !existingDirectChannelsToDelete.has(obj?.userId))\n ?.map((i: any) => {\n const ch: any = {\n id: null,\n title: i?.user?.givenName + ' ' + i?.user?.familyName,\n type: RoomType.Direct,\n channelImage: i?.user?.picture,\n imageAcronym: startCase(i?.user?.username?.charAt(0)),\n members: [],\n totalMembers: 1,\n userId: i?.user?.id,\n isOrgMembers: true,\n };\n\n return ch;\n })\n ?.filter((ch: any) => ch) ?? [];\n setChannels((oldChannels: any) =>\n uniqBy([...allChannels, ...allOrgMembers, ...oldChannels], ({ id, userId }) => id + userId),\n );\n setInitialOrgMembers((oldChannels: any) =>\n uniqBy([...allChannels, ...allOrgMembers, ...oldChannels], ({ id, userId }) => id + userId),\n );\n }\n }, [data]);\n\n React.useEffect(() => {\n if (channelId && tags?.length === 0) setChannelId(null);\n if (!channelId && tags?.length > 0) {\n const userIds = [\n ...new Set(\n tags?.map((t: any) => (t?.userId ? t?.userId : t?.members?.map((m: any) => m?.id)))?.flat(1),\n ),\n ];\n\n getChannelId(userIds);\n }\n console.log('channelid', channelId, ' tags?.length', tags?.length);\n }, [channelId, tags, orgName]);\n\n const getChannelId = React.useCallback(\n async (userIds: any[]) => {\n const res = await getChannelByUser({\n variables: {\n criteria: {\n orgName: orgName,\n type: RoomType.Direct,\n 'members.user': { $all: [...userIds, user?.id] },\n },\n limit: 1,\n },\n });\n\n if (res?.data?.channelsByUser?.length > 0) {\n setChannelId(res?.data?.channelsByUser?.[0]?.id);\n setInputFocusOut(true);\n setIsCreateNewChannel(false);\n } else {\n setChannelId(null);\n setInputFocusOut(false);\n setIsCreateNewChannel(true);\n }\n // ?.then((res) => {\n // if (res?.data?.channelsByUser?.length > 0) {\n // setChannelId(res?.data?.channelsByUser?.[0]?.id);\n // setInputFocusOut(true);\n // } else {\n // setChannelId(null);\n // setInputFocusOut(false);\n // }\n // });\n },\n [orgName, user],\n );\n\n // const renderChannels = ({ item }: any) => {\n // return (\n // <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => selectChannels(item)}>\n // <HStack flex={1} alignItems={'center'} justifyContent={'space-between'}>\n // <HStack flex={1} alignItems={'center'} space={6}>\n // <Box m={0} p={0}>\n // {item.type == RoomType.Direct ? (\n // <Avatar\n // key={'direct-channel-profile-msg-key'}\n // size={5}\n // bg={'transparent'}\n // borderRadius={6}\n // _image={{\n // borderRadius: 6,\n // size: 5,\n // }}\n // source={{\n // uri: item?.channelImage,\n // }}\n // >\n // {item?.imageAcronym}\n // {item?.totalMembers > 1 ? (\n // <Avatar.Badge\n // top={2}\n // right={-12}\n // size={5}\n // alignItems={'center'}\n // bg={'#211627'}\n // // opacity={0.85}\n // _text={{\n // fontSize: 10,\n // fontWeight: 'bold',\n // color: '#fff',\n // }}\n // rounded={'md'}\n // >\n // {item?.totalMembers}\n // </Avatar.Badge>\n // ) : (\n // <Avatar.Badge bg=\"green.800\" bottom={-4} right={-4} />\n // )}\n // </Avatar>\n // ) : item.type == RoomType.Private ? (\n // <>\n // <Icon color=\"black\" as={Octicons} name=\"lock\" size=\"md\" />\n // </>\n // ) : (\n // <Icon color=\"black\" as={Octicons} name=\"hash\" size=\"md\" />\n // )}\n // </Box>\n // <Text\n // _dark={{\n // color: 'warmGray.50',\n // }}\n // color=\"coolGray.800\"\n // bold\n // >\n // {item.title}\n // </Text>\n // </HStack>\n\n // <Checkbox\n // // onChange={() => selectChannels(item)}\n // value={item?.id}\n // isChecked={\n // selectedChannels &&\n // selectedChannels?.filter((ch: any) => ch?.id === item?.id && ch?.userId === item?.userId)\n // ?.length > 0\n // ? true\n // : false\n // }\n // accessibilityLabel={item.title ?? ''}\n // aria-label={item.title ?? ''}\n // aria-labelledby={item.title ?? ''}\n // borderColor={'gray.600'}\n // />\n // </HStack>\n // </TouchableOpacity>\n // );\n // };\n\n const selectChannels = React.useCallback(\n (item: any) => {\n // setSearchValue(item?.title);\n openInbox(item);\n if (selectedChannels) {\n const findIndex = selectedChannels.findIndex(\n (ch: any) => ch?.id == item?.id && ch?.userId == item?.userId,\n );\n const selectedChannelValue =\n findIndex === -1\n ? [...selectedChannels, { id: item?.id, userId: item?.userId }]\n : selectedChannels?.filter((ch: any) =>\n item?.isOrgMembers ? ch?.userId !== item?.userId : ch?.id !== item?.id,\n );\n setSelectedChannels(selectedChannelValue);\n }\n },\n [selectedChannels],\n );\n\n const openInbox = React.useCallback(\n (item: any) => {\n // navigation.push(NavigationRoutes.SearchAddChannel, {\n // channelId: item?.id?.toString() || null,\n // searchValue: item?.title || '',\n // isCreateNewChannel: item?.id == null ? true : false,\n // userId: item?.userId,\n // orgName: orgName,\n // });\n },\n [orgName],\n );\n\n const renderChannelSuggestions = useCallback((item: any, onPress: (tag: any) => void, index: any) => {\n return (\n <TouchableOpacity\n key={`channel-suggestions-${index}`}\n style={{ marginVertical: 10 }}\n onPress={() => onPress(item)}\n >\n <HStack flex={1} bg={'white'} 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 size={'sm'} bg={'transparent'}>\n <AvatarFallbackText>{item?.imageAcronym}</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: item?.channelImage,\n }}\n />\n {item?.totalMembers > 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 {item?.totalMembers}\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\n <Checkbox\n value={item?.id}\n isChecked={\n selectedChannels &&\n selectedChannels?.filter((ch: any) => ch?.id === item?.id && ch?.userId === item?.userId)\n ?.length > 0\n ? true\n : false\n }\n accessibilityLabel={item.title ?? ''}\n aria-label={item.title ?? ''}\n aria-labelledby={item.title ?? ''}\n borderColor={'$trueGray600'}\n >\n <CheckboxIndicator>\n <CheckboxIcon as={CheckIcon} />\n </CheckboxIndicator>\n </Checkbox>\n </HStack>\n </TouchableOpacity>\n );\n }, []);\n\n const onSuggestionPress = useCallback(\n (item: any) => {\n if (tags) {\n const findIndex = tags?.findIndex((ch: any) => ch?.id == item?.id && ch?.userId == item?.userId);\n if (findIndex === -1) {\n // setTags([...tags, item])\n if (item?.id && item?.type !== RoomType.Direct) {\n setChannelId(item?.id);\n setInputFocusOut(true);\n setTags([item]);\n } else {\n const previousTags = tags?.filter((t: any) => t?.type === item?.type) ?? [];\n const currentTags = [...(previousTags ?? []), item];\n setTags(currentTags);\n const userIds = [\n ...new Set(\n currentTags\n ?.map((t: any) => (t?.userId ? t?.userId : t?.members?.map((m: any) => m?.id)))\n ?.flat(1),\n ),\n ];\n getChannelId(userIds);\n }\n }\n }\n },\n [tags, orgName],\n );\n\n const onTagPress = useCallback(\n (item: any) => {\n if (tags) {\n const filteredValue = tags?.filter((ch: any) =>\n item?.isOrgMembers ? ch?.userId !== item?.userId : ch?.id !== item?.id,\n );\n setTags(filteredValue);\n console.log('tagpress');\n }\n },\n [tags],\n );\n\n const renderTagItemImage = useCallback((type: RoomType, image: string, imageAcronym: any) => {\n return (\n <Box m={'$0'} p={'$0'}>\n {type == RoomType.Direct ? (\n <Avatar size={'sm'} bg={'transparent'} borderRadius={6}>\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: image,\n }}\n />\n\n <AvatarFallbackText>{imageAcronym}</AvatarFallbackText>\n </Avatar>\n ) : 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 );\n }, []);\n\n const renderTagItem = useCallback((title: string, type: RoomType, image: string, imageAcronym: any, key: any) => {\n return (\n <HStack alignItems={'center'} space={'sm'} py={'$2'} key={`render-tag-items-${key}`}>\n {renderTagItemImage(type, image, imageAcronym)}\n <Box bg={'$lightBlue100'}>\n <Text color={'$coolGray800'} textAlign={'center'} bold>\n {title}\n </Text>\n </Box>\n </HStack>\n );\n }, []);\n\n const renderTag = useCallback((item: any, onPress: (tag: any) => void, index: any) => {\n return (\n <TouchableOpacity onPress={() => onPress(item)} key={`channel-tags-${index}`}>\n {item.isOrgMembers || item?.type != RoomType.Direct ? (\n <Box mx={'$1'}>\n {renderTagItem(item?.title, item?.type, item?.channelImage, item?.imageAcronym, index)}\n </Box>\n ) : (\n <HStack alignItems={'center'} space={'sm'} py={'$1'}>\n {item?.members?.map((m: any, i: any) => {\n const title =\n item?.type == RoomType.Direct ? m?.givenName + ' ' + m?.familyName : item.title;\n const acronym = startCase(m?.username?.charAt(0));\n return renderTagItem(title, item?.type, m?.picture, acronym, i);\n })}\n </HStack>\n )}\n </TouchableOpacity>\n );\n }, []);\n\n return (\n <Box flex={1} bg={'$white'} w={windowWidth} h={windowHeight}>\n <SlackInput\n tags={tags}\n suggestions={channels}\n onChangeTags={setTags}\n labelExtractor={labelExtractor}\n allowCustomTags={false}\n isSetInputFocusOut={isSetInputFocusOut}\n renderLeftElement={() => (\n <Text pl={'$4'} pr={'$1'} fontSize={15}>\n To:\n </Text>\n )}\n // renderRightElement={() => (\n // <Button bg={'transparent'}>\n // <SimpleLineIcons color=\"black\" name=\"user-follow\" size={20} />\n // </Button>\n // )}\n tagContainerStyle={{\n borderBottomWidth: 1,\n borderColor: '#D3D3D3',\n paddingVertical: 5,\n }}\n inputProps={{\n placeholder: 'Search for a channel or conversation',\n placeholderTextColor: '#404040',\n autoCapitalize: 'none',\n autoCorrect: false,\n }}\n inputStyle={{\n fontSize: 15,\n height: 30,\n }}\n flatListGluestackUiProps={{\n flex: 1,\n pb: '$10',\n // px: 4,\n contentContainerStyle: {\n flex: 1,\n marginBottom: 100,\n backgroundColor: 'white',\n paddingHorizontal: 10,\n },\n }}\n flatListStyle={{\n maxHeight: '100%',\n maxWidth: '100%',\n // backgroundColor: 'white',\n }}\n renderSuggestion={renderChannelSuggestions}\n filterSuggestions={(text: string) => {\n if (!text || text === '') {\n return [];\n }\n\n return channels?.filter((item: any) => item?.title?.toLowerCase()?.includes(text?.toLowerCase()));\n }}\n onSuggestionPress={onSuggestionPress}\n renderTag={renderTag}\n onTagPress={onTagPress}\n />\n <Box flex={1}>\n {isChannelByUserLoading ? (\n <LoadingSpinnerDefault />\n ) : (\n <DialogMessages\n {...props}\n channelId={channelId}\n isCreateNewChannel={isCreateNewChannel}\n newChannelData={{\n type: RoomType?.Direct,\n userIds: [\n ...new Set(\n tags\n ?.map((t: any) => (t?.userId ? t?.userId : t?.members?.map((m: any) => m?.id)))\n ?.flat(1),\n ),\n ],\n }}\n />\n )}\n </Box>\n </Box>\n );\n};\n\nexport default React.memo(SearchAddChannel);\n"],"names":["React","props","_a","_b","_c","ch","_d","_e","_f","_g","_h","_i"],"mappings":"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"}
1
+ {"version":3,"file":"SearchAddChannel.js","sources":["../../../src/screens/Search/SearchAddChannel.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport {\n Text,\n Button,\n ButtonText,\n Box,\n Icon,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Checkbox,\n CheckboxLabel,\n CheckboxIndicator,\n CheckboxIcon,\n CheckIcon,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport { RoomType } from 'common';\nimport {\n useGetOrganizationMembersWithChannelsQuery,\n useGetChannelsByUserQuery,\n useGetChannelsByUserLazyQuery,\n useGetOrganizationMembersQuery,\n} from 'common/lib/generated/generated.js';\n// import { NavigationRoutes } from '../../constants/routes';\nimport { AntDesign, SimpleLineIcons } from '@expo/vector-icons';\nimport { Inbox, DialogMessages, DialogThreads } from '@messenger-box/platform-mobile';\n// import VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useIsFocused, useFocusEffect, useNavigation } from '@react-navigation/native';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport { useSelector } from 'react-redux';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { useDrawerLayout } from '../../hooks';\nimport { LoadingSpinnerDefault, SlackInput } from '../../components';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst screenHeight = Dimensions.get('screen').height;\n\nconst defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public, RoomType.Direct];\nconst orgMemersDataFetchLimit = 10;\nexport const useKeyboard = () => {\n const [keyboardHeight, setKeyboardHeight] = useState(0);\n\n useEffect(() => {\n function onKeyboardDidShow(e: KeyboardEvent) {\n // Remove type here if not using TypeScript\n setKeyboardHeight(e?.endCoordinates?.height ?? 0);\n }\n\n function onKeyboardDidHide() {\n setKeyboardHeight(0);\n }\n\n const showSubscription = Keyboard.addListener('keyboardDidShow', onKeyboardDidShow);\n const hideSubscription = Keyboard.addListener('keyboardDidHide', onKeyboardDidHide);\n return () => {\n showSubscription.remove();\n hideSubscription.remove();\n };\n }, []);\n\n return keyboardHeight;\n};\n\nconst SearchAddChannel = (props: any) => {\n const navigation = useNavigation<any>();\n const { orgName, organizationDetail } = useDrawerLayout();\n const isFocused = useIsFocused();\n const user = useSelector(userSelector);\n const [channels, setChannels] = useState<any>([]);\n const [initialOrgMembers, setInitialOrgMembers] = useState<any>([]);\n //const [searchValue, setSearchValue] = useState<any>(route?.params?.searchValue ?? '');\n const [selectedMembers, setSelectedMembers] = useState<any>([]);\n const [selectedChannels, setSelectedChannels] = useState<any>([]);\n const [showChannels, setShowChannels] = useState<boolean>(false);\n const [offset, setOffset] = useState(0);\n const [organizationMembers, setOrganizationMembers] = useState<any>([]);\n const [totalMembers, setTotalMembers] = useState<any>(0);\n const [channelId, setChannelId] = useState<any>(null);\n const [isSetInputFocusOut, setInputFocusOut] = useState<boolean>(false);\n const [isCreateNewChannel, setIsCreateNewChannel] = useState<boolean>(false);\n const keyboardHeight = useKeyboard();\n //const suggestions = ['apple', 'orange', 'banana', 'kiwi', 'tadff', 'radfe', 'sadfdf', 'uerer', 'ydafdf', 'zlaood'];\n // const [tags, setTags] = useState<string[]>([]);\n //const labelExtractor = (tag: string) => tag;\n const [tags, setTags] = useState<any[]>([]);\n const labelExtractor = (tag: any) => (tag?.id ? tag?.id : tag?.userId);\n const [getChannelByUser, { loading: isChannelByUserLoading }] = useGetChannelsByUserLazyQuery();\n const {\n data,\n loading: oLoading,\n error: oError,\n refetch,\n } = useGetOrganizationMembersWithChannelsQuery({\n variables: {\n orgName: orgName,\n channelCriteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n offset: offset,\n limit: orgMemersDataFetchLimit,\n },\n fetchPolicy: 'cache-and-network',\n });\n\n useFocusEffect(\n React.useCallback(() => {\n refetch({\n orgName: orgName,\n channelCriteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n offset: offset,\n limit: orgMemersDataFetchLimit,\n });\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n setChannels([]);\n setChannelId(null);\n setInitialOrgMembers([]);\n };\n }, [orgName]),\n );\n\n React.useEffect(() => {\n navigation.setOptions({\n headerLeft: (props: any) => (\n <TouchableOpacity onPress={() => navigation.goBack()}>\n <MaterialIcons size={20} name=\"close\" color={'black'} />\n </TouchableOpacity>\n ),\n });\n }, []);\n\n React.useEffect(() => {\n if (data?.channelsByUser) {\n const allChannels: any =\n data?.channelsByUser\n ?.filter((ch: any) =>\n ch.type == RoomType.Direct &&\n ch?.members?.length == 1 &&\n ch?.members?.filter((ch: any) => ch?.user?.id == user?.id)\n ? ch\n : ch?.members?.filter((m: any) => m?.user?.id != user?.id),\n )\n ?.map((i: any) => {\n const ch: any = { id: i?.id, title: i?.title, type: i?.type };\n const channelMembers =\n i.members\n ?.map((m: any) => m?.user)\n ?.filter((ch: any) =>\n i.members?.length == 1 && ch?.id == user?.id ? ch : ch?.id != user?.id,\n ) ?? null;\n const title =\n ch.type == RoomType.Direct\n ? channelMembers\n ?.map((u: any) => u?.givenName + ' ' + (u?.familyName ?? ''))\n ?.filter((mu: any) => mu)\n ?.join(', ') ?? ''\n : ch.title;\n ch.title = title;\n ch.channelImage = channelMembers[0]?.picture;\n ch.imageAcronym = startCase(channelMembers[0]?.username?.charAt(0));\n ch.members = channelMembers;\n ch.totalMembers = channelMembers?.length;\n ch.userId = null;\n ch.isOrgMembers = false;\n\n return ch;\n })\n ?.filter((ch: any) => ch) ?? [];\n\n const existingDirectChannelsToDelete = new Set(\n data?.channelsByUser?.map((ch: any) => ch?.members?.map((m: any) => m?.user?.id))?.flat(1),\n );\n\n const allOrgMembers: any =\n data?.getOrganizationMembers?.data\n ?.filter((m: any) => m?.user?.id != user?.id)\n .filter((obj: any) => !existingDirectChannelsToDelete.has(obj?.userId))\n ?.map((i: any) => {\n const ch: any = {\n id: null,\n title: i?.user?.givenName + ' ' + i?.user?.familyName,\n type: RoomType.Direct,\n channelImage: i?.user?.picture,\n imageAcronym: startCase(i?.user?.username?.charAt(0)),\n members: [],\n totalMembers: 1,\n userId: i?.user?.id,\n isOrgMembers: true,\n };\n\n return ch;\n })\n ?.filter((ch: any) => ch) ?? [];\n setChannels((oldChannels: any) =>\n uniqBy([...allChannels, ...allOrgMembers, ...oldChannels], ({ id, userId }) => id + userId),\n );\n setInitialOrgMembers((oldChannels: any) =>\n uniqBy([...allChannels, ...allOrgMembers, ...oldChannels], ({ id, userId }) => id + userId),\n );\n }\n }, [data]);\n\n React.useEffect(() => {\n if (channelId && tags?.length === 0) setChannelId(null);\n if (!channelId && tags?.length > 0) {\n const userIds = [\n ...new Set(\n tags?.map((t: any) => (t?.userId ? t?.userId : t?.members?.map((m: any) => m?.id)))?.flat(1),\n ),\n ];\n\n getChannelId(userIds);\n }\n console.log('channelid', channelId, ' tags?.length', tags?.length);\n }, [channelId, tags, orgName]);\n\n const getChannelId = React.useCallback(\n async (userIds: any[]) => {\n const res = await getChannelByUser({\n variables: {\n criteria: {\n orgName: orgName,\n type: RoomType.Direct,\n 'members.user': { $all: [...userIds, user?.id] },\n },\n limit: 1,\n },\n });\n\n if (res?.data?.channelsByUser?.length > 0) {\n setChannelId(res?.data?.channelsByUser?.[0]?.id);\n setInputFocusOut(true);\n setIsCreateNewChannel(false);\n } else {\n setChannelId(null);\n setInputFocusOut(false);\n setIsCreateNewChannel(true);\n }\n // ?.then((res) => {\n // if (res?.data?.channelsByUser?.length > 0) {\n // setChannelId(res?.data?.channelsByUser?.[0]?.id);\n // setInputFocusOut(true);\n // } else {\n // setChannelId(null);\n // setInputFocusOut(false);\n // }\n // });\n },\n [orgName, user],\n );\n\n // const renderChannels = ({ item }: any) => {\n // return (\n // <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => selectChannels(item)}>\n // <HStack flex={1} alignItems={'center'} justifyContent={'space-between'}>\n // <HStack flex={1} alignItems={'center'} space={6}>\n // <Box m={0} p={0}>\n // {item.type == RoomType.Direct ? (\n // <Avatar\n // key={'direct-channel-profile-msg-key'}\n // size={5}\n // bg={'transparent'}\n // borderRadius={6}\n // _image={{\n // borderRadius: 6,\n // size: 5,\n // }}\n // source={{\n // uri: item?.channelImage,\n // }}\n // >\n // {item?.imageAcronym}\n // {item?.totalMembers > 1 ? (\n // <Avatar.Badge\n // top={2}\n // right={-12}\n // size={5}\n // alignItems={'center'}\n // bg={'#211627'}\n // // opacity={0.85}\n // _text={{\n // fontSize: 10,\n // fontWeight: 'bold',\n // color: '#fff',\n // }}\n // rounded={'md'}\n // >\n // {item?.totalMembers}\n // </Avatar.Badge>\n // ) : (\n // <Avatar.Badge bg=\"green.800\" bottom={-4} right={-4} />\n // )}\n // </Avatar>\n // ) : item.type == RoomType.Private ? (\n // <>\n // <Icon color=\"black\" as={Octicons} name=\"lock\" size=\"md\" />\n // </>\n // ) : (\n // <Icon color=\"black\" as={Octicons} name=\"hash\" size=\"md\" />\n // )}\n // </Box>\n // <Text\n // _dark={{\n // color: 'warmGray.50',\n // }}\n // color=\"coolGray.800\"\n // bold\n // >\n // {item.title}\n // </Text>\n // </HStack>\n\n // <Checkbox\n // // onChange={() => selectChannels(item)}\n // value={item?.id}\n // isChecked={\n // selectedChannels &&\n // selectedChannels?.filter((ch: any) => ch?.id === item?.id && ch?.userId === item?.userId)\n // ?.length > 0\n // ? true\n // : false\n // }\n // accessibilityLabel={item.title ?? ''}\n // aria-label={item.title ?? ''}\n // aria-labelledby={item.title ?? ''}\n // borderColor={'gray.600'}\n // />\n // </HStack>\n // </TouchableOpacity>\n // );\n // };\n\n const selectChannels = React.useCallback(\n (item: any) => {\n // setSearchValue(item?.title);\n openInbox(item);\n if (selectedChannels) {\n const findIndex = selectedChannels.findIndex(\n (ch: any) => ch?.id == item?.id && ch?.userId == item?.userId,\n );\n const selectedChannelValue =\n findIndex === -1\n ? [...selectedChannels, { id: item?.id, userId: item?.userId }]\n : selectedChannels?.filter((ch: any) =>\n item?.isOrgMembers ? ch?.userId !== item?.userId : ch?.id !== item?.id,\n );\n setSelectedChannels(selectedChannelValue);\n }\n },\n [selectedChannels],\n );\n\n const openInbox = React.useCallback(\n (item: any) => {\n // navigation.push(NavigationRoutes.SearchAddChannel, {\n // channelId: item?.id?.toString() || null,\n // searchValue: item?.title || '',\n // isCreateNewChannel: item?.id == null ? true : false,\n // userId: item?.userId,\n // orgName: orgName,\n // });\n },\n [orgName],\n );\n\n const renderChannelSuggestions = useCallback((item: any, onPress: (tag: any) => void, index: any) => {\n return (\n <TouchableOpacity\n key={`channel-suggestions-${index}`}\n style={{ marginVertical: 10 }}\n onPress={() => onPress(item)}\n >\n <HStack flex={1} bg={'white'} 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 size={'sm'} bg={'transparent'}>\n <AvatarFallbackText>{item?.imageAcronym}</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: item?.channelImage,\n }}\n />\n {item?.totalMembers > 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 {item?.totalMembers}\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\n <Checkbox\n value={item?.id}\n isChecked={\n selectedChannels &&\n selectedChannels?.filter((ch: any) => ch?.id === item?.id && ch?.userId === item?.userId)\n ?.length > 0\n ? true\n : false\n }\n accessibilityLabel={item.title ?? ''}\n aria-label={item.title ?? ''}\n aria-labelledby={item.title ?? ''}\n borderColor={'$trueGray600'}\n >\n <CheckboxIndicator>\n <CheckboxIcon as={CheckIcon} />\n </CheckboxIndicator>\n </Checkbox>\n </HStack>\n </TouchableOpacity>\n );\n }, []);\n\n const onSuggestionPress = useCallback(\n (item: any) => {\n if (tags) {\n const findIndex = tags?.findIndex((ch: any) => ch?.id == item?.id && ch?.userId == item?.userId);\n if (findIndex === -1) {\n // setTags([...tags, item])\n if (item?.id && item?.type !== RoomType.Direct) {\n setChannelId(item?.id);\n setInputFocusOut(true);\n setTags([item]);\n } else {\n const previousTags = tags?.filter((t: any) => t?.type === item?.type) ?? [];\n const currentTags = [...(previousTags ?? []), item];\n setTags(currentTags);\n const userIds = [\n ...new Set(\n currentTags\n ?.map((t: any) => (t?.userId ? t?.userId : t?.members?.map((m: any) => m?.id)))\n ?.flat(1),\n ),\n ];\n getChannelId(userIds);\n }\n }\n }\n },\n [tags, orgName],\n );\n\n const onTagPress = useCallback(\n (item: any) => {\n if (tags) {\n const filteredValue = tags?.filter((ch: any) =>\n item?.isOrgMembers ? ch?.userId !== item?.userId : ch?.id !== item?.id,\n );\n setTags(filteredValue);\n console.log('tagpress');\n }\n },\n [tags],\n );\n\n const renderTagItemImage = useCallback((type: RoomType, image: string, imageAcronym: any) => {\n return (\n <Box m={'$0'} p={'$0'}>\n {type == RoomType.Direct ? (\n <Avatar size={'sm'} bg={'transparent'} borderRadius={6}>\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: image,\n }}\n />\n\n <AvatarFallbackText>{imageAcronym}</AvatarFallbackText>\n </Avatar>\n ) : 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 );\n }, []);\n\n const renderTagItem = useCallback((title: string, type: RoomType, image: string, imageAcronym: any, key: any) => {\n return (\n <HStack alignItems={'center'} space={'sm'} py={'$2'} key={`render-tag-items-${key}`}>\n {renderTagItemImage(type, image, imageAcronym)}\n <Box bg={'$lightBlue100'}>\n <Text color={'$coolGray800'} textAlign={'center'} bold>\n {title}\n </Text>\n </Box>\n </HStack>\n );\n }, []);\n\n const renderTag = useCallback((item: any, onPress: (tag: any) => void, index: any) => {\n return (\n <TouchableOpacity onPress={() => onPress(item)} key={`channel-tags-${index}`}>\n {item.isOrgMembers || item?.type != RoomType.Direct ? (\n <Box mx={'$1'}>\n {renderTagItem(item?.title, item?.type, item?.channelImage, item?.imageAcronym, index)}\n </Box>\n ) : (\n <HStack alignItems={'center'} space={'sm'} py={'$1'}>\n {item?.members?.map((m: any, i: any) => {\n const title =\n item?.type == RoomType.Direct ? m?.givenName + ' ' + m?.familyName : item.title;\n const acronym = startCase(m?.username?.charAt(0));\n return renderTagItem(title, item?.type, m?.picture, acronym, i);\n })}\n </HStack>\n )}\n </TouchableOpacity>\n );\n }, []);\n\n return (\n <Box flex={1} bg={'$white'} w={windowWidth} h={windowHeight}>\n <SlackInput\n tags={tags}\n suggestions={channels}\n onChangeTags={setTags}\n labelExtractor={labelExtractor}\n allowCustomTags={false}\n isSetInputFocusOut={isSetInputFocusOut}\n renderLeftElement={() => (\n <Text pl={'$4'} pr={'$1'} fontSize={15}>\n To:\n </Text>\n )}\n // renderRightElement={() => (\n // <Button bg={'transparent'}>\n // <SimpleLineIcons color=\"black\" name=\"user-follow\" size={20} />\n // </Button>\n // )}\n tagContainerStyle={{\n borderBottomWidth: 1,\n borderColor: '#D3D3D3',\n paddingVertical: 5,\n }}\n inputProps={{\n placeholder: 'Search for a channel or conversation',\n placeholderTextColor: '#404040',\n autoCapitalize: 'none',\n autoCorrect: false,\n }}\n inputStyle={{\n fontSize: 15,\n height: 30,\n }}\n flatListGluestackUiProps={{\n flex: 1,\n pb: '$10',\n // px: 4,\n contentContainerStyle: {\n flex: 1,\n marginBottom: 100,\n backgroundColor: 'white',\n paddingHorizontal: 10,\n },\n }}\n flatListStyle={{\n maxHeight: '100%',\n maxWidth: '100%',\n // backgroundColor: 'white',\n }}\n renderSuggestion={renderChannelSuggestions}\n filterSuggestions={(text: string) => {\n if (!text || text === '') {\n return [];\n }\n\n return channels?.filter((item: any) => item?.title?.toLowerCase()?.includes(text?.toLowerCase()));\n }}\n onSuggestionPress={onSuggestionPress}\n renderTag={renderTag}\n onTagPress={onTagPress}\n />\n <Box flex={1}>\n {isChannelByUserLoading ? (\n <LoadingSpinnerDefault />\n ) : (\n <DialogMessages\n {...props}\n channelId={channelId}\n isCreateNewChannel={isCreateNewChannel}\n newChannelData={{\n type: RoomType?.Direct,\n userIds: [\n ...new Set(\n tags\n ?.map((t: any) => (t?.userId ? t?.userId : t?.members?.map((m: any) => m?.id)))\n ?.flat(1),\n ),\n ],\n }}\n />\n )}\n </Box>\n </Box>\n );\n};\n\nexport default React.memo(SearchAddChannel);\n"],"names":["React","props","_a","_b","_c","ch","_d","_e","_f","_g","_h","_i"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import React__default,{useState,useEffect}from'react';import {Box,Input,InputSlot,Text,InputField,Button,VStack,FlatList,HStack,Avatar,AvatarFallbackText,AvatarImage,AvatarBadge,Checkbox,CheckboxIndicator,CheckboxIcon,CheckIcon}from'@admin-layout/gluestack-ui-mobile';import {Dimensions,Keyboard,TouchableOpacity}from'react-native';import {RoomType}from'common';import {useGetChannelsByUserQuery}from'common/lib/generated/generated.js';import {Ionicons,SimpleLineIcons,Octicons}from'@expo/vector-icons';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {useIsFocused,useFocusEffect}from'@react-navigation/native';import {userSelector}from'@adminide-stack/user-auth0-client';import {useSelector}from'react-redux';import {uniqBy,startCase}from'lodash-es';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';const windowWidth = Dimensions.get("window").width;
1
+ import React__default,{useState,useEffect}from'react';import {Box,Input,InputSlot,Text,InputField,Button,VStack,FlatList,HStack,Avatar,AvatarFallbackText,AvatarImage,AvatarBadge,Checkbox,CheckboxIndicator,CheckboxIcon,CheckIcon}from'@admin-layout/gluestack-ui-mobile';import {Keyboard,TouchableOpacity,Dimensions}from'react-native';import {RoomType}from'common';import {useGetChannelsByUserQuery}from'common/lib/generated/generated.js';import {Ionicons,SimpleLineIcons,Octicons}from'@expo/vector-icons';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {useIsFocused,useFocusEffect}from'@react-navigation/native';import {userSelector}from'@adminide-stack/user-auth0-client';import {useSelector}from'react-redux';import {uniqBy,startCase}from'lodash-es';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';const windowWidth = Dimensions.get("window").width;
2
2
  const windowHeight = Dimensions.get("window").height;
3
3
  Dimensions.get("screen").height;
4
4
  const defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public, RoomType.Direct];