This repository has no description
0

Configure Feed

Select the types of activity you want to include in your feed.

fix

+28 -7
+28 -7
src/app/api/bluesky/stats/route.ts
··· 209 209 console.log(`Final total count: ${totalCount}`); 210 210 211 211 212 - // 2. Get daily flush counts for the chart and emoji data 213 - const { data: dailyData, error: dailyError } = await supabase 214 - .from('flushing_records') 215 - .select('created_at, did, handle, emoji') 216 - .order('created_at', { ascending: true }); 212 + // 2. Get daily flush counts for the chart and emoji data - PAGINATE to get all records 213 + console.log('Fetching ALL flushing records for chart data...'); 214 + let allDailyData: any[] = []; 215 + let from = 0; 216 + const pageSize = 1000; 217 + let hasMore = true; 217 218 218 - if (dailyError) { 219 - throw new Error(`Failed to get daily data: ${dailyError.message}`); 219 + while (hasMore) { 220 + console.log(`Fetching daily data page: ${from} to ${from + pageSize - 1}`); 221 + 222 + const { data: pageData, error: pageError } = await supabase 223 + .from('flushing_records') 224 + .select('created_at, did, handle, emoji') 225 + .order('created_at', { ascending: true }) 226 + .range(from, from + pageSize - 1); 227 + 228 + if (pageError) { 229 + throw new Error(`Failed to get daily data: ${pageError.message}`); 230 + } 231 + 232 + if (!pageData || pageData.length === 0) { 233 + hasMore = false; 234 + } else { 235 + allDailyData = [...allDailyData, ...pageData]; 236 + hasMore = pageData.length === pageSize; 237 + from += pageSize; 238 + } 220 239 } 240 + 241 + const dailyData = allDailyData; 221 242 222 243 console.log(`Total records fetched: ${dailyData?.length || 0}`); 223 244 if (dailyData && dailyData.length > 0) {