import { Card, Descriptions, Spin } from 'antd'
import { SettingOutlined } from '@ant-design/icons'
import { useQuery } from '@tanstack/react-query'
import { useTranslation } from 'react-i18next'
import apiClient, { isEnvelope } from '../../api/client'
import PageHeader from '../../components/PageHeader'
interface SetupStatus {
completed: boolean
admin_email: string
fqdn: string
}
interface SystemHealth {
status: string
version: string
}
export default function SettingsPage() {
const { t } = useTranslation()
const { data: setupStatus, isLoading: loadingSetup } = useQuery({
queryKey: ['setup', 'status'],
queryFn: async () => {
const r = await apiClient.get('/setup/status')
if (isEnvelope(r.data)) return r.data.data as SetupStatus
return null
},
})
const { data: health, isLoading: loadingHealth } = useQuery({
queryKey: ['system', 'health'],
queryFn: async () => {
const r = await apiClient.get('/system/health')
if (isEnvelope(r.data)) return r.data.data as SystemHealth
return null
},
})
if (loadingSetup || loadingHealth) {
return