idk
All checks were successful
Deploy UI / deploy (push) Successful in 2s

This commit is contained in:
Your Name 2026-05-19 20:38:39 -04:00
parent 528813d4a0
commit 7d21081780
3 changed files with 14 additions and 6 deletions

View file

@ -18,6 +18,14 @@ function clearStoredApiKey() {
localStorage.removeItem(API_KEY_STORAGE_KEY);
}
// Get local date string in YYYY-MM-DD format (not UTC)
function toLocalDateString(date) {
const year = date.getFullYear();
const month = String(date.getMonth() + 1).padStart(2, '0');
const day = String(date.getDate()).padStart(2, '0');
return `${year}-${month}-${day}`;
}
// Authenticated fetch wrapper
async function authFetch(url, options = {}) {
const apiKey = getStoredApiKey();
@ -364,7 +372,7 @@ function App() {
setSelectedDayState(route.day);
} else if (recordings.length > 0) {
const sorted = [...recordings].sort((a, b) => b.startTime - a.startTime);
setSelectedDayState(sorted[0].startTime.toISOString().slice(0, 10));
setSelectedDayState(toLocalDateString(sorted[0].startTime));
}
// If URL has a recording ID, fetch it
@ -503,7 +511,7 @@ function App() {
}
// Export utilities for other components
Object.assign(window, { authFetch, getStoredApiKey });
Object.assign(window, { authFetch, getStoredApiKey, toLocalDateString });
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<App />);

View file

@ -22,7 +22,7 @@ function Dashboard({ data, setView, setSelectedDay, setSelectedRecording }) {
// Build day map
const dayMap = {};
for (const r of data.recordings) {
const key = r.startTime.toISOString().slice(0, 10);
const key = window.toLocalDateString(r.startTime);
if (!dayMap[key]) dayMap[key] = { count: 0, minutes: 0 };
dayMap[key].count++;
dayMap[key].minutes += r.durationMinutes;
@ -145,7 +145,7 @@ function CalendarHeatmap({ dayMap, maxMinutes, onDayClick }) {
for (let d = 1; d <= daysInMonth; d++) {
const dateStr = `${year}-${String(month + 1).padStart(2, '0')}-${String(d).padStart(2, '0')}`;
const info = dayMap[dateStr];
const isToday = dateStr === new Date().toISOString().slice(0, 10);
const isToday = dateStr === window.toLocalDateString(new Date());
cells.push(
<div
key={d}

View file

@ -14,7 +14,7 @@ function DayView({ data, selectedDay, setSelectedDay, setSelectedRecording, setV
// Build day map
const dayMap = {};
for (const r of data.recordings) {
const key = r.startTime.toISOString().slice(0, 10);
const key = window.toLocalDateString(r.startTime);
if (!dayMap[key]) dayMap[key] = [];
dayMap[key].push(r);
}
@ -79,7 +79,7 @@ function DayView({ data, selectedDay, setSelectedDay, setSelectedRecording, setV
const dateStr = `${year}-${String(month + 1).padStart(2, '0')}-${String(d).padStart(2, '0')}`;
const recs = dayMap[dateStr] || [];
const isSelected = selectedDay === dateStr;
const isToday = dateStr === now.toISOString().slice(0, 10);
const isToday = dateStr === window.toLocalDateString(now);
const hasRecs = recs.length > 0;
const intensity = hasRecs ? recs.length / maxCount : 0;