forked from cybrespace/pinafore
		
	
		
			
				
	
	
		
			17 lines
		
	
	
	
		
			576 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			17 lines
		
	
	
	
		
			576 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
import { toast } from './toast'
 | 
						|
 | 
						|
function onUpdateFound (registration) {
 | 
						|
  const newWorker = registration.installing
 | 
						|
 | 
						|
  newWorker.addEventListener('statechange', async () => {
 | 
						|
    if (newWorker.state === 'installed' && navigator.serviceWorker.controller) {
 | 
						|
      toast.say('App update available. Reload to update.')
 | 
						|
    }
 | 
						|
  })
 | 
						|
}
 | 
						|
 | 
						|
if (!location.origin.match('localhost') && 'serviceWorker' in navigator) {
 | 
						|
  navigator.serviceWorker.register('/service-worker.js').then(registration => {
 | 
						|
    registration.addEventListener('updatefound', () => onUpdateFound(registration))
 | 
						|
  })
 | 
						|
}
 |