From c342e99b38aa1b1296f9fc1144586f2bf8e26873 Mon Sep 17 00:00:00 2001 From: mauro-balades Date: Mon, 23 Sep 2024 00:39:02 +0200 Subject: [PATCH] Refactor marketplace and theme components --- src/components/marketplace.tsx | 31 +++++++++++++++++++------------ src/components/theme-card.tsx | 6 ++---- src/components/theme-page.tsx | 4 +--- src/components/themes-search.tsx | 7 ++++--- 4 files changed, 26 insertions(+), 22 deletions(-) diff --git a/src/components/marketplace.tsx b/src/components/marketplace.tsx index 63da987..ebbf8c0 100644 --- a/src/components/marketplace.tsx +++ b/src/components/marketplace.tsx @@ -4,25 +4,32 @@ import ThemesSearch from "./themes-search"; import { getAllThemes, getThemesFromSearch, ZenTheme } from "@/lib/themes"; import ThemeCard from "./theme-card"; import { Button } from "./ui/button"; +import StickyBox from "react-sticky-box"; export default function MarketplacePage({ themes }: { themes: ZenTheme[] }) { const [searchInput, setSearchInput] = React.useState(""); const [tags, setTags] = React.useState(["all"]); return ( -
-
-
-

Themes Store

- -
+
+
+ +

Themes Store

+

+ Discover and install themes for Zen Browser. +

+ +
-
+
{getThemesFromSearch(themes, searchInput, tags).map((theme) => ( ))} diff --git a/src/components/theme-card.tsx b/src/components/theme-card.tsx index 033d3d8..3c78444 100644 --- a/src/components/theme-card.tsx +++ b/src/components/theme-card.tsx @@ -31,16 +31,14 @@ export default function ThemeCard({ window.open(`/themes/${theme.id}`, "_self"); }} className={ny( - "border-grey-900 flex w-full cursor-pointer select-none flex-col justify-start rounded-lg border bg-muted p-5 shadow-sm transition duration-300 ease-in-out hover:border-blue-500 hover:bg-surface hover:shadow-lg dark:border-muted dark:bg-muted/50", + "flex w-full cursor-pointer select-none flex-col justify-start p-5", className, )} > {theme.name}

{theme.name.substring(0, maxNameLen).trim() + diff --git a/src/components/theme-page.tsx b/src/components/theme-page.tsx index 5b5b27c..9a3c971 100644 --- a/src/components/theme-page.tsx +++ b/src/components/theme-page.tsx @@ -30,9 +30,7 @@ export default async function ThemePage({ themeID }: { themeID: string }) { {theme.name}

{theme.name}

diff --git a/src/components/themes-search.tsx b/src/components/themes-search.tsx index 9c5f26e..9c0a9ba 100644 --- a/src/components/themes-search.tsx +++ b/src/components/themes-search.tsx @@ -26,6 +26,7 @@ export default function ThemesSearch({ placeholder="Search themes" className="w-full border-none bg-transparent text-black focus:border-none focus:outline-none focus:ring-0 dark:text-white" /> + {/* + */}

{TAGS.map((tag) => ( @@ -51,10 +52,10 @@ export default function ThemesSearch({ key={tag} onClick={() => setTags([tag])} className={ny( - `!rounded-full px-5 ${tags.includes(tag) ? "bg-black text-white dark:bg-white dark:text-black" : ""}`, + `!rounded-full px-5 !min-w-24 !py-2 !h-fit ${tags.includes(tag) ? "bg-black text-white dark:bg-white dark:text-black" : ""}`, )} > - {tag} + {tag.replace(/-/g, " ")} ))}