File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22 import ThemeSwitcher from ' ./ThemeSwitcher.svelte' ;
33 import Icon from ' @iconify/svelte' ;
44
5+ let {
6+ showPricing = true ,
7+ showRegister = true
8+ }: {
9+ showPricing? : boolean ;
10+ showRegister? : boolean ;
11+ } = $props ();
12+
513 let menuOpen = $state (false );
614
715 function toggleMenu() {
816 menuOpen = ! menuOpen ;
917 }
1018
11- const navLinks = [
19+ const navLinks = $derived ( [
1220 { href: ' /' , label: ' Home' },
13- { href: ' /pricing' , label: ' Pricing' },
14- { href: ' /register' , label: ' Register' }
15- ];
21+ ... ( showPricing ? [ { href: ' /pricing' , label: ' Pricing' }] : []) ,
22+ ... ( showRegister ? [ { href: ' /register' , label: ' Register' }] : [])
23+ ]) ;
1624 </script >
1725
1826<header >
Original file line number Diff line number Diff line change 1+ import type { LayoutServerLoad } from './$types' ;
2+ import { isEnabled } from '$lib/feature-flags' ;
3+
4+ export const load : LayoutServerLoad = async ( ) => {
5+ return {
6+ marketingFlags : {
7+ pricing : isEnabled ( 'pricingPage' ) ,
8+ registration : isEnabled ( 'registration' )
9+ }
10+ } ;
11+ } ;
Original file line number Diff line number Diff line change 11<script lang =" ts" >
22 import Header from ' $lib/components/Header.svelte' ;
33 import Footer from ' $lib/components/Footer.svelte' ;
4+ import type { LayoutData } from ' ./$types' ;
45
5- let { children } = $props ();
6+ let { data, children } : { data : LayoutData ; children : import ( ' svelte ' ). Snippet } = $props ();
67 </script >
78
8- <Header />
9+ <Header showPricing ={ data . marketingFlags . pricing } showRegister ={ data . marketingFlags . registration } />
910<main >
1011 {@render children ()}
1112</main >
Original file line number Diff line number Diff line change 11<script lang =" ts" >
22 import SEO from ' $lib/components/SEO.svelte' ;
33 import Icon from ' @iconify/svelte' ;
4+ import type { PageData } from ' ./$types' ;
5+
6+ let { data }: { data: PageData } = $props ();
47 </script >
58
69<SEO
1821 </p >
1922 <div class =" hero-actions" >
2023 <a href =" /register" class =" primary-btn" >Get started</a >
21- <a href =" /pricing" class =" secondary-btn" >View pricing</a >
24+ {#if data .marketingFlags .pricing }
25+ <a href =" /pricing" class =" secondary-btn" >View pricing</a >
26+ {/if }
2227 </div >
2328 </div >
2429</section >
Original file line number Diff line number Diff line change 1+ import { error } from '@sveltejs/kit' ;
2+ import { isEnabled } from '$lib/feature-flags' ;
3+
4+ export function load ( ) {
5+ if ( ! isEnabled ( 'pricingPage' ) ) error ( 404 , 'Not found' ) ;
6+ }
You can’t perform that action at this time.
0 commit comments