From af55bc79f10b387cb5759402317d8db52accf70c Mon Sep 17 00:00:00 2001 From: Adam Weston Date: Thu, 21 May 2026 14:31:41 -0400 Subject: [PATCH] Fix: scope JS asset registration to panel context only Moves FilamentAsset::register() from the service provider into the plugin's boot() method so the asset is only loaded when a panel is active, not on every page using @filamentScripts. Co-Authored-By: Claude Sonnet 4.6 --- src/StickyHeaderPlugin.php | 5 +++++ src/StickyHeaderServiceProvider.php | 6 ------ 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/StickyHeaderPlugin.php b/src/StickyHeaderPlugin.php index 1f12351..70fc4ff 100644 --- a/src/StickyHeaderPlugin.php +++ b/src/StickyHeaderPlugin.php @@ -7,6 +7,7 @@ use Closure; use Filament\Contracts\Plugin; use Filament\Panel; +use Filament\Support\Assets\Js; use Filament\Support\Concerns\EvaluatesClosures; use Filament\Support\Facades\FilamentAsset; @@ -32,6 +33,10 @@ public static function make(): static public function boot(Panel $panel): void { + FilamentAsset::register([ + Js::make('awcodes-sticky-header', __DIR__.'/../resources/dist/sticky-header.js'), + ], 'awcodes-sticky-header'); + FilamentAsset::registerScriptData([ 'stickyHeaderTheme' => $this->getTheme(), 'stickyHeaderActive' => $this->shouldStick(), diff --git a/src/StickyHeaderServiceProvider.php b/src/StickyHeaderServiceProvider.php index 5cb4549..63a631f 100644 --- a/src/StickyHeaderServiceProvider.php +++ b/src/StickyHeaderServiceProvider.php @@ -4,8 +4,6 @@ namespace Awcodes\StickyHeader; -use Filament\Support\Assets\Js; -use Filament\Support\Facades\FilamentAsset; use Spatie\LaravelPackageTools\Package; use Spatie\LaravelPackageTools\PackageServiceProvider; @@ -19,9 +17,5 @@ public function configurePackage(Package $package): void public function packageRegistered(): void { parent::packageRegistered(); - - FilamentAsset::register([ - Js::make('awcodes-sticky-header', __DIR__.'/../resources/dist/sticky-header.js'), - ], 'awcodes-sticky-header'); } }