diff --git a/public/assets/ark-library/media/svg/community.svg b/public/assets/ark-library/media/svg/community.svg index 0caa0bb..1d013b2 100644 --- a/public/assets/ark-library/media/svg/community.svg +++ b/public/assets/ark-library/media/svg/community.svg @@ -1,9 +1,9 @@ - - + + - - - - + + + + diff --git a/public/assets/ark-library/media/svg/educational-clips.svg b/public/assets/ark-library/media/svg/educational-clips.svg index 6e46062..b21a857 100644 --- a/public/assets/ark-library/media/svg/educational-clips.svg +++ b/public/assets/ark-library/media/svg/educational-clips.svg @@ -1,9 +1,9 @@ - - + + - - - - + + + + diff --git a/public/assets/ark-library/media/svg/everyday-class.svg b/public/assets/ark-library/media/svg/everyday-class.svg index 4e8ae41..7fe1344 100644 --- a/public/assets/ark-library/media/svg/everyday-class.svg +++ b/public/assets/ark-library/media/svg/everyday-class.svg @@ -1,24 +1,9 @@ - - - - - + + - - - - - - - - - - - - - - - - + + + + diff --git a/public/assets/ark-library/media/svg/gift.svg b/public/assets/ark-library/media/svg/gift.svg index 06107d3..4716bb2 100644 --- a/public/assets/ark-library/media/svg/gift.svg +++ b/public/assets/ark-library/media/svg/gift.svg @@ -1,24 +1,9 @@ - - - - - - + + - - - - - - - - - - - - - - - + + + + diff --git a/public/assets/ark-library/media/svg/global-news.svg b/public/assets/ark-library/media/svg/global-news.svg index 09240bd..e82441f 100644 --- a/public/assets/ark-library/media/svg/global-news.svg +++ b/public/assets/ark-library/media/svg/global-news.svg @@ -1,14 +1,9 @@ - - - - + + - - - - - - - + + + + diff --git a/public/assets/ark-library/media/svg/official-announcement.svg b/public/assets/ark-library/media/svg/official-announcement.svg index 3d9f46f..e914d80 100644 --- a/public/assets/ark-library/media/svg/official-announcement.svg +++ b/public/assets/ark-library/media/svg/official-announcement.svg @@ -1,24 +1,9 @@ - - - - - + + - - - - - - - - - - - - - - - - + + + + diff --git a/public/assets/ark-library/media/svg/poster.svg b/public/assets/ark-library/media/svg/poster.svg index b52c12c..cda56eb 100644 --- a/public/assets/ark-library/media/svg/poster.svg +++ b/public/assets/ark-library/media/svg/poster.svg @@ -1,15 +1,9 @@ - - - - + + - - - - - - - - + + + + diff --git a/public/assets/ark-library/media/svg/project-details.svg b/public/assets/ark-library/media/svg/project-details.svg index 466782f..43be767 100644 --- a/public/assets/ark-library/media/svg/project-details.svg +++ b/public/assets/ark-library/media/svg/project-details.svg @@ -1,14 +1,9 @@ - - - + + - - - - - - - - + + + + diff --git a/public/assets/ark-library/media/svg/videos.svg b/public/assets/ark-library/media/svg/videos.svg index d49559f..888e487 100644 --- a/public/assets/ark-library/media/svg/videos.svg +++ b/public/assets/ark-library/media/svg/videos.svg @@ -1,14 +1,9 @@ - - - - + + - - - - - - - + + + + diff --git a/src/components/FigmaBanner.tsx b/src/components/FigmaBanner.tsx index 437c8cf..c195d94 100644 --- a/src/components/FigmaBanner.tsx +++ b/src/components/FigmaBanner.tsx @@ -172,8 +172,39 @@ export function FigmaBanner() { } }; + const pagination = hasMultiple ? ( +
+ {slides.map((slide, index) => { + const active = index === activeIndex; + return ( +
+ ) : null; + return ( -
+
- + {slide.alt} {hasMultiple ? ( -
- {slides.map((slide, index) => { - const active = index === activeIndex; - return ( -
+ <> +
+
{pagination}
+
+
{pagination}
+ ) : null}
); diff --git a/src/components/RecommendedCard.tsx b/src/components/RecommendedCard.tsx index 9498061..043e81b 100644 --- a/src/components/RecommendedCard.tsx +++ b/src/components/RecommendedCard.tsx @@ -16,7 +16,7 @@ function isPlaceholderAsset(path: string | undefined | null) { } const CARD_CLASS = - "group flex w-[232px] shrink-0 flex-col overflow-hidden rounded-xl border border-ark-line bg-ark-panel transition hover:border-ark-gold/55 max-[439px]:w-[232px] min-[440px]:w-[230px] sm:w-[240px] lg:w-[246.4px] min-[1100px]:max-xl:w-[273px] xl:w-[246.4px]"; + "group flex w-[208px] shrink-0 flex-col overflow-hidden rounded-xl border border-transparent bg-[#1D1E23] transition hover:border-ark-gold/55 md:w-[240px] md:border-ark-line md:bg-ark-panel lg:w-[246.4px] min-[1100px]:max-xl:w-[273px] xl:w-[246.4px]"; type RecommendedResource = Resource & { downloadPostId?: string; @@ -52,7 +52,7 @@ export function RecommendedCard({
{cover ? ( ) : null} -
+
{r.title} -
+
{r.categoryName} · @@ -144,7 +144,7 @@ export function ComingSoonRecommendedCard({ className={`${CARD_CLASS} cursor-default opacity-95`} aria-label="即将到来" > -
+
-
-
+
+
即将到来
diff --git a/src/components/SectionHeader.tsx b/src/components/SectionHeader.tsx index 4516673..abe774b 100644 --- a/src/components/SectionHeader.tsx +++ b/src/components/SectionHeader.tsx @@ -7,8 +7,8 @@ export function SectionHeader({ viewAllLabel, }: { title: string; - viewAllTo: string; - viewAllLabel: string; + viewAllTo?: string; + viewAllLabel?: string; }) { return (
@@ -21,13 +21,15 @@ export function SectionHeader({ {title}
- - {viewAllLabel} - - + {viewAllTo && viewAllLabel ? ( + + {viewAllLabel} + + + ) : null}
); } diff --git a/src/components/messageStream/FilterChips.tsx b/src/components/messageStream/FilterChips.tsx index e184ee9..fb8e9fe 100644 --- a/src/components/messageStream/FilterChips.tsx +++ b/src/components/messageStream/FilterChips.tsx @@ -33,7 +33,7 @@ export function FilterChips({ type, onTypeChange }: FilterChipsProps) { return (
{TYPE_FILTERS.map((tp) => { @@ -51,11 +51,11 @@ export function FilterChips({ type, onTypeChange }: FilterChipsProps) { ); })} -
+
); } diff --git a/src/i18n.tsx b/src/i18n.tsx index 7a95d31..ed437dc 100644 --- a/src/i18n.tsx +++ b/src/i18n.tsx @@ -15,7 +15,7 @@ const zhDict: Dict = { mainNav: "网站导航", home: "首页", all: "全部资料", - categories: "分类浏览", + categories: "资料分类", latest: "最新更新", official: "官方推荐", popular: "热门资料", diff --git a/src/layouts/PublicLayout.tsx b/src/layouts/PublicLayout.tsx index 3c0bdf1..6d81847 100644 --- a/src/layouts/PublicLayout.tsx +++ b/src/layouts/PublicLayout.tsx @@ -29,11 +29,11 @@ function navIsActive( case "categories": return pathname === "/" && hash === "#categories"; case "browseLatest": - return pathname === "/browse" && sp.get("sort") === "latest"; + return pathname === "/" && hash === "#latest"; case "browseRecommended": - return pathname === "/browse" && sp.get("sort") === "recommended"; + return pathname === "/" && hash === "#official"; case "browsePopular": - return pathname === "/browse" && sp.get("sort") === "popular"; + return pathname === "/" && hash === "#popular"; case "about": return pathname === "/about"; default: @@ -266,6 +266,7 @@ export function PublicLayout() { const na = (which: PublicNavWhich) => navIsActive(pathname, search, hash, which); + const isHome = pathname === "/"; const footerInContentFlow = pathname === "/browse" || pathname.startsWith("/category/"); @@ -280,13 +281,13 @@ export function PublicLayout() { return (
-
+
- + {t("brand")} @@ -379,13 +380,6 @@ export function PublicLayout() { className="header-nav-scroll hidden min-w-0 flex-1 items-center justify-center gap-4 overflow-x-auto overflow-y-hidden py-1 min-[1200px]:flex lg:gap-5" aria-label={t("mainNav")} > - - {t("home")} - - {t("latest")} - - {t("official")} + {t("latest")} + + {t("popular")} + + {t("footerAbout")} +
@@ -470,14 +471,6 @@ export function PublicLayout() { ariaLabel={t("langLabel")} className="mb-1 hidden md:block" /> - setOpen(false)} - > - {t("home")} - setOpen(false)} - > - {t("latest")} - - setOpen(false)} @@ -511,7 +496,15 @@ export function PublicLayout() { {t("official")} setOpen(false)} + > + {t("latest")} + + setOpen(false)} @@ -532,19 +525,17 @@ export function PublicLayout() {
-