Files
latosa-escrima/frontend/app/(auth)/dashboard/planning/_planning.tsx
2025-02-19 16:16:47 +01:00

30 lines
760 B
TypeScript

"use client";
import Planning from "@/components/planning";
import { useApi } from "@/hooks/use-api";
import ICalendarEvent from "@/interfaces/ICalendarEvent";
import IUser from "@/interfaces/IUser";
import hasPermissions from "@/lib/hasPermissions";
import { Loader2 } from "lucide-react";
export default function PlanningPage({ user }: { user: IUser }) {
const {
data: requestedEvents,
isLoading,
success,
mutate,
} = useApi<ICalendarEvent[]>("/events", undefined, false, false);
if (isLoading) return <Loader2 className="animate-spin" />;
if (success)
return (
<Planning
modifiable={hasPermissions(user.roles, {
events: ["update", "insert", "delete"],
})}
events={requestedEvents ?? []}
mutate={mutate}
/>
);
}