Duffer Derek
// PWA Installation Utility
// Global handler for beforeinstallprompt event
let globalDeferredPrompt: any = null;
// Global event listener for beforeinstallprompt
if (typeof window !== 'undefined') {
window.addEventListener('beforeinstallprompt', (e: any) => {
// console.log('Global beforeinstallprompt event fired', e);
e.preventDefault();
globalDeferredPrompt = e;
// Dispatch custom event to notify components
window.dispatchEvent(new CustomEvent('pwaInstallPromptAvailable', { detail: e }));
});
// Handle app installed event
window.addEventListener('appinstalled', () => {
// console.log('PWA was installed globally');
globalDeferredPrompt = null;
localStorage.setItem('pwa_installed', 'true');
// Dispatch custom event
window.dispatchEvent(new CustomEvent('pwaInstalled'));
});
}
export const getGlobalDeferredPrompt = () => globalDeferredPrompt;
export const clearGlobalDeferredPrompt = () => {
globalDeferredPrompt = null;
};
export const isPWAInstallSupported = (): boolean => {
if (typeof window === 'undefined') return false;
return 'onbeforeinstallprompt' in window;
};
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists