···238238 return year >= 2025;
239239 });
240240241241- // Get the earliest and latest dates to ensure all months are included
241241+ // Initialize all months from Jan 2025 to current month (or Dec 2025 if in future years)
242242+ const now = new Date();
243243+ const currentYear = now.getFullYear();
244244+ const currentMonthNum = now.getMonth(); // 0-11
245245+246246+ // Start from January 2025
247247+ const startMonth = new Date(2025, 0, 1);
248248+249249+ // End at current month if we're in 2025, otherwise go to Dec 2025
250250+ const endMonth = currentYear === 2025
251251+ ? new Date(currentYear, currentMonthNum, 1)
252252+ : new Date(2025, 11, 1); // December 2025
253253+254254+ let currentMonth = new Date(startMonth);
255255+ while (currentMonth <= endMonth) {
256256+ const monthKey = `${currentMonth.getFullYear()}-${String(currentMonth.getMonth() + 1).padStart(2, '0')}`;
257257+ monthlyCounts.set(monthKey, 0);
258258+ currentMonth.setMonth(currentMonth.getMonth() + 1);
259259+ }
260260+261261+ // Process each entry to get monthly counts
242262 if (data2025Plus && data2025Plus.length > 0) {
243243- const dates = data2025Plus.map(e => new Date(e.created_at));
244244- const minDate = new Date(Math.min(...dates.map(d => d.getTime())));
245245- const maxDate = new Date(Math.max(...dates.map(d => d.getTime())));
246246-247247- // Initialize all months with 0 (starting from Jan 2025 or the earliest date)
248248- const startMonth = new Date(Math.max(minDate.getTime(), new Date(2025, 0, 1).getTime()));
249249- const currentMonth = new Date(startMonth.getFullYear(), startMonth.getMonth(), 1);
250250- const endMonth = new Date(maxDate.getFullYear(), maxDate.getMonth(), 1);
251251-252252- while (currentMonth <= endMonth) {
253253- const monthKey = `${currentMonth.getFullYear()}-${String(currentMonth.getMonth() + 1).padStart(2, '0')}`;
254254- monthlyCounts.set(monthKey, 0);
255255- currentMonth.setMonth(currentMonth.getMonth() + 1);
256256- }
257257-258258- // Process each entry to get monthly counts
259263 data2025Plus.forEach(entry => {
260264 const date = new Date(entry.created_at);
261265 const monthKey = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}`;
+23-19
src/app/profile/[handle]/page.tsx
···379379 return year >= 2025;
380380 });
381381382382+ // Initialize all months from Jan 2025 to current month (or Dec 2025 if in future years)
383383+ const now = new Date();
384384+ const currentYear = now.getFullYear();
385385+ const currentMonthNum = now.getMonth(); // 0-11
386386+387387+ // Start from January 2025
388388+ const startMonth = new Date(2025, 0, 1);
389389+390390+ // End at current month if we're in 2025, otherwise go to Dec 2025
391391+ const endMonth = currentYear === 2025
392392+ ? new Date(currentYear, currentMonthNum, 1)
393393+ : new Date(2025, 11, 1); // December 2025
394394+395395+ let currentMonth = new Date(startMonth);
396396+ while (currentMonth <= endMonth) {
397397+ const monthKey = `${currentMonth.getFullYear()}-${String(currentMonth.getMonth() + 1).padStart(2, '0')}`;
398398+ chartDataMap.set(monthKey, 0);
399399+ currentMonth.setMonth(currentMonth.getMonth() + 1);
400400+ }
401401+402402+ // Group entries by month
382403 if (entries2025Plus.length > 0) {
383383- // Get the earliest and latest dates from 2025+ entries
384384- const dates = entries2025Plus.map(e => new Date(e.created_at));
385385- const minDate = new Date(Math.min(...dates.map(d => d.getTime())));
386386- const maxDate = new Date(Math.max(...dates.map(d => d.getTime())));
387387-388388- // Initialize all months with 0 (starting from Jan 2025 or the earliest date)
389389- const startMonth = new Date(Math.max(minDate.getTime(), new Date(2025, 0, 1).getTime()));
390390- const currentMonth = new Date(startMonth.getFullYear(), startMonth.getMonth(), 1);
391391- const endMonth = new Date(maxDate.getFullYear(), maxDate.getMonth(), 1);
392392-393393- while (currentMonth <= endMonth) {
394394- const monthKey = `${currentMonth.getFullYear()}-${String(currentMonth.getMonth() + 1).padStart(2, '0')}`;
395395- chartDataMap.set(monthKey, 0);
396396- currentMonth.setMonth(currentMonth.getMonth() + 1);
397397- }
398398-399399- // Group entries by month
400404 entries2025Plus.forEach((entry: FlushingEntry) => {
401405 const date = new Date(entry.created_at);
402406 const monthKey = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}`;
···578582 </div>
579583580584 <div className={styles.wrappedCard}>
581581- <div className={styles.wrappedValue}>{wrapped2025Data.activeStreak}</div>
585585+ <div className={styles.wrappedValue}>{wrapped2025Data.activeStreak} days</div>
582586 <div className={styles.wrappedLabel}>Longest Streak</div>
583587 </div>
584588···588592 </div>
589593590594 <div className={styles.wrappedCard}>
591591- <div className={styles.wrappedValue}>{wrapped2025Data.avgStatusLength}</div>
595595+ <div className={styles.wrappedValue}>{wrapped2025Data.avgStatusLength}/59</div>
592596 <div className={styles.wrappedLabel}>Avg. Characters</div>
593597 </div>
594598