48 lines
2.2 KiB
Svelte
48 lines
2.2 KiB
Svelte
<script lang="ts">
|
|
/*
|
|
* Classic homepage design (the original layout, pre-clarity swap).
|
|
*
|
|
* Hero -> Values -> Services -> How it works -> Testimonials -> Founder ->
|
|
* Info -> Booking -> Instagram. Preserved so the homepage can be rolled back
|
|
* to it by swapping the component rendered in src/routes/+page.svelte.
|
|
*
|
|
* Paired design: HomeClarity.svelte. A view component only: the route that
|
|
* renders it owns data loading, SEO head, and structured data.
|
|
*/
|
|
import Footer from '$lib/components/ui/Footer.svelte';
|
|
import Header from '$lib/components/ui/Header.svelte';
|
|
import HeroSection from '$lib/components/sections/HeroSection.svelte';
|
|
import HowItWorksSection from '$lib/components/sections/HowItWorksSection.svelte';
|
|
import InfoSection from '$lib/components/sections/InfoSection.svelte';
|
|
import InstagramSection from '$lib/components/sections/InstagramSection.svelte';
|
|
import BookingWizard from '$lib/components/sections/BookingWizard.svelte';
|
|
import FounderStorySection from '$lib/components/sections/FounderStorySection.svelte';
|
|
import ServicesSection from '$lib/components/sections/ServicesSection.svelte';
|
|
import TestimonialsSection from '$lib/components/sections/TestimonialsSection.svelte';
|
|
import ValuesSection from '$lib/components/sections/ValuesSection.svelte';
|
|
import type { CallToAction, HomePageContent } from '$lib/types';
|
|
import type { AbContext } from '$lib/ab';
|
|
|
|
export let content: HomePageContent;
|
|
export let ab: AbContext | undefined = undefined;
|
|
export let primaryCtaOverride: CallToAction | undefined = undefined;
|
|
export let pagePath = '/';
|
|
</script>
|
|
|
|
<Header navigation={content.navigation} />
|
|
<HeroSection
|
|
hero={content.hero}
|
|
reviewCta={content.intro.reviewCta}
|
|
{primaryCtaOverride}
|
|
{ab}
|
|
/>
|
|
<ValuesSection values={content.values} />
|
|
<ServicesSection services={content.services} />
|
|
<HowItWorksSection content={content.howItWorks} />
|
|
<TestimonialsSection testimonials={content.testimonials} seedKey={pagePath} />
|
|
<FounderStorySection founderStory={content.founderStory} />
|
|
<InfoSection info={content.info} />
|
|
<BookingWizard booking={content.booking} {pagePath} {ab} />
|
|
<InstagramSection instagram={content.instagram} />
|
|
<Footer footer={content.footer} />
|