import Card from "@/components/ui/card"; import DataTable from "@/components/ui/data-table"; import SectionTitle from "@/components/ui/section-title"; import { DatabaseType, backupsColumns } from "../table"; import { useQuery } from "react-query"; import { useParams } from "react-router-dom"; import api, { parseJson } from "@/lib/api"; import { useQueryParams } from "@/hooks/useQueryParams"; import Button from "@/components/ui/button"; import { IoRefresh } from "react-icons/io5"; import Select from "@/components/ui/select"; type BackupSectionProps = { databases: DatabaseType[]; }; type QueryParams = { page: number; limit: number; databaseId?: string; }; const BackupSection = ({ databases }: BackupSectionProps) => { const id = useParams().id!; const [query, setQuery] = useQueryParams({ page: 1, limit: 10, }); const backups = useQuery({ queryKey: ["backups/by-server", id, query], queryFn: async () => { return api.backups .$get({ query: { serverId: id, limit: String(query.limit), page: String(query.page), databaseId: query.databaseId, }, }) .then(parseJson); }, refetchInterval: 3000, }); return (
Backups