import { createFileRoute } from "@tanstack/react-router"; import { getRepositoryOptions, getSnapshotDetailsOptions } from "~/client/api-client/@tanstack/react-query.gen"; import { RestoreSnapshotPage } from "~/client/modules/repositories/routes/restore-snapshot"; export const Route = createFileRoute("/(dashboard)/repositories/$repoId/$snapId/restore")({ component: RouteComponent, errorComponent: (e) =>
{e.error.message}
, loader: async ({ params, context }) => { const [snapshot, repository] = await Promise.all([ context.queryClient.ensureQueryData({ ...getSnapshotDetailsOptions({ path: { id: params.repoId, snapshotId: params.snapId } }), }), context.queryClient.ensureQueryData({ ...getRepositoryOptions({ path: { id: params.repoId } }) }), ]); return { snapshot, repository }; }, head: ({ params }) => ({ meta: [ { title: `Zerobyte - Restore Snapshot ${params.snapId}` }, { name: "description", content: "Restore files from a backup snapshot.", }, ], }), }); function RouteComponent() { const { repoId, snapId } = Route.useParams(); const { snapshot, repository } = Route.useLoaderData(); return ( ); }