Skip to content

Commit c3f2e1b

Browse files
committed
refactor: use x-scroll div on non-mobile for video course cards
removes "swiper" functionality outside of mobile
1 parent 7f576b9 commit c3f2e1b

File tree

2 files changed

+19
-6
lines changed

2 files changed

+19
-6
lines changed

app/[locale]/developers/_components/VideoCourseCard.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ const VideoCourseCard = ({ course, className }: BuildCardProps) => (
1515
<Link
1616
href={course.href}
1717
className={cn(
18-
"group flex h-full w-fit flex-col gap-8 rounded-4xl no-underline",
18+
"group flex h-full w-fit flex-col gap-4 rounded-4xl no-underline",
1919
className
2020
)}
2121
hideArrow

app/[locale]/developers/page.tsx

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import { screens } from "@/lib/utils/screen"
2323
import BuilderCard from "./_components/BuilderCard"
2424
import BuilderSwiper from "./_components/BuilderSwiper/lazy"
2525
import SpeedRunCard from "./_components/SpeedRunCard"
26+
import VideoCourseCard from "./_components/VideoCourseCard"
2627
import VideoCourseSwiper from "./_components/VideoCourseSwiper/lazy"
2728
import { getBuilderPaths, getVideoCourses } from "./utils"
2829

@@ -118,7 +119,7 @@ const DevelopersPage = async ({
118119
sizes={`(max-width: ${screens.sm}) 100vw, calc(50vw - 14rem)`}
119120
className="h-56 object-cover"
120121
/>
121-
<div className="">
122+
<div>
122123
<h3>{t("page-developers-jump-right-in-title")}</h3>
123124
<p className="text-sm text-body-medium">
124125
{t("page-developers-quickstart-scaffold-subtext")}{" "}
@@ -164,7 +165,7 @@ const DevelopersPage = async ({
164165
sizes={`(max-width: ${screens.sm}) 100vw, calc(50vw - 14rem)`}
165166
className="max-h-56 w-full object-cover object-top"
166167
/>
167-
<div className="">
168+
<div>
168169
<h3>{t("page-developers-get-help-title")}</h3>
169170
<p className="text-sm text-body-medium">
170171
{t("page-developers-get-help-desc")}
@@ -197,7 +198,7 @@ const DevelopersPage = async ({
197198
sizes={`(max-width: ${screens.sm}) 100vw, calc(50vw - 14rem)`}
198199
className="-my-2 max-h-60 w-full object-contain" // -my-2 accounts for image shadows
199200
/>
200-
<div className="">
201+
<div>
201202
<h3>{t("page-developers-resources-title")}</h3>
202203
<p className="text-sm text-body-medium">
203204
{t("page-developers-resources-desc")}
@@ -223,7 +224,7 @@ const DevelopersPage = async ({
223224
sizes={`(max-width: ${screens.sm}) 100vw, calc(50vw - 14rem)`}
224225
className="max-h-56 w-full object-contain"
225226
/>
226-
<div className="">
227+
<div>
227228
<h3>{t("page-developers-tutorials-title")}</h3>
228229
<p className="text-sm text-body-medium">
229230
{t("page-developers-tutorials-desc")}
@@ -246,7 +247,19 @@ const DevelopersPage = async ({
246247
<h2>{t("page-developers-video-courses-title")}</h2>
247248
<p>{t("page-developers-video-courses-desc")}</p>
248249

249-
<div className="w-screen max-xl:-ms-8 xl:w-full">
250+
{/* DESKTOP */}
251+
<div className="flex w-screen gap-6 overflow-x-auto max-2xl:-mx-8 max-2xl:pe-8 max-sm:hidden lg:gap-8 2xl:w-full">
252+
{courses.map((course, idx) => (
253+
<VideoCourseCard
254+
key={idx}
255+
course={course}
256+
className="w-[20%] min-w-[240px] max-w-[271px] max-2xl:first:ms-8"
257+
/>
258+
))}
259+
</div>
260+
261+
{/* MOBILE */}
262+
<div className="w-screen max-xl:-ms-8 sm:hidden xl:w-full">
250263
<VideoCourseSwiper courses={courses} />
251264
</div>
252265
</Section>

0 commit comments

Comments
 (0)