diff options
| author | MohamedBassem <me@mbassem.com> | 2024-03-13 22:37:41 +0000 |
|---|---|---|
| committer | Mohamed Bassem <me@mbassem.com> | 2024-03-14 16:40:45 +0000 |
| commit | a03f1dc2ac25579df30e8cb59d2703110c3e564d (patch) | |
| tree | 59315e73cd83dc391660071c70752cf23989b3da /apps/web/components/dashboard | |
| parent | 04572a8e5081b1e4871e273cde9dbaaa44c52fe0 (diff) | |
| download | karakeep-a03f1dc2ac25579df30e8cb59d2703110c3e564d.tar.zst | |
lint: Lint and format the entire repo with the new configs
Diffstat (limited to 'apps/web/components/dashboard')
26 files changed, 160 insertions, 137 deletions
diff --git a/apps/web/components/dashboard/bookmarks/AddLinkButton.tsx b/apps/web/components/dashboard/bookmarks/AddLinkButton.tsx index 5973f909..45a67020 100644 --- a/apps/web/components/dashboard/bookmarks/AddLinkButton.tsx +++ b/apps/web/components/dashboard/bookmarks/AddLinkButton.tsx @@ -1,10 +1,5 @@ -import { Form, FormControl, FormField, FormItem } from "@/components/ui/form"; -import { Input } from "@/components/ui/input"; -import { useForm, SubmitErrorHandler } from "react-hook-form"; -import { z } from "zod"; -import { zodResolver } from "@hookform/resolvers/zod"; -import { toast } from "@/components/ui/use-toast"; -import { api } from "@/lib/trpc"; +import type { SubmitErrorHandler } from "react-hook-form"; +import { useState } from "react"; import { ActionButton } from "@/components/ui/action-button"; import { Button } from "@/components/ui/button"; import { @@ -16,7 +11,13 @@ import { DialogTitle, DialogTrigger, } from "@/components/ui/dialog"; -import { useState } from "react"; +import { Form, FormControl, FormField, FormItem } from "@/components/ui/form"; +import { Input } from "@/components/ui/input"; +import { toast } from "@/components/ui/use-toast"; +import { api } from "@/lib/trpc"; +import { zodResolver } from "@hookform/resolvers/zod"; +import { useForm } from "react-hook-form"; +import { z } from "zod"; export function AddLinkButton({ children }: { children: React.ReactNode }) { const [isOpen, setOpen] = useState(false); diff --git a/apps/web/components/dashboard/bookmarks/AddToListModal.tsx b/apps/web/components/dashboard/bookmarks/AddToListModal.tsx index c9fd5da0..6242aa27 100644 --- a/apps/web/components/dashboard/bookmarks/AddToListModal.tsx +++ b/apps/web/components/dashboard/bookmarks/AddToListModal.tsx @@ -1,3 +1,4 @@ +import { useState } from "react"; import { ActionButton } from "@/components/ui/action-button"; import { Button } from "@/components/ui/button"; import { @@ -15,11 +16,6 @@ import { FormItem, FormMessage, } from "@/components/ui/form"; - -import { toast } from "@/components/ui/use-toast"; -import { api } from "@/lib/trpc"; -import { useState } from "react"; - import { Select, SelectContent, @@ -29,9 +25,11 @@ import { SelectValue, } from "@/components/ui/select"; import LoadingSpinner from "@/components/ui/spinner"; -import { z } from "zod"; -import { useForm } from "react-hook-form"; +import { toast } from "@/components/ui/use-toast"; +import { api } from "@/lib/trpc"; import { zodResolver } from "@hookform/resolvers/zod"; +import { useForm } from "react-hook-form"; +import { z } from "zod"; export default function AddToListModal({ bookmarkId, @@ -115,12 +113,11 @@ export default function AddToListModal({ </SelectTrigger> <SelectContent> <SelectGroup> - {lists && - lists.lists.map((l) => ( - <SelectItem key={l.id} value={l.id}> - {l.icon} {l.name} - </SelectItem> - ))} + {lists?.lists.map((l) => ( + <SelectItem key={l.id} value={l.id}> + {l.icon} {l.name} + </SelectItem> + ))} </SelectGroup> </SelectContent> </Select> diff --git a/apps/web/components/dashboard/bookmarks/BookmarkCardSkeleton.tsx b/apps/web/components/dashboard/bookmarks/BookmarkCardSkeleton.tsx index 1f5fa433..026b8d37 100644 --- a/apps/web/components/dashboard/bookmarks/BookmarkCardSkeleton.tsx +++ b/apps/web/components/dashboard/bookmarks/BookmarkCardSkeleton.tsx @@ -1,10 +1,10 @@ import { ImageCard, + ImageCardBanner, ImageCardBody, ImageCardContent, ImageCardFooter, ImageCardTitle, - ImageCardBanner, } from "@/components/ui/imageCard"; import { Skeleton } from "@/components/ui/skeleton"; diff --git a/apps/web/components/dashboard/bookmarks/BookmarkOptions.tsx b/apps/web/components/dashboard/bookmarks/BookmarkOptions.tsx index 4f08ebee..3656a435 100644 --- a/apps/web/components/dashboard/bookmarks/BookmarkOptions.tsx +++ b/apps/web/components/dashboard/bookmarks/BookmarkOptions.tsx @@ -1,8 +1,6 @@ "use client"; -import { useToast } from "@/components/ui/use-toast"; -import { api } from "@/lib/trpc"; -import { ZBookmark, ZBookmarkedLink } from "@hoarder/trpc/types/bookmarks"; +import { useState } from "react"; import { Button } from "@/components/ui/button"; import { DropdownMenu, @@ -10,6 +8,8 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu"; +import { useToast } from "@/components/ui/use-toast"; +import { api } from "@/lib/trpc"; import { Archive, Link, @@ -21,10 +21,12 @@ import { Tags, Trash2, } from "lucide-react"; -import { useTagModel } from "./TagModal"; -import { useState } from "react"; -import { BookmarkedTextEditor } from "./BookmarkedTextEditor"; + +import type { ZBookmark, ZBookmarkedLink } from "@hoarder/trpc/types/bookmarks"; + import { useAddToListModal } from "./AddToListModal"; +import { BookmarkedTextEditor } from "./BookmarkedTextEditor"; +import { useTagModel } from "./TagModal"; export default function BookmarkOptions({ bookmark }: { bookmark: ZBookmark }) { const { toast } = useToast(); diff --git a/apps/web/components/dashboard/bookmarks/BookmarkPreview.tsx b/apps/web/components/dashboard/bookmarks/BookmarkPreview.tsx index 2a8ae1b1..69aa60a3 100644 --- a/apps/web/components/dashboard/bookmarks/BookmarkPreview.tsx +++ b/apps/web/components/dashboard/bookmarks/BookmarkPreview.tsx @@ -1,14 +1,15 @@ "use client"; +import Link from "next/link"; import { BackButton } from "@/components/ui/back-button"; import { Skeleton } from "@/components/ui/skeleton"; import { isBookmarkStillCrawling } from "@/lib/bookmarkUtils"; import { api } from "@/lib/trpc"; -import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; import { ArrowLeftCircle, CalendarDays, ExternalLink } from "lucide-react"; -import Link from "next/link"; import Markdown from "react-markdown"; +import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; + export default function BookmarkPreview({ initialData, }: { @@ -37,7 +38,7 @@ export default function BookmarkPreview({ const linkHeader = bookmark.content.type == "link" && ( <div className="flex flex-col space-y-2"> <p className="text-center text-3xl"> - {bookmark.content.title || bookmark.content.url} + {bookmark.content.title ?? bookmark.content.url} </p> <Link href={bookmark.content.url} className="mx-auto flex gap-2"> <span className="my-auto">View Original</span> @@ -72,7 +73,7 @@ export default function BookmarkPreview({ } return ( - <div className="bg-background m-4 min-h-screen space-y-4 rounded-md border p-4"> + <div className="m-4 min-h-screen space-y-4 rounded-md border bg-background p-4"> <div className="flex justify-between"> <BackButton className="ghost" variant="ghost"> <ArrowLeftCircle /> diff --git a/apps/web/components/dashboard/bookmarks/BookmarkedTextEditor.tsx b/apps/web/components/dashboard/bookmarks/BookmarkedTextEditor.tsx index a5b58f1a..eb618474 100644 --- a/apps/web/components/dashboard/bookmarks/BookmarkedTextEditor.tsx +++ b/apps/web/components/dashboard/bookmarks/BookmarkedTextEditor.tsx @@ -1,4 +1,6 @@ -import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; +import { useState } from "react"; +import { ActionButton } from "@/components/ui/action-button"; +import { Button } from "@/components/ui/button"; import { Dialog, DialogClose, @@ -8,12 +10,11 @@ import { DialogHeader, DialogTitle, } from "@/components/ui/dialog"; -import { ActionButton } from "@/components/ui/action-button"; -import { Button } from "@/components/ui/button"; import { Textarea } from "@/components/ui/textarea"; -import { api } from "@/lib/trpc"; -import { useState } from "react"; import { toast } from "@/components/ui/use-toast"; +import { api } from "@/lib/trpc"; + +import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; export function BookmarkedTextEditor({ bookmark, diff --git a/apps/web/components/dashboard/bookmarks/Bookmarks.tsx b/apps/web/components/dashboard/bookmarks/Bookmarks.tsx index 1ad3670c..9f001551 100644 --- a/apps/web/components/dashboard/bookmarks/Bookmarks.tsx +++ b/apps/web/components/dashboard/bookmarks/Bookmarks.tsx @@ -1,9 +1,11 @@ import { redirect } from "next/navigation"; -import BookmarksGrid from "./BookmarksGrid"; -import { ZGetBookmarksRequest } from "@hoarder/trpc/types/bookmarks"; import { api } from "@/server/api/client"; import { getServerAuthSession } from "@/server/auth"; +import type { ZGetBookmarksRequest } from "@hoarder/trpc/types/bookmarks"; + +import BookmarksGrid from "./BookmarksGrid"; + export default async function Bookmarks({ favourited, archived, diff --git a/apps/web/components/dashboard/bookmarks/BookmarksGrid.tsx b/apps/web/components/dashboard/bookmarks/BookmarksGrid.tsx index 4d5b6b0a..dd529a8b 100644 --- a/apps/web/components/dashboard/bookmarks/BookmarksGrid.tsx +++ b/apps/web/components/dashboard/bookmarks/BookmarksGrid.tsx @@ -1,14 +1,19 @@ "use client"; -import LinkCard from "./LinkCard"; -import { ZBookmark, ZGetBookmarksRequest } from "@hoarder/trpc/types/bookmarks"; +import { useMemo } from "react"; import { api } from "@/lib/trpc"; -import TextCard from "./TextCard"; +import tailwindConfig from "@/tailwind.config"; import { Slot } from "@radix-ui/react-slot"; import Masonry from "react-masonry-css"; import resolveConfig from "tailwindcss/resolveConfig"; -import tailwindConfig from "@/tailwind.config"; -import { useMemo } from "react"; + +import type { + ZBookmark, + ZGetBookmarksRequest, +} from "@hoarder/trpc/types/bookmarks"; + +import LinkCard from "./LinkCard"; +import TextCard from "./TextCard"; function getBreakpointConfig() { const fullConfig = resolveConfig(tailwindConfig); diff --git a/apps/web/components/dashboard/bookmarks/LinkCard.tsx b/apps/web/components/dashboard/bookmarks/LinkCard.tsx index 50f30e47..808e6d91 100644 --- a/apps/web/components/dashboard/bookmarks/LinkCard.tsx +++ b/apps/web/components/dashboard/bookmarks/LinkCard.tsx @@ -1,5 +1,6 @@ "use client"; +import Link from "next/link"; import { ImageCard, ImageCardBanner, @@ -8,17 +9,18 @@ import { ImageCardFooter, ImageCardTitle, } from "@/components/ui/imageCard"; -import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; -import Link from "next/link"; -import BookmarkOptions from "./BookmarkOptions"; -import { api } from "@/lib/trpc"; -import { Maximize2, Star } from "lucide-react"; -import TagList from "./TagList"; import { isBookmarkStillCrawling, isBookmarkStillLoading, isBookmarkStillTagging, } from "@/lib/bookmarkUtils"; +import { api } from "@/lib/trpc"; +import { Maximize2, Star } from "lucide-react"; + +import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; + +import BookmarkOptions from "./BookmarkOptions"; +import TagList from "./TagList"; export default function LinkCard({ bookmark: initialData, diff --git a/apps/web/components/dashboard/bookmarks/TagList.tsx b/apps/web/components/dashboard/bookmarks/TagList.tsx index 6c9d2d22..cb94e5d7 100644 --- a/apps/web/components/dashboard/bookmarks/TagList.tsx +++ b/apps/web/components/dashboard/bookmarks/TagList.tsx @@ -1,9 +1,10 @@ -import { badgeVariants } from "@/components/ui/badge"; import Link from "next/link"; +import { badgeVariants } from "@/components/ui/badge"; import { Skeleton } from "@/components/ui/skeleton"; -import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; import { cn } from "@/lib/utils"; +import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; + export default function TagList({ bookmark, loading, @@ -26,7 +27,7 @@ export default function TagList({ <Link className={cn( badgeVariants({ variant: "outline" }), - "hover:bg-foreground hover:text-secondary text-nowrap", + "text-nowrap hover:bg-foreground hover:text-secondary", )} href={`/dashboard/tags/${t.name}`} > diff --git a/apps/web/components/dashboard/bookmarks/TagModal.tsx b/apps/web/components/dashboard/bookmarks/TagModal.tsx index 8c09d00e..367e6e7d 100644 --- a/apps/web/components/dashboard/bookmarks/TagModal.tsx +++ b/apps/web/components/dashboard/bookmarks/TagModal.tsx @@ -1,3 +1,5 @@ +import type { KeyboardEvent } from "react"; +import { useEffect, useState } from "react"; import { ActionButton } from "@/components/ui/action-button"; import { Button } from "@/components/ui/button"; import { @@ -11,13 +13,17 @@ import { import { Input } from "@/components/ui/input"; import { toast } from "@/components/ui/use-toast"; import { api } from "@/lib/trpc"; -import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; -import { ZAttachedByEnum } from "@hoarder/trpc/types/tags"; import { cn } from "@/lib/utils"; import { Sparkles, X } from "lucide-react"; -import { useState, KeyboardEvent, useEffect } from "react"; -type EditableTag = { attachedBy: ZAttachedByEnum; id?: string; name: string }; +import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; +import type { ZAttachedByEnum } from "@hoarder/trpc/types/tags"; + +interface EditableTag { + attachedBy: ZAttachedByEnum; + id?: string; + name: string; +} function TagAddInput({ addTag }: { addTag: (tag: string) => void }) { const onKeyUp = (e: KeyboardEvent<HTMLInputElement>) => { diff --git a/apps/web/components/dashboard/bookmarks/TextCard.tsx b/apps/web/components/dashboard/bookmarks/TextCard.tsx index 2565e69d..5028c1bb 100644 --- a/apps/web/components/dashboard/bookmarks/TextCard.tsx +++ b/apps/web/components/dashboard/bookmarks/TextCard.tsx @@ -1,16 +1,18 @@ "use client"; -import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; -import BookmarkOptions from "./BookmarkOptions"; +import { useState } from "react"; +import Link from "next/link"; +import { isBookmarkStillTagging } from "@/lib/bookmarkUtils"; import { api } from "@/lib/trpc"; -import { Maximize2, Star } from "lucide-react"; import { cn } from "@/lib/utils"; -import TagList from "./TagList"; +import { Maximize2, Star } from "lucide-react"; import Markdown from "react-markdown"; -import { useState } from "react"; + +import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; + import { BookmarkedTextViewer } from "./BookmarkedTextViewer"; -import Link from "next/link"; -import { isBookmarkStillTagging } from "@/lib/bookmarkUtils"; +import BookmarkOptions from "./BookmarkOptions"; +import TagList from "./TagList"; export default function TextCard({ bookmark: initialData, diff --git a/apps/web/components/dashboard/bookmarks/TopNav.tsx b/apps/web/components/dashboard/bookmarks/TopNav.tsx index 6c0f18e5..4274762c 100644 --- a/apps/web/components/dashboard/bookmarks/TopNav.tsx +++ b/apps/web/components/dashboard/bookmarks/TopNav.tsx @@ -1,11 +1,12 @@ "use client"; -import { Link, NotebookPen } from "lucide-react"; -import { Button } from "@/components/ui/button"; -import { BookmarkedTextEditor } from "./BookmarkedTextEditor"; import { useState } from "react"; -import { AddLinkButton } from "./AddLinkButton"; +import { Button } from "@/components/ui/button"; +import { Link, NotebookPen } from "lucide-react"; + import { SearchInput } from "../search/SearchInput"; +import { AddLinkButton } from "./AddLinkButton"; +import { BookmarkedTextEditor } from "./BookmarkedTextEditor"; function AddText() { const [isEditorOpen, setEditorOpen] = useState(false); diff --git a/apps/web/components/dashboard/lists/AllListsView.tsx b/apps/web/components/dashboard/lists/AllListsView.tsx index 81f31cde..acb94edb 100644 --- a/apps/web/components/dashboard/lists/AllListsView.tsx +++ b/apps/web/components/dashboard/lists/AllListsView.tsx @@ -1,12 +1,13 @@ "use client"; +import Link from "next/link"; +import { useNewListModal } from "@/components/dashboard/sidebar/NewListModal"; import { Button } from "@/components/ui/button"; import { api } from "@/lib/trpc"; -import { ZBookmarkList } from "@hoarder/trpc/types/lists"; import { keepPreviousData } from "@tanstack/react-query"; import { Plus } from "lucide-react"; -import Link from "next/link"; -import { useNewListModal } from "@/components/dashboard/sidebar/NewListModal"; + +import type { ZBookmarkList } from "@hoarder/trpc/types/lists"; function ListItem({ name, @@ -19,7 +20,7 @@ function ListItem({ }) { return ( <Link href={path}> - <div className="bg-background rounded-md border border-gray-200 px-4 py-2 text-lg"> + <div className="rounded-md border border-gray-200 bg-background px-4 py-2 text-lg"> <p className="text-nowrap"> {icon} {name} </p> diff --git a/apps/web/components/dashboard/lists/DeleteListButton.tsx b/apps/web/components/dashboard/lists/DeleteListButton.tsx index 5303b217..f5fcb18b 100644 --- a/apps/web/components/dashboard/lists/DeleteListButton.tsx +++ b/apps/web/components/dashboard/lists/DeleteListButton.tsx @@ -1,5 +1,8 @@ "use client"; +import { useState } from "react"; +import { useRouter } from "next/navigation"; +import { ActionButton } from "@/components/ui/action-button"; import { Button } from "@/components/ui/button"; import { Dialog, @@ -10,13 +13,11 @@ import { DialogTitle, DialogTrigger, } from "@/components/ui/dialog"; -import { Trash } from "lucide-react"; -import { useRouter } from "next/navigation"; import { toast } from "@/components/ui/use-toast"; import { api } from "@/lib/trpc"; -import { ActionButton } from "@/components/ui/action-button"; -import { useState } from "react"; -import { ZBookmarkList } from "@hoarder/trpc/types/lists"; +import { Trash } from "lucide-react"; + +import type { ZBookmarkList } from "@hoarder/trpc/types/lists"; export default function DeleteListButton({ list }: { list: ZBookmarkList }) { const [isDialogOpen, setDialogOpen] = useState(false); diff --git a/apps/web/components/dashboard/lists/ListView.tsx b/apps/web/components/dashboard/lists/ListView.tsx index 2d48d9e3..beeea7f1 100644 --- a/apps/web/components/dashboard/lists/ListView.tsx +++ b/apps/web/components/dashboard/lists/ListView.tsx @@ -1,10 +1,11 @@ "use client"; import BookmarksGrid from "@/components/dashboard/bookmarks/BookmarksGrid"; -import { ZBookmark } from "@hoarder/trpc/types/bookmarks"; -import { ZBookmarkListWithBookmarks } from "@hoarder/trpc/types/lists"; import { api } from "@/lib/trpc"; +import type { ZBookmark } from "@hoarder/trpc/types/bookmarks"; +import type { ZBookmarkListWithBookmarks } from "@hoarder/trpc/types/lists"; + export default function ListView({ bookmarks, list: initialData, diff --git a/apps/web/components/dashboard/search/SearchInput.tsx b/apps/web/components/dashboard/search/SearchInput.tsx index 73d14c90..abb19f5e 100644 --- a/apps/web/components/dashboard/search/SearchInput.tsx +++ b/apps/web/components/dashboard/search/SearchInput.tsx @@ -1,7 +1,7 @@ +import React from "react"; import { Input } from "@/components/ui/input"; import { useDoBookmarkSearch } from "@/lib/hooks/bookmark-search"; import { cn } from "@/lib/utils"; -import React from "react"; const SearchInput = React.forwardRef< HTMLInputElement, diff --git a/apps/web/components/dashboard/settings/AddApiKey.tsx b/apps/web/components/dashboard/settings/AddApiKey.tsx index a4fd9c25..15a78d56 100644 --- a/apps/web/components/dashboard/settings/AddApiKey.tsx +++ b/apps/web/components/dashboard/settings/AddApiKey.tsx @@ -1,17 +1,10 @@ "use client"; +import type { SubmitErrorHandler } from "react-hook-form"; +import { useState } from "react"; +import { useRouter } from "next/navigation"; +import { ActionButton } from "@/components/ui/action-button"; import { Button } from "@/components/ui/button"; -import { Input } from "@/components/ui/input"; -import { - Form, - FormControl, - FormDescription, - FormField, - FormItem, - FormLabel, - FormMessage, -} from "@/components/ui/form"; - import { Dialog, DialogClose, @@ -22,15 +15,22 @@ import { DialogTitle, DialogTrigger, } from "@/components/ui/dialog"; -import { z } from "zod"; -import { useRouter } from "next/navigation"; -import { zodResolver } from "@hookform/resolvers/zod"; -import { useForm, SubmitErrorHandler } from "react-hook-form"; +import { + Form, + FormControl, + FormDescription, + FormField, + FormItem, + FormLabel, + FormMessage, +} from "@/components/ui/form"; +import { Input } from "@/components/ui/input"; import { toast } from "@/components/ui/use-toast"; import { api } from "@/lib/trpc"; -import { useState } from "react"; +import { zodResolver } from "@hookform/resolvers/zod"; import { Check, Copy } from "lucide-react"; -import { ActionButton } from "@/components/ui/action-button"; +import { useForm } from "react-hook-form"; +import { z } from "zod"; function ApiKeySuccess({ apiKey }: { apiKey: string }) { const [isCopied, setCopied] = useState(false); diff --git a/apps/web/components/dashboard/settings/ApiKeySettings.tsx b/apps/web/components/dashboard/settings/ApiKeySettings.tsx index 1598f25f..a3680863 100644 --- a/apps/web/components/dashboard/settings/ApiKeySettings.tsx +++ b/apps/web/components/dashboard/settings/ApiKeySettings.tsx @@ -7,8 +7,9 @@ import { TableRow, } from "@/components/ui/table"; import { api } from "@/server/api/client"; -import DeleteApiKey from "./DeleteApiKey"; + import AddApiKey from "./AddApiKey"; +import DeleteApiKey from "./DeleteApiKey"; export default async function ApiKeys() { const keys = await api.apiKeys.list(); diff --git a/apps/web/components/dashboard/settings/DeleteApiKey.tsx b/apps/web/components/dashboard/settings/DeleteApiKey.tsx index 566136af..091f352c 100644 --- a/apps/web/components/dashboard/settings/DeleteApiKey.tsx +++ b/apps/web/components/dashboard/settings/DeleteApiKey.tsx @@ -1,8 +1,9 @@ "use client"; +import { useState } from "react"; +import { useRouter } from "next/navigation"; +import { ActionButton } from "@/components/ui/action-button"; import { Button } from "@/components/ui/button"; -import { Trash } from "lucide-react"; - import { Dialog, DialogClose, @@ -13,11 +14,9 @@ import { DialogTitle, DialogTrigger, } from "@/components/ui/dialog"; -import { useRouter } from "next/navigation"; import { toast } from "@/components/ui/use-toast"; import { api } from "@/lib/trpc"; -import { ActionButton } from "@/components/ui/action-button"; -import { useState } from "react"; +import { Trash } from "lucide-react"; export default function DeleteApiKey({ name, diff --git a/apps/web/components/dashboard/sidebar/AllLists.tsx b/apps/web/components/dashboard/sidebar/AllLists.tsx index a77252d0..34680cdd 100644 --- a/apps/web/components/dashboard/sidebar/AllLists.tsx +++ b/apps/web/components/dashboard/sidebar/AllLists.tsx @@ -1,11 +1,13 @@ "use client"; +import Link from "next/link"; import { api } from "@/lib/trpc"; -import SidebarItem from "./SidebarItem"; -import NewListModal, { useNewListModal } from "./NewListModal"; import { Plus } from "lucide-react"; -import Link from "next/link"; -import { ZBookmarkList } from "@hoarder/trpc/types/lists"; + +import type { ZBookmarkList } from "@hoarder/trpc/types/lists"; + +import NewListModal, { useNewListModal } from "./NewListModal"; +import SidebarItem from "./SidebarItem"; export default function AllLists({ initialData, diff --git a/apps/web/components/dashboard/sidebar/ModileSidebar.tsx b/apps/web/components/dashboard/sidebar/ModileSidebar.tsx index 4bd6a347..3c68433a 100644 --- a/apps/web/components/dashboard/sidebar/ModileSidebar.tsx +++ b/apps/web/components/dashboard/sidebar/ModileSidebar.tsx @@ -1,11 +1,12 @@ -import MobileSidebarItem from "./ModileSidebarItem"; import { - Tag, + ClipboardList, PackageOpen, - Settings, Search, - ClipboardList, + Settings, + Tag, } from "lucide-react"; + +import MobileSidebarItem from "./ModileSidebarItem"; import SidebarProfileOptions from "./SidebarProfileOptions"; export default async function MobileSidebar() { diff --git a/apps/web/components/dashboard/sidebar/ModileSidebarItem.tsx b/apps/web/components/dashboard/sidebar/ModileSidebarItem.tsx index 9389d2e4..d2b4aad3 100644 --- a/apps/web/components/dashboard/sidebar/ModileSidebarItem.tsx +++ b/apps/web/components/dashboard/sidebar/ModileSidebarItem.tsx @@ -1,8 +1,8 @@ "use client"; -import { cn } from "@/lib/utils"; import Link from "next/link"; import { usePathname } from "next/navigation"; +import { cn } from "@/lib/utils"; export default function MobileSidebarItem({ logo, diff --git a/apps/web/components/dashboard/sidebar/NewListModal.tsx b/apps/web/components/dashboard/sidebar/NewListModal.tsx index f51616ed..e244411d 100644 --- a/apps/web/components/dashboard/sidebar/NewListModal.tsx +++ b/apps/web/components/dashboard/sidebar/NewListModal.tsx @@ -1,14 +1,5 @@ "use client"; -import data from "@emoji-mart/data"; -import Picker from "@emoji-mart/react"; - -import { - Popover, - PopoverContent, - PopoverTrigger, -} from "@/components/ui/popover"; - import { ActionButton } from "@/components/ui/action-button"; import { Button } from "@/components/ui/button"; import { @@ -18,7 +9,6 @@ import { DialogFooter, DialogHeader, DialogTitle, - DialogTrigger, } from "@/components/ui/dialog"; import { Form, @@ -27,15 +17,19 @@ import { FormItem, FormMessage, } from "@/components/ui/form"; - +import { Input } from "@/components/ui/input"; +import { + Popover, + PopoverContent, + PopoverTrigger, +} from "@/components/ui/popover"; import { toast } from "@/components/ui/use-toast"; import { api } from "@/lib/trpc"; - -import { z } from "zod"; -import { useForm } from "react-hook-form"; +import data from "@emoji-mart/data"; +import Picker from "@emoji-mart/react"; import { zodResolver } from "@hookform/resolvers/zod"; -import { Input } from "@/components/ui/input"; - +import { useForm } from "react-hook-form"; +import { z } from "zod"; import { create } from "zustand"; export const useNewListModal = create<{ @@ -113,7 +107,7 @@ export default function NewListModal() { <FormItem> <FormControl> <Popover> - <PopoverTrigger className="border-input h-full rounded border px-2 text-2xl"> + <PopoverTrigger className="h-full rounded border border-input px-2 text-2xl"> {field.value} </PopoverTrigger> <PopoverContent> diff --git a/apps/web/components/dashboard/sidebar/Sidebar.tsx b/apps/web/components/dashboard/sidebar/Sidebar.tsx index a5c1d7a5..0351b889 100644 --- a/apps/web/components/dashboard/sidebar/Sidebar.tsx +++ b/apps/web/components/dashboard/sidebar/Sidebar.tsx @@ -1,13 +1,15 @@ -import { Tag, Home, PackageOpen, Settings, Search, Shield } from "lucide-react"; -import { redirect } from "next/navigation"; -import SidebarItem from "./SidebarItem"; -import { getServerAuthSession } from "@/server/auth"; import Link from "next/link"; -import SidebarProfileOptions from "./SidebarProfileOptions"; +import { redirect } from "next/navigation"; import { Separator } from "@/components/ui/separator"; -import AllLists from "./AllLists"; -import serverConfig from "@hoarder/shared/config"; import { api } from "@/server/api/client"; +import { getServerAuthSession } from "@/server/auth"; +import { Home, PackageOpen, Search, Settings, Shield, Tag } from "lucide-react"; + +import serverConfig from "@hoarder/shared/config"; + +import AllLists from "./AllLists"; +import SidebarItem from "./SidebarItem"; +import SidebarProfileOptions from "./SidebarProfileOptions"; export default async function Sidebar() { const session = await getServerAuthSession(); diff --git a/apps/web/components/dashboard/sidebar/SidebarItem.tsx b/apps/web/components/dashboard/sidebar/SidebarItem.tsx index 856bdffd..75a1f6ba 100644 --- a/apps/web/components/dashboard/sidebar/SidebarItem.tsx +++ b/apps/web/components/dashboard/sidebar/SidebarItem.tsx @@ -1,8 +1,8 @@ "use client"; -import { cn } from "@/lib/utils"; import Link from "next/link"; import { usePathname } from "next/navigation"; +import { cn } from "@/lib/utils"; export default function SidebarItem({ name, |
