import { router } from '@inertiajs/core'; import { Link, Head } from '@inertiajs/react'; import classNames from 'classnames'; import React, { PropsWithChildren, useState } from 'react'; import useRoute from '@/Hooks/useRoute'; import useTypedPage from '@/Hooks/useTypedPage'; import ApplicationMark from '@/Components/ApplicationMark'; import Banner from '@/Components/Banner'; import Dropdown from '@/Components/Dropdown'; import DropdownLink from '@/Components/DropdownLink'; import NavLink from '@/Components/NavLink'; import ResponsiveNavLink from '@/Components/ResponsiveNavLink'; import { Team } from '@/types'; interface Props { title: string; renderHeader?(): JSX.Element; } export default function AppLayout({ title, renderHeader, children, }: PropsWithChildren) { const page = useTypedPage(); const route = useRoute(); const [showingNavigationDropdown, setShowingNavigationDropdown] = useState(false); function switchToTeam(e: React.FormEvent, team: Team) { e.preventDefault(); router.put( route('current-team.update'), { team_id: team.id, }, { preserveState: false, }, ); } function logout(e: React.FormEvent) { e.preventDefault(); router.post(route('logout')); } return (
{/* */} {renderHeader ? (
{renderHeader()}
) : null} {/* */}
{children}
); }