import { LogoLoader } from 'ui'
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). */}
Taking longer than expected? Try clearing your browser cookies and reloading the page.
{IS_PLATFORM && (
<>
{' '}
If the problem persists, contact{' '}
support@supabase.com
.
>
)}
{/* dangerouslySetInnerHTML keeps React hydration from diffing noscript
children, which the server renders as real markup but the client
treats as raw text. */}