80 lines
2.8 KiB
TypeScript
80 lines
2.8 KiB
TypeScript
import AuthenticatedLayout from "@/Layouts/AuthenticatedLayout";
|
|
import DeleteUserForm from "./Partials/DeleteUserForm";
|
|
import UpdatePasswordForm from "./Partials/UpdatePasswordForm";
|
|
import UpdateProfileInformationForm from "./Partials/UpdateProfileInformationForm";
|
|
import { Head } from "@inertiajs/react";
|
|
import { PageProps } from "@/types";
|
|
import {
|
|
Card,
|
|
CardContent,
|
|
CardDescription,
|
|
CardHeader,
|
|
CardTitle,
|
|
} from "@/Components/ui/card";
|
|
|
|
export default function Edit({
|
|
auth,
|
|
mustVerifyEmail,
|
|
status,
|
|
}: PageProps<{ mustVerifyEmail: boolean; status?: string }>) {
|
|
return (
|
|
<AuthenticatedLayout
|
|
user={auth.user}
|
|
header={
|
|
<h2 className="font-semibold text-xl leading-tight">Profile</h2>
|
|
}
|
|
>
|
|
<Head title="Profile" />
|
|
|
|
<div className="space-y-6">
|
|
<Card>
|
|
<CardHeader>
|
|
<CardTitle>Profile Information</CardTitle>
|
|
<CardDescription>
|
|
Update your account's profile information and email
|
|
address.
|
|
</CardDescription>
|
|
</CardHeader>
|
|
<CardContent>
|
|
<UpdateProfileInformationForm
|
|
mustVerifyEmail={mustVerifyEmail}
|
|
status={status}
|
|
className="max-w-xl"
|
|
/>
|
|
</CardContent>
|
|
</Card>
|
|
|
|
<Card>
|
|
<CardHeader>
|
|
<CardTitle>Update Password</CardTitle>
|
|
<CardDescription>
|
|
Ensure your account is using a long, random password
|
|
to stay secure.
|
|
</CardDescription>
|
|
</CardHeader>
|
|
|
|
<CardContent>
|
|
<UpdatePasswordForm className="max-w-xl" />
|
|
</CardContent>
|
|
</Card>
|
|
|
|
<Card>
|
|
<CardHeader>
|
|
<CardTitle>Delete Account</CardTitle>
|
|
<CardDescription>
|
|
Once your account is deleted, all of its resources
|
|
and data will be permanently deleted. Before
|
|
deleting your account, please download any data or
|
|
information that you wish to retain.
|
|
</CardDescription>
|
|
</CardHeader>
|
|
|
|
<CardContent>
|
|
<DeleteUserForm className="max-w-xl" />
|
|
</CardContent>
|
|
</Card>
|
|
</div>
|
|
</AuthenticatedLayout>
|
|
);
|
|
}
|