import { jsxs, jsx, Fragment } from "react/jsx-runtime"; import { B as Button } from "./button-CdJZJLGw.js"; import { D as Dialog, a as DialogTrigger, b as DialogContent, c as DialogHeader } from "./dialog-DGP_3dPQ.js"; import { c as Tabs, T as TabsList, a as TabsTrigger, b as TabsContent } from "./tabs-DmCK9qzK.js"; import { CheckCircle } from "lucide-react"; import { useState } from "react"; import AssignmentDetails from "./assignment-details-BD_KqM29.js"; import AssignmentSubmission from "./assignment-submission-D6YS2fsl.js"; import "@radix-ui/react-slot"; import "class-variance-authority"; import "./utils-DLCPGU0v.js"; import "clsx"; import "tailwind-merge"; import "@radix-ui/react-dialog"; import "@radix-ui/react-tabs"; import "date-fns"; import "richtor"; /* empty css */ import "./badge-J-zeQvMg.js"; import "./assignment-submission-form-CmfB3_43.js"; import "./chunked-uploader-input-CZfv7yqS.js"; import "./input-BsvJqbcd.js"; import "axios"; import "sonner"; import "./input-error-D1JIzedA.js"; import "./loading-button-CCIxhJrY.js"; import "./label-0rIIfpX0.js"; import "@radix-ui/react-label"; import "./select-BYx0MCUK.js"; import "@radix-ui/react-select"; import "./textarea-Z0d4V-ti.js"; import "@inertiajs/react"; const AssignmentDialog = ({ assignment }) => { const [open, setOpen] = useState(false); const hasSubmission = assignment.submissions && assignment.submissions.length > 0; const isDeadlinePassed = (deadline) => { if (!deadline) return false; return /* @__PURE__ */ new Date() > new Date(deadline); }; const deadlinePassed = isDeadlinePassed(assignment.deadline); return /* @__PURE__ */ jsxs(Dialog, { open, onOpenChange: setOpen, children: [ /* @__PURE__ */ jsx(DialogTrigger, { asChild: true, children: /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "sm", className: "h-8 gap-2", children: hasSubmission ? /* @__PURE__ */ jsxs(Fragment, { children: [ /* @__PURE__ */ jsx(CheckCircle, { className: "h-4 w-4" }), /* @__PURE__ */ jsx("span", { children: "Check" }) ] }) : /* @__PURE__ */ jsx("span", { children: "Submit" }) }) }), /* @__PURE__ */ jsx(DialogContent, { className: "max-h-[90vh] max-w-4xl p-0", children: /* @__PURE__ */ jsxs(Tabs, { defaultValue: "details", className: "w-full", children: [ /* @__PURE__ */ jsx(DialogHeader, { className: "p-6 pb-0", children: /* @__PURE__ */ jsxs(TabsList, { className: "grid h-11 w-full grid-cols-2", children: [ /* @__PURE__ */ jsx(TabsTrigger, { value: "details", className: "h-9", children: "Assignment Details" }), /* @__PURE__ */ jsx(TabsTrigger, { value: deadlinePassed ? "" : "submit", className: "h-9", disabled: deadlinePassed, children: "Assignment Submission" }) ] }) }), /* @__PURE__ */ jsxs("div", { className: "max-h-[calc(90vh-92px)] overflow-y-auto p-6", children: [ /* @__PURE__ */ jsx(TabsContent, { value: "details", className: "m-0", children: /* @__PURE__ */ jsx(AssignmentDetails, { assignment, deadlinePassed }) }), !deadlinePassed && /* @__PURE__ */ jsx(TabsContent, { value: "submit", className: "m-0", children: /* @__PURE__ */ jsx(AssignmentSubmission, { assignment, setDialogOpen: setOpen }) }) ] }) ] }) }) ] }); }; export { AssignmentDialog as default };