Skip to content

Commit 089781e

Browse files
committed
Fix sidebar persistence
1 parent 5aced91 commit 089781e

File tree

3 files changed

+22
-36
lines changed

3 files changed

+22
-36
lines changed

resources/js/Components/UI/Button.tsx

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ const buttonVariants = cva(
3333
}
3434
)
3535

36-
const loadingSpinnerVariants = cva('', {
36+
const loadingSpinnerVariants = cva('ml-2 -mr-2', {
3737
variants: {
3838
variant: {
3939
default: 'text-primary-foreground',
@@ -69,23 +69,8 @@ const Button = React.forwardRef<HTMLButtonElement, ButtonProps>(
6969
disabled={loading}
7070
{...props}
7171
>
72-
<span
73-
className={cn(
74-
loading ? 'scale-100 opacity-100' : 'scale-50 opacity-0',
75-
'absolute inset-0 flex items-center justify-center transition-all duration-300 ease-in-out'
76-
)}
77-
>
78-
<LoadingSpinner className={loadingSpinnerVariants({ variant })} />
79-
</span>
80-
81-
<span
82-
className={cn(
83-
loading ? 'scale-95 opacity-0' : 'scale-100 opacity-100',
84-
'inline-flex transition-all duration-300 ease-out'
85-
)}
86-
>
87-
{children}
88-
</span>
72+
{children}
73+
{loading && <LoadingSpinner className={loadingSpinnerVariants({ variant })} />}
8974
</Comp>
9075
)
9176
}

resources/js/Layouts/AuthenticatedLayout.tsx

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { AppSidebar } from '@/Components/AppSidebar'
33
import { MobileHeader } from '@/Components/MobileHeader'
44
import { PageBreadcrumbs } from '@/Components/PageBreadcrumbs'
55
import { Separator } from '@/Components/UI/Separator'
6-
import { SidebarProvider, SidebarTrigger } from '@/Components/UI/Sidebar'
6+
import { SidebarTrigger } from '@/Components/UI/Sidebar'
77
import { PropsWithChildren } from 'react'
88

99
export function AuthenticatedLayout({
@@ -15,26 +15,24 @@ export function AuthenticatedLayout({
1515
const Breadcrumbs = breadcrumbs ?? PageBreadcrumbs
1616

1717
return (
18-
<SidebarProvider>
19-
<div className="flex h-full w-full flex-col lg:flex-row">
20-
<MobileHeader />
18+
<div className="flex h-full w-full flex-col lg:flex-row">
19+
<MobileHeader />
2120

22-
<AppSidebar />
21+
<AppSidebar />
2322

24-
<div className="flex min-h-dvh grow flex-col justify-between overflow-hidden border-t lg:border-t-0">
25-
<main className="lg:pt-14">
26-
<header className="top-0 z-10 flex h-14 w-full items-center gap-2 border-b bg-muted px-4 backdrop-blur-sm sm:px-6 lg:fixed lg:bg-background/80 lg:px-8">
27-
<SidebarTrigger className="-ml-6 hidden lg:flex" />
28-
<Separator orientation="vertical" className="mr-3 hidden h-4 lg:block" />
29-
<Breadcrumbs />
30-
</header>
23+
<div className="flex min-h-dvh grow flex-col justify-between overflow-hidden border-t lg:border-t-0">
24+
<main className="lg:pt-14">
25+
<header className="top-0 z-10 flex h-14 w-full items-center gap-2 border-b bg-muted px-4 backdrop-blur-sm sm:px-6 lg:fixed lg:bg-background/80 lg:px-8">
26+
<SidebarTrigger className="-ml-6 hidden lg:flex" />
27+
<Separator orientation="vertical" className="mr-3 hidden h-4 lg:block" />
28+
<Breadcrumbs />
29+
</header>
3130

32-
<div className="overflow-y-auto px-4 py-10 sm:px-6 lg:px-8">{children}</div>
33-
</main>
31+
<div className="overflow-y-auto px-4 py-10 sm:px-6 lg:px-8">{children}</div>
32+
</main>
3433

35-
<AppFooter />
36-
</div>
34+
<AppFooter />
3735
</div>
38-
</SidebarProvider>
36+
</div>
3937
)
4038
}

resources/js/app.tsx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { DarkModeProvider } from '@/Components/Providers/DarkModeProvider'
2+
import { SidebarProvider } from '@/Components/UI/Sidebar'
23
import { DefaultLayout } from '@/Layouts/DefaultLayout'
34
import { createInertiaApp } from '@inertiajs/react'
45
import { LaravelReactI18nProvider } from 'laravel-react-i18n'
@@ -28,7 +29,9 @@ createInertiaApp({
2829
createRoot(el).render(
2930
<LaravelReactI18nProvider files={import.meta.glob('/lang/*.json')}>
3031
<DarkModeProvider>
31-
<App {...props} />
32+
<SidebarProvider>
33+
<App {...props} />
34+
</SidebarProvider>
3235
</DarkModeProvider>
3336
</LaravelReactI18nProvider>
3437
)

0 commit comments

Comments
 (0)