import { useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { keys } from '../api'; import { Breadcrumbs, Table, type TableColumn } from '../ui'; import styles from './Page.module.css'; interface KeyRow { name: string; } export function KeysPage() { const { t } = useTranslation(); const [items, setItems] = useState([]); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); const columns: TableColumn[] = [ { key: 'name', header: t('keys.col_name'), render: (k) => k.name }, ]; useEffect(() => { keys .list() .then((res) => setItems(res.keys.map((name) => ({ name })))) .catch((err: Error) => setError(err.message)) .finally(() => setLoading(false)); }, []); return (
{error &&

{error}

} k.name} loading={loading} emptyMessage={t('keys.empty')} pageSize={10} pageSizeOptions={[10, 25, 50]} /> ); }