169 lines
2.8 KiB
TypeScript
169 lines
2.8 KiB
TypeScript
import {
|
|
Card,
|
|
List,
|
|
Table,
|
|
Tag,
|
|
Space,
|
|
TableProps,
|
|
Divider,
|
|
Typography
|
|
} from "antd"
|
|
import { NavLink } from "react-router-dom"
|
|
|
|
const data = [
|
|
{
|
|
key: "输出token数",
|
|
value: 2
|
|
},
|
|
{
|
|
key: "输入token数",
|
|
value: 2
|
|
},
|
|
{
|
|
key: "模型",
|
|
value: "xxx"
|
|
}
|
|
]
|
|
|
|
const outputTokenData = [
|
|
{
|
|
key: "关键词提示",
|
|
value: "xxx"
|
|
},
|
|
{
|
|
key: "问题",
|
|
value: "xxx"
|
|
},
|
|
{
|
|
key: "数联网引用数据",
|
|
value: "xxx"
|
|
},
|
|
{
|
|
key: "提供方",
|
|
value: "xxx"
|
|
},
|
|
{
|
|
key: "token数量",
|
|
value: 2
|
|
},
|
|
{
|
|
key: "内容",
|
|
value: "xxx"
|
|
}
|
|
]
|
|
|
|
interface DataType {
|
|
key: string
|
|
name: string
|
|
age: number
|
|
address: string
|
|
tags: string[]
|
|
}
|
|
|
|
const columns: TableProps<DataType>["columns"] = [
|
|
{
|
|
title: "Name",
|
|
dataIndex: "name",
|
|
key: "name",
|
|
render: (text) => <a>{text}</a>
|
|
},
|
|
{
|
|
title: "Age",
|
|
dataIndex: "age",
|
|
key: "age"
|
|
},
|
|
{
|
|
title: "Address",
|
|
dataIndex: "address",
|
|
key: "address"
|
|
},
|
|
{
|
|
title: "Tags",
|
|
key: "tags",
|
|
dataIndex: "tags",
|
|
render: (_, { tags }) => (
|
|
<>
|
|
{tags.map((tag) => {
|
|
let color = tag.length > 5 ? "geekblue" : "green"
|
|
if (tag === "loser") {
|
|
color = "volcano"
|
|
}
|
|
return (
|
|
<Tag color={color} key={tag}>
|
|
{tag.toUpperCase()}
|
|
</Tag>
|
|
)
|
|
})}
|
|
</>
|
|
)
|
|
},
|
|
{
|
|
title: "Action",
|
|
key: "action",
|
|
render: (_, record) => (
|
|
<Space size="middle">
|
|
{/* <a>Invite {record.name}</a> */}
|
|
|
|
<NavLink to="/metering/list/123">
|
|
<a>Detail</a>
|
|
</NavLink>
|
|
</Space>
|
|
)
|
|
}
|
|
]
|
|
|
|
const data1: DataType[] = [
|
|
{
|
|
key: "1",
|
|
name: "John Brown",
|
|
age: 32,
|
|
address: "New York No. 1 Lake Park",
|
|
tags: ["nice", "developer"]
|
|
},
|
|
{
|
|
key: "2",
|
|
name: "Jim Green",
|
|
age: 42,
|
|
address: "London No. 1 Lake Park",
|
|
tags: ["loser"]
|
|
},
|
|
{
|
|
key: "3",
|
|
name: "Joe Black",
|
|
age: 32,
|
|
address: "Sydney No. 1 Lake Park",
|
|
tags: ["cool", "teacher"]
|
|
}
|
|
]
|
|
|
|
export const ListDetail = () => {
|
|
return (
|
|
<div className="p-[1rem] pt-[4rem]">
|
|
<List
|
|
grid={{ gutter: 16, column: 3 }}
|
|
dataSource={data}
|
|
renderItem={(item) => (
|
|
<List.Item>
|
|
<Card title={item.key}>{item.value}</Card>
|
|
</List.Item>
|
|
)}
|
|
/>
|
|
|
|
<div className="mb-[50px]">
|
|
<Divider orientation="left">输出token详情</Divider>
|
|
<List
|
|
bordered
|
|
dataSource={outputTokenData}
|
|
renderItem={(item) => (
|
|
<List.Item>
|
|
<Typography.Text mark>{item.key}</Typography.Text> {item.value}
|
|
</List.Item>
|
|
)}
|
|
/>
|
|
</div>
|
|
|
|
<Table<DataType> columns={columns} dataSource={data1} />
|
|
</div>
|
|
)
|
|
}
|