feat: display Family ID and detailed Issuer in CA tables

This commit is contained in:
dyzulk
2026-01-07 10:01:09 +07:00
parent 55d9b4a782
commit 8ae637d9c6
2 changed files with 24 additions and 2 deletions

View File

@@ -24,6 +24,7 @@ interface CaCertificate {
is_latest: boolean;
issuer_name?: string;
issuer_serial?: string;
family_id?: string;
}
interface ArchiveManagementTableProps {
@@ -79,6 +80,9 @@ export default function ArchiveManagementTable({
<TableCell isHeader className="px-5 py-3 font-medium text-gray-500 text-start text-theme-xs dark:text-gray-400">
Version (UUID)
</TableCell>
<TableCell isHeader className="px-5 py-3 font-medium text-gray-500 text-start text-theme-xs dark:text-gray-400">
Family
</TableCell>
<TableCell isHeader className="px-5 py-3 font-medium text-gray-500 text-start text-theme-xs dark:text-gray-400">
{t("common_name_th")}
</TableCell>
@@ -103,6 +107,13 @@ export default function ArchiveManagementTable({
<TableCell className="px-5 py-4 text-start font-mono text-theme-xs text-gray-500 dark:text-gray-400">
{cert.uuid}
</TableCell>
<TableCell className="px-5 py-4 text-start">
{cert.family_id ? (
<span className="text-[9px] font-mono bg-gray-100 dark:bg-white/5 px-1 rounded text-gray-500">
{cert.family_id.split('-')[0]}
</span>
) : "-"}
</TableCell>
<TableCell className="px-5 py-4 text-start text-theme-sm text-gray-600 dark:text-gray-400">
<div className="flex flex-col">
<span className="font-medium text-gray-800 dark:text-white/90">{cert.common_name}</span>
@@ -157,7 +168,7 @@ export default function ArchiveManagementTable({
))}
{filteredCertificates.length === 0 && (
<TableRow>
<TableCell colSpan={6} className="px-5 py-10 text-center text-gray-500 dark:text-gray-400">
<TableCell colSpan={7} className="px-5 py-10 text-center text-gray-500 dark:text-gray-400">
No versions found.
</TableCell>
</TableRow>

View File

@@ -23,6 +23,7 @@ interface CaCertificate {
status: string;
issuer_name?: string;
issuer_serial?: string;
family_id?: string;
}
interface RootCaTableProps {
@@ -78,6 +79,9 @@ export default function RootCaTable({
<TableCell isHeader className="px-5 py-3 font-medium text-gray-500 text-start text-theme-xs dark:text-gray-400">
{t("type_th")}
</TableCell>
<TableCell isHeader className="px-5 py-3 font-medium text-gray-500 text-start text-theme-xs dark:text-gray-400">
Family
</TableCell>
<TableCell isHeader className="px-5 py-3 font-medium text-gray-500 text-start text-theme-xs dark:text-gray-400">
{t("common_name_th")}
</TableCell>
@@ -105,6 +109,13 @@ export default function RootCaTable({
<TableCell className="px-5 py-4 text-start font-medium text-gray-800 dark:text-white/90">
{formatType(cert.ca_type)}
</TableCell>
<TableCell className="px-5 py-4 text-start">
{cert.family_id ? (
<span className="text-[10px] font-mono bg-gray-100 dark:bg-white/5 px-1.5 py-0.5 rounded text-gray-500">
{cert.family_id.split('-')[0]}...
</span>
) : "-"}
</TableCell>
<TableCell className="px-5 py-4 text-start text-theme-sm text-gray-600 dark:text-gray-400">
{cert.common_name}
</TableCell>
@@ -144,7 +155,7 @@ export default function RootCaTable({
))}
{filteredCertificates.length === 0 && (
<TableRow>
<TableCell colSpan={7} className="px-5 py-10 text-center text-gray-500 dark:text-gray-400">
<TableCell colSpan={8} className="px-5 py-10 text-center text-gray-500 dark:text-gray-400">
{searchTerm ? t("no_ca_search", { term: searchTerm }) : t("no_ca_found")}
</TableCell>
</TableRow>