import { autoUpdate, offset, useFloating } from "@floating-ui/react-dom"
import { createFileRoute, useNavigate } from "@tanstack/react-router"
import { useCallback } from "react"
import { ActionBar } from "~/app/bookmarks/-action-bar"
import { useLogOut } from "~/auth"
import { useCollections } from "~/collection/api"
import { Button } from "~/components/button"
import { LoadingSpinner } from "~/components/loading-spinner"
import { useMnemonics } from "~/hooks/use-mnemonics"
import { CollectionList } from "./-collection-list"
import { AddCollectionDialog } from "./-dialogs/add-collection-dialog"
import { DeleteCollectionDialog } from "./-dialogs/delete-collection-dialog"
import { DialogKind, WindowKind, useCollectionPageStore } from "./-store"
export const Route = createFileRoute("/collections/")({
component: CollectionsPage,
})
function ActiveDialog() {
const dialog = useCollectionPageStore((state) => state.dialog)
switch (dialog.kind) {
case DialogKind.AddCollection:
return
You have not created any collections!
) : (
Loading
Error loading collections
} } function CollectionsActionBar({ className }: { className?: string }) { const activeWindow = useCollectionPageStore((state) => state.activeWindow) const { refs, floatingStyles } = useFloating({ placement: "top", whileElementsMounted: autoUpdate, middleware: [offset(8)], }) return ( <>MENU