diff --git a/app/Http/Middleware/HandleInertiaRequests.php b/app/Http/Middleware/HandleInertiaRequests.php index 7389f4a..8cb15d1 100644 --- a/app/Http/Middleware/HandleInertiaRequests.php +++ b/app/Http/Middleware/HandleInertiaRequests.php @@ -38,10 +38,6 @@ public function share(Request $request): array { return [ ...parent::share($request), - 'auth' => [ - 'user' => $request->user(), - 'user_is_admin' => user_is_master_admin($request->user()), - ], 'ziggy' => fn (): array => [ ...(new Ziggy)->toArray(), 'location' => $request->url(), diff --git a/resources/js/app.tsx b/resources/js/app.tsx index 6b92f94..09ee4aa 100644 --- a/resources/js/app.tsx +++ b/resources/js/app.tsx @@ -8,8 +8,6 @@ import { ErrorBoundary } from 'react-error-boundary'; import { GA4Provider } from '@/plugins/GA4Context.jsx'; // Updated import import DetailedErrorFallback from './components/custom/detailed-error-fallback'; // Import your component import { Toaster } from './components/ui/sonner'; -import { useTheme } from './hooks/useTheme'; -import AuthDialog from './modules/auth/AuthDialog'; import { AxiosProvider } from './plugins/AxiosContext'; import { MittProvider } from './plugins/MittContext'; @@ -40,8 +38,7 @@ createInertiaApp({ - - + {/* */} diff --git a/resources/js/components/app-header.tsx b/resources/js/components/app-header.tsx index 854f7d7..ba85230 100644 --- a/resources/js/components/app-header.tsx +++ b/resources/js/components/app-header.tsx @@ -7,8 +7,9 @@ import { Sheet, SheetContent, SheetHeader, SheetTitle, SheetTrigger } from '@/co import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'; import { UserMenuContent } from '@/components/user-menu-content'; import { cn } from '@/lib/utils'; -import { type BreadcrumbItem, type NavItem, type SharedData } from '@/types'; -import { Link, usePage } from '@inertiajs/react'; +import { type BreadcrumbItem, type NavItem } from '@/types'; +import { Link } from '@inertiajs/react'; +import useUserStore from '@/stores/UserStore'; import { LayoutGrid, Menu, Search } from 'lucide-react'; import AppLogo from './app-logo'; import AppLogoIcon from './app-logo-icon'; @@ -41,8 +42,7 @@ interface AppHeaderProps { } export function AppHeader({ breadcrumbs = [] }: AppHeaderProps) { - const page = usePage(); - const { auth } = page.props; + const { user } = useUserStore(); return ( <>
@@ -156,7 +156,7 @@ export function AppHeader({ breadcrumbs = [] }: AppHeaderProps) { - +
diff --git a/resources/js/components/app-sidebar.tsx b/resources/js/components/app-sidebar.tsx index 334541b..f1b1ebb 100644 --- a/resources/js/components/app-sidebar.tsx +++ b/resources/js/components/app-sidebar.tsx @@ -2,8 +2,9 @@ import { NavFooter } from '@/components/nav-footer'; import { NavMain } from '@/components/nav-main'; import { NavUser } from '@/components/nav-user'; import { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, SidebarMenu, SidebarMenuButton, SidebarMenuItem } from '@/components/ui/sidebar'; -import { SharedData, type NavItem } from '@/types'; -import { Link, usePage } from '@inertiajs/react'; +import { type NavItem } from '@/types'; +import { Link } from '@inertiajs/react'; +import useUserStore from '@/stores/UserStore'; import { LayoutGrid, UserCog } from 'lucide-react'; import AppLogo from './app-logo'; @@ -42,7 +43,7 @@ const footerNavItems: NavItem[] = [ ]; export function AppSidebar() { - const { auth } = usePage().props; + const { user } = useUserStore(); return ( diff --git a/resources/js/components/nav-user.tsx b/resources/js/components/nav-user.tsx index 1210250..271e952 100644 --- a/resources/js/components/nav-user.tsx +++ b/resources/js/components/nav-user.tsx @@ -3,12 +3,11 @@ import { SidebarMenu, SidebarMenuButton, SidebarMenuItem, useSidebar } from '@/c import { UserInfo } from '@/components/user-info'; import { UserMenuContent } from '@/components/user-menu-content'; import { useIsMobile } from '@/hooks/use-mobile'; -import { type SharedData } from '@/types'; -import { usePage } from '@inertiajs/react'; +import useUserStore from '@/stores/UserStore'; import { ChevronsUpDown } from 'lucide-react'; export function NavUser() { - const { auth } = usePage().props; + const { user } = useUserStore(); const { state } = useSidebar(); const isMobile = useIsMobile(); @@ -18,7 +17,7 @@ export function NavUser() { - + @@ -27,7 +26,7 @@ export function NavUser() { align="end" side={isMobile ? 'bottom' : state === 'collapsed' ? 'left' : 'bottom'} > - + diff --git a/resources/js/modules/auth/AuthDialog.jsx b/resources/js/modules/auth/AuthDialog.jsx index 74ba2e7..0e840a1 100644 --- a/resources/js/modules/auth/AuthDialog.jsx +++ b/resources/js/modules/auth/AuthDialog.jsx @@ -18,7 +18,8 @@ const AuthDialog = ({}) => { // Listen for text element selection (but don't auto-open sidebar) useEffect(() => { const handleOpenAuth = () => { - setIsOpen(true); + // Disabled for MVP - don't auto-open auth dialog + // setIsOpen(true); }; const handleOpenLogin = () => { diff --git a/resources/js/modules/auth/auth-user.jsx b/resources/js/modules/auth/auth-user.jsx index 926118d..8b9052d 100644 --- a/resources/js/modules/auth/auth-user.jsx +++ b/resources/js/modules/auth/auth-user.jsx @@ -1,18 +1,15 @@ import useUserStore from '@/stores/UserStore'; -import { usePage } from '@inertiajs/react'; import { useEffect } from 'react'; const AuthUser = () => { - const { auth } = usePage().props; const { user, fetchUser } = useUserStore(); useEffect(() => { - if (auth.user) { - if (user == null) { - fetchUser(); - } + // Always try to fetch user data on component mount + if (user === null) { + fetchUser(); } - }, [auth.user]); + }, [user, fetchUser]); }; export default AuthUser; diff --git a/resources/js/modules/editor/partials/edit-nav-sidebar.jsx b/resources/js/modules/editor/partials/edit-nav-sidebar.jsx index 5400735..2d2d696 100644 --- a/resources/js/modules/editor/partials/edit-nav-sidebar.jsx +++ b/resources/js/modules/editor/partials/edit-nav-sidebar.jsx @@ -1,13 +1,12 @@ -import { usePage } from '@inertiajs/react'; - import { Button } from '@/components/ui/button'; import { Sheet, SheetContent, SheetHeader, SheetTitle } from '@/components/ui/sheet'; import { useMitt } from '@/plugins/MittContext'; import useLocalSettingsStore from '@/stores/localSettingsStore'; +import useUserStore from '@/stores/UserStore'; import { Link } from '@inertiajs/react'; export default function EditNavSidebar({ isOpen, onClose }) { - const { auth } = usePage().props; + const { user } = useUserStore(); const emitter = useMitt(); @@ -32,7 +31,7 @@ export default function EditNavSidebar({ isOpen, onClose }) {
- {!auth.user && ( + {!user && ( )} - {!auth.user && ( + {!user && (
)}
- {auth.user ? ( + {user ? ( <>