import React, { useState } from "react"; import { faFolder, faPenToSquare, faPlus, } from "@fortawesome/free-solid-svg-icons"; import useCollectionStore from "@/store/collections"; import { CollectionIncludingMembers } from "@/types/global"; import RequiredBadge from "../../RequiredBadge"; import SubmitButton from "@/components/SubmitButton"; import { HexColorPicker } from "react-colorful"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; type Props = { toggleCollectionModal: Function; activeCollection: CollectionIncludingMembers; method: "CREATE" | "UPDATE"; }; export default function CollectionInfo({ toggleCollectionModal, activeCollection, method, }: Props) { const [collection, setCollection] = useState(activeCollection); const { updateCollection, addCollection } = useCollectionStore(); const submit = async () => { if (!collection) return null; let response = null; if (method === "CREATE") response = await addCollection(collection); else if (method === "UPDATE") response = await updateCollection(collection); else console.log("Unknown method."); if (response) toggleCollectionModal(); }; return (

{method === "CREATE" ? "Add" : "Edit"} Collection

Name

setCollection({ ...collection, name: e.target.value }) } type="text" placeholder="e.g. Example Collection" className="w-full rounded-md p-3 border-sky-100 border-solid border outline-none focus:border-sky-500 duration-100" />

Icon Color

setCollection({ ...collection, color: "#7dd3fc" }) } > Reset
setCollection({ ...collection, color: e })} />

Description