Newer
Older
import { Table, Column, Value } from '../../components/Table';
import { BucketInfo } from '../../models/bucket';
import { getHumanSize, parseReadWriteAccess } from '../../commons/utils';
import { BucketsListContext } from '../../services/BucketListContext';
const navigate = useNavigate();
const bucketList = useContext(BucketsListContext);
const columns: Column[] = [
{ name: "Bucket", columnType: "string" },
{ name: "Objects", columnType: "string" },
{ name: "Size", columnType: "string" },
{ name: "Access", columnType: "string" }
];
const tableData = bucketList.map((bucket: BucketInfo) => {
{ columnName: "Bucket", value: bucket.name },
{ columnName: "Objects", value: bucket.objects },
{ columnName: "Size", value: getHumanSize(bucket.size) },
{ columnName: "Access", value: parseReadWriteAccess(bucket.rw_access) }
const onClick = (_: React.MouseEvent<HTMLTableRowElement>, index: number) => {
const bucketName = bucketList[index].name;
navigate("/" + bucketName)
console.log(bucketName);
}
<div className="flex place-content-center">
<div className="flex w-2/3">
<Table
columns={columns}
data={tableData}
onClick={onClick}
/>
</div>