Inject PWA manifest and service worker registration into AdminPanelProvider

This commit is contained in:
dhanabalan
2025-11-04 15:31:38 +05:30
parent 420ab6c27b
commit 6a9d077c59
2 changed files with 18 additions and 23 deletions

View File

@@ -70,28 +70,5 @@ class AppServiceProvider extends ServiceProvider
ini_set('max_execution_time', 300); // 300 seconds = 5 minutes
ini_set('memory_limit', '512M'); // 512MB
/**
* Inject PWA manifest + service worker
* into Filament head section
*/
\Filament\Support\Facades\FilamentView::registerRenderHook(
'head.end',
fn() => <<<HTML
<link rel="manifest" href="/manifest.json">
<meta name="theme-color" content="#007bff">
<script>
if ('serviceWorker' in navigator) {
navigator.serviceWorker.register('/sw.js')
.then(function(reg) {
console.log('✅ Service Worker registered:', reg.scope);
}).catch(function(err) {
console.error('❌ Service Worker registration failed:', err);
});
}
</script>
HTML
);
}
}

View File

@@ -95,4 +95,22 @@ class AdminPanelProvider extends PanelProvider
)
->plugin(FilamentSpatieRolesPermissionsPlugin::make());
}
public function boot(): void
{
FilamentView::registerRenderHook(
'head.end',
fn() => '
<link rel="manifest" href="' . asset('manifest.json') . '">
<meta name="theme-color" content="#007bff">
<script>
if ("serviceWorker" in navigator) {
navigator.serviceWorker.register("/sw.js")
.then(reg => console.log("✅ Service Worker registered:", reg.scope))
.catch(err => console.error("❌ SW registration failed:", err));
}
</script>
'
);
}
}