arden scrape safety telemetry and polish run state UX

This commit is contained in:
Justin Visser 2026-02-19 21:59:36 +01:00
parent 110e246a1c
commit d7404abf18
33 changed files with 2074 additions and 96 deletions

View file

@ -1,10 +1,31 @@
import { apiRequest } from "@/lib/api/client";
import { type ScrapeSafetyState } from "@/features/safety";
export interface UserSettingsPolicy {
min_run_interval_minutes: number;
min_request_delay_seconds: number;
automation_allowed: boolean;
manual_run_allowed: boolean;
blocked_failure_threshold: number;
network_failure_threshold: number;
cooldown_blocked_seconds: number;
cooldown_network_seconds: number;
}
export interface UserSettings {
auto_run_enabled: boolean;
run_interval_minutes: number;
request_delay_seconds: number;
nav_visible_pages: string[];
policy: UserSettingsPolicy;
safety_state: ScrapeSafetyState;
}
export interface UserSettingsUpdate {
auto_run_enabled: boolean;
run_interval_minutes: number;
request_delay_seconds: number;
nav_visible_pages: string[];
}
export interface ChangePasswordPayload {
@ -18,7 +39,7 @@ export async function fetchSettings(): Promise<UserSettings> {
return response.data;
}
export async function updateSettings(payload: UserSettings): Promise<UserSettings> {
export async function updateSettings(payload: UserSettingsUpdate): Promise<UserSettings> {
const response = await apiRequest<UserSettings>("/settings", {
method: "PUT",
body: payload,