mirror of
https://github.com/filamentphp/filament.git
synced 2026-08-31 01:14:50 +08:00
fix: preserve sidebar scroll position across navigation (#19632)
This commit is contained in:
Vendored
+1
-1
File diff suppressed because one or more lines are too long
@@ -8,6 +8,32 @@ document.addEventListener('alpine:init', () => {
|
||||
|
||||
collapsedGroups: window.Alpine.$persist(null).as('collapsedGroups'),
|
||||
|
||||
scrollTop: 0,
|
||||
|
||||
init: function () {
|
||||
document.addEventListener('livewire:navigate', () => {
|
||||
const sidebarWrapper = document.querySelector(
|
||||
'.fi-main-sidebar .fi-sidebar-nav',
|
||||
)
|
||||
|
||||
if (sidebarWrapper) {
|
||||
this.scrollTop = sidebarWrapper.scrollTop
|
||||
}
|
||||
})
|
||||
|
||||
document.addEventListener('livewire:navigated', () => {
|
||||
requestAnimationFrame(() => {
|
||||
const sidebarWrapper = document.querySelector(
|
||||
'.fi-main-sidebar .fi-sidebar-nav',
|
||||
)
|
||||
|
||||
if (sidebarWrapper && this.scrollTop) {
|
||||
sidebarWrapper.scrollTop = this.scrollTop
|
||||
}
|
||||
})
|
||||
})
|
||||
},
|
||||
|
||||
groupIsCollapsed: function (group) {
|
||||
return this.collapsedGroups.includes(group)
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user