@amityco/react-native-social-uikit 4.0.0-RC15 → 4.0.0-RC17

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 (113) hide show
  1. package/lib/commonjs/components/AddMembersModal/index.js +2 -1
  2. package/lib/commonjs/components/AddMembersModal/index.js.map +1 -1
  3. package/lib/commonjs/components/Social/PostList/index.js +7 -2
  4. package/lib/commonjs/components/Social/PostList/index.js.map +1 -1
  5. package/lib/commonjs/hooks/useSearch.js +2 -1
  6. package/lib/commonjs/hooks/useSearch.js.map +1 -1
  7. package/lib/commonjs/screens/CommunitySearch/index.js +2 -1
  8. package/lib/commonjs/screens/CommunitySearch/index.js.map +1 -1
  9. package/lib/commonjs/v4/PublicApi/Components/AmityPostCommentComponent/AmityPostCommentComponent.js +3 -2
  10. package/lib/commonjs/v4/PublicApi/Components/AmityPostCommentComponent/AmityPostCommentComponent.js.map +1 -1
  11. package/lib/commonjs/v4/PublicApi/Components/AmityPostCommentComponent/CommentListItem/CommentListItem.js +4 -3
  12. package/lib/commonjs/v4/PublicApi/Components/AmityPostCommentComponent/CommentListItem/CommentListItem.js.map +1 -1
  13. package/lib/commonjs/v4/PublicApi/Components/AmityPostCommentComponent/ReplyCommentList/index.js +1 -1
  14. package/lib/commonjs/v4/PublicApi/Components/AmityPostCommentComponent/ReplyCommentList/index.js.map +1 -1
  15. package/lib/commonjs/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js +2 -1
  16. package/lib/commonjs/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js.map +1 -1
  17. package/lib/commonjs/v4/PublicApi/Elements/CommonElements/AvatarElement.js +14 -8
  18. package/lib/commonjs/v4/PublicApi/Elements/CommonElements/AvatarElement.js.map +1 -1
  19. package/lib/commonjs/v4/PublicApi/Pages/AmitySocialGlobalSearchPage/AmitySocialGlobalSearchPage.js.map +1 -1
  20. package/lib/commonjs/v4/PublicApi/Pages/AmityUserProfilePage/AmityUserProfilePage.js +16 -6
  21. package/lib/commonjs/v4/PublicApi/Pages/AmityUserProfilePage/AmityUserProfilePage.js.map +1 -1
  22. package/lib/commonjs/v4/component/MyAvatar/MyAvatar.js +9 -6
  23. package/lib/commonjs/v4/component/MyAvatar/MyAvatar.js.map +1 -1
  24. package/lib/commonjs/v4/component/PollContent/PollResults.js +1 -0
  25. package/lib/commonjs/v4/component/PollContent/PollResults.js.map +1 -1
  26. package/lib/commonjs/v4/component/SearchResultItem/SearchResultItem.js +1 -0
  27. package/lib/commonjs/v4/component/SearchResultItem/SearchResultItem.js.map +1 -1
  28. package/lib/commonjs/v4/features/community/AddMember/hooks/useAddMember.js +3 -1
  29. package/lib/commonjs/v4/features/community/AddMember/hooks/useAddMember.js.map +1 -1
  30. package/lib/commonjs/v4/hook/useAmityGlobalSearchViewModel.js +2 -1
  31. package/lib/commonjs/v4/hook/useAmityGlobalSearchViewModel.js.map +1 -1
  32. package/lib/commonjs/v4/hook/useSearch.js +2 -1
  33. package/lib/commonjs/v4/hook/useSearch.js.map +1 -1
  34. package/lib/commonjs/v4/routes/AmityPageRenderer.js +5 -0
  35. package/lib/commonjs/v4/routes/AmityPageRenderer.js.map +1 -1
  36. package/lib/module/components/AddMembersModal/index.js +3 -2
  37. package/lib/module/components/AddMembersModal/index.js.map +1 -1
  38. package/lib/module/components/Social/PostList/index.js +7 -2
  39. package/lib/module/components/Social/PostList/index.js.map +1 -1
  40. package/lib/module/hooks/useSearch.js +3 -2
  41. package/lib/module/hooks/useSearch.js.map +1 -1
  42. package/lib/module/screens/CommunitySearch/index.js +3 -2
  43. package/lib/module/screens/CommunitySearch/index.js.map +1 -1
  44. package/lib/module/v4/PublicApi/Components/AmityPostCommentComponent/AmityPostCommentComponent.js +3 -2
  45. package/lib/module/v4/PublicApi/Components/AmityPostCommentComponent/AmityPostCommentComponent.js.map +1 -1
  46. package/lib/module/v4/PublicApi/Components/AmityPostCommentComponent/CommentListItem/CommentListItem.js +4 -3
  47. package/lib/module/v4/PublicApi/Components/AmityPostCommentComponent/CommentListItem/CommentListItem.js.map +1 -1
  48. package/lib/module/v4/PublicApi/Components/AmityPostCommentComponent/ReplyCommentList/index.js +1 -1
  49. package/lib/module/v4/PublicApi/Components/AmityPostCommentComponent/ReplyCommentList/index.js.map +1 -1
  50. package/lib/module/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js +2 -1
  51. package/lib/module/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js.map +1 -1
  52. package/lib/module/v4/PublicApi/Elements/CommonElements/AvatarElement.js +14 -8
  53. package/lib/module/v4/PublicApi/Elements/CommonElements/AvatarElement.js.map +1 -1
  54. package/lib/module/v4/PublicApi/Pages/AmitySocialGlobalSearchPage/AmitySocialGlobalSearchPage.js.map +1 -1
  55. package/lib/module/v4/PublicApi/Pages/AmityUserProfilePage/AmityUserProfilePage.js +16 -6
  56. package/lib/module/v4/PublicApi/Pages/AmityUserProfilePage/AmityUserProfilePage.js.map +1 -1
  57. package/lib/module/v4/component/MyAvatar/MyAvatar.js +9 -6
  58. package/lib/module/v4/component/MyAvatar/MyAvatar.js.map +1 -1
  59. package/lib/module/v4/component/PollContent/PollResults.js +1 -0
  60. package/lib/module/v4/component/PollContent/PollResults.js.map +1 -1
  61. package/lib/module/v4/component/SearchResultItem/SearchResultItem.js +1 -0
  62. package/lib/module/v4/component/SearchResultItem/SearchResultItem.js.map +1 -1
  63. package/lib/module/v4/features/community/AddMember/hooks/useAddMember.js +3 -1
  64. package/lib/module/v4/features/community/AddMember/hooks/useAddMember.js.map +1 -1
  65. package/lib/module/v4/hook/useAmityGlobalSearchViewModel.js +3 -2
  66. package/lib/module/v4/hook/useAmityGlobalSearchViewModel.js.map +1 -1
  67. package/lib/module/v4/hook/useSearch.js +3 -2
  68. package/lib/module/v4/hook/useSearch.js.map +1 -1
  69. package/lib/module/v4/routes/AmityPageRenderer.js +5 -0
  70. package/lib/module/v4/routes/AmityPageRenderer.js.map +1 -1
  71. package/lib/typescript/src/components/AddMembersModal/index.d.ts.map +1 -1
  72. package/lib/typescript/src/components/Social/PostList/index.d.ts.map +1 -1
  73. package/lib/typescript/src/hooks/useSearch.d.ts.map +1 -1
  74. package/lib/typescript/src/screens/CommunitySearch/index.d.ts.map +1 -1
  75. package/lib/typescript/src/types/user.interface.d.ts +1 -0
  76. package/lib/typescript/src/types/user.interface.d.ts.map +1 -1
  77. package/lib/typescript/src/v4/PublicApi/Components/AmityPostCommentComponent/AmityPostCommentComponent.d.ts.map +1 -1
  78. package/lib/typescript/src/v4/PublicApi/Components/AmityPostCommentComponent/CommentListItem/CommentListItem.d.ts.map +1 -1
  79. package/lib/typescript/src/v4/PublicApi/Components/AmityPostCommentComponent/ReplyCommentList/index.d.ts.map +1 -1
  80. package/lib/typescript/src/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.d.ts.map +1 -1
  81. package/lib/typescript/src/v4/PublicApi/Elements/CommonElements/AvatarElement.d.ts +1 -0
  82. package/lib/typescript/src/v4/PublicApi/Elements/CommonElements/AvatarElement.d.ts.map +1 -1
  83. package/lib/typescript/src/v4/PublicApi/Pages/AmitySocialGlobalSearchPage/AmitySocialGlobalSearchPage.d.ts.map +1 -1
  84. package/lib/typescript/src/v4/PublicApi/Pages/AmityUserProfilePage/AmityUserProfilePage.d.ts.map +1 -1
  85. package/lib/typescript/src/v4/component/MyAvatar/MyAvatar.d.ts.map +1 -1
  86. package/lib/typescript/src/v4/component/PollContent/PollResults.d.ts.map +1 -1
  87. package/lib/typescript/src/v4/component/SearchResultItem/SearchResultItem.d.ts.map +1 -1
  88. package/lib/typescript/src/v4/features/community/AddMember/hooks/useAddMember.d.ts.map +1 -1
  89. package/lib/typescript/src/v4/hook/useAmityGlobalSearchViewModel.d.ts.map +1 -1
  90. package/lib/typescript/src/v4/hook/usePendingPostQuery.d.ts +1 -0
  91. package/lib/typescript/src/v4/hook/usePendingPostQuery.d.ts.map +1 -1
  92. package/lib/typescript/src/v4/hook/useSearch.d.ts.map +1 -1
  93. package/lib/typescript/src/v4/routes/AmityPageRenderer.d.ts.map +1 -1
  94. package/package.json +3 -3
  95. package/src/components/AddMembersModal/index.tsx +9 -2
  96. package/src/components/Social/PostList/index.tsx +7 -2
  97. package/src/hooks/useSearch.ts +6 -1
  98. package/src/screens/CommunitySearch/index.tsx +6 -1
  99. package/src/types/user.interface.ts +1 -0
  100. package/src/v4/PublicApi/Components/AmityPostCommentComponent/AmityPostCommentComponent.tsx +2 -1
  101. package/src/v4/PublicApi/Components/AmityPostCommentComponent/CommentListItem/CommentListItem.tsx +4 -1
  102. package/src/v4/PublicApi/Components/AmityPostCommentComponent/ReplyCommentList/index.tsx +3 -2
  103. package/src/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.tsx +1 -0
  104. package/src/v4/PublicApi/Elements/CommonElements/AvatarElement.tsx +20 -9
  105. package/src/v4/PublicApi/Pages/AmitySocialGlobalSearchPage/AmitySocialGlobalSearchPage.tsx +0 -1
  106. package/src/v4/PublicApi/Pages/AmityUserProfilePage/AmityUserProfilePage.tsx +21 -6
  107. package/src/v4/component/MyAvatar/MyAvatar.tsx +12 -6
  108. package/src/v4/component/PollContent/PollResults.tsx +1 -0
  109. package/src/v4/component/SearchResultItem/SearchResultItem.tsx +3 -0
  110. package/src/v4/features/community/AddMember/hooks/useAddMember.ts +2 -0
  111. package/src/v4/hook/useAmityGlobalSearchViewModel.ts +6 -1
  112. package/src/v4/hook/useSearch.ts +6 -1
  113. package/src/v4/routes/AmityPageRenderer.tsx +6 -0
@@ -176,17 +176,32 @@ function UserProfile({
176
176
  }, [client]);
177
177
 
178
178
  useEffect(() => {
179
- if (!user?.avatarFileId) {
180
- return setAvatar(defaultAvatarUri);
181
- }
182
- (async () => {
179
+ const loadAvatar = async () => {
180
+ if (!user) {
181
+ setAvatar(defaultAvatarUri);
182
+ return;
183
+ }
184
+
185
+ if (user.avatarCustomUrl) {
186
+ setAvatar(user.avatarCustomUrl);
187
+ return;
188
+ }
189
+
190
+ if (!user.avatarFileId) {
191
+ setAvatar(defaultAvatarUri);
192
+ return;
193
+ }
194
+
183
195
  const avatarUrl = await getImage({
184
196
  fileId: user.avatarFileId,
185
197
  imageSize: ImageSizeState.small,
186
198
  });
199
+
187
200
  setAvatar(avatarUrl ?? defaultAvatarUri);
188
- })();
189
- }, [getImage, user?.avatarFileId]);
201
+ };
202
+
203
+ loadAvatar();
204
+ }, [getImage, user]);
190
205
 
191
206
  useFocusEffect(
192
207
  useCallback(() => {
@@ -15,13 +15,19 @@ const MyAvatar: FC<MyAvatarProp> = (props) => {
15
15
 
16
16
  useEffect(() => {
17
17
  UserRepository.getUser(myId, async ({ data, loading, error }) => {
18
- if (!loading && !error) {
19
- const avatar = await getImage({
20
- fileId: data?.avatarFileId,
21
- imageSize: ImageSizeState.small,
22
- });
23
- setAvatarUrl(avatar ?? defaultAvatarUri);
18
+ if (loading || error || !data) return;
19
+
20
+ if (data.avatarCustomUrl) {
21
+ setAvatarUrl(data.avatarCustomUrl);
22
+ return;
24
23
  }
24
+
25
+ const avatar = await getImage({
26
+ fileId: data.avatarFileId,
27
+ imageSize: ImageSizeState.small,
28
+ });
29
+
30
+ setAvatarUrl(avatar ?? defaultAvatarUri);
25
31
  });
26
32
  }, [getImage, myId]);
27
33
 
@@ -80,6 +80,7 @@ export function PollResults({ options, totalVotes }: PollResultsProps) {
80
80
  targetType="user"
81
81
  style={styles.optionAvatar}
82
82
  avatarId={user?.avatarFileId}
83
+ avatarCustomUrl={user?.avatarCustomUrl}
83
84
  elementID={ElementID.WildCardElement}
84
85
  />
85
86
  )}
@@ -91,6 +91,9 @@ const SearchResultItem: FC<SearchResultItemType> = ({
91
91
  pageID={pageId}
92
92
  componentID={componentId}
93
93
  elementID={ElementID.community_avatar}
94
+ avatarCustomUrl={
95
+ searchType === TabName.Users ? item?.avatarCustomUrl : undefined
96
+ }
94
97
  targetType={searchType === TabName.Communities ? 'community' : 'user'}
95
98
  />
96
99
  <View style={styles.profileInfoContainer}>
@@ -6,6 +6,7 @@ import { zodResolver } from '@hookform/resolvers/zod';
6
6
  import { useForm } from 'react-hook-form';
7
7
  import { useUserCollection } from '../../../../../v4/hook/collections/useUserCollection';
8
8
  import { useSearchUserByDisplayNameCollection } from '../../../../../v4/hook/collections/useSearchUserByDisplayNameCollection';
9
+ import { SearchUsersByEnum } from '@amityco/ts-sdk-react-native';
9
10
 
10
11
  type UseAddMemberProps = {
11
12
  communityId?: string;
@@ -47,6 +48,7 @@ function useAddMember({ communityId }: UseAddMemberProps = {}) {
47
48
  params: {
48
49
  displayName: values.search,
49
50
  limit: 20,
51
+ searchBy: [SearchUsersByEnum.DISPLAY_NAME],
50
52
  },
51
53
  enabled: !!values.search && !communityId,
52
54
  });
@@ -1,5 +1,6 @@
1
1
  import {
2
2
  CommunityRepository,
3
+ SearchUsersByEnum,
3
4
  UserRepository,
4
5
  } from '@amityco/ts-sdk-react-native';
5
6
  import { useState, useEffect } from 'react';
@@ -65,7 +66,11 @@ export const useAmityGlobalSearchViewModel = (
65
66
  } else if (searchType === TabName.Users && searchValue?.length >= 3) {
66
67
  setSearchResult(null);
67
68
  const unsubscribeUser = UserRepository.searchUserByDisplayName(
68
- { displayName: searchValue, limit: 20 },
69
+ {
70
+ displayName: searchValue,
71
+ limit: 20,
72
+ searchBy: [SearchUsersByEnum.DISPLAY_NAME],
73
+ },
69
74
  ({ error, loading, data, hasNextPage, onNextPage }) => {
70
75
  if (error) return setSearchResult(null);
71
76
  if (!loading) {
@@ -1,5 +1,6 @@
1
1
  import {
2
2
  CommunityRepository,
3
+ SearchUsersByEnum,
3
4
  UserRepository,
4
5
  } from '@amityco/ts-sdk-react-native';
5
6
  import { useCallback, useEffect, useState, useRef } from 'react';
@@ -45,7 +46,11 @@ const useSearch = (
45
46
 
46
47
  const searchAllUsers = useCallback((text: string) => {
47
48
  return UserRepository.searchUserByDisplayName(
48
- { displayName: text, limit: 5 },
49
+ {
50
+ displayName: text,
51
+ limit: 5,
52
+ searchBy: [SearchUsersByEnum.DISPLAY_NAME],
53
+ },
49
54
  ({ data, error, hasNextPage, onNextPage }) => {
50
55
  if (error) return null;
51
56
  hasNextPage
@@ -65,6 +65,7 @@ import AmityCommunityProfilePage from '../PublicApi/Pages/AmityCommunityProfileP
65
65
  import LivestreamTerminated from '../screen/LivestreamTerminated';
66
66
  import PollTargetSelection from '../screen/PollTargetSelection';
67
67
  import LivestreamPostTargetSelection from '../screen/LivestreamPostTargetSelection';
68
+ import CommunityMembership from '../screen/CommunityMembership';
68
69
 
69
70
  interface PageRendererProps {
70
71
  children: React.JSX.Element;
@@ -82,6 +83,7 @@ export default function PageRenderer({ children }: PageRendererProps) {
82
83
  <Stack.Navigator
83
84
  id={undefined}
84
85
  screenOptions={{
86
+ headerShown: false,
85
87
  headerShadowVisible: false,
86
88
  contentStyle: {
87
89
  backgroundColor: theme.colors.background,
@@ -192,6 +194,10 @@ export default function PageRenderer({ children }: PageRendererProps) {
192
194
  name="CommunityAddMember"
193
195
  component={CommunityAddMember}
194
196
  />
197
+ <Stack.Screen
198
+ name="CommunityMembership"
199
+ component={CommunityMembership}
200
+ />
195
201
  <Stack.Screen
196
202
  name="CommunityPostPermission"
197
203
  component={CommunityPostPermission}