import { useState } from "react"; import { Input } from "@pram/ui/components/input"; import { Button } from "@pram/ui/components/button"; import { Dialog, DialogContent, DialogHeader, DialogTitle, } from "@pram/ui/components/dialog"; import { MaterialIcon } from "@/components/ui/MaterialIcon"; export function AutoBundleModal({ availableCount, examTypeName, sectionTypeName, onClose, onCreate, isPending, }: { availableCount: number; examTypeName: string; sectionTypeName: string; onClose: () => void; onCreate: (data: { title: string; description: string; isPublic: boolean; count: number; sortOrder: "random" | "difficulty"; }) => void; isPending: boolean; }) { const dateStr = new Date().toLocaleDateString("id-ID", { day: "numeric", month: "short" }); const [count, setCount] = useState(Math.min(availableCount, 10)); const [title, setTitle] = useState(`${examTypeName} ${sectionTypeName} Bundle — ${dateStr}`); const [description, setDescription] = useState(""); const [isPublic, setIsPublic] = useState(false); const [sortOrder, setSortOrder] = useState<"random" | "difficulty">("random"); return ( !v && onClose()}> Auto Bundle
{examTypeName} {sectionTypeName && ( {sectionTypeName} )} {availableCount} soal tersedia
{availableCount < 5 && (
Soal yang tersedia sedikit ({availableCount} soal). Paket tetap bisa dibuat, tapi disarankan untuk menambah soal.
)}
setTitle(e.target.value)} placeholder="e.g. IELTS Reading Bundle" className="rounded-[var(--radius-lg)] border-2 border-[var(--oat-border)] bg-[var(--pure-white)]" />
setDescription(e.target.value)} placeholder="Deskripsi singkat..." className="rounded-[var(--radius-lg)] border-2 border-[var(--oat-border)] bg-[var(--pure-white)]" />
setCount(Number(e.target.value))} className="w-full h-2 bg-[var(--warm-silver)] rounded-full appearance-none cursor-pointer accent-[var(--clay-black)]" />
); }