feat: change timeline to preline
This commit is contained in:
@@ -18,15 +18,15 @@ const experiences = ((await directus.request(
|
|||||||
<h3 class="smooth-reveal card-text-header flex relative items-center w-full gap-3 pb-10">
|
<h3 class="smooth-reveal card-text-header flex relative items-center w-full gap-3 pb-10">
|
||||||
Experience
|
Experience
|
||||||
</h3>
|
</h3>
|
||||||
<ul class="flex flex-col w-full ml-8 pr-8">
|
<ul class="flex flex-col w-full gap-8">
|
||||||
{experiences.map((experience: Experience, index: number) => {
|
{experiences.map((experience: Experience, index: number) => {
|
||||||
const startYear = new Date(experience.startDate).getFullYear();
|
const startYear = new Date(experience.startDate).getFullYear();
|
||||||
const endYear = experience.endDate != null ? new Date(experience.endDate).getFullYear() : 'Present';
|
const endYear = experience.endDate != null ? new Date(experience.endDate).getFullYear() : 'Present';
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<li class="relative">
|
<li class="smooth-reveal card-base-hidden flex gap-x-4 -mx-4 md:-mx-8 px-4 md:px-8 py-4 md:py-6">
|
||||||
<div class="smooth-reveal group relative grid sm:grid-cols-18 sm:gap-8 md:gap-6 pb-16">
|
<div class="w-28 md:w-32 text-end pt-1 shrink-0">
|
||||||
<header class="relative sm:col-span-3 text-header font-semibold text-lg mt-1">
|
<header class="text-sm md:text-base font-semibold text-header">
|
||||||
<time datetime={experience.startDate} data-title={experience.startDate}>
|
<time datetime={experience.startDate} data-title={experience.startDate}>
|
||||||
{startYear}
|
{startYear}
|
||||||
</time>
|
</time>
|
||||||
@@ -35,8 +35,13 @@ const experiences = ((await directus.request(
|
|||||||
{endYear}
|
{endYear}
|
||||||
</time>
|
</time>
|
||||||
</header>
|
</header>
|
||||||
<div class="relative flex flex-col sm:col-span-12 pb-6">
|
</div>
|
||||||
<div class="absolute bg-accent translate-x-[-1.71rem] rounded-full h-2 w-2 mt-3"/>
|
<div class="relative last:after:hidden after:absolute after:top-6 after:-bottom-2 md:after:-bottom-4 after:inset-s-3.5 after:w-px after:translate-x-[-0.5px] after:bg-divider">
|
||||||
|
<div class="relative z-10 size-7 flex justify-center items-center">
|
||||||
|
<div class="size-2 rounded-full bg-accent"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="grow pt-0.5">
|
||||||
<h3>
|
<h3>
|
||||||
<div
|
<div
|
||||||
class="inline-flex items-center text-2xl leading-tight font-semibold"
|
class="inline-flex items-center text-2xl leading-tight font-semibold"
|
||||||
@@ -78,6 +83,7 @@ const experiences = ((await directus.request(
|
|||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
{(experience.responsibilities || experience.achievements) && (
|
{(experience.responsibilities || experience.achievements) && (
|
||||||
|
<>
|
||||||
<div id={`hs-show-hide-collapse-heading-${index}`} class="hs-collapse hidden w-full overflow-hidden transition-[height] duration-500">
|
<div id={`hs-show-hide-collapse-heading-${index}`} class="hs-collapse hidden w-full overflow-hidden transition-[height] duration-500">
|
||||||
<div class="relative flex flex-col gap-4 pb-4">
|
<div class="relative flex flex-col gap-4 pb-4">
|
||||||
{experience.responsibilities && (
|
{experience.responsibilities && (
|
||||||
@@ -110,12 +116,11 @@ const experiences = ((await directus.request(
|
|||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="mb-4">
|
<p class="mb-4">
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
class="hs-collapse-toggle inline-flex items-center gap-x-1 text-sm rounded-lg text-primary hover:text-primary-hover disabled:opacity-50 disabled:pointer-events-none"
|
class="hs-collapse-toggle inline-flex items-center gap-x-1 text-sm rounded-lg text-primary hover:text-primary-hover disabled:opacity-50 disabled:pointer-events-none"
|
||||||
id="hs-show-hide-collapse"
|
id={`hs-show-hide-collapse-${index}`}
|
||||||
aria-expanded="false"
|
aria-expanded="false"
|
||||||
aria-controls={`hs-show-hide-collapse-heading-${index}`}
|
aria-controls={`hs-show-hide-collapse-heading-${index}`}
|
||||||
data-hs-collapse={`#hs-show-hide-collapse-heading-${index}`}
|
data-hs-collapse={`#hs-show-hide-collapse-heading-${index}`}
|
||||||
@@ -138,7 +143,8 @@ const experiences = ((await directus.request(
|
|||||||
</svg>
|
</svg>
|
||||||
</button>
|
</button>
|
||||||
</p>
|
</p>
|
||||||
|
</>
|
||||||
|
)}
|
||||||
<ul
|
<ul
|
||||||
class="flex print:hidden flex-wrap gap-2"
|
class="flex print:hidden flex-wrap gap-2"
|
||||||
aria-label="Technologies used"
|
aria-label="Technologies used"
|
||||||
@@ -153,8 +159,6 @@ const experiences = ((await directus.request(
|
|||||||
)
|
)
|
||||||
})}
|
})}
|
||||||
</ul>
|
</ul>
|
||||||
)}
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|||||||
Reference in New Issue
Block a user