"use client" import {Badge} from "@/components/ui/badge" import {Button} from "@/components/ui/button" import {Sheet, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle,} from "@/components/ui/sheet" import type {ApplyLogItem} from "@/lib/services/openflare" import {formatDateTime} from "@/lib/utils" interface LogDetailSheetProps { log: ApplyLogItem | null open: boolean onOpenChange: (open: boolean) => void } function getResultBadge(result: string) { if (result === "success") { return ( 成功 ) } if (result === "warning") { return ( 警告 ) } return ( 失败 ) } export function LogDetailSheet({ log, open, onOpenChange }: LogDetailSheetProps) { return ( 应用日志详情 查看单条应用日志的完整结果与校验信息。 {log ? ( {getResultBadge(log.result)} Node: {log.node_id} 版本: {log.version} 创建时间 {formatDateTime(log.created_at)} 目标 Checksum {log.checksum || "—"} 主配置摘要 {log.main_config_checksum || "—"} 路由配置摘要 {log.route_config_checksum || "—"} 支持文件数 {log.support_file_count} 消息 {log.message || "—"} ) : null} onOpenChange(false)}> 关闭 ) }
创建时间
{formatDateTime(log.created_at)}
目标 Checksum
{log.checksum || "—"}
主配置摘要
{log.main_config_checksum || "—"}
路由配置摘要
{log.route_config_checksum || "—"}
支持文件数
{log.support_file_count}
消息
{log.message || "—"}