@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,4 +1,4 @@
1
- import React__default from'react';import {Feather,Ionicons,AntDesign,MaterialIcons}from'@expo/vector-icons';import {TouchableHighlight}from'react-native';import {SafeAreaView,Box,HStack,Text,VStack,FlatList,Divider,Button,ButtonText,Avatar}from'@admin-layout/gluestack-ui-mobile';import {useSelector,shallowEqual}from'react-redux';import {NavigationRoutes}from'../../constants/routes.js';import {useNavigation,useFocusEffect}from'@react-navigation/native';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import {useGetOrganizationDetailQuery,useGetUserOrganizationsQuery}from'common/lib/generated/generated.js';import {userSelector}from'@adminide-stack/user-auth0-client';import'@react-navigation/core';import'../../components/Header/styles.js';import'../../components/Tiles/styles.js';import'../../components/CustomDrawer/CustomDrawer.js';import'../../components/CustomBottomTabs/CustomBottomTabs.js';import'../../components/NavigationHeader/NavigationHeader.js';import'@react-navigation/elements';import'@common-stack/client-react';import'../../components/NavigationHeader/InboxNavigationHeader.js';import {LoadingSpinnerDefault}from'../../components/LoadingSpinner/index.js';import'../../components/WorkSpaceDrawer/WorkSpaceDrawer.js';import'../../components/Channels/ChannelsByAlphabeticalAccordion.js';import'../../components/SlackSearchInput/index.js';import'expo-font';import'expo-splash-screen';import'../../hooks/useExpoNotificationProvider.js';const AddWorkSpace = (props) => {
1
+ import React__default from'react';import {SafeAreaView,TouchableHighlight}from'react-native';import {Feather,Ionicons,AntDesign}from'@expo/vector-icons';import {Box,HStack,Text,VStack,FlatList,Divider,Button,ButtonText,Avatar}from'@admin-layout/gluestack-ui-mobile';import {useSelector,shallowEqual}from'react-redux';import {NavigationRoutes}from'../../constants/routes.js';import {useNavigation,useFocusEffect}from'@react-navigation/native';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import {useOrganizationDetailQuery,useUserOrganizationsQuery}from'../../queries/slackuiQueries.js';import {userSelector}from'@adminide-stack/user-auth0-client';import'@react-navigation/core';import'../../components/Header/styles.js';import'../../components/Tiles/styles.js';import'../../components/CustomDrawer/CustomDrawer.js';import'../../components/CustomBottomTabs/CustomBottomTabs.js';import'../../components/NavigationHeader/NavigationHeader.js';import'@react-navigation/elements';import'@common-stack/client-react';import'../../components/NavigationHeader/InboxNavigationHeader.js';import {LoadingSpinnerDefault}from'../../components/LoadingSpinner/index.js';import'../../components/WorkSpaceDrawer/WorkSpaceDrawer.js';import'../../components/Channels/ChannelsByAlphabeticalAccordion.js';import'../../components/SlackSearchInput/index.js';import'../../components/AppRootContextProviderComponent.js';import'../../components/Actionsheet.js';import colors from'tailwindcss/colors';const AddWorkSpace = (props) => {
2
2
  var _a;
3
3
  const navigation = useNavigation();
4
4
  const user = useSelector(userSelector, shallowEqual);
@@ -15,7 +15,7 @@ import React__default from'react';import {Feather,Ionicons,AntDesign,MaterialIco
15
15
  data: orgDetailData,
16
16
  refetch: _refetchOrgDetail,
17
17
  loading: orgDetailLoading
18
- } = useGetOrganizationDetailQuery({
18
+ } = useOrganizationDetailQuery(orgName || "", {
19
19
  variables: {
20
20
  where: {
21
21
  name: orgName
@@ -26,7 +26,7 @@ import React__default from'react';import {Feather,Ionicons,AntDesign,MaterialIco
26
26
  data: userOrganizationsData,
27
27
  loading: isLoadingUsersOrganization,
28
28
  refetch: refetchUserOrganizations
29
- } = useGetUserOrganizationsQuery({
29
+ } = useUserOrganizationsQuery({
30
30
  variables: {
31
31
  userId: user == null ? void 0 : user.id
32
32
  }
@@ -37,11 +37,7 @@ import React__default from'react';import {Feather,Ionicons,AntDesign,MaterialIco
37
37
  userId: user == null ? void 0 : user.id
38
38
  });
39
39
  if (orgName)
40
- _refetchOrgDetail({
41
- where: {
42
- name: orgName
43
- }
44
- });
40
+ _refetchOrgDetail();
45
41
  }, [orgName, open]));
46
42
  React__default.useEffect(() => {
47
43
  if (orgDetailData == null ? void 0 : orgDetailData.getOrganizationDetail)
@@ -49,8 +45,11 @@ import React__default from'react';import {Feather,Ionicons,AntDesign,MaterialIco
49
45
  }, [orgDetailData == null ? void 0 : orgDetailData.getOrganizationDetail]);
50
46
  const goToOrganization = React__default.useCallback((orgName2) => {
51
47
  setOpen(false);
52
- navigation.navigate(NavigationRoutes.Home, {
53
- orgName: orgName2
48
+ navigation.navigate("MainStack", {
49
+ screen: NavigationRoutes.Home,
50
+ params: {
51
+ orgName: orgName2
52
+ }
54
53
  });
55
54
  }, []);
56
55
  const CreateOrganization = React__default.useCallback(() => {
@@ -66,40 +65,45 @@ import React__default from'react';import {Feather,Ionicons,AntDesign,MaterialIco
66
65
  var _a2, _b, _c, _d, _e, _f;
67
66
  const matches = (_b = (_a2 = o == null ? void 0 : o.title) == null ? void 0 : _a2.match(/\b(\w)/g)) != null ? _b : "";
68
67
  const acronym = (_e = (_d = (_c = matches == null ? void 0 : matches.join("")) == null ? void 0 : _c.substring(0, 2)) == null ? void 0 : _d.toUpperCase()) != null ? _e : "";
69
- return /* @__PURE__ */ React__default.createElement(TouchableHighlight, { underlayColor: "transparent", activeOpacity: 0.5, key: i, onPress: () => goToOrganization(o.name) }, /* @__PURE__ */ React__default.createElement(HStack, { px: "$1", justifyContent: "space-between", alignItems: "center", w: "100%", py: "$2" }, /* @__PURE__ */ React__default.createElement(HStack, { space: "sm", alignItems: "center" }, /* @__PURE__ */ React__default.createElement(
68
+ return /* @__PURE__ */ React__default.createElement(TouchableHighlight, { underlayColor: "transparent", activeOpacity: 0.5, key: i, onPress: () => goToOrganization(o.name), style: {
69
+ marginVertical: 8
70
+ } }, /* @__PURE__ */ React__default.createElement(HStack, { className: "justify-between items-center w-full py-2" }, /* @__PURE__ */ React__default.createElement(HStack, { space: "md", className: "items-center" }, /* @__PURE__ */ React__default.createElement(
70
71
  Button,
71
72
  {
72
- mx: "$2",
73
- px: "$2",
74
- py: "$2",
75
73
  size: "md",
76
- bg: "transparent"
74
+ className: "mx-2 px-2 py-2 bg-transparent"
77
75
  },
78
- /* @__PURE__ */ React__default.createElement(
79
- Avatar,
80
- {
81
- bg: "$trueGray300",
82
- size: "md",
83
- borderRadius: "$lg",
84
- borderWidth: o.name == orgName ? "$2" : "$1",
85
- borderColor: o.name == orgName ? "#000" : "#d3d3d3",
86
- p: "$0"
87
- },
88
- /* @__PURE__ */ React__default.createElement(Text, { fontWeight: "$extrabold", color: "$black", style: {
89
- fontSize: 18
90
- } }, acronym)
91
- )
92
- ), /* @__PURE__ */ React__default.createElement(Text, { color: "$black", style: {
76
+ /* @__PURE__ */ React__default.createElement(Avatar, { size: "md", className: `bg-gray-200 rounded-lg border-[${o.name == orgName ? "2" : "1"}] p-0`, style: {
77
+ backgroundColor: "#e5e7eb",
78
+ borderColor: o.name == orgName ? "#000" : "#d3d3d3"
79
+ } }, /* @__PURE__ */ React__default.createElement(Text, { className: "font-extrabold", color: colors.black, style: {
80
+ fontSize: 18
81
+ } }, acronym))
82
+ ), /* @__PURE__ */ React__default.createElement(Text, { color: colors.black, style: {
93
83
  fontSize: 16
94
- }, w: "60%", fontWeight: "$bold" }, (_f = o == null ? void 0 : o.title) != null ? _f : o.name)), /* @__PURE__ */ React__default.createElement(Button, { bg: "transparent", size: "lg", pr: "$1" }, /* @__PURE__ */ React__default.createElement(MaterialIcons, { size: 30, name: "more-vert", color: "#000" }))));
84
+ }, className: "w-[60%] font-bold" }, (_f = o == null ? void 0 : o.title) != null ? _f : o.name))));
95
85
  };
96
86
  if (orgDetailLoading)
97
87
  return /* @__PURE__ */ React__default.createElement(LoadingSpinnerDefault, null);
98
- return /* @__PURE__ */ React__default.createElement(SafeAreaView, { flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1, w: "100%" }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1, bg: "$white" }, /* @__PURE__ */ React__default.createElement(HStack, { px: "$2", mx: "$2", py: "$4", justifyContent: "space-between" }, /* @__PURE__ */ React__default.createElement(Text, { textAlign: "center", fontWeight: "$bold" }, (_a = user == null ? void 0 : user.profile) == null ? void 0 : _a.email, " "), /* @__PURE__ */ React__default.createElement(Feather, { color: "black", name: "info", size: 20 })), /* @__PURE__ */ React__default.createElement(VStack, { flex: 0.8, space: "sm" }, /* @__PURE__ */ React__default.createElement(FlatList, { flex: 1, keyExtractor: (item, index) => String(index), contentContainerStyle: {
99
- flexGrow: 1,
100
- paddingBottom: 100
101
- }, data: (userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations) && (userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations.length) > 0 ? userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations : [], renderItem: renderWorkspaces, ListEmptyComponent: () => {
102
- 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" }, /* @__PURE__ */ React__default.createElement(Text, null, "No Organization found"))));
103
- }, key: "workspaces-list" })), /* @__PURE__ */ React__default.createElement(VStack, { flex: 1, w: "100%", space: "sm", bg: "$white", position: "absolute", bottom: "$0" }, /* @__PURE__ */ React__default.createElement(Divider, { w: "100%" }), /* @__PURE__ */ React__default.createElement(VStack, { pt: "$5", pb: "$8", mx: "$2", space: "md" }, /* @__PURE__ */ React__default.createElement(Text, { px: "$2", py: "$2", fontSize: 16, color: "$black", fontWeight: "$bold" }, "Not the workspace you're looking for?"), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", bg: "transparent", variant: "solid", "$pressed-bg": "$trueGray200", "$active-bg": "$trueGray200", justifyContent: "flex-start" }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "grid-outline", size: 20 }), /* @__PURE__ */ React__default.createElement(ButtonText, { pl: "$2", fontSize: "$md", color: "$coolGray800" }, "Sign in another workspace")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", bg: "transparent", variant: "solid", "$pressed-bg": "$trueGray200", "$active-bg": "$trueGray200", justifyContent: "flex-start" }, /* @__PURE__ */ React__default.createElement(AntDesign, { color: "black", name: "adduser", size: 20 }), /* @__PURE__ */ React__default.createElement(ButtonText, { pl: "$2", fontSize: "$md", color: "$coolGray800" }, "Join another workspace")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", bg: "transparent", variant: "solid", "$pressed-bg": "$trueGray200", "$active-bg": "$trueGray200", justifyContent: "flex-start", onPress: () => CreateOrganization() }, /* @__PURE__ */ React__default.createElement(AntDesign, { color: "black", name: "plus", size: 20 }), /* @__PURE__ */ React__default.createElement(ButtonText, { pl: "$2", fontSize: "$md", color: "$coolGray800" }, "Create a new workspace")))))));
88
+ return /* @__PURE__ */ React__default.createElement(SafeAreaView, { style: {
89
+ flex: 1
90
+ } }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 w-full px-2 pt-2" }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 bg-white" }, /* @__PURE__ */ React__default.createElement(HStack, { className: "px-2 py-4 justify-between" }, /* @__PURE__ */ React__default.createElement(Text, { className: "text-center font-bold" }, (_a = user == null ? void 0 : user.profile) == null ? void 0 : _a.email, " "), /* @__PURE__ */ React__default.createElement(Feather, { color: "black", name: "info", size: 20 })), /* @__PURE__ */ React__default.createElement(VStack, { className: "flex-[0.8]", space: "sm" }, /* @__PURE__ */ React__default.createElement(
91
+ FlatList,
92
+ {
93
+ keyExtractor: (item, index) => String(index),
94
+ contentContainerStyle: {
95
+ flexGrow: 1,
96
+ paddingBottom: 150
97
+ },
98
+ data: (userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations) && (userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations.length) > 0 ? userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations : [],
99
+ renderItem: renderWorkspaces,
100
+ ListEmptyComponent: () => {
101
+ 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" }, /* @__PURE__ */ React__default.createElement(Text, { className: "text-black" }, "No Organization found"))));
102
+ },
103
+ key: "workspaces-list"
104
+ }
105
+ )))), /* @__PURE__ */ React__default.createElement(VStack, { className: "flex-1 w-full bg-white absolute bottom-0 mb-2 shadow-sm", space: "sm" }, /* @__PURE__ */ React__default.createElement(Divider, { className: "w-full h-0" }), /* @__PURE__ */ React__default.createElement(VStack, { className: "pt-10 pb-8 mx-2", style: {
106
+ paddingVertical: 10
107
+ }, space: "sm" }, /* @__PURE__ */ React__default.createElement(Text, { className: "px-4 py-2 text-[16] font-bold", color: colors.black }, "Not the workspace you're looking for?"), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", className: "bg-transparent justify-start active:bg-gray-200 hover:bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "grid-outline", size: 20 }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-2 text-base text-gray-800" }, "Sign in another workspace")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", className: "bg-transparent justify-start active:bg-gray-200 hover:bg-gray-200" }, /* @__PURE__ */ React__default.createElement(AntDesign, { color: "black", name: "adduser", size: 20 }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-2 text-base text-gray-800" }, "Join another workspace")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", className: "bg-transparent justify-start active:bg-gray-200 hover:bg-gray-200", onPress: () => CreateOrganization() }, /* @__PURE__ */ React__default.createElement(AntDesign, { color: "black", name: "plus", size: 20 }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-2 text-base text-gray-800" }, "Create a new workspace"))), /* @__PURE__ */ React__default.createElement(Divider, { className: "w-full h-4 bg-transparent" })));
104
108
  };
105
- var AddWorkSpace$1 = React__default.memo(AddWorkSpace);export{AddWorkSpace$1 as default};//# sourceMappingURL=AddWorkspace.js.map
109
+ var AddWorkspace = React__default.memo(AddWorkSpace);export{AddWorkspace as default};//# sourceMappingURL=AddWorkspace.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AddWorkspace.js","sources":["../../../src/screens/Organization/AddWorkspace.tsx"],"sourcesContent":["import React from 'react';\nimport { Ionicons, MaterialIcons, FontAwesome5, AntDesign, Feather } from '@expo/vector-icons';\nimport { createDrawerNavigator, DrawerContentScrollView, DrawerItemList, DrawerItem } from '@react-navigation/drawer';\nimport { TouchableHighlight } from 'react-native';\nimport {\n VStack,\n HStack,\n Button,\n ButtonText,\n Icon,\n Text,\n Box,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Divider,\n FlatList,\n SafeAreaView,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useSelector, shallowEqual } from 'react-redux';\nimport { navigationRef } from '@common-stack/client-react';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { StackActions, CommonActions, useNavigation, useFocusEffect } from '@react-navigation/native';\nimport { useDrawerLayout } from '../../hooks/useDrawerLayout';\nimport {\n useGetUserOrganizationsQuery,\n useGetOrganizationDetailLazyQuery,\n useGetOrganizationDetailQuery,\n useCreateOrganizationMutation,\n} from 'common/lib/generated/generated.js';\nimport { useLocationChange } from '@admin-layout/gluestack-ui-mobile';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { LoadingSpinnerDefault } from '../../components';\n\nconst AddWorkSpace = (props: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector, shallowEqual);\n const settings = useSelector<any>((state) => state.settings, shallowEqual) as any;\n const { open, setOpen, appConfiguredRoutes, orgName, setOrganizationDetail, organizationDetail } =\n useDrawerLayout();\n\n const {\n data: orgDetailData,\n refetch: _refetchOrgDetail,\n loading: orgDetailLoading,\n } = useGetOrganizationDetailQuery({\n variables: {\n where: {\n name: orgName,\n },\n },\n });\n const {\n data: userOrganizationsData,\n loading: isLoadingUsersOrganization,\n refetch: refetchUserOrganizations,\n }: any = useGetUserOrganizationsQuery({\n // //@ts-ignor\n variables: { userId: user?.id },\n //fetchPolicy: 'cache-and-network',\n });\n\n useFocusEffect(\n React.useCallback(() => {\n setOpen(false);\n refetchUserOrganizations({\n userId: user?.id,\n });\n if (orgName) _refetchOrgDetail({ where: { name: orgName } });\n }, [orgName, open]),\n );\n\n React.useEffect(() => {\n if (orgDetailData?.getOrganizationDetail) setOrganizationDetail(orgDetailData?.getOrganizationDetail);\n }, [orgDetailData?.getOrganizationDetail]);\n\n const goToOrganization = React.useCallback((orgName: any) => {\n setOpen(false);\n navigation.navigate(NavigationRoutes.Home, { orgName });\n }, []);\n\n const CreateOrganization = React.useCallback(() => {\n setOpen(false);\n navigation?.navigate(NavigationRoutes.CreateOrganization, { orgName });\n }, []);\n\n const renderWorkspaces = ({ item: o, index: i }: any) => {\n const matches: any = o?.title?.match(/\\b(\\w)/g) ?? '';\n const acronym: any = matches?.join('')?.substring(0, 2)?.toUpperCase() ?? ''; // JSON\n\n return (\n <TouchableHighlight\n underlayColor={'transparent'}\n activeOpacity={0.5}\n key={i}\n onPress={() => goToOrganization(o.name)}\n >\n <HStack px=\"$1\" justifyContent=\"space-between\" alignItems=\"center\" w=\"100%\" py={'$2'}>\n <HStack space={'sm'} alignItems=\"center\">\n <Button\n mx={'$2'}\n px={'$2'}\n py={'$2'}\n size={'md'}\n bg={'transparent'}\n // borderRadius={'$lg'}\n // borderWidth={o.name == orgName ? \"$2\" : \"$1\"}\n // borderColor={o.name == orgName ? '#000' : '#d3d3d3'}\n >\n <Avatar\n bg={'$trueGray300'}\n size={'md'}\n // borderRadius={o.name == orgName ? '$none' : '$lg'}\n borderRadius={'$lg'}\n borderWidth={o.name == orgName ? '$2' : '$1'}\n borderColor={o.name == orgName ? '#000' : '#d3d3d3'}\n p={'$0'}\n >\n <Text fontWeight={'$extrabold'} color=\"$black\" style={{ fontSize: 18 }}>\n {acronym}\n </Text>\n </Avatar>\n </Button>\n <Text color=\"$black\" style={{ fontSize: 16 }} w={'60%'} fontWeight={'$bold'}>\n {o?.title ?? o.name}\n </Text>\n </HStack>\n <Button bg={'transparent'} size={'lg'} pr={'$1'}>\n <MaterialIcons size={30} name=\"more-vert\" color={'#000'} />\n </Button>\n </HStack>\n </TouchableHighlight>\n );\n };\n\n if (orgDetailLoading) return <LoadingSpinnerDefault />;\n\n return (\n <SafeAreaView flex={1}>\n <Box flex={1} w={'100%'}>\n {/* <StatusBar barStyle=\"light-content\" /> */}\n <Box flex={1} bg={'$white'}>\n <HStack px={'$2'} mx={'$2'} py={'$4'} justifyContent={'space-between'}>\n <Text textAlign={'center'} fontWeight={'$bold'}>\n {user?.profile?.email}{' '}\n </Text>\n <Feather color=\"black\" name=\"info\" size={20} />\n </HStack>\n\n <VStack flex={0.8} space={'sm'}>\n <FlatList\n flex={1}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flexGrow: 1,\n paddingBottom: 100,\n }}\n data={\n userOrganizationsData?.getUserOrganizations &&\n userOrganizationsData?.getUserOrganizations.length > 0\n ? userOrganizationsData?.getUserOrganizations\n : []\n }\n renderItem={renderWorkspaces}\n ListEmptyComponent={() => {\n return (\n <Box bg={'#fff'} py={'$2'}>\n <VStack space=\"sm\">\n <Box px=\"$4\" py={'$5'}>\n <Text>No Organization found</Text>\n </Box>\n </VStack>\n </Box>\n );\n }}\n key={'workspaces-list'}\n />\n </VStack>\n <VStack flex={1} w={'100%'} space={'sm'} bg={'$white'} position={'absolute'} bottom={'$0'}>\n <Divider w={'100%'} />\n <VStack pt={'$5'} pb={'$8'} mx={'$2'} space={'md'}>\n <Text px={'$2'} py={'$2'} fontSize={16} color={'$black'} fontWeight={'$bold'}>\n Not the workspace you're looking for?\n </Text>\n <Button\n size={'sm'}\n bg={'transparent'}\n variant={'solid'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n justifyContent={'flex-start'}\n >\n <Ionicons color=\"black\" name=\"grid-outline\" size={20} />\n <ButtonText pl={'$2'} fontSize={'$md'} color={'$coolGray800'}>\n Sign in another workspace\n </ButtonText>\n </Button>\n <Button\n size={'sm'}\n bg={'transparent'}\n variant={'solid'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n justifyContent={'flex-start'}\n >\n <AntDesign color=\"black\" name=\"adduser\" size={20} />\n <ButtonText pl={'$2'} fontSize={'$md'} color={'$coolGray800'}>\n Join another workspace\n </ButtonText>\n </Button>\n <Button\n size={'sm'}\n bg={'transparent'}\n variant={'solid'}\n $pressed-bg=\"$trueGray200\"\n $active-bg={'$trueGray200'}\n justifyContent={'flex-start'}\n onPress={() => CreateOrganization()}\n >\n <AntDesign color=\"black\" name=\"plus\" size={20} />\n <ButtonText pl={'$2'} fontSize={'$md'} color={'$coolGray800'}>\n Create a new workspace\n </ButtonText>\n </Button>\n </VStack>\n </VStack>\n </Box>\n </Box>\n </SafeAreaView>\n );\n};\n\nexport default React.memo(AddWorkSpace);\n"],"names":["React","orgName","_a"],"mappings":"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"}
1
+ {"version":3,"file":"AddWorkspace.js","sources":["../../../src/screens/Organization/AddWorkspace.tsx"],"sourcesContent":["import React from 'react';\nimport { SafeAreaView } from 'react-native';\nimport { Ionicons, MaterialIcons, FontAwesome5, AntDesign, Feather } from '@expo/vector-icons';\nimport { createDrawerNavigator, DrawerContentScrollView, DrawerItemList, DrawerItem } from '@react-navigation/drawer';\nimport { TouchableHighlight } from 'react-native';\nimport {\n VStack,\n HStack,\n Button,\n ButtonText,\n Icon,\n Text,\n Box,\n Avatar,\n AvatarFallbackText,\n AvatarImage,\n AvatarBadge,\n AvatarGroup,\n Divider,\n FlatList,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useSelector, shallowEqual } from 'react-redux';\nimport { navigationRef } from '@common-stack/client-react';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { StackActions, CommonActions, useNavigation, useFocusEffect } from '@react-navigation/native';\nimport { useDrawerLayout } from '../../hooks/useDrawerLayout';\nimport {\n useOrganizationDetailQuery,\n useOrganizationDetailLazyQuery,\n useUserOrganizationsQuery,\n useCreateOrganizationMutation,\n} from '../../queries/slackuiQueries';\nimport { useLocationChange } from '@admin-layout/gluestack-ui-mobile';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { LoadingSpinnerDefault } from '../../components';\nimport Colors from 'tailwindcss/colors';\n\nconst AddWorkSpace = (props: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector, shallowEqual);\n const settings = useSelector<any>((state) => state.settings, shallowEqual) as any;\n const { open, setOpen, appConfiguredRoutes, orgName, setOrganizationDetail, organizationDetail } =\n useDrawerLayout();\n\n const {\n data: orgDetailData,\n refetch: _refetchOrgDetail,\n loading: orgDetailLoading,\n } = useOrganizationDetailQuery(orgName || '', {\n variables: {\n where: {\n name: orgName,\n },\n },\n });\n const {\n data: userOrganizationsData,\n loading: isLoadingUsersOrganization,\n refetch: refetchUserOrganizations,\n }: any = useUserOrganizationsQuery({\n variables: { userId: user?.id },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n setOpen(false);\n refetchUserOrganizations({\n userId: user?.id,\n });\n if (orgName) _refetchOrgDetail();\n }, [orgName, open]),\n );\n\n React.useEffect(() => {\n if (orgDetailData?.getOrganizationDetail) setOrganizationDetail(orgDetailData?.getOrganizationDetail);\n }, [orgDetailData?.getOrganizationDetail]);\n\n const goToOrganization = React.useCallback((orgName: any) => {\n setOpen(false);\n // navigation.navigate(NavigationRoutes.Home, { orgName });\n navigation.navigate('MainStack', { screen: NavigationRoutes.Home, params: { orgName } });\n }, []);\n\n const CreateOrganization = React.useCallback(() => {\n setOpen(false);\n navigation?.navigate(NavigationRoutes.CreateOrganization, { orgName });\n }, []);\n\n const renderWorkspaces = ({ item: o, index: i }: any) => {\n const matches: any = o?.title?.match(/\\b(\\w)/g) ?? '';\n const acronym: any = matches?.join('')?.substring(0, 2)?.toUpperCase() ?? ''; // JSON\n\n return (\n <TouchableHighlight\n underlayColor={'transparent'}\n activeOpacity={0.5}\n key={i}\n onPress={() => goToOrganization(o.name)}\n style={{ marginVertical: 8 }}\n >\n <HStack className=\"justify-between items-center w-full py-2\">\n <HStack space={'md'} className=\"items-center\">\n <Button\n size={'md'}\n // borderRadius={'$lg'}\n // borderWidth={o.name == orgName ? \"$2\" : \"$1\"}\n // borderColor={o.name == orgName ? '#000' : '#d3d3d3'}\n className=\"mx-2 px-2 py-2 bg-transparent\"\n >\n <Avatar\n size={'md'}\n className={`bg-gray-200 rounded-lg border-[${o.name == orgName ? '2' : '1'}] p-0`}\n style={{\n backgroundColor: '#e5e7eb',\n borderColor: o.name == orgName ? '#000' : '#d3d3d3',\n }}\n >\n <Text className=\"font-extrabold\" color={Colors.black} style={{ fontSize: 18 }}>\n {acronym}\n </Text>\n </Avatar>\n </Button>\n <Text color={Colors.black} style={{ fontSize: 16 }} className=\"w-[60%] font-bold\">\n {o?.title ?? o.name}\n </Text>\n </HStack>\n {/* <Button className=\"bg-transparent pr-1\" size={'lg'}>\n <MaterialIcons size={30} name=\"more-vert\" color={'#000'} />\n </Button> */}\n </HStack>\n </TouchableHighlight>\n );\n };\n\n if (orgDetailLoading) return <LoadingSpinnerDefault />;\n\n return (\n <SafeAreaView style={{ flex: 1 }}>\n <Box className=\"flex-1 w-full px-2 pt-2\">\n {/* <StatusBar barStyle=\"light-content\" /> */}\n <Box className=\"flex-1 bg-white\">\n <HStack className=\"px-2 py-4 justify-between\">\n <Text className=\"text-center font-bold\">{user?.profile?.email} </Text>\n <Feather color=\"black\" name=\"info\" size={20} />\n </HStack>\n\n <VStack className=\"flex-[0.8]\" space={'sm'}>\n <FlatList\n // style={{ flex: 1 }}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flexGrow: 1,\n paddingBottom: 150,\n }}\n data={\n userOrganizationsData?.getUserOrganizations &&\n userOrganizationsData?.getUserOrganizations.length > 0\n ? userOrganizationsData?.getUserOrganizations\n : []\n }\n renderItem={renderWorkspaces}\n ListEmptyComponent={() => {\n return (\n <Box className=\"bg-white py-2\">\n <VStack space=\"sm\">\n <Box className=\"px-4 py-5\">\n <Text className=\"text-black\">No Organization found</Text>\n </Box>\n </VStack>\n </Box>\n );\n }}\n key={'workspaces-list'}\n />\n </VStack>\n </Box>\n </Box>\n <VStack className=\"flex-1 w-full bg-white absolute bottom-0 mb-2 shadow-sm\" space={'sm'}>\n <Divider className=\"w-full h-0\" />\n <VStack className=\"pt-10 pb-8 mx-2\" style={{ paddingVertical: 10 }} space={'sm'}>\n <Text className=\"px-4 py-2 text-[16] font-bold\" color={Colors.black}>\n Not the workspace you're looking for?\n </Text>\n <Button\n size={'sm'}\n variant={'solid'}\n className=\"bg-transparent justify-start active:bg-gray-200 hover:bg-gray-200\"\n >\n <Ionicons color=\"black\" name=\"grid-outline\" size={20} />\n <ButtonText className=\"pl-2 text-base text-gray-800\">Sign in another workspace</ButtonText>\n </Button>\n <Button\n size={'sm'}\n variant={'solid'}\n className=\"bg-transparent justify-start active:bg-gray-200 hover:bg-gray-200\"\n >\n <AntDesign color=\"black\" name=\"adduser\" size={20} />\n <ButtonText className=\"pl-2 text-base text-gray-800\">Join another workspace</ButtonText>\n </Button>\n <Button\n size={'sm'}\n variant={'solid'}\n className=\"bg-transparent justify-start active:bg-gray-200 hover:bg-gray-200\"\n onPress={() => CreateOrganization()}\n >\n <AntDesign color=\"black\" name=\"plus\" size={20} />\n <ButtonText className=\"pl-2 text-base text-gray-800\">Create a new workspace</ButtonText>\n </Button>\n </VStack>\n <Divider className=\"w-full h-4 bg-transparent\" />\n </VStack>\n </SafeAreaView>\n );\n};\n\nexport default React.memo(AddWorkSpace);\n"],"names":["React","orgName","_a","Colors"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import React__default,{useState,useEffect,useCallback}from'react';import {Alert,Dimensions}from'react-native';import {SafeAreaView,Box,Center,VStack,Heading,Text,FormControl,Input,InputField,FormControlError,FormControlErrorText,Button,ButtonSpinner,ButtonText}from'@admin-layout/gluestack-ui-mobile';import {useCreateOrganizationMutation}from'common/lib/generated/generated.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {useNavigation,useFocusEffect}from'@react-navigation/native';Dimensions.get("window").width;
1
+ import React__default,{useState,useEffect,useCallback}from'react';import {SafeAreaView,Dimensions,Alert}from'react-native';import {Box,Center,VStack,Heading,Text,FormControl,Input,InputField,FormControlError,FormControlErrorText,Button,ButtonSpinner,ButtonText}from'@admin-layout/gluestack-ui-mobile';import {useCreateOrganizationMutation}from'../../queries/slackuiQueries.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {useNavigation,useFocusEffect}from'@react-navigation/native';import colors from'tailwindcss/colors';Dimensions.get("window").width;
2
2
  Dimensions.get("window").height;
3
3
  const CreateOrganization = ({
4
4
  route
@@ -58,5 +58,14 @@ const CreateOrganization = ({
58
58
  });
59
59
  }
60
60
  }, [name]);
61
- return /* @__PURE__ */ React__default.createElement(SafeAreaView, { flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { borderTopColor: "$blue600", borderTopWidth: "$1", w: "25%" }), /* @__PURE__ */ React__default.createElement(Center, { flex: 1, bg: "$white" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Heading, { px: "$4", alignItems: "center", textAlign: "center" }, "What's the name of your company or team?"), /* @__PURE__ */ React__default.createElement(Text, { textAlign: "center" }, "This will be the name of your workspace."), /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(FormControl, { mt: "$3", w: "100%" }, /* @__PURE__ */ React__default.createElement(Input, { variant: "outline", size: "lg", py: "$3", borderColor: "$blue900", borderWidth: "$2" }, /* @__PURE__ */ React__default.createElement(InputField, { maxLength: 80, placeholder: "Ex. Acme or Acme Marketing", value: name, onChangeText: (v) => setName(v), "aria-label": "Organization name", accessibilityLabel: "Organization name" })), /* @__PURE__ */ React__default.createElement(FormControlError, null, /* @__PURE__ */ React__default.createElement(FormControlErrorText, { color: "$red400" }, "Organization name must be lowercase, and can't contain spaces,periods,or most punctuation.")))), /* @__PURE__ */ React__default.createElement(Button, { variant: "solid", bg: showCreateButton ? "$green800" : "$trueGray300", "$pressed-bg": "$green600", "$active-bg": "$green600", disabled: showCreateButton ? false : true, onPress: () => createOrganization() }, loading && /* @__PURE__ */ React__default.createElement(ButtonSpinner, { mr: "$1" }), /* @__PURE__ */ React__default.createElement(ButtonText, { fontWeight: "$bold", color: showCreateButton ? "$white" : "$trueGray800" }, "Next")), /* @__PURE__ */ React__default.createElement(Text, { lineHeight: "$lg", py: "$2", color: "$warmGray800" }, "By continuing, you're agreeing to out", " ", /* @__PURE__ */ React__default.createElement(Text, { color: "$blue900" }, "Main Services Agreement, User Terms of Services"), ", and", " ", /* @__PURE__ */ React__default.createElement(Text, { color: "$blue900" }, "Supplemental Terms"), ".Additional disclosures are available in our ", /* @__PURE__ */ React__default.createElement(Text, { color: "$blue900" }, "Privacy Policy"), " and ", /* @__PURE__ */ React__default.createElement(Text, { color: "$blue900" }, "Cookie Policy"), "."))));
61
+ return /* @__PURE__ */ React__default.createElement(SafeAreaView, { style: {
62
+ flex: 1
63
+ } }, /* @__PURE__ */ React__default.createElement(Box, { className: "border-t-blue-600 border-t-[1px] w-[25%]" }), /* @__PURE__ */ React__default.createElement(Center, { className: "flex-1 bg-white" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Heading, { className: "px-4 items-center text-center" }, "What's the name of your company or team?"), /* @__PURE__ */ React__default.createElement(Text, { className: "text-center" }, "This will be the name of your workspace."), /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(FormControl, { className: "mt-3 w-full px-2" }, /* @__PURE__ */ React__default.createElement(Input, { variant: "outline", size: "lg", style: {
64
+ borderWidth: 1,
65
+ borderColor: "1e3a8a"
66
+ }, className: "py-3 border-blue-900 border-[2px]" }, /* @__PURE__ */ React__default.createElement(InputField, { maxLength: 80, placeholder: "Ex. Acme or Acme Marketing", value: name, onChange: (event) => setName(event.nativeEvent.text), "aria-label": "Organization name", accessibilityLabel: "Organization name" })), /* @__PURE__ */ React__default.createElement(FormControlError, { className: "px-2" }, /* @__PURE__ */ React__default.createElement(FormControlErrorText, { className: "color-red-400" }, "Organization name must be lowercase, and can't contain spaces,periods,or most punctuation.")))), /* @__PURE__ */ React__default.createElement(Button, { variant: "solid", className: `${showCreateButton ? "bg-green-800" : "bg-gray-300"} active:bg-green-600 hover:bg-green-600 mx-2`, disabled: showCreateButton ? false : true, onPress: () => createOrganization(), style: {
67
+ backgroundColor: showCreateButton ? "#166534" : "#d1d5db"
68
+ } }, loading && /* @__PURE__ */ React__default.createElement(ButtonSpinner, { style: {
69
+ marginRight: 1
70
+ } }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: `font-bold ${showCreateButton ? "color-white" : "color-gray-800"}` }, "Next")), /* @__PURE__ */ React__default.createElement(Text, { className: "py-2 color-gray-800 leading-loose px-2" }, "By continuing, you're agreeing to out", " ", /* @__PURE__ */ React__default.createElement(Text, { color: colors.blue[900] }, "Main Services Agreement, User Terms of Services"), ", and", " ", /* @__PURE__ */ React__default.createElement(Text, { color: colors.blue[900] }, "Supplemental Terms"), ".Additional disclosures are available in our", " ", /* @__PURE__ */ React__default.createElement(Text, { color: colors.blue[900] }, "Privacy Policy"), " and", " ", /* @__PURE__ */ React__default.createElement(Text, { color: colors.blue[900] }, "Cookie Policy"), "."))));
62
71
  };export{CreateOrganization as default};//# sourceMappingURL=CreateOrganization.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CreateOrganization.js","sources":["../../../src/screens/Organization/CreateOrganization.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity, Dimensions, Platform, Alert } from 'react-native';\nimport {\n SafeAreaView,\n Input,\n InputField,\n View,\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 ButtonSpinner,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n Image,\n Checkbox,\n ChevronLeftIcon,\n Center,\n Heading,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useCreateOrganizationMutation, useGetAllUsersQuery } from 'common/lib/generated/generated.js';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useSelector } from 'react-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { useFocusEffect, useNavigation } from '@react-navigation/native';\nimport { LoadingSpinner } from '../../components';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst CreateOrganization = ({ route }: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const [name, setName] = useState<string>('');\n const [description, setDescription] = useState('');\n const [orgMemebers, setOrgMemebers] = useState<any>([{ userId: user?.id, role: 'OWNER' }]);\n const [showCreateButton, setShowCreateButton] = useState<boolean>(false);\n const [createOrganizationMutation, { data, loading, error }] = useCreateOrganizationMutation({\n onCompleted: (data: any) => {\n if (data?.createOrganization?.name) {\n navigation.navigate(NavigationRoutes.InviteOrganizationMembers, {\n orgName: data?.createOrganization?.name,\n });\n } else {\n navigation.navigate(NavigationRoutes.Home, { orgName: route?.params?.orgName });\n }\n },\n onError: (error: any) => {\n //console.log('create org error', error);\n Alert.alert('Workspace already exists');\n },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n // Do something when the screen is focused\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n const createOrganization = useCallback(() => {\n if (name && name?.length > 0) {\n createOrganizationMutation({\n variables: {\n organization: {\n name: name,\n namespace: name,\n title: name,\n description: description,\n orgMembers: orgMemebers,\n },\n },\n });\n }\n }, [name]);\n\n return (\n <SafeAreaView flex={1}>\n <Box borderTopColor={'$blue600'} borderTopWidth={'$1'} w={'25%'} />\n <Center flex={1} bg={'$white'}>\n <VStack space={'sm'}>\n <Heading px={'$4'} alignItems={'center'} textAlign={'center'}>\n What's the name of your company or team?\n </Heading>\n <Text textAlign={'center'}>This will be the name of your workspace.</Text>\n <Box>\n <FormControl mt=\"$3\" w=\"100%\">\n <Input variant=\"outline\" size=\"lg\" py={'$3'} borderColor={'$blue900'} borderWidth={'$2'}>\n <InputField\n maxLength={80}\n placeholder=\"Ex. Acme or Acme Marketing\"\n value={name}\n onChangeText={(v) => setName(v)}\n aria-label=\"Organization name\"\n accessibilityLabel=\"Organization name\"\n />\n </Input>\n <FormControlError>\n <FormControlErrorText color={'$red400'}>\n Organization name must be lowercase, and can't contain spaces,periods,or most\n punctuation.\n </FormControlErrorText>\n </FormControlError>\n </FormControl>\n </Box>\n <Button\n variant={'solid'}\n bg={showCreateButton ? '$green800' : '$trueGray300'}\n $pressed-bg=\"$green600\"\n $active-bg={'$green600'}\n disabled={showCreateButton ? false : true}\n onPress={() => createOrganization()}\n >\n {loading && <ButtonSpinner mr=\"$1\" />}\n <ButtonText fontWeight=\"$bold\" color={showCreateButton ? '$white' : '$trueGray800'}>\n Next\n </ButtonText>\n </Button>\n <Text lineHeight={'$lg'} py={'$2'} color={'$warmGray800'}>\n By continuing, you're agreeing to out{' '}\n <Text color={'$blue900'}>Main Services Agreement, User Terms of Services</Text>, and{' '}\n <Text color={'$blue900'}>Supplemental Terms</Text>\n .Additional disclosures are available in our <Text color={'$blue900'}>\n Privacy Policy\n </Text> and <Text color={'$blue900'}>Cookie Policy</Text>.\n </Text>\n </VStack>\n </Center>\n </SafeAreaView>\n );\n};\n\nexport default CreateOrganization;\n"],"names":["data","error","React"],"mappings":"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"}
1
+ {"version":3,"file":"CreateOrganization.js","sources":["../../../src/screens/Organization/CreateOrganization.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity, Dimensions, Platform, Alert, SafeAreaView } from 'react-native';\nimport {\n Input,\n InputField,\n View,\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 ButtonSpinner,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n Image,\n Checkbox,\n ChevronLeftIcon,\n Center,\n Heading,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useCreateOrganizationMutation, useAllUsersQuery } from '../../queries/slackuiQueries';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useSelector } from 'react-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { useFocusEffect, useNavigation } from '@react-navigation/native';\nimport Colors from 'tailwindcss/colors';\nimport { LoadingSpinner } from '../../components';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst CreateOrganization = ({ route }: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const [name, setName] = useState<string>('');\n const [description, setDescription] = useState('');\n const [orgMemebers, setOrgMemebers] = useState<any>([{ userId: user?.id, role: 'OWNER' }]);\n const [showCreateButton, setShowCreateButton] = useState<boolean>(false);\n const [createOrganizationMutation, { data, loading, error }] = useCreateOrganizationMutation({\n onCompleted: (data: any) => {\n if (data?.createOrganization?.name) {\n navigation.navigate(NavigationRoutes.InviteOrganizationMembers, {\n orgName: data?.createOrganization?.name,\n });\n } else {\n navigation.navigate(NavigationRoutes.Home, { orgName: route?.params?.orgName });\n }\n },\n onError: (error: any) => {\n //console.log('create org error', error);\n Alert.alert('Workspace already exists');\n },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n // Do something when the screen is focused\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n const createOrganization = useCallback(() => {\n if (name && name?.length > 0) {\n createOrganizationMutation({\n variables: {\n organization: {\n name: name,\n namespace: name,\n title: name,\n description: description,\n orgMembers: orgMemebers,\n },\n },\n });\n }\n }, [name]);\n\n return (\n <SafeAreaView style={{ flex: 1 }}>\n <Box className=\"border-t-blue-600 border-t-[1px] w-[25%]\" />\n <Center className=\"flex-1 bg-white\">\n <VStack space={'sm'}>\n <Heading className=\"px-4 items-center text-center\">\n What's the name of your company or team?\n </Heading>\n <Text className=\"text-center\">This will be the name of your workspace.</Text>\n <Box>\n <FormControl className=\"mt-3 w-full px-2\">\n <Input\n variant=\"outline\"\n size=\"lg\"\n style={{ borderWidth: 1, borderColor: '1e3a8a' }}\n className=\"py-3 border-blue-900 border-[2px]\"\n >\n <InputField\n maxLength={80}\n placeholder=\"Ex. Acme or Acme Marketing\"\n value={name}\n onChange={(event) => setName(event.nativeEvent.text)}\n aria-label=\"Organization name\"\n accessibilityLabel=\"Organization name\"\n />\n </Input>\n <FormControlError className=\"px-2\">\n <FormControlErrorText className=\"color-red-400\">\n Organization name must be lowercase, and can't contain spaces,periods,or most\n punctuation.\n </FormControlErrorText>\n </FormControlError>\n </FormControl>\n </Box>\n <Button\n variant={'solid'}\n className={`${\n showCreateButton ? 'bg-green-800' : 'bg-gray-300'\n } active:bg-green-600 hover:bg-green-600 mx-2`}\n disabled={showCreateButton ? false : true}\n onPress={() => createOrganization()}\n style={{ backgroundColor: showCreateButton ? '#166534' : '#d1d5db' }}\n >\n {loading && <ButtonSpinner style={{ marginRight: 1 }} />}\n <ButtonText className={`font-bold ${showCreateButton ? 'color-white' : 'color-gray-800'}`}>\n Next\n </ButtonText>\n </Button>\n <Text className=\"py-2 color-gray-800 leading-loose px-2\">\n By continuing, you're agreeing to out{' '}\n <Text color={Colors.blue[900]}>Main Services Agreement, User Terms of Services</Text>, and{' '}\n <Text color={Colors.blue[900]}>Supplemental Terms</Text>\n .Additional disclosures are available in our{' '}\n <Text color={Colors.blue[900]}>Privacy Policy</Text> and{' '}\n <Text color={Colors.blue[900]}>Cookie Policy</Text>.\n </Text>\n </VStack>\n </Center>\n </SafeAreaView>\n );\n};\n\nexport default CreateOrganization;\n"],"names":["data","error","React","Colors"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
- import React__default,{useState,useEffect}from'react';import {Share,Dimensions}from'react-native';import {SafeAreaView,Box,VStack,Heading,Text,Button,ButtonText}from'@admin-layout/gluestack-ui-mobile';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {useNavigation,useFocusEffect}from'@react-navigation/native';Dimensions.get("window").width;
1
+ import React__default,{useState,useEffect}from'react';import {Share,SafeAreaView,Dimensions}from'react-native';import {Box,VStack,Heading,Text,Button,ButtonText}from'@admin-layout/gluestack-ui-mobile';import {useOrganizationDetailQuery,useChannelDetailQuery,useAddChannelMutation,useAddMemberToChannelMutation}from'../../queries/slackuiQueries.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {useNavigation,useFocusEffect}from'@react-navigation/native';Dimensions.get("window").width;
2
2
  Dimensions.get("window").height;
3
3
  const InitialChannelOnboarding = ({
4
4
  route
5
5
  }) => {
6
- var _a;
6
+ var _a, _b, _c, _d, _e;
7
7
  const navigation = useNavigation();
8
8
  const user = useSelector(userSelector);
9
9
  const [name, setName] = useState("");
@@ -13,6 +13,22 @@ const InitialChannelOnboarding = ({
13
13
  role: "OWNER"
14
14
  }]);
15
15
  const [showCreateButton, setShowCreateButton] = useState(false);
16
+ const {
17
+ data: orgData
18
+ } = ((_a = route == null ? void 0 : route.params) == null ? void 0 : _a.orgName) ? useOrganizationDetailQuery((_b = route == null ? void 0 : route.params) == null ? void 0 : _b.orgName) : {
19
+ data: null
20
+ };
21
+ const {
22
+ data: channelData
23
+ } = ((_c = route == null ? void 0 : route.params) == null ? void 0 : _c.channelId) ? useChannelDetailQuery((_d = route == null ? void 0 : route.params) == null ? void 0 : _d.channelId) : {
24
+ data: null
25
+ };
26
+ const [addChannel, {
27
+ loading: addChannelLoading
28
+ }] = useAddChannelMutation();
29
+ const [addMemberToChannel, {
30
+ loading: addMemberLoading
31
+ }] = useAddMemberToChannelMutation();
16
32
  useFocusEffect(React__default.useCallback(() => {
17
33
  return () => {
18
34
  };
@@ -38,7 +54,9 @@ const InitialChannelOnboarding = ({
38
54
  alert(error.message);
39
55
  }
40
56
  }, []);
41
- return /* @__PURE__ */ React__default.createElement(SafeAreaView, { flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1, bg: "$white" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm", py: "$10", px: "$4", flex: 1, justifyContent: "space-between" }, /* @__PURE__ */ React__default.createElement(Heading, { px: "$4", alignItems: "center", textAlign: "center" }, "Tada! Meet your team's first channel: #", (_a = route == null ? void 0 : route.params) == null ? void 0 : _a.title), /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$10", py: "$5", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$20", py: "$20", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$10", py: "$5", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { flex: 1, h: "$2", py: "$2", px: "$4", bg: "$coolGray200" }, /* @__PURE__ */ React__default.createElement(Text, null, " "))), /* @__PURE__ */ React__default.createElement(Text, { textAlign: "center" }, "A channel brings together every part of your project so your team can get more doen."), /* @__PURE__ */ React__default.createElement(Button, { onPress: async () => {
57
+ return /* @__PURE__ */ React__default.createElement(SafeAreaView, { style: {
58
+ flex: 1
59
+ } }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 bg-white" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm", className: "py-10 px-4 flex-1 justify-between" }, /* @__PURE__ */ React__default.createElement(Heading, { className: "px-4 items-center text-center" }, "Tada! Meet your team's first channel: #", (_e = route == null ? void 0 : route.params) == null ? void 0 : _e.title), /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-10 py-5 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-20 py-20 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-10 py-5 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " ")), /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 h-2 py-2 px-4 bg-gray-200" }, /* @__PURE__ */ React__default.createElement(Text, null, " "))), /* @__PURE__ */ React__default.createElement(Text, { className: "text-center" }, "A channel brings together every part of your project so your team can get more doen."), /* @__PURE__ */ React__default.createElement(Button, { onPress: async () => {
42
60
  var _a2;
43
61
  return navigation == null ? void 0 : navigation.navigate("MainStack", {
44
62
  screen: NavigationRoutes.Home,
@@ -48,5 +66,5 @@ const InitialChannelOnboarding = ({
48
66
  });
49
67
  }, style: {
50
68
  marginTop: 10
51
- }, bg: "$green800", "$pressed-bg": "$green600", "$active-bg": "$green600", rounded: "$lg" }, /* @__PURE__ */ React__default.createElement(ButtonText, { fontWeight: "600", fontSize: 15 }, "See your channel in Workspace")))));
69
+ }, className: "bg-green-800 rounded-lg active:bg-green-600 hover:bg-green-600" }, /* @__PURE__ */ React__default.createElement(ButtonText, { className: "font-bold text-[15]" }, "See your channel in Workspace")))));
52
70
  };export{InitialChannelOnboarding as default};//# sourceMappingURL=InitialChannelOnboarding.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InitialChannelOnboarding.js","sources":["../../../src/screens/Organization/InitialChannelOnboarding.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity, Dimensions, Share } from 'react-native';\nimport {\n SafeAreaView,\n Input,\n InputField,\n View,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n ButtonText,\n ButtonSpinner,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n Image,\n Checkbox,\n ChevronLeftIcon,\n Center,\n Heading,\n //Skeleton,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useCreateOrganizationMutation, useGetAllUsersQuery } from 'common/lib/generated/generated.js';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useSelector } from 'react-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { useFocusEffect, useNavigation } from '@react-navigation/native';\nimport { Ionicons, AntDesign, FontAwesome5, MaterialCommunityIcons } from '@expo/vector-icons';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst InitialChannelOnboarding = ({ route }: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const [name, setName] = useState<string>('');\n const [description, setDescription] = useState('');\n const [orgMemebers, setOrgMemebers] = useState<any>([{ userId: user?.id, role: 'OWNER' }]);\n const [showCreateButton, setShowCreateButton] = useState<boolean>(false);\n\n useFocusEffect(\n React.useCallback(() => {\n // Do something when the screen is focused\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n const shareLink = React.useCallback(async () => {\n try {\n const result = await Share.share({\n message: 'CDMBSE | Messenger App',\n });\n if (result.action === Share.sharedAction) {\n if (result.activityType) {\n // shared with activity type of result.activityType\n } else {\n // shared\n }\n } else if (result.action === Share.dismissedAction) {\n // dismissed\n }\n } catch (error: any) {\n alert(error.message);\n }\n }, []);\n\n return (\n <SafeAreaView flex={1}>\n <Box flex={1} bg={'$white'}>\n <VStack space={'sm'} py={'$10'} px={'$4'} flex={1} justifyContent={'space-between'}>\n <Heading px={'$4'} alignItems={'center'} textAlign={'center'}>\n Tada! Meet your team's first channel: #{route?.params?.title}\n </Heading>\n <VStack space={'sm'}>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$10'} py={'$5'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$20'} py={'$20'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$10'} py={'$5'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n <Box flex={1} h={'$2'} py={'$2'} px={'$4'} bg={'$coolGray200'}>\n <Text> </Text>\n </Box>\n {/* <Skeleton.Text px=\"4\" />\n <Skeleton.Text px=\"4\" />\n <Skeleton h=\"40\" />\n <Skeleton.Text px=\"4\" />\n <Skeleton.Text px=\"4\" /> */}\n </VStack>\n\n <Text textAlign={'center'}>\n A channel brings together every part of your project so your team can get more doen.\n </Text>\n <Button\n onPress={async () =>\n navigation?.navigate('MainStack', {\n screen: NavigationRoutes.Home,\n params: { orgName: route?.params?.orgName },\n })\n }\n style={{ marginTop: 10 }}\n bg={'$green800'}\n $pressed-bg=\"$green600\"\n $active-bg={'$green600'}\n rounded={'$lg'}\n >\n <ButtonText fontWeight=\"600\" fontSize={15}>\n See your channel in Workspace\n </ButtonText>\n </Button>\n </VStack>\n </Box>\n </SafeAreaView>\n );\n};\n\nexport default InitialChannelOnboarding;\n"],"names":["React","_a"],"mappings":"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"}
1
+ {"version":3,"file":"InitialChannelOnboarding.js","sources":["../../../src/screens/Organization/InitialChannelOnboarding.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity, Dimensions, Share, SafeAreaView } from 'react-native';\nimport {\n Input,\n InputField,\n View,\n Text,\n VStack,\n Box,\n FormControl,\n Button,\n ButtonText,\n ButtonSpinner,\n Fab,\n Icon,\n Divider,\n FlatList,\n HStack,\n Avatar,\n Image,\n Checkbox,\n ChevronLeftIcon,\n Center,\n Heading,\n //Skeleton,\n} from '@admin-layout/gluestack-ui-mobile';\nimport {\n useCreateOrganizationMutation,\n useAllUsersQuery,\n useOrganizationDetailQuery,\n useChannelDetailQuery,\n useAddChannelMutation,\n useAddMemberToChannelMutation,\n} from '../../queries';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useSelector } from 'react-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { useFocusEffect, useNavigation } from '@react-navigation/native';\nimport Colors from 'tailwindcss/colors';\nimport { Ionicons, AntDesign, FontAwesome5, MaterialCommunityIcons } from '@expo/vector-icons';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst InitialChannelOnboarding = ({ route }: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const [name, setName] = useState<string>('');\n const [description, setDescription] = useState('');\n const [orgMemebers, setOrgMemebers] = useState<any>([{ userId: user?.id, role: 'OWNER' }]);\n const [showCreateButton, setShowCreateButton] = useState<boolean>(false);\n\n // Add organization detail query if orgName is available\n const { data: orgData } = route?.params?.orgName\n ? useOrganizationDetailQuery(route?.params?.orgName)\n : { data: null };\n\n // Add channel detail query if channelId is available\n const { data: channelData } = route?.params?.channelId\n ? useChannelDetailQuery(route?.params?.channelId)\n : { data: null };\n\n // Add channel mutation hooks\n const [addChannel, { loading: addChannelLoading }] = useAddChannelMutation();\n const [addMemberToChannel, { loading: addMemberLoading }] = useAddMemberToChannelMutation();\n\n useFocusEffect(\n React.useCallback(() => {\n // Do something when the screen is focused\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n const shareLink = React.useCallback(async () => {\n try {\n const result = await Share.share({\n message: 'CDMBSE | Messenger App',\n });\n if (result.action === Share.sharedAction) {\n if (result.activityType) {\n // shared with activity type of result.activityType\n } else {\n // shared\n }\n } else if (result.action === Share.dismissedAction) {\n // dismissed\n }\n } catch (error: any) {\n alert(error.message);\n }\n }, []);\n\n return (\n <SafeAreaView style={{ flex: 1 }}>\n <Box className=\"flex-1 bg-white\">\n <VStack space={'sm'} className=\"py-10 px-4 flex-1 justify-between\">\n <Heading className=\"px-4 items-center text-center\">\n Tada! Meet your team's first channel: #{route?.params?.title}\n </Heading>\n <VStack space={'sm'}>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-10 py-5 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-20 py-20 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-10 py-5 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n <Box className=\"flex-1 h-2 py-2 px-4 bg-gray-200\">\n <Text> </Text>\n </Box>\n {/* <Skeleton.Text px=\"4\" />\n <Skeleton.Text px=\"4\" />\n <Skeleton h=\"40\" />\n <Skeleton.Text px=\"4\" />\n <Skeleton.Text px=\"4\" /> */}\n </VStack>\n\n <Text className=\"text-center\">\n A channel brings together every part of your project so your team can get more doen.\n </Text>\n <Button\n onPress={async () =>\n navigation?.navigate('MainStack', {\n screen: NavigationRoutes.Home,\n params: { orgName: route?.params?.orgName },\n })\n }\n style={{ marginTop: 10 }}\n className=\"bg-green-800 rounded-lg active:bg-green-600 hover:bg-green-600\"\n >\n <ButtonText className=\"font-bold text-[15]\">See your channel in Workspace</ButtonText>\n </Button>\n </VStack>\n </Box>\n </SafeAreaView>\n );\n};\n\nexport default InitialChannelOnboarding;\n"],"names":["React","_a"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import React__default,{useState,useEffect,useCallback}from'react';import {Alert,Dimensions}from'react-native';import {Box,Center,VStack,Heading,Text,FormControl,Input,InputField,Button,ButtonSpinner,ButtonText}from'@admin-layout/gluestack-ui-mobile';import {useAddDirectChannelMutation,useAddChannelMutation}from'common/lib/generated/generated.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector,shallowEqual}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {useNavigation,useFocusEffect}from'@react-navigation/native';Dimensions.get("window").width;
1
+ import React__default,{useState,useEffect,useCallback}from'react';import {Dimensions,Alert}from'react-native';import {Box,Center,VStack,Heading,Text,FormControl,Input,InputField,Button,ButtonSpinner,ButtonText}from'@admin-layout/gluestack-ui-mobile';import {useAddDirectChannelMutation,useAddChannelMutation}from'../../queries/slackuiQueries.js';import {NavigationRoutes}from'../../constants/routes.js';import {useSelector,shallowEqual}from'react-redux';import {userSelector}from'@adminide-stack/user-auth0-client';import {useNavigation,useFocusEffect}from'@react-navigation/native';Dimensions.get("window").width;
2
2
  Dimensions.get("window").height;
3
3
  const InitializeOrganizationChannel = ({
4
4
  route
@@ -17,8 +17,11 @@ const InitializeOrganizationChannel = ({
17
17
  error
18
18
  }] = useAddChannelMutation({
19
19
  onCompleted: (data) => {
20
- if (data == null ? void 0 : data.createChannel)
20
+ var _a;
21
+ if (data == null ? void 0 : data.createChannel) {
21
22
  setChannel(data == null ? void 0 : data.createChannel);
23
+ if (((_a = data == null ? void 0 : data.createChannel) == null ? void 0 : _a.id) && (user == null ? void 0 : user.id)) ;
24
+ }
22
25
  },
23
26
  onError: (error2) => {
24
27
  Alert.alert("Channel creation failed");
@@ -68,6 +71,8 @@ const InitializeOrganizationChannel = ({
68
71
  }
69
72
  });
70
73
  }
71
- }, [name]);
72
- return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Box, { borderTopColor: "$blue600", borderTopWidth: "$1", w: "75%" }), /* @__PURE__ */ React__default.createElement(Center, { flex: 1, bg: "white" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm", px: "$2" }, /* @__PURE__ */ React__default.createElement(Heading, { px: "$4", alignItems: "center", textAlign: "center" }, "What's a project your team is working on?"), /* @__PURE__ */ React__default.createElement(Text, { textAlign: "center", px: "$2" }, "This could be anything: a project, campaign,event, or the deal your're tring to close."), /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(FormControl, { mt: "$3", w: "100%" }, /* @__PURE__ */ React__default.createElement(Input, { variant: "outline", size: "lg", py: "$3", borderColor: "$blue900", borderWidth: "$2" }, /* @__PURE__ */ React__default.createElement(InputField, { maxLength: 80, placeholder: "Ex. Q4 Budget, Website updateg", value: name, onChangeText: (v) => setName(v), "aria-label": "Organization name", accessibilityLabel: "Organization name" })))), /* @__PURE__ */ React__default.createElement(Button, { variant: "solid", bg: showCreateButton ? "$green800" : "$trueGray300", "$pressed-bg": "$green600", "$active-bg": "$green600", disabled: showCreateButton ? false : true, onPress: () => createChannelHandler() }, loading || addDirectChannaleLoading && /* @__PURE__ */ React__default.createElement(ButtonSpinner, { mr: "$1" }), /* @__PURE__ */ React__default.createElement(ButtonText, { fontWeight: "$bold", color: showCreateButton ? "$white" : "$trueGray800" }, "Next")))));
74
+ }, [name, description, user.id, addDirectChannel, createChannel]);
75
+ return /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, /* @__PURE__ */ React__default.createElement(Box, { className: "border-t-blue-600 border-t w-[75%]" }), /* @__PURE__ */ React__default.createElement(Center, { className: "flex-1 bg-white" }, /* @__PURE__ */ React__default.createElement(VStack, { space: "sm", className: "px-2" }, /* @__PURE__ */ React__default.createElement(Heading, { className: "px-4 items-center text-center" }, "What's a project your team is working on?"), /* @__PURE__ */ React__default.createElement(Text, { className: "text-center px-2" }, "This could be anything: a project, campaign,event, or the deal your're tring to close."), /* @__PURE__ */ React__default.createElement(Box, null, /* @__PURE__ */ React__default.createElement(FormControl, { className: "mt-3 w-full" }, /* @__PURE__ */ React__default.createElement(Input, { variant: "outline", size: "lg", className: "py-3 border-blue-900 border-t-2" }, /* @__PURE__ */ React__default.createElement(InputField, { maxLength: 80, placeholder: "Ex. Q4 Budget, Website updateg", value: name, onChange: (event) => setName(event.nativeEvent.text), "aria-label": "Organization name", accessibilityLabel: "Organization name" })))), /* @__PURE__ */ React__default.createElement(Button, { variant: "solid", className: `${showCreateButton ? "bg-green-800" : "bg-gray-300"} active:bg-green-600 hover:bg-green-600`, disabled: showCreateButton ? false : true, onPress: () => createChannelHandler() }, loading || addDirectChannaleLoading && /* @__PURE__ */ React__default.createElement(ButtonSpinner, { style: {
76
+ marginRight: 1
77
+ } }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: `font-bold ${showCreateButton ? "color-white" : "color-gray-800"}` }, "Next")))));
73
78
  };export{InitializeOrganizationChannel as default};//# sourceMappingURL=InitializeOrganizationChannel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InitializeOrganizationChannel.js","sources":["../../../src/screens/Organization/InitializeOrganizationChannel.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity, Dimensions, Platform, Alert } from 'react-native';\nimport {\n SafeAreaView,\n Input,\n InputField,\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 ButtonSpinner,\n Center,\n Heading,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useAddChannelMutation, useAddDirectChannelMutation } from 'common/lib/generated/generated.js';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useSelector, shallowEqual } from 'react-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { useFocusEffect, useNavigation } from '@react-navigation/native';\nimport { LoadingSpinner } from '../../components';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst InitializeOrganizationChannel = ({ route }: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector, shallowEqual);\n const [name, setName] = useState<string>('');\n const [channel, setChannel] = useState<any>(null);\n const [description, setDescription] = useState('');\n const [showCreateButton, setShowCreateButton] = useState<boolean>(false);\n const [addDirectChannel, { loading: addDirectChannaleLoading }] = useAddDirectChannelMutation();\n\n const [createChannel, { loading, error }] = useAddChannelMutation({\n onCompleted: (data: any) => {\n if (data?.createChannel) setChannel(data?.createChannel);\n // if (data?.createChannel?.id) {\n // navigation.navigate(NavigationRoutes.InitialChannelOnboarding, {\n // orgName: route?.params?.orgName,\n // channelId: data?.createChannel?.id,\n // title: data?.createChannel?.title,\n // });\n // } else {\n // navigation.navigate(NavigationRoutes.Home, { orgName: route?.params?.orgName });\n // }\n },\n onError: (error: any) => {\n Alert.alert('Channel creation failed');\n },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n // Do something when the screen is focused\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n if (channel && !addDirectChannaleLoading) {\n if (channel?.id) {\n navigation.navigate(NavigationRoutes.InitialChannelOnboarding, {\n orgName: route?.params?.orgName,\n channelId: channel?.id,\n title: channel?.title,\n });\n } else {\n navigation.navigate(NavigationRoutes.Home, { orgName: route?.params?.orgName });\n }\n }\n }, [channel, addDirectChannaleLoading, route]);\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n const createChannelHandler = useCallback(() => {\n if (name && name?.length > 0) {\n addDirectChannel({\n variables: {\n receiver: [user.id],\n displayName: 'DIRECT CHANNEL',\n channelOptions: { schemeAdmin: true },\n },\n });\n createChannel({\n variables: {\n name: name,\n description: description,\n },\n });\n }\n }, [name]);\n\n return (\n <>\n <Box borderTopColor={'$blue600'} borderTopWidth={'$1'} w={'75%'} />\n <Center flex={1} bg={'white'}>\n <VStack space={'sm'} px={'$2'}>\n <Heading px={'$4'} alignItems={'center'} textAlign={'center'}>\n What's a project your team is working on?\n </Heading>\n <Text textAlign={'center'} px={'$2'}>\n This could be anything: a project, campaign,event, or the deal your're tring to close.\n </Text>\n <Box>\n <FormControl mt=\"$3\" w=\"100%\">\n <Input variant=\"outline\" size=\"lg\" py={'$3'} borderColor={'$blue900'} borderWidth={'$2'}>\n <InputField\n maxLength={80}\n placeholder=\"Ex. Q4 Budget, Website updateg\"\n value={name}\n onChangeText={(v) => setName(v)}\n aria-label=\"Organization name\"\n accessibilityLabel=\"Organization name\"\n />\n </Input>\n </FormControl>\n </Box>\n <Button\n variant={'solid'}\n bg={showCreateButton ? '$green800' : '$trueGray300'}\n $pressed-bg=\"$green600\"\n $active-bg={'$green600'}\n disabled={showCreateButton ? false : true}\n onPress={() => createChannelHandler()}\n >\n {loading || (addDirectChannaleLoading && <ButtonSpinner mr=\"$1\" />)}\n <ButtonText fontWeight=\"$bold\" color={showCreateButton ? '$white' : '$trueGray800'}>\n Next\n </ButtonText>\n </Button>\n </VStack>\n </Center>\n </>\n );\n};\n\nexport default InitializeOrganizationChannel;\n"],"names":["error","React"],"mappings":"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"}
1
+ {"version":3,"file":"InitializeOrganizationChannel.js","sources":["../../../src/screens/Organization/InitializeOrganizationChannel.tsx"],"sourcesContent":["import React, { useState, useEffect, useLayoutEffect, useCallback } from 'react';\nimport { StyleSheet, TouchableOpacity, Dimensions, Platform, Alert } from 'react-native';\nimport {\n Input,\n InputField,\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 ButtonSpinner,\n Center,\n Heading,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { useAddChannelMutation, useAddDirectChannelMutation } from '../../queries/slackuiQueries';\nimport { NavigationRoutes } from '../../constants/routes';\nimport { useSelector, shallowEqual } from 'react-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport { useFocusEffect, useNavigation } from '@react-navigation/native';\nimport Colors from 'tailwindcss/colors';\nimport { LoadingSpinner } from '../../components';\nconst windowWidth = Dimensions.get('window').width;\nconst windowHeight = Dimensions.get('window').height;\n\nconst InitializeOrganizationChannel = ({ route }: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector, shallowEqual);\n const [name, setName] = useState<string>('');\n const [channel, setChannel] = useState<any>(null);\n const [description, setDescription] = useState('');\n const [showCreateButton, setShowCreateButton] = useState<boolean>(false);\n const [addDirectChannel, { loading: addDirectChannaleLoading }] = useAddDirectChannelMutation();\n\n const [createChannel, { loading, error }] = useAddChannelMutation({\n onCompleted: (data: any) => {\n if (data?.createChannel) {\n setChannel(data?.createChannel);\n // After channel creation, we can add the creator as a member\n if (data?.createChannel?.id && user?.id) {\n // We'll handle adding members elsewhere\n }\n }\n },\n onError: (error: any) => {\n Alert.alert('Channel creation failed');\n },\n });\n\n useFocusEffect(\n React.useCallback(() => {\n // Do something when the screen is focused\n return () => {\n // Do something when the screen is unfocused\n // Useful for cleanup functions\n };\n }, []),\n );\n\n useEffect(() => {\n if (channel && !addDirectChannaleLoading) {\n if (channel?.id) {\n navigation.navigate(NavigationRoutes.InitialChannelOnboarding, {\n orgName: route?.params?.orgName,\n channelId: channel?.id,\n title: channel?.title,\n });\n } else {\n navigation.navigate(NavigationRoutes.Home, { orgName: route?.params?.orgName });\n }\n }\n }, [channel, addDirectChannaleLoading, route]);\n\n useEffect(() => {\n if (name && name.length > 0) setShowCreateButton(true);\n else setShowCreateButton(false);\n }, [name]);\n\n const createChannelHandler = useCallback(() => {\n if (name && name?.length > 0) {\n // Create direct channel first\n addDirectChannel({\n variables: {\n receiver: [user.id],\n displayName: 'DIRECT CHANNEL',\n channelOptions: { schemeAdmin: true },\n },\n });\n\n // Create the main channel\n createChannel({\n variables: {\n name: name,\n description: description,\n },\n });\n\n // After channel is created, the onCompleted handler in createChannel\n // will handle adding the user as a member\n }\n }, [name, description, user.id, addDirectChannel, createChannel]);\n\n return (\n <>\n <Box className=\"border-t-blue-600 border-t w-[75%]\" />\n <Center className=\"flex-1 bg-white\">\n <VStack space={'sm'} className=\"px-2\">\n <Heading className=\"px-4 items-center text-center\">\n What's a project your team is working on?\n </Heading>\n <Text className=\"text-center px-2\">\n This could be anything: a project, campaign,event, or the deal your're tring to close.\n </Text>\n <Box>\n <FormControl className=\"mt-3 w-full\">\n <Input variant=\"outline\" size=\"lg\" className=\"py-3 border-blue-900 border-t-2\">\n <InputField\n maxLength={80}\n placeholder=\"Ex. Q4 Budget, Website updateg\"\n value={name}\n onChange={(event) => setName(event.nativeEvent.text)}\n aria-label=\"Organization name\"\n accessibilityLabel=\"Organization name\"\n />\n </Input>\n </FormControl>\n </Box>\n <Button\n variant={'solid'}\n className={`${\n showCreateButton ? 'bg-green-800' : 'bg-gray-300'\n } active:bg-green-600 hover:bg-green-600`}\n disabled={showCreateButton ? false : true}\n onPress={() => createChannelHandler()}\n >\n {loading || (addDirectChannaleLoading && <ButtonSpinner style={{ marginRight: 1 }} />)}\n <ButtonText className={`font-bold ${showCreateButton ? 'color-white' : 'color-gray-800'}`}>\n Next\n </ButtonText>\n </Button>\n </VStack>\n </Center>\n </>\n );\n};\n\nexport default InitializeOrganizationChannel;\n"],"names":["error","React"],"mappings":"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"}