@@ -89,7 +89,12 @@ export const useRemixes = (
8989 } ) ,
9090 initialPageParam : 0 ,
9191 getNextPageParam : ( lastPage : RemixesQueryData , allPages ) => {
92- if ( lastPage ?. tracks ?. length < pageSize ) return undefined
92+ const isSecondPage = allPages . length === 1
93+ if (
94+ lastPage ?. tracks ?. length < pageSize ||
95+ ( isSecondPage && includeOriginal && lastPage ?. tracks ?. length - 1 === 0 )
96+ )
97+ return undefined
9398 return allPages . reduce ( ( acc , page ) => acc + page . tracks . length , 0 )
9499 } ,
95100 queryFn : async ( { pageParam } ) => {
@@ -104,20 +109,19 @@ export const useRemixes = (
104109 onlyCosigns : isCosign ,
105110 onlyContestEntries : isContestEntry
106111 } )
107- const processedTracks = transformAndCleanList (
112+ let processedTracks = transformAndCleanList (
108113 data . tracks ,
109114 userTrackMetadataFromSDK
110115 )
111116
112117 primeTrackData ( { tracks : processedTracks , queryClient, dispatch } )
113118
114- let tracksWithOriginal
115119 if ( includeOriginal && pageParam === 0 ) {
116120 const track = queryClient . getQueryData ( getTrackQueryKey ( trackId ) )
117121 if ( track && data . tracks ) {
118122 const user = queryClient . getQueryData ( getUserQueryKey ( track . owner_id ) )
119123 if ( user ) {
120- tracksWithOriginal = [ { ...track , user } , ...processedTracks ]
124+ processedTracks = [ { ...track , user } , ...processedTracks ]
121125 }
122126 }
123127 }
@@ -128,7 +132,7 @@ export const useRemixes = (
128132 pageParam ,
129133 pageSize ,
130134 false ,
131- { items : tracksWithOriginal ?? processedTracks }
135+ { items : processedTracks }
132136 )
133137 )
134138 dispatch ( remixesPageActions . setCount ( { count : data . count } ) )
0 commit comments