@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.
Files changed (144) hide show
  1. package/lib/components/Actionsheet.js +96 -0
  2. package/lib/components/Actionsheet.js.map +1 -0
  3. package/lib/components/AppRootContextProviderComponent.js +16 -2
  4. package/lib/components/AppRootContextProviderComponent.js.map +1 -1
  5. package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js +13 -7
  6. package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js.map +1 -1
  7. package/lib/components/CustomBottomTabs/CustomBottomTabs.js +11 -24
  8. package/lib/components/CustomBottomTabs/CustomBottomTabs.js.map +1 -1
  9. package/lib/components/CustomDrawer/CustomDrawer.js +31 -31
  10. package/lib/components/CustomDrawer/CustomDrawer.js.map +1 -1
  11. package/lib/components/Header/styles.js +2 -2
  12. package/lib/components/Header/styles.js.map +1 -1
  13. package/lib/components/LoadingSpinner/index.js +3 -3
  14. package/lib/components/LoadingSpinner/index.js.map +1 -1
  15. package/lib/components/NavigationHeader/InboxNavigationHeader.js +20 -25
  16. package/lib/components/NavigationHeader/InboxNavigationHeader.js.map +1 -1
  17. package/lib/components/NavigationHeader/NavigationHeader.js +58 -40
  18. package/lib/components/NavigationHeader/NavigationHeader.js.map +1 -1
  19. package/lib/components/NavigationHeader/NavigationHeaderChat.js +9 -9
  20. package/lib/components/NavigationHeader/NavigationHeaderChat.js.map +1 -1
  21. package/lib/components/NavigationHeader/index.js +1 -1
  22. package/lib/components/SlackSearchInput/Suggestion.js +1 -1
  23. package/lib/components/SlackSearchInput/Tag.js +1 -1
  24. package/lib/components/SlackSearchInput/index.js +3 -3
  25. package/lib/components/SlackSearchInput/index.js.map +1 -1
  26. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js +19 -4
  27. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js.map +1 -1
  28. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js +41 -31
  29. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js.map +1 -1
  30. package/lib/compute.js +32 -23
  31. package/lib/compute.js.map +1 -1
  32. package/lib/constants/Colors.js +2 -2
  33. package/lib/constants/globalStyles.js +3 -3
  34. package/lib/constants/globalStyles.js.map +1 -1
  35. package/lib/hooks/useOptimizedChannelsQueries.js +106 -0
  36. package/lib/hooks/useOptimizedChannelsQueries.js.map +1 -0
  37. package/lib/index.js +1 -1
  38. package/lib/index.js.map +1 -1
  39. package/lib/navigation/SearchTabNavigation.js +47 -39
  40. package/lib/navigation/SearchTabNavigation.js.map +1 -1
  41. package/lib/navigation/TeamTabNavigation.js +51 -38
  42. package/lib/navigation/TeamTabNavigation.js.map +1 -1
  43. package/lib/queries/slackuiQueries.js +129 -0
  44. package/lib/queries/slackuiQueries.js.map +1 -0
  45. package/lib/routes.json +32 -23
  46. package/lib/screens/Account/AccountScreen.js +23 -26
  47. package/lib/screens/Account/AccountScreen.js.map +1 -1
  48. package/lib/screens/Activity/ActivityScreen.js +6 -2
  49. package/lib/screens/Activity/ActivityScreen.js.map +1 -1
  50. package/lib/screens/Channels/Add/AddName.js +33 -8
  51. package/lib/screens/Channels/Add/AddName.js.map +1 -1
  52. package/lib/screens/Channels/Add/AddVisibility.js +6 -6
  53. package/lib/screens/Channels/Add/AddVisibility.js.map +1 -1
  54. package/lib/screens/Channels/AddChannel.js +5 -3
  55. package/lib/screens/Channels/AddChannel.js.map +1 -1
  56. package/lib/screens/Channels/Channels.js +101 -95
  57. package/lib/screens/Channels/Channels.js.map +1 -1
  58. package/lib/screens/Files/FilesScreen.js +2 -2
  59. package/lib/screens/Files/FilesScreen.js.map +1 -1
  60. package/lib/screens/Home/Components/Channels/Channels.js +91 -77
  61. package/lib/screens/Home/Components/Channels/Channels.js.map +1 -1
  62. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js +249 -115
  63. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js.map +1 -1
  64. package/lib/screens/Home/Components/InviteMembers/index.js +88 -0
  65. package/lib/screens/Home/Components/InviteMembers/index.js.map +1 -0
  66. package/lib/screens/Home/Components/Teams/Teams.js +110 -47
  67. package/lib/screens/Home/Components/Teams/Teams.js.map +1 -1
  68. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js +44 -75
  69. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js.map +1 -1
  70. package/lib/screens/Home/HomeScreen.js +161 -194
  71. package/lib/screens/Home/HomeScreen.js.map +1 -1
  72. package/lib/screens/Home/styles.js +4 -4
  73. package/lib/screens/Home/styles.js.map +1 -1
  74. package/lib/screens/Inbox/InboxChannelDetail.js +67 -34
  75. package/lib/screens/Inbox/InboxChannelDetail.js.map +1 -1
  76. package/lib/screens/Inbox/InboxDialogMessages.js +2 -2
  77. package/lib/screens/Inbox/InboxDialogMessages.js.map +1 -1
  78. package/lib/screens/Inbox/InboxScreen.js +3 -3
  79. package/lib/screens/Inbox/InboxScreen.js.map +1 -1
  80. package/lib/screens/Login.js +4 -2
  81. package/lib/screens/Login.js.map +1 -1
  82. package/lib/screens/Organization/AddWorkspace.js +42 -38
  83. package/lib/screens/Organization/AddWorkspace.js.map +1 -1
  84. package/lib/screens/Organization/CreateOrganization.js +11 -2
  85. package/lib/screens/Organization/CreateOrganization.js.map +1 -1
  86. package/lib/screens/Organization/InitialChannelOnboarding.js +22 -4
  87. package/lib/screens/Organization/InitialChannelOnboarding.js.map +1 -1
  88. package/lib/screens/Organization/InitializeOrganizationChannel.js +9 -4
  89. package/lib/screens/Organization/InitializeOrganizationChannel.js.map +1 -1
  90. package/lib/screens/Organization/InviteOrganizationMembers.js +52 -10
  91. package/lib/screens/Organization/InviteOrganizationMembers.js.map +1 -1
  92. package/lib/screens/Peoples/AddByEmail.js +24 -6
  93. package/lib/screens/Peoples/AddByEmail.js.map +1 -1
  94. package/lib/screens/Peoples/AddFromContacts.js +172 -87
  95. package/lib/screens/Peoples/AddFromContacts.js.map +1 -1
  96. package/lib/screens/Peoples/AddPeople.js +21 -42
  97. package/lib/screens/Peoples/AddPeople.js.map +1 -1
  98. package/lib/screens/Peoples/People.js +42 -4
  99. package/lib/screens/Peoples/People.js.map +1 -1
  100. package/lib/screens/Profile/ProfileScreen.js +27 -12
  101. package/lib/screens/Profile/ProfileScreen.js.map +1 -1
  102. package/lib/screens/Saved/SavedScreen.js +2 -2
  103. package/lib/screens/Saved/SavedScreen.js.map +1 -1
  104. package/lib/screens/Search/Channels.js +20 -32
  105. package/lib/screens/Search/Channels.js.map +1 -1
  106. package/lib/screens/Search/Files.js +2 -2
  107. package/lib/screens/Search/Files.js.map +1 -1
  108. package/lib/screens/Search/JumpTo.js +2 -2
  109. package/lib/screens/Search/JumpTo.js.map +1 -1
  110. package/lib/screens/Search/People.js +19 -27
  111. package/lib/screens/Search/People.js.map +1 -1
  112. package/lib/screens/Search/Recents.js +26 -31
  113. package/lib/screens/Search/Recents.js.map +1 -1
  114. package/lib/screens/Search/SearchAddChannel.js +366 -227
  115. package/lib/screens/Search/SearchAddChannel.js.map +1 -1
  116. package/lib/screens/Search/SearchChannelPeople.js +70 -37
  117. package/lib/screens/Search/SearchChannelPeople.js.map +1 -1
  118. package/lib/screens/Search/SearchScreen.js +5 -3
  119. package/lib/screens/Search/SearchScreen.js.map +1 -1
  120. package/lib/screens/Search/styles.js +2 -2
  121. package/lib/screens/Search/styles.js.map +1 -1
  122. package/lib/screens/Teams/AddTeam.js +3 -3
  123. package/lib/screens/Teams/AddTeam.js.map +1 -1
  124. package/lib/screens/Teams/Components/Channels/Channels.js +6 -6
  125. package/lib/screens/Teams/Components/Channels/Channels.js.map +1 -1
  126. package/lib/screens/Teams/Components/Members/Members.js +7 -3
  127. package/lib/screens/Teams/Components/Members/Members.js.map +1 -1
  128. package/lib/screens/Teams/Team.js +6 -8
  129. package/lib/screens/Teams/Team.js.map +1 -1
  130. package/lib/screens/Teams/Teams.js +137 -106
  131. package/lib/screens/Teams/Teams.js.map +1 -1
  132. package/lib/screens/Teams/useTeams.js +41 -0
  133. package/lib/screens/Teams/useTeams.js.map +1 -0
  134. package/lib/screens/Wiki/WikiScreen.js +2 -2
  135. package/lib/screens/Wiki/WikiScreen.js.map +1 -1
  136. package/lib/theme/index.js +2 -2
  137. package/lib/theme/index.js.map +1 -1
  138. package/package.json +6 -4
  139. package/lib/navigation/ActivityNavigator.js +0 -61
  140. package/lib/navigation/ActivityNavigator.js.map +0 -1
  141. package/lib/navigation/ExploreNavigator.js +0 -583
  142. package/lib/navigation/ExploreNavigator.js.map +0 -1
  143. package/lib/navigation/InboxNavigator.js +0 -183
  144. package/lib/navigation/InboxNavigator.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"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":";;;;;;;;;;;;;;;;;;;AAgBA,MAAM,WAAc,GAAA,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA,KAAA;AAC7C,MAAM,YAAe,GAAA,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA,MAAA;AACzB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AAC9C,MAAM,kBAAA,GAAqB,CAAC,QAAS,CAAA,OAAA,EAAS,SAAS,OAAS,EAAA,QAAA,CAAS,MAAQ,EAAA,QAAA,CAAS,MAAM,CAAA;AAChG,MAAM,uBAA0B,GAAA,EAAA;AACzB,MAAM,cAAc,MAAM;AAC/B,EAAA,MAAM,CAAC,cAAA,EAAgB,iBAAiB,CAAA,GAAI,SAAS,CAAC,CAAA;AACtD,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,SAAS,kBAAkB,CAAkB,EAAA;AAxBjD,MAAA,IAAA,EAAA,EAAA,EAAA;AA0BM,MAAA,iBAAA,CAAA,CAAkB,EAAG,GAAA,CAAA,EAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,cAAA,KAAH,IAAmB,GAAA,MAAA,GAAA,EAAA,CAAA,MAAA,KAAnB,YAA6B,CAAC,CAAA;AAAA;AAElD,IAAA,SAAS,iBAAoB,GAAA;AAC3B,MAAA,iBAAA,CAAkB,CAAC,CAAA;AAAA;AAErB,IAAA,MAAM,gBAAmB,GAAA,QAAA,CAAS,WAAY,CAAA,iBAAA,EAAmB,iBAAiB,CAAA;AAClF,IAAA,MAAM,gBAAmB,GAAA,QAAA,CAAS,WAAY,CAAA,iBAAA,EAAmB,iBAAiB,CAAA;AAClF,IAAA,OAAO,MAAM;AACX,MAAA,gBAAA,CAAiB,MAAO,EAAA;AACxB,MAAA,gBAAA,CAAiB,MAAO,EAAA;AAAA,KAC1B;AAAA,GACF,EAAG,EAAE,CAAA;AACL,EAAO,OAAA,cAAA;AACT;AACA,MAAM,gBAAA,GAAmB,CAAC,KAAe,KAAA;AAxCzC,EAAA,IAAA,EAAA,EAAA,EAAA;AAyCE,EAAA,MAAM,aAAa,aAAmB,EAAA;AACtC,EAAM,MAAA;AAAA,IACJ,OAAA;AAAA,IACA;AAAA,MACE,eAAgB,EAAA;AACpB,EAAkB,YAAa;AAC/B,EAAM,MAAA,IAAA,GAAO,YAAY,YAAY,CAAA;AACrC,EAAA,MAAM,CAAC,QAAU,EAAA,WAAW,CAAI,GAAA,QAAA,CAAc,EAAE,CAAA;AAChD,EAAA,MAAM,CAAC,iBAAmB,EAAA,oBAAoB,CAAI,GAAA,QAAA,CAAc,EAAE,CAAA;AAElE,EAAA,MAAM,CAAC,eAAiB,EAAA,kBAAkB,CAAI,GAAA,QAAA,CAAc,EAAE,CAAA;AAC9D,EAAA,MAAM,CAAC,gBAAkB,EAAA,mBAAmB,CAAI,GAAA,QAAA,CAAc,EAAE,CAAA;AAChE,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAkB,KAAK,CAAA;AAC/D,EAAA,MAAM,CAAC,MAAA,EAAQ,SAAS,CAAA,GAAI,SAAS,CAAC,CAAA;AACtC,EAAA,MAAM,CAAC,mBAAqB,EAAA,sBAAsB,CAAI,GAAA,QAAA,CAAc,EAAE,CAAA;AACtE,EAAA,MAAM,CAAC,YAAA,EAAc,eAAe,CAAA,GAAI,SAAc,CAAC,CAAA;AACvD,EAAA,MAAM,CAAC,SAAA,EAAW,YAAY,CAAA,GAAI,SAAc,IAAI,CAAA;AACpD,EAAA,MAAM,CAAC,kBAAA,EAAoB,gBAAgB,CAAA,GAAI,SAAkB,KAAK,CAAA;AACtE,EAAA,MAAM,CAAC,kBAAA,EAAoB,qBAAqB,CAAA,GAAI,SAAkB,KAAK,CAAA;AAC3E,EAAuB,WAAY;AAInC,EAAA,MAAM,CAAC,IAAM,EAAA,OAAO,CAAI,GAAA,QAAA,CAAgB,EAAE,CAAA;AAC1C,EAAA,MAAM,iBAAiB,CAAC,GAAA,KAAA,CAAa,2BAAK,EAAK,IAAA,GAAA,IAAA,IAAA,GAAA,MAAA,GAAA,GAAA,CAAK,KAAK,GAAK,IAAA,IAAA,GAAA,MAAA,GAAA,GAAA,CAAA,MAAA;AAC9D,EAAA,MAAM,CAAC,gBAAkB,EAAA;AAAA,IACvB,OAAS,EAAA;AAAA,GACV,IAAI,6BAA8B,EAAA;AACnC,EAAM,MAAA;AAAA,IACJ,IAAA;AAAA,IACA,OAAS,EAAA,QAAA;AAAA,IACT,KAAO,EAAA,MAAA;AAAA,IACP;AAAA,MACE,0CAA2C,CAAA;AAAA,IAC7C,SAAW,EAAA;AAAA,MACT,OAAA;AAAA,MACA,eAAiB,EAAA;AAAA,QACf,OAAA;AAAA,QACA,IAAM,EAAA;AAAA,OACR;AAAA,MACA,MAAA;AAAA,MACA,KAAO,EAAA;AAAA,KACT;AAAA,IACA,WAAa,EAAA;AAAA,GACd,CAAA;AACD,EAAe,cAAA,CAAAA,cAAA,CAAM,YAAY,MAAM;AACrC,IAAQ,OAAA,CAAA;AAAA,MACN,OAAA;AAAA,MACA,eAAiB,EAAA;AAAA,QACf,OAAA;AAAA,QACA,IAAM,EAAA;AAAA,OACR;AAAA,MACA,MAAA;AAAA,MACA,KAAO,EAAA;AAAA,KACR,CAAA;AACD,IAAA,OAAO,MAAM;AAGX,MAAA,WAAA,CAAY,EAAE,CAAA;AACd,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,oBAAA,CAAqB,EAAE,CAAA;AAAA,KACzB;AAAA,GACC,EAAA,CAAC,OAAO,CAAC,CAAC,CAAA;AACb,EAAAA,cAAA,CAAM,UAAU,MAAM;AACpB,IAAA,UAAA,CAAW,UAAW,CAAA;AAAA,MACpB,YAAY,CAACC,MAAAA,kDAAgB,gBAAiB,EAAA,EAAA,OAAA,EAAS,MAAM,UAAW,CAAA,MAAA,EAC1D,EAAA,kBAAAD,cAAA,CAAA,aAAA,CAAC,iBAAc,IAAM,EAAA,EAAA,EAAI,MAAK,OAAQ,EAAA,KAAA,EAAO,SAAS,CAC1D;AAAA,KACX,CAAA;AAAA,GACH,EAAG,EAAE,CAAA;AACL,EAAAA,cAAA,CAAM,UAAU,MAAM;AA/GxB,IAAA,IAAAE,KAAAC,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAgHI,IAAA,IAAI,6BAAM,cAAgB,EAAA;AACxB,MAAM,MAAA,WAAA,GAAA,CAAmB,EAAAA,GAAAA,CAAAA,EAAAA,GAAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAA,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,mBAAN,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAsB,MAAO,CAAA,CAAC,EAAS,KAAA;AAjHtE,QAAA,IAAAA,KAAAC,GAAAC,EAAAA,GAAAA;AAiHyE,QAAA,OAAA,EAAA,CAAG,QAAQ,QAAS,CAAA,MAAA,IAAA,CAAA,CAAUF,GAAA,GAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,YAAJ,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAa,MAAU,KAAA,CAAA,KAAA,CAAKC,MAAA,EAAI,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,OAAA,KAAJ,gBAAAA,GAAa,CAAA,MAAA,CAAO,CAACE,GAAS,KAAA;AAjHjK,UAAAH,IAAAA,GAAAA;AAiHoK,UAAAA,OAAAA,CAAAA,CAAAA,GAAAA,GAAAG,OAAA,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAI,SAAJ,IAAAH,GAAAA,MAAAA,GAAAA,GAAAA,CAAU,QAAM,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA;AAAA,SAAM,CAAA,CAAA,GAAA,EAAA,GAAA,CAAKE,MAAA,EAAI,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,OAAA,KAAJ,gBAAAA,GAAa,CAAA,MAAA,CAAO,CAAC,CAAQ,KAAA;AAjHlO,UAAAF,IAAAA,GAAAA;AAiHqO,UAAA,OAAA,CAAA,CAAAA,MAAA,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,KAAH,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAS,QAAM,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA;AAAA,SAAA,CAAA;AAAA,OAAA,CAAA,KAA3N,IAAAC,GAAAA,MAAAA,GAAAA,GAAAA,CAAiO,GAAI,CAAA,CAAC,CAAW,KAAA;AAjHhR,QAAA,IAAAD,KAAAC,GAAAC,EAAAA,GAAAA,EAAAE,KAAAC,GAAAC,EAAAA,GAAAA,EAAAC,KAAAC,GAAAC,EAAAA,GAAAA;AAkHQ,QAAA,MAAM,EAAU,GAAA;AAAA,UACd,IAAI,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,EAAA;AAAA,UACP,OAAO,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,KAAA;AAAA,UACV,MAAM,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA;AAAA,SACX;AACA,QAAA,MAAM,kBAAiBP,GAAAD,GAAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAA,GAAA,CAAA,CAAE,YAAF,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAW,GAAI,CAAA,CAAC,MAAW,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,CAAA,KAA9B,gBAAAC,GAAqC,CAAA,MAAA,CAAO,CAACE,GAAS,KAAA;AAvHrF,UAAAH,IAAAA,GAAAA;AAuHwF,UAAA,OAAA,CAAA,CAAAA,MAAA,CAAE,CAAA,OAAA,KAAF,gBAAAA,GAAW,CAAA,MAAA,KAAU,MAAKG,GAAA,IAAA,IAAA,GAAA,MAAA,GAAAA,GAAI,CAAA,EAAA,MAAM,6BAAM,EAAKA,CAAAA,GAAAA,GAAAA,GAAAA,CAAKA,OAAA,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAI,QAAM,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA;AAAA,SAAA,CAAA,KAA7H,OAAAD,GAAoI,GAAA,IAAA;AAC3J,QAAM,MAAA,KAAA,GAAQ,EAAG,CAAA,IAAA,IAAQ,QAAS,CAAA,MAAA,GAAA,CAASI,GAAAD,GAAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAA,GAAA,cAAA,IAAA,IAAA,GAAA,MAAA,GAAA,cAAA,CAAgB,GAAI,CAAA,CAAC,CAAQ,KAAA;AAxHhF,UAAAJ,IAAAA,GAAAA;AAwHmF,UAAA,OAAA,CAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,aAAY,GAAOA,IAAAA,CAAAA,GAAAA,GAAA,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,UAAA,KAAH,OAAAA,GAAiB,GAAA,EAAA,CAAA;AAAA,SAAA,CAAA,KAAvE,IAAAI,GAAAA,MAAAA,GAAAA,GAAAA,CAA6E,MAAO,CAAA,CAAC,EAAY,KAAA,EAAA,CAAA,KAAjG,IAAAC,GAAAA,MAAAA,GAAAA,GAAAA,CAAsG,IAAK,CAAA,IAAA,CAAA,KAA3G,IAAAC,GAAAA,GAAAA,GAAoH,KAAK,EAAG,CAAA,KAAA;AACvK,QAAA,EAAA,CAAG,KAAQ,GAAA,KAAA;AACX,QAAA,EAAA,CAAG,YAAeC,GAAAA,CAAAA,GAAAA,GAAA,cAAe,CAAA,CAAA,CAAA,KAAf,gBAAAA,GAAmB,CAAA,OAAA;AACrC,QAAA,EAAA,CAAG,YAAe,GAAA,SAAA,CAAA,CAAUE,GAAAD,GAAAA,CAAAA,GAAAA,GAAA,cAAe,CAAA,CAAA,CAAA,KAAf,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAmB,QAAnB,KAAA,IAAA,GAAA,MAAA,GAAAC,GAA6B,CAAA,MAAA,CAAO,CAAE,CAAA,CAAA;AAClE,QAAA,EAAA,CAAG,OAAU,GAAA,cAAA;AACb,QAAA,EAAA,CAAG,eAAe,cAAgB,IAAA,IAAA,GAAA,MAAA,GAAA,cAAA,CAAA,MAAA;AAClC,QAAA,EAAA,CAAG,MAAS,GAAA,IAAA;AACZ,QAAA,EAAA,CAAG,YAAe,GAAA,KAAA;AAClB,QAAO,OAAA,EAAA;AAAA,aAfgB,IAgBrB,GAAA,MAAA,GAAA,EAAA,CAAA,MAAA,CAAO,CAAC,EAAY,KAAA,EAAA,CAAA,KAhBC,YAgBM,EAAC;AAChC,MAAM,MAAA,8BAAA,GAAiC,IAAI,GAAI,CAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,mBAAN,IAAsB,GAAA,MAAA,GAAA,EAAA,CAAA,GAAA,CAAI,CAAC,EAAS,KAAA;AAlIzF,QAAAT,IAAAA,GAAAA;AAkI4F,QAAA,OAAA,CAAAA,MAAA,EAAI,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,OAAA,KAAJ,gBAAAA,GAAa,CAAA,GAAA,CAAI,CAAC,CAAQ,KAAA;AAlItH,UAAAA,IAAAA,GAAAA;AAkIyH,UAAA,OAAA,CAAAA,GAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,IAAH,KAAA,IAAA,GAAA,MAAA,GAAAA,GAAS,CAAA,EAAA;AAAA,SAAA,CAAA;AAAA,OAA7E,CAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAmF,KAAK,CAAE,CAAA,CAAA;AACzI,MAAM,MAAA,aAAA,GAAA,CAAqB,0DAAM,sBAAN,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAA8B,SAA9B,IAAoC,GAAA,MAAA,GAAA,EAAA,CAAA,MAAA,CAAO,CAAC,CAAQ,KAAA;AAnIrF,QAAAA,IAAAA,GAAAA;AAmIwF,QAAA,OAAA,CAAA,CAAAA,MAAA,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,KAAH,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAS,QAAM,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA;AAAA,OAAA,CAAA,CAAI,MAAO,CAAA,CAAC,GAAa,KAAA,CAAC,8BAA+B,CAAA,GAAA,CAAI,GAAK,IAAA,IAAA,GAAA,MAAA,GAAA,GAAA,CAAA,MAAM,CAApJ,CAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAwJ,GAAI,CAAA,CAAC,CAAW,KAAA;AAnIzM,QAAA,IAAAA,GAAAC,EAAAA,GAAAA,EAAAC,GAAAE,EAAAA,GAAAA,EAAAC,GAAAC,EAAAA,GAAAA;AAoIQ,QAAA,MAAM,EAAU,GAAA;AAAA,UACd,EAAI,EAAA,IAAA;AAAA,UACJ,KAAON,EAAAA,CAAAA,CAAAA,GAAAA,GAAA,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,KAAH,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAS,SAAY,IAAA,GAAA,IAAA,CAAMC,GAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,IAAH,KAAA,IAAA,GAAA,MAAA,GAAAA,GAAS,CAAA,UAAA,CAAA;AAAA,UAC3C,MAAM,QAAS,CAAA,MAAA;AAAA,UACf,YAAcC,EAAAA,CAAAA,GAAAA,GAAA,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,KAAH,gBAAAA,GAAS,CAAA,OAAA;AAAA,UACvB,YAAc,EAAA,SAAA,CAAA,CAAUG,GAAAD,GAAAA,CAAAA,GAAAA,GAAA,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,KAAH,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAS,QAAT,KAAA,IAAA,GAAA,MAAA,GAAAC,GAAmB,CAAA,MAAA,CAAO,CAAE,CAAA,CAAA;AAAA,UACpD,SAAS,EAAC;AAAA,UACV,YAAc,EAAA,CAAA;AAAA,UACd,MAAQC,EAAAA,CAAAA,GAAAA,GAAA,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,KAAH,gBAAAA,GAAS,CAAA,EAAA;AAAA,UACjB,YAAc,EAAA;AAAA,SAChB;AACA,QAAO,OAAA,EAAA;AAAA,aAZkB,IAavB,GAAA,MAAA,GAAA,EAAA,CAAA,MAAA,CAAO,CAAC,EAAY,KAAA,EAAA,CAAA,KAbG,YAaI,EAAC;AAChC,MAAY,WAAA,CAAA,CAAC,WAAqB,KAAA,MAAA,CAAO,CAAC,GAAG,WAAa,EAAA,GAAG,aAAe,EAAA,GAAG,WAAW,CAAA,EAAG,CAAC;AAAA,QAC5F,EAAA;AAAA,QACA;AAAA,OACF,KAAM,EAAK,GAAA,MAAM,CAAC,CAAA;AAClB,MAAqB,oBAAA,CAAA,CAAC,WAAqB,KAAA,MAAA,CAAO,CAAC,GAAG,WAAa,EAAA,GAAG,aAAe,EAAA,GAAG,WAAW,CAAA,EAAG,CAAC;AAAA,QACrG,EAAA;AAAA,QACA;AAAA,OACF,KAAM,EAAK,GAAA,MAAM,CAAC,CAAA;AAAA;AACpB,GACF,EAAG,CAAC,IAAI,CAAC,CAAA;AACT,EAAAR,cAAA,CAAM,UAAU,MAAM;AA3JxB,IAAAE,IAAAA,GAAAA;AA4JI,IAAI,IAAA,SAAA,IAAA,CAAa,6BAAM,MAAW,MAAA,CAAA;AAAG,MAAA,YAAA,CAAa,IAAI,CAAA;AACtD,IAAA,IAAI,CAAC,SAAA,IAAA,CAAa,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,MAAA,IAAS,CAAG,EAAA;AAClC,MAAM,MAAA,OAAA,GAAU,CAAC,GAAG,IAAI,KAAIA,GAAA,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,GAAI,CAAA,CAAC,CAAQ,KAAA;AA9JrD,QAAAA,IAAAA,GAAAA;AA8JwD,QAAG,OAAA,CAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,MAAA,IAAS,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,MAAA,GAAA,CAASA,GAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAH,KAAA,IAAA,GAAA,MAAA,GAAAA,GAAY,CAAA,GAAA,CAAI,CAAC,CAAA,KAAW,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,EAAA,CAAA;AAAA,OAAA,CAAA,KAA7E,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAmF,IAAK,CAAA,CAAA,CAAE,CAAC,CAAA;AACvH,MAAA,YAAA,CAAa,OAAO,CAAA;AAAA;AAEtB,IAAA,OAAA,CAAQ,GAAI,CAAA,WAAA,EAAa,SAAW,EAAA,eAAA,EAAiB,6BAAM,MAAM,CAAA;AAAA,GAChE,EAAA,CAAC,SAAW,EAAA,IAAA,EAAM,OAAO,CAAC,CAAA;AAC7B,EAAA,MAAM,YAAe,GAAAF,cAAA,CAAM,WAAY,CAAA,OAAO,OAAmB,KAAA;AAnKnE,IAAA,IAAAE,KAAAC,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AAoKI,IAAM,MAAA,GAAA,GAAM,MAAM,gBAAiB,CAAA;AAAA,MACjC,SAAW,EAAA;AAAA,QACT,QAAU,EAAA;AAAA,UACR,OAAA;AAAA,UACA,MAAM,QAAS,CAAA,MAAA;AAAA,UACf,cAAgB,EAAA;AAAA,YACd,IAAM,EAAA,CAAC,GAAG,OAAA,EAAS,6BAAM,EAAE;AAAA;AAC7B,SACF;AAAA,QACA,KAAO,EAAA;AAAA;AACT,KACD,CAAA;AACD,IAAIA,IAAAA,CAAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAA,GAAA,GAAA,IAAA,IAAA,GAAA,MAAA,GAAA,GAAA,CAAK,IAAL,KAAA,IAAA,GAAA,MAAA,GAAAA,IAAW,cAAX,KAAA,IAAA,GAAA,MAAA,GAAAC,GAA2B,CAAA,MAAA,IAAS,CAAG,EAAA;AACzC,MAAA,YAAA,CAAA,CAAa,4CAAK,IAAL,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAW,mBAAX,IAA4B,GAAA,MAAA,GAAA,EAAA,CAAA,CAAA,CAAA,KAA5B,mBAAgC,EAAE,CAAA;AAC/C,MAAA,gBAAA,CAAiB,IAAI,CAAA;AACrB,MAAA,qBAAA,CAAsB,KAAK,CAAA;AAAA,KACtB,MAAA;AACL,MAAA,YAAA,CAAa,IAAI,CAAA;AACjB,MAAA,gBAAA,CAAiB,KAAK,CAAA;AACtB,MAAA,qBAAA,CAAsB,IAAI,CAAA;AAAA;AAC5B,GAUC,EAAA,CAAC,OAAS,EAAA,IAAI,CAAC,CAAA;AAmFlB,EAAuBH,cAAA,CAAM,WAAY,CAAA,CAAC,IAAc,KAAA;AAEtD,IAAA,SAAA,CAAU,IAAI,CAAA;AACd,IAAA,IAAI,gBAAkB,EAAA;AACpB,MAAA,MAAM,SAAY,GAAA,gBAAA,CAAiB,SAAU,CAAA,CAAC,EAAY,KAAA,CAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,EAAM,MAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,EAAM,CAAA,IAAA,CAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,MAAU,MAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,MAAM,CAAA,CAAA;AAC1G,MAAA,MAAM,oBAAuB,GAAA,SAAA,KAAc,EAAK,GAAA,CAAC,GAAG,gBAAkB,EAAA;AAAA,QACpE,IAAI,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA;AAAA,QACV,QAAQ,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA;AAAA,OACf,CAAA,GAAI,gBAAkB,IAAA,IAAA,GAAA,MAAA,GAAA,gBAAA,CAAA,MAAA,CAAO,CAAC,EAAY,KAAA,CAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,YAAe,IAAA,CAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,MAAW,OAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,MAAS,CAAA,GAAA,CAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,SAAO,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AAC/G,MAAA,mBAAA,CAAoB,oBAAoB,CAAA;AAAA;AAC1C,GACF,EAAG,CAAC,gBAAgB,CAAC;AACrB,EAAA,MAAM,SAAY,GAAAA,cAAA,CAAM,WAAY,CAAA,CAAC,IAAc,KAAA;AAAA,GAQnD,EAAG,CAAC,OAAO,CAAC,CAAA;AACZ,EAAA,MAAM,wBAA2B,GAAA,WAAA,CAAY,CAAC,IAAA,EAAW,SAA6B,KAAe,KAAA;AA1SvG,IAAA,IAAAE,KAAAC,GAAA,EAAA,EAAA,EAAA,EAAA;AA2SI,IAAA,uBAAQH,cAAA,CAAA,aAAA,CAAA,gBAAA,EAAA,EAAiB,GAAK,EAAA,CAAA,oBAAA,EAAuB,SAAS,KAAO,EAAA;AAAA,MACnE,cAAgB,EAAA;AAAA,KAClB,EAAG,SAAS,MAAM,OAAA,CAAQ,IAAI,CAClB,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,MAAO,EAAA,EAAA,IAAA,EAAM,CAAG,EAAA,EAAA,EAAI,SAAS,UAAY,EAAA,QAAA,EAAU,cAAgB,EAAA,eAAA,EAAA,kBAC/DA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAO,MAAM,CAAG,EAAA,UAAA,EAAY,QAAU,EAAA,KAAA,EAAO,IAC1C,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,OAAI,CAAG,EAAA,IAAA,EAAM,CAAG,EAAA,IAAA,EAAA,EACZ,IAAK,CAAA,IAAA,IAAQ,SAAS,MAAS,mBAAAA,cAAA,CAAA,aAAA,CAAC,MAAO,EAAA,EAAA,IAAA,EAAM,IAAM,EAAA,EAAA,EAAI,iCAC/CA,cAAA,CAAA,aAAA,CAAA,kBAAA,EAAA,IAAA,EAAoB,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,YAAa,CACxC,kBAAAA,cAAA,CAAA,aAAA,CAAC,eAAY,GAAI,EAAA,OAAA,EAAQ,IAAM,EAAA,IAAA,EAAM,KAAO,EAAA;AAAA,MAGhE,YAAc,EAAA,CAAA;AAAA,MACd,WAAa,EAAA,CAAA;AAAA,MACb,WAAa,EAAA;AAAA,OACZ,MAAQ,EAAA;AAAA,MACT,KAAK,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA;AAAA,KACV,EAAA,CAAA,EAAA,CACoB,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,YAAA,IAAe,CAAI,mBAAAA,cAAA,CAAA,aAAA;AAAA,MAAC,WAAA;AAAA,MAAA;AAAA,QAEjD,KAAO,EAAA,KAAA;AAAA,QAAO,MAAQ,EAAA,KAAA;AAAA,QAEtB,KAAO,EAAA;AAAA,UACL,KAAO,EAAA,EAAA;AAAA,UACP,MAAQ,EAAA;AAAA,SACV;AAAA,QAAG,UAAY,EAAA,QAAA;AAAA,QAAU,EAAI,EAAA,SAAA;AAAA,QAE7B,OAAS,EAAA;AAAA,OAAA;AAAA,sBACqBA,cAAA,CAAA,aAAA,CAAC,QAAK,KAAO,EAAA;AAAA,QACvC,QAAU,EAAA,EAAA;AAAA,QACV,UAAY,EAAA,MAAA;AAAA,QACZ,KAAO,EAAA;AAAA,OACT,EAAA,EACiC,6BAAM,YACX;AAAA,KACJ,mBAAkBA,cAAA,CAAA,aAAA,CAAA,WAAA,EAAA,EAAY,KAAO,EAAA;AAAA,MAC7D,KAAO,EAAA,EAAA;AAAA,MACP,MAAQ,EAAA;AAAA,KACV,EAAG,IAAG,WAAY,EAAA,CACA,IAAY,IAAK,CAAA,IAAA,IAAQ,SAAS,OAAU,mBAAAA,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,+CACvC,QAAS,EAAA,EAAA,KAAA,EAAM,SAAQ,IAAK,EAAA,MAAA,EAAO,MAAM,EAAI,EAAA,CAClD,oBAAOA,cAAA,CAAA,aAAA,CAAA,QAAA,EAAA,EAAS,OAAM,OAAQ,EAAA,IAAA,EAAK,QAAO,IAAM,EAAA,EAAA,EAAI,CAC5D,CACA,kBAAAA,cAAA,CAAA,aAAA,CAAC,QAAK,KAAM,EAAA,cAAA,EAAe,YAAW,OACjC,EAAA,EAAA,IAAA,CAAK,KACV,CACJ,CAAA,+CAEC,QAAS,EAAA,EAAA,KAAA,EAAO,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,EAAI,SAAW,EAAA,gBAAA,IAAA,CAAA,CAAoBE,MAAA,gBAAkB,IAAA,IAAA,GAAA,MAAA,GAAA,gBAAA,CAAA,MAAA,CAAO,CAAC,EAAY,KAAA,CAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,SAAO,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA,IAAA,CAAM,yBAAI,MAAW,OAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,aAAlF,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAA2F,UAAS,CAAI,GAAA,IAAA,GAAO,OAAO,kBAAoBC,EAAAA,CAAAA,GAAAA,GAAA,KAAK,KAAL,KAAA,IAAA,GAAAA,MAAc,EAAI,EAAA,YAAA,EAAA,CAAY,UAAK,KAAL,KAAA,IAAA,GAAA,EAAA,GAAc,IAAI,iBAAiB,EAAA,CAAA,EAAA,GAAA,IAAA,CAAK,UAAL,IAAc,GAAA,EAAA,GAAA,EAAA,EAAI,aAAa,cAChS,EAAA,kBAAAH,cAAA,CAAA,aAAA,CAAC,yCACIA,cAAA,CAAA,aAAA,CAAA,YAAA,EAAA,EAAa,IAAI,SAAW,EAAA,CACjC,CACJ,CACJ,CACJ,CAAA;AAAA,GACV,EAAG,EAAE,CAAA;AACL,EAAM,MAAA,iBAAA,GAAoB,WAAY,CAAA,CAAC,IAAc,KAAA;AAlWvD,IAAA,IAAAE,GAAAC,EAAAA,GAAAA;AAmWI,IAAA,IAAI,IAAM,EAAA;AACR,MAAM,MAAA,SAAA,GAAY,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,SAAA,CAAU,CAAC,EAAA,KAAA,CAAY,EAAI,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,EAAA,MAAM,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA,IAAA,CAAM,EAAI,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAA,MAAU,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,MAAA,CAAA,CAAA;AACzF,MAAA,IAAI,cAAc,EAAI,EAAA;AAEpB,QAAA,IAAA,CAAI,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,KAAA,CAAM,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,IAAA,MAAS,SAAS,MAAQ,EAAA;AAC9C,UAAA,YAAA,CAAa,6BAAM,EAAE,CAAA;AACrB,UAAA,gBAAA,CAAiB,IAAI,CAAA;AACrB,UAAQ,OAAA,CAAA,CAAC,IAAI,CAAC,CAAA;AAAA,SACT,MAAA;AACL,UAAA,MAAM,YAAeD,GAAAA,CAAAA,GAAAA,GAAA,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,MAAA,CAAO,CAAC,CAAA,KAAA,CAAW,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,OAAS,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,IAAA,CAAA,CAAA,KAA3C,IAAAA,GAAAA,GAAAA,GAAoD,EAAC;AAC1E,UAAA,MAAM,cAAc,CAAC,GAAI,YAAgB,IAAA,IAAA,GAAA,YAAA,GAAA,IAAK,IAAI,CAAA;AAClD,UAAA,OAAA,CAAQ,WAAW,CAAA;AACnB,UAAM,MAAA,OAAA,GAAU,CAAC,GAAG,IAAI,KAAIC,GAAA,GAAA,WAAA,IAAA,IAAA,GAAA,MAAA,GAAA,WAAA,CAAa,GAAI,CAAA,CAAC,CAAQ,KAAA;AA/WhE,YAAAD,IAAAA,GAAAA;AA+WmE,YAAG,OAAA,CAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,MAAA,IAAS,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,MAAA,GAAA,CAASA,GAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAH,KAAA,IAAA,GAAA,MAAA,GAAAA,GAAY,CAAA,GAAA,CAAI,CAAC,CAAA,KAAW,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,EAAA,CAAA;AAAA,WAAA,CAAA,KAApF,IAAAC,GAAAA,MAAAA,GAAAA,GAAAA,CAA0F,IAAK,CAAA,CAAA,CAAE,CAAC,CAAA;AAC9H,UAAA,YAAA,CAAa,OAAO,CAAA;AAAA;AACtB;AACF;AACF,GACC,EAAA,CAAC,IAAM,EAAA,OAAO,CAAC,CAAA;AAClB,EAAM,MAAA,UAAA,GAAa,WAAY,CAAA,CAAC,IAAc,KAAA;AAC5C,IAAA,IAAI,IAAM,EAAA;AACR,MAAA,MAAM,aAAgB,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,MAAO,CAAA,CAAC,EAAY,KAAA,CAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,YAAe,IAAA,CAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,MAAW,OAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,MAAS,CAAA,GAAA,CAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,SAAO,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,EAAA,CAAA,CAAA;AACpH,MAAA,OAAA,CAAQ,aAAa,CAAA;AACrB,MAAA,OAAA,CAAQ,IAAI,UAAU,CAAA;AAAA;AACxB,GACF,EAAG,CAAC,IAAI,CAAC,CAAA;AACT,EAAA,MAAM,kBAAqB,GAAA,WAAA,CAAY,CAAC,IAAA,EAAgB,OAAe,YAAsB,KAAA;AAC3F,IAAO,uBAAAH,cAAA,CAAA,aAAA,CAAC,OAAI,CAAG,EAAA,IAAA,EAAM,GAAG,IACX,EAAA,EAAA,IAAA,IAAQ,QAAS,CAAA,MAAA,mBAAUA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAO,MAAM,IAAM,EAAA,EAAA,EAAI,aAAe,EAAA,YAAA,EAAc,CACxE,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,eAAY,GAAI,EAAA,OAAA,EAAQ,IAAM,EAAA,IAAA,EAAM,KAAO,EAAA;AAAA,MAG1D,YAAc,EAAA,CAAA;AAAA,MACd,WAAa,EAAA,CAAA;AAAA,MACb,WAAa,EAAA;AAAA,OACZ,MAAQ,EAAA;AAAA,MACT,GAAK,EAAA;AAAA,KACJ,EAAA,CAAA,kBAEcA,cAAA,CAAA,aAAA,CAAA,kBAAA,EAAA,IAAA,EAAoB,YAAa,CACtC,CAAY,GAAA,IAAA,IAAQ,QAAS,CAAA,OAAA,mBACzBA,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,QAAS,EAAA,EAAA,KAAA,EAAM,OAAQ,EAAA,IAAA,EAAK,MAAO,EAAA,IAAA,EAAM,EAAI,EAAA,CAClD,CAAM,mBAAAA,cAAA,CAAA,aAAA,CAAC,QAAS,EAAA,EAAA,KAAA,EAAM,OAAQ,EAAA,IAAA,EAAK,MAAO,EAAA,IAAA,EAAM,IAAI,CAC5D,CAAA;AAAA,GACV,EAAG,EAAE,CAAA;AACL,EAAA,MAAM,gBAAgB,WAAY,CAAA,CAAC,OAAe,IAAgB,EAAA,KAAA,EAAe,cAAmB,GAAa,KAAA;AAC/G,IAAA,uBAAQA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAO,UAAY,EAAA,QAAA,EAAU,KAAO,EAAA,IAAA,EAAM,EAAI,EAAA,IAAA,EAAM,GAAK,EAAA,CAAA,iBAAA,EAAoB,GACxE,CAAA,CAAA,EAAA,EAAA,kBAAA,CAAmB,MAAM,KAAO,EAAA,YAAY,CAC7C,kBAAAA,cAAA,CAAA,aAAA,CAAC,GAAI,EAAA,EAAA,EAAA,EAAI,eACL,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,KAAA,EAAO,cAAgB,EAAA,SAAA,EAAW,QAAU,EAAA,IAAA,EAAI,IACjD,EAAA,EAAA,KACL,CACJ,CACJ,CAAA;AAAA,GACV,EAAG,EAAE,CAAA;AACL,EAAA,MAAM,SAAY,GAAA,WAAA,CAAY,CAAC,IAAA,EAAW,SAA6B,KAAe,KAAA;AAzZxF,IAAAE,IAAAA,GAAAA;AA0ZI,IAAO,uBAAAF,cAAA,CAAA,aAAA,CAAC,oBAAiB,OAAS,EAAA,MAAM,QAAQ,IAAI,CAAA,EAAG,GAAK,EAAA,CAAA,aAAA,EAAgB,KAC/D,CAAA,CAAA,EAAA,EAAA,IAAA,CAAK,iBAAgB,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,IAAA,KAAQ,SAAS,MAAS,mBAAAA,cAAA,CAAA,aAAA,CAAC,OAAI,EAAI,EAAA,IAAA,EAAA,EACtD,aAAc,CAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,KAAO,EAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,MAAM,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,YAAA,EAAc,6BAAM,YAAc,EAAA,KAAK,CACzF,CAAS,mBAAAA,cAAA,CAAA,aAAA,CAAC,MAAO,EAAA,EAAA,UAAA,EAAY,QAAU,EAAA,KAAA,EAAO,MAAM,EAAI,EAAA,IAAA,EAAA,EAAA,CACnDE,MAAA,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,OAAA,KAAN,gBAAAA,GAAe,CAAA,GAAA,CAAI,CAAC,CAAA,EAAQ,CAAW,KAAA;AA9ZhE,MAAAA,IAAAA,GAAAA;AA+ZU,MAAM,MAAA,KAAA,GAAA,CAAQ,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,IAAA,KAAQ,QAAS,CAAA,MAAA,GAAA,CAAS,uBAAG,SAAY,IAAA,GAAA,IAAM,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,UAAA,CAAA,GAAa,IAAK,CAAA,KAAA;AACxF,MAAM,MAAA,OAAA,GAAU,WAAUA,GAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,aAAH,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAa,OAAO,CAAE,CAAA,CAAA;AAChD,MAAA,OAAO,cAAc,KAAO,EAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,MAAM,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,OAAA,EAAS,SAAS,CAAC,CAAA;AAAA,MAEpD,CACR,CAAA;AAAA,GACV,EAAG,EAAE,CAAA;AACL,EAAO,uBAAAF,cAAA,CAAA,aAAA,CAAC,OAAI,IAAM,EAAA,CAAA,EAAG,IAAI,QAAU,EAAA,CAAA,EAAG,WAAa,EAAA,CAAA,EAAG,YAC5C,EAAA,kBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,UAAA;AAAA,IAAA;AAAA,MAAW,IAAA;AAAA,MAAY,WAAa,EAAA,QAAA;AAAA,MAAU,YAAc,EAAA,OAAA;AAAA,MAAS,cAAA;AAAA,MAAgC,eAAiB,EAAA,KAAA;AAAA,MAAO,kBAAA;AAAA,MAAwC,iBAAA,EAAmB,sBAAMA,cAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,EAAA,EAAI,MAAM,EAAI,EAAA,IAAA,EAAM,QAAU,EAAA,EAAA,EAAA,EAAI,KAE/N,CAAA;AAAA,MAMhB,iBAAmB,EAAA;AAAA,QACjB,iBAAmB,EAAA,CAAA;AAAA,QACnB,WAAa,EAAA,SAAA;AAAA,QACb,eAAiB,EAAA;AAAA,OACnB;AAAA,MAAG,UAAY,EAAA;AAAA,QACb,WAAa,EAAA,sCAAA;AAAA,QACb,oBAAsB,EAAA,SAAA;AAAA,QACtB,cAAgB,EAAA,MAAA;AAAA,QAChB,WAAa,EAAA;AAAA,OACf;AAAA,MAAG,UAAY,EAAA;AAAA,QACb,QAAU,EAAA,EAAA;AAAA,QACV,MAAQ,EAAA;AAAA,OACV;AAAA,MAAG,wBAA0B,EAAA;AAAA,QAC3B,IAAM,EAAA,CAAA;AAAA,QACN,EAAI,EAAA,KAAA;AAAA,QAEJ,qBAAuB,EAAA;AAAA,UACrB,IAAM,EAAA,CAAA;AAAA,UACN,YAAc,EAAA,GAAA;AAAA,UACd,eAAiB,EAAA,OAAA;AAAA,UACjB,iBAAmB,EAAA;AAAA;AACrB,OACF;AAAA,MAAG,aAAe,EAAA;AAAA,QAChB,SAAW,EAAA,MAAA;AAAA,QACX,QAAU,EAAA;AAAA,OAEZ;AAAA,MAAG,gBAAkB,EAAA,wBAAA;AAAA,MAA0B,iBAAA,EAAmB,CAAC,IAAiB,KAAA;AAClF,QAAI,IAAA,CAAC,IAAQ,IAAA,IAAA,KAAS,EAAI,EAAA;AACxB,UAAA,OAAO,EAAC;AAAA;AAEV,QAAO,OAAA,QAAA,IAAA,IAAA,GAAA,MAAA,GAAA,QAAA,CAAU,MAAO,CAAA,CAAC,IAAW,KAAA;AA7c1C,UAAA,IAAAE,GAAAC,EAAAA,GAAAA;AA6c6C,UAAAA,OAAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAA,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,KAAN,KAAA,IAAA,GAAA,MAAA,GAAAA,IAAa,WAAb,EAAA,KAAA,IAAA,GAAA,MAAA,GAAAC,GAA4B,CAAA,QAAA,CAAS,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,WAAA,EAAA,CAAA;AAAA,SAAA,CAAA;AAAA,OACpF;AAAA,MAAG,iBAAA;AAAA,MAAsC,SAAA;AAAA,MAAsB;AAAA;AAAA,GACvD,kBAAAH,cAAA,CAAA,aAAA,CAAC,GAAI,EAAA,EAAA,IAAA,EAAM,KACN,sBAAyB,mBAAAA,cAAA,CAAA,aAAA,CAAC,qBAAsB,EAAA,IAAA,CAAA,gDAAM,cAAmB,EAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAAA,KAAA,CAAA,EAAnB,EAA0B,SAAA,EAAsB,oBAAwC,cAAgB,EAAA;AAAA,IACvK,OAAM,EAAU,GAAA,QAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAA,MAAA;AAAA,IAChB,OAAA,EAAS,CAAC,GAAG,IAAI,KAAI,EAAM,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,GAAA,CAAI,CAAC,CAAQ,KAAA;AAldhD,MAAAE,IAAAA,GAAAA;AAkdmD,MAAG,OAAA,CAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,MAAA,IAAS,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,MAAA,GAAA,CAASA,GAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,OAAH,KAAA,IAAA,GAAA,MAAA,GAAAA,GAAY,CAAA,GAAA,CAAI,CAAC,CAAA,KAAW,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,EAAA,CAAA;AAAA,KAA7E,CAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAmF,IAAK,CAAA,CAAA,CAAE,CAAC;AAAA,GAClH,EAAA,CAAG,CACG,CACJ,CAAA;AACR,CAAA;AACA,yBAAeF,cAAA,CAAM,KAAK,gBAAgB,CAAA"}
1
+ {"version":3,"file":"SearchAddChannel.js","sources":["../../../src/screens/Search/SearchAddChannel.tsx"],"sourcesContent":["import React, { useState, useEffect, useCallback, useRef } 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 VStack,\n ScrollView,\n} from '@admin-layout/gluestack-ui-mobile';\nimport {\n TouchableOpacity,\n Dimensions,\n Keyboard,\n KeyboardEvent,\n TextInput,\n View,\n StyleSheet,\n SafeAreaView,\n Platform,\n FlatList,\n} from 'react-native';\nimport { RoomType } from 'common';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { AntDesign, SimpleLineIcons, MaterialCommunityIcons, Entypo } 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 { Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { useDrawerLayout } from '../../hooks';\nimport { LoadingSpinnerDefault, SlackInput } from '../../components';\nimport colors from 'tailwindcss/colors';\nimport {\n useChannelsLazyQuery,\n useChannelDetailLazyQuery,\n useAddDirectChannelMutation,\n useAddChannelMutation,\n useSaveMembersToChannelMutation,\n useOrganizationMembersWithChannelsQuery,\n} from '../../queries/slackuiQueries';\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\n// const listData = [\n// { id: 'header1', type: 'header', title: 'Message with external people' },\n// { id: 'figma', title: 'Figma', type: 'app', appName: 'figma' },\n// { id: 'github', title: 'GitHub (deactivated)', type: 'app', appName: 'github' },\n// { id: 'huzaifa', title: 'Huzaifa Ali', type: 'user', picture: 'https://i.pravatar.cc/150?img=33' },\n// { id: 'muflah', title: 'Muflah Nasir', type: 'user', picture: 'https://i.pravatar.cc/150?img=60' },\n// { id: 'shubham', title: 'Shubham A', type: 'user', picture: 'https://i.pravatar.cc/150?img=12' },\n// { id: 'shubhamk', title: 'Shubham K', type: 'user', picture: 'https://i.pravatar.cc/150?img=11' },\n// { id: 'cdecode', title: 'cdecode', type: 'private' },\n// { id: 'general', title: 'general', type: 'channel' },\n// { id: 'mobile', title: 'mobile', type: 'private' },\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 [selectedItems, setSelectedItems] = useState<any[]>([]);\n const [searchText, setSearchText] = useState('');\n const [offset, setOffset] = useState(0);\n const [channelId, setChannelId] = useState<any>(null);\n const [isCreateNewChannel, setIsCreateNewChannel] = useState<boolean>(false);\n const keyboardHeight = useKeyboard();\n const inputRef = useRef<TextInput>(null);\n const [tags, setTags] = useState<any[]>([]);\n const labelExtractor = (tag: any) => (tag?.id ? tag?.id : tag?.userId);\n const [getChannelByUser, { loading: isChannelByUserLoading }] = useChannelsLazyQuery();\n const [addDirectChannel, { loading: isAddingDirectChannel }] = useAddDirectChannelMutation();\n const [addChannel, { loading: isAddingChannel }] = useAddChannelMutation();\n const [saveMembersToChannel, { loading: isSavingMembers }] = useSaveMembersToChannelMutation();\n const [messageText, setMessageText] = useState('');\n const {\n data,\n loading: oLoading,\n error: oError,\n refetch,\n } = useOrganizationMembersWithChannelsQuery(orgName, {\n channelCriteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n offset: offset,\n limit: orgMemersDataFetchLimit,\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 }, []),\n );\n\n React.useEffect(() => {\n navigation.setOptions({\n headerLeft: (props: any) => (\n <TouchableOpacity\n onPress={() => {\n console.log('canGoBack:', navigation.canGoBack(), 'Platform:', Platform.OS);\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 <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 setIsCreateNewChannel(false);\n } else {\n setChannelId(null);\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 // Toggle selection of an item\n const toggleItemSelection = (item: any) => {\n const itemExists = selectedItems.some(\n (selectedItem) =>\n (selectedItem.id && selectedItem.id === item.id) ||\n (selectedItem.userId && selectedItem.userId === item.userId),\n );\n\n if (itemExists) {\n setSelectedItems(\n selectedItems.filter(\n (selectedItem) =>\n !(\n (selectedItem.id && selectedItem.id === item.id) ||\n (selectedItem.userId && selectedItem.userId === item.userId)\n ),\n ),\n );\n } else {\n // If item type is Channel or Private, only select this item and clear others\n if (item.type === RoomType.Channel || item.type === RoomType.Private) {\n setSelectedItems([item]);\n } else if (item.type === RoomType.Direct) {\n // If item type is Direct, remove any Channel/Private selections but keep other Direct selections\n const filteredSelectedItems = selectedItems.filter(\n (selectedItem) => selectedItem.type !== RoomType.Channel && selectedItem.type !== RoomType.Private,\n );\n setSelectedItems([...filteredSelectedItems, item]);\n } else {\n setSelectedItems([...selectedItems, item]);\n }\n }\n };\n\n // Check if an item is selected\n const isItemSelected = (item: any) => {\n return selectedItems.some(\n (selectedItem) =>\n (selectedItem.id && selectedItem.id === item.id) ||\n (selectedItem.userId && selectedItem.userId === item.userId),\n );\n };\n\n // Remove a selected item (chip)\n const removeSelectedItem = (item: any) => {\n setSelectedItems(\n selectedItems.filter(\n (selectedItem) =>\n !(\n (selectedItem.id && selectedItem.id === item.id) ||\n (selectedItem.userId && selectedItem.userId === item.userId)\n ),\n ),\n );\n };\n\n // Handle creating channel or sending message\n const handleSendMessage = async () => {\n if (selectedItems.length === 0) return;\n\n try {\n // If there's an existing channel ID, use it\n const selectedChannel = selectedItems[0] || {};\n if (selectedChannel && Object.keys(selectedChannel).length > 0) {\n // Navigate to existing channel\n navigation.navigate(NavigationRoutes.DialogMessages, {\n initialMessage: messageText,\n channelId: selectedChannel?.id?.toString(),\n title: selectedChannel?.title?.toString(),\n totalMembers: selectedChannel?.totalMembers,\n channelType: selectedChannel?.type,\n orgName: orgName,\n hideTabBar: true,\n });\n return;\n }\n\n if (channelId) {\n // Navigate to existing channel\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId,\n initialMessage: messageText,\n orgName: orgName,\n });\n return;\n }\n\n // Create new channel\n if (isCreateNewChannel) {\n if (\n selectedItems[0].type === RoomType.Direct ||\n (selectedItems.length === 1 && selectedItems[0].isOrgMembers)\n ) {\n // Create direct channel\n const userIds = selectedItems\n .map((item) => item.userId || (item.members?.length > 0 ? item.members[0]?.id : null))\n .filter(Boolean);\n\n const result = await addDirectChannel({\n variables: {\n receiver: userIds,\n displayName: 'Direct Channel',\n },\n });\n\n if (result.data?.createDirectChannel) {\n const newChannelId = result.data.createDirectChannel;\n navigation.navigate('ChannelInfo', {\n channelId: newChannelId,\n initialMessage: messageText,\n orgName: orgName,\n });\n }\n } else {\n // Create multi-user channel\n // For simplicity, using first user's name for channel title\n const userIds = selectedItems\n .map((item) => item.userId || (item.members?.length > 0 ? item.members[0]?.id : null))\n .filter(Boolean);\n\n const result = await addChannel({\n variables: {\n name: `${selectedItems[0].title}'s chat`,\n description: '',\n type: RoomType.Direct,\n },\n });\n\n if (result.data?.createChannel) {\n const newChannelId = result.data.createChannel.id;\n\n // Add other members to the channel\n if (userIds.length > 0) {\n await saveMembersToChannel({\n variables: {\n channelId: newChannelId,\n membersIds: userIds,\n },\n });\n }\n\n navigation.navigate('ChannelInfo', {\n channelId: newChannelId,\n initialMessage: messageText,\n orgName: orgName,\n });\n }\n }\n }\n } catch (error) {\n console.error('Error creating channel:', error);\n }\n };\n\n // Render a selected item as a chip in the To: field\n const renderSelectedItemChip = (item: any, index: number) => {\n return (\n <View key={index} style={styles.chipContainer}>\n <Avatar size=\"xs\" style={styles.chipAvatar}>\n {item.channelImage ? (\n <AvatarImage source={{ uri: item.channelImage }} alt={item.title} />\n ) : (\n <AvatarFallbackText>{item.imageAcronym || item.title.charAt(0)}</AvatarFallbackText>\n )}\n </Avatar>\n <Text style={styles.chipText}>{item.title}</Text>\n </View>\n );\n };\n\n // Render list items (channels and users)\n const renderListItem = (item: any, index: number) => {\n // if (item.type === 'header') {\n // return (\n // <HStack key={index} style={styles.sectionHeader}>\n // <SimpleLineIcons name=\"bell\" size={16} color=\"#2563EB\" />\n // <Text style={styles.sectionHeaderText}>{item.title}</Text>\n // </HStack>\n // );\n // }\n\n return (\n <HStack key={index} style={styles.listItem}>\n <HStack style={styles.listItemLeft}>\n {/* {item.type === 'app' && item.appName === 'figma' && (\n <View style={styles.iconContainer}>\n <MaterialCommunityIcons name=\"sigma\" size={20} color=\"#F24E1E\" />\n </View>\n )} */}\n\n {/* {item.type === 'app' && item.appName === 'github' && (\n <View style={styles.iconContainer}>\n <AntDesign name=\"github\" size={20} color=\"#000\" />\n </View>\n )} */}\n\n {item.type == RoomType.Channel && (\n <View style={styles.iconContainer}>\n <Octicons name=\"hash\" size={20} color=\"#000\" />\n </View>\n )}\n\n {item.type == RoomType.Private && (\n <View style={styles.iconContainer}>\n <Octicons name=\"lock\" size={20} color=\"#000\" />\n </View>\n )}\n\n {item.type == RoomType.Direct && (\n <Avatar size=\"sm\" style={styles.userAvatar}>\n {item.channelImage ? (\n <AvatarImage source={{ uri: item.channelImage }} alt={item.title} />\n ) : (\n <AvatarFallbackText>{item.title.charAt(0)}</AvatarFallbackText>\n )}\n <AvatarBadge style={styles.onlineBadge} />\n </Avatar>\n )}\n\n <HStack style={styles.titleContainer}>\n <Text style={styles.itemTitle}>{item.title}</Text>\n {item.type === 'app' && (\n <View style={styles.appLabel}>\n <Text style={styles.appLabelText}>APP</Text>\n </View>\n )}\n </HStack>\n </HStack>\n\n <TouchableOpacity onPress={() => toggleItemSelection(item)}>\n {isItemSelected(item) ? (\n <View style={styles.checkedBox}>\n <Feather name=\"check\" size={18} color=\"#fff\" />\n </View>\n ) : (\n <View style={styles.uncheckedBox} />\n )}\n </TouchableOpacity>\n </HStack>\n );\n };\n\n // Sample data for the channel list\n // const listData = [\n // { id: 'header1', type: 'header', title: 'Message with external people' },\n // { id: 'figma', title: 'Figma', type: 'app', appName: 'figma' },\n // { id: 'github', title: 'GitHub (deactivated)', type: 'app', appName: 'github' },\n // { id: 'huzaifa', title: 'Huzaifa Ali', type: 'user', picture: 'https://i.pravatar.cc/150?img=33' },\n // { id: 'muflah', title: 'Muflah Nasir', type: 'user', picture: 'https://i.pravatar.cc/150?img=60' },\n // { id: 'shubham', title: 'Shubham A', type: 'user', picture: 'https://i.pravatar.cc/150?img=12' },\n // { id: 'shubhamk', title: 'Shubham K', type: 'user', picture: 'https://i.pravatar.cc/150?img=11' },\n // { id: 'cdecode', title: 'cdecode', type: 'private' },\n // { id: 'general', title: 'general', type: 'channel' },\n // { id: 'mobile', title: 'mobile', type: 'private' },\n // ];\n\n // const listData = [{ id: 'header1', type: 'header', title: 'Message with external people' }, ...channels];\n const listData = [...channels];\n\n const filteredData = searchText.trim()\n ? listData.filter(\n (item) => item.type !== 'header' && item.title.toLowerCase().includes(searchText.toLowerCase()),\n )\n : listData;\n\n return (\n <SafeAreaView style={{ flex: 1, backgroundColor: '#fff' }}>\n <Box style={styles.container}>\n {/* To: field with search */}\n <HStack style={styles.searchContainer}>\n <Text style={styles.toLabel}>To:</Text>\n <View style={styles.chipContainerWrapper}>\n <View style={styles.chipWrapView}>\n {selectedItems.map(renderSelectedItemChip)}\n <TextInput\n ref={inputRef}\n style={styles.searchInput}\n placeholder={selectedItems.length ? '' : 'Search for a channel or conversation'}\n placeholderTextColor=\"#9CA3AF\"\n value={searchText}\n onChange={(event) => setSearchText(event.nativeEvent.text)}\n />\n </View>\n </View>\n </HStack>\n\n {/* List of channels and people */}\n <FlatList\n style={styles.listContainer}\n data={filteredData}\n renderItem={({ item, index }) => renderListItem(item, index)}\n keyExtractor={(item, index) => item.id?.toString() || item.userId?.toString() || index.toString()}\n showsVerticalScrollIndicator={false}\n />\n\n {/* Message input at bottom */}\n <HStack style={styles.messageInputContainer}>\n <TextInput\n style={styles.messageInput}\n placeholder={`Message ${selectedItems.map((item) => item.title).join(', ')}`}\n placeholderTextColor=\"#9CA3AF\"\n value={messageText}\n onChangeText={setMessageText}\n />\n <TouchableOpacity style={styles.sendButton} onPress={handleSendMessage}>\n <Feather name=\"arrow-right\" size={22} color=\"#fff\" />\n </TouchableOpacity>\n </HStack>\n </Box>\n </SafeAreaView>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n backgroundColor: '#fff',\n },\n header: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n paddingHorizontal: 16,\n paddingVertical: 12,\n borderBottomWidth: 1,\n borderBottomColor: '#E5E5E5',\n },\n headerTitle: {\n fontSize: 18,\n fontWeight: 'bold',\n },\n searchContainer: {\n paddingHorizontal: 16,\n paddingVertical: 12,\n borderBottomWidth: 1,\n borderBottomColor: '#E5E5E5',\n flexDirection: 'row',\n alignItems: 'flex-start',\n },\n toLabel: {\n fontSize: 16,\n marginRight: 8,\n marginTop: 8,\n color: '#374151',\n },\n chipContainerWrapper: {\n flex: 1,\n },\n chipWrapView: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n },\n chipScrollView: {\n flex: 1,\n },\n chipScrollContent: {\n alignItems: 'center',\n flexDirection: 'row',\n flexWrap: 'wrap',\n },\n chipContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n backgroundColor: '#EFF6FF',\n borderRadius: 4,\n paddingHorizontal: 8,\n paddingVertical: 6,\n marginRight: 8,\n marginBottom: 8,\n },\n chipAvatar: {\n width: 20,\n height: 20,\n marginRight: 4,\n },\n chipText: {\n color: '#1E40AF',\n fontSize: 14,\n },\n searchInput: {\n flex: 1,\n height: 40,\n fontSize: 16,\n minWidth: 100,\n },\n listContainer: {\n flex: 1,\n },\n sectionHeader: {\n flexDirection: 'row',\n alignItems: 'center',\n padding: 16,\n paddingBottom: 8,\n },\n sectionHeaderText: {\n marginLeft: 8,\n fontWeight: 'bold',\n fontSize: 16,\n color: '#374151',\n },\n listItem: {\n flexDirection: 'row',\n alignItems: 'center',\n justifyContent: 'space-between',\n paddingHorizontal: 16,\n paddingVertical: 12,\n },\n listItemLeft: {\n flexDirection: 'row',\n alignItems: 'center',\n flex: 1,\n },\n iconContainer: {\n width: 24,\n height: 24,\n justifyContent: 'center',\n alignItems: 'center',\n marginRight: 12,\n },\n userAvatar: {\n marginRight: 12,\n },\n onlineBadge: {\n width: 8,\n height: 8,\n backgroundColor: '#10B981',\n borderWidth: 1,\n borderColor: '#FFFFFF',\n bottom: 0,\n right: 0,\n },\n titleContainer: {\n flexDirection: 'row',\n alignItems: 'center',\n },\n itemTitle: {\n fontSize: 16,\n color: '#1F2937',\n },\n appLabel: {\n backgroundColor: '#E5E5E5',\n borderRadius: 4,\n paddingHorizontal: 6,\n paddingVertical: 2,\n marginLeft: 8,\n },\n appLabelText: {\n fontSize: 10,\n fontWeight: 'bold',\n color: '#4B5563',\n },\n uncheckedBox: {\n width: 22,\n height: 22,\n borderRadius: 4,\n borderWidth: 1,\n borderColor: '#D1D5DB',\n },\n checkedBox: {\n width: 22,\n height: 22,\n borderRadius: 4,\n backgroundColor: '#2563EB',\n justifyContent: 'center',\n alignItems: 'center',\n },\n messageInputContainer: {\n borderTopWidth: 1,\n borderTopColor: '#E5E5E5',\n paddingHorizontal: 16,\n paddingVertical: 12,\n flexDirection: 'row',\n alignItems: 'center',\n },\n messageInput: {\n flex: 1,\n height: 40,\n backgroundColor: '#F9FAFB',\n borderRadius: 20,\n paddingHorizontal: 16,\n marginRight: 12,\n fontSize: 16,\n },\n sendButton: {\n width: 40,\n height: 40,\n borderRadius: 20,\n backgroundColor: '#2563EB',\n justifyContent: 'center',\n alignItems: 'center',\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 {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;
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,Platform,Dimensions}from'react-native';import {RoomType}from'common';import {NavigationRoutes}from'../../constants/routes.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';import'../../hooks/useOptimizedChannelsQueries.js';import {useChannelsQuery,useOrganizationMembersQuery,useAddDirectChannelMutation,useAddMemberToChannelMutation,useSaveMembersToChannelMutation}from'../../queries/slackuiQueries.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];
@@ -41,7 +41,7 @@ const SearchChannelPeople = ({
41
41
  loading,
42
42
  error,
43
43
  refetch: refetchUserChannels
44
- } = useGetChannelsByUserQuery({
44
+ } = useChannelsQuery({
45
45
  variables: {
46
46
  criteria: {
47
47
  orgName,
@@ -50,6 +50,14 @@ const SearchChannelPeople = ({
50
50
  limit: 25
51
51
  }
52
52
  });
53
+ const {
54
+ data: orgMembersData,
55
+ loading: orgMembersLoading,
56
+ refetch: refetchOrgMembers
57
+ } = useOrganizationMembersQuery(orgName);
58
+ const [addDirectChannel] = useAddDirectChannelMutation();
59
+ const [addMemberToChannel] = useAddMemberToChannelMutation();
60
+ const [saveMembersToChannel] = useSaveMembersToChannelMutation();
53
61
  useFocusEffect(React__default.useCallback(() => {
54
62
  if (orgName) {
55
63
  refetchUserChannels({
@@ -59,14 +67,40 @@ const SearchChannelPeople = ({
59
67
  },
60
68
  limit: 25
61
69
  });
70
+ refetchOrgMembers();
62
71
  }
63
72
  navigation.setOptions({
64
73
  headerShown: true,
65
74
  headerTitleAlign: "left",
66
75
  headerTitleStyle: {},
67
- headerLeft: (props) => /* @__PURE__ */ React__default.createElement(TouchableOpacity, { style: {
68
- paddingHorizontal: 10
69
- }, onPress: () => navigation.goBack() }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "chevron-back", size: 20 }))
76
+ headerLeft: (props) => /* @__PURE__ */ React__default.createElement(
77
+ TouchableOpacity,
78
+ {
79
+ style: {
80
+ paddingHorizontal: 10
81
+ },
82
+ onPress: () => {
83
+ if (Platform.OS === "macos") {
84
+ navigation.navigate("MainStack", {
85
+ screen: NavigationRoutes.Home,
86
+ params: {
87
+ orgName
88
+ }
89
+ });
90
+ } else if (navigation.canGoBack()) {
91
+ navigation.goBack();
92
+ } else {
93
+ navigation.navigate("MainStack", {
94
+ screen: NavigationRoutes.Home,
95
+ params: {
96
+ orgName
97
+ }
98
+ });
99
+ }
100
+ }
101
+ },
102
+ /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "chevron-back", size: 20 })
103
+ )
70
104
  });
71
105
  return () => {
72
106
  };
@@ -78,12 +112,22 @@ const SearchChannelPeople = ({
78
112
  }) => id));
79
113
  }
80
114
  }, [userChannelsData]);
115
+ useEffect(() => {
116
+ const orgMembers = orgMembersData == null ? void 0 : orgMembersData.getOrganizationMembers;
117
+ if (orgMembers && Array.isArray(orgMembers.data)) {
118
+ const members = orgMembers.data.map((member) => ({
119
+ id: member.user.id,
120
+ user: member.user,
121
+ type: RoomType.Direct
122
+ }));
123
+ setInitialOrgMembers(members);
124
+ }
125
+ }, [orgMembersData]);
81
126
  const renderChannels = ({
82
127
  item
83
128
  }) => {
84
129
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l;
85
- const matches = (_a = item == null ? void 0 : item.title) == null ? void 0 : _a.match(/\b(\w)/g);
86
- matches.join("").substring(0, 2);
130
+ (_a = item == null ? void 0 : item.title) == null ? void 0 : _a.match(/\b(\w)/g);
87
131
  const channelMembers = (_c = (_b = item == null ? void 0 : item.members) == null ? void 0 : _b.map((m) => m == null ? void 0 : m.user)) != null ? _c : null;
88
132
  const title = item.type == RoomType.Direct ? (_f = (_e = (_d = channelMembers == null ? void 0 : channelMembers.map((u) => {
89
133
  var _a2;
@@ -91,34 +135,23 @@ const SearchChannelPeople = ({
91
135
  })) == null ? void 0 : _d.filter((mu) => mu)) == null ? void 0 : _e.join(", ")) != null ? _f : "" : item.title;
92
136
  return /* @__PURE__ */ React__default.createElement(TouchableOpacity, { key: item == null ? void 0 : item.id, style: {
93
137
  marginVertical: 10
94
- }, onPress: () => selectMembers(item == null ? void 0 : item.id) }, /* @__PURE__ */ React__default.createElement(HStack, { flex: 1, alignItems: "center", justifyContent: "space-between" }, /* @__PURE__ */ React__default.createElement(HStack, { flex: 1, alignItems: "center", space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { m: "$0", p: "$0" }, item.type == RoomType.Direct ? /* @__PURE__ */ React__default.createElement(Avatar, { key: "direct-channel-profile-msg-key", size: "sm", bg: "transparent" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, null, startCase((_h = (_g = channelMembers[0]) == null ? void 0 : _g.username) == null ? void 0 : _h.charAt(0))), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", size: "md", style: {
138
+ }, onPress: () => selectMembers(item == null ? void 0 : item.id) }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center justify-between" }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center", space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { className: "m-0 p-0" }, item.type == RoomType.Direct ? /* @__PURE__ */ React__default.createElement(Avatar, { key: "direct-channel-profile-msg-key", size: "sm", className: "bg-transparent" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, null, startCase((_h = (_g = channelMembers[0]) == null ? void 0 : _g.username) == null ? void 0 : _h.charAt(0))), /* @__PURE__ */ React__default.createElement(AvatarImage, { alt: "image", style: {
95
139
  borderRadius: 6,
96
140
  borderWidth: 2,
97
141
  borderColor: "#fff"
98
142
  }, source: {
99
143
  uri: (_i = channelMembers[0]) == null ? void 0 : _i.picture
100
- } }), (channelMembers == null ? void 0 : channelMembers.length) > 1 ? /* @__PURE__ */ React__default.createElement(
101
- AvatarBadge,
102
- {
103
- right: "-$1",
104
- bottom: "-$1",
105
- style: {
106
- width: 20,
107
- height: 20
108
- },
109
- alignItems: "center",
110
- bg: "#211627",
111
- rounded: "$md"
112
- },
113
- /* @__PURE__ */ React__default.createElement(Text, { style: {
114
- fontSize: 12,
115
- fontWeight: "bold",
116
- color: "#fff"
117
- } }, channelMembers == null ? void 0 : channelMembers.length)
118
- ) : /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
144
+ } }), (channelMembers == null ? void 0 : channelMembers.length) > 1 ? /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
145
+ width: 20,
146
+ height: 20
147
+ }, className: "right-[-1px] bottom-[-1px] items-center rounded-md bg-[#211627]" }, /* @__PURE__ */ React__default.createElement(Text, { style: {
148
+ fontSize: 12,
149
+ fontWeight: "bold",
150
+ color: "#fff"
151
+ } }, channelMembers == null ? void 0 : channelMembers.length)) : /* @__PURE__ */ React__default.createElement(AvatarBadge, { style: {
119
152
  width: 10,
120
153
  height: 10
121
- }, bg: "$green800" })) : item.type == RoomType.Private ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "lock", size: 20 })) : /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "hash", size: 20 })), /* @__PURE__ */ React__default.createElement(Text, { color: "$coolGray800", fontWeight: "$bold" }, title)), /* @__PURE__ */ React__default.createElement(Checkbox, { onChange: () => selectMembers(item == null ? void 0 : item.id), value: item == null ? void 0 : item.id, isChecked: selectedMembers && (selectedMembers == null ? void 0 : selectedMembers.includes(item == null ? void 0 : item.id)) ? true : false, accessibilityLabel: (_j = item.title) != null ? _j : "", "aria-label": (_k = item.title) != null ? _k : "", "aria-labelledby": (_l = item.title) != null ? _l : "", borderColor: "trueGray600" }, /* @__PURE__ */ React__default.createElement(CheckboxIndicator, null, /* @__PURE__ */ React__default.createElement(CheckboxIcon, { as: CheckIcon })))));
154
+ }, className: "bg-green-800" })) : item.type == RoomType.Private ? /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "lock", size: 20 })) : /* @__PURE__ */ React__default.createElement(Octicons, { color: "black", name: "hash", size: 20 })), /* @__PURE__ */ React__default.createElement(Text, { className: "text-gray-800 font-bold" }, title)), /* @__PURE__ */ React__default.createElement(Checkbox, { onChange: () => selectMembers(item == null ? void 0 : item.id), value: item == null ? void 0 : item.id, isChecked: selectedMembers && (selectedMembers == null ? void 0 : selectedMembers.includes(item == null ? void 0 : item.id)) ? true : false, accessibilityLabel: (_j = item.title) != null ? _j : "", "aria-label": (_k = item.title) != null ? _k : "", "aria-labelledby": (_l = item.title) != null ? _l : "", className: "border-gray-600" }, /* @__PURE__ */ React__default.createElement(CheckboxIndicator, null, /* @__PURE__ */ React__default.createElement(CheckboxIcon, { as: CheckIcon })))));
122
155
  };
123
156
  const selectMembers = (id) => {
124
157
  setSelectedMembers((pre) => pre.indexOf(id) === -1 ? [...pre, id] : pre.filter((mId) => mId != id));
@@ -134,17 +167,13 @@ const SearchChannelPeople = ({
134
167
  setChannels(initialOrgMembers);
135
168
  }
136
169
  }, [channels]);
137
- return /* @__PURE__ */ React__default.createElement(Box, { flex: 1, bg: "white", w: windowWidth, h: windowHeight }, /* @__PURE__ */ React__default.createElement(Input, { pl: "$4", variant: "underlined" }, /* @__PURE__ */ React__default.createElement(InputSlot, { pl: "$3" }, /* @__PURE__ */ React__default.createElement(Text, { pl: "$4", fontSize: 15 }, "To:")), /* @__PURE__ */ React__default.createElement(
170
+ return /* @__PURE__ */ React__default.createElement(Box, { className: `flex-1 bg-white w-[${windowWidth}px] h-[${windowHeight}px]` }, /* @__PURE__ */ React__default.createElement(Input, { className: "pl-4", variant: "underlined" }, /* @__PURE__ */ React__default.createElement(InputSlot, { className: "pl-3" }, /* @__PURE__ */ React__default.createElement(Text, { className: "pl-4 text-[15px]" }, "To:")), /* @__PURE__ */ React__default.createElement(
138
171
  InputField,
139
172
  {
140
- px: "$3",
141
- bg: "$white",
142
- alignItems: "center",
143
173
  type: "text",
144
174
  size: "xl",
145
175
  placeholderTextColor: "#404040",
146
- fontSize: 15,
147
- color: "$black",
176
+ className: "px-3 bg-white items-center text-[15px] text-black",
148
177
  placeholder: "Add a channel or person",
149
178
  onChange: ({
150
179
  nativeEvent: {
@@ -160,10 +189,14 @@ const SearchChannelPeople = ({
160
189
  autoCapitalize: "none",
161
190
  autoCorrect: false
162
191
  }
163
- ), /* @__PURE__ */ React__default.createElement(InputSlot, { pr: "$3" }, /* @__PURE__ */ React__default.createElement(Button, { bg: "transparent" }, /* @__PURE__ */ React__default.createElement(SimpleLineIcons, { color: "black", name: "user-follow", size: 20 })))), /* @__PURE__ */ React__default.createElement(Box, { flex: 1 }, /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm", flex: 1, pt: "$2" }, /* @__PURE__ */ React__default.createElement(FlatList, { px: "$4", flex: 1, pb: "$10", keyExtractor: (item, index) => String(index), contentContainerStyle: {
192
+ ), /* @__PURE__ */ React__default.createElement(InputSlot, { className: "pr-3" }, /* @__PURE__ */ React__default.createElement(Button, { className: "bg-transparent" }, /* @__PURE__ */ React__default.createElement(SimpleLineIcons, { color: "black", name: "user-follow", size: 20 })))), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1" }, /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm", className: "flex-1 pt-2" }, /* @__PURE__ */ React__default.createElement(FlatList, { style: {
193
+ paddingHorizontal: 4,
194
+ flex: 1,
195
+ paddingBottom: 10
196
+ }, keyExtractor: (item, index) => String(index), contentContainerStyle: {
164
197
  flex: 1,
165
198
  marginBottom: 100
166
199
  }, data: channels && channels.length > 0 ? showChannels ? channels : [] : [], renderItem: renderChannels, ListEmptyComponent: () => {
167
- return /* @__PURE__ */ React__default.createElement(Box, { bg: "#fff", py: "$2" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { px: "$4", py: "$5" }, showChannels && /* @__PURE__ */ React__default.createElement(Text, null, "No matches found"))));
168
- }, key: "add-channel-people-list", keyboardShouldPersistTaps: "always" })))), /* @__PURE__ */ React__default.createElement(Box, { flex: 1 }, /* @__PURE__ */ React__default.createElement(Input, { flex: 1, position: "absolute", bottom: keyboardHeight == 0 ? 5 : keyboardHeight, pl: "$4", variant: "underlined" }, /* @__PURE__ */ React__default.createElement(InputField, { flex: 1, px: "$4", bg: "$white", alignItems: "center", type: "text", size: "xl", placeholderTextColor: "#404040", fontSize: 15, color: "$black", placeholder: "Start a new message", onPressIn: () => setShowChannels(false), autoCapitalize: "none", autoCorrect: false, borderTopWidth: "$1", borderTopColor: "$coolGray200", borderBottomWidth: "$0" }))));
200
+ return /* @__PURE__ */ React__default.createElement(Box, { className: "bg-white py-2" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { className: "px-4 py-5" }, showChannels && /* @__PURE__ */ React__default.createElement(Text, null, "No matches found"))));
201
+ }, key: "add-channel-people-list", keyboardShouldPersistTaps: "always" })))), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1" }, /* @__PURE__ */ React__default.createElement(Input, { variant: "underlined", className: `flex-1 absolute bottom-[${keyboardHeight == 0 ? 5 : keyboardHeight}px] pl-4` }, /* @__PURE__ */ React__default.createElement(InputField, { type: "text", size: "xl", placeholderTextColor: "#404040", placeholder: "Start a new message", onPressIn: () => setShowChannels(false), autoCapitalize: "none", autoCorrect: false, className: "flex-1 px-4 bg-white items-center text-[15px] text-black border-t border-t-gray-200 border-b-0" }))));
169
202
  };export{SearchChannelPeople as default,useKeyboard};//# sourceMappingURL=SearchChannelPeople.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SearchChannelPeople.js","sources":["../../../src/screens/Search/SearchChannelPeople.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 Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n Image,\n Checkbox,\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 { useGetChannelsByUserQuery } from 'common/lib/generated/generated.js';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { Ionicons, SimpleLineIcons } 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 { startCase, orderBy, uniqBy } from 'lodash-es';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { useDrawerLayout } from '../../hooks';\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];\n\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 SearchChannelPeople = ({ navigation, route }: 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 [selectedMembers, setSelectedMembers] = useState<any>([]);\n const [showChannels, setShowChannels] = useState<boolean>(false);\n const keyboardHeight = useKeyboard();\n const {\n data: userChannelsData,\n loading,\n error,\n refetch: refetchUserChannels,\n } = useGetChannelsByUserQuery({\n variables: {\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n limit: 25,\n },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetchUserChannels({\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n limit: 25,\n });\n }\n\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {},\n headerLeft: (props: any) => (\n <TouchableOpacity style={{ paddingHorizontal: 10 }} onPress={() => navigation.goBack()}>\n <Ionicons color=\"black\" name=\"chevron-back\" size={20} />\n </TouchableOpacity>\n ),\n // headerRight: (props: any) => (\n // <Button\n // // onPress={() => addMemeberToChannel()}\n // variant={'link'}\n // _text={{ color: selectedMembers?.length > 0 ? 'black' : 'gray.400', fontSize: 15 }}\n // disabled={selectedMembers?.length > 0 ? false : true}\n // >\n // {selectedMembers?.length ? 'ADD' : 'ADD'}\n // </Button>\n // ),\n });\n\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, [orgName, selectedMembers]),\n );\n\n React.useEffect(() => {\n if (userChannelsData?.channelsByUser) {\n setChannels((oldChannels: any) =>\n uniqBy([...userChannelsData?.channelsByUser, ...oldChannels], ({ id }) => id),\n );\n }\n }, [userChannelsData]);\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 = item?.members?.map((m: any) => m?.user) ?? null;\n\n const title =\n item.type == RoomType.Direct\n ? channelMembers\n ?.map((u: any) => u?.givenName ?? '')\n ?.filter((mu: any) => mu)\n ?.join(', ') ?? ''\n : item.title;\n\n return (\n <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => selectMembers(item?.id)}>\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 {title}\n </Text>\n </HStack>\n\n <Checkbox\n onChange={() => selectMembers(item?.id)}\n value={item?.id}\n isChecked={selectedMembers && selectedMembers?.includes(item?.id) ? true : false}\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 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 }\n };\n\n const searchMembers = React.useCallback(\n (v: any) => {\n if (v) {\n let searchedChannel = channels.filter((o: any) => o?.user?.givenName.includes(v));\n setChannels(searchedChannel);\n } else {\n setChannels(initialOrgMembers);\n }\n },\n [channels],\n );\n\n return (\n <Box flex={1} bg={'white'} w={windowWidth} h={windowHeight}>\n <Input pl={'$4'} variant=\"underlined\">\n <InputSlot pl=\"$3\">\n <Text pl={'$4'} fontSize={15}>\n To:\n </Text>\n </InputSlot>\n <InputField\n //autoFocus={true}\n px={'$3'}\n bg={'$white'}\n alignItems=\"center\"\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n fontSize={15}\n color=\"$black\"\n placeholder=\"Add a channel or person\"\n onChange={({ nativeEvent: { eventCount, target, text } }) => {\n searchMembers(text);\n }}\n onPressIn={() => setShowChannels(true)}\n onPressOut={() => setShowChannels(true)}\n autoCapitalize={'none'}\n autoCorrect={false}\n />\n <InputSlot pr=\"$3\">\n <Button bg={'transparent'}>\n <SimpleLineIcons color=\"black\" name=\"user-follow\" size={20} />\n </Button>\n </InputSlot>\n </Input>\n <Box flex={1}>\n <VirtualizedScrollView>\n <VStack space=\"sm\" 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 ? (showChannels ? channels : []) : []}\n renderItem={renderChannels}\n ListEmptyComponent={() => {\n return (\n <Box bg={'#fff'} py={'$2'}>\n <VStack space=\"sm\">\n <Box px=\"$4\" py={'$5'}>\n {showChannels && <Text>No matches found</Text>}\n </Box>\n </VStack>\n </Box>\n );\n }}\n key={'add-channel-people-list'}\n keyboardShouldPersistTaps=\"always\"\n />\n </VStack>\n </VirtualizedScrollView>\n </Box>\n <Box flex={1}>\n <Input\n flex={1}\n position={'absolute'}\n bottom={keyboardHeight == 0 ? 5 : keyboardHeight}\n pl={'$4'}\n variant=\"underlined\"\n >\n <InputField\n flex={1}\n px={'$4'}\n bg={'$white'}\n alignItems=\"center\"\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n fontSize={15}\n color=\"$black\"\n placeholder=\"Start a new message\"\n onPressIn={() => setShowChannels(false)}\n autoCapitalize={'none'}\n autoCorrect={false}\n borderTopWidth={'$1'}\n borderTopColor={'$coolGray200'}\n borderBottomWidth={'$0'}\n />\n </Input>\n </Box>\n </Box>\n );\n};\n\nexport default SearchChannelPeople;\n"],"names":["React","_a"],"mappings":"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"}
1
+ {"version":3,"file":"SearchChannelPeople.js","sources":["../../../src/screens/Search/SearchChannelPeople.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 Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n Image,\n Checkbox,\n CheckboxIndicator,\n CheckboxIcon,\n CheckIcon,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent, Platform } from 'react-native';\nimport { RoomType } from 'common';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { Ionicons, SimpleLineIcons } 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 { startCase, orderBy, uniqBy } from 'lodash-es';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport colors from 'tailwindcss/colors';\nimport { useDrawerLayout } from '../../hooks';\nimport {\n useChannelsQuery,\n useOrganizationMembersQuery,\n useAddDirectChannelMutation,\n useAddMemberToChannelMutation,\n useSaveMembersToChannelMutation,\n} from '../../queries/slackuiQueries';\n\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];\n\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 SearchChannelPeople = ({ navigation, route }: 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 [selectedMembers, setSelectedMembers] = useState<any>([]);\n const [showChannels, setShowChannels] = useState<boolean>(false);\n const keyboardHeight = useKeyboard();\n\n // Replace direct GraphQL query with wrapper from slackuiQueries\n const {\n data: userChannelsData,\n loading,\n error,\n refetch: refetchUserChannels,\n } = useChannelsQuery({\n variables: {\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n limit: 25,\n },\n });\n\n // Add organization members query\n const {\n data: orgMembersData,\n loading: orgMembersLoading,\n refetch: refetchOrgMembers,\n } = useOrganizationMembersQuery(orgName);\n\n // Add mutations for managing channels and members\n const [addDirectChannel] = useAddDirectChannelMutation();\n const [addMemberToChannel] = useAddMemberToChannelMutation();\n const [saveMembersToChannel] = useSaveMembersToChannelMutation();\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetchUserChannels({\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n },\n limit: 25,\n });\n\n // Also refetch organization members\n refetchOrgMembers();\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.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=\"black\" name=\"chevron-back\" size={20} />\n </TouchableOpacity>\n ),\n // headerRight: (props: any) => (\n // <Button\n // // onPress={() => addMemeberToChannel()}\n // variant={'link'}\n // _text={{ color: selectedMembers?.length > 0 ? 'black' : 'gray.400', fontSize: 15 }}\n // disabled={selectedMembers?.length > 0 ? false : true}\n // >\n // {selectedMembers?.length ? 'ADD' : 'ADD'}\n // </Button>\n // ),\n });\n\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, [orgName, selectedMembers]),\n );\n\n React.useEffect(() => {\n if (userChannelsData?.channelsByUser) {\n setChannels((oldChannels: any) =>\n uniqBy([...userChannelsData?.channelsByUser, ...oldChannels], ({ id }) => id),\n );\n }\n }, [userChannelsData]);\n\n // Add effect to handle organization members data\n useEffect(() => {\n const orgMembers = orgMembersData?.getOrganizationMembers;\n if (orgMembers && Array.isArray(orgMembers.data)) {\n const members = orgMembers.data.map((member: any) => ({\n id: member.user.id,\n user: member.user,\n type: RoomType.Direct,\n }));\n setInitialOrgMembers(members);\n }\n }, [orgMembersData]);\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 = item?.members?.map((m: any) => m?.user) ?? null;\n\n const title =\n item.type == RoomType.Direct\n ? channelMembers\n ?.map((u: any) => u?.givenName ?? '')\n ?.filter((mu: any) => mu)\n ?.join(', ') ?? ''\n : item.title;\n\n return (\n <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => selectMembers(item?.id)}>\n <HStack className=\"flex-1 items-center justify-between\">\n <HStack className=\"flex-1 items-center\" space={'sm'}>\n <Box className=\"m-0 p-0\">\n {item.type == RoomType.Direct ? (\n <Avatar key={'direct-channel-profile-msg-key'} size={'sm'} className=\"bg-transparent\">\n <AvatarFallbackText>\n {startCase(channelMembers[0]?.username?.charAt(0))}\n </AvatarFallbackText>\n <AvatarImage\n alt=\"image\"\n style={{\n // width: 25,\n // height: 25,\n borderRadius: 6,\n borderWidth: 2,\n borderColor: '#fff',\n }}\n source={{\n uri: channelMembers[0]?.picture,\n }}\n />\n {channelMembers?.length > 1 ? (\n <AvatarBadge\n style={{ width: 20, height: 20 }}\n className=\"right-[-1px] bottom-[-1px] items-center rounded-md bg-[#211627]\"\n >\n <Text style={{ fontSize: 12, fontWeight: 'bold', color: '#fff' }}>\n {channelMembers?.length}\n </Text>\n </AvatarBadge>\n ) : (\n <AvatarBadge style={{ width: 10, height: 10 }} className=\"bg-green-800\" />\n )}\n </Avatar>\n ) : item.type == RoomType.Private ? (\n <>\n <Octicons color=\"black\" name=\"lock\" size={20} />\n </>\n ) : (\n <Octicons color=\"black\" name=\"hash\" size={20} />\n )}\n </Box>\n <Text className=\"text-gray-800 font-bold\">{title}</Text>\n </HStack>\n\n <Checkbox\n onChange={() => selectMembers(item?.id)}\n value={item?.id}\n isChecked={selectedMembers && selectedMembers?.includes(item?.id) ? true : false}\n accessibilityLabel={item.title ?? ''}\n aria-label={item.title ?? ''}\n aria-labelledby={item.title ?? ''}\n className=\"border-gray-600\"\n >\n <CheckboxIndicator>\n <CheckboxIcon as={CheckIcon} />\n </CheckboxIndicator>\n </Checkbox>\n </HStack>\n </TouchableOpacity>\n );\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 // Use the mutations here according to your requirements\n saveMembersToChannel({\n variables: {\n membersIds: selectedMembers,\n channelId: route?.params?.channelId,\n },\n })\n .then((result) => {\n navigation.goBack();\n })\n .catch((error) => {\n console.error('Error adding members:', error);\n });\n }\n };\n\n const searchMembers = React.useCallback(\n (v: any) => {\n if (v) {\n let searchedChannel = channels.filter((o: any) => o?.user?.givenName.includes(v));\n setChannels(searchedChannel);\n } else {\n setChannels(initialOrgMembers);\n }\n },\n [channels],\n );\n\n return (\n <Box className={`flex-1 bg-white w-[${windowWidth}px] h-[${windowHeight}px]`}>\n <Input className=\"pl-4\" variant=\"underlined\">\n <InputSlot className=\"pl-3\">\n <Text className=\"pl-4 text-[15px]\">To:</Text>\n </InputSlot>\n <InputField\n //autoFocus={true}\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n className=\"px-3 bg-white items-center text-[15px] text-black\"\n placeholder=\"Add a channel or person\"\n onChange={({ nativeEvent: { eventCount, target, text } }) => {\n searchMembers(text);\n }}\n onPressIn={() => setShowChannels(true)}\n onPressOut={() => setShowChannels(true)}\n autoCapitalize={'none'}\n autoCorrect={false}\n />\n <InputSlot className=\"pr-3\">\n <Button className=\"bg-transparent\">\n <SimpleLineIcons color=\"black\" name=\"user-follow\" size={20} />\n </Button>\n </InputSlot>\n </Input>\n <Box className=\"flex-1\">\n <VirtualizedScrollView>\n <VStack space=\"sm\" className=\"flex-1 pt-2\">\n <FlatList\n style={{ paddingHorizontal: 4, flex: 1, paddingBottom: 10 }}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flex: 1,\n marginBottom: 100,\n }}\n data={channels && channels.length > 0 ? (showChannels ? channels : []) : []}\n renderItem={renderChannels}\n ListEmptyComponent={() => {\n return (\n <Box className=\"bg-white py-2\">\n <VStack space=\"sm\">\n <Box className=\"px-4 py-5\">\n {showChannels && <Text>No matches found</Text>}\n </Box>\n </VStack>\n </Box>\n );\n }}\n key={'add-channel-people-list'}\n keyboardShouldPersistTaps=\"always\"\n />\n </VStack>\n </VirtualizedScrollView>\n </Box>\n <Box className=\"flex-1\">\n <Input\n variant=\"underlined\"\n className={`flex-1 absolute bottom-[${keyboardHeight == 0 ? 5 : keyboardHeight}px] pl-4`}\n >\n <InputField\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n placeholder=\"Start a new message\"\n onPressIn={() => setShowChannels(false)}\n autoCapitalize={'none'}\n autoCorrect={false}\n className=\"flex-1 px-4 bg-white items-center text-[15px] text-black border-t border-t-gray-200 border-b-0\"\n />\n </Input>\n </Box>\n </Box>\n );\n};\n\nexport default SearchChannelPeople;\n"],"names":["React","_a"],"mappings":"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"}