import { ActionFunctionArgs, Form, LoaderFunctionArgs, redirect, useActionData, useLoaderData, } from "react-router-dom"; import { ChevronLeftIcon } from "@heroicons/react/16/solid"; import { Button, LinkButton } from "@components/Button"; import Card from "@components/Card"; import { CardHeader } from "@components/CardHeader"; import { InputFieldWithLabel } from "@components/InputField"; import DashboardNavbar from "@components/Header"; import { User } from "@/hooks/stores"; import { checkAuth } from "@/main"; import Fieldset from "@components/Fieldset"; import api from "../api"; interface LoaderData { device: { id: string; name: string; user: { googleId: string } }; user: User; } const action = async ({ params, request }: ActionFunctionArgs) => { const { id } = params; const { name } = Object.fromEntries(await request.formData()); if (!name || name === "") { return { message: "Please specify a name" }; } return redirect("/devices"); }; export default function DeviceIdRename() { const { device, user } = useLoaderData() as LoaderData; const error = useActionData() as { message: string }; return (
); } DeviceIdRename.action = action;