A try of overhauling the frontend tests, bailed after 24h+
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
import { useContext } from 'react';
|
||||
import { SettingsContext } from './SettingsProvider';
|
||||
|
||||
console.log('useSettings.ts loaded');
|
||||
|
||||
export function useSettings() {
|
||||
const context = useContext(SettingsContext);
|
||||
if (context === undefined) {
|
||||
|
||||
@@ -12,7 +12,7 @@ export function useSleepSession() {
|
||||
});
|
||||
|
||||
const createMutation = useMutation({
|
||||
mutationFn: createSession,
|
||||
mutationFn: (args) => createSession(args),
|
||||
onSuccess: () => {
|
||||
queryClient.invalidateQueries({ queryKey: ['activeSession'] });
|
||||
queryClient.invalidateQueries({ queryKey: ['sessions'] });
|
||||
@@ -20,8 +20,7 @@ export function useSleepSession() {
|
||||
});
|
||||
|
||||
const endMutation = useMutation({
|
||||
mutationFn: ({ sessionId, endTime }: { sessionId: number; endTime: string }) =>
|
||||
endSession(sessionId, { end_time: endTime }),
|
||||
mutationFn: (args) => endSession(args.sessionId, { end_time: args.endTime }),
|
||||
onSuccess: () => {
|
||||
queryClient.invalidateQueries({ queryKey: ['activeSession'] });
|
||||
queryClient.invalidateQueries({ queryKey: ['sessions'] });
|
||||
@@ -48,19 +47,19 @@ export function useSessions() {
|
||||
});
|
||||
|
||||
const deleteMutation = useMutation({
|
||||
mutationFn: deleteSession,
|
||||
mutationFn: (id) => deleteSession(id),
|
||||
onSuccess: () => {
|
||||
queryClient.invalidateQueries({ queryKey: ['sessions'] });
|
||||
},
|
||||
});
|
||||
|
||||
const updateMutation = useMutation({
|
||||
mutationFn: ({ sessionId, payload }: { sessionId: number; payload: import('../types').SleepSessionUpdate }) =>
|
||||
updateSession(sessionId, payload),
|
||||
onSuccess: () => {
|
||||
queryClient.invalidateQueries({ queryKey: ['sessions'] });
|
||||
},
|
||||
});
|
||||
const updateMutation = useMutation({
|
||||
mutationFn: ({ sessionId, payload }: { sessionId: number; payload: import('../types').SleepSessionUpdate }) =>
|
||||
updateSession(sessionId, payload),
|
||||
onSuccess: () => {
|
||||
queryClient.invalidateQueries({ queryKey: ['sessions'] });
|
||||
},
|
||||
});
|
||||
|
||||
return {
|
||||
sessions: sessionsQuery.data?.sessions || [],
|
||||
@@ -71,3 +70,5 @@ export function useSessions() {
|
||||
updateSession: updateMutation.mutateAsync,
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
import { useMemo } from 'react';
|
||||
import { useQuery } from '@tanstack/react-query';
|
||||
import { fetchDailySummary, fetchTimetable, fetchWakeSleepTimes, fetchSummary } from '../api/client';
|
||||
import type { DailySummaryResponse, TimetableResponse, WakeupBedtimeResponse, SummaryResponse } from '../types';
|
||||
@@ -38,5 +39,12 @@ export function useStats(
|
||||
timetable: timetableQuery.data,
|
||||
wakeupBedtime: wakeupBedtimeQuery.data,
|
||||
isLoading: dailySummaryQuery.isLoading || timetableQuery.isLoading || wakeupBedtimeQuery.isLoading,
|
||||
error: dailySummaryQuery.error || timetableQuery.error || wakeupBedtimeQuery.error,
|
||||
transformedDailySummary: dailySummaryQuery.data?.days ? dailySummaryQuery.data.days.map(day => ({
|
||||
date: day.date,
|
||||
daySleep: day.day_minutes / 60,
|
||||
nightSleep: day.night_minutes / 60,
|
||||
total: day.total_minutes / 60,
|
||||
})) : null,
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user