diff --git a/apps/web/app/(dashboard)/layout.tsx b/apps/web/app/(dashboard)/layout.tsx index bb96558a8e..3e83eaeb23 100644 --- a/apps/web/app/(dashboard)/layout.tsx +++ b/apps/web/app/(dashboard)/layout.tsx @@ -43,22 +43,28 @@ export default function DashboardLayout({ if (!user) return null; + // AppSidebar (and other dashboard children) call hooks that depend on the + // workspace id via useWorkspaceId(), so the entire dashboard tree must + // mount inside WorkspaceIdProvider. Show a fullscreen loader while the + // workspace is still being resolved. + if (!workspace) { + return ( +
+ +
+ ); + } + return ( - - - - {workspace ? ( - - {children} - - - ) : ( -
- -
- )} -
- -
+ + + + + {children} + + + + + ); } diff --git a/apps/web/app/globals.css b/apps/web/app/globals.css index 5e0ad0bd20..f8562ced42 100644 --- a/apps/web/app/globals.css +++ b/apps/web/app/globals.css @@ -1,14 +1,14 @@ @import "tailwindcss"; @import "tw-animate-css"; @import "shadcn/tailwind.css"; -@import "@multica/ui/styles/tokens.css"; +@import "../../../packages/ui/styles/tokens.css"; @import "./custom.css"; @custom-variant dark (&:is(.dark *)); -@source "../../../packages/ui/**/*.tsx"; -@source "../../../packages/core/**/*.tsx"; -@source "../../../packages/views/**/*.tsx"; +@source "../../../packages/ui/**/*.{ts,tsx}"; +@source "../../../packages/core/**/*.{ts,tsx}"; +@source "../../../packages/views/**/*.{ts,tsx}"; @layer base { * {