import useCollectionStore from "@/store/collections"; import { faEllipsis, faFolder, faPlus, faSort, } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import CollectionCard from "@/components/CollectionCard"; import Dropdown from "@/components/Dropdown"; import { useState } from "react"; import MainLayout from "@/layouts/MainLayout"; import { useSession } from "next-auth/react"; import useModalStore from "@/store/modals"; import SortDropdown from "@/components/SortDropdown"; import { Sort } from "@/types/global"; import useSort from "@/hooks/useSort"; export default function Collections() { const { collections } = useCollectionStore(); const [expandDropdown, setExpandDropdown] = useState(false); const [sortDropdown, setSortDropdown] = useState(false); const [sortBy, setSortBy] = useState(Sort.DateNewestFirst); const [sortedCollections, setSortedCollections] = useState(collections); const session = useSession(); const { setModal } = useModalStore(); useSort({ sortBy, setData: setSortedCollections, data: collections }); return (

All Collections

setExpandDropdown(!expandDropdown)} id="expand-dropdown" className="inline-flex rounded-md cursor-pointer hover:bg-slate-200 duration-100 p-1" >
{expandDropdown ? ( { setModal({ modal: "COLLECTION", state: true, method: "CREATE", }); setExpandDropdown(false); }, }, ]} onClickOutside={(e: Event) => { const target = e.target as HTMLInputElement; if (target.id !== "expand-dropdown") setExpandDropdown(false); }} className="absolute top-8 left-0 w-36" /> ) : null}
setSortDropdown(!sortDropdown)} id="sort-dropdown" className="inline-flex rounded-md cursor-pointer hover:bg-slate-200 duration-100 p-1" >
{sortDropdown ? ( setSortDropdown(!sortDropdown)} /> ) : null}
{sortedCollections.map((e, i) => { return ; })}
{ setModal({ modal: "COLLECTION", state: true, method: "CREATE", }); }} >

New Collection

); }