|
1 | 1 | --- |
| 2 | +/* eslint-disable max-lines */ |
2 | 3 | import Layout from "../layouts/Layout.astro"; |
| 4 | +import Hero from "../components/Hero.astro"; |
3 | 5 | import WhyJoin from "../components/WhyJoin.astro"; |
4 | 6 | import WhatWeDo from "../components/WhatWeDo.astro"; |
5 | 7 | import Calendar from "../components/Calendar.astro"; |
6 | 8 | import Footer from "../components/Footer.astro"; |
7 | 9 | import { FaGithub, FaDiscord, FaMeetup, FaEnvelope } from "react-icons/fa"; |
8 | 10 | import { FaRegClock, FaRegCalendarAlt } from "react-icons/fa"; |
9 | 11 | import { useTranslations } from "../i18n/utils"; |
10 | | -import LanguagePicker from "../components/LanguagePicker.astro"; |
11 | 12 | import memberFeeds from "../data/member-feeds.json"; |
12 | 13 | import compositeFeed from "../data/composite-feed.json"; |
13 | 14 | import eventLocations from "../data/event-locations.json"; |
@@ -196,35 +197,11 @@ const nextUpdate = compositeFeed?.generatedAt |
196 | 197 | --- |
197 | 198 |
|
198 | 199 | <Layout> |
199 | | - <header |
200 | | - class="relative isolate flex min-h-[70vh] items-center px-6 py-20 text-white sm:py-28 md:px-16" |
201 | | - > |
202 | | - <div class="absolute inset-0 -z-10"> |
203 | | - <img |
204 | | - src="https://images.unsplash.com/photo-1570463723985-41c39db0343d?q=80&w=1335&auto=format&fit=crop&ixlib=rb-4.1.0&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D?auto=format&fit=crop&w=2000&q=80" |
205 | | - alt="" |
206 | | - loading="lazy" |
207 | | - fetchpriority="high" |
208 | | - decoding="async" |
209 | | - class="h-full w-full object-cover" |
210 | | - /> |
211 | | - <div class="absolute inset-0 bg-black/40"></div> |
212 | | - </div> |
213 | | - <div class="mx-auto max-w-3xl text-center md:ml-[5%] md:text-left"> |
214 | | - <p class="text-xs font-semibold uppercase tracking-[0.3em] text-white/80"> |
215 | | - {t("home.header.tagline")} |
216 | | - </p> |
217 | | - <h1 |
218 | | - class="mt-4 text-4xl font-semibold leading-tight text-white md:text-5xl" |
219 | | - > |
220 | | - {t("home.header.title")} |
221 | | - </h1> |
222 | | - <p class="mt-4 text-lg text-white/90"> |
223 | | - {t("home.header.subtitle")} |
224 | | - </p> |
225 | | - </div> |
226 | | - <LanguagePicker /> |
227 | | - </header> |
| 200 | + <Hero |
| 201 | + tagline={t("home.header.tagline")} |
| 202 | + title={t("home.header.title")} |
| 203 | + subtitle={t("home.header.subtitle")} |
| 204 | + /> |
228 | 205 |
|
229 | 206 | <main id="main-content" class="space-y-0"> |
230 | 207 | <section id="quick-links" class="bg-white/90 px-6 py-12 md:px-12"> |
@@ -348,7 +325,6 @@ const nextUpdate = compositeFeed?.generatedAt |
348 | 325 | feedsWithItems.map((feed) => ( |
349 | 326 | <article |
350 | 327 | class="flex h-full flex-col overflow-visible rounded-2xl border border-slate-200/70 bg-white/95 p-5 shadow-lg shadow-stone-900/5 ring-1 ring-white/80" |
351 | | - key={feed.feedUrl} |
352 | 328 | > |
353 | 329 | <div class="flex flex-wrap items-center gap-3"> |
354 | 330 | <h4 class="text-lg font-semibold text-slate-900"> |
@@ -384,7 +360,6 @@ const nextUpdate = compositeFeed?.generatedAt |
384 | 360 | {feed.items.map((item) => ( |
385 | 361 | <div |
386 | 362 | class="group relative z-0 min-w-[280px] max-w-md flex-1 rounded-xl border border-slate-100 bg-slate-50/70 p-3 pb-10 transition hover:border-(--accent) hover:bg-white hover:z-10 after:clear-both after:block after:content-['']" |
387 | | - key={item.id} |
388 | 363 | > |
389 | 364 | {item.image ? ( |
390 | 365 | <div class="float-right ml-3 mb-2 h-24 w-28 overflow-hidden rounded-lg border border-slate-100 bg-slate-100"> |
|
0 commit comments