@messenger-box/slack-ui-mobile 10.0.3-alpha.7 → 10.0.3-alpha.74
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/Actionsheet.js +96 -0
- package/lib/components/Actionsheet.js.map +1 -0
- package/lib/components/AppRootContextProviderComponent.js +16 -2
- package/lib/components/AppRootContextProviderComponent.js.map +1 -1
- package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js +13 -7
- package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js.map +1 -1
- package/lib/components/CustomBottomTabs/CustomBottomTabs.js +11 -24
- package/lib/components/CustomBottomTabs/CustomBottomTabs.js.map +1 -1
- package/lib/components/CustomDrawer/CustomDrawer.js +31 -31
- package/lib/components/CustomDrawer/CustomDrawer.js.map +1 -1
- package/lib/components/Header/styles.js +2 -2
- package/lib/components/Header/styles.js.map +1 -1
- package/lib/components/LoadingSpinner/index.js +3 -3
- package/lib/components/LoadingSpinner/index.js.map +1 -1
- package/lib/components/NavigationHeader/InboxNavigationHeader.js +20 -25
- package/lib/components/NavigationHeader/InboxNavigationHeader.js.map +1 -1
- package/lib/components/NavigationHeader/NavigationHeader.js +58 -40
- package/lib/components/NavigationHeader/NavigationHeader.js.map +1 -1
- package/lib/components/NavigationHeader/NavigationHeaderChat.js +9 -9
- package/lib/components/NavigationHeader/NavigationHeaderChat.js.map +1 -1
- package/lib/components/NavigationHeader/index.js +1 -1
- package/lib/components/SlackSearchInput/Suggestion.js +1 -1
- package/lib/components/SlackSearchInput/Tag.js +1 -1
- package/lib/components/SlackSearchInput/index.js +3 -3
- package/lib/components/SlackSearchInput/index.js.map +1 -1
- package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js +19 -4
- package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js.map +1 -1
- package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js +41 -31
- package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js.map +1 -1
- package/lib/compute.js +32 -23
- package/lib/compute.js.map +1 -1
- package/lib/constants/Colors.js +2 -2
- package/lib/constants/globalStyles.js +3 -3
- package/lib/constants/globalStyles.js.map +1 -1
- package/lib/hooks/useOptimizedChannelsQueries.js +106 -0
- package/lib/hooks/useOptimizedChannelsQueries.js.map +1 -0
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/navigation/SearchTabNavigation.js +47 -39
- package/lib/navigation/SearchTabNavigation.js.map +1 -1
- package/lib/navigation/TeamTabNavigation.js +51 -38
- package/lib/navigation/TeamTabNavigation.js.map +1 -1
- package/lib/queries/slackuiQueries.js +129 -0
- package/lib/queries/slackuiQueries.js.map +1 -0
- package/lib/routes.json +32 -23
- package/lib/screens/Account/AccountScreen.js +23 -26
- package/lib/screens/Account/AccountScreen.js.map +1 -1
- package/lib/screens/Activity/ActivityScreen.js +6 -2
- package/lib/screens/Activity/ActivityScreen.js.map +1 -1
- package/lib/screens/Channels/Add/AddName.js +33 -8
- package/lib/screens/Channels/Add/AddName.js.map +1 -1
- package/lib/screens/Channels/Add/AddVisibility.js +6 -6
- package/lib/screens/Channels/Add/AddVisibility.js.map +1 -1
- package/lib/screens/Channels/AddChannel.js +5 -3
- package/lib/screens/Channels/AddChannel.js.map +1 -1
- package/lib/screens/Channels/Channels.js +101 -95
- package/lib/screens/Channels/Channels.js.map +1 -1
- package/lib/screens/Files/FilesScreen.js +2 -2
- package/lib/screens/Files/FilesScreen.js.map +1 -1
- package/lib/screens/Home/Components/Channels/Channels.js +91 -77
- package/lib/screens/Home/Components/Channels/Channels.js.map +1 -1
- package/lib/screens/Home/Components/DirectChannels/DirectChannels.js +249 -115
- package/lib/screens/Home/Components/DirectChannels/DirectChannels.js.map +1 -1
- package/lib/screens/Home/Components/InviteMembers/index.js +88 -0
- package/lib/screens/Home/Components/InviteMembers/index.js.map +1 -0
- package/lib/screens/Home/Components/Teams/Teams.js +110 -47
- package/lib/screens/Home/Components/Teams/Teams.js.map +1 -1
- package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js +44 -75
- package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js.map +1 -1
- package/lib/screens/Home/HomeScreen.js +161 -194
- package/lib/screens/Home/HomeScreen.js.map +1 -1
- package/lib/screens/Home/styles.js +4 -4
- package/lib/screens/Home/styles.js.map +1 -1
- package/lib/screens/Inbox/InboxChannelDetail.js +67 -34
- package/lib/screens/Inbox/InboxChannelDetail.js.map +1 -1
- package/lib/screens/Inbox/InboxDialogMessages.js +2 -2
- package/lib/screens/Inbox/InboxDialogMessages.js.map +1 -1
- package/lib/screens/Inbox/InboxScreen.js +3 -3
- package/lib/screens/Inbox/InboxScreen.js.map +1 -1
- package/lib/screens/Login.js +4 -2
- package/lib/screens/Login.js.map +1 -1
- package/lib/screens/Organization/AddWorkspace.js +42 -38
- package/lib/screens/Organization/AddWorkspace.js.map +1 -1
- package/lib/screens/Organization/CreateOrganization.js +11 -2
- package/lib/screens/Organization/CreateOrganization.js.map +1 -1
- package/lib/screens/Organization/InitialChannelOnboarding.js +22 -4
- package/lib/screens/Organization/InitialChannelOnboarding.js.map +1 -1
- package/lib/screens/Organization/InitializeOrganizationChannel.js +9 -4
- package/lib/screens/Organization/InitializeOrganizationChannel.js.map +1 -1
- package/lib/screens/Organization/InviteOrganizationMembers.js +52 -10
- package/lib/screens/Organization/InviteOrganizationMembers.js.map +1 -1
- package/lib/screens/Peoples/AddByEmail.js +24 -6
- package/lib/screens/Peoples/AddByEmail.js.map +1 -1
- package/lib/screens/Peoples/AddFromContacts.js +172 -87
- package/lib/screens/Peoples/AddFromContacts.js.map +1 -1
- package/lib/screens/Peoples/AddPeople.js +21 -42
- package/lib/screens/Peoples/AddPeople.js.map +1 -1
- package/lib/screens/Peoples/People.js +42 -4
- package/lib/screens/Peoples/People.js.map +1 -1
- package/lib/screens/Profile/ProfileScreen.js +27 -12
- package/lib/screens/Profile/ProfileScreen.js.map +1 -1
- package/lib/screens/Saved/SavedScreen.js +2 -2
- package/lib/screens/Saved/SavedScreen.js.map +1 -1
- package/lib/screens/Search/Channels.js +20 -32
- package/lib/screens/Search/Channels.js.map +1 -1
- package/lib/screens/Search/Files.js +2 -2
- package/lib/screens/Search/Files.js.map +1 -1
- package/lib/screens/Search/JumpTo.js +2 -2
- package/lib/screens/Search/JumpTo.js.map +1 -1
- package/lib/screens/Search/People.js +19 -27
- package/lib/screens/Search/People.js.map +1 -1
- package/lib/screens/Search/Recents.js +26 -31
- package/lib/screens/Search/Recents.js.map +1 -1
- package/lib/screens/Search/SearchAddChannel.js +366 -227
- package/lib/screens/Search/SearchAddChannel.js.map +1 -1
- package/lib/screens/Search/SearchChannelPeople.js +70 -37
- package/lib/screens/Search/SearchChannelPeople.js.map +1 -1
- package/lib/screens/Search/SearchScreen.js +5 -3
- package/lib/screens/Search/SearchScreen.js.map +1 -1
- package/lib/screens/Search/styles.js +2 -2
- package/lib/screens/Search/styles.js.map +1 -1
- package/lib/screens/Teams/AddTeam.js +3 -3
- package/lib/screens/Teams/AddTeam.js.map +1 -1
- package/lib/screens/Teams/Components/Channels/Channels.js +6 -6
- package/lib/screens/Teams/Components/Channels/Channels.js.map +1 -1
- package/lib/screens/Teams/Components/Members/Members.js +7 -3
- package/lib/screens/Teams/Components/Members/Members.js.map +1 -1
- package/lib/screens/Teams/Team.js +6 -8
- package/lib/screens/Teams/Team.js.map +1 -1
- package/lib/screens/Teams/Teams.js +137 -106
- package/lib/screens/Teams/Teams.js.map +1 -1
- package/lib/screens/Teams/useTeams.js +41 -0
- package/lib/screens/Teams/useTeams.js.map +1 -0
- package/lib/screens/Wiki/WikiScreen.js +2 -2
- package/lib/screens/Wiki/WikiScreen.js.map +1 -1
- package/lib/theme/index.js +2 -2
- package/lib/theme/index.js.map +1 -1
- package/package.json +6 -4
- package/lib/navigation/ActivityNavigator.js +0 -61
- package/lib/navigation/ActivityNavigator.js.map +0 -1
- package/lib/navigation/ExploreNavigator.js +0 -583
- package/lib/navigation/ExploreNavigator.js.map +0 -1
- package/lib/navigation/InboxNavigator.js +0 -183
- package/lib/navigation/InboxNavigator.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddFromContacts.js","sources":["../../../src/screens/Peoples/AddFromContacts.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect } from 'react';\nimport {\n Input,\n InputField,\n View,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n ButtonText,\n ButtonIcon,\n SafeAreaView,\n CheckIcon,\n FlatList,\n HStack,\n Avatar,\n AvatarImage,\n AvatarFallbackText,\n Image,\n Checkbox,\n CheckboxIndicator,\n CheckboxIcon,\n Textarea,\n TextareaInput,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { StyleSheet, TouchableOpacity, Linking, Platform } from 'react-native';\nimport Colors from '../../constants/Colors';\nimport {\n useGetOrganizationSharableLinkQuery,\n useAddChannelMutation,\n useGetChannelsByUserQuery,\n} from 'common/lib/generated/generated.js';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { AntDesign, Ionicons } from '@expo/vector-icons';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useIsFocused } from '@react-navigation/native';\nimport * as Contacts from 'expo-contacts';\nimport { config } from '../../config';\n\nconst AddFromContacts = ({ navigation, route }: any) => {\n const isFocused = useIsFocused();\n const [contacts, setContacts] = useState([]);\n const [selectedContacts, setSelectedContacts] = useState<any>([]);\n const { data: organizationSharableLink } = useGetOrganizationSharableLinkQuery();\n\n useEffect(() => {}, [selectedContacts]);\n\n useEffect(() => {\n (async () => {\n const { status } = await Contacts.requestPermissionsAsync();\n if (status === 'granted') {\n const { data } = await Contacts.getContactsAsync({\n fields: [\n Contacts.Fields.FirstName,\n Contacts.Fields.LastName,\n Contacts.Fields.PhoneNumbers,\n Contacts.Fields.Image,\n ],\n // fields: [Contacts.Fields.Emails, Contacts.PHONE_NUMBERS, Contacts.IMAGE],\n });\n\n if (data.length > 0) {\n const contacts: any = data;\n setContacts(contacts);\n }\n }\n })();\n }, []);\n\n useEffect(() => {\n if (isFocused) {\n }\n\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {},\n headerLeft: (props: any) => (\n <TouchableOpacity\n style={{ paddingHorizontal: 10 }}\n onPress={() => navigation.navigate(NavigationRoutes.Home, { orgName: route?.params?.orgName })}\n >\n <Ionicons color=\"black\" name=\"chevron-back\" size={20} />\n </TouchableOpacity>\n ),\n headerRight: (props: any) => (\n <Button\n mr={'$2'}\n onPress={() => sendInvitation()}\n disabled={selectedContacts.length > 0 ? false : true}\n variant={'link'}\n >\n <ButtonText color={selectedContacts.length > 0 ? '$black' : '$trueGray500'}>Send</ButtonText>\n </Button>\n ),\n });\n }, [isFocused, navigation, selectedContacts]);\n\n const setSelectedContactsData = (item: any) => {\n let obj = { id: item.id, name: item.firstName + ' ' + item.lastName, mobile: item.phoneNumbers[0] };\n const resultArr = selectedContacts.filter((arrObj: any) => arrObj.id !== obj.id);\n if (resultArr.length === selectedContacts.length) resultArr.push(obj);\n\n setSelectedContacts(resultArr);\n };\n\n const renderContactList = ({ item }: any) => {\n const title = item?.firstName ?? '' + ' ' + item?.lastName ?? '';\n const matches: any = title?.match(/\\b(\\w)/g) ?? '';\n const acronym: any = matches?.join('')?.substring(0, 2) ?? '';\n return (\n <TouchableOpacity key={item.id} style={{ marginTop: 5 }} onPress={() => setSelectedContactsData(item)}>\n <Box pl={'$4'} pr={'$5'} py=\"$2\">\n <HStack space={'sm'} justifyContent=\"space-between\" alignItems={'center'}>\n <HStack alignItems=\"center\">\n {item.imageAvailable ? (\n <Image\n mx={'$2'}\n px={'$2'}\n py={'$2'}\n size=\"sm\"\n source={{ uri: item.image.uri }}\n alt={item.firstName}\n />\n ) : (\n <Button mx={'$2'} px={'$2'} py={'$2'} size={'sm'} bg={'$coolGray500'}>\n <Avatar bg={'transparent'} size={'sm'}>\n <AvatarFallbackText color={'$white'} fontWeight=\"600\">\n {acronym}\n </AvatarFallbackText>\n </Avatar>\n </Button>\n )}\n\n <Box>\n <Text color=\"$coolGray800\" fontWeight=\"$bold\">\n {item.firstName} {item.lastName}\n </Text>\n <Text>{item.phoneNumbers[0].number}</Text>\n </Box>\n </HStack>\n\n <Checkbox\n onChange={() => setSelectedContactsData(item)}\n value={item.id}\n isChecked={selectedContacts.filter((i: any) => i.id === item.id).length > 0 ? true : false}\n accessibilityLabel={item.firstName}\n aria-label={item.firstName}\n >\n <CheckboxIndicator>\n <CheckboxIcon as={CheckIcon} />\n </CheckboxIndicator>\n </Checkbox>\n </HStack>\n </Box>\n </TouchableOpacity>\n );\n };\n\n const sendInvitation = () => {\n const mobileNumbers = selectedContacts.map((i: any) => i.mobile.number);\n let numbers = '';\n mobileNumbers.forEach((phoneNumber: string) => {\n numbers += `${phoneNumber.replace(/\\s/g, '')},`;\n });\n numbers = numbers.slice(0, -1);\n const smtDivider = Platform.OS === 'ios' ? '&' : '?';\n\n const message = `Join me on ${\n config.APP_NAME\n } - it's faster, simpler way to work.Singup here from any device. ${\n organizationSharableLink?.getOrganizationSharableLink ?? ''\n }`;\n // Linking.openURL(`sms:&addresses=${mobileNumbers}${smtDivider}body=${message}`);\n const url =\n Platform.OS === 'android'\n ? `sms:${numbers}?body=${encodeURIComponent(message)}`\n : `sms:/open?addresses=${numbers}&body=${encodeURIComponent(message)}`;\n Linking.openURL(url);\n };\n\n return (\n <View flex={1} bg={'$white'}>\n <Input pl={'$4'} variant=\"underlined\">\n <InputField\n //autoFocus={true}\n px={'$3'}\n bg={'$coolGray100'}\n alignItems=\"center\"\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n fontSize={14}\n color=\"$black\"\n placeholder=\"Search\"\n onChange={({ nativeEvent: { eventCount, target, text } }) => {}}\n autoCapitalize={'none'}\n autoCorrect={false}\n />\n </Input>\n {/* \n <Textarea\n h={'$10'}\n bg={'$coolGray100'}\n // py={4}\n px={'$3'}\n >\n <TextareaInput placeholderTextColor={'#404040'} fontSize={14} placeholder=\"Search...\" />\n </Textarea> */}\n <View flex={1}>\n <VirtualizedScrollView>\n <VStack space=\"md\" pt={'$2'}>\n <FlatList\n px={'$2'}\n contentContainerStyle={{\n flex: 1,\n }}\n data={contacts && contacts.length > 0 ? contacts : []}\n // data={[]}\n renderItem={renderContactList}\n ListEmptyComponent={() => {\n return (\n <TouchableOpacity style={{ marginTop: 5 }}>\n <Box bg={'#fff'} py={'$2'}>\n <VStack space=\"md\">\n <Box px=\"$4\" py={'$5'}>\n <Text>No contact found</Text>\n </Box>\n </VStack>\n </Box>\n </TouchableOpacity>\n );\n }}\n key={'add-from-contacts-search-list'}\n />\n </VStack>\n </VirtualizedScrollView>\n </View>\n </View>\n );\n};\n\nexport default AddFromContacts;\n"],"names":["contacts","React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AddFromContacts.js","sources":["../../../src/screens/Peoples/AddFromContacts.tsx"],"sourcesContent":["import React, { useState, useEffect } from 'react';\nimport {\n Input,\n InputField,\n View,\n Text,\n VStack,\n Box,\n Button,\n ButtonText,\n CheckIcon,\n FlatList,\n HStack,\n Avatar,\n AvatarImage,\n AvatarFallbackText,\n Image,\n Checkbox,\n CheckboxIndicator,\n CheckboxIcon,\n Heading,\n Spinner,\n InputSlot,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { StyleSheet, TouchableOpacity, Linking, Platform } from 'react-native';\nimport Colors from '../../constants/Colors';\nimport { useOrganizationSharableLinkQuery, useSendOrganizationInvitationMutation } from '../../queries/slackuiQueries';\nimport { AntDesign, Ionicons, Feather } from '@expo/vector-icons';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useIsFocused } from '@react-navigation/native';\nimport * as Contacts from 'expo-contacts';\nimport { config } from '../../config';\nimport { SafeAreaView } from 'react-native-safe-area-context';\nimport { useSelector } from 'react-redux';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport { NavigationRoutes } from '../../constants';\n\nconst AddFromContacts = ({ navigation, route }: any) => {\n const isFocused = useIsFocused();\n const [contacts, setContacts] = useState<any[]>([]);\n const [filteredContacts, setFilteredContacts] = useState<any[]>([]);\n const [selectedContacts, setSelectedContacts] = useState<any>([]);\n const [searchQuery, setSearchQuery] = useState('');\n const [loading, setLoading] = useState(true);\n const orgName = route?.params?.orgName || '';\n const { data: organizationSharableLink } = useOrganizationSharableLinkQuery(orgName);\n const [sendOrganizationInvitation] = useSendOrganizationInvitationMutation();\n const user = useSelector(userSelector);\n\n useEffect(() => {\n if (searchQuery.trim() === '') {\n setFilteredContacts(contacts);\n } else {\n const filtered = contacts.filter((contact) => {\n const fullName = `${contact.firstName || ''} ${contact.lastName || ''}`.toLowerCase();\n const phoneNumber = contact.phoneNumbers?.[0]?.number?.toLowerCase() || '';\n const query = searchQuery.toLowerCase();\n return fullName.includes(query) || phoneNumber.includes(query);\n });\n setFilteredContacts(filtered);\n }\n }, [searchQuery, contacts]);\n\n useEffect(() => {\n (async () => {\n try {\n setLoading(true);\n const { status } = await Contacts.requestPermissionsAsync();\n if (status === 'granted') {\n const { data } = await Contacts.getContactsAsync({\n fields: [\n Contacts.Fields.FirstName,\n Contacts.Fields.LastName,\n Contacts.Fields.PhoneNumbers,\n Contacts.Fields.Image,\n Contacts.Fields.ImageAvailable,\n ],\n });\n\n if (data.length > 0) {\n // Sort contacts alphabetically by name\n const sortedContacts = data.sort((a, b) => {\n const nameA = `${a.firstName || ''} ${a.lastName || ''}`.trim().toLowerCase();\n const nameB = `${b.firstName || ''} ${b.lastName || ''}`.trim().toLowerCase();\n return nameA.localeCompare(nameB);\n });\n\n // Filter out contacts without phone numbers\n const validContacts = sortedContacts.filter(\n (contact) => contact.phoneNumbers && contact.phoneNumbers.length > 0,\n );\n\n // Log information about contact images\n console.log(`Total contacts with phone numbers: ${validContacts.length}`);\n const contactsWithImages = validContacts.filter(\n (contact) => contact.imageAvailable && contact.image,\n );\n console.log(`Contacts with images: ${contactsWithImages.length}`);\n if (contactsWithImages.length > 0) {\n console.log('Sample image data:', contactsWithImages[0].image);\n }\n\n setContacts(validContacts);\n setFilteredContacts(validContacts);\n }\n }\n } catch (error) {\n console.error('Error fetching contacts:', error);\n } finally {\n setLoading(false);\n }\n })();\n }, []);\n\n useEffect(() => {\n if (isFocused) {\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n title: 'Add from Contacts',\n headerTitleStyle: {\n fontWeight: '600',\n },\n headerLeft: (props: any) => (\n <TouchableOpacity\n style={{ paddingHorizontal: 10 }}\n //onPress={() => navigation.goBack()}\n onPress={() => {\n if (Platform.OS === 'macos') {\n navigation.navigate('MainStack', {\n screen: NavigationRoutes.Home,\n params: { orgName },\n });\n } else if (navigation.canGoBack()) {\n navigation.goBack();\n } else {\n navigation.navigate('MainStack', {\n screen: NavigationRoutes.Home,\n params: { orgName },\n });\n }\n }}\n >\n <Ionicons color={Colors.slackBlack} name=\"chevron-back\" size={20} />\n </TouchableOpacity>\n ),\n headerRight: (props: any) => (\n <Button\n className=\"mr-2\"\n onPress={() => sendInvitation()}\n disabled={selectedContacts.length === 0}\n variant={'link'}\n >\n <ButtonText\n className={`${selectedContacts.length > 0 ? 'text-black font-bold' : 'text-gray-500'}`}\n >\n Send\n </ButtonText>\n </Button>\n ),\n });\n }\n }, [isFocused, navigation, selectedContacts]);\n\n const toggleContact = (item: any) => {\n if (!item.phoneNumbers || item.phoneNumbers.length === 0) return;\n\n const contact = {\n id: item.id,\n name: `${item.firstName || ''} ${item.lastName || ''}`.trim(),\n mobile: item.phoneNumbers[0],\n };\n\n setSelectedContacts((prev) => {\n const isSelected = prev.some((c: any) => c.id === contact.id);\n if (isSelected) {\n return prev.filter((c: any) => c.id !== contact.id);\n } else {\n return [...prev, contact];\n }\n });\n };\n\n const getInitials = (firstName?: string, lastName?: string) => {\n const first = firstName ? firstName.charAt(0).toUpperCase() : '';\n const last = lastName ? lastName.charAt(0).toUpperCase() : '';\n return (first + last).substring(0, 2);\n };\n\n const renderContactList = ({ item }: any) => {\n const isSelected = selectedContacts.some((c: any) => c.id === item.id);\n const hasPhoneNumber = item.phoneNumbers && item.phoneNumbers.length > 0;\n const initials = getInitials(item.firstName, item.lastName);\n\n if (!hasPhoneNumber) return null;\n\n return (\n <TouchableOpacity\n key={item.id}\n onPress={() => toggleContact(item)}\n style={styles.contactItem}\n disabled={!hasPhoneNumber}\n activeOpacity={0.7}\n >\n <HStack space=\"md\" className=\"justify-between items-center w-full\">\n <HStack space=\"md\" className=\"items-center space-x-3\">\n {item.imageAvailable && item.image && item.image.uri ? (\n <Avatar size=\"md\" className=\"bg-gray-400\">\n <AvatarImage\n source={{ uri: item.image.uri }}\n alt={`${item.firstName || ''} ${item.lastName || ''}`.trim()}\n onError={(e) => console.log('Avatar image failed to load', e.nativeEvent.error)}\n style={styles.avatarImage}\n />\n <AvatarFallbackText>{initials}</AvatarFallbackText>\n </Avatar>\n ) : (\n <Avatar size=\"md\" className=\"bg-blue-500\">\n <AvatarFallbackText style={styles.avatarText}>{initials}</AvatarFallbackText>\n </Avatar>\n )}\n\n <Box>\n <Text className=\"text-gray-800 font-semibold text-base\">\n {item.firstName || ''} {item.lastName || ''}\n </Text>\n <Text className=\"text-gray-500 text-sm\">\n {item.phoneNumbers?.[0]?.number || 'No number'}\n </Text>\n </Box>\n </HStack>\n\n <Checkbox\n value={item.id}\n isChecked={isSelected}\n accessibilityLabel={`Select ${item.firstName}`}\n aria-label={`Select ${item.firstName}`}\n >\n <CheckboxIndicator className={isSelected ? 'bg-blue-500 border-blue-500' : ''}>\n <CheckboxIcon as={CheckIcon} />\n </CheckboxIndicator>\n </Checkbox>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n const sendInvitation = () => {\n if (selectedContacts.length === 0) return;\n\n // Get phone numbers to send SMS invites\n const mobileNumbers = selectedContacts.map((i: any) => i.mobile.number);\n\n // Send organization invitation through the API\n sendOrganizationInvitation({\n variables: {\n request: {\n orgName: orgName,\n emails: mobileNumbers.map((num) => num.replace(/\\s/g, '')), // Use emails field for phone numbers\n invitedBy: user?.profile?.name || '',\n sentInvitee: true,\n },\n },\n onCompleted: (data) => {\n console.log('Organization invitation sent successfully:', data);\n // After sending invitations through API, send SMS with link\n sendSMSInvitations();\n },\n onError: (error) => {\n console.error('Error sending invitations:', error);\n // Still attempt to send SMS if API fails\n sendSMSInvitations();\n },\n });\n };\n\n const sendSMSInvitations = () => {\n const mobileNumbers = selectedContacts.map((i: any) => i.mobile.number);\n let numbers = '';\n mobileNumbers.forEach((phoneNumber: string) => {\n numbers += `${phoneNumber.replace(/\\s/g, '')},`;\n });\n numbers = numbers.slice(0, -1);\n\n const message = `Join me on ${\n config.APP_NAME\n } - it's a faster, simpler way to work. Sign up here from any device: ${\n organizationSharableLink?.getOrganizationSharableLink ?? ''\n }`;\n\n const url =\n Platform.OS === 'android'\n ? `sms:${numbers}?body=${encodeURIComponent(message)}`\n : `sms:/open?addresses=${numbers}&body=${encodeURIComponent(message)}`;\n Linking.openURL(url);\n };\n\n return (\n <SafeAreaView style={styles.container}>\n <Box className=\"flex-1 bg-white\">\n <Box className=\"px-4 py-2 bg-white\">\n <Input size=\"md\" className=\"bg-gray-100 rounded-lg\">\n <InputSlot>\n <Feather name=\"search\" size={16} color=\"#9ca3af\" style={{ marginLeft: 8 }} />\n </InputSlot>\n <InputField\n placeholder=\"Search contacts\"\n placeholderTextColor=\"#9ca3af\"\n onChange={(event) => setSearchQuery(event.nativeEvent.text)}\n value={searchQuery}\n autoCapitalize=\"none\"\n autoCorrect={false}\n className=\"text-black\"\n />\n {searchQuery ? (\n <InputSlot>\n <TouchableOpacity onPress={() => setSearchQuery('')} style={{ marginRight: 8 }}>\n <Ionicons name=\"close-circle\" size={16} color=\"#9ca3af\" />\n </TouchableOpacity>\n </InputSlot>\n ) : null}\n </Input>\n </Box>\n\n {loading ? (\n <Box className=\"flex-1 justify-center items-center\">\n <Spinner size=\"large\" color={Colors.blue} />\n <Text className=\"mt-4 text-gray-500\">Loading contacts...</Text>\n </Box>\n ) : (\n <Box className=\"flex-1\">\n {selectedContacts.length > 0 && (\n <Box className=\"px-4 py-2 bg-gray-50 border-b border-gray-200\">\n <Text className=\"text-sm text-gray-500\">\n {selectedContacts.length} {selectedContacts.length === 1 ? 'contact' : 'contacts'}{' '}\n selected\n </Text>\n </Box>\n )}\n\n <FlatList\n data={filteredContacts}\n renderItem={renderContactList}\n keyExtractor={(item) => item.id}\n contentContainerStyle={styles.listContainer}\n ListEmptyComponent={() => (\n <Box className=\"flex-1 justify-center items-center py-8\">\n <Feather name=\"users\" size={48} color=\"#d1d5db\" />\n <Text className=\"text-center text-gray-500 mt-4\">\n {searchQuery ? 'No matching contacts found' : 'No contacts found'}\n </Text>\n </Box>\n )}\n />\n </Box>\n )}\n </Box>\n </SafeAreaView>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: 'white',\n },\n listContainer: {\n flexGrow: 1,\n },\n contactItem: {\n paddingHorizontal: 16,\n paddingVertical: 12,\n borderBottomWidth: 1,\n borderBottomColor: '#f3f4f6',\n },\n avatarText: {\n color: 'white',\n fontWeight: '600',\n },\n avatarImage: {\n width: '100%',\n height: '100%',\n },\n});\n\nexport default AddFromContacts;\n"],"names":["_a","React"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React__default,{useState,useEffect}from'react';import {Button,ButtonText,
|
|
1
|
+
import React__default,{useState,useEffect}from'react';import {Button,ButtonText,Box,Input,InputField,VStack,FlatList,Text,Spinner,HStack,Avatar,AvatarFallbackText,AvatarImage,Checkbox,CheckboxIndicator,CheckboxIcon,CheckIcon}from'@admin-layout/gluestack-ui-mobile';import {TouchableOpacity}from'react-native';import {useOrganizationMembersQuery,useChannelDetailQuery,useChannelsQuery,useSaveMembersToChannelMutation,useAddMemberToChannelMutation,useAddDirectChannelMutation}from'../../queries/slackuiQueries.js';import {NavigationRoutes}from'../../constants/routes.js';import {AntDesign,Ionicons}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'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';import'../../hooks/useOptimizedChannelsQueries.js';import {uniqBy}from'lodash-es';const orgMemersDataFetchLimit = 10;
|
|
2
2
|
const AddPeople = ({
|
|
3
3
|
navigation,
|
|
4
4
|
route
|
|
@@ -29,27 +29,22 @@ const AddPeople = ({
|
|
|
29
29
|
loading: orgMemebersLoading,
|
|
30
30
|
error: orgMembersError,
|
|
31
31
|
refetch: refetchOrgMembers
|
|
32
|
-
} =
|
|
32
|
+
} = useOrganizationMembersQuery(orgName, {
|
|
33
33
|
variables: {
|
|
34
34
|
offset,
|
|
35
|
-
limit: orgMemersDataFetchLimit
|
|
36
|
-
orgName
|
|
35
|
+
limit: orgMemersDataFetchLimit
|
|
37
36
|
}
|
|
38
37
|
});
|
|
39
38
|
const {
|
|
40
39
|
data: channelDetail,
|
|
41
40
|
refetch: refetchChannelDetail
|
|
42
|
-
} =
|
|
43
|
-
variables: {
|
|
44
|
-
id: channelId
|
|
45
|
-
}
|
|
46
|
-
});
|
|
41
|
+
} = useChannelDetailQuery(channelId);
|
|
47
42
|
const {
|
|
48
43
|
data: userChannelsData,
|
|
49
44
|
loading,
|
|
50
45
|
error,
|
|
51
46
|
refetch: refetchUserChannels
|
|
52
|
-
} =
|
|
47
|
+
} = useChannelsQuery({
|
|
53
48
|
variables: {
|
|
54
49
|
criteria: {
|
|
55
50
|
orgName,
|
|
@@ -113,8 +108,7 @@ const AddPeople = ({
|
|
|
113
108
|
if (orgName) {
|
|
114
109
|
refetchOrgMembers({
|
|
115
110
|
offset,
|
|
116
|
-
limit: orgMemersDataFetchLimit
|
|
117
|
-
orgName
|
|
111
|
+
limit: orgMemersDataFetchLimit
|
|
118
112
|
});
|
|
119
113
|
refetchUserChannels({
|
|
120
114
|
criteria: {
|
|
@@ -123,9 +117,7 @@ const AddPeople = ({
|
|
|
123
117
|
});
|
|
124
118
|
}
|
|
125
119
|
if (channelId)
|
|
126
|
-
refetchChannelDetail(
|
|
127
|
-
id: channelId
|
|
128
|
-
});
|
|
120
|
+
refetchChannelDetail();
|
|
129
121
|
navigation.setOptions({
|
|
130
122
|
headerShown: true,
|
|
131
123
|
headerTitleAlign: "left",
|
|
@@ -135,10 +127,7 @@ const AddPeople = ({
|
|
|
135
127
|
}, onPress: () => goToChannel() }, /* @__PURE__ */ React__default.createElement(AntDesign, { color: "black", name: "close", size: 20 })) : /* @__PURE__ */ React__default.createElement(TouchableOpacity, { style: {
|
|
136
128
|
paddingHorizontal: 10
|
|
137
129
|
}, onPress: () => navigation == null ? void 0 : navigation.goBack() }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "chevron-back", size: 20 }))),
|
|
138
|
-
headerRight: (props) => /* @__PURE__ */ React__default.createElement(Button, {
|
|
139
|
-
color: (selectedMembers == null ? void 0 : selectedMembers.length) > 0 ? "$black" : "$trueGray400",
|
|
140
|
-
fontSize: 15
|
|
141
|
-
} }, (selectedMembers == null ? void 0 : selectedMembers.length) ? "ADD" : "ADD"))
|
|
130
|
+
headerRight: (props) => /* @__PURE__ */ React__default.createElement(Button, { className: "mr-2", onPress: () => addMemeberToChannel(), variant: "link", disabled: (selectedMembers == null ? void 0 : selectedMembers.length) > 0 ? false : true }, /* @__PURE__ */ React__default.createElement(ButtonText, { className: `${(selectedMembers == null ? void 0 : selectedMembers.length) > 0 ? "text-black" : "text-gray-400"} text-[15px]` }, (selectedMembers == null ? void 0 : selectedMembers.length) ? "ADD" : "ADD"))
|
|
142
131
|
});
|
|
143
132
|
return () => {
|
|
144
133
|
};
|
|
@@ -198,24 +187,12 @@ const AddPeople = ({
|
|
|
198
187
|
}, onPress: () => {
|
|
199
188
|
var _a2;
|
|
200
189
|
return selectMembers((_a2 = item == null ? void 0 : item.user) == null ? void 0 : _a2.id);
|
|
201
|
-
} }, /* @__PURE__ */ React__default.createElement(
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
w: "100%",
|
|
208
|
-
justifyContent: "space-between",
|
|
209
|
-
alignItems: "center"
|
|
210
|
-
},
|
|
211
|
-
/* @__PURE__ */ React__default.createElement(HStack, { alignItems: "center" }, /* @__PURE__ */ React__default.createElement(Button, { disabled: true, size: "sm", bg: "transparent" }, /* @__PURE__ */ React__default.createElement(Avatar, { bg: "transparent", size: "sm", borderRadius: "$none" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, { color: "$white", fontWeight: "600" }, acronym.toUpperCase()), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", borderRadius: 0, source: {
|
|
212
|
-
uri: (_c = item == null ? void 0 : item.user) == null ? void 0 : _c.picture
|
|
213
|
-
} }))), /* @__PURE__ */ React__default.createElement(Text, { color: "$coolGray800", fontWeight: "$bold" }, (_d = item == null ? void 0 : item.user) == null ? void 0 : _d.givenName, " ", (_e = item == null ? void 0 : item.user) == null ? void 0 : _e.familyName)),
|
|
214
|
-
/* @__PURE__ */ React__default.createElement(Checkbox, { onChange: () => {
|
|
215
|
-
var _a2;
|
|
216
|
-
return selectMembers((_a2 = item == null ? void 0 : item.user) == null ? void 0 : _a2.id);
|
|
217
|
-
}, value: (_f = item == null ? void 0 : item.user) == null ? void 0 : _f.id, isChecked: selectedMembers && (selectedMembers == null ? void 0 : selectedMembers.includes((_g = item == null ? void 0 : item.user) == null ? void 0 : _g.id)) ? true : false, accessibilityLabel: (_i = (_h = item == null ? void 0 : item.user) == null ? void 0 : _h.username) != null ? _i : "", "aria-label": (_k = (_j = item == null ? void 0 : item.user) == null ? void 0 : _j.username) != null ? _k : "", "aria-labelledby": (_m = (_l = item == null ? void 0 : item.user) == null ? void 0 : _l.username) != null ? _m : "" }, /* @__PURE__ */ React__default.createElement(CheckboxIndicator, null, /* @__PURE__ */ React__default.createElement(CheckboxIcon, { as: CheckIcon })))
|
|
218
|
-
));
|
|
190
|
+
} }, /* @__PURE__ */ React__default.createElement(HStack, { space: "sm", className: "py-1 pr-2 w-full justify-between items-center" }, /* @__PURE__ */ React__default.createElement(HStack, { className: "items-center" }, /* @__PURE__ */ React__default.createElement(Button, { disabled: true, size: "sm", className: "bg-transparent" }, /* @__PURE__ */ React__default.createElement(Avatar, { className: "bg-transparent rounded-none", size: "sm" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, { className: "text-white font-bold" }, acronym.toUpperCase()), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", borderRadius: 0, source: {
|
|
191
|
+
uri: (_c = item == null ? void 0 : item.user) == null ? void 0 : _c.picture
|
|
192
|
+
} }))), /* @__PURE__ */ React__default.createElement(Text, { className: "text-gray-800 font-bold" }, (_d = item == null ? void 0 : item.user) == null ? void 0 : _d.givenName, " ", (_e = item == null ? void 0 : item.user) == null ? void 0 : _e.familyName)), /* @__PURE__ */ React__default.createElement(Checkbox, { onChange: () => {
|
|
193
|
+
var _a2;
|
|
194
|
+
return selectMembers((_a2 = item == null ? void 0 : item.user) == null ? void 0 : _a2.id);
|
|
195
|
+
}, value: (_f = item == null ? void 0 : item.user) == null ? void 0 : _f.id, isChecked: selectedMembers && (selectedMembers == null ? void 0 : selectedMembers.includes((_g = item == null ? void 0 : item.user) == null ? void 0 : _g.id)) ? true : false, accessibilityLabel: (_i = (_h = item == null ? void 0 : item.user) == null ? void 0 : _h.username) != null ? _i : "", "aria-label": (_k = (_j = item == null ? void 0 : item.user) == null ? void 0 : _j.username) != null ? _k : "", "aria-labelledby": (_m = (_l = item == null ? void 0 : item.user) == null ? void 0 : _l.username) != null ? _m : "" }, /* @__PURE__ */ React__default.createElement(CheckboxIndicator, null, /* @__PURE__ */ React__default.createElement(CheckboxIcon, { as: CheckIcon })))));
|
|
219
196
|
};
|
|
220
197
|
const selectMembers = (id) => {
|
|
221
198
|
setSelectedMembers((pre) => pre.indexOf(id) === -1 ? [...pre, id] : pre.filter((mId) => mId != id));
|
|
@@ -248,8 +225,7 @@ const AddPeople = ({
|
|
|
248
225
|
const offSet = offset + 1;
|
|
249
226
|
refetchOrgMembers({
|
|
250
227
|
offset: offSet,
|
|
251
|
-
limit: orgMemersDataFetchLimit
|
|
252
|
-
orgName
|
|
228
|
+
limit: orgMemersDataFetchLimit
|
|
253
229
|
}).finally(() => {
|
|
254
230
|
console.log("finally");
|
|
255
231
|
setOffset(offSet);
|
|
@@ -261,7 +237,7 @@ const AddPeople = ({
|
|
|
261
237
|
margin: 15
|
|
262
238
|
} }) : null);
|
|
263
239
|
};
|
|
264
|
-
return /* @__PURE__ */ React__default.createElement(
|
|
240
|
+
return /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 bg-white" }, /* @__PURE__ */ React__default.createElement(Input, { variant: "underlined" }, /* @__PURE__ */ React__default.createElement(InputField, { autoFocus: true, type: "text", size: "xl", placeholderTextColor: "#404040", className: "px-3 items-center text-[14px] text-black", placeholder: "Name, @username, name@example.com", onChange: ({
|
|
265
241
|
nativeEvent: {
|
|
266
242
|
eventCount,
|
|
267
243
|
target,
|
|
@@ -269,11 +245,14 @@ const AddPeople = ({
|
|
|
269
245
|
}
|
|
270
246
|
}) => {
|
|
271
247
|
searchMembers(text);
|
|
272
|
-
}, autoCapitalize: "none", autoCorrect: false })), /* @__PURE__ */ React__default.createElement(
|
|
248
|
+
}, autoCapitalize: "none", autoCorrect: false })), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1" }, /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "md", className: "flex-1 pt-2" }, /* @__PURE__ */ React__default.createElement(FlatList, { style: {
|
|
249
|
+
flex: 1,
|
|
250
|
+
paddingHorizontal: 2
|
|
251
|
+
}, keyExtractor: (item, index) => String(index), contentContainerStyle: {
|
|
273
252
|
flex: 1
|
|
274
253
|
}, data: organizationMembers && organizationMembers.length > 0 ? organizationMembers : [], renderItem: renderChannelMemebers, ListEmptyComponent: () => {
|
|
275
254
|
return /* @__PURE__ */ React__default.createElement(TouchableOpacity, { style: {
|
|
276
255
|
marginTop: 5
|
|
277
|
-
} }, /* @__PURE__ */ React__default.createElement(Box, {
|
|
256
|
+
} }, /* @__PURE__ */ React__default.createElement(Box, { className: "bg-white py-2" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "md" }, /* @__PURE__ */ React__default.createElement(Box, { className: "px-4 py-5" }, /* @__PURE__ */ React__default.createElement(Text, null, "No people found")))));
|
|
278
257
|
}, key: "add-channel-people-list", ListFooterComponent: renderFooter, onEndReached: loadMoreOrgMemebers, onEndReachedThreshold: 0.5 })))));
|
|
279
258
|
};export{AddPeople as default};//# sourceMappingURL=AddPeople.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddPeople.js","sources":["../../../src/screens/Peoples/AddPeople.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect } from 'react';\nimport {\n Input,\n InputField,\n InputSlot,\n View,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n ButtonText,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n Image,\n Checkbox,\n CheckboxIndicator,\n CheckboxIcon,\n CheckIcon,\n CheckboxLabel,\n ChevronLeftIcon,\n Spinner,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { TouchableOpacity } from 'react-native';\nimport {\n useAddChannelMutation,\n useGetOrganizationMembersQuery,\n useGetChannelsByUserQuery,\n useGetChannelsByUserLazyQuery,\n useGetUserOrganizationsQuery,\n useAddDirectChannelMutation,\n useAddMemberToChannelMutation,\n useViewChannelDetailLazyQuery,\n useViewChannelDetailQuery,\n useSaveMembersToChannelMutation,\n} from 'common/lib/generated/generated.js';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { AntDesign, Entypo, Ionicons } from '@expo/vector-icons';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useIsFocused, useFocusEffect } from '@react-navigation/native';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport { useSelector } from 'react-redux';\nimport { useDrawerLayout } from '../../hooks';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\n\nconst orgMemersDataFetchLimit = 10;\n\nconst AddPeople = ({ navigation, route }: any) => {\n const { orgName, organizationDetail } = useDrawerLayout();\n const { channelId, isCreate, isAddMemeber, addMember: routeAddMember } = route?.params;\n const isFocused = useIsFocused();\n const userState = useSelector(userSelector);\n const [organizationMembers, setOrganizationMembers] = useState<any>([]);\n const [totalMembers, setTotalMembers] = useState<any>(0);\n const [initialOrgMembers, setInitialOrgMembers] = useState<any>([]);\n const [orgMembers, setOrgMembers] = useState<any>([]);\n const [dirChannelMembers, setDirChannelMembers] = useState<any>([]);\n const [selectedMembers, setSelectedMembers] = useState<any>([]);\n const [dataSource, setDataSource] = useState([]);\n const [offset, setOffset] = useState(0);\n const [isListEnd, setIsListEnd] = useState(false);\n\n const {\n data: orgMembersData,\n loading: orgMemebersLoading,\n error: orgMembersError,\n refetch: refetchOrgMembers,\n } = useGetOrganizationMembersQuery({\n variables: {\n offset: offset,\n limit: orgMemersDataFetchLimit,\n orgName: orgName,\n },\n });\n\n const { data: channelDetail, refetch: refetchChannelDetail } = useViewChannelDetailQuery({\n variables: {\n id: channelId,\n },\n });\n\n const {\n data: userChannelsData,\n loading,\n error,\n refetch: refetchUserChannels,\n } = useGetChannelsByUserQuery({\n variables: {\n criteria: {\n orgName: orgName,\n type: 'DIRECT',\n },\n },\n });\n\n const [saveMembersToChannel, { loading: saveMembersLoading }] = useSaveMembersToChannelMutation({\n onCompleted: (data: any) => {\n // console.log('data add',data)\n\n const dirChannelIds =\n dirChannelMembers\n ?.filter((v: any, i: any, a: any) => a.findIndex((v2: any) => v2.id === v.id) === i)\n ?.map((u: any) => u?.id) ?? [];\n const receiver = selectedMembers?.filter((item: any) => !dirChannelIds?.includes(item));\n if (receiver?.length > 0) {\n addDirectChannelMutation({\n variables: {\n receiver: receiver,\n displayName: 'DIRECT CHANNEL',\n },\n });\n } else {\n goToChannel();\n }\n // if(data?.createDirectChannel) navigation.navigate(NavigationRoutes.Home)\n // navigation.navigate('MainStack.MainDrawer.Home')\n },\n onError: (error: any) => {\n console.log('error add', error);\n },\n });\n\n const [addMemberToChannel] = useAddMemberToChannelMutation({\n onCompleted: (data: any) => {\n console.log('data add', data);\n // if(data?.createDirectChannel) navigation.navigate(NavigationRoutes.Home)\n // navigation.navigate('MainStack.MainDrawer.Home')\n },\n onError: (error: any) => {\n console.log('error add', error);\n },\n });\n\n const [addDirectChannelMutation, { loading: addDirectChannaleLoading }] = useAddDirectChannelMutation({\n onCompleted: (data: any) => {\n goToChannel();\n },\n });\n\n const goToChannel = React.useCallback(() => {\n if (channelId && channelDetail?.viewChannelDetail && isCreate) {\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: channelId?.toString(),\n title: channelDetail?.viewChannelDetail?.title?.toString(),\n totalMembers: channelDetail?.viewChannelDetail?.members?.length,\n goToHome: true,\n hideTabBar: true,\n });\n }\n if (isAddMemeber) {\n navigation?.goBack(null);\n }\n }, [channelId, channelDetail?.viewChannelDetail, isCreate, isAddMemeber]);\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetchOrgMembers({ offset: offset, limit: orgMemersDataFetchLimit, orgName: orgName });\n refetchUserChannels({\n criteria: {\n orgName: orgName,\n },\n });\n }\n\n if (channelId) refetchChannelDetail({ id: channelId });\n\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {},\n headerLeft: (props: any) => (\n <>\n {isCreate ? (\n <TouchableOpacity style={{ paddingHorizontal: 10 }} onPress={() => goToChannel()}>\n <AntDesign color=\"black\" name=\"close\" size={20} />\n </TouchableOpacity>\n ) : (\n <TouchableOpacity style={{ paddingHorizontal: 10 }} onPress={() => navigation?.goBack()}>\n <Ionicons color=\"black\" name=\"chevron-back\" size={20} />\n </TouchableOpacity>\n )}\n </>\n ),\n headerRight: (props: any) => (\n <Button\n mr={'$2'}\n onPress={() => addMemeberToChannel()}\n variant={'link'}\n disabled={selectedMembers?.length > 0 ? false : true}\n >\n <ButtonText\n style={{ color: selectedMembers?.length > 0 ? '$black' : '$trueGray400', fontSize: 15 }}\n >\n {selectedMembers?.length ? 'ADD' : 'ADD'}\n </ButtonText>\n </Button>\n ),\n });\n\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n // setOffset(0);\n //setOrganizationMembers([]);\n };\n }, [isCreate, orgName, channelId, channelDetail, selectedMembers]),\n );\n\n useEffect(() => {\n return () => {\n setOffset(0);\n setOrganizationMembers([]);\n };\n }, []);\n\n useEffect(() => {\n if (orgMembersData?.getOrganizationMembers?.data && channelDetail?.viewChannelDetail) {\n const allOrgMembersWithoutCurrent =\n orgMembersData?.getOrganizationMembers?.data?.filter((mu: any) => mu?.user?.id != userState?.id) ?? [];\n const channelMembers =\n channelDetail?.viewChannelDetail?.members?.filter((mu: any) => mu?.user?.id != userState?.id) ?? [];\n\n const filteredOrgMembers = allOrgMembersWithoutCurrent.filter(\n (x: any) => !channelMembers.filter((y: any) => y?.user?.id === x?.user?.id).length,\n );\n\n setOrganizationMembers((oldOrgMembers: any) =>\n uniqBy([...oldOrgMembers, ...filteredOrgMembers], ({ userId }) => userId),\n );\n // setOrganizationMembers(filteredOrgMembers);\n setInitialOrgMembers(filteredOrgMembers);\n }\n\n if (orgMembersData?.getOrganizationMembers?.totalCount)\n setTotalMembers(orgMembersData?.getOrganizationMembers?.totalCount - 1);\n }, [orgMembersData?.getOrganizationMembers, channelDetail?.viewChannelDetail]);\n\n useEffect(() => {\n if (userChannelsData?.channelsByUser) {\n const userDirectChannels = userChannelsData?.channelsByUser?.filter((i: any) => i.type == 'DIRECT') ?? [];\n const uDirectChannelMemebers: any =\n userDirectChannels?.map((c: any) => {\n return c?.members?.filter((mu: any) => mu?.user?.id != userState?.id)?.map((m: any) => m?.user);\n }) ?? null;\n const dirChannelMembers =\n uDirectChannelMemebers\n ?.flat(1)\n ?.filter((v: any, i: any, a: any) => a.findIndex((v2: any) => v2.id === v.id) === i) ?? [];\n setDirChannelMembers(dirChannelMembers);\n }\n }, [userChannelsData]);\n\n const renderChannelMemebers = ({ item }: any) => {\n const matches: any = item?.user?.username.match(/\\b(\\w)/g);\n const acronym: any = matches.join('').substring(0, 2); // JSON\n return (\n <TouchableOpacity\n key={item?.user?.id}\n style={{ marginTop: 2 }}\n onPress={() => selectMembers(item?.user?.id)}\n >\n <HStack\n space={'sm'}\n py={'$1'}\n // pl={'$4'}\n pr={'$2'}\n w={'100%'}\n justifyContent=\"space-between\"\n alignItems={'center'}\n >\n <HStack alignItems=\"center\">\n <Button disabled size={'sm'} bg={'transparent'}>\n <Avatar bg={'transparent'} size={'sm'} borderRadius={'$none'}>\n <AvatarFallbackText color={'$white'} fontWeight=\"600\">\n {acronym.toUpperCase()}\n </AvatarFallbackText>\n <AvatarImage\n alt={'image'}\n borderRadius={0}\n source={{\n uri: item?.user?.picture,\n }}\n />\n </Avatar>\n </Button>\n\n <Text color=\"$coolGray800\" fontWeight=\"$bold\">\n {item?.user?.givenName} {item?.user?.familyName}\n </Text>\n </HStack>\n\n <Checkbox\n onChange={() => selectMembers(item?.user?.id)}\n value={item?.user?.id}\n isChecked={selectedMembers && selectedMembers?.includes(item?.user?.id) ? true : false}\n accessibilityLabel={item?.user?.username ?? ''}\n aria-label={item?.user?.username ?? ''}\n aria-labelledby={item?.user?.username ?? ''}\n >\n <CheckboxIndicator>\n <CheckboxIcon as={CheckIcon} />\n </CheckboxIndicator>\n </Checkbox>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n const skip = () => {\n // if(channelId) navigation.navigate(NavigationRoutes.DialogMessages, { channelId, hideTabBar: true,addMember:true });\n // else navigation.navigate(NavigationRoutes.Home)\n navigation.navigate(NavigationRoutes.Home);\n };\n\n const selectMembers = (id: any) => {\n setSelectedMembers((pre: any) =>\n pre.indexOf(id) === -1 ? [...pre, id] : pre.filter((mId: String) => mId != id),\n );\n };\n\n const addMemeberToChannel = () => {\n if (selectedMembers?.length > 0) {\n saveMembersToChannel({\n variables: {\n membersIds: selectedMembers,\n channelId: channelId,\n },\n });\n }\n };\n\n const searchMembers = React.useCallback(\n (v: any) => {\n if (v) {\n let searchedChannel = organizationMembers.filter((o: any) => o?.user?.givenName.includes(v));\n setOrganizationMembers(searchedChannel);\n } else {\n setOrganizationMembers(initialOrgMembers);\n }\n },\n [organizationMembers],\n );\n\n const loadMoreOrgMemebers = React.useCallback(() => {\n if (totalMembers == organizationMembers?.length) setIsListEnd(true);\n\n if (totalMembers > organizationMembers?.length && !orgMemebersLoading && !isListEnd) {\n const offSet = offset + 1;\n refetchOrgMembers({ offset: offSet, limit: orgMemersDataFetchLimit, orgName: orgName }).finally(() => {\n console.log('finally');\n setOffset(offSet);\n });\n }\n }, [organizationMembers, totalMembers, offset]);\n\n const renderFooter = () => {\n return (\n //Footer View with Loader\n <Box>\n {orgMemebersLoading || saveMembersLoading || addDirectChannaleLoading ? (\n <Spinner color=\"black\" style={{ margin: 15 }} />\n ) : null}\n </Box>\n );\n };\n\n return (\n <View flex={1} bg={'white'}>\n <Input variant=\"underlined\">\n <InputField\n autoFocus={true}\n px={'$3'}\n alignItems=\"center\"\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n fontSize={14}\n color=\"$black\"\n placeholder=\"Name, @username, name@example.com\"\n onChange={({ nativeEvent: { eventCount, target, text } }) => {\n searchMembers(text);\n }}\n autoCapitalize={'none'}\n autoCorrect={false}\n />\n </Input>\n\n <View flex={1}>\n <VirtualizedScrollView>\n <VStack space=\"md\" flex={1} pt={'$2'}>\n <FlatList\n px={'$2'}\n flex={1}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flex: 1,\n }}\n data={organizationMembers && organizationMembers.length > 0 ? organizationMembers : []}\n renderItem={renderChannelMemebers}\n ListEmptyComponent={() => {\n return (\n <TouchableOpacity style={{ marginTop: 5 }}>\n <Box bg={'#fff'} py={'$2'}>\n <VStack space=\"md\">\n <Box px=\"$4\" py={'$5'}>\n <Text>No people found</Text>\n </Box>\n </VStack>\n </Box>\n </TouchableOpacity>\n );\n }}\n key={'add-channel-people-list'}\n ListFooterComponent={renderFooter}\n onEndReached={loadMoreOrgMemebers}\n onEndReachedThreshold={0.5}\n />\n </VStack>\n </VirtualizedScrollView>\n </View>\n </View>\n );\n};\n\nexport default AddPeople;\n"],"names":["error","React","_a","_b","dirChannelMembers"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AddPeople.js","sources":["../../../src/screens/Peoples/AddPeople.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect } from 'react';\nimport {\n Input,\n InputField,\n InputSlot,\n View,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n ButtonText,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n Image,\n Checkbox,\n CheckboxIndicator,\n CheckboxIcon,\n CheckIcon,\n CheckboxLabel,\n ChevronLeftIcon,\n Spinner,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { TouchableOpacity } from 'react-native';\nimport {\n useChannelsQuery,\n useChannelsLazyQuery,\n useOrganizationMembersQuery,\n useUserOrganizationsQuery,\n useChannelDetailQuery,\n useChannelDetailLazyQuery,\n useAddChannelMutation,\n useAddDirectChannelMutation,\n useAddMemberToChannelMutation,\n useSaveMembersToChannelMutation,\n} from '../../queries/slackuiQueries';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { AntDesign, Entypo, Ionicons } from '@expo/vector-icons';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { useIsFocused, useFocusEffect } from '@react-navigation/native';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport { useSelector } from 'react-redux';\nimport { useDrawerLayout } from '../../hooks';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport colors from 'tailwindcss/colors';\n\nconst orgMemersDataFetchLimit = 10;\n\nconst AddPeople = ({ navigation, route }: any) => {\n const { orgName, organizationDetail } = useDrawerLayout();\n const { channelId, isCreate, isAddMemeber, addMember: routeAddMember } = route?.params;\n const isFocused = useIsFocused();\n const userState = useSelector(userSelector);\n const [organizationMembers, setOrganizationMembers] = useState<any>([]);\n const [totalMembers, setTotalMembers] = useState<any>(0);\n const [initialOrgMembers, setInitialOrgMembers] = useState<any>([]);\n const [orgMembers, setOrgMembers] = useState<any>([]);\n const [dirChannelMembers, setDirChannelMembers] = useState<any>([]);\n const [selectedMembers, setSelectedMembers] = useState<any>([]);\n const [dataSource, setDataSource] = useState([]);\n const [offset, setOffset] = useState(0);\n const [isListEnd, setIsListEnd] = useState(false);\n\n const {\n data: orgMembersData,\n loading: orgMemebersLoading,\n error: orgMembersError,\n refetch: refetchOrgMembers,\n } = useOrganizationMembersQuery(orgName, {\n variables: {\n offset: offset,\n limit: orgMemersDataFetchLimit,\n },\n });\n\n const { data: channelDetail, refetch: refetchChannelDetail } = useChannelDetailQuery(channelId);\n\n const {\n data: userChannelsData,\n loading,\n error,\n refetch: refetchUserChannels,\n } = useChannelsQuery({\n variables: {\n criteria: {\n orgName: orgName,\n type: 'DIRECT',\n },\n },\n });\n\n const [saveMembersToChannel, { loading: saveMembersLoading }] = useSaveMembersToChannelMutation({\n onCompleted: (data: any) => {\n // console.log('data add',data)\n\n const dirChannelIds =\n dirChannelMembers\n ?.filter((v: any, i: any, a: any) => a.findIndex((v2: any) => v2.id === v.id) === i)\n ?.map((u: any) => u?.id) ?? [];\n const receiver = selectedMembers?.filter((item: any) => !dirChannelIds?.includes(item));\n if (receiver?.length > 0) {\n addDirectChannelMutation({\n variables: {\n receiver: receiver,\n displayName: 'DIRECT CHANNEL',\n },\n });\n } else {\n goToChannel();\n }\n // if(data?.createDirectChannel) navigation.navigate(NavigationRoutes.Home)\n // navigation.navigate('MainStack.MainDrawer.Home')\n },\n onError: (error: any) => {\n console.log('error add', error);\n },\n });\n\n const [addMemberToChannel] = useAddMemberToChannelMutation({\n onCompleted: (data: any) => {\n console.log('data add', data);\n // if(data?.createDirectChannel) navigation.navigate(NavigationRoutes.Home)\n // navigation.navigate('MainStack.MainDrawer.Home')\n },\n onError: (error: any) => {\n console.log('error add', error);\n },\n });\n\n const [addDirectChannelMutation, { loading: addDirectChannaleLoading }] = useAddDirectChannelMutation({\n onCompleted: (data: any) => {\n goToChannel();\n },\n });\n\n const goToChannel = React.useCallback(() => {\n if (channelId && channelDetail?.viewChannelDetail && isCreate) {\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: channelId?.toString(),\n title: channelDetail?.viewChannelDetail?.title?.toString(),\n totalMembers: channelDetail?.viewChannelDetail?.members?.length,\n goToHome: true,\n hideTabBar: true,\n });\n }\n if (isAddMemeber) {\n navigation?.goBack(null);\n }\n }, [channelId, channelDetail?.viewChannelDetail, isCreate, isAddMemeber]);\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetchOrgMembers({\n offset: offset,\n limit: orgMemersDataFetchLimit,\n });\n refetchUserChannels({\n criteria: {\n orgName: orgName,\n },\n });\n }\n\n if (channelId) refetchChannelDetail();\n\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {},\n headerLeft: (props: any) => (\n <>\n {isCreate ? (\n <TouchableOpacity style={{ paddingHorizontal: 10 }} onPress={() => goToChannel()}>\n <AntDesign color=\"black\" name=\"close\" size={20} />\n </TouchableOpacity>\n ) : (\n <TouchableOpacity style={{ paddingHorizontal: 10 }} onPress={() => navigation?.goBack()}>\n <Ionicons color=\"black\" name=\"chevron-back\" size={20} />\n </TouchableOpacity>\n )}\n </>\n ),\n headerRight: (props: any) => (\n <Button\n className=\"mr-2\"\n onPress={() => addMemeberToChannel()}\n variant={'link'}\n disabled={selectedMembers?.length > 0 ? false : true}\n >\n <ButtonText\n className={`${selectedMembers?.length > 0 ? 'text-black' : 'text-gray-400'} text-[15px]`}\n >\n {selectedMembers?.length ? 'ADD' : 'ADD'}\n </ButtonText>\n </Button>\n ),\n });\n\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n // setOffset(0);\n //setOrganizationMembers([]);\n };\n }, [isCreate, orgName, channelId, channelDetail, selectedMembers]),\n );\n\n useEffect(() => {\n return () => {\n setOffset(0);\n setOrganizationMembers([]);\n };\n }, []);\n\n useEffect(() => {\n if (orgMembersData?.getOrganizationMembers?.data && channelDetail?.viewChannelDetail) {\n const allOrgMembersWithoutCurrent =\n orgMembersData?.getOrganizationMembers?.data?.filter((mu: any) => mu?.user?.id != userState?.id) ?? [];\n const channelMembers =\n channelDetail?.viewChannelDetail?.members?.filter((mu: any) => mu?.user?.id != userState?.id) ?? [];\n\n const filteredOrgMembers = allOrgMembersWithoutCurrent.filter(\n (x: any) => !channelMembers.filter((y: any) => y?.user?.id === x?.user?.id).length,\n );\n\n setOrganizationMembers((oldOrgMembers: any) =>\n uniqBy([...oldOrgMembers, ...filteredOrgMembers], ({ userId }) => userId),\n );\n // setOrganizationMembers(filteredOrgMembers);\n setInitialOrgMembers(filteredOrgMembers);\n }\n\n if (orgMembersData?.getOrganizationMembers?.totalCount)\n setTotalMembers(orgMembersData?.getOrganizationMembers?.totalCount - 1);\n }, [orgMembersData?.getOrganizationMembers, channelDetail?.viewChannelDetail]);\n\n useEffect(() => {\n if (userChannelsData?.channelsByUser) {\n const userDirectChannels = userChannelsData?.channelsByUser?.filter((i: any) => i.type == 'DIRECT') ?? [];\n const uDirectChannelMemebers: any =\n userDirectChannels?.map((c: any) => {\n return c?.members?.filter((mu: any) => mu?.user?.id != userState?.id)?.map((m: any) => m?.user);\n }) ?? null;\n const dirChannelMembers =\n uDirectChannelMemebers\n ?.flat(1)\n ?.filter((v: any, i: any, a: any) => a.findIndex((v2: any) => v2.id === v.id) === i) ?? [];\n setDirChannelMembers(dirChannelMembers);\n }\n }, [userChannelsData]);\n\n const renderChannelMemebers = ({ item }: any) => {\n const matches: any = item?.user?.username.match(/\\b(\\w)/g);\n const acronym: any = matches.join('').substring(0, 2); // JSON\n return (\n <TouchableOpacity\n key={item?.user?.id}\n style={{ marginTop: 2 }}\n onPress={() => selectMembers(item?.user?.id)}\n >\n <HStack space={'sm'} className=\"py-1 pr-2 w-full justify-between items-center\">\n <HStack className=\"items-center\">\n <Button disabled size={'sm'} className=\"bg-transparent\">\n <Avatar className=\"bg-transparent rounded-none\" size={'sm'}>\n <AvatarFallbackText className=\"text-white font-bold\">\n {acronym.toUpperCase()}\n </AvatarFallbackText>\n <AvatarImage\n alt={'image'}\n borderRadius={0}\n source={{\n uri: item?.user?.picture,\n }}\n />\n </Avatar>\n </Button>\n\n <Text className=\"text-gray-800 font-bold\">\n {item?.user?.givenName} {item?.user?.familyName}\n </Text>\n </HStack>\n\n <Checkbox\n onChange={() => selectMembers(item?.user?.id)}\n value={item?.user?.id}\n isChecked={selectedMembers && selectedMembers?.includes(item?.user?.id) ? true : false}\n accessibilityLabel={item?.user?.username ?? ''}\n aria-label={item?.user?.username ?? ''}\n aria-labelledby={item?.user?.username ?? ''}\n >\n <CheckboxIndicator>\n <CheckboxIcon as={CheckIcon} />\n </CheckboxIndicator>\n </Checkbox>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n const skip = () => {\n // if(channelId) navigation.navigate(NavigationRoutes.DialogMessages, { channelId, hideTabBar: true,addMember:true });\n // else navigation.navigate(NavigationRoutes.Home)\n navigation.navigate(NavigationRoutes.Home);\n };\n\n const selectMembers = (id: any) => {\n setSelectedMembers((pre: any) =>\n pre.indexOf(id) === -1 ? [...pre, id] : pre.filter((mId: String) => mId != id),\n );\n };\n\n const addMemeberToChannel = () => {\n if (selectedMembers?.length > 0) {\n saveMembersToChannel({\n variables: {\n membersIds: selectedMembers,\n channelId: channelId,\n },\n });\n }\n };\n\n const searchMembers = React.useCallback(\n (v: any) => {\n if (v) {\n let searchedChannel = organizationMembers.filter((o: any) => o?.user?.givenName.includes(v));\n setOrganizationMembers(searchedChannel);\n } else {\n setOrganizationMembers(initialOrgMembers);\n }\n },\n [organizationMembers],\n );\n\n const loadMoreOrgMemebers = React.useCallback(() => {\n if (totalMembers == organizationMembers?.length) setIsListEnd(true);\n\n if (totalMembers > organizationMembers?.length && !orgMemebersLoading && !isListEnd) {\n const offSet = offset + 1;\n refetchOrgMembers({\n offset: offSet,\n limit: orgMemersDataFetchLimit,\n }).finally(() => {\n console.log('finally');\n setOffset(offSet);\n });\n }\n }, [organizationMembers, totalMembers, offset]);\n\n const renderFooter = () => {\n return (\n //Footer View with Loader\n <Box>\n {orgMemebersLoading || saveMembersLoading || addDirectChannaleLoading ? (\n <Spinner color=\"black\" style={{ margin: 15 }} />\n ) : null}\n </Box>\n );\n };\n\n return (\n <Box className=\"flex-1 bg-white\">\n <Input variant=\"underlined\">\n <InputField\n autoFocus={true}\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n className=\"px-3 items-center text-[14px] text-black\"\n placeholder=\"Name, @username, name@example.com\"\n onChange={({ nativeEvent: { eventCount, target, text } }) => {\n searchMembers(text);\n }}\n autoCapitalize={'none'}\n autoCorrect={false}\n />\n </Input>\n\n <Box className=\"flex-1\">\n <VirtualizedScrollView>\n <VStack space=\"md\" className=\"flex-1 pt-2\">\n <FlatList\n style={{ flex: 1, paddingHorizontal: 2 }}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flex: 1,\n }}\n data={organizationMembers && organizationMembers.length > 0 ? organizationMembers : []}\n renderItem={renderChannelMemebers}\n ListEmptyComponent={() => {\n return (\n <TouchableOpacity style={{ marginTop: 5 }}>\n <Box className=\"bg-white py-2\">\n <VStack space=\"md\">\n <Box className=\"px-4 py-5\">\n <Text>No people found</Text>\n </Box>\n </VStack>\n </Box>\n </TouchableOpacity>\n );\n }}\n key={'add-channel-people-list'}\n ListFooterComponent={renderFooter}\n onEndReached={loadMoreOrgMemebers}\n onEndReachedThreshold={0.5}\n />\n </VStack>\n </VirtualizedScrollView>\n </Box>\n </Box>\n );\n};\n\nexport default AddPeople;\n"],"names":["error","React","_a","_b","dirChannelMembers"],"mappings":"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"}
|
|
@@ -1,9 +1,34 @@
|
|
|
1
|
-
import React__default
|
|
2
|
-
navigation
|
|
1
|
+
import React__default,{useState,useEffect}from'react';import {View,StyleSheet,ActivityIndicator,Text,FlatList}from'react-native';import {useAllUsersQuery}from'../../queries/slackuiQueries.js';const Peoples = ({
|
|
2
|
+
navigation,
|
|
3
|
+
route
|
|
3
4
|
}) => {
|
|
5
|
+
const [users, setUsers] = useState([]);
|
|
6
|
+
const [loading, setLoading] = useState(true);
|
|
7
|
+
const {
|
|
8
|
+
data,
|
|
9
|
+
loading: usersLoading,
|
|
10
|
+
error
|
|
11
|
+
} = useAllUsersQuery();
|
|
12
|
+
useEffect(() => {
|
|
13
|
+
if (data && data.getUsers) {
|
|
14
|
+
setUsers(data.getUsers);
|
|
15
|
+
setLoading(false);
|
|
16
|
+
}
|
|
17
|
+
}, [data]);
|
|
18
|
+
if (loading || usersLoading) {
|
|
19
|
+
return /* @__PURE__ */ React__default.createElement(View, { style: styles.container }, /* @__PURE__ */ React__default.createElement(ActivityIndicator, { size: "large", color: "#62b1f6" }));
|
|
20
|
+
}
|
|
21
|
+
if (error) {
|
|
22
|
+
return /* @__PURE__ */ React__default.createElement(View, { style: styles.container }, /* @__PURE__ */ React__default.createElement(Text, { style: {
|
|
23
|
+
color: "red"
|
|
24
|
+
} }, "Error loading users: ", error.message));
|
|
25
|
+
}
|
|
4
26
|
return /* @__PURE__ */ React__default.createElement(View, { style: styles.container }, /* @__PURE__ */ React__default.createElement(Text, { style: {
|
|
5
|
-
|
|
6
|
-
|
|
27
|
+
fontSize: 20,
|
|
28
|
+
marginBottom: 20
|
|
29
|
+
} }, "People"), /* @__PURE__ */ React__default.createElement(FlatList, { data: users, keyExtractor: (item) => item.id.toString(), renderItem: ({
|
|
30
|
+
item
|
|
31
|
+
}) => /* @__PURE__ */ React__default.createElement(View, { style: styles.userItem }, /* @__PURE__ */ React__default.createElement(Text, { style: styles.userName }, item.firstName, " ", item.lastName), /* @__PURE__ */ React__default.createElement(Text, { style: styles.userEmail }, item.email)) }));
|
|
7
32
|
};
|
|
8
33
|
const styles = StyleSheet.create({
|
|
9
34
|
container: {
|
|
@@ -23,5 +48,18 @@ const styles = StyleSheet.create({
|
|
|
23
48
|
},
|
|
24
49
|
linkColor: {
|
|
25
50
|
color: "#62b1f6"
|
|
51
|
+
},
|
|
52
|
+
userItem: {
|
|
53
|
+
padding: 15,
|
|
54
|
+
borderBottomWidth: 1,
|
|
55
|
+
borderBottomColor: "#eee"
|
|
56
|
+
},
|
|
57
|
+
userName: {
|
|
58
|
+
fontSize: 16,
|
|
59
|
+
fontWeight: "bold"
|
|
60
|
+
},
|
|
61
|
+
userEmail: {
|
|
62
|
+
color: "#777",
|
|
63
|
+
marginTop: 5
|
|
26
64
|
}
|
|
27
65
|
});export{Peoples as default};//# sourceMappingURL=People.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"People.js","sources":["../../../src/screens/Peoples/People.tsx"],"sourcesContent":["import React, { useState, useLayoutEffect } from 'react';\nimport { StyleSheet, View, Text } from 'react-native';\n\nconst Peoples = ({ navigation }: any) => {\n return (\n
|
|
1
|
+
{"version":3,"file":"People.js","sources":["../../../src/screens/Peoples/People.tsx"],"sourcesContent":["import React, { useState, useLayoutEffect, useEffect } from 'react';\nimport { StyleSheet, View, Text, FlatList, ActivityIndicator } from 'react-native';\nimport { useAllUsersQuery, useOrganizationMembersQuery } from '../../queries/slackuiQueries';\n\nconst Peoples = ({ navigation, route }: any) => {\n const [users, setUsers] = useState<any[]>([]);\n const [loading, setLoading] = useState(true);\n\n // Fetch all users using the query\n const { data, loading: usersLoading, error } = useAllUsersQuery();\n\n // You can also fetch organization members if orgName is available\n // const orgName = route.params?.orgName;\n // const { data: orgMembersData } = useOrganizationMembersQuery(orgName);\n\n useEffect(() => {\n if (data && data.getUsers) {\n setUsers(data.getUsers);\n setLoading(false);\n }\n }, [data]);\n\n if (loading || usersLoading) {\n return (\n <View style={styles.container}>\n <ActivityIndicator size=\"large\" color=\"#62b1f6\" />\n </View>\n );\n }\n\n if (error) {\n return (\n <View style={styles.container}>\n <Text style={{ color: 'red' }}>Error loading users: {error.message}</Text>\n </View>\n );\n }\n\n return (\n <View style={styles.container}>\n <Text style={{ fontSize: 20, marginBottom: 20 }}>People</Text>\n <FlatList\n data={users}\n keyExtractor={(item) => item.id.toString()}\n renderItem={({ item }) => (\n <View style={styles.userItem}>\n <Text style={styles.userName}>\n {item.firstName} {item.lastName}\n </Text>\n <Text style={styles.userEmail}>{item.email}</Text>\n </View>\n )}\n />\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n justifyContent: 'center',\n padding: 20,\n },\n marginTop20: {\n marginTop: 20,\n },\n colorWhite: {\n color: 'white',\n },\n direction_row: {\n flexDirection: 'row',\n justifyContent: 'center',\n },\n linkColor: {\n color: '#62b1f6',\n },\n userItem: {\n padding: 15,\n borderBottomWidth: 1,\n borderBottomColor: '#eee',\n },\n userName: {\n fontSize: 16,\n fontWeight: 'bold',\n },\n userEmail: {\n color: '#777',\n marginTop: 5,\n },\n});\n\nexport default Peoples;\n"],"names":["React"],"mappings":"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"}
|
|
@@ -1,26 +1,33 @@
|
|
|
1
|
-
import React__default,{useState,useEffect}from'react';import {useDispatch,useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {Box,VStack,Image,Heading,HStack,Text,Button,ButtonText,Divider}from'@admin-layout/gluestack-ui-mobile';import {
|
|
1
|
+
import React__default,{useState,useEffect}from'react';import {useDispatch,useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {useToast,Box,VStack,Image,Heading,HStack,Text,Button,ToastAlert,ButtonText,Divider}from'@admin-layout/gluestack-ui-mobile';import {useUserByIdQuery,useUpdateUserProfileMutation}from'../../queries/slackuiQueries.js';import {now}from'lodash-es';import {Ionicons,MaterialCommunityIcons}from'@expo/vector-icons';import {useNavigation,useRoute}from'@react-navigation/native';import colors from'tailwindcss/colors';const ProfileScreen = () => {
|
|
2
2
|
var _a;
|
|
3
|
-
useNavigation();
|
|
3
|
+
const navigation = useNavigation();
|
|
4
4
|
const route = useRoute();
|
|
5
5
|
useDispatch();
|
|
6
6
|
const userState = useSelector(userSelector);
|
|
7
7
|
const [user, setUser] = useState(null);
|
|
8
8
|
const timestamp = now();
|
|
9
9
|
const date = new Date(timestamp);
|
|
10
|
+
const toast = useToast();
|
|
10
11
|
const {
|
|
11
12
|
data: userData,
|
|
12
13
|
loading,
|
|
13
14
|
error
|
|
14
|
-
} =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
});
|
|
15
|
+
} = useUserByIdQuery(((_a = route == null ? void 0 : route.params) == null ? void 0 : _a.userId) || (userState == null ? void 0 : userState.id));
|
|
16
|
+
const [updateUserProfile, {
|
|
17
|
+
loading: updateLoading
|
|
18
|
+
}] = useUpdateUserProfileMutation();
|
|
19
19
|
useEffect(() => {
|
|
20
20
|
if (userData == null ? void 0 : userData.getUserAccount)
|
|
21
21
|
setUser(userData == null ? void 0 : userData.getUserAccount);
|
|
22
22
|
}, [userData]);
|
|
23
|
-
|
|
23
|
+
const handleEditProfile = () => {
|
|
24
|
+
if (user == null ? void 0 : user.id) {
|
|
25
|
+
navigation.navigate("EditProfile", {
|
|
26
|
+
user
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
return /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1" }, /* @__PURE__ */ React__default.createElement(VStack, { className: "flex-1 px-4 py-4", space: "md" }, /* @__PURE__ */ React__default.createElement(Box, { className: "w-full h-[96px]" }, /* @__PURE__ */ React__default.createElement(
|
|
24
31
|
Image,
|
|
25
32
|
{
|
|
26
33
|
resizeMode: "cover",
|
|
@@ -35,14 +42,22 @@ import React__default,{useState,useEffect}from'react';import {useDispatch,useSel
|
|
|
35
42
|
resizeMode: "cover"
|
|
36
43
|
}
|
|
37
44
|
}
|
|
38
|
-
)), /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(Heading, null, user == null ? void 0 : user.givenName, " ", user == null ? void 0 : user.familyName)), /* @__PURE__ */ React__default.createElement(HStack, { space: "sm",
|
|
45
|
+
)), /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(Heading, null, user == null ? void 0 : user.givenName, " ", user == null ? void 0 : user.familyName)), /* @__PURE__ */ React__default.createElement(HStack, { space: "sm", className: "items-center" }, /* @__PURE__ */ React__default.createElement(Box, { className: "w-[3px] h-[3px] bg-green-800 rounded-full mr-2" }), /* @__PURE__ */ React__default.createElement(Text, { color: colors.black }, "Active")), /* @__PURE__ */ React__default.createElement(HStack, { space: "sm", className: "items-center" }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "time-outline", size: 20 }), /* @__PURE__ */ React__default.createElement(Text, { color: colors.black }, date == null ? void 0 : date.toLocaleTimeString([], {
|
|
39
46
|
hour: "2-digit",
|
|
40
47
|
minute: "2-digit"
|
|
41
|
-
}), " local time")), /* @__PURE__ */ React__default.createElement(Button, {
|
|
48
|
+
}), " local time")), /* @__PURE__ */ React__default.createElement(Button, { variant: "outline", className: "mt-2 rounded-lg border-gray-400 active:bg-gray-200 hover:bg-gray-200", onPress: () => {
|
|
49
|
+
toast.show({
|
|
50
|
+
placement: "top",
|
|
51
|
+
duration: 2e3,
|
|
52
|
+
render: ({
|
|
53
|
+
id
|
|
54
|
+
}) => /* @__PURE__ */ React__default.createElement(ToastAlert, { id, title: "Status update feature coming soon", status: "info", isClosable: false })
|
|
55
|
+
});
|
|
56
|
+
} }, /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-1", style: {
|
|
42
57
|
color: "black",
|
|
43
58
|
fontWeight: "bold"
|
|
44
|
-
} }, "Edit Status")), /* @__PURE__ */ React__default.createElement(Button, { variant: "outline",
|
|
59
|
+
} }, "Edit Status")), /* @__PURE__ */ React__default.createElement(Button, { variant: "outline", className: "rounded-lg border-gray-400 active:bg-gray-200 hover:bg-gray-200", onPress: handleEditProfile, isDisabled: updateLoading }, /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-1", style: {
|
|
45
60
|
color: "black",
|
|
46
61
|
fontWeight: "bold"
|
|
47
|
-
} }, "Edit Profile")), /* @__PURE__ */ React__default.createElement(Divider, {
|
|
62
|
+
} }, "Edit Profile")), /* @__PURE__ */ React__default.createElement(Divider, { className: "bg-gray-300" }), /* @__PURE__ */ React__default.createElement(Heading, { size: "sm" }, "Contact Information"), /* @__PURE__ */ React__default.createElement(HStack, { space: "sm", className: "items-center" }, /* @__PURE__ */ React__default.createElement(MaterialCommunityIcons, { color: "black", name: "email-outline", size: 20 }), /* @__PURE__ */ React__default.createElement(Text, { color: "black" }, user == null ? void 0 : user.email))));
|
|
48
63
|
};export{ProfileScreen as default};//# sourceMappingURL=ProfileScreen.js.map
|