aboutsummaryrefslogtreecommitdiffstats
path: root/packages/web/app/dashboard/bookmarks/components/Bookmarks.tsx
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2024-02-09 15:32:04 +0000
committerMohamedBassem <me@mbassem.com>2024-02-09 15:32:04 +0000
commit4fae8f04f546d2b3f6053870d93385fa36af4742 (patch)
treefbf91f3c3c3d2bd85e9e4cfc8200d275a78fb700 /packages/web/app/dashboard/bookmarks/components/Bookmarks.tsx
parentb25f17509e704eb41523bf455a33804cabf8aaca (diff)
downloadkarakeep-4fae8f04f546d2b3f6053870d93385fa36af4742.tar.zst
[ui] Adding the favourites and archive pages
Diffstat (limited to 'packages/web/app/dashboard/bookmarks/components/Bookmarks.tsx')
-rw-r--r--packages/web/app/dashboard/bookmarks/components/Bookmarks.tsx38
1 files changed, 38 insertions, 0 deletions
diff --git a/packages/web/app/dashboard/bookmarks/components/Bookmarks.tsx b/packages/web/app/dashboard/bookmarks/components/Bookmarks.tsx
new file mode 100644
index 00000000..6a9ffe1b
--- /dev/null
+++ b/packages/web/app/dashboard/bookmarks/components/Bookmarks.tsx
@@ -0,0 +1,38 @@
+import { redirect } from "next/navigation";
+import BookmarksGrid from "./BookmarksGrid";
+import { authOptions } from "@/lib/auth";
+import { getServerSession } from "next-auth";
+import { getBookmarks } from "@/lib/services/bookmarks";
+import { ZGetBookmarksRequest } from "@/lib/types/api/bookmarks";
+
+export default async function Bookmarks({
+ favourited,
+ archived,
+ title,
+}: ZGetBookmarksRequest & { title: string }) {
+ const session = await getServerSession(authOptions);
+ if (!session) {
+ redirect("/");
+ }
+ const bookmarks = await getBookmarks(session.user.id, {
+ favourited,
+ archived,
+ });
+
+ if (bookmarks.length == 0) {
+ // TODO: This needs to be polished
+ return (
+ <>
+ <div className="container pb-4 text-2xl">{title}</div>
+ <div className="container">No bookmarks</div>
+ </>
+ );
+ }
+
+ return (
+ <>
+ <div className="container pb-4 text-2xl">{title}</div>
+ <BookmarksGrid bookmarks={bookmarks} />
+ </>
+ );
+}