@messenger-box/slack-ui-mobile 10.0.3-alpha.7 → 10.0.3-alpha.72
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/components/Actionsheet.js +96 -0
- package/lib/components/Actionsheet.js.map +1 -0
- package/lib/components/AppRootContextProviderComponent.js +16 -2
- package/lib/components/AppRootContextProviderComponent.js.map +1 -1
- package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js +13 -7
- package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js.map +1 -1
- package/lib/components/CustomBottomTabs/CustomBottomTabs.js +11 -24
- package/lib/components/CustomBottomTabs/CustomBottomTabs.js.map +1 -1
- package/lib/components/CustomDrawer/CustomDrawer.js +31 -31
- package/lib/components/CustomDrawer/CustomDrawer.js.map +1 -1
- package/lib/components/Header/styles.js +2 -2
- package/lib/components/Header/styles.js.map +1 -1
- package/lib/components/LoadingSpinner/index.js +3 -3
- package/lib/components/LoadingSpinner/index.js.map +1 -1
- package/lib/components/NavigationHeader/InboxNavigationHeader.js +20 -25
- package/lib/components/NavigationHeader/InboxNavigationHeader.js.map +1 -1
- package/lib/components/NavigationHeader/NavigationHeader.js +58 -40
- package/lib/components/NavigationHeader/NavigationHeader.js.map +1 -1
- package/lib/components/NavigationHeader/NavigationHeaderChat.js +9 -9
- package/lib/components/NavigationHeader/NavigationHeaderChat.js.map +1 -1
- package/lib/components/NavigationHeader/index.js +1 -1
- package/lib/components/SlackSearchInput/Suggestion.js +1 -1
- package/lib/components/SlackSearchInput/Tag.js +1 -1
- package/lib/components/SlackSearchInput/index.js +3 -3
- package/lib/components/SlackSearchInput/index.js.map +1 -1
- package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js +19 -4
- package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js.map +1 -1
- package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js +41 -31
- package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js.map +1 -1
- package/lib/compute.js +32 -23
- package/lib/compute.js.map +1 -1
- package/lib/constants/Colors.js +2 -2
- package/lib/constants/globalStyles.js +3 -3
- package/lib/constants/globalStyles.js.map +1 -1
- package/lib/hooks/useOptimizedChannelsQueries.js +106 -0
- package/lib/hooks/useOptimizedChannelsQueries.js.map +1 -0
- package/lib/index.js +1 -1
- package/lib/index.js.map +1 -1
- package/lib/navigation/SearchTabNavigation.js +47 -39
- package/lib/navigation/SearchTabNavigation.js.map +1 -1
- package/lib/navigation/TeamTabNavigation.js +51 -38
- package/lib/navigation/TeamTabNavigation.js.map +1 -1
- package/lib/queries/slackuiQueries.js +129 -0
- package/lib/queries/slackuiQueries.js.map +1 -0
- package/lib/routes.json +32 -23
- package/lib/screens/Account/AccountScreen.js +23 -26
- package/lib/screens/Account/AccountScreen.js.map +1 -1
- package/lib/screens/Activity/ActivityScreen.js +6 -2
- package/lib/screens/Activity/ActivityScreen.js.map +1 -1
- package/lib/screens/Channels/Add/AddName.js +33 -8
- package/lib/screens/Channels/Add/AddName.js.map +1 -1
- package/lib/screens/Channels/Add/AddVisibility.js +6 -6
- package/lib/screens/Channels/Add/AddVisibility.js.map +1 -1
- package/lib/screens/Channels/AddChannel.js +5 -3
- package/lib/screens/Channels/AddChannel.js.map +1 -1
- package/lib/screens/Channels/Channels.js +101 -95
- package/lib/screens/Channels/Channels.js.map +1 -1
- package/lib/screens/Files/FilesScreen.js +2 -2
- package/lib/screens/Files/FilesScreen.js.map +1 -1
- package/lib/screens/Home/Components/Channels/Channels.js +91 -77
- package/lib/screens/Home/Components/Channels/Channels.js.map +1 -1
- package/lib/screens/Home/Components/DirectChannels/DirectChannels.js +249 -115
- package/lib/screens/Home/Components/DirectChannels/DirectChannels.js.map +1 -1
- package/lib/screens/Home/Components/InviteMembers/index.js +88 -0
- package/lib/screens/Home/Components/InviteMembers/index.js.map +1 -0
- package/lib/screens/Home/Components/Teams/Teams.js +110 -47
- package/lib/screens/Home/Components/Teams/Teams.js.map +1 -1
- package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js +44 -75
- package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js.map +1 -1
- package/lib/screens/Home/HomeScreen.js +161 -194
- package/lib/screens/Home/HomeScreen.js.map +1 -1
- package/lib/screens/Home/styles.js +4 -4
- package/lib/screens/Home/styles.js.map +1 -1
- package/lib/screens/Inbox/InboxChannelDetail.js +67 -34
- package/lib/screens/Inbox/InboxChannelDetail.js.map +1 -1
- package/lib/screens/Inbox/InboxDialogMessages.js +2 -2
- package/lib/screens/Inbox/InboxDialogMessages.js.map +1 -1
- package/lib/screens/Inbox/InboxScreen.js +3 -3
- package/lib/screens/Inbox/InboxScreen.js.map +1 -1
- package/lib/screens/Login.js +4 -2
- package/lib/screens/Login.js.map +1 -1
- package/lib/screens/Organization/AddWorkspace.js +42 -38
- package/lib/screens/Organization/AddWorkspace.js.map +1 -1
- package/lib/screens/Organization/CreateOrganization.js +11 -2
- package/lib/screens/Organization/CreateOrganization.js.map +1 -1
- package/lib/screens/Organization/InitialChannelOnboarding.js +22 -4
- package/lib/screens/Organization/InitialChannelOnboarding.js.map +1 -1
- package/lib/screens/Organization/InitializeOrganizationChannel.js +9 -4
- package/lib/screens/Organization/InitializeOrganizationChannel.js.map +1 -1
- package/lib/screens/Organization/InviteOrganizationMembers.js +52 -10
- package/lib/screens/Organization/InviteOrganizationMembers.js.map +1 -1
- package/lib/screens/Peoples/AddByEmail.js +24 -6
- package/lib/screens/Peoples/AddByEmail.js.map +1 -1
- package/lib/screens/Peoples/AddFromContacts.js +172 -87
- package/lib/screens/Peoples/AddFromContacts.js.map +1 -1
- package/lib/screens/Peoples/AddPeople.js +21 -42
- package/lib/screens/Peoples/AddPeople.js.map +1 -1
- package/lib/screens/Peoples/People.js +42 -4
- package/lib/screens/Peoples/People.js.map +1 -1
- package/lib/screens/Profile/ProfileScreen.js +27 -12
- package/lib/screens/Profile/ProfileScreen.js.map +1 -1
- package/lib/screens/Saved/SavedScreen.js +2 -2
- package/lib/screens/Saved/SavedScreen.js.map +1 -1
- package/lib/screens/Search/Channels.js +20 -32
- package/lib/screens/Search/Channels.js.map +1 -1
- package/lib/screens/Search/Files.js +2 -2
- package/lib/screens/Search/Files.js.map +1 -1
- package/lib/screens/Search/JumpTo.js +2 -2
- package/lib/screens/Search/JumpTo.js.map +1 -1
- package/lib/screens/Search/People.js +19 -27
- package/lib/screens/Search/People.js.map +1 -1
- package/lib/screens/Search/Recents.js +26 -31
- package/lib/screens/Search/Recents.js.map +1 -1
- package/lib/screens/Search/SearchAddChannel.js +366 -227
- package/lib/screens/Search/SearchAddChannel.js.map +1 -1
- package/lib/screens/Search/SearchChannelPeople.js +70 -37
- package/lib/screens/Search/SearchChannelPeople.js.map +1 -1
- package/lib/screens/Search/SearchScreen.js +5 -3
- package/lib/screens/Search/SearchScreen.js.map +1 -1
- package/lib/screens/Search/styles.js +2 -2
- package/lib/screens/Search/styles.js.map +1 -1
- package/lib/screens/Teams/AddTeam.js +3 -3
- package/lib/screens/Teams/AddTeam.js.map +1 -1
- package/lib/screens/Teams/Components/Channels/Channels.js +6 -6
- package/lib/screens/Teams/Components/Channels/Channels.js.map +1 -1
- package/lib/screens/Teams/Components/Members/Members.js +7 -3
- package/lib/screens/Teams/Components/Members/Members.js.map +1 -1
- package/lib/screens/Teams/Team.js +6 -8
- package/lib/screens/Teams/Team.js.map +1 -1
- package/lib/screens/Teams/Teams.js +137 -106
- package/lib/screens/Teams/Teams.js.map +1 -1
- package/lib/screens/Teams/useTeams.js +41 -0
- package/lib/screens/Teams/useTeams.js.map +1 -0
- package/lib/screens/Wiki/WikiScreen.js +2 -2
- package/lib/screens/Wiki/WikiScreen.js.map +1 -1
- package/lib/theme/index.js +2 -2
- package/lib/theme/index.js.map +1 -1
- package/package.json +6 -4
- package/lib/navigation/ActivityNavigator.js +0 -61
- package/lib/navigation/ActivityNavigator.js.map +0 -1
- package/lib/navigation/ExploreNavigator.js +0 -583
- package/lib/navigation/ExploreNavigator.js.map +0 -1
- package/lib/navigation/InboxNavigator.js +0 -183
- package/lib/navigation/InboxNavigator.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React__default,{useState,useLayoutEffect}from'react';import {Dimensions}from'react-native';import {
|
|
1
|
+
import React__default,{useState,useLayoutEffect}from'react';import {SafeAreaView,Dimensions}from'react-native';import {Box}from'@admin-layout/gluestack-ui-mobile';import VirtualizedScrollView from'../../components/VirtualizedScrollView/VirtualizedScrollView.js';import {useNavigation,useRoute,useFocusEffect}from'@react-navigation/native';import {RoomType}from'common';import {useChannelsQuery}from'../../queries/slackuiQueries.js';import {uniqBy}from'lodash-es';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {LoadingSpinnerDefault}from'../../components/LoadingSpinner/index.js';import Recents from'./Recents.js';import Channels from'./Channels.js';import People from'./People.js';import Files from'./Files.js';import'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';import'../../hooks/useOptimizedChannelsQueries.js';var __defProp = Object.defineProperty;
|
|
2
2
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
3
3
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
4
4
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
@@ -38,7 +38,7 @@ const SearchScreen = ({
|
|
|
38
38
|
loading: userChannelLoading,
|
|
39
39
|
error,
|
|
40
40
|
refetch: refetchUserChannels
|
|
41
|
-
} =
|
|
41
|
+
} = useChannelsQuery({
|
|
42
42
|
variables: {
|
|
43
43
|
criteria: {
|
|
44
44
|
orgName,
|
|
@@ -89,5 +89,7 @@ const SearchScreen = ({
|
|
|
89
89
|
}, [userChannelsData]);
|
|
90
90
|
if (userChannelLoading || loading)
|
|
91
91
|
return /* @__PURE__ */ React__default.createElement(LoadingSpinnerDefault, null);
|
|
92
|
-
return /* @__PURE__ */ React__default.createElement(SafeAreaView, {
|
|
92
|
+
return /* @__PURE__ */ React__default.createElement(SafeAreaView, { style: {
|
|
93
|
+
flex: 1
|
|
94
|
+
} }, /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, { bg: "#fff", flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 bg-white pb-10 h-full px-2" }, searchType == "recents" && /* @__PURE__ */ React__default.createElement(Recents, { channels, loading: userChannelLoading }), searchType == "channels" && /* @__PURE__ */ React__default.createElement(Channels, { channels, loading: userChannelLoading }), searchType == "people" && /* @__PURE__ */ React__default.createElement(People, { channels, loading: userChannelLoading }), searchType == "files" && /* @__PURE__ */ React__default.createElement(Files, null))));
|
|
93
95
|
};export{SearchScreen as default};//# sourceMappingURL=SearchScreen.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchScreen.js","sources":["../../../src/screens/Search/SearchScreen.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { Dimensions,
|
|
1
|
+
{"version":3,"file":"SearchScreen.js","sources":["../../../src/screens/Search/SearchScreen.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { Dimensions, SafeAreaView } from 'react-native';\nimport { View, Box } from '@admin-layout/gluestack-ui-mobile';\nimport VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport { navigationRef } from '@common-stack/client-react';\nimport { RoomType } from 'common';\nimport { useChannelsQuery } from '../../queries/slackuiQueries';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport { useSelector } from 'react-redux';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport { LoadingSpinnerDefault } from '../../components/LoadingSpinner';\nimport Recents from './Recents';\nimport Channels from './Channels';\nimport People from './People';\nimport Files from './Files';\nimport { useDrawerLayout } from '../../hooks';\nimport colors from 'tailwindcss/colors';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\nconst defaultAllChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public, RoomType.Direct];\nconst defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public];\nconst SearchScreen = ({ tab = 'recents' }) => {\n const { orgName, organizationDetail } = useDrawerLayout();\n const user = useSelector(userSelector);\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const [loading, setLoading] = useState<boolean>(true);\n const [searchType, setSearchType] = useState<string>(tab);\n const [channels, setChannels] = useState<any>([]);\n const [initialOrgMembers, setInitialOrgMembers] = useState<any>([]);\n const channelType =\n tab === 'channels' ? defaultChannelType : tab === 'people' ? RoomType.Direct : defaultAllChannelType;\n\n // Query for channels\n const {\n data: userChannelsData,\n loading: userChannelLoading,\n error,\n refetch: refetchUserChannels,\n } = useChannelsQuery({\n variables: {\n criteria: {\n orgName: orgName,\n type: channelType,\n },\n limit: 20,\n },\n });\n\n useLayoutEffect(() => {\n if (tab) setSearchType(tab);\n }, [tab]);\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetchUserChannels({\n criteria: {\n orgName: orgName,\n type: channelType,\n },\n limit: 20,\n });\n }\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, [orgName]),\n );\n\n React.useEffect(() => {\n if (userChannelsData?.channelsByUser) {\n const allChannel: any =\n userChannelsData?.channelsByUser?.map((i: any) => {\n let ch = { ...i };\n const channelMembers = ch?.members?.map((m: any) => m?.user) ?? null;\n const title =\n ch.type == RoomType.Direct\n ? channelMembers\n ?.filter((ch: any) => ch?.id != user?.id && ch?.__typename == 'UserAccount')\n ?.map((u: any) => u?.givenName ?? '')\n ?.filter((mu: any) => mu)\n ?.join(', ') ?? ''\n : ch.title;\n ch.title = title;\n return ch;\n }) ?? [];\n setChannels((oldChannels: any) => uniqBy([...allChannel, ...oldChannels], ({ id }) => id));\n setInitialOrgMembers((oldChannels: any) => uniqBy([...allChannel, ...oldChannels], ({ id }) => id));\n setLoading(false);\n }\n }, [userChannelsData]);\n\n if (userChannelLoading || loading) return <LoadingSpinnerDefault />;\n\n return (\n <SafeAreaView style={{ flex: 1 }}>\n <VirtualizedScrollView bg={'#fff'} flex={1}>\n <Box className=\"flex-1 bg-white pb-10 h-full px-2\">\n {searchType == 'recents' && <Recents channels={channels} loading={userChannelLoading} />}\n {searchType == 'channels' && <Channels channels={channels} loading={userChannelLoading} />}\n {searchType == 'people' && <People channels={channels} loading={userChannelLoading} />}\n {searchType == 'files' && <Files />}\n </Box>\n </VirtualizedScrollView>\n </SafeAreaView>\n );\n};\n\nexport default SearchScreen;\n"],"names":["React","_a","_b","ch"],"mappings":";;;;;;;;;;;;;;;;AAoBoB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AACxB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AAC9C,MAAM,qBAAA,GAAwB,CAAC,QAAS,CAAA,OAAA,EAAS,SAAS,OAAS,EAAA,QAAA,CAAS,MAAQ,EAAA,QAAA,CAAS,MAAM,CAAA;AACnG,MAAM,qBAAqB,CAAC,QAAA,CAAS,SAAS,QAAS,CAAA,OAAA,EAAS,SAAS,MAAM,CAAA;AAC/E,MAAM,eAAe,CAAC;AAAA,EACpB,GAAM,GAAA;AACR,CAAM,KAAA;AACJ,EAAM,MAAA;AAAA,IACJ,OAAA;AAAA,IACA;AAAA,MACE,eAAgB,EAAA;AACpB,EAAM,MAAA,IAAA,GAAO,YAAY,YAAY,CAAA;AACrC,EAAmB,aAAmB;AACtC,EAAc,QAAc;AAC5B,EAAA,MAAM,CAAC,OAAA,EAAS,UAAU,CAAA,GAAI,SAAkB,IAAI,CAAA;AACpD,EAAA,MAAM,CAAC,UAAA,EAAY,aAAa,CAAA,GAAI,SAAiB,GAAG,CAAA;AACxD,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;AAClE,EAAA,MAAM,cAAc,GAAQ,KAAA,UAAA,GAAa,qBAAqB,GAAQ,KAAA,QAAA,GAAW,SAAS,MAAS,GAAA,qBAAA;AAGnG,EAAM,MAAA;AAAA,IACJ,IAAM,EAAA,gBAAA;AAAA,IACN,OAAS,EAAA,kBAAA;AAAA,IACT,KAAA;AAAA,IACA,OAAS,EAAA;AAAA,MACP,gBAAiB,CAAA;AAAA,IACnB,SAAW,EAAA;AAAA,MACT,QAAU,EAAA;AAAA,QACR,OAAA;AAAA,QACA,IAAM,EAAA;AAAA,OACR;AAAA,MACA,KAAO,EAAA;AAAA;AACT,GACD,CAAA;AACD,EAAA,eAAA,CAAgB,MAAM;AACpB,IAAI,IAAA,GAAA;AAAK,MAAA,aAAA,CAAc,GAAG,CAAA;AAAA,GAC5B,EAAG,CAAC,GAAG,CAAC,CAAA;AACR,EAAe,cAAA,CAAAA,cAAA,CAAM,YAAY,MAAM;AACrC,IAAA,IAAI,OAAS,EAAA;AACX,MAAoB,mBAAA,CAAA;AAAA,QAClB,QAAU,EAAA;AAAA,UACR,OAAA;AAAA,UACA,IAAM,EAAA;AAAA,SACR;AAAA,QACA,KAAO,EAAA;AAAA,OACR,CAAA;AAAA;AAEH,IAAA,OAAO,MAAM;AAAA,KAGb;AAAA,GACC,EAAA,CAAC,OAAO,CAAC,CAAC,CAAA;AACb,EAAAA,cAAA,CAAM,UAAU,MAAM;AAzExB,IAAA,IAAA,EAAA,EAAA,EAAA;AA0EI,IAAA,IAAI,qDAAkB,cAAgB,EAAA;AACpC,MAAA,MAAM,cAAkB,EAAkB,GAAA,CAAA,EAAA,GAAA,gBAAA,IAAA,IAAA,GAAA,MAAA,GAAA,gBAAA,CAAA,cAAA,KAAlB,IAAkC,GAAA,MAAA,GAAA,EAAA,CAAA,GAAA,CAAI,CAAC,CAAW,KAAA;AA3EhF,QAAA,IAAAC,KAAAC,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AA4EQ,QAAA,IAAI,KAAK,cACJ,CAAA,EAAA,EAAA,CAAA,CAAA;AAEL,QAAA,MAAM,cAAiBA,GAAAA,CAAAA,GAAAA,GAAAA,CAAAD,GAAA,GAAA,EAAA,IAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAI,OAAJ,KAAA,IAAA,GAAA,MAAA,GAAAA,GAAa,CAAA,GAAA,CAAI,CAAC,CAAA,KAAW,CAAG,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAA,IAAA,CAAA,KAAhC,OAAAC,GAAyC,GAAA,IAAA;AAChE,QAAM,MAAA,KAAA,GAAQ,GAAG,IAAQ,IAAA,QAAA,CAAS,UAAS,EAAgB,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,cAAA,IAAA,IAAA,GAAA,MAAA,GAAA,cAAA,CAAA,MAAA,CAAO,CAACC,GAAAA,KAAAA,CAAYA,GAAA,IAAA,IAAA,GAAA,MAAA,GAAAA,IAAI,EAAM,MAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,EAAMA,CAAAA,IAAAA,CAAAA,GAAAA,IAAA,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAI,eAAc,aAA5E,CAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAA4F,GAAI,CAAA,CAAC,CAAQ,KAAA;AAhF5J,UAAAF,IAAAA,GAAAA;AAgF+J,UAAA,OAAA,CAAAA,GAAA,GAAA,CAAA,IAAA,IAAA,GAAA,MAAA,GAAA,CAAA,CAAG,SAAH,KAAA,IAAA,GAAAA,GAAgB,GAAA,EAAA;AAAA,SAA5H,CAAA,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAiI,MAAO,CAAA,CAAC,EAAY,KAAA,EAAA,CAAA,KAArJ,mBAA0J,IAAK,CAAA,IAAA,CAAA,KAA/J,IAAwK,GAAA,EAAA,GAAA,EAAA,GAAK,EAAG,CAAA,KAAA;AAC3N,QAAA,EAAA,CAAG,KAAQ,GAAA,KAAA;AACX,QAAO,OAAA,EAAA;AAAA,OACT,CAAA,KARwB,YAQlB,EAAC;AACP,MAAY,WAAA,CAAA,CAAC,gBAAqB,MAAO,CAAA,CAAC,GAAG,UAAY,EAAA,GAAG,WAAW,CAAA,EAAG,CAAC;AAAA,QACzE;AAAA,OACF,KAAM,EAAE,CAAC,CAAA;AACT,MAAqB,oBAAA,CAAA,CAAC,gBAAqB,MAAO,CAAA,CAAC,GAAG,UAAY,EAAA,GAAG,WAAW,CAAA,EAAG,CAAC;AAAA,QAClF;AAAA,OACF,KAAM,EAAE,CAAC,CAAA;AACT,MAAA,UAAA,CAAW,KAAK,CAAA;AAAA;AAClB,GACF,EAAG,CAAC,gBAAgB,CAAC,CAAA;AACrB,EAAA,IAAI,kBAAsB,IAAA,OAAA;AAAS,IAAA,oDAAQ,qBAAsB,EAAA,IAAA,CAAA;AACjE,EAAO,uBAAAD,cAAA,CAAA,aAAA,CAAC,gBAAa,KAAO,EAAA;AAAA,IAC1B,IAAM,EAAA;AAAA,uBAEGA,cAAA,CAAA,aAAA,CAAA,qBAAA,EAAA,EAAsB,IAAI,MAAQ,EAAA,IAAA,EAAM,qBACpCA,cAAA,CAAA,aAAA,CAAA,GAAA,EAAA,EAAI,SAAU,EAAA,mCAAA,EAAA,EACV,cAAc,SAAa,oBAAAA,cAAA,CAAA,aAAA,CAAC,WAAQ,QAAoB,EAAA,OAAA,EAAS,oBAAoB,CACrF,EAAA,UAAA,IAAc,UAAc,oBAAAA,cAAA,CAAA,aAAA,CAAC,YAAS,QAAoB,EAAA,OAAA,EAAS,oBAAoB,CACvF,EAAA,UAAA,IAAc,4BAAaA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAO,UAAoB,OAAS,EAAA,kBAAA,EAAoB,GACnF,UAAc,IAAA,OAAA,iDAAY,KAAM,EAAA,IAAA,CACrC,CACJ,CACJ,CAAA;AACR"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {StyleSheet,Dimensions}from'react-native';import
|
|
1
|
+
import {StyleSheet,Dimensions}from'react-native';import Colors from'../../constants/Colors.js';Dimensions.get("window").width;
|
|
2
2
|
Dimensions.get("window").height;
|
|
3
3
|
const styles = StyleSheet.create({
|
|
4
4
|
container: {
|
|
@@ -72,7 +72,7 @@ const styles = StyleSheet.create({
|
|
|
72
72
|
marginTop: 5
|
|
73
73
|
},
|
|
74
74
|
headingText: {
|
|
75
|
-
color:
|
|
75
|
+
color: Colors.light.text,
|
|
76
76
|
fontSize: 16,
|
|
77
77
|
fontWeight: "400"
|
|
78
78
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.js","sources":["../../../src/screens/Search/styles.ts"],"sourcesContent":["import { Dimensions, StyleSheet } from 'react-native';\nimport Colors from '../../constants/Colors';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\nconst styles = StyleSheet.create({\n container:{\n flex:1,\n backgroundColor:'#fff'\n },\n searchBar: {\n width: Dimensions.get('window').width - 35,\n height: 40,\n backgroundColor: 'rgba(255,255,255,0.1)',\n borderRadius: 8,\n flexDirection: 'row',\n alignItems: 'center',\n borderColor:'#bbb',\n borderWidth:0.5,\n marginTop:10,\n alignSelf:'flex-end'\n },\n searchLabel: {\n marginLeft: 20,\n fontSize: 16,\n color:'#fff'\n },\n backgroundImage: {\n height: 500,\n width: '100%',\n resizeMode: 'cover',\n justifyContent: 'center',\n },\n title: {\n fontSize: 66,\n fontWeight: 'bold',\n color: 'white',\n width: '50%',\n marginLeft: 25,\n },\n border:{\n height: 0.4,\n marginTop: 20,\n backgroundColor: '#868686'\n },\n button: {\n backgroundColor: 'white',\n width: 200,\n height: 40,\n borderRadius: 10,\n marginLeft: 25,\n marginTop: 25,\n justifyContent: 'center',\n alignItems: 'center',\n },\n buttonLabel: {\n fontSize: 16,\n fontWeight: 'bold',\n },\n headingContainer: {\n flexDirection:'row',\n justifyContent:'space-between',\n alignItems:'center',\n },\n channelContainer:{\n paddingHorizontal:20,\n paddingVertical:10,\n },\n bottomContainer:{\n paddingHorizontal:20,\n paddingVertical:10,\n },\n itemView:{\n paddingVertical:8,\n marginTop:5\n },\n headingText:{\n color: Colors.light.text,\n fontSize: 16,\n fontWeight:'400'\n },\n iconStyle:{\n width:25,\n height:25,\n resizeMode: 'cover',\n }\n});\n\nexport default styles;\n"],"names":[
|
|
1
|
+
{"version":3,"file":"styles.js","sources":["../../../src/screens/Search/styles.ts"],"sourcesContent":["import { Dimensions, StyleSheet } from 'react-native';\nimport Colors from '../../constants/Colors';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\nconst styles = StyleSheet.create({\n container:{\n flex:1,\n backgroundColor:'#fff'\n },\n searchBar: {\n width: Dimensions.get('window').width - 35,\n height: 40,\n backgroundColor: 'rgba(255,255,255,0.1)',\n borderRadius: 8,\n flexDirection: 'row',\n alignItems: 'center',\n borderColor:'#bbb',\n borderWidth:0.5,\n marginTop:10,\n alignSelf:'flex-end'\n },\n searchLabel: {\n marginLeft: 20,\n fontSize: 16,\n color:'#fff'\n },\n backgroundImage: {\n height: 500,\n width: '100%',\n resizeMode: 'cover',\n justifyContent: 'center',\n },\n title: {\n fontSize: 66,\n fontWeight: 'bold',\n color: 'white',\n width: '50%',\n marginLeft: 25,\n },\n border:{\n height: 0.4,\n marginTop: 20,\n backgroundColor: '#868686'\n },\n button: {\n backgroundColor: 'white',\n width: 200,\n height: 40,\n borderRadius: 10,\n marginLeft: 25,\n marginTop: 25,\n justifyContent: 'center',\n alignItems: 'center',\n },\n buttonLabel: {\n fontSize: 16,\n fontWeight: 'bold',\n },\n headingContainer: {\n flexDirection:'row',\n justifyContent:'space-between',\n alignItems:'center',\n },\n channelContainer:{\n paddingHorizontal:20,\n paddingVertical:10,\n },\n bottomContainer:{\n paddingHorizontal:20,\n paddingVertical:10,\n },\n itemView:{\n paddingVertical:8,\n marginTop:5\n },\n headingText:{\n color: Colors.light.text,\n fontSize: 16,\n fontWeight:'400'\n },\n iconStyle:{\n width:25,\n height:25,\n resizeMode: 'cover',\n }\n});\n\nexport default styles;\n"],"names":[],"mappings":"+FAEoB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AACxB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AACxC,MAAA,MAAA,GAAS,WAAW,MAAO,CAAA;AAAA,EAC/B,SAAW,EAAA;AAAA,IACT,IAAM,EAAA,CAAA;AAAA,IACN,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,SAAW,EAAA;AAAA,IACT,KAAO,EAAA,UAAA,CAAW,GAAI,CAAA,QAAQ,EAAE,KAAQ,GAAA,EAAA;AAAA,IACxC,MAAQ,EAAA,EAAA;AAAA,IACR,eAAiB,EAAA,uBAAA;AAAA,IACjB,YAAc,EAAA,CAAA;AAAA,IACd,aAAe,EAAA,KAAA;AAAA,IACf,UAAY,EAAA,QAAA;AAAA,IACZ,WAAa,EAAA,MAAA;AAAA,IACb,WAAa,EAAA,GAAA;AAAA,IACb,SAAW,EAAA,EAAA;AAAA,IACX,SAAW,EAAA;AAAA,GACb;AAAA,EACA,WAAa,EAAA;AAAA,IACX,UAAY,EAAA,EAAA;AAAA,IACZ,QAAU,EAAA,EAAA;AAAA,IACV,KAAO,EAAA;AAAA,GACT;AAAA,EACA,eAAiB,EAAA;AAAA,IACf,MAAQ,EAAA,GAAA;AAAA,IACR,KAAO,EAAA,MAAA;AAAA,IACP,UAAY,EAAA,OAAA;AAAA,IACZ,cAAgB,EAAA;AAAA,GAClB;AAAA,EACA,KAAO,EAAA;AAAA,IACL,QAAU,EAAA,EAAA;AAAA,IACV,UAAY,EAAA,MAAA;AAAA,IACZ,KAAO,EAAA,OAAA;AAAA,IACP,KAAO,EAAA,KAAA;AAAA,IACP,UAAY,EAAA;AAAA,GACd;AAAA,EACA,MAAQ,EAAA;AAAA,IACN,MAAQ,EAAA,GAAA;AAAA,IACR,SAAW,EAAA,EAAA;AAAA,IACX,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,MAAQ,EAAA;AAAA,IACN,eAAiB,EAAA,OAAA;AAAA,IACjB,KAAO,EAAA,GAAA;AAAA,IACP,MAAQ,EAAA,EAAA;AAAA,IACR,YAAc,EAAA,EAAA;AAAA,IACd,UAAY,EAAA,EAAA;AAAA,IACZ,SAAW,EAAA,EAAA;AAAA,IACX,cAAgB,EAAA,QAAA;AAAA,IAChB,UAAY,EAAA;AAAA,GACd;AAAA,EACA,WAAa,EAAA;AAAA,IACX,QAAU,EAAA,EAAA;AAAA,IACV,UAAY,EAAA;AAAA,GACd;AAAA,EACA,gBAAkB,EAAA;AAAA,IAChB,aAAe,EAAA,KAAA;AAAA,IACf,cAAgB,EAAA,eAAA;AAAA,IAChB,UAAY,EAAA;AAAA,GACd;AAAA,EACA,gBAAkB,EAAA;AAAA,IAChB,iBAAmB,EAAA,EAAA;AAAA,IACnB,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,eAAiB,EAAA;AAAA,IACf,iBAAmB,EAAA,EAAA;AAAA,IACnB,eAAiB,EAAA;AAAA,GACnB;AAAA,EACA,QAAU,EAAA;AAAA,IACR,eAAiB,EAAA,CAAA;AAAA,IACjB,SAAW,EAAA;AAAA,GACb;AAAA,EACA,WAAa,EAAA;AAAA,IACX,KAAA,EAAO,OAAO,KAAM,CAAA,IAAA;AAAA,IACpB,QAAU,EAAA,EAAA;AAAA,IACV,UAAY,EAAA;AAAA,GACd;AAAA,EACA,SAAW,EAAA;AAAA,IACT,KAAO,EAAA,EAAA;AAAA,IACP,MAAQ,EAAA,EAAA;AAAA,IACR,UAAY,EAAA;AAAA;AAEhB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React__default,{useState,useEffect,useCallback}from'react';import {useToast,
|
|
1
|
+
import React__default,{useState,useEffect,useCallback}from'react';import {useToast,Button,ButtonText,ToastAlert,Box,VStack,FormControl,FormControlLabel,FormControlLabelText,Input,InputSlot,Text,InputField,FormControlError,FormControlErrorText}from'@admin-layout/gluestack-ui-mobile';import {useCreateTeamMutation}from'../../queries/slackuiQueries.js';import {NavigationRoutes}from'../../constants/routes.js';import'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import'react-native';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';import'../../hooks/useOptimizedChannelsQueries.js';const AddTeam = ({
|
|
2
2
|
navigation,
|
|
3
3
|
route
|
|
4
4
|
}) => {
|
|
@@ -45,7 +45,7 @@ import React__default,{useState,useEffect,useCallback}from'react';import {useToa
|
|
|
45
45
|
headerShown: true,
|
|
46
46
|
headerTitleAlign: "left",
|
|
47
47
|
headerTitleStyle: {},
|
|
48
|
-
headerRight: (props) => /* @__PURE__ */ React__default.createElement(Button, {
|
|
48
|
+
headerRight: (props) => /* @__PURE__ */ React__default.createElement(Button, { className: "mr-2", onPress: () => handleCreateTeam(), variant: "link", disabled: showCreateButton ? false : true }, /* @__PURE__ */ React__default.createElement(ButtonText, { style: {
|
|
49
49
|
color: showCreateButton ? "black" : "#71717a"
|
|
50
50
|
} }, "Create"))
|
|
51
51
|
});
|
|
@@ -74,5 +74,5 @@ import React__default,{useState,useEffect,useCallback}from'react';import {useToa
|
|
|
74
74
|
});
|
|
75
75
|
}
|
|
76
76
|
}, [name]);
|
|
77
|
-
return /* @__PURE__ */ React__default.createElement(Box, {
|
|
77
|
+
return /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 bg-white shadow-md py-2 h-full" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "md" }, /* @__PURE__ */ React__default.createElement(Box, { className: "px-4 pt-4" }, /* @__PURE__ */ React__default.createElement(FormControl, { className: "mt-3" }, /* @__PURE__ */ React__default.createElement(FormControlLabel, { className: "mb-1" }, /* @__PURE__ */ React__default.createElement(FormControlLabelText, null, "Team Name")), /* @__PURE__ */ React__default.createElement(Input, { variant: "underlined" }, /* @__PURE__ */ React__default.createElement(InputSlot, { className: "pl-0" }, /* @__PURE__ */ React__default.createElement(Text, { className: "text-gray-500" }, "#")), /* @__PURE__ */ React__default.createElement(InputField, { type: "text", placeholder: " e.g. My company team", maxLength: 80, value: name, onChange: (event) => setName(event.nativeEvent.text) }), /* @__PURE__ */ React__default.createElement(InputSlot, { className: "pr-3" }, /* @__PURE__ */ React__default.createElement(Text, { className: "text-gray-500" }, 80 - name.length))), /* @__PURE__ */ React__default.createElement(FormControlError, null, /* @__PURE__ */ React__default.createElement(FormControlErrorText, { className: "text-red-500" }, "Team names must be lowercase, and can't contain spaces,periods,or most punctuation."))), /* @__PURE__ */ React__default.createElement(FormControl, { className: "mt-3" }, /* @__PURE__ */ React__default.createElement(FormControlLabel, { className: "mb-1" }, /* @__PURE__ */ React__default.createElement(FormControlLabelText, null, "Description")), /* @__PURE__ */ React__default.createElement(Input, { variant: "underlined" }, /* @__PURE__ */ React__default.createElement(InputField, { type: "text", placeholder: "Team description", value: description, onChange: (event) => setDescription(event.nativeEvent.text) }))))));
|
|
78
78
|
};export{AddTeam as default};//# sourceMappingURL=AddTeam.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddTeam.js","sources":["../../../src/screens/Teams/AddTeam.tsx"],"sourcesContent":["import React, { useState, useEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity } from 'react-native';\nimport {\n Input,\n InputField,\n InputSlot,\n Text,\n VStack,\n Box,\n FormControl,\n FormControlLabel,\n FormControlLabelText,\n FormControlHelper,\n FormControlHelperText,\n FormControlError,\n FormControlErrorText,\n Button,\n ButtonText,\n useToast,\n ToastAlert,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useCreateTeamMutation } from 'common/lib/generated/generated.js';\nimport { AntDesign } from '@expo/vector-icons';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useDrawerLayout } from '../../hooks';\n\nconst AddTeam = ({ navigation, route }: any) => {\n const Toast = useToast();\n const [name, setName] = useState('');\n const [description, setDescription] = useState('');\n const [showCreateButton, setShowCreateButton] = useState(false);\n const { orgName, organizationDetail } = useDrawerLayout();\n\n const [createTeam, { error }] = useCreateTeamMutation({\n context: {\n headers: {\n orgname: orgName,\n },\n },\n onCompleted: (data: any) => {\n navigation.navigate(NavigationRoutes.Teams);\n },\n onError: (error: any) => {\n console.log('add team error', error);\n if (error) {\n Toast.show({\n placement: 'top',\n duration: 2000,\n render: ({ id }) => (\n <ToastAlert id={id} title={'Team already exists'} status={'error'} isClosable={false} />\n ),\n });\n }\n },\n });\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n useEffect(() => {\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {},\n headerRight: (props: any) => (\n <Button\n mr={'$2'}\n onPress={() => handleCreateTeam()}\n variant={'link'}\n disabled={showCreateButton ? false : true}\n >\n <ButtonText style={{ color: showCreateButton ? 'black' : '#71717a' }}>Create</ButtonText>\n </Button>\n ),\n });\n }, [name, description, showCreateButton]);\n\n const handleCreateTeam = useCallback(() => {\n try {\n if (name && name.length > 0) {\n createTeam({\n variables: {\n request: {\n name: name,\n title: name,\n description: description,\n //orgName: route?.params?.orgName,\n //emails:[],\n //tags:[]\n },\n },\n });\n }\n } catch (error) {\n console.log('error', error);\n Toast.show({\n placement: 'top',\n duration: 1000,\n render: ({ id }) => (\n <ToastAlert id={id} title={'Team already exists'} status={'error'} isClosable={false} />\n ),\n });\n }\n }, [name]);\n\n // const createNewTeam = () => {\n // if (name && name.length > 0) {\n // createTeam({\n // variables: {\n // request: {\n // name: name,\n // title: name,\n // description: description,\n // //orgName: route?.params?.orgName,\n // //emails:[],\n // //tags:[]\n // },\n // },\n // });\n // }\n // };\n\n return (\n <Box flex={1} bg={'$white'} softShadow={'1'} py={'$2'} h={'100%'}>\n <VStack space=\"md\">\n <Box px=\"$4\" pt=\"$4\">\n {/* <FormControl isInvalid={nameIsInvalid} mt=\"3\"> */}\n <FormControl mt=\"$3\">\n <FormControlLabel mb=\"$1\">\n <FormControlLabelText>Team Name</FormControlLabelText>\n </FormControlLabel>\n\n <Input variant=\"underlined\">\n <InputSlot pl=\"$0\">\n <Text color={'$trueGray500'}>#</Text>\n </InputSlot>\n <InputField\n type=\"text\"\n placeholder=\" e.g. My company team\"\n maxLength={80}\n value={name}\n onChangeText={(v) => setName(v)}\n />\n <InputSlot pr=\"$3\">\n <Text color={'$trueGray500'}>{80 - name.length}</Text>\n </InputSlot>\n </Input>\n <FormControlError>\n <FormControlErrorText color=\"$red\">\n Team names must be lowercase, and can't contain spaces,periods,or most punctuation.\n </FormControlErrorText>\n </FormControlError>\n </FormControl>\n <FormControl mt=\"$3\">\n <FormControlLabel mb=\"$1\">\n <FormControlLabelText>Description</FormControlLabelText>\n </FormControlLabel>\n <Input variant=\"underlined\">\n <InputField\n type=\"text\"\n placeholder=\"Team description\"\n value={description}\n onChangeText={(v) => setDescription(v)}\n />\n </Input>\n </FormControl>\n </Box>\n </VStack>\n </Box>\n );\n};\n\nexport default AddTeam;\n"],"names":["error","React"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AddTeam.js","sources":["../../../src/screens/Teams/AddTeam.tsx"],"sourcesContent":["import React, { useState, useEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity } from 'react-native';\nimport {\n Input,\n InputField,\n InputSlot,\n Text,\n VStack,\n Box,\n FormControl,\n FormControlLabel,\n FormControlLabelText,\n FormControlHelper,\n FormControlHelperText,\n FormControlError,\n FormControlErrorText,\n Button,\n ButtonText,\n useToast,\n ToastAlert,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useCreateTeamMutation } from '../../queries';\nimport { AntDesign } from '@expo/vector-icons';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useDrawerLayout } from '../../hooks';\nimport colors from 'tailwindcss/colors';\n\nconst AddTeam = ({ navigation, route }: any) => {\n const Toast = useToast();\n const [name, setName] = useState('');\n const [description, setDescription] = useState('');\n const [showCreateButton, setShowCreateButton] = useState(false);\n const { orgName, organizationDetail } = useDrawerLayout();\n\n const [createTeam, { error }] = useCreateTeamMutation({\n context: {\n headers: {\n orgname: orgName,\n },\n },\n onCompleted: (data: any) => {\n navigation.navigate(NavigationRoutes.Teams);\n },\n onError: (error: any) => {\n console.log('add team error', error);\n if (error) {\n Toast.show({\n placement: 'top',\n duration: 2000,\n render: ({ id }) => (\n <ToastAlert id={id} title={'Team already exists'} status={'error'} isClosable={false} />\n ),\n });\n }\n },\n });\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n useEffect(() => {\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {},\n headerRight: (props: any) => (\n <Button\n className=\"mr-2\"\n onPress={() => handleCreateTeam()}\n variant={'link'}\n disabled={showCreateButton ? false : true}\n >\n <ButtonText style={{ color: showCreateButton ? 'black' : '#71717a' }}>Create</ButtonText>\n </Button>\n ),\n });\n }, [name, description, showCreateButton]);\n\n const handleCreateTeam = useCallback(() => {\n try {\n if (name && name.length > 0) {\n createTeam({\n variables: {\n request: {\n name: name,\n title: name,\n description: description,\n //orgName: route?.params?.orgName,\n //emails:[],\n //tags:[]\n },\n },\n });\n }\n } catch (error) {\n console.log('error', error);\n Toast.show({\n placement: 'top',\n duration: 1000,\n render: ({ id }) => (\n <ToastAlert id={id} title={'Team already exists'} status={'error'} isClosable={false} />\n ),\n });\n }\n }, [name]);\n\n // const createNewTeam = () => {\n // if (name && name.length > 0) {\n // createTeam({\n // variables: {\n // request: {\n // name: name,\n // title: name,\n // description: description,\n // //orgName: route?.params?.orgName,\n // //emails:[],\n // //tags:[]\n // },\n // },\n // });\n // }\n // };\n\n return (\n <Box className=\"flex-1 bg-white shadow-md py-2 h-full\">\n <VStack space=\"md\">\n <Box className=\"px-4 pt-4\">\n {/* <FormControl isInvalid={nameIsInvalid} mt=\"3\"> */}\n <FormControl className=\"mt-3\">\n <FormControlLabel className=\"mb-1\">\n <FormControlLabelText>Team Name</FormControlLabelText>\n </FormControlLabel>\n\n <Input variant=\"underlined\">\n <InputSlot className=\"pl-0\">\n <Text className=\"text-gray-500\">#</Text>\n </InputSlot>\n <InputField\n type=\"text\"\n placeholder=\" e.g. My company team\"\n maxLength={80}\n value={name}\n onChange={(event) => setName(event.nativeEvent.text)}\n />\n <InputSlot className=\"pr-3\">\n <Text className=\"text-gray-500\">{80 - name.length}</Text>\n </InputSlot>\n </Input>\n <FormControlError>\n <FormControlErrorText className=\"text-red-500\">\n Team names must be lowercase, and can't contain spaces,periods,or most punctuation.\n </FormControlErrorText>\n </FormControlError>\n </FormControl>\n <FormControl className=\"mt-3\">\n <FormControlLabel className=\"mb-1\">\n <FormControlLabelText>Description</FormControlLabelText>\n </FormControlLabel>\n <Input variant=\"underlined\">\n <InputField\n type=\"text\"\n placeholder=\"Team description\"\n value={description}\n onChange={(event) => setDescription(event.nativeEvent.text)}\n />\n </Input>\n </FormControl>\n </Box>\n </VStack>\n </Box>\n );\n};\n\nexport default AddTeam;\n"],"names":["error","React"],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React__default,{useState,useEffect}from'react';import {Dimensions,StyleSheet}from'react-native';import {Box,Input,InputField,Fab,FabIcon,AddIcon}from'@admin-layout/gluestack-ui-mobile';import
|
|
1
|
+
import React__default,{useState,useEffect}from'react';import {Dimensions,StyleSheet}from'react-native';import {Box,Input,InputField,Fab,FabIcon,AddIcon}from'@admin-layout/gluestack-ui-mobile';import Colors from'../../../../constants/Colors.js';import {NavigationRoutes}from'../../../../constants/routes.js';import {RoomType}from'common';import {useChannelsQuery}from'../../../../queries/slackuiQueries.js';import {useNavigation,useIsFocused,useFocusEffect}from'@react-navigation/native';import'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../../../hooks/useDrawerLayout.js';import'../../../../hooks/useExpoNotificationProvider.js';import'../../../../hooks/useOptimizedChannelsQueries.js';import {uniqBy}from'lodash-es';import'@react-navigation/core';import'../../../../components/Header/styles.js';import'../../../../components/Tiles/styles.js';import'../../../../components/CustomDrawer/CustomDrawer.js';import'../../../../components/CustomBottomTabs/CustomBottomTabs.js';import'../../../../components/NavigationHeader/NavigationHeader.js';import'@react-navigation/elements';import'@common-stack/client-react';import'../../../../components/NavigationHeader/InboxNavigationHeader.js';import'tailwindcss/colors';import'../../../../components/WorkSpaceDrawer/WorkSpaceDrawer.js';import {ChannelsByAlphabeticalAccordion}from'../../../../components/Channels/ChannelsByAlphabeticalAccordion.js';import'../../../../components/SlackSearchInput/index.js';import'../../../../components/AppRootContextProviderComponent.js';import'../../../../components/Actionsheet.js';Dimensions.get("window").width;
|
|
2
2
|
Dimensions.get("window").height;
|
|
3
3
|
const defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public];
|
|
4
4
|
const Channels = ({
|
|
@@ -18,7 +18,7 @@ const Channels = ({
|
|
|
18
18
|
loading,
|
|
19
19
|
error,
|
|
20
20
|
refetch
|
|
21
|
-
} =
|
|
21
|
+
} = useChannelsQuery({
|
|
22
22
|
variables: {
|
|
23
23
|
criteria: {
|
|
24
24
|
orgName,
|
|
@@ -122,7 +122,7 @@ const Channels = ({
|
|
|
122
122
|
setChannels(intialChannels);
|
|
123
123
|
}
|
|
124
124
|
}, [intialChannels, channels]);
|
|
125
|
-
return /* @__PURE__ */ React__default.createElement(Box, {
|
|
125
|
+
return /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 bg-white" }, /* @__PURE__ */ React__default.createElement(Input, { className: "bg-white", variant: "underlined" }, /* @__PURE__ */ React__default.createElement(InputField, { type: "text", size: "xl", placeholderTextColor: "#404040", className: "px-3 items-center text-black text-[15px]", placeholder: "Search for channels", onChange: ({
|
|
126
126
|
nativeEvent: {
|
|
127
127
|
eventCount,
|
|
128
128
|
target,
|
|
@@ -130,10 +130,10 @@ const Channels = ({
|
|
|
130
130
|
}
|
|
131
131
|
}) => {
|
|
132
132
|
searchChannels(text);
|
|
133
|
-
}, autoCapitalize: "none", autoCorrect: false })), /* @__PURE__ */ React__default.createElement(ChannelsByAlphabeticalAccordion, { channels: sortedChannels, loading, onPress: openInbox }), /* @__PURE__ */ React__default.createElement(Fab, { size: "md",
|
|
133
|
+
}, autoCapitalize: "none", autoCorrect: false })), /* @__PURE__ */ React__default.createElement(ChannelsByAlphabeticalAccordion, { channels: sortedChannels, loading, onPress: openInbox }), /* @__PURE__ */ React__default.createElement(Fab, { size: "md", placement: "bottom right", className: "bg-white rounded-lg ", onPress: () => navigation.navigate(NavigationRoutes.AddChannel, {
|
|
134
134
|
teamName: teamName == null ? void 0 : teamName.toString(),
|
|
135
135
|
teamId: teamId == null ? void 0 : teamId.toString()
|
|
136
|
-
})
|
|
136
|
+
}) }, /* @__PURE__ */ React__default.createElement(FabIcon, { as: AddIcon, color: "#000" })));
|
|
137
137
|
};
|
|
138
138
|
StyleSheet.create({
|
|
139
139
|
container: {
|
|
@@ -145,7 +145,7 @@ StyleSheet.create({
|
|
|
145
145
|
marginTop: 5
|
|
146
146
|
},
|
|
147
147
|
headingText: {
|
|
148
|
-
color:
|
|
148
|
+
color: Colors.light.text,
|
|
149
149
|
fontSize: 16,
|
|
150
150
|
fontWeight: "400"
|
|
151
151
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Channels.js","sources":["../../../../../src/screens/Teams/Components/Channels/Channels.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { StyleSheet, TouchableHighlight, Dimensions } from 'react-native';\nimport { Input, InputField, Box, Fab, FabIcon, AddIcon } from '@admin-layout/gluestack-ui-mobile';\nimport Colors from '../../../../constants/Colors';\nimport { NavigationRoutes } from '../../../../constants/routes';\n// import { AntDesign } from '@expo/vector-icons';\n// import VirtualizedScrollView from '../VirtualizedScrollView';\nimport { RoomType } from 'common';\nimport { useGetChannelsByUserQuery, useGetChannelsByUserLazyQuery } from 'common/lib/generated/generated.js';\nimport { useIsFocused, useFocusEffect, useNavigation, useRoute } from '@react-navigation/native';\n// import { navigationRef } from '@common-stack/client-react';\n// import { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { StatusBar } from 'expo-status-bar';\nimport { useDrawerLayout } from '../../../../hooks';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport { ChannelsByAlphabeticalAccordion } from '../../../../components';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public];\n\nconst Channels = ({ teamId, teamName }: any) => {\n const { orgName, organizationDetail } = useDrawerLayout();\n const navigation = useNavigation<any>();\n // const route = useRoute<any>();\n const isFocused = useIsFocused();\n const [channels, setChannels] = useState<any[]>([]);\n const [intialChannels, setInitialChannels] = useState<any[]>([]);\n\n const {\n data: channelsData,\n loading,\n error,\n refetch,\n } = useGetChannelsByUserQuery({\n variables: {\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n team: teamId,\n },\n limit: 100,\n },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetch({\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n team: teamId,\n },\n limit: 100,\n });\n }\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, [orgName]),\n );\n\n useEffect(() => {\n if (channelsData) {\n let channels: any = channelsData?.channelsByUser?.filter((i: any) => i.type !== RoomType.Direct);\n channels = channels?.slice()?.sort((a: any, b: any) => a.title.localeCompare(b.title)) ?? [];\n setChannels((oldChannels: any) => uniqBy([...channels, ...oldChannels], ({ id }) => id));\n setInitialChannels((oldChannels: any) => uniqBy([...channels, ...oldChannels], ({ id }) => id));\n }\n }, [channelsData]);\n\n useEffect(() => {\n if (navigation)\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {\n borderBottomWidth: 1,\n },\n headerStyle: {\n borderBottomWidth: 1,\n borderColor: '#d1d2d3',\n },\n });\n }, [channels, navigation]);\n\n const openInbox = (item: any) => {\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: item?.id?.toString(),\n title: item?.title?.toString(),\n totalMembers: item?.members?.length,\n hideTabBar: true,\n });\n };\n\n const sortedChannels: any = React.useMemo(() => {\n const obj = channels.reduce((r, { id, title, type, members }) => {\n const l = title[0];\n if (!r[l]) r[l] = [{ id, title, type, members }];\n else r[l].push({ id, title, type, members });\n return r;\n }, {});\n\n const sorted = Object.entries(obj).sort(([a], [b]) => a.localeCompare(b));\n\n const sortedFilteredData = sorted.map(([key, value]) => {\n return {\n title: key,\n data: value,\n };\n });\n\n return sortedFilteredData;\n }, [channels]);\n\n const searchChannels = React.useCallback(\n (v: any) => {\n if (v) {\n const searchedChannel = channels.filter((o: any) => o?.title?.toLowerCase().includes(v?.toLowerCase()));\n setChannels(searchedChannel);\n } else {\n setChannels(intialChannels);\n }\n },\n [intialChannels, channels],\n );\n\n return (\n <Box flex={1} bg={'$white'}>\n <Input bg={'$white'} variant=\"underlined\">\n <InputField\n px={'$3'}\n alignItems=\"center\"\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n color=\"$black\"\n fontSize={15}\n placeholder=\"Search for channels\"\n onChange={({ nativeEvent: { eventCount, target, text } }) => {\n searchChannels(text);\n }}\n autoCapitalize={'none'}\n autoCorrect={false}\n />\n </Input>\n <ChannelsByAlphabeticalAccordion channels={sortedChannels} loading={loading} onPress={openInbox} />\n <Fab\n size=\"md\"\n bg={'$white'}\n borderRadius={'$lg'}\n right=\"$4\"\n bottom=\"$10\"\n onPress={() =>\n navigation.navigate(NavigationRoutes.AddChannel, {\n teamName: teamName?.toString(),\n teamId: teamId?.toString(),\n })\n }\n $pressed-bg={'$trueGray200'}\n $active-bg={'$trueGray200'}\n >\n <FabIcon as={AddIcon} color={'$black'} />\n </Fab>\n </Box>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n //justifyContent: 'center',\n padding: 20,\n },\n itemView: {\n paddingVertical: 8,\n marginTop: 5,\n },\n headingText: {\n color: Colors.light.text,\n fontSize: 16,\n fontWeight: '400',\n },\n});\n\nexport default React.memo(Channels);\n"],"names":["React","channels","Colors"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Channels.js","sources":["../../../../../src/screens/Teams/Components/Channels/Channels.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { StyleSheet, TouchableHighlight, Dimensions } from 'react-native';\nimport { Input, InputField, Box, Fab, FabIcon, AddIcon } from '@admin-layout/gluestack-ui-mobile';\nimport Colors from '../../../../constants/Colors';\nimport { NavigationRoutes } from '../../../../constants/routes';\n// import { AntDesign } from '@expo/vector-icons';\n// import VirtualizedScrollView from '../VirtualizedScrollView';\nimport { RoomType } from 'common';\nimport { useChannelsQuery, useChannelsLazyQuery } from '../../../../queries/slackuiQueries';\nimport { useIsFocused, useFocusEffect, useNavigation, useRoute } from '@react-navigation/native';\n// import { navigationRef } from '@common-stack/client-react';\n// import { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { StatusBar } from 'expo-status-bar';\nimport { useDrawerLayout } from '../../../../hooks';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport { ChannelsByAlphabeticalAccordion } from '../../../../components';\nimport colors from 'tailwindcss/colors';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public];\n\nconst Channels = ({ teamId, teamName }: any) => {\n const { orgName, organizationDetail } = useDrawerLayout();\n const navigation = useNavigation<any>();\n // const route = useRoute<any>();\n const isFocused = useIsFocused();\n const [channels, setChannels] = useState<any[]>([]);\n const [intialChannels, setInitialChannels] = useState<any[]>([]);\n\n const {\n data: channelsData,\n loading,\n error,\n refetch,\n } = useChannelsQuery({\n variables: {\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n team: teamId,\n },\n limit: 100,\n },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetch({\n criteria: {\n orgName: orgName,\n type: defaultChannelType,\n team: teamId,\n },\n limit: 100,\n });\n }\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, [orgName]),\n );\n\n useEffect(() => {\n if (channelsData) {\n let channels: any = channelsData?.channelsByUser?.filter((i: any) => i.type !== RoomType.Direct);\n channels = channels?.slice()?.sort((a: any, b: any) => a.title.localeCompare(b.title)) ?? [];\n setChannels((oldChannels: any) => uniqBy([...channels, ...oldChannels], ({ id }) => id));\n setInitialChannels((oldChannels: any) => uniqBy([...channels, ...oldChannels], ({ id }) => id));\n }\n }, [channelsData]);\n\n useEffect(() => {\n if (navigation)\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {\n borderBottomWidth: 1,\n },\n headerStyle: {\n borderBottomWidth: 1,\n borderColor: '#d1d2d3',\n },\n });\n }, [channels, navigation]);\n\n const openInbox = (item: any) => {\n navigation.navigate(NavigationRoutes.DialogMessages, {\n channelId: item?.id?.toString(),\n title: item?.title?.toString(),\n totalMembers: item?.members?.length,\n hideTabBar: true,\n });\n };\n\n const sortedChannels: any = React.useMemo(() => {\n const obj = channels.reduce((r, { id, title, type, members }) => {\n const l = title[0];\n if (!r[l]) r[l] = [{ id, title, type, members }];\n else r[l].push({ id, title, type, members });\n return r;\n }, {});\n\n const sorted = Object.entries(obj).sort(([a], [b]) => a.localeCompare(b));\n\n const sortedFilteredData = sorted.map(([key, value]) => {\n return {\n title: key,\n data: value,\n };\n });\n\n return sortedFilteredData;\n }, [channels]);\n\n const searchChannels = React.useCallback(\n (v: any) => {\n if (v) {\n const searchedChannel = channels.filter((o: any) => o?.title?.toLowerCase().includes(v?.toLowerCase()));\n setChannels(searchedChannel);\n } else {\n setChannels(intialChannels);\n }\n },\n [intialChannels, channels],\n );\n\n return (\n <Box className=\"flex-1 bg-white\">\n <Input className=\"bg-white\" variant=\"underlined\">\n <InputField\n type=\"text\"\n size=\"xl\"\n placeholderTextColor={'#404040'}\n className=\"px-3 items-center text-black text-[15px]\"\n placeholder=\"Search for channels\"\n onChange={({ nativeEvent: { eventCount, target, text } }) => {\n searchChannels(text);\n }}\n autoCapitalize={'none'}\n autoCorrect={false}\n />\n </Input>\n <ChannelsByAlphabeticalAccordion channels={sortedChannels} loading={loading} onPress={openInbox} />\n <Fab\n size=\"md\"\n placement={'bottom right'}\n className=\"bg-white rounded-lg \"\n onPress={() =>\n navigation.navigate(NavigationRoutes.AddChannel, {\n teamName: teamName?.toString(),\n teamId: teamId?.toString(),\n })\n }\n >\n <FabIcon as={AddIcon} color={'#000'} />\n </Fab>\n </Box>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n flex: 1,\n //justifyContent: 'center',\n padding: 20,\n },\n itemView: {\n paddingVertical: 8,\n marginTop: 5,\n },\n headingText: {\n color: Colors.light.text,\n fontSize: 16,\n fontWeight: '400',\n },\n});\n\nexport default React.memo(Channels);\n"],"names":["React","channels"],"mappings":"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"}
|
|
@@ -42,13 +42,17 @@ const TeamMembersScreen = ({
|
|
|
42
42
|
Array.isArray(matches) ? (_d = (_c = (_b = matches == null ? void 0 : matches.reverse()) == null ? void 0 : _b.join("")) == null ? void 0 : _c.substring(0, 2)) == null ? void 0 : _d.toUpperCase() : "";
|
|
43
43
|
return /* @__PURE__ */ React__default.createElement(TouchableOpacity, { key: item == null ? void 0 : item.id, style: {
|
|
44
44
|
marginVertical: 10
|
|
45
|
-
}, onPress: () => goToProfile(item == null ? void 0 : item.userId) }, /* @__PURE__ */ React__default.createElement(HStack, {
|
|
45
|
+
}, onPress: () => goToProfile(item == null ? void 0 : item.userId) }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center justify-between" }, /* @__PURE__ */ React__default.createElement(HStack, { className: "flex-1 items-center justify-between" }, /* @__PURE__ */ React__default.createElement(HStack, { className: "items-center", space: "sm" }, /* @__PURE__ */ React__default.createElement(Avatar, { size: "sm", className: "bg-gray-400 rounded-full" }, /* @__PURE__ */ React__default.createElement(AvatarFallbackText, { className: "text-white font-bold" }, startCase((_e = item == null ? void 0 : item.name) != null ? _e : "icon"))), /* @__PURE__ */ React__default.createElement(Text, { className: "text-gray-800 font-bold" }, item == null ? void 0 : item.name)), /* @__PURE__ */ React__default.createElement(Badge, { size: "md", className: "rounded-none", action: "info", variant: "outline" }, /* @__PURE__ */ React__default.createElement(BadgeText, null, item == null ? void 0 : item.role)))));
|
|
46
46
|
};
|
|
47
|
-
return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm",
|
|
47
|
+
return /* @__PURE__ */ React__default.createElement(VirtualizedScrollView, null, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm", className: "flex-1 pt-2 bg-white" }, /* @__PURE__ */ React__default.createElement(FlatList, { style: {
|
|
48
|
+
paddingHorizontal: 4,
|
|
49
|
+
flex: 1,
|
|
50
|
+
paddingBottom: 10
|
|
51
|
+
}, keyExtractor: (item, index) => String(index), contentContainerStyle: {
|
|
48
52
|
flex: 1,
|
|
49
53
|
marginBottom: 100
|
|
50
54
|
}, data: teamMembers && teamMembers.length > 0 ? teamMembers : [], renderItem: renderTeamMembers, ListEmptyComponent: () => {
|
|
51
|
-
return /* @__PURE__ */ React__default.createElement(Box, {
|
|
55
|
+
return /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 pt-20 items-center justify-center" }, (teamMembers == null ? void 0 : teamMembers.length) == 0 && !loading ? /* @__PURE__ */ React__default.createElement(Text, { className: "text-center text-gray-600 py-10" }, "No members found") : /* @__PURE__ */ React__default.createElement(Spinner, { color: "#3b82f6" }));
|
|
52
56
|
}, key: "team-members-list", keyboardShouldPersistTaps: "always" })));
|
|
53
57
|
};
|
|
54
58
|
var TeamMembers = React__default.memo(TeamMembersScreen);export{TeamMembers as default};//# sourceMappingURL=Members.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Members.js","sources":["../../../../../src/screens/Teams/Components/Members/Members.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport VirtualizedScrollView from '../../../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport {\n Center,\n Heading,\n Input,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n ButtonText,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Spinner,\n Badge,\n BadgeText,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport {
|
|
1
|
+
{"version":3,"file":"Members.js","sources":["../../../../../src/screens/Teams/Components/Members/Members.tsx"],"sourcesContent":["import { Ionicons } from '@expo/vector-icons';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { TouchableOpacity, Dimensions, Keyboard, KeyboardEvent } from 'react-native';\nimport VirtualizedScrollView from '../../../../components/VirtualizedScrollView';\nimport { useNavigation, useRoute, useFocusEffect } from '@react-navigation/native';\nimport { startCase, orderBy, uniqBy } from 'lodash-es';\nimport {\n Center,\n Heading,\n Input,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n ButtonText,\n FlatList,\n HStack,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Spinner,\n Badge,\n BadgeText,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { RoomType } from 'common';\nimport { FontAwesome, Feather, Octicons, MaterialIcons } from '@expo/vector-icons';\nimport { NavigationRoutes } from '../../../../constants';\nimport { useSelector } from 'react-redux';\nimport { userSelector } from '@adminide-stack/user-auth0-client';\nimport colors from 'tailwindcss/colors';\n\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst TeamMembersScreen = ({ team, loading, teamId, teamName }) => {\n const navigation = useNavigation<any>();\n const route = useRoute<any>();\n const user = useSelector(userSelector);\n const [teamMembers, setTeamMembers] = useState<any>([]);\n const [initialOrgMembers, setInitialOrgMembers] = useState<any>([]);\n\n React.useEffect(() => {\n if (team?.getTeam?.teamMembers) {\n setTeamMembers((oldMembers: any) => uniqBy([...team?.getTeam?.teamMembers, ...oldMembers], ({ id }) => id));\n setInitialOrgMembers((oldMembers: any) =>\n uniqBy([...team?.getTeam?.teamMembers, ...oldMembers], ({ id }) => id),\n );\n }\n }, [team?.getTeam?.teamMembers]);\n\n const goToProfile = React.useCallback((userId: any) => {\n navigation.navigate(NavigationRoutes.Profile, {\n userId: userId?.toString(),\n });\n }, []);\n\n const renderTeamMembers = ({ item }: any) => {\n const matches: any = item?.name?.match(/\\b(\\w)/g);\n //const acronym: any = matches.join('').substring(0, 2); // JSON\n const acronym: any = Array.isArray(matches) ? matches?.reverse()?.join('')?.substring(0, 2)?.toUpperCase() : '';\n return (\n <TouchableOpacity key={item?.id} style={{ marginVertical: 10 }} onPress={() => goToProfile(item?.userId)}>\n <HStack className=\"flex-1 items-center justify-between\">\n <HStack className=\"flex-1 items-center justify-between\">\n <HStack className=\"items-center\" space={'sm'}>\n <Avatar size={'sm'} className=\"bg-gray-400 rounded-full\">\n <AvatarFallbackText className=\"text-white font-bold\">\n {startCase(item?.name ?? 'icon')}\n </AvatarFallbackText>\n </Avatar>\n\n <Text className=\"text-gray-800 font-bold\">{item?.name}</Text>\n </HStack>\n\n <Badge size=\"md\" className=\"rounded-none\" action=\"info\" variant={'outline'}>\n <BadgeText>{item?.role}</BadgeText>\n </Badge>\n </HStack>\n </HStack>\n </TouchableOpacity>\n );\n };\n\n return (\n <VirtualizedScrollView>\n <VStack space=\"sm\" className=\"flex-1 pt-2 bg-white\">\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={teamMembers && teamMembers.length > 0 ? teamMembers : []}\n renderItem={renderTeamMembers}\n ListEmptyComponent={() => {\n return (\n <Box className=\"flex-1 pt-20 items-center justify-center\">\n {teamMembers?.length == 0 && !loading ? (\n <Text className=\"text-center text-gray-600 py-10\">No members found</Text>\n ) : (\n <Spinner color={'#3b82f6'} />\n )}\n </Box>\n );\n }}\n key={'team-members-list'}\n keyboardShouldPersistTaps=\"always\"\n />\n </VStack>\n </VirtualizedScrollView>\n );\n};\n\nexport default React.memo(TeamMembersScreen);\n"],"names":["React","_a"],"mappings":"qtBAaoB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AACxB,UAAA,CAAW,GAAI,CAAA,QAAQ,CAAE,CAAA;AAC9C,MAAM,oBAAoB,CAAC;AAAA,EACzB,IAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAM,KAAA;AApBN,EAAA,IAAA,EAAA;AAqBE,EAAA,MAAM,aAAa,aAAmB,EAAA;AACtC,EAAc,QAAc;AAC5B,EAAa,YAAY,YAAY;AACrC,EAAA,MAAM,CAAC,WAAa,EAAA,cAAc,CAAI,GAAA,QAAA,CAAc,EAAE,CAAA;AACtD,EAAA,MAAM,CAAC,iBAAmB,EAAA,oBAAoB,CAAI,GAAA,QAAA,CAAc,EAAE,CAAA;AAClE,EAAAA,cAAA,CAAM,UAAU,MAAM;AA1BxB,IAAAC,IAAAA,GAAAA;AA2BI,IAAA,IAAA,CAAIA,GAAA,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,OAAN,KAAA,IAAA,GAAA,MAAA,GAAAA,IAAe,WAAa,EAAA;AAC9B,MAAA,cAAA,CAAe,CAAC,UAAiB,KAAA;AA5BvC,QAAAA,IAAAA,GAAAA;AA4B0C,QAAO,OAAA,MAAA,CAAA,CAAC,GAAGA,CAAAA,GAAAA,GAAA,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,OAAA,KAAN,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAe,WAAa,EAAA,GAAG,UAAU,CAAA,EAAG,CAAC;AAAA,UAC1F;AAAA,cACI,EAAE,CAAA;AAAA,OAAC,CAAA;AACT,MAAA,oBAAA,CAAqB,CAAC,UAAiB,KAAA;AA/B7C,QAAAA,IAAAA,GAAAA;AA+BgD,QAAO,OAAA,MAAA,CAAA,CAAC,GAAGA,CAAAA,GAAAA,GAAA,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,OAAA,KAAN,IAAAA,GAAAA,MAAAA,GAAAA,GAAAA,CAAe,WAAa,EAAA,GAAG,UAAU,CAAA,EAAG,CAAC;AAAA,UAChG;AAAA,cACI,EAAE,CAAA;AAAA,OAAC,CAAA;AAAA;AACX,KACC,CAAC,CAAA,EAAA,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,OAAN,KAAA,IAAA,GAAA,MAAA,GAAA,EAAA,CAAe,WAAW,CAAC,CAAA;AAC/B,EAAA,MAAM,WAAc,GAAAD,cAAA,CAAM,WAAY,CAAA,CAAC,MAAgB,KAAA;AACrD,IAAW,UAAA,CAAA,QAAA,CAAS,iBAAiB,OAAS,EAAA;AAAA,MAC5C,QAAQ,MAAQ,IAAA,IAAA,GAAA,MAAA,GAAA,MAAA,CAAA,QAAA;AAAA,KACjB,CAAA;AAAA,GACH,EAAG,EAAE,CAAA;AACL,EAAA,MAAM,oBAAoB,CAAC;AAAA,IACzB;AAAA,GACS,KAAA;AA3Cb,IAAA,IAAAC,GAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA,EAAA;AA4CI,IAAA,MAAM,WAAeA,GAAA,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,IAAN,KAAA,IAAA,GAAA,MAAA,GAAAA,IAAY,KAAM,CAAA,SAAA,CAAA;AAEvC,IAAqB,KAAA,CAAM,OAAQ,CAAA,OAAO,KAAI,EAAS,GAAA,CAAA,EAAA,GAAA,CAAA,EAAA,GAAA,OAAA,IAAA,IAAA,GAAA,MAAA,GAAA,OAAA,CAAA,OAAA,EAAA,KAAT,IAAoB,GAAA,MAAA,GAAA,EAAA,CAAA,IAAA,CAAK,QAAzB,IAA8B,GAAA,MAAA,GAAA,EAAA,CAAA,SAAA,CAAU,CAAG,EAAA,CAAA,CAAA,KAA3C,mBAA+C,WAAgB,EAAA,GAAA;AAC7G,IAAA,uBAAQD,cAAA,CAAA,aAAA,CAAA,gBAAA,EAAA,EAAiB,GAAK,EAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,IAAI,KAAO,EAAA;AAAA,MAC7C,cAAgB,EAAA;AAAA,KACf,EAAA,OAAA,EAAS,MAAM,WAAA,CAAY,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,MAAM,CAC9B,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,MAAO,EAAA,EAAA,SAAA,EAAU,qCACd,EAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,UAAO,SAAU,EAAA,qCAAA,EAAA,kBACbA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAO,SAAU,EAAA,cAAA,EAAe,KAAO,EAAA,IAAA,EAAA,kBACnCA,cAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAO,IAAM,EAAA,IAAA,EAAM,SAAU,EAAA,0BAAA,EAAA,kBACzBA,cAAA,CAAA,aAAA,CAAA,kBAAA,EAAA,EAAmB,WAAU,sBACzB,EAAA,EAAA,SAAA,CAAA,CAAU,EAAM,GAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,IAAA,KAAN,IAAc,GAAA,EAAA,GAAA,MAAM,CACnC,CACJ,CAEA,kBAAAA,cAAA,CAAA,aAAA,CAAC,IAAK,EAAA,EAAA,SAAA,EAAU,yBAA2B,EAAA,EAAA,IAAA,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAM,IAAK,CAC1D,mBAECA,cAAA,CAAA,aAAA,CAAA,KAAA,EAAA,EAAM,IAAK,EAAA,IAAA,EAAK,SAAU,EAAA,cAAA,EAAe,MAAO,EAAA,MAAA,EAAO,OAAS,EAAA,SAAA,EAAA,kBAC5DA,cAAA,CAAA,aAAA,CAAA,SAAA,EAAA,IAAA,EAAW,IAAM,IAAA,IAAA,GAAA,MAAA,GAAA,IAAA,CAAA,IAAK,CAC3B,CACJ,CACJ,CACJ,CAAA;AAAA,GACV;AACA,EAAO,uBAAAA,cAAA,CAAA,aAAA,CAAC,qBACE,EAAA,IAAA,kBAAAA,cAAA,CAAA,aAAA,CAAC,MAAO,EAAA,EAAA,KAAA,EAAM,MAAK,SAAU,EAAA,sBAAA,EAAA,kBACxBA,cAAA,CAAA,aAAA,CAAA,QAAA,EAAA,EAAS,KAAO,EAAA;AAAA,IACzB,iBAAmB,EAAA,CAAA;AAAA,IACnB,IAAM,EAAA,CAAA;AAAA,IACN,aAAe,EAAA;AAAA,GACjB,EAAG,cAAc,CAAC,IAAA,EAAM,UAAU,MAAO,CAAA,KAAK,GAAG,qBAAuB,EAAA;AAAA,IACtE,IAAM,EAAA,CAAA;AAAA,IACN,YAAc,EAAA;AAAA,GACb,EAAA,IAAA,EAAM,WAAe,IAAA,WAAA,CAAY,MAAS,GAAA,CAAA,GAAI,WAAc,GAAA,EAAI,EAAA,UAAA,EAAY,iBAAmB,EAAA,kBAAA,EAAoB,MAAM;AAC1H,IAAA,oDAAQ,GAAI,EAAA,EAAA,SAAA,EAAU,+CACG,WAAa,IAAA,IAAA,GAAA,MAAA,GAAA,WAAA,CAAA,MAAA,KAAU,KAAK,CAAC,OAAA,gDAAW,IAAK,EAAA,EAAA,SAAA,EAAU,qCAAkC,kBAAgB,CAAA,gDAAW,OAAQ,EAAA,EAAA,KAAA,EAAO,WAAW,CACnJ,CAAA;AAAA,KACnB,GAAK,EAAA,mBAAA,EAAqB,yBAA0B,EAAA,QAAA,EAAS,CAC1D,CACJ,CAAA;AACR,CAAA;AACA,kBAAeA,cAAA,CAAM,KAAK,iBAAiB,CAAA"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {useNavigation,useIsFocused,useFocusEffect}from'@react-navigation/native';import React__default,{useEffect}from'react';import {Dimensions}from'react-native';import {
|
|
1
|
+
import {useNavigation,useIsFocused,useFocusEffect}from'@react-navigation/native';import React__default,{useEffect}from'react';import {SafeAreaView,Dimensions}from'react-native';import {Box}from'@admin-layout/gluestack-ui-mobile';import {userSelector}from'@adminide-stack/user-auth0-client';import {useSelector}from'react-redux';import {RoomType}from'common';import'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';import'../../hooks/useOptimizedChannelsQueries.js';import {StatusBar}from'expo-status-bar';import Channels from'./Components/Channels/Channels.js';import TeamMembers from'./Components/Members/Members.js';import {LoadingSpinnerDefault}from'../../components/LoadingSpinner/index.js';import {useTeamQuery}from'../../queries/slackuiQueries.js';var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
2
2
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
3
3
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
4
4
|
var __objRest = (source, exclude) => {
|
|
@@ -38,12 +38,7 @@ const Team = (_a) => {
|
|
|
38
38
|
loading,
|
|
39
39
|
error,
|
|
40
40
|
refetch
|
|
41
|
-
} =
|
|
42
|
-
variables: {
|
|
43
|
-
orgName,
|
|
44
|
-
teamName: (_a2 = route == null ? void 0 : route.params) == null ? void 0 : _a2.teamName
|
|
45
|
-
}
|
|
46
|
-
});
|
|
41
|
+
} = useTeamQuery(orgName, (_a2 = route == null ? void 0 : route.params) == null ? void 0 : _a2.teamName);
|
|
47
42
|
useFocusEffect(React__default.useCallback(() => {
|
|
48
43
|
var _a3;
|
|
49
44
|
if (orgName) {
|
|
@@ -71,6 +66,9 @@ const Team = (_a) => {
|
|
|
71
66
|
}, [team, navigation]);
|
|
72
67
|
if (loading)
|
|
73
68
|
return /* @__PURE__ */ React__default.createElement(LoadingSpinnerDefault, null);
|
|
74
|
-
return /* @__PURE__ */ React__default.createElement(SafeAreaView, {
|
|
69
|
+
return /* @__PURE__ */ React__default.createElement(SafeAreaView, { style: {
|
|
70
|
+
flex: 1,
|
|
71
|
+
backgroundColor: "#fff"
|
|
72
|
+
} }, /* @__PURE__ */ React__default.createElement(StatusBar, { style: "light" }), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1" }, tab == "channels" && /* @__PURE__ */ React__default.createElement(Channels, { teamId: (_c = route == null ? void 0 : route.params) == null ? void 0 : _c.teamId, teamName: (_d = route == null ? void 0 : route.params) == null ? void 0 : _d.teamName, team }), tab == "members" && /* @__PURE__ */ React__default.createElement(TeamMembers, { teamId: (_e = route == null ? void 0 : route.params) == null ? void 0 : _e.teamId, teamName: (_f = route == null ? void 0 : route.params) == null ? void 0 : _f.teamName, team, loading })));
|
|
75
73
|
};
|
|
76
74
|
var Team$1 = React__default.memo(Team);export{Team$1 as default};//# sourceMappingURL=Team.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Team.js","sources":["../../../src/screens/Teams/Team.tsx"],"sourcesContent":["import { useIsFocused, useFocusEffect } from '@react-navigation/native';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport {
|
|
1
|
+
{"version":3,"file":"Team.js","sources":["../../../src/screens/Teams/Team.tsx"],"sourcesContent":["import { useIsFocused, useFocusEffect } from '@react-navigation/native';\nimport React, { useState, useEffect, useLayoutEffect } from 'react';\nimport { SafeAreaView, Dimensions } from 'react-native';\nimport { Box } from '@admin-layout/gluestack-ui-mobile';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { useSelector } from 'react-redux';\nimport { useNavigation, useRoute } from '@react-navigation/native';\n// import { navigationRef } from '@common-stack/client-react';\nimport { startCase, uniqBy, orderBy } from 'lodash-es';\nimport { RoomType } from 'common';\nimport { useDrawerLayout } from '../../hooks';\n// import VirtualizedScrollView from '../../components/VirtualizedScrollView';\nimport { StatusBar } from 'expo-status-bar';\n// import { NavigationHeader } from '../../components';\nimport { Channels } from './Components/Channels';\nimport { TeamMembers } from './Components/Members';\nimport { LoadingSpinnerDefault } from '../../components/LoadingSpinner';\nimport colors from 'tailwindcss/colors';\nimport { useTeamQuery } from '../../queries/slackuiQueries';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst defaultChannelType = [RoomType.Channel, RoomType.Private, RoomType.Public];\n\nconst Team = ({ tab = 'channels', route, ...props }) => {\n const channelType = tab === 'members' ? RoomType.Direct : defaultChannelType;\n const { orgName, organizationDetail } = useDrawerLayout();\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const isFocused = useIsFocused();\n\n const { data: team, loading, error, refetch } = useTeamQuery(orgName, route?.params?.teamName);\n\n useFocusEffect(\n React.useCallback(() => {\n if (orgName) {\n refetch({\n orgName: orgName,\n teamName: route?.params?.teamName,\n });\n }\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, [orgName, tab, route?.params?.teamId]),\n );\n\n useEffect(() => {\n if (navigation)\n navigation.setOptions({\n headerShown: true,\n headerTitleAlign: 'left',\n headerTitleStyle: {\n borderBottomWidth: 1,\n },\n headerStyle: {\n borderBottomWidth: 1,\n borderColor: '#d1d2d3',\n },\n });\n }, [team, navigation]);\n\n if (loading) return <LoadingSpinnerDefault />;\n\n return (\n <SafeAreaView style={{ flex: 1, backgroundColor: '#fff' }}>\n <StatusBar style=\"light\" />\n <Box className=\"flex-1\">\n {tab == 'channels' && (\n <Channels teamId={route?.params?.teamId} teamName={route?.params?.teamName} team={team} />\n )}\n {tab == 'members' && (\n <TeamMembers\n teamId={route?.params?.teamId}\n teamName={route?.params?.teamName}\n team={team}\n loading={loading}\n />\n )}\n </Box>\n </SafeAreaView>\n );\n};\n\nexport default React.memo(Team);\n"],"names":["_a","_b","React"],"mappings":"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"}
|