export default function PublicLayout(props: RouteSectionProps) {
const user = createAsync(() => getUser());
const location = useLocation();
return (
<MetaProvider>
<Switch
fallback={
{/* Public content */}
<Suspense>{props.children}</Suspense>
}
>
<Match when={location.pathname === '/' && !user()}>
{/* Public home page */}
<Suspense><HeroPage /></Suspense>
</Match>
<Match when={location.pathname === '/' && user()}>
{/* Protected home page */}
<Suspense><Home /></Suspense>
</Match>
</Switch>
</MetaProvider>
);
}
export default function PublicLayout(props: RouteSectionProps) {
const user = createAsync(() => getUser());
const location = useLocation();
return (
<MetaProvider>
<Switch
fallback={
{/* Public content */}
<Suspense>{props.children}</Suspense>
}
>
<Match when={location.pathname === '/' && !user()}>
{/* Public home page */}
<Suspense><HeroPage /></Suspense>
</Match>
<Match when={location.pathname === '/' && user()}>
{/* Protected home page */}
<Suspense><Home /></Suspense>
</Match>
</Switch>
</MetaProvider>
);
}