Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

サブイベントの終了ステータスを反映 #155

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
36 changes: 19 additions & 17 deletions app/lib/data.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -906,22 +906,6 @@ EventHubは、マーケティング、営業のためのウェビナー・カン
};

export const SUB_EVENTS = [
{
title: "【学生向け】来年は TSKaigi に登壇するぞ!LT会&交流会で学生エンジニアと繋がろう!",
description: `初LT大歓迎!TS好きな学生も触ったことない学生も集まってワイワイ盛り上がろう!

カンファレンスに登壇してるエンジニアってかっこいいですよね!

でも、登壇するにはハードルが高い...そんなあなたに向けて、今回は学生限定のTSKaigiサブイベントとしてLT会を企画しました。
この機会をきっかけにし、ぜひ来年のTSKaigiではプロポーザルを出しましょう!
`,
sponsorList: ["株式会社Progate", "エムスリー株式会社"],
tags: ["学生向け", "公募枠あり", "オンラインあり"],
date: "5/17",
day: "金",
link: "https://progate.connpass.com/event/318009/",
thumbnail: "/subevent_5_17.png",
},
{
title: "TSKaigi 2024 After Talk",
description: `TSKaigi本編に引き続き、TypeScriptに関する発表の場を提供するとともに、TSKaigiコミュニティの活性化を図ることを目的としています。
Expand All @@ -938,5 +922,23 @@ TSKaigi 2024にご参加された方はもちろん、参加できなかった
day: "火",
link: "https://layerx.connpass.com/event/318123/",
thumbnail: "/subevent_6_4.png",
}
finished: false,
},
{
title: "【学生向け】来年は TSKaigi に登壇するぞ!LT会&交流会で学生エンジニアと繋がろう!",
description: `初LT大歓迎!TS好きな学生も触ったことない学生も集まってワイワイ盛り上がろう!

カンファレンスに登壇してるエンジニアってかっこいいですよね!

でも、登壇するにはハードルが高い...そんなあなたに向けて、今回は学生限定のTSKaigiサブイベントとしてLT会を企画しました。
この機会をきっかけにし、ぜひ来年のTSKaigiではプロポーザルを出しましょう!
`,
sponsorList: ["株式会社Progate", "エムスリー株式会社"],
tags: ["学生向け", "公募枠あり", "オンラインあり"],
date: "5/17",
day: "金",
link: "https://progate.connpass.com/event/318009/",
thumbnail: "/subevent_5_17.png",
finished: true,
},
];
59 changes: 31 additions & 28 deletions app/subevents/page.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,36 +24,39 @@ const SubEventPage = () => {
<p className="mt-1 text-sm">※ 正確な情報は各イベントページをご確認ください。</p>
</div>
<div className="mt-10 flex flex-col gap-8">
{SUB_EVENTS.map(({ title, link, description, tags, date, day, thumbnail, sponsorList }) => (
<div
key={title}
className="flex flex-col rounded-xl bg-white p-4 text-slate-800 md:flex-row"
>
<div className="w-full shrink-0 border-b border-b-slate-200 border-r-slate-200 p-2 pb-4 pr-8 text-3xl md:w-[112px] md:border-b-0 md:border-r md:p-4">
{date}
<br />
<span className="text-xl">({day})</span>
</div>
<div className="p-2 pt-4 md:p-4">
<a href={link} target="_blank" rel="noopener noreferrer">
<h2 className="text-xl font-bold underline hover:no-underline">
{title}
<FaExternalLinkAlt className="ml-2 inline" size={14} />
</h2>
</a>
<a href={link} target="_blank" rel="noopener noreferrer">
<img src={thumbnail} alt={title} className="mt-4 max-h-[200px]" />
</a>
<p className="mt-4 whitespace-pre-line">{description}</p>
<div className="mt-4 flex flex-wrap gap-2">
{tags.map((tag) => (
<Tag key={tag}>{tag}</Tag>
))}
{SUB_EVENTS.map(
({ title, link, description, tags, date, day, thumbnail, sponsorList, finished }) => (
<div
key={title}
className={`flex flex-col rounded-xl bg-white p-4 text-slate-800 md:flex-row ${finished ? "bg-slate-300" : ""}`}
>
<div className="w-full shrink-0 border-b border-b-slate-200 border-r-slate-200 p-2 pb-4 pr-8 text-3xl md:w-[112px] md:border-b-0 md:border-r md:p-4">
{date}
<br />
<span className="text-xl">({day})</span>
</div>
<div className="p-2 pt-4 md:p-4">
{finished && <div className="mb-4">このイベントは終了しました</div>}
<a href={link} target="_blank" rel="noopener noreferrer">
<h2 className="text-xl font-bold underline hover:no-underline">
{title}
<FaExternalLinkAlt className="ml-2 inline" size={14} />
</h2>
</a>
<a href={link} target="_blank" rel="noopener noreferrer">
<img src={thumbnail} alt={title} className="mt-4 max-h-[200px]" />
</a>
<p className="mt-4 whitespace-pre-line">{description}</p>
<div className="mt-4 flex flex-wrap gap-2">
{tags.map((tag) => (
<Tag key={tag}>{tag}</Tag>
))}
</div>
<div className="mt-4 w-full text-end text-sm">実施: {sponsorList.join("、")}</div>
</div>
<div className="mt-4 w-full text-end text-sm">実施: {sponsorList.join("、")}</div>
</div>
</div>
))}
),
)}
</div>
</Container>
);
Expand Down
Loading