Add complete UI for adaptive medication settings with presence tracking and nagging configuration
This commit is contained in:
@@ -689,6 +689,58 @@ export const api = {
|
||||
},
|
||||
},
|
||||
|
||||
// Adaptive Medications
|
||||
adaptiveMeds: {
|
||||
getSettings: async () => {
|
||||
return request<{
|
||||
adaptive_timing_enabled: boolean;
|
||||
adaptive_mode: string;
|
||||
presence_tracking_enabled: boolean;
|
||||
nagging_enabled: boolean;
|
||||
nag_interval_minutes: number;
|
||||
max_nag_count: number;
|
||||
quiet_hours_start: string | null;
|
||||
quiet_hours_end: string | null;
|
||||
}>('/api/adaptive-meds/settings', { method: 'GET' });
|
||||
},
|
||||
|
||||
updateSettings: async (data: {
|
||||
adaptive_timing_enabled?: boolean;
|
||||
adaptive_mode?: string;
|
||||
presence_tracking_enabled?: boolean;
|
||||
nagging_enabled?: boolean;
|
||||
nag_interval_minutes?: number;
|
||||
max_nag_count?: number;
|
||||
quiet_hours_start?: string | null;
|
||||
quiet_hours_end?: string | null;
|
||||
}) => {
|
||||
return request<{ success: boolean }>('/api/adaptive-meds/settings', {
|
||||
method: 'PUT',
|
||||
body: JSON.stringify(data),
|
||||
});
|
||||
},
|
||||
|
||||
getPresence: async () => {
|
||||
return request<{
|
||||
is_online: boolean;
|
||||
last_online_at: string | null;
|
||||
typical_wake_time: string | null;
|
||||
}>('/api/adaptive-meds/presence', { method: 'GET' });
|
||||
},
|
||||
|
||||
getSchedule: async () => {
|
||||
return request<Array<{
|
||||
medication_id: string;
|
||||
medication_name: string;
|
||||
base_time: string;
|
||||
adjusted_time: string;
|
||||
adjustment_minutes: number;
|
||||
status: string;
|
||||
nag_count: number;
|
||||
}>>('/api/adaptive-meds/schedule', { method: 'GET' });
|
||||
},
|
||||
},
|
||||
|
||||
// Medications
|
||||
medications: {
|
||||
list: async () => {
|
||||
|
||||
Reference in New Issue
Block a user