import React from 'react'; import { cn } from '@/components/ui/core/styling'; import { Spinner } from '@/components/ui/loading-spinner'; import { TextGenerateEffect } from './text-generate-effect'; /** * The single, canonical full-screen loading state for the whole app * (configure, dashboard, route guards). Keeping one component here means * navigating between guard → page never swaps loaders, so there is no flash. * * It also waits a short beat before appearing and then fades in: loads that * resolve quickly (the common case) finish before the delay and the user sees * nothing at all, instead of a logo that blinks for ~200ms. */ export function LoadingOverlayWithLogo({ title }: { title?: string }) { return (
{/* AIOStreams */} {title && ( )}
); }