@amityco/react-native-social-uikit 4.0.0-8373e87.0 → 4.0.0-8da9962.0

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 (203) hide show
  1. package/README.md +14 -14
  2. package/lib/commonjs/screens/CategorytList/index.js.map +1 -1
  3. package/lib/commonjs/snippet/AmityCommunitySearchResultComponent.js +3 -3
  4. package/lib/commonjs/snippet/AmityCommunitySearchResultComponent.js.map +1 -1
  5. package/lib/commonjs/snippet/AmityCreatePostMenuComponent.js +3 -3
  6. package/lib/commonjs/snippet/AmityCreatePostMenuComponent.js.map +1 -1
  7. package/lib/commonjs/snippet/AmityDetailedMediaAttachmentComponent.js +4 -4
  8. package/lib/commonjs/snippet/AmityDetailedMediaAttachmentComponent.js.map +1 -1
  9. package/lib/commonjs/snippet/AmityEmptyNewsFeedComponent.js +3 -3
  10. package/lib/commonjs/snippet/AmityEmptyNewsFeedComponent.js.map +1 -1
  11. package/lib/commonjs/snippet/AmityGlobalFeedComponent.js +3 -3
  12. package/lib/commonjs/snippet/AmityGlobalFeedComponent.js.map +1 -1
  13. package/lib/commonjs/snippet/AmityMediaAttachmentComponent.js +4 -4
  14. package/lib/commonjs/snippet/AmityMediaAttachmentComponent.js.map +1 -1
  15. package/lib/commonjs/snippet/AmityMyCommunitiesComponent.js +3 -3
  16. package/lib/commonjs/snippet/AmityMyCommunitiesComponent.js.map +1 -1
  17. package/lib/commonjs/snippet/AmityMyCommunitiesSearchPage.js +3 -3
  18. package/lib/commonjs/snippet/AmityMyCommunitiesSearchPage.js.map +1 -1
  19. package/lib/commonjs/snippet/AmityNewsFeedComponent.js +3 -3
  20. package/lib/commonjs/snippet/AmityNewsFeedComponent.js.map +1 -1
  21. package/lib/commonjs/snippet/AmityPostComposerPage.js +4 -4
  22. package/lib/commonjs/snippet/AmityPostComposerPage.js.map +1 -1
  23. package/lib/commonjs/snippet/AmityPostContentComponent.js +3 -3
  24. package/lib/commonjs/snippet/AmityPostContentComponent.js.map +1 -1
  25. package/lib/commonjs/snippet/AmityPostDetailPage.js +3 -3
  26. package/lib/commonjs/snippet/AmityPostDetailPage.js.map +1 -1
  27. package/lib/commonjs/snippet/AmityPostTargetSelectionPage.js +4 -4
  28. package/lib/commonjs/snippet/AmityPostTargetSelectionPage.js.map +1 -1
  29. package/lib/commonjs/snippet/AmityReactionListComponent.js +3 -3
  30. package/lib/commonjs/snippet/AmityReactionListComponent.js.map +1 -1
  31. package/lib/commonjs/snippet/AmitySocialGlobalSearchPage.js +3 -3
  32. package/lib/commonjs/snippet/AmitySocialGlobalSearchPage.js.map +1 -1
  33. package/lib/commonjs/snippet/AmitySocialHomePage.js +3 -3
  34. package/lib/commonjs/snippet/AmitySocialHomePage.js.map +1 -1
  35. package/lib/commonjs/snippet/AmitySocialHomeTopNavigationComponent.js +3 -3
  36. package/lib/commonjs/snippet/AmitySocialHomeTopNavigationComponent.js.map +1 -1
  37. package/lib/commonjs/snippet/AmityStoryTargetSelectionPage.js +3 -3
  38. package/lib/commonjs/snippet/AmityStoryTargetSelectionPage.js.map +1 -1
  39. package/lib/commonjs/snippet/AmityTopSearchBarComponent.js +3 -3
  40. package/lib/commonjs/snippet/AmityTopSearchBarComponent.js.map +1 -1
  41. package/lib/commonjs/snippet/AmityUserSearchResultComponent.js +3 -3
  42. package/lib/commonjs/snippet/AmityUserSearchResultComponent.js.map +1 -1
  43. package/lib/commonjs/v4/PublicApi/Components/AmityCommunityFeedComponent/AmityCommunityFeedComponent.js.map +1 -1
  44. package/lib/commonjs/v4/PublicApi/Components/AmityCommunityProfileTabComponent/AmityCommunityProfileTabComponent.js.map +1 -1
  45. package/lib/commonjs/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.js +4 -3
  46. package/lib/commonjs/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.js.map +1 -1
  47. package/lib/commonjs/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js +0 -1
  48. package/lib/commonjs/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js.map +1 -1
  49. package/lib/commonjs/v4/PublicApi/Components/AmityReactionListComponent/AmityReactionListComponent.js.map +1 -1
  50. package/lib/commonjs/v4/PublicApi/Pages/AmityLivestreamPostTargetSelectionPage/AmityLivestreamPostTargetSelectionPage.js +7 -1
  51. package/lib/commonjs/v4/PublicApi/Pages/AmityLivestreamPostTargetSelectionPage/AmityLivestreamPostTargetSelectionPage.js.map +1 -1
  52. package/lib/commonjs/v4/PublicApi/Pages/AmityPollTargetSelectionPage/AmityPollTargetSelectionPage.js +7 -1
  53. package/lib/commonjs/v4/PublicApi/Pages/AmityPollTargetSelectionPage/AmityPollTargetSelectionPage.js.map +1 -1
  54. package/lib/commonjs/v4/PublicApi/Pages/AmityPostComposerPage/AmityPostComposerPage.js +8 -1
  55. package/lib/commonjs/v4/PublicApi/Pages/AmityPostComposerPage/AmityPostComposerPage.js.map +1 -1
  56. package/lib/commonjs/v4/PublicApi/Pages/AmityPostTargetSelectionPage/AmityPostTargetSelectionPage.js +7 -1
  57. package/lib/commonjs/v4/PublicApi/Pages/AmityPostTargetSelectionPage/AmityPostTargetSelectionPage.js.map +1 -1
  58. package/lib/commonjs/v4/PublicApi/Pages/AmitySocialHomePage/AmitySocialHomePage.js.map +1 -1
  59. package/lib/commonjs/v4/PublicApi/Pages/AmityStoryTargetSelectionPage/AmityStoryTargetSelectionPage.js +7 -1
  60. package/lib/commonjs/v4/PublicApi/Pages/AmityStoryTargetSelectionPage/AmityStoryTargetSelectionPage.js.map +1 -1
  61. package/lib/commonjs/v4/component/MyStories/StoryCircleItem.js.map +1 -1
  62. package/lib/commonjs/v4/component/TargetSelectionPage/TargetSelectionPage.js +10 -4
  63. package/lib/commonjs/v4/component/TargetSelectionPage/TargetSelectionPage.js.map +1 -1
  64. package/lib/commonjs/v4/elements/ActionButton/ActionButton.js.map +1 -1
  65. package/lib/commonjs/v4/elements/ImageViewer/ImageViewer.js.map +1 -1
  66. package/lib/commonjs/v4/elements/VideoViewer/VideoViewer.js.map +1 -1
  67. package/lib/commonjs/v4/features/community/Membership/components/MemberItem/MemberItem.js.map +1 -1
  68. package/lib/commonjs/v4/features/community/shared/components/Privacy/index.js.map +1 -1
  69. package/lib/commonjs/v4/hook/useImagePicker.js.map +1 -1
  70. package/lib/commonjs/v4/providers/BehaviourProvider.js +2 -1
  71. package/lib/commonjs/v4/providers/BehaviourProvider.js.map +1 -1
  72. package/lib/module/screens/CategorytList/index.js.map +1 -1
  73. package/lib/module/snippet/AmityCommunitySearchResultComponent.js +1 -1
  74. package/lib/module/snippet/AmityCommunitySearchResultComponent.js.map +1 -1
  75. package/lib/module/snippet/AmityCreatePostMenuComponent.js +1 -1
  76. package/lib/module/snippet/AmityCreatePostMenuComponent.js.map +1 -1
  77. package/lib/module/snippet/AmityDetailedMediaAttachmentComponent.js +1 -1
  78. package/lib/module/snippet/AmityDetailedMediaAttachmentComponent.js.map +1 -1
  79. package/lib/module/snippet/AmityEmptyNewsFeedComponent.js +1 -1
  80. package/lib/module/snippet/AmityEmptyNewsFeedComponent.js.map +1 -1
  81. package/lib/module/snippet/AmityGlobalFeedComponent.js +1 -1
  82. package/lib/module/snippet/AmityGlobalFeedComponent.js.map +1 -1
  83. package/lib/module/snippet/AmityMediaAttachmentComponent.js +1 -1
  84. package/lib/module/snippet/AmityMediaAttachmentComponent.js.map +1 -1
  85. package/lib/module/snippet/AmityMyCommunitiesComponent.js +1 -1
  86. package/lib/module/snippet/AmityMyCommunitiesComponent.js.map +1 -1
  87. package/lib/module/snippet/AmityMyCommunitiesSearchPage.js +1 -1
  88. package/lib/module/snippet/AmityMyCommunitiesSearchPage.js.map +1 -1
  89. package/lib/module/snippet/AmityNewsFeedComponent.js +1 -1
  90. package/lib/module/snippet/AmityNewsFeedComponent.js.map +1 -1
  91. package/lib/module/snippet/AmityPostComposerPage.js +1 -1
  92. package/lib/module/snippet/AmityPostComposerPage.js.map +1 -1
  93. package/lib/module/snippet/AmityPostContentComponent.js +1 -1
  94. package/lib/module/snippet/AmityPostContentComponent.js.map +1 -1
  95. package/lib/module/snippet/AmityPostDetailPage.js +1 -1
  96. package/lib/module/snippet/AmityPostDetailPage.js.map +1 -1
  97. package/lib/module/snippet/AmityPostTargetSelectionPage.js +1 -1
  98. package/lib/module/snippet/AmityPostTargetSelectionPage.js.map +1 -1
  99. package/lib/module/snippet/AmityReactionListComponent.js +1 -1
  100. package/lib/module/snippet/AmityReactionListComponent.js.map +1 -1
  101. package/lib/module/snippet/AmitySocialGlobalSearchPage.js +1 -1
  102. package/lib/module/snippet/AmitySocialGlobalSearchPage.js.map +1 -1
  103. package/lib/module/snippet/AmitySocialHomePage.js +1 -1
  104. package/lib/module/snippet/AmitySocialHomePage.js.map +1 -1
  105. package/lib/module/snippet/AmitySocialHomeTopNavigationComponent.js +1 -1
  106. package/lib/module/snippet/AmitySocialHomeTopNavigationComponent.js.map +1 -1
  107. package/lib/module/snippet/AmityStoryTargetSelectionPage.js +1 -1
  108. package/lib/module/snippet/AmityStoryTargetSelectionPage.js.map +1 -1
  109. package/lib/module/snippet/AmityTopSearchBarComponent.js +1 -1
  110. package/lib/module/snippet/AmityTopSearchBarComponent.js.map +1 -1
  111. package/lib/module/snippet/AmityUserSearchResultComponent.js +1 -1
  112. package/lib/module/snippet/AmityUserSearchResultComponent.js.map +1 -1
  113. package/lib/module/v4/PublicApi/Components/AmityCommunityFeedComponent/AmityCommunityFeedComponent.js.map +1 -1
  114. package/lib/module/v4/PublicApi/Components/AmityCommunityProfileTabComponent/AmityCommunityProfileTabComponent.js.map +1 -1
  115. package/lib/module/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.js +5 -4
  116. package/lib/module/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.js.map +1 -1
  117. package/lib/module/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js +0 -1
  118. package/lib/module/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.js.map +1 -1
  119. package/lib/module/v4/PublicApi/Components/AmityReactionListComponent/AmityReactionListComponent.js.map +1 -1
  120. package/lib/module/v4/PublicApi/Pages/AmityLivestreamPostTargetSelectionPage/AmityLivestreamPostTargetSelectionPage.js +7 -1
  121. package/lib/module/v4/PublicApi/Pages/AmityLivestreamPostTargetSelectionPage/AmityLivestreamPostTargetSelectionPage.js.map +1 -1
  122. package/lib/module/v4/PublicApi/Pages/AmityPollTargetSelectionPage/AmityPollTargetSelectionPage.js +7 -1
  123. package/lib/module/v4/PublicApi/Pages/AmityPollTargetSelectionPage/AmityPollTargetSelectionPage.js.map +1 -1
  124. package/lib/module/v4/PublicApi/Pages/AmityPostComposerPage/AmityPostComposerPage.js +8 -1
  125. package/lib/module/v4/PublicApi/Pages/AmityPostComposerPage/AmityPostComposerPage.js.map +1 -1
  126. package/lib/module/v4/PublicApi/Pages/AmityPostTargetSelectionPage/AmityPostTargetSelectionPage.js +7 -1
  127. package/lib/module/v4/PublicApi/Pages/AmityPostTargetSelectionPage/AmityPostTargetSelectionPage.js.map +1 -1
  128. package/lib/module/v4/PublicApi/Pages/AmitySocialHomePage/AmitySocialHomePage.js.map +1 -1
  129. package/lib/module/v4/PublicApi/Pages/AmityStoryTargetSelectionPage/AmityStoryTargetSelectionPage.js +7 -1
  130. package/lib/module/v4/PublicApi/Pages/AmityStoryTargetSelectionPage/AmityStoryTargetSelectionPage.js.map +1 -1
  131. package/lib/module/v4/component/MyStories/StoryCircleItem.js.map +1 -1
  132. package/lib/module/v4/component/TargetSelectionPage/TargetSelectionPage.js +10 -4
  133. package/lib/module/v4/component/TargetSelectionPage/TargetSelectionPage.js.map +1 -1
  134. package/lib/module/v4/elements/ActionButton/ActionButton.js.map +1 -1
  135. package/lib/module/v4/elements/ImageViewer/ImageViewer.js.map +1 -1
  136. package/lib/module/v4/elements/VideoViewer/VideoViewer.js.map +1 -1
  137. package/lib/module/v4/features/community/Membership/components/MemberItem/MemberItem.js.map +1 -1
  138. package/lib/module/v4/features/community/shared/components/Privacy/index.js.map +1 -1
  139. package/lib/module/v4/hook/useImagePicker.js.map +1 -1
  140. package/lib/module/v4/providers/BehaviourProvider.js +2 -1
  141. package/lib/module/v4/providers/BehaviourProvider.js.map +1 -1
  142. package/lib/typescript/src/screens/CategorytList/index.d.ts.map +1 -1
  143. package/lib/typescript/src/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.d.ts +1 -0
  144. package/lib/typescript/src/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.d.ts.map +1 -1
  145. package/lib/typescript/src/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.d.ts.map +1 -1
  146. package/lib/typescript/src/v4/PublicApi/Pages/AmityLivestreamPostTargetSelectionPage/AmityLivestreamPostTargetSelectionPage.d.ts.map +1 -1
  147. package/lib/typescript/src/v4/PublicApi/Pages/AmityPollTargetSelectionPage/AmityPollTargetSelectionPage.d.ts.map +1 -1
  148. package/lib/typescript/src/v4/PublicApi/Pages/AmityPostComposerPage/AmityPostComposerPage.d.ts.map +1 -1
  149. package/lib/typescript/src/v4/PublicApi/Pages/AmityPostTargetSelectionPage/AmityPostTargetSelectionPage.d.ts.map +1 -1
  150. package/lib/typescript/src/v4/PublicApi/Pages/AmitySocialHomePage/AmitySocialHomePage.d.ts.map +1 -1
  151. package/lib/typescript/src/v4/PublicApi/Pages/AmityStoryTargetSelectionPage/AmityStoryTargetSelectionPage.d.ts.map +1 -1
  152. package/lib/typescript/src/v4/component/TargetSelectionPage/TargetSelectionPage.d.ts +2 -1
  153. package/lib/typescript/src/v4/component/TargetSelectionPage/TargetSelectionPage.d.ts.map +1 -1
  154. package/lib/typescript/src/v4/elements/ActionButton/ActionButton.d.ts.map +1 -1
  155. package/lib/typescript/src/v4/features/community/Membership/components/MemberItem/MemberItem.d.ts.map +1 -1
  156. package/lib/typescript/src/v4/features/community/shared/components/Privacy/index.d.ts.map +1 -1
  157. package/lib/typescript/src/v4/hook/useImagePicker.d.ts.map +1 -1
  158. package/lib/typescript/src/v4/providers/BehaviourProvider.d.ts.map +1 -1
  159. package/lib/typescript/src/v4/types/behaviour.interface.d.ts +7 -0
  160. package/lib/typescript/src/v4/types/behaviour.interface.d.ts.map +1 -1
  161. package/package.json +1 -1
  162. package/src/screens/CategorytList/index.tsx +7 -14
  163. package/src/snippet/AmityCommunitySearchResultComponent.tsx +1 -1
  164. package/src/snippet/AmityCreatePostMenuComponent.tsx +1 -1
  165. package/src/snippet/AmityDetailedMediaAttachmentComponent.tsx +1 -1
  166. package/src/snippet/AmityEmptyNewsFeedComponent.tsx +1 -1
  167. package/src/snippet/AmityGlobalFeedComponent.tsx +1 -1
  168. package/src/snippet/AmityMediaAttachmentComponent.tsx +1 -1
  169. package/src/snippet/AmityMyCommunitiesComponent.tsx +1 -1
  170. package/src/snippet/AmityMyCommunitiesSearchPage.tsx +1 -1
  171. package/src/snippet/AmityNewsFeedComponent.tsx +1 -1
  172. package/src/snippet/AmityPostComposerPage.tsx +1 -1
  173. package/src/snippet/AmityPostContentComponent.tsx +1 -1
  174. package/src/snippet/AmityPostDetailPage.tsx +1 -1
  175. package/src/snippet/AmityPostTargetSelectionPage.tsx +1 -1
  176. package/src/snippet/AmityReactionListComponent.tsx +1 -1
  177. package/src/snippet/AmitySocialGlobalSearchPage.tsx +1 -1
  178. package/src/snippet/AmitySocialHomePage.tsx +1 -1
  179. package/src/snippet/AmitySocialHomeTopNavigationComponent.tsx +1 -1
  180. package/src/snippet/AmityStoryTargetSelectionPage.tsx +1 -1
  181. package/src/snippet/AmityTopSearchBarComponent.tsx +1 -1
  182. package/src/snippet/AmityUserSearchResultComponent.tsx +1 -1
  183. package/src/v4/PublicApi/Components/AmityCommunityFeedComponent/AmityCommunityFeedComponent.tsx +2 -2
  184. package/src/v4/PublicApi/Components/AmityCommunityProfileTabComponent/AmityCommunityProfileTabComponent.tsx +97 -97
  185. package/src/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.tsx +12 -7
  186. package/src/v4/PublicApi/Components/AmityPostContentComponent/AmityPostContentComponent.tsx +0 -2
  187. package/src/v4/PublicApi/Components/AmityReactionListComponent/AmityReactionListComponent.tsx +9 -9
  188. package/src/v4/PublicApi/Pages/AmityLivestreamPostTargetSelectionPage/AmityLivestreamPostTargetSelectionPage.tsx +6 -0
  189. package/src/v4/PublicApi/Pages/AmityPollTargetSelectionPage/AmityPollTargetSelectionPage.tsx +6 -1
  190. package/src/v4/PublicApi/Pages/AmityPostComposerPage/AmityPostComposerPage.tsx +6 -1
  191. package/src/v4/PublicApi/Pages/AmityPostTargetSelectionPage/AmityPostTargetSelectionPage.tsx +7 -0
  192. package/src/v4/PublicApi/Pages/AmitySocialHomePage/AmitySocialHomePage.tsx +5 -1
  193. package/src/v4/PublicApi/Pages/AmityStoryTargetSelectionPage/AmityStoryTargetSelectionPage.tsx +7 -0
  194. package/src/v4/component/MyStories/StoryCircleItem.tsx +8 -8
  195. package/src/v4/component/TargetSelectionPage/TargetSelectionPage.tsx +12 -4
  196. package/src/v4/elements/ActionButton/ActionButton.tsx +4 -1
  197. package/src/v4/elements/ImageViewer/ImageViewer.tsx +1 -1
  198. package/src/v4/elements/VideoViewer/VideoViewer.tsx +1 -1
  199. package/src/v4/features/community/Membership/components/MemberItem/MemberItem.tsx +11 -2
  200. package/src/v4/features/community/shared/components/Privacy/index.tsx +4 -1
  201. package/src/v4/hook/useImagePicker.ts +4 -1
  202. package/src/v4/providers/BehaviourProvider.tsx +1 -0
  203. package/src/v4/types/behaviour.interface.ts +7 -0
@@ -7,7 +7,7 @@
7
7
  import {
8
8
  AmitySocialHomeTopNavigationComponent,
9
9
  AmityUiKitProvider,
10
- } from 'amity-react-native-social-ui-kit';
10
+ } from '@amityco/react-native-social-uikit';
11
11
  import React from 'react';
12
12
  import config from '../../uikit.config.json';
13
13
  <AmityUiKitProvider
@@ -7,7 +7,7 @@
7
7
  import {
8
8
  AmityStoryTargetSelectionPage,
9
9
  AmityUiKitProvider,
10
- } from 'amity-react-native-social-ui-kit';
10
+ } from '@amityco/react-native-social-uikit';
11
11
  import React from 'react';
12
12
  import config from '../../uikit.config.json';
13
13
  <AmityUiKitProvider
@@ -7,7 +7,7 @@
7
7
  import {
8
8
  AmityTopSearchBarComponent,
9
9
  AmityUiKitProvider,
10
- } from 'amity-react-native-social-ui-kit';
10
+ } from '@amityco/react-native-social-uikit';
11
11
  import React from 'react';
12
12
  import config from '../../uikit.config.json';
13
13
  import { TabName } from '../v4/enum';
@@ -7,7 +7,7 @@
7
7
  import {
8
8
  AmityUserSearchResultComponent,
9
9
  AmityUiKitProvider,
10
- } from 'amity-react-native-social-ui-kit';
10
+ } from '@amityco/react-native-social-uikit';
11
11
  import React from 'react';
12
12
  import config from '../../uikit.config.json';
13
13
  <AmityUiKitProvider
@@ -209,8 +209,8 @@ const AmityCommunityFeedComponent = forwardRef<
209
209
  isPinnedPost(item)
210
210
  ? item.post.postId
211
211
  : isAmityAd(item)
212
- ? item.adId.toString() + index
213
- : item.postId.toString() + '_' + index
212
+ ? item.adId.toString() + index
213
+ : item.postId.toString() + '_' + index
214
214
  }
215
215
  extraData={itemWithAds}
216
216
  />
@@ -28,107 +28,107 @@ const AmityCommunityProfileTabComponent: FC<
28
28
  currentTab,
29
29
  onTabChange,
30
30
  }) => {
31
- const elementId = ElementID.community_profile_tab;
31
+ const elementId = ElementID.community_profile_tab;
32
32
 
33
- const { themeStyles, accessibilityId } = useAmityElement({
34
- pageId,
35
- componentId,
36
- elementId,
37
- });
33
+ const { themeStyles, accessibilityId } = useAmityElement({
34
+ pageId,
35
+ componentId,
36
+ elementId,
37
+ });
38
38
 
39
- const styles = StyleSheet.create({
40
- container: {
41
- backgroundColor: themeStyles?.colors.background,
42
- flexDirection: 'row',
43
- width: '100%',
44
- paddingHorizontal: 16,
45
- justifyContent: 'space-between',
46
- borderBottomColor: themeStyles?.colors.baseShade4,
47
- borderBottomWidth: 1,
48
- },
49
- });
39
+ const styles = StyleSheet.create({
40
+ container: {
41
+ backgroundColor: themeStyles?.colors.background,
42
+ flexDirection: 'row',
43
+ width: '100%',
44
+ paddingHorizontal: 16,
45
+ justifyContent: 'space-between',
46
+ borderBottomColor: themeStyles?.colors.baseShade4,
47
+ borderBottomWidth: 1,
48
+ },
49
+ });
50
50
 
51
- const getActiveColor = useCallback(
52
- (isActive: boolean) => {
53
- return isActive
54
- ? themeStyles?.colors.base
55
- : themeStyles?.colors.baseShade2;
56
- },
57
- [themeStyles]
58
- );
51
+ const getActiveColor = useCallback(
52
+ (isActive: boolean) => {
53
+ return isActive
54
+ ? themeStyles?.colors.base
55
+ : themeStyles?.colors.baseShade2;
56
+ },
57
+ [themeStyles]
58
+ );
59
59
 
60
- return (
61
- <View
62
- style={styles.container}
63
- testID={accessibilityId}
64
- accessibilityLabel={accessibilityId}
60
+ return (
61
+ <View
62
+ style={styles.container}
63
+ testID={accessibilityId}
64
+ accessibilityLabel={accessibilityId}
65
+ >
66
+ <Pressable
67
+ onPress={() => onTabChange(CommunityProfileTab.community_feed)}
65
68
  >
66
- <Pressable
67
- onPress={() => onTabChange(CommunityProfileTab.community_feed)}
68
- >
69
- <IconTab
70
- themeStyles={themeStyles}
71
- icon={
72
- <SvgXml
73
- xml={feed(
74
- getActiveColor(
75
- currentTab === CommunityProfileTab.community_feed
76
- )
77
- )}
78
- />
79
- }
80
- isActive={currentTab === CommunityProfileTab.community_feed}
81
- />
82
- </Pressable>
83
- <Pressable onPress={() => onTabChange(CommunityProfileTab.community_pin)}>
84
- <IconTab
85
- themeStyles={themeStyles}
86
- icon={
87
- <SvgXml
88
- xml={pin(
89
- getActiveColor(currentTab === CommunityProfileTab.community_pin)
90
- )}
91
- />
92
- }
93
- isActive={currentTab === CommunityProfileTab.community_pin}
94
- />
95
- </Pressable>
96
- <Pressable
97
- onPress={() => onTabChange(CommunityProfileTab.community_image_feed)}
98
- >
99
- <IconTab
100
- themeStyles={themeStyles}
101
- icon={
102
- <SvgXml
103
- xml={image(
104
- getActiveColor(
105
- currentTab === CommunityProfileTab.community_image_feed
106
- )
107
- )}
108
- />
109
- }
110
- isActive={currentTab === CommunityProfileTab.community_image_feed}
111
- />
112
- </Pressable>
113
- <Pressable
114
- onPress={() => onTabChange(CommunityProfileTab.community_video_feed)}
115
- >
116
- <IconTab
117
- themeStyles={themeStyles}
118
- icon={
119
- <SvgXml
120
- xml={video(
121
- getActiveColor(
122
- currentTab === CommunityProfileTab.community_video_feed
123
- )
124
- )}
125
- />
126
- }
127
- isActive={currentTab === CommunityProfileTab.community_video_feed}
128
- />
129
- </Pressable>
130
- </View>
131
- );
132
- };
69
+ <IconTab
70
+ themeStyles={themeStyles}
71
+ icon={
72
+ <SvgXml
73
+ xml={feed(
74
+ getActiveColor(
75
+ currentTab === CommunityProfileTab.community_feed
76
+ )
77
+ )}
78
+ />
79
+ }
80
+ isActive={currentTab === CommunityProfileTab.community_feed}
81
+ />
82
+ </Pressable>
83
+ <Pressable onPress={() => onTabChange(CommunityProfileTab.community_pin)}>
84
+ <IconTab
85
+ themeStyles={themeStyles}
86
+ icon={
87
+ <SvgXml
88
+ xml={pin(
89
+ getActiveColor(currentTab === CommunityProfileTab.community_pin)
90
+ )}
91
+ />
92
+ }
93
+ isActive={currentTab === CommunityProfileTab.community_pin}
94
+ />
95
+ </Pressable>
96
+ <Pressable
97
+ onPress={() => onTabChange(CommunityProfileTab.community_image_feed)}
98
+ >
99
+ <IconTab
100
+ themeStyles={themeStyles}
101
+ icon={
102
+ <SvgXml
103
+ xml={image(
104
+ getActiveColor(
105
+ currentTab === CommunityProfileTab.community_image_feed
106
+ )
107
+ )}
108
+ />
109
+ }
110
+ isActive={currentTab === CommunityProfileTab.community_image_feed}
111
+ />
112
+ </Pressable>
113
+ <Pressable
114
+ onPress={() => onTabChange(CommunityProfileTab.community_video_feed)}
115
+ >
116
+ <IconTab
117
+ themeStyles={themeStyles}
118
+ icon={
119
+ <SvgXml
120
+ xml={video(
121
+ getActiveColor(
122
+ currentTab === CommunityProfileTab.community_video_feed
123
+ )
124
+ )}
125
+ />
126
+ }
127
+ isActive={currentTab === CommunityProfileTab.community_video_feed}
128
+ />
129
+ </Pressable>
130
+ </View>
131
+ );
132
+ };
133
133
 
134
134
  export default memo(AmityCommunityProfileTabComponent);
@@ -1,5 +1,5 @@
1
1
  import React, { FC, memo, useCallback, useRef, useState } from 'react';
2
- import { FlatList } from 'react-native';
2
+ import { FlatList, View } from 'react-native';
3
3
 
4
4
  import { RefreshControl } from 'react-native';
5
5
  import AmityPostContentComponent from '../AmityPostContentComponent/AmityPostContentComponent';
@@ -20,6 +20,7 @@ import Divider from '../../../component/Divider';
20
20
  type AmityGlobalFeedComponentType = {
21
21
  pageId?: PageID;
22
22
  isShowStoryTab?: boolean;
23
+ GlobalFeedHeaderComponent?: React.ReactElement;
23
24
  };
24
25
 
25
26
  export const globalFeedPageLimit = 20;
@@ -27,6 +28,7 @@ export const globalFeedPageLimit = 20;
27
28
  const AmityGlobalFeedComponent: FC<AmityGlobalFeedComponentType> = ({
28
29
  pageId,
29
30
  isShowStoryTab = true,
31
+ GlobalFeedHeaderComponent,
30
32
  }) => {
31
33
  const { itemWithAds, refresh, loading, onNextPage } =
32
34
  useCustomRankingGlobalFeed();
@@ -100,12 +102,15 @@ const AmityGlobalFeedComponent: FC<AmityGlobalFeedComponentType> = ({
100
102
  }
101
103
  keyboardShouldPersistTaps="handled"
102
104
  ListHeaderComponent={
103
- !refreshing &&
104
- !loading &&
105
- isShowStoryTab && (
106
- <AmityStoryTabComponent
107
- type={AmityStoryTabComponentEnum.globalFeed}
108
- />
105
+ !refreshing && !loading && isShowStoryTab ? (
106
+ <View>
107
+ {GlobalFeedHeaderComponent}
108
+ <AmityStoryTabComponent
109
+ type={AmityStoryTabComponentEnum.globalFeed}
110
+ />
111
+ </View>
112
+ ) : (
113
+ GlobalFeedHeaderComponent
109
114
  )
110
115
  }
111
116
  viewabilityConfig={{ viewAreaCoveragePercentThreshold: 60 }}
@@ -158,8 +158,6 @@ const AmityPostContentComponent: FC<AmityPostContentComponentProps> = ({
158
158
  });
159
159
  };
160
160
 
161
- if (post?.structureType === 'liveStream') return null;
162
-
163
161
  return (
164
162
  <View>
165
163
  {(category === AmityPostCategory.ANNOUNCEMENT ||
@@ -74,10 +74,10 @@ const AmityReactionListComponent: FC<AmityReactionListComponentType> = ({
74
74
  selectedReactionIndex === 0
75
75
  ? allReactionList
76
76
  : selectedReactionIndex === 1
77
- ? likeReactionList
78
- : selectedReactionIndex === 2
79
- ? loveReactionList
80
- : null;
77
+ ? likeReactionList
78
+ : selectedReactionIndex === 2
79
+ ? loveReactionList
80
+ : null;
81
81
  if (currentUsers?.length > 0) {
82
82
  const userList = currentUsers.map((item) => item.userId);
83
83
  try {
@@ -95,7 +95,7 @@ const AmityReactionListComponent: FC<AmityReactionListComponentType> = ({
95
95
  }
96
96
  })();
97
97
 
98
- return () => { };
98
+ return () => {};
99
99
  }, [
100
100
  allReactionList,
101
101
  likeReactionList,
@@ -231,10 +231,10 @@ const AmityReactionListComponent: FC<AmityReactionListComponentType> = ({
231
231
  {loading
232
232
  ? renderContentLoading()
233
233
  : hasError
234
- ? errorContent()
235
- : reactors
236
- ? renderReactionList()
237
- : null}
234
+ ? errorContent()
235
+ : reactors
236
+ ? renderReactionList()
237
+ : null}
238
238
  </View>
239
239
  </Modal>
240
240
  );
@@ -37,10 +37,16 @@ const AmityLivestreamPostTargetSelectionPage = () => {
37
37
  navigation.navigate('CreateLivestream', context);
38
38
  };
39
39
 
40
+ const onClickClose = () => {
41
+ if (AmityLivestreamPostTargetSelectionPageBehavior?.onClickClose) {
42
+ AmityLivestreamPostTargetSelectionPageBehavior.onClickClose();
43
+ }
44
+ };
40
45
  return (
41
46
  <TargetSelectionPage
42
47
  onSelectFeed={onSelectFeed}
43
48
  pageId={PageID.livestream_post_target_selection_page}
49
+ onClickClose={onClickClose}
44
50
  />
45
51
  );
46
52
  };
@@ -28,11 +28,16 @@ const AmityPollTargetSelectionPage = () => {
28
28
  }
29
29
  navigation.navigate('PollPostComposer', context);
30
30
  };
31
-
31
+ const onClickClose = () => {
32
+ if (AmityPollTargetSelectionPageBehavior?.onClickClose) {
33
+ AmityPollTargetSelectionPageBehavior.onClickClose();
34
+ }
35
+ };
32
36
  return (
33
37
  <TargetSelectionPage
34
38
  onSelectFeed={onSelectFeed}
35
39
  pageId={PageID.select_poll_target_page}
40
+ onClickClose={onClickClose}
36
41
  />
37
42
  );
38
43
  };
@@ -60,6 +60,7 @@ import { getPostErrorMessage } from '../../../utils/errors';
60
60
  import { MAXIMUM_POST_CHARACTERS } from '../../../constants';
61
61
  import { replaceTriggerValues } from 'react-native-controlled-mentions';
62
62
  import { useUIKitDispatch } from '../../../../redux/store';
63
+ import { useBehaviour } from '../../../../v4/providers/BehaviourProvider';
63
64
 
64
65
  const AmityPostComposerPage: FC<AmityPostComposerPageType> = ({
65
66
  mode,
@@ -75,6 +76,7 @@ const AmityPostComposerPage: FC<AmityPostComposerPageType> = ({
75
76
  shouldCall: true,
76
77
  });
77
78
  const pageId = PageID.post_composer_page;
79
+ const { AmityPostComposerPageBehavior } = useBehaviour();
78
80
  const { isExcluded, themeStyles, accessibilityId } = useAmityPage({ pageId });
79
81
  const styles = useStyles(themeStyles);
80
82
  const { getImage } = useFile();
@@ -286,10 +288,13 @@ const AmityPostComposerPage: FC<AmityPostComposerPageType> = ({
286
288
 
287
289
  const onPressClose = useCallback(() => {
288
290
  const routes = navigation.getState().routes;
291
+ if (AmityPostComposerPageBehavior?.onPressPost) {
292
+ AmityPostComposerPageBehavior.onPressPost();
293
+ }
289
294
  if (routes[routes.length - 2].name === 'PostTargetSelection') {
290
295
  navigation.pop(2);
291
296
  } else navigation.pop();
292
- }, [navigation]);
297
+ }, [navigation, AmityPostComposerPageBehavior]);
293
298
 
294
299
  const onClose = useCallback(() => {
295
300
  Alert.alert(
@@ -81,10 +81,17 @@ const AmityPostTargetSelectionPage = ({
81
81
  }
82
82
  };
83
83
 
84
+ const onClickClose = () => {
85
+ if (AmityPostTargetSelectionPageBehavior?.onClickClose) {
86
+ AmityPostTargetSelectionPageBehavior.onClickClose();
87
+ }
88
+ };
89
+
84
90
  return (
85
91
  <TargetSelectionPage
86
92
  pageId={PageID.select_post_target_page}
87
93
  onSelectFeed={onSelectFeed}
94
+ onClickClose={onClickClose}
88
95
  />
89
96
  );
90
97
  };
@@ -3,7 +3,11 @@ import { useCallback, useState } from 'react';
3
3
  import { LogBox, SafeAreaView, StyleSheet } from 'react-native';
4
4
  import CustomSocialTab from '../../../../v4/component/CustomSocialTab/CustomSocialTab';
5
5
  import { useUiKitConfig } from '../../../../v4/hook';
6
- import { ComponentID, ElementID, PageID } from '../../../../v4/enum/enumUIKitID';
6
+ import {
7
+ ComponentID,
8
+ ElementID,
9
+ PageID,
10
+ } from '../../../../v4/enum/enumUIKitID';
7
11
 
8
12
  import { useTheme } from 'react-native-paper';
9
13
  import { useBehaviour } from '../../../../v4/providers/BehaviourProvider';
@@ -24,11 +24,18 @@ const AmityStoryTargetSelectionPage = () => {
24
24
  });
25
25
  };
26
26
 
27
+ const onClickClose = () => {
28
+ if (AmityStoryTargetSelectionPageBehavior?.onClickClose) {
29
+ AmityStoryTargetSelectionPageBehavior.onClickClose();
30
+ }
31
+ };
32
+
27
33
  return (
28
34
  <TargetSelectionPage
29
35
  pageId={PageID.select_story_target_page}
30
36
  onSelectFeed={onSelectFeed}
31
37
  hideMyTimelineTarget={true}
38
+ onClickClose={onClickClose}
32
39
  />
33
40
  );
34
41
  };
@@ -31,13 +31,13 @@ const StoryCircleItem: FC<IStoryCircleItem> = ({
31
31
  const styles = useStyles();
32
32
  const storyRingColor: string[] = storyTarget?.hasUnseen
33
33
  ? (getUiKitConfig({
34
- page: PageID.StoryPage,
35
- component: ComponentID.StoryTab,
36
- element: ElementID.StoryRing,
37
- })?.progress_color as string[]) ?? ['#e2e2e2', '#e2e2e2']
34
+ page: PageID.StoryPage,
35
+ component: ComponentID.StoryTab,
36
+ element: ElementID.StoryRing,
37
+ })?.progress_color as string[]) ?? ['#e2e2e2', '#e2e2e2']
38
38
  : storyTarget?.failedStoriesCount > 0
39
- ? ['#DE1029', '#DE1029']
40
- : ['#e2e2e2', '#e2e2e2'];
39
+ ? ['#DE1029', '#DE1029']
40
+ : ['#e2e2e2', '#e2e2e2'];
41
41
 
42
42
  useEffect(() => {
43
43
  if (storyTarget.targetType !== 'community') return;
@@ -68,8 +68,8 @@ const StoryCircleItem: FC<IStoryCircleItem> = ({
68
68
  source={
69
69
  avatarUrl
70
70
  ? {
71
- uri: avatarUrl,
72
- }
71
+ uri: avatarUrl,
72
+ }
73
73
  : require('../../assets/images/userAvatar.png')
74
74
  }
75
75
  style={styles.communityAvatar}
@@ -13,11 +13,12 @@ import type { MyMD3Theme } from '../../../providers/amity-ui-kit-provider';
13
13
  import CloseButtonIconElement from '../../PublicApi/Elements/CloseButtonIconElement/CloseButtonIconElement';
14
14
  import { PageID, ComponentID, ElementID } from '../../enum';
15
15
  import { SafeAreaView } from 'react-native-safe-area-context';
16
- import { useNavigation } from '@react-navigation/native';
17
16
  import TextKeyElement from '../../PublicApi/Elements/TextKeyElement/TextKeyElement';
18
17
  import { Typography } from '../Typography/Typography';
19
18
  import { useStyles } from './styles';
20
19
  import { Illustration } from '../../../v4/PublicApi/Components/AmityEmptyNewsFeedComponent/Elements';
20
+ import { useNavigation } from '@react-navigation/native';
21
+ import { NativeStackNavigationProp } from '@react-navigation/native-stack';
21
22
 
22
23
  export type FeedParams = {
23
24
  targetId: string;
@@ -48,21 +49,23 @@ interface ITargetSelectionPage {
48
49
  postSetting,
49
50
  needApprovalOnPostCreation,
50
51
  }: FeedParams) => void;
52
+ onClickClose?: () => void;
51
53
  }
52
54
 
53
55
  const TargetSelectionPage = ({
54
56
  pageId,
55
57
  hideMyTimelineTarget = false,
56
58
  onSelectFeed,
59
+ onClickClose,
57
60
  }: ITargetSelectionPage) => {
58
61
  const { client } = useAuth();
59
- const navigation = useNavigation();
62
+
60
63
  const defaultTheme = useTheme() as MyMD3Theme;
61
64
 
62
65
  const user = useUser((client as Amity.Client).userId);
63
66
  const { communities, onNextCommunityPage, loading } = useCommunities();
64
67
  const { themeStyles, accessibilityId } = useAmityPage({ pageId });
65
-
68
+ const navigation = useNavigation<NativeStackNavigationProp<any>>();
66
69
  const theme = themeStyles || defaultTheme;
67
70
  const styles = useStyles(theme);
68
71
 
@@ -102,7 +105,12 @@ const TargetSelectionPage = ({
102
105
  <View style={styles.header}>
103
106
  <TouchableOpacity
104
107
  style={styles.closeButton}
105
- onPress={() => navigation.goBack()}
108
+ onPress={() => {
109
+ onClickClose?.();
110
+ if (navigation.canGoBack()) {
111
+ navigation.goBack();
112
+ }
113
+ }}
106
114
  >
107
115
  <CloseButtonIconElement style={styles.closeIcon} pageID={pageId} />
108
116
  </TouchableOpacity>
@@ -1,7 +1,10 @@
1
1
  import React from 'react';
2
2
  import { useAmityElement } from '../../../v4/hook';
3
3
  import { ComponentID, ElementID, PageID } from '../../../v4/enum';
4
- import Button, { BUTTON_SIZE, ButtonProps } from '../../../v4/component/Button/Button';
4
+ import Button, {
5
+ BUTTON_SIZE,
6
+ ButtonProps,
7
+ } from '../../../v4/component/Button/Button';
5
8
  import { useStyles } from './styles';
6
9
 
7
10
  type ActionButtonProps = ButtonProps & {
@@ -27,7 +27,7 @@ const ImageViewer: FC<ImageViewerProps> = ({
27
27
  images,
28
28
  onNextImage,
29
29
  onPreviousImage,
30
- onClose = () => { },
30
+ onClose = () => {},
31
31
  }) => {
32
32
  const [active, setActive] = useState(currentImageIndex);
33
33
  const scrollViewRef = useRef<ScrollView>(null);
@@ -27,7 +27,7 @@ const VideoViewer: FC<VideoViewerProps> = ({
27
27
  images,
28
28
  onNextImage,
29
29
  onPreviousImage,
30
- onClose = () => { },
30
+ onClose = () => {},
31
31
  }) => {
32
32
  const [active, setActive] = useState(currentImageIndex);
33
33
  const scrollViewRef = useRef<ScrollView>(null);
@@ -9,8 +9,17 @@ import { useBottomSheet } from '../../../../../../redux/slices/bottomSheetSlice'
9
9
  import MenuAction from '../../../../../../v4/elements/MenuAction';
10
10
  import { MemberRoles } from '../../../../../../v4/constants';
11
11
  import { useToast } from '../../../../../../v4/stores/slices/toast';
12
- import { demote, promote, report, trash, unreport } from '../../../../../../v4/assets/icons';
13
- import { checkEditRolePermission, isModerator } from '../../../../../../v4/utils/permissions';
12
+ import {
13
+ demote,
14
+ promote,
15
+ report,
16
+ trash,
17
+ unreport,
18
+ } from '../../../../../../v4/assets/icons';
19
+ import {
20
+ checkEditRolePermission,
21
+ isModerator,
22
+ } from '../../../../../../v4/utils/permissions';
14
23
  import {
15
24
  useRolesQuery,
16
25
  useMembersQuery,
@@ -5,7 +5,10 @@ import { Radio } from '../../../../../../v4/component/core/Radio';
5
5
  import { ElementID, PageID } from '../../../../../../v4/enum';
6
6
  import FormLabel from '../../../../../../v4/elements/FormLabel';
7
7
  import { AmityCommunityPrivacyEnum } from '../../types';
8
- import { public as $public, private as $private } from '../../../../../../v4/assets/icons';
8
+ import {
9
+ public as $public,
10
+ private as $private,
11
+ } from '../../../../../../v4/assets/icons';
9
12
  import { Title } from '../../../../../../v4/elements';
10
13
  import FormDescription from '../../../../../../v4/elements/FormDescription';
11
14
  import CommunityPrivacyIcon from '../../../../../../v4/elements/CommunityPrivacyIcon';
@@ -9,7 +9,10 @@ import {
9
9
 
10
10
  import { isValidImageType } from '../utils';
11
11
  import { useCameraPermission } from './usePermissions';
12
- import { deleteAmityFile, uploadImageFile } from '../../providers/file-provider';
12
+ import {
13
+ deleteAmityFile,
14
+ uploadImageFile,
15
+ } from '../../providers/file-provider';
13
16
 
14
17
  export type UseImagePickerResponse = {
15
18
  progress: number;
@@ -31,6 +31,7 @@ export const BehaviourProvider = ({
31
31
  AmityCommunitySettingPageBehavior: {},
32
32
  AmityCommunityMembershipPageBehavior: {},
33
33
  AmityCommunityNotificationSettingPageBehavior: {},
34
+ AmityPostComposerPageBehavior: {},
34
35
  }),
35
36
  []
36
37
  );