chore: sync staging

This commit is contained in:
Esdras Renan 2025-11-10 01:57:45 -03:00
parent c5ddd54a3e
commit 561b19cf66
610 changed files with 105285 additions and 1206 deletions

View file

@ -6,14 +6,16 @@ import { AppSidebar } from "@/components/app-sidebar"
import { AuthGuard } from "@/components/auth/auth-guard"
import { SidebarInset, SidebarProvider } from "@/components/ui/sidebar"
import { Skeleton } from "@/components/ui/skeleton"
import { GlobalQuickActions } from "@/components/global-quick-actions"
import { useAuth } from "@/lib/auth-client"
interface AppShellProps {
header: ReactNode
children: ReactNode
}
export function AppShell({ header, children }: AppShellProps) {
interface AppShellProps {
header: ReactNode
children: ReactNode
showQuickActions?: boolean
}
export function AppShell({ header, children, showQuickActions = true }: AppShellProps) {
const { isLoading } = useAuth()
const [hydrated, setHydrated] = useState(false)
@ -44,6 +46,9 @@ export function AppShell({ header, children }: AppShellProps) {
) : (
header
)}
{showQuickActions ? (
renderSkeleton ? <QuickActionsSkeleton /> : <GlobalQuickActions />
) : null}
<main className="flex flex-1 flex-col gap-8 bg-gradient-to-br from-background via-background to-primary/10 pb-12 pt-6">
{renderSkeleton ? (
<div className="space-y-6">
@ -65,3 +70,15 @@ export function AppShell({ header, children }: AppShellProps) {
</SidebarProvider>
)
}
function QuickActionsSkeleton() {
return (
<div className="border-b border-border/60 bg-muted/30 px-4 py-3 lg:px-8">
<div className="flex gap-3 overflow-x-hidden">
{Array.from({ length: 3 }).map((_, index) => (
<Skeleton key={`qa-skeleton-${index}`} className="h-12 w-48 rounded-2xl" />
))}
</div>
</div>
)
}