import { LogoLoader } from 'ui' import { BOOT_FALLBACK_MESSAGE, BOOT_FALLBACK_REVEAL_DELAY_SECONDS, BOOT_FALLBACK_SUPPORT_EMAIL, } from '@/lib/boot-fallback-copy' import { IS_PLATFORM } from '@/lib/constants' // Baked into the prerendered SPA shell (_shell.html) — this is the static HTML // shown on every cold load until the JS bundle hydrates, so nothing here can // rely on JS: the loader animation, the 7s stuck-load help reveal, and the // noscript message are all pure CSS/HTML. export function ShellFallback() { return ( <>
{/* LogoLoader fills its parent, so give it a fixed-height box — otherwise it stretches to the full column and pushes the help text offscreen. */}
{/* data-nosnippet keeps Google from surfacing this boilerplate as the search snippet for dashboard URLs (the shell serves every route). */}

{BOOT_FALLBACK_MESSAGE} {IS_PLATFORM && ( <> {' '} If the problem persists, contact{' '} {BOOT_FALLBACK_SUPPORT_EMAIL} . )}

{/* dangerouslySetInnerHTML keeps React hydration from diffing noscript children, which the server renders as real markup but the client treats as raw text. */}