import { useEffect, useState } from "react"; import { useMail } from "@/store/mail"; import { Switch } from "@/ui/misc"; import { toast } from "@/ui/toast"; import { toInputDateTime, fromInputDateTime, toUTCDate } from "@/lib/dates"; import { DateTimeField } from "@/ui/datefield"; import { client, CAP } from "@/jmap/client"; export function VacationSettings() { const vacation = useMail((s) => s.vacation); const load = useMail((s) => s.loadVacation); const save = useMail((s) => s.saveVacation); const [enabled, setEnabled] = useState(false); const [subject, setSubject] = useState(""); const [body, setBody] = useState(""); const [from, setFrom] = useState(""); const [to, setTo] = useState(""); const [busy, setBusy] = useState(false); const available = client.hasCapability(CAP.vacation); useEffect(() => { void load(); }, [load]); useEffect(() => { if (!vacation) return; setEnabled(vacation.isEnabled); setSubject(vacation.subject ?? ""); setBody(vacation.textBody ?? ""); setFrom(vacation.fromDate ? toInputDateTime(new Date(vacation.fromDate)) : ""); setTo(vacation.toDate ? toInputDateTime(new Date(vacation.toDate)) : ""); }, [vacation]); if (!available) return
Vacation responses are not available for this account.
Automatically reply to people who email you while you're away. Each sender gets at most one reply.