@messenger-box/slack-ui-mobile 10.0.3-alpha.7 → 10.0.3-alpha.74

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/lib/components/Actionsheet.js +96 -0
  2. package/lib/components/Actionsheet.js.map +1 -0
  3. package/lib/components/AppRootContextProviderComponent.js +16 -2
  4. package/lib/components/AppRootContextProviderComponent.js.map +1 -1
  5. package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js +13 -7
  6. package/lib/components/Channels/ChannelsByAlphabeticalAccordion.js.map +1 -1
  7. package/lib/components/CustomBottomTabs/CustomBottomTabs.js +11 -24
  8. package/lib/components/CustomBottomTabs/CustomBottomTabs.js.map +1 -1
  9. package/lib/components/CustomDrawer/CustomDrawer.js +31 -31
  10. package/lib/components/CustomDrawer/CustomDrawer.js.map +1 -1
  11. package/lib/components/Header/styles.js +2 -2
  12. package/lib/components/Header/styles.js.map +1 -1
  13. package/lib/components/LoadingSpinner/index.js +3 -3
  14. package/lib/components/LoadingSpinner/index.js.map +1 -1
  15. package/lib/components/NavigationHeader/InboxNavigationHeader.js +20 -25
  16. package/lib/components/NavigationHeader/InboxNavigationHeader.js.map +1 -1
  17. package/lib/components/NavigationHeader/NavigationHeader.js +58 -40
  18. package/lib/components/NavigationHeader/NavigationHeader.js.map +1 -1
  19. package/lib/components/NavigationHeader/NavigationHeaderChat.js +9 -9
  20. package/lib/components/NavigationHeader/NavigationHeaderChat.js.map +1 -1
  21. package/lib/components/NavigationHeader/index.js +1 -1
  22. package/lib/components/SlackSearchInput/Suggestion.js +1 -1
  23. package/lib/components/SlackSearchInput/Tag.js +1 -1
  24. package/lib/components/SlackSearchInput/index.js +3 -3
  25. package/lib/components/SlackSearchInput/index.js.map +1 -1
  26. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js +19 -4
  27. package/lib/components/VirtualizedScrollView/VirtualizedScrollView.js.map +1 -1
  28. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js +41 -31
  29. package/lib/components/WorkSpaceDrawer/WorkSpaceDrawer.js.map +1 -1
  30. package/lib/compute.js +32 -23
  31. package/lib/compute.js.map +1 -1
  32. package/lib/constants/Colors.js +2 -2
  33. package/lib/constants/globalStyles.js +3 -3
  34. package/lib/constants/globalStyles.js.map +1 -1
  35. package/lib/hooks/useOptimizedChannelsQueries.js +106 -0
  36. package/lib/hooks/useOptimizedChannelsQueries.js.map +1 -0
  37. package/lib/index.js +1 -1
  38. package/lib/index.js.map +1 -1
  39. package/lib/navigation/SearchTabNavigation.js +47 -39
  40. package/lib/navigation/SearchTabNavigation.js.map +1 -1
  41. package/lib/navigation/TeamTabNavigation.js +51 -38
  42. package/lib/navigation/TeamTabNavigation.js.map +1 -1
  43. package/lib/queries/slackuiQueries.js +129 -0
  44. package/lib/queries/slackuiQueries.js.map +1 -0
  45. package/lib/routes.json +32 -23
  46. package/lib/screens/Account/AccountScreen.js +23 -26
  47. package/lib/screens/Account/AccountScreen.js.map +1 -1
  48. package/lib/screens/Activity/ActivityScreen.js +6 -2
  49. package/lib/screens/Activity/ActivityScreen.js.map +1 -1
  50. package/lib/screens/Channels/Add/AddName.js +33 -8
  51. package/lib/screens/Channels/Add/AddName.js.map +1 -1
  52. package/lib/screens/Channels/Add/AddVisibility.js +6 -6
  53. package/lib/screens/Channels/Add/AddVisibility.js.map +1 -1
  54. package/lib/screens/Channels/AddChannel.js +5 -3
  55. package/lib/screens/Channels/AddChannel.js.map +1 -1
  56. package/lib/screens/Channels/Channels.js +101 -95
  57. package/lib/screens/Channels/Channels.js.map +1 -1
  58. package/lib/screens/Files/FilesScreen.js +2 -2
  59. package/lib/screens/Files/FilesScreen.js.map +1 -1
  60. package/lib/screens/Home/Components/Channels/Channels.js +91 -77
  61. package/lib/screens/Home/Components/Channels/Channels.js.map +1 -1
  62. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js +249 -115
  63. package/lib/screens/Home/Components/DirectChannels/DirectChannels.js.map +1 -1
  64. package/lib/screens/Home/Components/InviteMembers/index.js +88 -0
  65. package/lib/screens/Home/Components/InviteMembers/index.js.map +1 -0
  66. package/lib/screens/Home/Components/Teams/Teams.js +110 -47
  67. package/lib/screens/Home/Components/Teams/Teams.js.map +1 -1
  68. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js +44 -75
  69. package/lib/screens/Home/Components/TopCommonSlider/TopCommonSlider.js.map +1 -1
  70. package/lib/screens/Home/HomeScreen.js +161 -194
  71. package/lib/screens/Home/HomeScreen.js.map +1 -1
  72. package/lib/screens/Home/styles.js +4 -4
  73. package/lib/screens/Home/styles.js.map +1 -1
  74. package/lib/screens/Inbox/InboxChannelDetail.js +67 -34
  75. package/lib/screens/Inbox/InboxChannelDetail.js.map +1 -1
  76. package/lib/screens/Inbox/InboxDialogMessages.js +2 -2
  77. package/lib/screens/Inbox/InboxDialogMessages.js.map +1 -1
  78. package/lib/screens/Inbox/InboxScreen.js +3 -3
  79. package/lib/screens/Inbox/InboxScreen.js.map +1 -1
  80. package/lib/screens/Login.js +4 -2
  81. package/lib/screens/Login.js.map +1 -1
  82. package/lib/screens/Organization/AddWorkspace.js +42 -38
  83. package/lib/screens/Organization/AddWorkspace.js.map +1 -1
  84. package/lib/screens/Organization/CreateOrganization.js +11 -2
  85. package/lib/screens/Organization/CreateOrganization.js.map +1 -1
  86. package/lib/screens/Organization/InitialChannelOnboarding.js +22 -4
  87. package/lib/screens/Organization/InitialChannelOnboarding.js.map +1 -1
  88. package/lib/screens/Organization/InitializeOrganizationChannel.js +9 -4
  89. package/lib/screens/Organization/InitializeOrganizationChannel.js.map +1 -1
  90. package/lib/screens/Organization/InviteOrganizationMembers.js +52 -10
  91. package/lib/screens/Organization/InviteOrganizationMembers.js.map +1 -1
  92. package/lib/screens/Peoples/AddByEmail.js +24 -6
  93. package/lib/screens/Peoples/AddByEmail.js.map +1 -1
  94. package/lib/screens/Peoples/AddFromContacts.js +172 -87
  95. package/lib/screens/Peoples/AddFromContacts.js.map +1 -1
  96. package/lib/screens/Peoples/AddPeople.js +21 -42
  97. package/lib/screens/Peoples/AddPeople.js.map +1 -1
  98. package/lib/screens/Peoples/People.js +42 -4
  99. package/lib/screens/Peoples/People.js.map +1 -1
  100. package/lib/screens/Profile/ProfileScreen.js +27 -12
  101. package/lib/screens/Profile/ProfileScreen.js.map +1 -1
  102. package/lib/screens/Saved/SavedScreen.js +2 -2
  103. package/lib/screens/Saved/SavedScreen.js.map +1 -1
  104. package/lib/screens/Search/Channels.js +20 -32
  105. package/lib/screens/Search/Channels.js.map +1 -1
  106. package/lib/screens/Search/Files.js +2 -2
  107. package/lib/screens/Search/Files.js.map +1 -1
  108. package/lib/screens/Search/JumpTo.js +2 -2
  109. package/lib/screens/Search/JumpTo.js.map +1 -1
  110. package/lib/screens/Search/People.js +19 -27
  111. package/lib/screens/Search/People.js.map +1 -1
  112. package/lib/screens/Search/Recents.js +26 -31
  113. package/lib/screens/Search/Recents.js.map +1 -1
  114. package/lib/screens/Search/SearchAddChannel.js +366 -227
  115. package/lib/screens/Search/SearchAddChannel.js.map +1 -1
  116. package/lib/screens/Search/SearchChannelPeople.js +70 -37
  117. package/lib/screens/Search/SearchChannelPeople.js.map +1 -1
  118. package/lib/screens/Search/SearchScreen.js +5 -3
  119. package/lib/screens/Search/SearchScreen.js.map +1 -1
  120. package/lib/screens/Search/styles.js +2 -2
  121. package/lib/screens/Search/styles.js.map +1 -1
  122. package/lib/screens/Teams/AddTeam.js +3 -3
  123. package/lib/screens/Teams/AddTeam.js.map +1 -1
  124. package/lib/screens/Teams/Components/Channels/Channels.js +6 -6
  125. package/lib/screens/Teams/Components/Channels/Channels.js.map +1 -1
  126. package/lib/screens/Teams/Components/Members/Members.js +7 -3
  127. package/lib/screens/Teams/Components/Members/Members.js.map +1 -1
  128. package/lib/screens/Teams/Team.js +6 -8
  129. package/lib/screens/Teams/Team.js.map +1 -1
  130. package/lib/screens/Teams/Teams.js +137 -106
  131. package/lib/screens/Teams/Teams.js.map +1 -1
  132. package/lib/screens/Teams/useTeams.js +41 -0
  133. package/lib/screens/Teams/useTeams.js.map +1 -0
  134. package/lib/screens/Wiki/WikiScreen.js +2 -2
  135. package/lib/screens/Wiki/WikiScreen.js.map +1 -1
  136. package/lib/theme/index.js +2 -2
  137. package/lib/theme/index.js.map +1 -1
  138. package/package.json +6 -4
  139. package/lib/navigation/ActivityNavigator.js +0 -61
  140. package/lib/navigation/ActivityNavigator.js.map +0 -1
  141. package/lib/navigation/ExploreNavigator.js +0 -583
  142. package/lib/navigation/ExploreNavigator.js.map +0 -1
  143. package/lib/navigation/InboxNavigator.js +0 -183
  144. package/lib/navigation/InboxNavigator.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../src/components/SlackSearchInput/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport {\n //FlatList,\n FlatListProps,\n StyleSheet,\n TextInput,\n TextInputProps,\n TextStyle,\n View,\n ViewStyle,\n} from 'react-native';\nimport Suggestion from './Suggestion';\nimport Tag from './Tag';\nimport { HStack, Box, FlatList } from '@admin-layout/gluestack-ui-mobile';\n\nexport type Tag = any;\nexport type Suggestion = any;\n// export type inputProps = TextInputProps & IInputProps;\nexport type inputProps = TextInputProps;\n\nexport type SlackInputProps = {\n /** array of tags to render */\n tags: Tag[];\n\n /** array of all possible suggestions that the autocomplete pulls from */\n suggestions?: Suggestion[];\n\n /** function called when tags needs to be updated */\n onChangeTags: (newTags: Tag[]) => void;\n\n /** given a tag, returns the string that should be rendered in a Tag */\n labelExtractor: (tag: Tag) => string;\n\n /** called when a tag is pressed, instead of calling `onChangeTags` with the pressed tag removed */\n onTagPress?: (tag: Tag) => void;\n\n /** an array of characters that should trigger a new tag and clear the TextInput\n * @default [',', ' ', ';', '\\n'] */\n parseChars?: string[];\n\n /** called when the user types a character in parseChars and should therefore add a new tag\n * if undefined, will call `onChangeTags` with `[...tags, userInputText]`\n */\n onAddNewTag?: (userInput: string) => void;\n\n /** whether or not to allow the user to create a Tag that doesn't come from `suggestions`\n * @default true\n */\n allowCustomTags?: boolean;\n\n /** called when a suggestion is pressed\n * defaultly calls `onChangeTags` with `[...tags, pressedSuggestion]`\n */\n onSuggestionPress?: (suggestion: Suggestion) => void;\n\n /** given a Suggestion, returns a string that can be compared to the user's search */\n suggestionExtractor?: (suggestion: Suggestion) => string;\n\n /** a function for filtering suggestions based on the TextInput value */\n filterSuggestions?: (text: string) => Suggestion[];\n\n /** a function that returns a custom tag component */\n renderTag?: (tag: Tag, onPress: (tag: Tag) => void, index?: any) => JSX.Element;\n\n /** a function that returns a custom suggestion component */\n renderSuggestion?: (suggestion: Suggestion, onPress: (tag: Suggestion) => void, index?: any) => JSX.Element;\n\n /** any custom TextInputProps */\n inputProps?: Partial<inputProps>;\n\n /** any additional FlatListProps */\n flatListProps?: Partial<FlatListProps<any>>;\n\n flatListGluestackUiProps?: any;\n\n /** style for the outer-most View that houses both the tagContainer and suggestion list */\n containerStyle?: ViewStyle;\n\n /** styles for the container View that houses the tags and the input */\n tagContainerStyle?: ViewStyle;\n\n /** styles for the TextInput component */\n inputStyle?: TextStyle;\n\n /** styles for the FlatList that renders suggestions */\n flatListStyle?: ViewStyle;\n\n /** styles for the container View of FlatList that renders suggestions */\n flatListContainerStyle?: ViewStyle;\n\n renderLeftElement?: () => JSX.Element;\n\n renderRightElement?: () => JSX.Element;\n\n isSetInputFocusOut?: boolean;\n};\n\nexport const SlackInput = ({\n tags,\n suggestions,\n labelExtractor,\n suggestionExtractor,\n onChangeTags,\n onTagPress,\n parseChars,\n allowCustomTags,\n onAddNewTag,\n onSuggestionPress,\n filterSuggestions,\n renderTag,\n renderSuggestion,\n renderLeftElement,\n renderRightElement,\n containerStyle,\n tagContainerStyle,\n inputStyle,\n flatListStyle,\n flatListContainerStyle,\n inputProps,\n flatListProps,\n flatListGluestackUiProps,\n isSetInputFocusOut,\n}: SlackInputProps) => {\n const [text, setText] = useState('');\n const inputRef = useRef<TextInput | null>(null);\n const extractor = suggestionExtractor || labelExtractor;\n\n useEffect(() => {\n console.log('isSetInputFocusOut', isSetInputFocusOut);\n if (isSetInputFocusOut) inputRef.current?.blur();\n }, [isSetInputFocusOut]);\n\n const handleTagPress = useCallback((tag: Tag) => {\n if (onTagPress) {\n onTagPress(tag);\n } else {\n onChangeTags(tags.filter((t) => labelExtractor(t) !== labelExtractor(tag)));\n }\n }, []);\n\n // const handleTagPress = (tag: Tag) => {\n // if (onTagPress) {\n // onTagPress(tag);\n // } else {\n // onChangeTags(tags.filter((t) => labelExtractor(t) !== labelExtractor(tag)));\n // }\n // };\n\n const handleSuggestionPress = useCallback(\n (suggestion: Suggestion) => {\n setText('');\n if (onSuggestionPress) {\n onSuggestionPress(suggestion);\n } else {\n onChangeTags([...tags, suggestion]);\n }\n\n inputRef.current?.focus();\n },\n [tags, inputRef, isSetInputFocusOut],\n );\n\n // const handleSuggestionPress = (suggestion: Suggestion) => {\n // setText('');\n // if (onSuggestionPress) {\n // onSuggestionPress(suggestion);\n // } else {\n // onChangeTags([...tags, suggestion]);\n // }\n // inputRef.current?.focus();\n // };\n\n const handleTextChange = useCallback(\n (input: string) => {\n setText(input);\n\n const lastTyped = input.charAt(input.length - 1);\n if (parseChars && parseChars.indexOf(lastTyped) > -1) {\n setText('');\n if (allowCustomTags) {\n const label = input.slice(0, -1);\n if (onAddNewTag) {\n onAddNewTag(label);\n } else {\n onChangeTags([...tags, label]);\n }\n }\n }\n },\n [tags],\n );\n\n // const handleTextChange = (input: string) => {\n // setText(input);\n\n // const lastTyped = input.charAt(input.length - 1);\n // if (parseChars && parseChars.indexOf(lastTyped) > -1) {\n // setText('');\n // if (allowCustomTags) {\n // const label = input.slice(0, -1);\n // if (onAddNewTag) {\n // onAddNewTag(label);\n // } else {\n // onChangeTags([...tags, label]);\n // }\n // }\n // }\n // };\n\n const renderTagComponent = (tag: Tag, index: any) => {\n const onPress = () => handleTagPress(tag);\n if (renderTag) {\n return renderTag(tag, onPress, index);\n }\n return <Tag label={labelExtractor(tag)} key={`render-tag-key-${index}`} onPress={onPress} />;\n // return <Tag label={labelExtractor(tag)} key={labelExtractor(tag)} onPress={onPress} />;\n };\n\n const renderSuggestionComponent = ({ item, index }: { item: Suggestion; index: any }) => {\n const onPress = () => handleSuggestionPress(item);\n if (renderSuggestion) {\n return renderSuggestion(item, onPress, index);\n }\n return <Suggestion label={extractor(item)} onPress={onPress} />;\n };\n\n const onKeyPress = useCallback(\n ({ nativeEvent: { key } }: { nativeEvent: { key: string } }) => {\n if (text !== '' || key !== 'Backspace' || tags.length < 1) {\n return;\n }\n const updatedTags = [...tags];\n updatedTags.pop();\n onChangeTags(updatedTags);\n },\n [tags, text],\n );\n\n // const onKeyPress = ({ nativeEvent: { key } }: { nativeEvent: { key: string } }) => {\n // if (text !== '' || key !== 'Backspace' || tags.length < 1) {\n // return;\n // }\n // const updatedTags = [...tags];\n // updatedTags.pop();\n // onChangeTags(updatedTags);\n // };\n\n const getSuggestions = useCallback(() => {\n if (filterSuggestions) {\n return filterSuggestions(text);\n }\n if (!text || text === '') {\n return [];\n }\n const regex = new RegExp(`${text.trim()}`, 'i');\n return suggestions?.filter((item) => extractor(item).search(regex) >= 0);\n }, [text, suggestions]);\n\n // const getSuggestions = () => {\n // if (filterSuggestions) {\n // return filterSuggestions(text);\n // }\n // if (!text || text === '') {\n // return [];\n // }\n // const regex = new RegExp(`${text.trim()}`, 'i');\n // return suggestions?.filter((item) => extractor(item).search(regex) >= 0);\n // };\n\n return (\n <View style={[styles.container, containerStyle]}>\n <HStack\n style={[styles.tagContainer, tagContainerStyle]}\n alignItems={'center'}\n justifyContent={'space-between'}\n >\n <Box>{renderLeftElement?.()}</Box>\n <HStack flex={renderRightElement ? 1 : 1} flexWrap={'wrap'} alignItems={'center'}>\n {tags?.map(renderTagComponent)}\n <TextInput\n // variant={'unstyled'}\n value={text}\n onKeyPress={onKeyPress}\n ref={inputRef}\n onChangeText={handleTextChange}\n style={[styles.input, inputStyle]}\n {...inputProps}\n />\n </HStack>\n <Box>{renderRightElement?.()}</Box>\n </HStack>\n <View style={flatListContainerStyle}>\n <FlatList\n data={getSuggestions()}\n //keyExtractor={extractor}\n keyExtractor={(item, index) => String(index)}\n renderItem={renderSuggestionComponent}\n keyboardShouldPersistTaps=\"handled\"\n style={[styles.list, flatListStyle]}\n {...flatListProps}\n {...flatListGluestackUiProps}\n />\n </View>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n zIndex: 2000,\n width: '100%',\n },\n tagContainer: {\n // flexDirection: 'row',\n flexWrap: 'wrap',\n // alignItems: 'center',\n },\n input: {\n flex: 1,\n minWidth: 100,\n },\n list: {\n maxHeight: 100,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n },\n});\n\n// SlackInput.defaultProps = {\n// parseChars: [',', ' ', ';', '\\n'],\n// allowCustomTags: true,\n// suggestions: [],\n// };\n\nexport default React.memo(SlackInput);\n"],"names":["React"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../src/components/SlackSearchInput/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport {\n //FlatList,\n FlatListProps,\n StyleSheet,\n TextInput,\n TextInputProps,\n TextStyle,\n View,\n ViewStyle,\n} from 'react-native';\nimport Suggestion from './Suggestion';\nimport Tag from './Tag';\nimport { HStack, Box, FlatList } from '@admin-layout/gluestack-ui-mobile';\n\nexport type Tag = any;\nexport type Suggestion = any;\n// export type inputProps = TextInputProps & IInputProps;\nexport type inputProps = TextInputProps;\n\nexport type SlackInputProps = {\n /** array of tags to render */\n tags: Tag[];\n\n /** array of all possible suggestions that the autocomplete pulls from */\n suggestions?: Suggestion[];\n\n /** function called when tags needs to be updated */\n onChangeTags: (newTags: Tag[]) => void;\n\n /** given a tag, returns the string that should be rendered in a Tag */\n labelExtractor: (tag: Tag) => string;\n\n /** called when a tag is pressed, instead of calling `onChangeTags` with the pressed tag removed */\n onTagPress?: (tag: Tag) => void;\n\n /** an array of characters that should trigger a new tag and clear the TextInput\n * @default [',', ' ', ';', '\\n'] */\n parseChars?: string[];\n\n /** called when the user types a character in parseChars and should therefore add a new tag\n * if undefined, will call `onChangeTags` with `[...tags, userInputText]`\n */\n onAddNewTag?: (userInput: string) => void;\n\n /** whether or not to allow the user to create a Tag that doesn't come from `suggestions`\n * @default true\n */\n allowCustomTags?: boolean;\n\n /** called when a suggestion is pressed\n * defaultly calls `onChangeTags` with `[...tags, pressedSuggestion]`\n */\n onSuggestionPress?: (suggestion: Suggestion) => void;\n\n /** given a Suggestion, returns a string that can be compared to the user's search */\n suggestionExtractor?: (suggestion: Suggestion) => string;\n\n /** a function for filtering suggestions based on the TextInput value */\n filterSuggestions?: (text: string) => Suggestion[];\n\n /** a function that returns a custom tag component */\n renderTag?: (tag: Tag, onPress: (tag: Tag) => void, index?: any) => JSX.Element;\n\n /** a function that returns a custom suggestion component */\n renderSuggestion?: (suggestion: Suggestion, onPress: (tag: Suggestion) => void, index?: any) => JSX.Element;\n\n /** any custom TextInputProps */\n inputProps?: Partial<inputProps>;\n\n /** any additional FlatListProps */\n flatListProps?: Partial<FlatListProps<any>>;\n\n flatListGluestackUiProps?: any;\n\n /** style for the outer-most View that houses both the tagContainer and suggestion list */\n containerStyle?: ViewStyle;\n\n /** styles for the container View that houses the tags and the input */\n tagContainerStyle?: ViewStyle;\n\n /** styles for the TextInput component */\n inputStyle?: TextStyle;\n\n /** styles for the FlatList that renders suggestions */\n flatListStyle?: ViewStyle;\n\n /** styles for the container View of FlatList that renders suggestions */\n flatListContainerStyle?: ViewStyle;\n\n renderLeftElement?: () => JSX.Element;\n\n renderRightElement?: () => JSX.Element;\n\n isSetInputFocusOut?: boolean;\n};\n\nexport const SlackInput = ({\n tags,\n suggestions,\n labelExtractor,\n suggestionExtractor,\n onChangeTags,\n onTagPress,\n parseChars,\n allowCustomTags,\n onAddNewTag,\n onSuggestionPress,\n filterSuggestions,\n renderTag,\n renderSuggestion,\n renderLeftElement,\n renderRightElement,\n containerStyle,\n tagContainerStyle,\n inputStyle,\n flatListStyle,\n flatListContainerStyle,\n inputProps,\n flatListProps,\n flatListGluestackUiProps,\n isSetInputFocusOut,\n}: SlackInputProps) => {\n const [text, setText] = useState('');\n const inputRef = useRef<TextInput | null>(null);\n const extractor = suggestionExtractor || labelExtractor;\n\n useEffect(() => {\n console.log('isSetInputFocusOut', isSetInputFocusOut);\n if (isSetInputFocusOut) inputRef.current?.blur();\n }, [isSetInputFocusOut]);\n\n const handleTagPress = useCallback((tag: Tag) => {\n if (onTagPress) {\n onTagPress(tag);\n } else {\n onChangeTags(tags.filter((t) => labelExtractor(t) !== labelExtractor(tag)));\n }\n }, []);\n\n // const handleTagPress = (tag: Tag) => {\n // if (onTagPress) {\n // onTagPress(tag);\n // } else {\n // onChangeTags(tags.filter((t) => labelExtractor(t) !== labelExtractor(tag)));\n // }\n // };\n\n const handleSuggestionPress = useCallback(\n (suggestion: Suggestion) => {\n setText('');\n if (onSuggestionPress) {\n onSuggestionPress(suggestion);\n } else {\n onChangeTags([...tags, suggestion]);\n }\n\n inputRef.current?.focus();\n },\n [tags, inputRef, isSetInputFocusOut],\n );\n\n // const handleSuggestionPress = (suggestion: Suggestion) => {\n // setText('');\n // if (onSuggestionPress) {\n // onSuggestionPress(suggestion);\n // } else {\n // onChangeTags([...tags, suggestion]);\n // }\n // inputRef.current?.focus();\n // };\n\n const handleTextChange = useCallback(\n (input: string) => {\n setText(input);\n\n const lastTyped = input.charAt(input.length - 1);\n if (parseChars && parseChars.indexOf(lastTyped) > -1) {\n setText('');\n if (allowCustomTags) {\n const label = input.slice(0, -1);\n if (onAddNewTag) {\n onAddNewTag(label);\n } else {\n onChangeTags([...tags, label]);\n }\n }\n }\n },\n [tags],\n );\n\n // const handleTextChange = (input: string) => {\n // setText(input);\n\n // const lastTyped = input.charAt(input.length - 1);\n // if (parseChars && parseChars.indexOf(lastTyped) > -1) {\n // setText('');\n // if (allowCustomTags) {\n // const label = input.slice(0, -1);\n // if (onAddNewTag) {\n // onAddNewTag(label);\n // } else {\n // onChangeTags([...tags, label]);\n // }\n // }\n // }\n // };\n\n const renderTagComponent = (tag: Tag, index: any) => {\n const onPress = () => handleTagPress(tag);\n if (renderTag) {\n return renderTag(tag, onPress, index);\n }\n return <Tag label={labelExtractor(tag)} key={`render-tag-key-${index}`} onPress={onPress} />;\n // return <Tag label={labelExtractor(tag)} key={labelExtractor(tag)} onPress={onPress} />;\n };\n\n const renderSuggestionComponent = ({ item, index }: { item: Suggestion; index: any }) => {\n const onPress = () => handleSuggestionPress(item);\n if (renderSuggestion) {\n return renderSuggestion(item, onPress, index);\n }\n return <Suggestion label={extractor(item)} onPress={onPress} />;\n };\n\n const onKeyPress = useCallback(\n ({ nativeEvent: { key } }: { nativeEvent: { key: string } }) => {\n if (text !== '' || key !== 'Backspace' || tags.length < 1) {\n return;\n }\n const updatedTags = [...tags];\n updatedTags.pop();\n onChangeTags(updatedTags);\n },\n [tags, text],\n );\n\n // const onKeyPress = ({ nativeEvent: { key } }: { nativeEvent: { key: string } }) => {\n // if (text !== '' || key !== 'Backspace' || tags.length < 1) {\n // return;\n // }\n // const updatedTags = [...tags];\n // updatedTags.pop();\n // onChangeTags(updatedTags);\n // };\n\n const getSuggestions = useCallback(() => {\n if (filterSuggestions) {\n return filterSuggestions(text);\n }\n if (!text || text === '') {\n return [];\n }\n const regex = new RegExp(`${text.trim()}`, 'i');\n return suggestions?.filter((item) => extractor(item).search(regex) >= 0);\n }, [text, suggestions]);\n\n // const getSuggestions = () => {\n // if (filterSuggestions) {\n // return filterSuggestions(text);\n // }\n // if (!text || text === '') {\n // return [];\n // }\n // const regex = new RegExp(`${text.trim()}`, 'i');\n // return suggestions?.filter((item) => extractor(item).search(regex) >= 0);\n // };\n\n return (\n <View style={[styles.container, containerStyle]}>\n <HStack style={[styles.tagContainer, tagContainerStyle]} className=\"items-center justify-between\">\n <Box>{renderLeftElement?.()}</Box>\n <HStack className={`flex-[${renderRightElement ? 1 : 1}] flex-wrap items-center`}>\n {tags?.map(renderTagComponent)}\n <TextInput\n // variant={'unstyled'}\n value={text}\n onKeyPress={onKeyPress}\n ref={inputRef}\n onChange={(event) => handleTextChange(event.nativeEvent.text)}\n style={[styles.input, inputStyle]}\n {...inputProps}\n />\n </HStack>\n <Box>{renderRightElement?.()}</Box>\n </HStack>\n <View style={flatListContainerStyle}>\n <FlatList\n data={getSuggestions()}\n //keyExtractor={extractor}\n keyExtractor={(item, index) => String(index)}\n renderItem={renderSuggestionComponent}\n keyboardShouldPersistTaps=\"handled\"\n style={[styles.list, flatListStyle]}\n {...flatListProps}\n {...flatListGluestackUiProps}\n />\n </View>\n </View>\n );\n};\n\nconst styles = StyleSheet.create({\n container: {\n zIndex: 2000,\n width: '100%',\n },\n tagContainer: {\n // flexDirection: 'row',\n flexWrap: 'wrap',\n // alignItems: 'center',\n },\n input: {\n flex: 1,\n minWidth: 100,\n },\n list: {\n maxHeight: 100,\n position: 'absolute',\n top: 0,\n left: 0,\n right: 0,\n },\n});\n\n// SlackInput.defaultProps = {\n// parseChars: [',', ' ', ';', '\\n'],\n// allowCustomTags: true,\n// suggestions: [],\n// };\n\nexport default React.memo(SlackInput);\n"],"names":["React"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import React__default from'react';import {FlatList}from'@admin-layout/gluestack-ui-mobile';import'@expo/vector-icons';import'expo-font';import'expo-splash-screen';import'react-native';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import'../../hooks/useExpoNotificationProvider.js';var __defProp = Object.defineProperty;
1
+ import React__default from'react';import {FlatList}from'@admin-layout/gluestack-ui-mobile';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';var __defProp = Object.defineProperty;
2
2
  var __defProps = Object.defineProperties;
3
3
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
@@ -22,7 +22,22 @@ const VirtualizedScrollView = (props) => {
22
22
  headerAnimationOffsetValue,
23
23
  setHeaderAnimationOffsetValue
24
24
  } = useDrawerLayout();
25
- return /* @__PURE__ */ React__default.createElement(FlatList, __spreadProps(__spreadValues({}, props), { onScroll: (e) => {
26
- e.nativeEvent.contentOffset.y;
27
- }, nestedScrollEnabled: (props == null ? void 0 : props.nestedScrollEnabled) || true, pb: "$10", data: [], keyExtractor: (e, i) => "dom" + i.toString(), ListEmptyComponent: null, renderItem: null, ListHeaderComponent: () => /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, props.children) }));
25
+ return /* @__PURE__ */ React__default.createElement(
26
+ FlatList,
27
+ __spreadProps(__spreadValues({}, props), {
28
+ onScroll: (e) => {
29
+ e.nativeEvent.contentOffset.y;
30
+ },
31
+ nestedScrollEnabled: (props == null ? void 0 : props.nestedScrollEnabled) || true,
32
+ style: [props == null ? void 0 : props.style, {
33
+ paddingBottom: 10,
34
+ flex: 1
35
+ }],
36
+ data: [],
37
+ keyExtractor: (e, i) => "dom" + i.toString(),
38
+ ListEmptyComponent: null,
39
+ renderItem: null,
40
+ ListHeaderComponent: () => /* @__PURE__ */ React__default.createElement(React__default.Fragment, null, props.children)
41
+ })
42
+ );
28
43
  };export{VirtualizedScrollView as default};//# sourceMappingURL=VirtualizedScrollView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VirtualizedScrollView.js","sources":["../../../src/components/VirtualizedScrollView/VirtualizedScrollView.tsx"],"sourcesContent":["import React from 'react';\nimport { FlatList } from '@admin-layout/gluestack-ui-mobile';\nimport { useDrawerLayout } from '../../hooks';\n\nconst VirtualizedScrollView = (props: any) => {\n const { headerAnimationOffsetValue, setHeaderAnimationOffsetValue } = useDrawerLayout();\n\n return (\n <FlatList\n {...props}\n onScroll={(e) => {\n const currentOffset = e.nativeEvent.contentOffset.y;\n const direction = currentOffset > headerAnimationOffsetValue ? 'down' : 'up';\n\n //..last commented..// if (currentOffset >= 0 || (direction === 'down' && currentOffset >= 200 && currentOffset <= 500))\n // setHeaderAnimationOffsetValue(e.nativeEvent.contentOffset.y);\n\n // if (e.nativeEvent.contentOffset.y >= 0) setHeaderAnimationOffsetValue(e.nativeEvent.contentOffset.y);\n }}\n nestedScrollEnabled={props?.nestedScrollEnabled || true}\n pb={'$10'}\n data={[]}\n keyExtractor={(e, i) => 'dom' + i.toString()}\n ListEmptyComponent={null}\n renderItem={null}\n ListHeaderComponent={() => <>{props.children}</>}\n />\n );\n};\n\nexport default VirtualizedScrollView;\n"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;AAGM,MAAA,qBAAA,GAAwB,CAAC,KAAe,KAAA;AAC5C,EAAM,MAAA;AAAA,IACJ,0BAAA;AAAA,IACA;AAAA,MACE,eAAgB,EAAA;AACpB,EAAA,uBAAQA,cAAA,CAAA,aAAA,CAAA,QAAA,EAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAAa,KAAb,CAAA,EAAA,EAAoB,UAAU,CAAK,CAAA,KAAA;AACzC,IAAsB,CAAE,CAAA,WAAA,CAAY,aAAc,CAAA;AACsB,GAM1E,EAAG,mBAAqB,EAAA,CAAA,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAO,mBAAuB,KAAA,IAAA,EAAM,EAAI,EAAA,KAAA,EAAO,IAAM,EAAA,EAAI,EAAA,YAAA,EAAc,CAAC,CAAA,EAAG,CAAM,KAAA,KAAA,GAAQ,CAAE,CAAA,QAAA,EAAY,EAAA,kBAAA,EAAoB,IAAM,EAAA,UAAA,EAAY,IAAM,EAAA,mBAAA,EAAqB,sBAAMA,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,EAAG,KAAM,CAAA,QAAS,CAAK,EAAA,CAAA,CAAA;AAC/N"}
1
+ {"version":3,"file":"VirtualizedScrollView.js","sources":["../../../src/components/VirtualizedScrollView/VirtualizedScrollView.tsx"],"sourcesContent":["import React from 'react';\nimport { FlatList } from '@admin-layout/gluestack-ui-mobile';\nimport { useDrawerLayout } from '../../hooks';\n\nconst VirtualizedScrollView = (props: any) => {\n const { headerAnimationOffsetValue, setHeaderAnimationOffsetValue } = useDrawerLayout();\n\n return (\n <FlatList\n {...props}\n onScroll={(e) => {\n const currentOffset = e.nativeEvent.contentOffset.y;\n const direction = currentOffset > headerAnimationOffsetValue ? 'down' : 'up';\n\n //..last commented..// if (currentOffset >= 0 || (direction === 'down' && currentOffset >= 200 && currentOffset <= 500))\n // setHeaderAnimationOffsetValue(e.nativeEvent.contentOffset.y);\n\n // if (e.nativeEvent.contentOffset.y >= 0) setHeaderAnimationOffsetValue(e.nativeEvent.contentOffset.y);\n }}\n nestedScrollEnabled={props?.nestedScrollEnabled || true}\n // pb={'$10'}\n style={[props?.style, { paddingBottom: 10, flex: 1 }]}\n data={[]}\n keyExtractor={(e, i) => 'dom' + i.toString()}\n ListEmptyComponent={null}\n renderItem={null}\n ListHeaderComponent={() => <>{props.children}</>}\n />\n );\n};\n\nexport default VirtualizedScrollView;\n"],"names":["React"],"mappings":";;;;;;;;;;;;;;;;;;;AAGM,MAAA,qBAAA,GAAwB,CAAC,KAAe,KAAA;AAC5C,EAAM,MAAA;AAAA,IACJ,0BAAA;AAAA,IACA;AAAA,MACE,eAAgB,EAAA;AACpB,EAAO,uBAAAA,cAAA,CAAA,aAAA;AAAA,IAAC,QAAA;AAAA,IAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EAAa,KAAb,CAAA,EAAA;AAAA,MAAoB,UAAU,CAAK,CAAA,KAAA;AACzC,QAAsB,CAAE,CAAA,WAAA,CAAY,aAAc,CAAA;AACsB,OAM1E;AAAA,MAAG,mBAAA,EAAA,CAAqB,+BAAO,mBAAuB,KAAA,IAAA;AAAA,MAEtD,KAAA,EAAO,CAAC,KAAA,IAAA,IAAA,GAAA,MAAA,GAAA,KAAA,CAAO,KAAO,EAAA;AAAA,QACpB,aAAe,EAAA,EAAA;AAAA,QACf,IAAM,EAAA;AAAA,OACP,CAAA;AAAA,MAAG,MAAM,EAAC;AAAA,MAAG,cAAc,CAAC,CAAA,EAAG,CAAM,KAAA,KAAA,GAAQ,EAAE,QAAS,EAAA;AAAA,MAAG,kBAAoB,EAAA,IAAA;AAAA,MAAM,UAAY,EAAA,IAAA;AAAA,MAAM,mBAAqB,EAAA,sBAASA,cAAA,CAAA,aAAA,CAAAA,cAAA,CAAA,QAAA,EAAA,IAAA,EAAA,KAAA,CAAM,QAAS;AAAA,KAAA;AAAA,GAAK;AAC5J"}
@@ -1,4 +1,4 @@
1
- import React__default from'react';import {AntDesign,Ionicons,MaterialIcons}from'@expo/vector-icons';import {TouchableHighlight}from'react-native';import {SafeAreaView,Box,useLocationChange,Heading,VStack,FlatList,Text,Divider,Button,ButtonText,HStack,Avatar}from'@admin-layout/gluestack-ui-mobile';import {useSelector,useDispatch}from'react-redux';import {NavigationRoutes}from'../../constants/routes.js';import {useNavigation,useFocusEffect,StackActions}from'@react-navigation/native';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import {useGetOrganizationDetailQuery,useGetUserOrganizationsQuery}from'common/lib/generated/generated.js';import {LOCATION_CHANGE}from'@common-stack/remix-router-redux';import {userSelector}from'@adminide-stack/user-auth0-client';var __defProp = Object.defineProperty;
1
+ import React__default from'react';import {AntDesign,Ionicons}from'@expo/vector-icons';import {SafeAreaView,TouchableHighlight}from'react-native';import {Box,useLocationChange,VStack,Heading,FlatList,Text,Divider,Button,ButtonText,HStack,Avatar}from'@admin-layout/gluestack-ui-mobile';import {useSelector,shallowEqual,useDispatch}from'react-redux';import {NavigationRoutes}from'../../constants/routes.js';import {useNavigation,useFocusEffect,StackActions}from'@react-navigation/native';import {useDrawerLayout}from'../../hooks/useDrawerLayout.js';import {useOrganizationDetailQuery,useUserOrganizationsQuery}from'../../queries/slackuiQueries.js';import {LOCATION_CHANGE}from'@common-stack/remix-router-redux';import {userSelector}from'@adminide-stack/user-auth0-client';var __defProp = Object.defineProperty;
2
2
  var __defProps = Object.defineProperties;
3
3
  var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
4
  var __getOwnPropSymbols = Object.getOwnPropertySymbols;
@@ -21,7 +21,7 @@ const WorkSpaceDrawerComponent = (props) => {
21
21
  const dispatch = useDispatch();
22
22
  const navigation = useNavigation();
23
23
  const user = useSelector(userSelector);
24
- const settings = useSelector((state) => state.settings);
24
+ const settings = useSelector((state) => state.settings, shallowEqual);
25
25
  const {
26
26
  open,
27
27
  setOpen,
@@ -36,7 +36,7 @@ const WorkSpaceDrawerComponent = (props) => {
36
36
  const {
37
37
  data: orgDetailData,
38
38
  refetch: _refetchOrgDetail
39
- } = useGetOrganizationDetailQuery({
39
+ } = useOrganizationDetailQuery(orgName || "", {
40
40
  variables: {
41
41
  where: {
42
42
  name: orgName
@@ -47,7 +47,7 @@ const WorkSpaceDrawerComponent = (props) => {
47
47
  data: userOrganizationsData,
48
48
  loading: isLoadingUsersOrganization,
49
49
  refetch: refetchUserOrganizations
50
- } = useGetUserOrganizationsQuery({
50
+ } = useUserOrganizationsQuery({
51
51
  variables: {
52
52
  userId: user == null ? void 0 : user.id
53
53
  }
@@ -57,11 +57,7 @@ const WorkSpaceDrawerComponent = (props) => {
57
57
  userId: user == null ? void 0 : user.id
58
58
  });
59
59
  if (orgName)
60
- _refetchOrgDetail({
61
- where: {
62
- name: orgName
63
- }
64
- });
60
+ _refetchOrgDetail();
65
61
  }, [orgName, open]));
66
62
  React__default.useEffect(() => {
67
63
  if (orgDetailData == null ? void 0 : orgDetailData.getOrganizationDetail)
@@ -108,44 +104,56 @@ const WorkSpaceDrawerComponent = (props) => {
108
104
  const title = (_a = o == null ? void 0 : o.title) != null ? _a : o.name;
109
105
  const matches = (_b = title == null ? void 0 : title.match(/\b(\w)/g)) != null ? _b : "";
110
106
  const acronym = Array.isArray(matches) ? (_c = matches == null ? void 0 : matches.join("")) == null ? void 0 : _c.substring(0, 2) : "";
111
- return /* @__PURE__ */ React__default.createElement(TouchableHighlight, { underlayColor: "transparent", activeOpacity: 0.5, key: i, onPress: () => goToOrganization(o.name) }, /* @__PURE__ */ React__default.createElement(HStack, { px: "$2", justifyContent: "space-between", alignItems: "center", w: "100%", py: "$2" }, /* @__PURE__ */ React__default.createElement(HStack, { space: "sm", alignItems: "center" }, /* @__PURE__ */ React__default.createElement(
107
+ return /* @__PURE__ */ React__default.createElement(TouchableHighlight, { underlayColor: "transparent", activeOpacity: 0.5, key: i, onPress: () => goToOrganization(o.name), style: {
108
+ marginVertical: 2
109
+ } }, /* @__PURE__ */ React__default.createElement(HStack, { style: {
110
+ backgroundColor: o.name == orgName ? "#e5e7eb" : "transparent",
111
+ paddingVertical: 10,
112
+ paddingHorizontal: 10,
113
+ borderRadius: 10
114
+ }, className: `justify-between items-center w-full py-2` }, /* @__PURE__ */ React__default.createElement(HStack, { space: "md", className: "items-center" }, /* @__PURE__ */ React__default.createElement(
112
115
  Button,
113
116
  {
114
- px: "$0",
115
- py: "$0",
116
117
  size: "md",
117
- bg: "transparent"
118
+ className: "bg-transparent px-0 py-0 "
118
119
  },
119
120
  /* @__PURE__ */ React__default.createElement(
120
121
  Avatar,
121
122
  {
122
- bg: "$trueGray300",
123
123
  size: "md",
124
- borderRadius: "$lg",
125
- borderWidth: o.name == orgName ? "$2" : "$1",
126
- borderColor: o.name == orgName ? "#000" : "#d3d3d3",
127
- p: "$0"
124
+ className: `bg-gray-200 rounded-lg ${o.name == orgName ? "border-2" : "border"} p-0`,
125
+ style: {
126
+ backgroundColor: "#e5e7eb",
127
+ borderColor: o.name == orgName ? "#000" : "#d3d3d3"
128
+ }
128
129
  },
129
- /* @__PURE__ */ React__default.createElement(Text, { fontWeight: "$extrabold", color: "$black", style: {
130
- fontSize: 18
131
- } }, acronym)
130
+ /* @__PURE__ */ React__default.createElement(Text, { style: {
131
+ fontWeight: "800"
132
+ }, className: "font-extrabold text-black uppercase text-base" }, acronym)
132
133
  )
133
- ), /* @__PURE__ */ React__default.createElement(Text, { color: "$black", style: {
134
+ ), /* @__PURE__ */ React__default.createElement(Text, { className: "text-black font-bold", style: {
134
135
  fontSize: 16
135
- }, w: "60%", fontWeight: "$bold" }, title)), /* @__PURE__ */ React__default.createElement(Button, { bg: "transparent", size: "lg", pr: "$1" }, /* @__PURE__ */ React__default.createElement(MaterialIcons, { size: 30, name: "more-vert", color: "#000" }))));
136
+ } }, title))));
136
137
  };
137
- return /* @__PURE__ */ React__default.createElement(SafeAreaView, { flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1, w: "100%" }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1 }, /* @__PURE__ */ React__default.createElement(Heading, { p: "$5", size: "lg", color: props.titleColor || (settings == null ? void 0 : settings.navTheme) == "dark" ? "white" : "black" }, "Workspaces"), /* @__PURE__ */ React__default.createElement(VStack, { flex: 0.8, space: "sm" }, /* @__PURE__ */ React__default.createElement(FlatList, { flex: 1, keyExtractor: (item, index) => String(index), contentContainerStyle: {
138
+ return /* @__PURE__ */ React__default.createElement(SafeAreaView, { style: {
139
+ flex: 1
140
+ } }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 w-full h-full px-2 pt-2" }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 w-full" }, /* @__PURE__ */ React__default.createElement(VStack, { className: "flex-1 w-full h-full absolute top-0", space: "sm" }, /* @__PURE__ */ React__default.createElement(Heading, { className: ` color-[${props.titleColor || (settings == null ? void 0 : settings.navTheme) == "dark" ? "text-white" : "text-black"}]`, size: "lg" }, "Workspaces"), /* @__PURE__ */ React__default.createElement(FlatList, { style: {
141
+ flex: 1,
142
+ paddingTop: 5,
143
+ width: "100%"
144
+ }, keyExtractor: (item, index) => String(index), contentContainerStyle: {
138
145
  flexGrow: 1,
139
- paddingBottom: 80
146
+ paddingBottom: 150,
147
+ width: "100%"
140
148
  }, data: (userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations) && (userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations.length) > 0 ? userOrganizationsData == null ? void 0 : userOrganizationsData.getUserOrganizations : [], renderItem: renderWorkspaces, ListEmptyComponent: () => {
141
- 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 Memebers found"))));
142
- }, key: "workspaces-list" })), /* @__PURE__ */ React__default.createElement(VStack, { flex: 1, w: "100%", space: "sm", bg: "$white", position: "absolute", bottom: "$10" }, /* @__PURE__ */ React__default.createElement(Divider, { w: "100%" }), (user == null ? void 0 : user.accessToken) && /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", bg: "transparent", "$pressed-bg": "$trueGray200", justifyContent: "flex-start", onPress: () => addWorkSpace() }, /* @__PURE__ */ React__default.createElement(AntDesign, { color: "black", name: "plus", size: 22 }), /* @__PURE__ */ React__default.createElement(ButtonText, { pl: "$2", style: {
149
+ 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, null, "No Memebers found"))));
150
+ }, key: "workspaces-list" })), /* @__PURE__ */ React__default.createElement(VStack, { className: "flex-1 w-full bg-white absolute bottom-0", space: "sm" }, /* @__PURE__ */ React__default.createElement(Divider, { className: "w-full" }), (user == null ? void 0 : user.accessToken) && /* @__PURE__ */ React__default.createElement(VStack, { space: "sm" }, /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", className: "bg-transparent active:bg-gray-200 hover:bg-gray-200 justify-start", onPress: () => addWorkSpace() }, /* @__PURE__ */ React__default.createElement(AntDesign, { color: "black", name: "plus", size: 22 }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-2", style: {
143
151
  color: "black",
144
152
  fontSize: 15
145
- } }, "Add a workspace")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", bg: "transparent", "$pressed-bg": "$trueGray200", justifyContent: "flex-start" }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "settings-outline", size: 22 }), /* @__PURE__ */ React__default.createElement(ButtonText, { pl: "$2", style: {
153
+ } }, "Add a workspace")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", className: "bg-transparent active:bg-gray-200 hover:bg-gray-200 justify-start" }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "settings-outline", size: 22 }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-2", style: {
146
154
  color: "black",
147
155
  fontSize: 15
148
- } }, "Preferences")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", bg: "transparent", "$pressed-bg": "$trueGray200", justifyContent: "flex-start" }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "help-circle-outline", size: 22 }), /* @__PURE__ */ React__default.createElement(ButtonText, { pl: "$2", style: {
156
+ } }, "Preferences")), /* @__PURE__ */ React__default.createElement(Button, { size: "sm", variant: "solid", className: "bg-transparent active:bg-gray-200 hover:bg-gray-200 justify-start" }, /* @__PURE__ */ React__default.createElement(Ionicons, { color: "black", name: "help-circle-outline", size: 22 }), /* @__PURE__ */ React__default.createElement(ButtonText, { className: "pl-2", style: {
149
157
  color: "black",
150
158
  fontSize: 15
151
159
  } }, "Help")))))));
@@ -153,7 +161,9 @@ const WorkSpaceDrawerComponent = (props) => {
153
161
  const WorkSpaceDrawer = (props) => {
154
162
  useNavigation();
155
163
  const user = useSelector(userSelector);
156
- useSelector((state) => state.settings);
157
- return /* @__PURE__ */ React__default.createElement(SafeAreaView, { flex: 1 }, /* @__PURE__ */ React__default.createElement(Box, { flex: 1, w: "100%" }, user && (user == null ? void 0 : user.accessToken) ? /* @__PURE__ */ React__default.createElement(WorkSpaceDrawerComponent, __spreadValues({}, props)) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null)));
164
+ useSelector((state) => state.settings, shallowEqual);
165
+ return /* @__PURE__ */ React__default.createElement(SafeAreaView, { style: {
166
+ flex: 1
167
+ } }, /* @__PURE__ */ React__default.createElement(Box, { className: "flex-1 w-full" }, user && (user == null ? void 0 : user.accessToken) ? /* @__PURE__ */ React__default.createElement(WorkSpaceDrawerComponent, __spreadValues({}, props)) : /* @__PURE__ */ React__default.createElement(React__default.Fragment, null)));
158
168
  };
159
169
  var WorkSpaceDrawer$1 = React__default.memo(WorkSpaceDrawer);export{WorkSpaceDrawer$1 as default};//# sourceMappingURL=WorkSpaceDrawer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WorkSpaceDrawer.js","sources":["../../../src/components/WorkSpaceDrawer/WorkSpaceDrawer.tsx"],"sourcesContent":["import React from 'react';\nimport { Ionicons, MaterialIcons, FontAwesome5, AntDesign } from '@expo/vector-icons';\nimport { createDrawerNavigator, DrawerContentScrollView, DrawerItemList, DrawerItem } from '@react-navigation/drawer';\nimport { TouchableHighlight } from 'react-native';\nimport {\n SafeAreaView,\n VStack,\n HStack,\n Button,\n ButtonText,\n Icon,\n Text,\n Heading,\n Center,\n Box,\n Image,\n Avatar,\n AvatarFallbackText,\n Divider,\n FlatList,\n useLocationChange,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { StatusBar } from 'expo-status-bar';\nimport { useSelector, useDispatch } 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 { startCase } from 'lodash-es';\nimport { LOCATION_CHANGE as LOCATION_CHANGE_SUCCESS } from '@common-stack/remix-router-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\n\nconst WorkSpaceDrawerComponent = (props: any) => {\n const dispatch = useDispatch();\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const settings = useSelector<any>((state) => state.settings) as any;\n const { open, setOpen, appConfiguredRoutes, orgName, setOrganizationDetail, organizationDetail } =\n useDrawerLayout();\n const { setLocationChange } = useLocationChange();\n const { data: orgDetailData, refetch: _refetchOrgDetail } = 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 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 // setLocationChange({ configurableRoutes: appConfiguredRoutes, orgName: orgName });\n // navigation.reset({\n // index: 0,\n // routes: [\n // {\n // name: 'MainStack.Layout.Home',\n // params: { orgName: orgName },\n // },\n // ],\n // });\n // }, []);\n\n const goToOrganization = React.useCallback((orgName: any) => {\n setOpen(false);\n const currentRoute = navigation?.getCurrentRoute();\n const currParams = {\n ...(currentRoute.params || {}),\n orgName: orgName,\n };\n dispatch({\n type: LOCATION_CHANGE_SUCCESS,\n payload: {\n currentRoute: {\n path: currentRoute?.name ?? null,\n params: currParams,\n },\n previousRoute: {\n path: currentRoute?.name ?? null,\n params: currentRoute.params,\n },\n },\n });\n navigation.dispatch(StackActions.push('MainStack', { screen: NavigationRoutes.Home, params: { orgName } }));\n }, []);\n\n const addWorkSpace = React.useCallback(() => {\n setOpen(false);\n // navigation?.navigate('MainStack', { screen: NavigationRoutes.AddWorkSpace, params: { orgName } });\n navigation?.navigate(NavigationRoutes.AddWorkSpace, { orgName });\n }, [orgName]);\n\n const renderWorkspaces = ({ item: o, index: i }: any) => {\n const title = o?.title ?? o.name;\n const matches: any = title?.match(/\\b(\\w)/g) ?? '';\n //const acronym: any = matches?.join('')?.substring(0, 2)?.toUpperCase() ?? ''; // JSON\n const acronym: any = Array.isArray(matches) ? matches?.join('')?.substring(0, 2) : ''; // 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={'$2'} justifyContent=\"space-between\" alignItems=\"center\" w=\"100%\" py={'$2'}>\n <HStack space={'sm'} alignItems=\"center\">\n <Button\n // mx={'$2'}\n px={'$0'}\n py={'$0'}\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\n {/* <ButtonText size=\"md\" fontWeight={'$extrabold'} color=\"$black\" style={{ fontSize: 18 }}>\n {startCase(acronym)}\n </ButtonText> */}\n </Button>\n <Text color=\"$black\" style={{ fontSize: 16 }} w={'60%'} fontWeight={'$bold'}>\n {title}\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 return (\n <SafeAreaView flex={1}>\n <Box flex={1} w={'100%'}>\n {/* <StatusBar style={'dark'} /> */}\n <Box flex={1}>\n <Heading\n p={'$5'}\n size={'lg'}\n color={props.titleColor || settings?.navTheme == 'dark' ? 'white' : 'black'}\n >\n Workspaces\n </Heading>\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: 80,\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 Memebers found</Text>\n </Box>\n </VStack>\n </Box>\n );\n }}\n key={'workspaces-list'}\n />\n {/* {userOrganizationsData?.getUserOrganizations &&\n userOrganizationsData?.getUserOrganizations?.length > 0 &&\n userOrganizationsData?.getUserOrganizations?.map((o: any, i: any) => {\n const matches: any = o?.title?.match(/\\b(\\w)/g) ?? '';\n const acronym: any = matches?.join('')?.substring(0, 2)?.toUpperCase() ?? ''; // JSON\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%\">\n <HStack alignItems=\"center\">\n <IconButton\n mx={2}\n px={2}\n py={2}\n size={12}\n bg={'transparent'}\n borderRadius={'lg'}\n borderWidth={o.name == orgName ? 2 : 1}\n borderColor={o.name == orgName ? '#000' : '#d3d3d3'}\n icon={\n <Avatar\n bg={'gray.300'}\n size={o.name == orgName ? 10 : 12}\n borderRadius={o.name == orgName ? 0 : 'lg'}\n p={2}\n _image={{ borderRadius: 0 }}\n _text={{ color: '#000', fontWeight: 800, fontSize: 18 }}\n >\n {acronym}\n </Avatar>\n }\n />\n <Text color=\"black\" fontSize=\"18\" fontWeight={'bold'}>\n {o?.title ?? o.name}\n </Text>\n </HStack>\n <IconButton\n size={'lg'}\n _icon={{\n as: MaterialIcons,\n name: 'more-vert',\n color: '#000',\n }}\n />\n </HStack>\n </TouchableHighlight>\n );\n })} */}\n </VStack>\n <VStack flex={1} w={'100%'} space={'sm'} bg={'$white'} position={'absolute'} bottom={'$10'}>\n <Divider w={'100%'} />\n {user?.accessToken && (\n <VStack space={'sm'}>\n <Button\n size={'sm'}\n variant={'solid'}\n bg={'transparent'}\n $pressed-bg={'$trueGray200'}\n justifyContent={'flex-start'}\n onPress={() => addWorkSpace()}\n >\n <AntDesign color=\"black\" name=\"plus\" size={22} />\n <ButtonText pl={'$2'} style={{ color: 'black', fontSize: 15 }}>\n Add a workspace\n </ButtonText>\n </Button>\n <Button\n size={'sm'}\n variant={'solid'}\n bg={'transparent'}\n $pressed-bg={'$trueGray200'}\n justifyContent={'flex-start'}\n >\n <Ionicons color=\"black\" name=\"settings-outline\" size={22} />\n <ButtonText pl={'$2'} style={{ color: 'black', fontSize: 15 }}>\n Preferences\n </ButtonText>\n </Button>\n <Button\n size={'sm'}\n variant={'solid'}\n bg={'transparent'}\n $pressed-bg={'$trueGray200'}\n justifyContent={'flex-start'}\n >\n <Ionicons color=\"black\" name=\"help-circle-outline\" size={22} />\n <ButtonText pl={'$2'} style={{ color: 'black', fontSize: 15 }}>\n Help\n </ButtonText>\n </Button>\n {/* <HStack px=\"1\" pt={1} justifyContent=\"space-between\" alignItems=\"center\" w=\"100%\">\n <TouchableHighlight\n underlayColor={'transparent'}\n activeOpacity={0.5}\n style={{ width: '100%' }}\n onPress={() => CreateOrganization()}\n >\n <Text textAlign={'center'} color=\"black\" fontSize=\"18\" fontWeight={'bold'}>\n Add a Workspace\n </Text>\n </TouchableHighlight>\n </HStack> */}\n </VStack>\n )}\n </VStack>\n </Box>\n </Box>\n </SafeAreaView>\n );\n};\n\nconst WorkSpaceDrawer = (props: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const settings = useSelector<any>((state) => state.settings) as any;\n\n return (\n <SafeAreaView flex={1}>\n <Box flex={1} w={'100%'}>\n {user && user?.accessToken ? <WorkSpaceDrawerComponent {...props} /> : <></>}\n </Box>\n </SafeAreaView>\n );\n};\n\nexport default React.memo(WorkSpaceDrawer);\n"],"names":["React","orgName","LOCATION_CHANGE_SUCCESS"],"mappings":"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"}
1
+ {"version":3,"file":"WorkSpaceDrawer.js","sources":["../../../src/components/WorkSpaceDrawer/WorkSpaceDrawer.tsx"],"sourcesContent":["import React from 'react';\nimport { Ionicons, MaterialIcons, FontAwesome5, AntDesign } from '@expo/vector-icons';\nimport { createDrawerNavigator, DrawerContentScrollView, DrawerItemList, DrawerItem } from '@react-navigation/drawer';\nimport { TouchableHighlight, SafeAreaView } from 'react-native';\nimport {\n VStack,\n HStack,\n Button,\n ButtonText,\n Icon,\n Text,\n Heading,\n Center,\n Box,\n Image,\n Avatar,\n AvatarFallbackText,\n Divider,\n FlatList,\n useLocationChange,\n} from '@admin-layout/gluestack-ui-mobile';\nimport { StatusBar } from 'expo-status-bar';\nimport { useSelector, useDispatch } from 'react-redux';\nimport { 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 useUserOrganizationsQuery,\n useOrganizationDetailQuery,\n useOrganizationDetailLazyQuery,\n useCreateOrganizationMutation,\n} from '../../queries/slackuiQueries';\nimport { startCase } from 'lodash-es';\nimport { LOCATION_CHANGE as LOCATION_CHANGE_SUCCESS } from '@common-stack/remix-router-redux';\nimport { userSelector, isUserAuthenticated } from '@adminide-stack/user-auth0-client';\nimport colors from 'tailwindcss/colors';\n\nconst WorkSpaceDrawerComponent = (props: any) => {\n const dispatch = useDispatch();\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const settings = useSelector<any>((state) => state.settings, shallowEqual) as any;\n const { open, setOpen, appConfiguredRoutes, orgName, setOrganizationDetail, organizationDetail } =\n useDrawerLayout();\n const { setLocationChange } = useLocationChange();\n const { data: orgDetailData, refetch: _refetchOrgDetail } = 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 // //@ts-ignor\n variables: { userId: user?.id },\n //fetchPolicy: 'cache-and-network',\n });\n\n useFocusEffect(\n React.useCallback(() => {\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 // setLocationChange({ configurableRoutes: appConfiguredRoutes, orgName: orgName });\n // navigation.reset({\n // index: 0,\n // routes: [\n // {\n // name: 'MainStack.Layout.Home',\n // params: { orgName: orgName },\n // },\n // ],\n // });\n // }, []);\n\n const goToOrganization = React.useCallback((orgName: any) => {\n setOpen(false);\n const currentRoute = navigation?.getCurrentRoute();\n const currParams = {\n ...(currentRoute.params || {}),\n orgName: orgName,\n };\n dispatch({\n type: LOCATION_CHANGE_SUCCESS,\n payload: {\n currentRoute: {\n path: currentRoute?.name ?? null,\n params: currParams,\n },\n previousRoute: {\n path: currentRoute?.name ?? null,\n params: currentRoute.params,\n },\n },\n });\n navigation.dispatch(StackActions.push('MainStack', { screen: NavigationRoutes.Home, params: { orgName } }));\n }, []);\n\n const addWorkSpace = React.useCallback(() => {\n setOpen(false);\n // navigation?.navigate('MainStack', { screen: NavigationRoutes.AddWorkSpace, params: { orgName } });\n navigation?.navigate(NavigationRoutes.AddWorkSpace, { orgName });\n }, [orgName]);\n\n const renderWorkspaces = ({ item: o, index: i }: any) => {\n const title = o?.title ?? o.name;\n const matches: any = title?.match(/\\b(\\w)/g) ?? '';\n //const acronym: any = matches?.join('')?.substring(0, 2)?.toUpperCase() ?? ''; // JSON\n const acronym: any = Array.isArray(matches) ? matches?.join('')?.substring(0, 2) : ''; // JSON\n\n return (\n <TouchableHighlight\n underlayColor={'transparent'}\n activeOpacity={0.5}\n key={i}\n onPress={() => goToOrganization(o.name)}\n style={{ marginVertical: 2 }}\n >\n <HStack\n style={{\n backgroundColor: o.name == orgName ? '#e5e7eb' : 'transparent',\n paddingVertical: 10,\n paddingHorizontal: 10,\n borderRadius: 10,\n }}\n className={`justify-between items-center w-full py-2`}\n >\n <HStack space={'md'} className=\"items-center\">\n <Button\n size={'md'}\n className=\"bg-transparent px-0 py-0 \"\n // borderRadius={'$lg'}\n // borderWidth={o.name == orgName ? '$2' : '$1'}\n // borderColor={o.name == orgName ? '#000' : '#d3d3d3'}\n >\n <Avatar\n size={'md'}\n // borderRadius={o.name == orgName ? '$none' : '$lg'}\n className={`bg-gray-200 rounded-lg ${o.name == orgName ? 'border-2' : 'border'} p-0`}\n style={{\n backgroundColor: '#e5e7eb',\n borderColor: o.name == orgName ? '#000' : '#d3d3d3',\n }}\n >\n <Text\n style={{ fontWeight: '800' }}\n className=\"font-extrabold text-black uppercase text-base\"\n >\n {acronym}\n </Text>\n </Avatar>\n\n {/* <ButtonText size=\"md\" fontWeight={'$extrabold'} color=\"$black\" style={{ fontSize: 18 }}>\n {startCase(acronym)}\n </ButtonText> */}\n </Button>\n <Text className=\"text-black font-bold\" style={{ fontSize: 16 }}>\n {title}\n </Text>\n </HStack>\n </HStack>\n </TouchableHighlight>\n );\n };\n\n return (\n <SafeAreaView style={{ flex: 1 }}>\n <Box className=\"flex-1 w-full h-full px-2 pt-2\">\n {/* <StatusBar style={'dark'} /> */}\n <Box className=\"flex-1 w-full\">\n <VStack className=\"flex-1 w-full h-full absolute top-0\" space={'sm'}>\n <Heading\n className={` color-[${\n props.titleColor || settings?.navTheme == 'dark' ? 'text-white' : 'text-black'\n }]`}\n size={'lg'}\n >\n Workspaces\n </Heading>\n <FlatList\n style={{ flex: 1, paddingTop: 5, width: '100%' }}\n keyExtractor={(item, index) => String(index)}\n contentContainerStyle={{\n flexGrow: 1,\n paddingBottom: 150,\n width: '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 className=\"bg-white py-2\">\n <VStack space=\"sm\">\n <Box className=\"px-4 py-5\">\n <Text>No Memebers found</Text>\n </Box>\n </VStack>\n </Box>\n );\n }}\n key={'workspaces-list'}\n />\n </VStack>\n <VStack className=\"flex-1 w-full bg-white absolute bottom-0\" space={'sm'}>\n <Divider className=\"w-full\" />\n {user?.accessToken && (\n <VStack space={'sm'}>\n <Button\n size={'sm'}\n variant={'solid'}\n className=\"bg-transparent active:bg-gray-200 hover:bg-gray-200 justify-start\"\n onPress={() => addWorkSpace()}\n >\n <AntDesign color=\"black\" name=\"plus\" size={22} />\n <ButtonText className=\"pl-2\" style={{ color: 'black', fontSize: 15 }}>\n Add a workspace\n </ButtonText>\n </Button>\n <Button\n size={'sm'}\n variant={'solid'}\n className=\"bg-transparent active:bg-gray-200 hover:bg-gray-200 justify-start\"\n >\n <Ionicons color=\"black\" name=\"settings-outline\" size={22} />\n <ButtonText className=\"pl-2\" style={{ color: 'black', fontSize: 15 }}>\n Preferences\n </ButtonText>\n </Button>\n <Button\n size={'sm'}\n variant={'solid'}\n className=\"bg-transparent active:bg-gray-200 hover:bg-gray-200 justify-start\"\n >\n <Ionicons color=\"black\" name=\"help-circle-outline\" size={22} />\n <ButtonText className=\"pl-2\" style={{ color: 'black', fontSize: 15 }}>\n Help\n </ButtonText>\n </Button>\n </VStack>\n )}\n </VStack>\n </Box>\n </Box>\n </SafeAreaView>\n );\n};\n\nconst WorkSpaceDrawer = (props: any) => {\n const navigation = useNavigation<any>();\n const user: any = useSelector(userSelector);\n const settings = useSelector<any>((state) => state.settings, shallowEqual) as any;\n\n return (\n <SafeAreaView style={{ flex: 1 }}>\n <Box className=\"flex-1 w-full\">\n {user && user?.accessToken ? <WorkSpaceDrawerComponent {...props} /> : <></>}\n </Box>\n </SafeAreaView>\n );\n};\n\nexport default React.memo(WorkSpaceDrawer);\n"],"names":["React","orgName","LOCATION_CHANGE_SUCCESS"],"mappings":"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"}
package/lib/compute.js CHANGED
@@ -188,7 +188,7 @@ const slackUiPageStore = [{
188
188
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Profile/ProfileScreen.js",
189
189
  hasComponent: true,
190
190
  queries: {
191
- GetUserByIdDocument: "{userId: params.userId}"
191
+ UserByIdDocument: "{}"
192
192
  }
193
193
  }, {
194
194
  key: "search",
@@ -292,8 +292,8 @@ const slackUiPageStore = [{
292
292
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Organization/AddWorkspace.js",
293
293
  hasComponent: true,
294
294
  queries: {
295
- GetOrganizationDetailDocument: "{where: {name: params.name}}",
296
- GetUserOrganizationsDocument: "{userId: params.userId}"
295
+ OrganizationDetailDocument: "{}",
296
+ UserOrganizationsDocument: "{userId: params.userId}"
297
297
  }
298
298
  }, {
299
299
  key: "createorganization",
@@ -348,7 +348,10 @@ const slackUiPageStore = [{
348
348
  }
349
349
  },
350
350
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Organization/InviteOrganizationMembers.js",
351
- hasComponent: true
351
+ hasComponent: true,
352
+ queries: {
353
+ OrganizationSharableLinkDocument: "{}"
354
+ }
352
355
  }, {
353
356
  key: "initializeorgchannel",
354
357
  path: "/:orgName/initializeorgchannel",
@@ -402,7 +405,11 @@ const slackUiPageStore = [{
402
405
  }
403
406
  },
404
407
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Organization/InitialChannelOnboarding.js",
405
- hasComponent: true
408
+ hasComponent: true,
409
+ queries: {
410
+ OrganizationDetailDocument: "{}",
411
+ ChannelDetailDocument: "{}"
412
+ }
406
413
  }, {
407
414
  key: "channels",
408
415
  path: "/:orgName/channels",
@@ -424,7 +431,7 @@ const slackUiPageStore = [{
424
431
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Channels/Channels.js",
425
432
  hasComponent: true,
426
433
  queries: {
427
- GetChannelsByUserDocument: "{criteria: {orgName: params.orgName,type: params.type,team: params.team},limit: 50}"
434
+ ChannelsDocument: "{}"
428
435
  }
429
436
  }, {
430
437
  key: "addchannel",
@@ -511,9 +518,9 @@ const slackUiPageStore = [{
511
518
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Peoples/AddPeople.js",
512
519
  hasComponent: true,
513
520
  queries: {
514
- GetOrganizationMembersDocument: "{offset: params.offset,limit: params.limit,orgName: params.orgName}",
515
- ViewChannelDetailDocument: "{id: params.id}",
516
- GetChannelsByUserDocument: "{criteria: {orgName: params.orgName,type: DIRECT}}"
521
+ OrganizationMembersDocument: "{}",
522
+ ChannelDetailDocument: "{}",
523
+ ChannelsDocument: "{criteria: {orgName: params.orgName,type: DIRECT}}"
517
524
  }
518
525
  }, {
519
526
  key: "addpeoplebyemail",
@@ -529,8 +536,8 @@ const slackUiPageStore = [{
529
536
  orgName: null
530
537
  },
531
538
  options: {
532
- presentation: "modal",
533
- animationEnabled: false,
539
+ animation: "slide_from_bottom",
540
+ animationDuration: 50,
534
541
  headerTitleAlign: "left",
535
542
  title: "Add by Email",
536
543
  headerShown: true,
@@ -557,8 +564,8 @@ const slackUiPageStore = [{
557
564
  orgName: null
558
565
  },
559
566
  options: {
560
- presentation: "modal",
561
- animationEnabled: false,
567
+ animation: "slide_from_bottom",
568
+ animationDuration: 50,
562
569
  headerTitleAlign: "left",
563
570
  title: "Add teammates",
564
571
  headerShown: true,
@@ -572,7 +579,7 @@ const slackUiPageStore = [{
572
579
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Peoples/AddFromContacts.js",
573
580
  hasComponent: true,
574
581
  queries: {
575
- GetOrganizationSharableLinkDocument: "{}"
582
+ OrganizationSharableLinkDocument: "{}"
576
583
  }
577
584
  }, {
578
585
  key: "searchchannelpeople",
@@ -602,7 +609,8 @@ const slackUiPageStore = [{
602
609
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Search/SearchChannelPeople.js",
603
610
  hasComponent: true,
604
611
  queries: {
605
- GetChannelsByUserDocument: "{criteria: {orgName: params.orgName,type: params.type},limit: 25}"
612
+ ChannelsDocument: "{criteria: {orgName: params.orgName,type: params.type},limit: 25}",
613
+ OrganizationMembersDocument: "{}"
606
614
  }
607
615
  }, {
608
616
  key: "teams",
@@ -641,10 +649,7 @@ const slackUiPageStore = [{
641
649
  }
642
650
  },
643
651
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Teams/Teams.js",
644
- hasComponent: true,
645
- queries: {
646
- GetOrganizationTeamsDocument: "{orgName: params.orgName}"
647
- }
652
+ hasComponent: true
648
653
  }, {
649
654
  key: "teamview",
650
655
  path: "/:orgName/teamview",
@@ -739,7 +744,10 @@ const slackUiPageStore = [{
739
744
  }
740
745
  },
741
746
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Peoples/People.js",
742
- hasComponent: true
747
+ hasComponent: true,
748
+ queries: {
749
+ AllUsersDocument: "{}"
750
+ }
743
751
  }, {
744
752
  key: "inboxdialogmessage",
745
753
  path: "/:orgName/inbox/dialogmessage",
@@ -805,7 +813,7 @@ const slackUiPageStore = [{
805
813
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Inbox/InboxChannelDetail.js",
806
814
  hasComponent: true,
807
815
  queries: {
808
- ViewChannelDetailDocument: "{id: params.id}"
816
+ ChannelDetailDocument: "{}"
809
817
  }
810
818
  }, {
811
819
  key: "searchaddchannel",
@@ -824,7 +832,8 @@ const slackUiPageStore = [{
824
832
  },
825
833
  options: {
826
834
  title: "New Message",
827
- animationEnabled: false,
835
+ animation: "slide_from_bottom",
836
+ animationDuration: 50,
828
837
  headerTitleAlign: "left",
829
838
  headerShown: true,
830
839
  headerBackTitleVisible: false,
@@ -839,7 +848,7 @@ const slackUiPageStore = [{
839
848
  componentPath: "@messenger-box/slack-ui-mobile/lib/screens/Search/SearchAddChannel.js",
840
849
  hasComponent: true,
841
850
  queries: {
842
- GetOrganizationMembersWithChannelsDocument: "{orgName: params.orgName,channelCriteria: {orgName: params.orgName,type: params.type},offset: params.offset,limit: params.limit}"
851
+ OrganizationMembersWithChannelsDocument: "{}"
843
852
  }
844
853
  }, {
845
854
  key: "threads",