@amityco/react-native-social-uikit 4.0.0-RC20 → 4.0.0-RC21

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.
@@ -53,6 +53,17 @@ const AmityGlobalFeedComponent = ({
53
53
  const {
54
54
  handleViewChange
55
55
  } = (0, _usePostImpression.usePostImpression)(itemWithAds === null || itemWithAds === void 0 ? void 0 : itemWithAds.filter(item => (0, _useCustomRankingGlobalFeed.isAmityAd)(item) ? item === null || item === void 0 ? void 0 : item.adId : item === null || item === void 0 ? void 0 : item.postId));
56
+ const viewabilityConfig = (0, _react.useRef)({
57
+ viewAreaCoveragePercentThreshold: 60
58
+ }).current;
59
+ const listHeaderComponent = (0, _react.useMemo)(() => {
60
+ if (isShowStoryTab) {
61
+ return /*#__PURE__*/_react.default.createElement(_reactNative.View, null, GlobalFeedHeaderComponent, /*#__PURE__*/_react.default.createElement(_AmityStoryTabComponent.default, {
62
+ type: _types.AmityStoryTabComponentEnum.globalFeed
63
+ }));
64
+ }
65
+ return GlobalFeedHeaderComponent || null;
66
+ }, [isShowStoryTab, GlobalFeedHeaderComponent]);
56
67
  if (isExcluded) return null;
57
68
  return /*#__PURE__*/_react.default.createElement(_reactNative.FlatList, {
58
69
  initialNumToRender: 20,
@@ -73,7 +84,7 @@ const AmityGlobalFeedComponent = ({
73
84
  AmityPostContentComponentStyle: _AmityPostContentComponentStyle.AmityPostContentComponentStyleEnum.feed
74
85
  }));
75
86
  },
76
- keyExtractor: (item, index) => ((0, _useCustomRankingGlobalFeed.isAmityAd)(item) ? item.adId.toString() : item.postId.toString()) + `_${index}`,
87
+ keyExtractor: item => (0, _useCustomRankingGlobalFeed.isAmityAd)(item) ? item.adId.toString() : item.postId.toString(),
77
88
  onEndReachedThreshold: 0.5,
78
89
  onEndReached: handleLoadMore,
79
90
  ref: flatListRef,
@@ -84,12 +95,8 @@ const AmityGlobalFeedComponent = ({
84
95
  tintColor: "lightblue"
85
96
  }),
86
97
  keyboardShouldPersistTaps: "handled",
87
- ListHeaderComponent: !refreshing && !loading && isShowStoryTab ? /*#__PURE__*/_react.default.createElement(_reactNative.View, null, GlobalFeedHeaderComponent, /*#__PURE__*/_react.default.createElement(_AmityStoryTabComponent.default, {
88
- type: _types.AmityStoryTabComponentEnum.globalFeed
89
- })) : GlobalFeedHeaderComponent,
90
- viewabilityConfig: {
91
- viewAreaCoveragePercentThreshold: 60
92
- },
98
+ ListHeaderComponent: listHeaderComponent,
99
+ viewabilityConfig: viewabilityConfig,
93
100
  onViewableItemsChanged: handleViewChange,
94
101
  extraData: itemWithAds
95
102
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_AmityPostContentComponent","_interopRequireDefault","_enumUIKitID","_useUiKitReference","_AmityPostContentComponentStyle","_AmityStoryTabComponent","_types","_usePostImpression","_styles","_useCustomRankingGlobalFeed","_PostAdComponent","_Divider","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","globalFeedPageLimit","exports","AmityGlobalFeedComponent","pageId","isShowStoryTab","GlobalFeedHeaderComponent","itemWithAds","refresh","loading","onNextPage","componentId","ComponentID","global_feed_component","isExcluded","themeStyles","accessibilityId","useAmityComponent","refreshing","setRefreshing","useState","styles","useStyle","flatListRef","useRef","handleLoadMore","onRefresh","useCallback","handleViewChange","usePostImpression","filter","item","isAmityAd","adId","postId","createElement","FlatList","initialNumToRender","testID","accessibilityLabel","style","feedWrap","data","renderItem","index","Fragment","ad","post","AmityPostContentComponentStyle","AmityPostContentComponentStyleEnum","feed","keyExtractor","toString","onEndReachedThreshold","onEndReached","ref","refreshControl","RefreshControl","colors","tintColor","keyboardShouldPersistTaps","ListHeaderComponent","View","type","AmityStoryTabComponentEnum","globalFeed","viewabilityConfig","viewAreaCoveragePercentThreshold","onViewableItemsChanged","extraData","_default","memo"],"sourceRoot":"../../../../../../src","sources":["v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_AmityPostContentComponent","_interopRequireDefault","_enumUIKitID","_useUiKitReference","_AmityPostContentComponentStyle","_AmityStoryTabComponent","_types","_usePostImpression","_styles","_useCustomRankingGlobalFeed","_PostAdComponent","_Divider","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","globalFeedPageLimit","exports","AmityGlobalFeedComponent","pageId","isShowStoryTab","GlobalFeedHeaderComponent","itemWithAds","refresh","loading","onNextPage","componentId","ComponentID","global_feed_component","isExcluded","themeStyles","accessibilityId","useAmityComponent","refreshing","setRefreshing","useState","styles","useStyle","flatListRef","useRef","handleLoadMore","onRefresh","useCallback","handleViewChange","usePostImpression","filter","item","isAmityAd","adId","postId","viewabilityConfig","viewAreaCoveragePercentThreshold","current","listHeaderComponent","useMemo","createElement","View","type","AmityStoryTabComponentEnum","globalFeed","FlatList","initialNumToRender","testID","accessibilityLabel","style","feedWrap","data","renderItem","index","Fragment","ad","post","AmityPostContentComponentStyle","AmityPostContentComponentStyleEnum","feed","keyExtractor","toString","onEndReachedThreshold","onEndReached","ref","refreshControl","RefreshControl","colors","tintColor","keyboardShouldPersistTaps","ListHeaderComponent","onViewableItemsChanged","extraData","_default","memo"],"sourceRoot":"../../../../../../src","sources":["v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.tsx"],"mappings":"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","ignoreList":[]}
@@ -42,8 +42,10 @@ const useCustomRankingGlobalFeed = ({
42
42
  pageSize: _AmityGlobalFeedComponent.globalFeedPageLimit,
43
43
  getItemId: item => item.postId.toString()
44
44
  });
45
+ const hasInitialDataRef = (0, _react.useRef)(false);
45
46
  const fetchCustomRanking = (0, _react.useCallback)(() => {
46
47
  if (!isConnected) return null;
48
+ hasInitialDataRef.current = false;
47
49
  return _tsSdkReactNative.FeedRepository.getGlobalFeed({
48
50
  limit: _AmityGlobalFeedComponent.globalFeedPageLimit
49
51
  }, ({
@@ -53,7 +55,10 @@ const useCustomRankingGlobalFeed = ({
53
55
  onNextPage
54
56
  }) => {
55
57
  if (isLoading) {
56
- setFetching(true);
58
+ // Only show loading state on initial fetch, not on pagination
59
+ if (!hasInitialDataRef.current) {
60
+ setFetching(true);
61
+ }
57
62
  return;
58
63
  }
59
64
  if (onNextPage) onNextPageRef.current = onNextPage;
@@ -65,6 +70,7 @@ const useCustomRankingGlobalFeed = ({
65
70
  interactionHandleRef.current = _reactNative.InteractionManager.runAfterInteractions(() => {
66
71
  dispatch(setNewGlobalFeed(filtered));
67
72
  setFetching(false);
73
+ hasInitialDataRef.current = true;
68
74
  interactionHandleRef.current = null;
69
75
  });
70
76
  } else {
@@ -88,6 +94,7 @@ const useCustomRankingGlobalFeed = ({
88
94
  (_interactionHandleRef3 = interactionHandleRef.current) === null || _interactionHandleRef3 === void 0 || _interactionHandleRef3.cancel();
89
95
  interactionHandleRef.current = null;
90
96
  onNextPageRef.current = null;
97
+ hasInitialDataRef.current = false;
91
98
  unsubscribeRef.current = fetchCustomRanking();
92
99
  }, [fetchCustomRanking]);
93
100
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["_tsSdkReactNative","require","_react","_reactNative","_globalfeedSlice","_interopRequireDefault","_AmityGlobalFeedComponent","_store","_usePaginator","_useAuth","e","__esModule","default","isAmityAd","item","adId","undefined","exports","useCustomRankingGlobalFeed","enabled","isConnected","useAuth","dispatch","useUIKitDispatch","unsubscribeRef","useRef","onNextPageRef","interactionHandleRef","setNewGlobalFeed","globalFeedSlice","actions","fetching","setFetching","useState","error","setError","postList","useUIKitSelector","state","globalFeed","itemWithAds","usePaginatorApi","items","isLoading","placement","pageSize","globalFeedPageLimit","getItemId","postId","toString","fetchCustomRanking","useCallback","FeedRepository","getGlobalFeed","limit","data","loading","$error","onNextPage","current","_interactionHandleRef","filtered","filter","post","structureType","PostStructureType","AUDIO","FILE","MIXED","cancel","InteractionManager","runAfterInteractions","useEffect","_unsubscribeRef$curre","_interactionHandleRef2","call","refresh","_unsubscribeRef$curre2","_interactionHandleRef3","globalFeedPosts"],"sourceRoot":"../../../../src","sources":["v4/hook/useCustomRankingGlobalFeed.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_tsSdkReactNative","require","_react","_reactNative","_globalfeedSlice","_interopRequireDefault","_AmityGlobalFeedComponent","_store","_usePaginator","_useAuth","e","__esModule","default","isAmityAd","item","adId","undefined","exports","useCustomRankingGlobalFeed","enabled","isConnected","useAuth","dispatch","useUIKitDispatch","unsubscribeRef","useRef","onNextPageRef","interactionHandleRef","setNewGlobalFeed","globalFeedSlice","actions","fetching","setFetching","useState","error","setError","postList","useUIKitSelector","state","globalFeed","itemWithAds","usePaginatorApi","items","isLoading","placement","pageSize","globalFeedPageLimit","getItemId","postId","toString","hasInitialDataRef","fetchCustomRanking","useCallback","current","FeedRepository","getGlobalFeed","limit","data","loading","$error","onNextPage","_interactionHandleRef","filtered","filter","post","structureType","PostStructureType","AUDIO","FILE","MIXED","cancel","InteractionManager","runAfterInteractions","useEffect","_unsubscribeRef$curre","_interactionHandleRef2","call","refresh","_unsubscribeRef$curre2","_interactionHandleRef3","globalFeedPosts"],"sourceRoot":"../../../../src","sources":["v4/hook/useCustomRankingGlobalFeed.ts"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,4 @@
1
- import React, { memo, useCallback, useRef, useState } from 'react';
1
+ import React, { memo, useCallback, useMemo, useRef, useState } from 'react';
2
2
  import { FlatList, View } from 'react-native';
3
3
  import { RefreshControl } from 'react-native';
4
4
  import AmityPostContentComponent from '../AmityPostContentComponent/AmityPostContentComponent';
@@ -46,6 +46,17 @@ const AmityGlobalFeedComponent = ({
46
46
  const {
47
47
  handleViewChange
48
48
  } = usePostImpression(itemWithAds === null || itemWithAds === void 0 ? void 0 : itemWithAds.filter(item => isAmityAd(item) ? item === null || item === void 0 ? void 0 : item.adId : item === null || item === void 0 ? void 0 : item.postId));
49
+ const viewabilityConfig = useRef({
50
+ viewAreaCoveragePercentThreshold: 60
51
+ }).current;
52
+ const listHeaderComponent = useMemo(() => {
53
+ if (isShowStoryTab) {
54
+ return /*#__PURE__*/React.createElement(View, null, GlobalFeedHeaderComponent, /*#__PURE__*/React.createElement(AmityStoryTabComponent, {
55
+ type: AmityStoryTabComponentEnum.globalFeed
56
+ }));
57
+ }
58
+ return GlobalFeedHeaderComponent || null;
59
+ }, [isShowStoryTab, GlobalFeedHeaderComponent]);
49
60
  if (isExcluded) return null;
50
61
  return /*#__PURE__*/React.createElement(FlatList, {
51
62
  initialNumToRender: 20,
@@ -66,7 +77,7 @@ const AmityGlobalFeedComponent = ({
66
77
  AmityPostContentComponentStyle: AmityPostContentComponentStyleEnum.feed
67
78
  }));
68
79
  },
69
- keyExtractor: (item, index) => (isAmityAd(item) ? item.adId.toString() : item.postId.toString()) + `_${index}`,
80
+ keyExtractor: item => isAmityAd(item) ? item.adId.toString() : item.postId.toString(),
70
81
  onEndReachedThreshold: 0.5,
71
82
  onEndReached: handleLoadMore,
72
83
  ref: flatListRef,
@@ -77,12 +88,8 @@ const AmityGlobalFeedComponent = ({
77
88
  tintColor: "lightblue"
78
89
  }),
79
90
  keyboardShouldPersistTaps: "handled",
80
- ListHeaderComponent: !refreshing && !loading && isShowStoryTab ? /*#__PURE__*/React.createElement(View, null, GlobalFeedHeaderComponent, /*#__PURE__*/React.createElement(AmityStoryTabComponent, {
81
- type: AmityStoryTabComponentEnum.globalFeed
82
- })) : GlobalFeedHeaderComponent,
83
- viewabilityConfig: {
84
- viewAreaCoveragePercentThreshold: 60
85
- },
91
+ ListHeaderComponent: listHeaderComponent,
92
+ viewabilityConfig: viewabilityConfig,
86
93
  onViewableItemsChanged: handleViewChange,
87
94
  extraData: itemWithAds
88
95
  });
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","useCallback","useRef","useState","FlatList","View","RefreshControl","AmityPostContentComponent","ComponentID","useAmityComponent","AmityPostContentComponentStyleEnum","AmityStoryTabComponent","AmityStoryTabComponentEnum","usePostImpression","useStyle","isAmityAd","PostAdComponent","Divider","globalFeedPageLimit","AmityGlobalFeedComponent","pageId","isShowStoryTab","GlobalFeedHeaderComponent","itemWithAds","refresh","loading","onNextPage","componentId","global_feed_component","isExcluded","themeStyles","accessibilityId","refreshing","setRefreshing","styles","flatListRef","handleLoadMore","onRefresh","handleViewChange","filter","item","adId","postId","createElement","initialNumToRender","testID","accessibilityLabel","style","feedWrap","data","renderItem","index","Fragment","ad","post","AmityPostContentComponentStyle","feed","keyExtractor","toString","onEndReachedThreshold","onEndReached","ref","refreshControl","colors","tintColor","keyboardShouldPersistTaps","ListHeaderComponent","type","globalFeed","viewabilityConfig","viewAreaCoveragePercentThreshold","onViewableItemsChanged","extraData"],"sourceRoot":"../../../../../../src","sources":["v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","useCallback","useMemo","useRef","useState","FlatList","View","RefreshControl","AmityPostContentComponent","ComponentID","useAmityComponent","AmityPostContentComponentStyleEnum","AmityStoryTabComponent","AmityStoryTabComponentEnum","usePostImpression","useStyle","isAmityAd","PostAdComponent","Divider","globalFeedPageLimit","AmityGlobalFeedComponent","pageId","isShowStoryTab","GlobalFeedHeaderComponent","itemWithAds","refresh","loading","onNextPage","componentId","global_feed_component","isExcluded","themeStyles","accessibilityId","refreshing","setRefreshing","styles","flatListRef","handleLoadMore","onRefresh","handleViewChange","filter","item","adId","postId","viewabilityConfig","viewAreaCoveragePercentThreshold","current","listHeaderComponent","createElement","type","globalFeed","initialNumToRender","testID","accessibilityLabel","style","feedWrap","data","renderItem","index","Fragment","ad","post","AmityPostContentComponentStyle","feed","keyExtractor","toString","onEndReachedThreshold","onEndReached","ref","refreshControl","colors","tintColor","keyboardShouldPersistTaps","ListHeaderComponent","onViewableItemsChanged","extraData"],"sourceRoot":"../../../../../../src","sources":["v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.tsx"],"mappings":"AAAA,OAAOA,KAAK,IAAQC,IAAI,EAAEC,WAAW,EAAEC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAC/E,SAASC,QAAQ,EAAEC,IAAI,QAAQ,cAAc;AAE7C,SAASC,cAAc,QAAQ,cAAc;AAC7C,OAAOC,yBAAyB,MAAM,wDAAwD;AAC9F,SAASC,WAAW,QAAgB,2BAA2B;AAC/D,SAASC,iBAAiB,QAAQ,iCAAiC;AACnE,SAASC,kCAAkC,QAAQ,8CAA8C;AACjG,OAAOC,sBAAsB,MAAM,kDAAkD;AACrF,SAASC,0BAA0B,QAAQ,aAAa;AACxD,SAASC,iBAAiB,QAAQ,uCAAuC;AACzE,SAASC,QAAQ,QAAQ,UAAU;AACnC,SAASC,SAAS,QAAQ,0CAA0C;AACpE,OAAOC,eAAe,MAAM,oDAAoD;AAChF,OAAOC,OAAO,MAAM,4BAA4B;AAYhD,OAAO,MAAMC,mBAAmB,GAAG,EAAE;AAErC,MAAMC,wBAA0D,GAAGA,CAAC;EAClEC,MAAM;EACNC,cAAc,GAAG,IAAI;EACrBC,yBAAyB;EACzBC,WAAW;EACXC,OAAO;EACPC,OAAO;EACPC;AACF,CAAC,KAAK;EACJ,MAAMC,WAAW,GAAGnB,WAAW,CAACoB,qBAAqB;EACrD,MAAM;IAAEC,UAAU;IAAEC,WAAW;IAAEC;EAAgB,CAAC,GAAGtB,iBAAiB,CAAC;IACrEW,MAAM;IACNO;EACF,CAAC,CAAC;EAEF,MAAM,CAACK,UAAU,EAAEC,aAAa,CAAC,GAAG9B,QAAQ,CAAC,KAAK,CAAC;EACnD,MAAM+B,MAAM,GAAGpB,QAAQ,CAAC,CAAC;EACzB,MAAMqB,WAAW,GAAGjC,MAAM,CAAC,IAAI,CAAC;EAEhC,MAAMkC,cAAc,GAAGA,CAAA,KAAM;IAC3B,IAAIX,OAAO,IAAI,CAACC,UAAU,EAAE;IAC5BA,UAAU,aAAVA,UAAU,eAAVA,UAAU,CAAG,CAAC;EAChB,CAAC;EAED,MAAMW,SAAS,GAAGrC,WAAW,CAAC,YAAY;IACxCiC,aAAa,CAAC,IAAI,CAAC;IACnB,MAAMT,OAAO,CAAC,CAAC;IACfS,aAAa,CAAC,KAAK,CAAC;EACtB,CAAC,EAAE,CAACT,OAAO,CAAC,CAAC;EAEb,MAAM;IAAEc;EAAiB,CAAC,GAAGzB,iBAAiB,CAC5CU,WAAW,aAAXA,WAAW,uBAAXA,WAAW,CAAEgB,MAAM,CAAEC,IAA2B,IAC9CzB,SAAS,CAACyB,IAAI,CAAC,GAAGA,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEC,IAAI,GAAGD,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEE,MACvC,CACF,CAAC;EAED,MAAMC,iBAAiB,GAAGzC,MAAM,CAAC;IAC/B0C,gCAAgC,EAAE;EACpC,CAAC,CAAC,CAACC,OAAO;EAEV,MAAMC,mBAAmB,GAAG7C,OAAO,CAAC,MAAM;IACxC,IAAIoB,cAAc,EAAE;MAClB,oBACEvB,KAAA,CAAAiD,aAAA,CAAC1C,IAAI,QACFiB,yBAAyB,eAC1BxB,KAAA,CAAAiD,aAAA,CAACpC,sBAAsB;QACrBqC,IAAI,EAAEpC,0BAA0B,CAACqC;MAAW,CAC7C,CACG,CAAC;IAEX;IACA,OAAO3B,yBAAyB,IAAI,IAAI;EAC1C,CAAC,EAAE,CAACD,cAAc,EAAEC,yBAAyB,CAAC,CAAC;EAE/C,IAAIO,UAAU,EAAE,OAAO,IAAI;EAE3B,oBACE/B,KAAA,CAAAiD,aAAA,CAAC3C,QAAQ;IACP8C,kBAAkB,EAAE,EAAG;IACvBC,MAAM,EAAEpB,eAAgB;IACxBqB,kBAAkB,EAAErB,eAAgB;IACpCsB,KAAK,EAAEnB,MAAM,CAACoB,QAAS;IACvBC,IAAI,EAAEhC,WAAY;IAClBiC,UAAU,EAAEA,CAAC;MAAEhB,IAAI;MAAEiB;IAAM,CAAC,KAAK;MAC/B,oBACE3D,KAAA,CAAAiD,aAAA,CAAAjD,KAAA,CAAA4D,QAAA,QACGD,KAAK,KAAK,CAAC,iBAAI3D,KAAA,CAAAiD,aAAA,CAAC9B,OAAO;QAACa,WAAW,EAAEA;MAAY,CAAE,CAAC,EACpDf,SAAS,CAACyB,IAAI,CAAC,gBACd1C,KAAA,CAAAiD,aAAA,CAAC/B,eAAe;QAAC2C,EAAE,EAAEnB;MAAiB,CAAE,CAAC,gBAEzC1C,KAAA,CAAAiD,aAAA,CAACxC,yBAAyB;QACxBqD,IAAI,EAAEpB,IAAmB;QACzBqB,8BAA8B,EAC5BnD,kCAAkC,CAACoD;MACpC,CACF,CAEH,CAAC;IAEP,CAAE;IACFC,YAAY,EAAGvB,IAAI,IACjBzB,SAAS,CAACyB,IAAI,CAAC,GAAGA,IAAI,CAACC,IAAI,CAACuB,QAAQ,CAAC,CAAC,GAAGxB,IAAI,CAACE,MAAM,CAACsB,QAAQ,CAAC,CAC/D;IACDC,qBAAqB,EAAE,GAAI;IAC3BC,YAAY,EAAE9B,cAAe;IAC7B+B,GAAG,EAAEhC,WAAY;IACjBiC,cAAc,eACZtE,KAAA,CAAAiD,aAAA,CAACzC,cAAc;MACb0B,UAAU,EAAEA,UAAW;MACvBK,SAAS,EAAEA,SAAU;MACrBgC,MAAM,EAAE,CAAC,WAAW,CAAE;MACtBC,SAAS,EAAC;IAAW,CACtB,CACF;IACDC,yBAAyB,EAAC,SAAS;IACnCC,mBAAmB,EAAE1B,mBAAoB;IACzCH,iBAAiB,EAAEA,iBAAkB;IACrC8B,sBAAsB,EAAEnC,gBAAiB;IACzCoC,SAAS,EAAEnD;EAAY,CACxB,CAAC;AAEN,CAAC;AAED,4BAAexB,IAAI,CAACoB,wBAAwB,CAAC","ignoreList":[]}
@@ -34,8 +34,10 @@ export const useCustomRankingGlobalFeed = ({
34
34
  pageSize: globalFeedPageLimit,
35
35
  getItemId: item => item.postId.toString()
36
36
  });
37
+ const hasInitialDataRef = useRef(false);
37
38
  const fetchCustomRanking = useCallback(() => {
38
39
  if (!isConnected) return null;
40
+ hasInitialDataRef.current = false;
39
41
  return FeedRepository.getGlobalFeed({
40
42
  limit: globalFeedPageLimit
41
43
  }, ({
@@ -45,7 +47,10 @@ export const useCustomRankingGlobalFeed = ({
45
47
  onNextPage
46
48
  }) => {
47
49
  if (isLoading) {
48
- setFetching(true);
50
+ // Only show loading state on initial fetch, not on pagination
51
+ if (!hasInitialDataRef.current) {
52
+ setFetching(true);
53
+ }
49
54
  return;
50
55
  }
51
56
  if (onNextPage) onNextPageRef.current = onNextPage;
@@ -57,6 +62,7 @@ export const useCustomRankingGlobalFeed = ({
57
62
  interactionHandleRef.current = InteractionManager.runAfterInteractions(() => {
58
63
  dispatch(setNewGlobalFeed(filtered));
59
64
  setFetching(false);
65
+ hasInitialDataRef.current = true;
60
66
  interactionHandleRef.current = null;
61
67
  });
62
68
  } else {
@@ -80,6 +86,7 @@ export const useCustomRankingGlobalFeed = ({
80
86
  (_interactionHandleRef3 = interactionHandleRef.current) === null || _interactionHandleRef3 === void 0 || _interactionHandleRef3.cancel();
81
87
  interactionHandleRef.current = null;
82
88
  onNextPageRef.current = null;
89
+ hasInitialDataRef.current = false;
83
90
  unsubscribeRef.current = fetchCustomRanking();
84
91
  }, [fetchCustomRanking]);
85
92
  return {
@@ -1 +1 @@
1
- {"version":3,"names":["FeedRepository","PostStructureType","useCallback","useEffect","useRef","useState","InteractionManager","globalFeedSlice","globalFeedPageLimit","useUIKitDispatch","useUIKitSelector","usePaginatorApi","useAuth","isAmityAd","item","adId","undefined","useCustomRankingGlobalFeed","enabled","isConnected","dispatch","unsubscribeRef","onNextPageRef","interactionHandleRef","setNewGlobalFeed","actions","fetching","setFetching","error","setError","postList","state","globalFeed","itemWithAds","items","isLoading","placement","pageSize","getItemId","postId","toString","fetchCustomRanking","getGlobalFeed","limit","data","loading","$error","onNextPage","current","_interactionHandleRef","filtered","filter","post","structureType","AUDIO","FILE","MIXED","cancel","runAfterInteractions","_unsubscribeRef$curre","_interactionHandleRef2","call","refresh","_unsubscribeRef$curre2","_interactionHandleRef3","globalFeedPosts"],"sourceRoot":"../../../../src","sources":["v4/hook/useCustomRankingGlobalFeed.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["FeedRepository","PostStructureType","useCallback","useEffect","useRef","useState","InteractionManager","globalFeedSlice","globalFeedPageLimit","useUIKitDispatch","useUIKitSelector","usePaginatorApi","useAuth","isAmityAd","item","adId","undefined","useCustomRankingGlobalFeed","enabled","isConnected","dispatch","unsubscribeRef","onNextPageRef","interactionHandleRef","setNewGlobalFeed","actions","fetching","setFetching","error","setError","postList","state","globalFeed","itemWithAds","items","isLoading","placement","pageSize","getItemId","postId","toString","hasInitialDataRef","fetchCustomRanking","current","getGlobalFeed","limit","data","loading","$error","onNextPage","_interactionHandleRef","filtered","filter","post","structureType","AUDIO","FILE","MIXED","cancel","runAfterInteractions","_unsubscribeRef$curre","_interactionHandleRef2","call","refresh","_unsubscribeRef$curre2","_interactionHandleRef3","globalFeedPosts"],"sourceRoot":"../../../../src","sources":["v4/hook/useCustomRankingGlobalFeed.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"AmityGlobalFeedComponent.d.ts","sourceRoot":"","sources":["../../../../../../../src/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAKvE,OAAO,EAAe,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAWhE,KAAK,4BAA4B,GAAG;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yBAAyB,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IAC/C,WAAW,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;IACnD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,KAAK,CAAC;;AAmGtC,wBAA8C"}
1
+ {"version":3,"file":"AmityGlobalFeedComponent.d.ts","sourceRoot":"","sources":["../../../../../../../src/v4/PublicApi/Components/AmityGlobalFeedComponent/AmityGlobalFeedComponent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAKhF,OAAO,EAAe,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAWhE,KAAK,4BAA4B,GAAG;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,yBAAyB,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC;IAC/C,WAAW,EAAE,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC;IACnD,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;CACjC,CAAC;AAEF,eAAO,MAAM,mBAAmB,KAAK,CAAC;;AAyGtC,wBAA8C"}
@@ -1 +1 @@
1
- {"version":3,"file":"useCustomRankingGlobalFeed.d.ts","sourceRoot":"","sources":["../../../../../src/v4/hook/useCustomRankingGlobalFeed.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAG/D,eAAO,MAAM,SAAS,GACpB,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,GAAG,QAAQ,KAC1C,IAAI,IAAI,KAAK,CAAC,EAEhB,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,eAExC,0BAA+B;;;;sBAIG,IAAI,GAAG,IAAI;;;CAmF/C,CAAC"}
1
+ {"version":3,"file":"useCustomRankingGlobalFeed.d.ts","sourceRoot":"","sources":["../../../../../src/v4/hook/useCustomRankingGlobalFeed.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAG/D,eAAO,MAAM,SAAS,GACpB,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,EAAE,GAAG,QAAQ,KAC1C,IAAI,IAAI,KAAK,CAAC,EAEhB,CAAC;AAEF,KAAK,0BAA0B,GAAG;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,eAExC,0BAA+B;;;;sBAIG,IAAI,GAAG,IAAI;;;CA4F/C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@amityco/react-native-social-uikit",
3
- "version": "4.0.0-RC20",
3
+ "version": "4.0.0-RC21",
4
4
  "description": "Social UIKit",
5
5
  "main": "lib/commonjs/index",
6
6
  "module": "lib/module/index",
@@ -1,4 +1,4 @@
1
- import React, { FC, memo, useCallback, useRef, useState } from 'react';
1
+ import React, { FC, memo, useCallback, useMemo, useRef, useState } from 'react';
2
2
  import { FlatList, View } from 'react-native';
3
3
 
4
4
  import { RefreshControl } from 'react-native';
@@ -62,6 +62,24 @@ const AmityGlobalFeedComponent: FC<AmityGlobalFeedComponentType> = ({
62
62
  )
63
63
  );
64
64
 
65
+ const viewabilityConfig = useRef({
66
+ viewAreaCoveragePercentThreshold: 60,
67
+ }).current;
68
+
69
+ const listHeaderComponent = useMemo(() => {
70
+ if (isShowStoryTab) {
71
+ return (
72
+ <View>
73
+ {GlobalFeedHeaderComponent}
74
+ <AmityStoryTabComponent
75
+ type={AmityStoryTabComponentEnum.globalFeed}
76
+ />
77
+ </View>
78
+ );
79
+ }
80
+ return GlobalFeedHeaderComponent || null;
81
+ }, [isShowStoryTab, GlobalFeedHeaderComponent]);
82
+
65
83
  if (isExcluded) return null;
66
84
 
67
85
  return (
@@ -88,9 +106,8 @@ const AmityGlobalFeedComponent: FC<AmityGlobalFeedComponentType> = ({
88
106
  </>
89
107
  );
90
108
  }}
91
- keyExtractor={(item, index) =>
92
- (isAmityAd(item) ? item.adId.toString() : item.postId.toString()) +
93
- `_${index}`
109
+ keyExtractor={(item) =>
110
+ isAmityAd(item) ? item.adId.toString() : item.postId.toString()
94
111
  }
95
112
  onEndReachedThreshold={0.5}
96
113
  onEndReached={handleLoadMore}
@@ -104,19 +121,8 @@ const AmityGlobalFeedComponent: FC<AmityGlobalFeedComponentType> = ({
104
121
  />
105
122
  }
106
123
  keyboardShouldPersistTaps="handled"
107
- ListHeaderComponent={
108
- !refreshing && !loading && isShowStoryTab ? (
109
- <View>
110
- {GlobalFeedHeaderComponent}
111
- <AmityStoryTabComponent
112
- type={AmityStoryTabComponentEnum.globalFeed}
113
- />
114
- </View>
115
- ) : (
116
- GlobalFeedHeaderComponent
117
- )
118
- }
119
- viewabilityConfig={{ viewAreaCoveragePercentThreshold: 60 }}
124
+ ListHeaderComponent={listHeaderComponent}
125
+ viewabilityConfig={viewabilityConfig}
120
126
  onViewableItemsChanged={handleViewChange}
121
127
  extraData={itemWithAds}
122
128
  />
@@ -50,14 +50,21 @@ export const useCustomRankingGlobalFeed = ({
50
50
  getItemId: (item) => (item as Amity.Post).postId.toString(),
51
51
  });
52
52
 
53
+ const hasInitialDataRef = useRef(false);
54
+
53
55
  const fetchCustomRanking = useCallback(() => {
54
56
  if (!isConnected) return null;
55
57
 
58
+ hasInitialDataRef.current = false;
59
+
56
60
  return FeedRepository.getGlobalFeed(
57
61
  { limit: globalFeedPageLimit },
58
62
  ({ data, loading: isLoading, error: $error, onNextPage }) => {
59
63
  if (isLoading) {
60
- setFetching(true);
64
+ // Only show loading state on initial fetch, not on pagination
65
+ if (!hasInitialDataRef.current) {
66
+ setFetching(true);
67
+ }
61
68
  return;
62
69
  }
63
70
 
@@ -76,6 +83,7 @@ export const useCustomRankingGlobalFeed = ({
76
83
  InteractionManager.runAfterInteractions(() => {
77
84
  dispatch(setNewGlobalFeed(filtered));
78
85
  setFetching(false);
86
+ hasInitialDataRef.current = true;
79
87
  interactionHandleRef.current = null;
80
88
  });
81
89
  } else {
@@ -102,6 +110,7 @@ export const useCustomRankingGlobalFeed = ({
102
110
  interactionHandleRef.current?.cancel();
103
111
  interactionHandleRef.current = null;
104
112
  onNextPageRef.current = null;
113
+ hasInitialDataRef.current = false;
105
114
 
106
115
  unsubscribeRef.current = fetchCustomRanking();
107
116
  }, [fetchCustomRanking]);