import { useState, FormEvent } from 'react'; import { useGetSettings } from '../generated/anthoLumeAPIV1'; // User icon SVG function UserIcon() { return ( ); } // Password icon SVG function PasswordIcon() { return ( ); } // Clock icon SVG function ClockIcon() { return ( ); } export default function SettingsPage() { const { data, isLoading } = useGetSettings(); const settingsData = data?.data; const [password, setPassword] = useState(''); const [newPassword, setNewPassword] = useState(''); const [timezone, setTimezone] = useState(settingsData?.timezone || ''); const handlePasswordSubmit = (e: FormEvent) => { e.preventDefault(); // TODO: Call API to change password }; const handleTimezoneSubmit = (e: FormEvent) => { e.preventDefault(); // TODO: Call API to change timezone }; if (isLoading) { return
Loading...
; } return (
{/* User Profile Card */}

{settingsData?.user?.username}

{/* Change Password Form */}

Change Password

setPassword(e.target.value)} className="flex-1 appearance-none rounded-none border border-gray-300 w-full py-2 px-4 bg-white text-gray-700 placeholder-gray-400 shadow-sm text-base focus:outline-none focus:ring-2 focus:ring-purple-600 focus:border-transparent" placeholder="Password" />
setNewPassword(e.target.value)} className="flex-1 appearance-none rounded-none border border-gray-300 w-full py-2 px-4 bg-white text-gray-700 placeholder-gray-400 shadow-sm text-base focus:outline-none focus:ring-2 focus:ring-purple-600 focus:border-transparent" placeholder="New Password" />
{/* Change Timezone Form */}

Change Timezone

{/* Devices Table */}

Devices

{!settingsData?.devices || settingsData.devices.length === 0 ? ( ) : ( settingsData.devices.map((device: any) => ( )) )}
Name Last Sync Created
No Results

{device.device_name || 'Unknown'}

{device.last_synced ? new Date(device.last_synced).toLocaleString() : 'N/A'}

{device.created_at ? new Date(device.created_at).toLocaleString() : 'N/A'}

); }