Service Workers & Progressive Web Apps

How do push notifications work in a PWA?
registration.pushManager.subscribe({
  userVisibleOnly: true,
  applicationServerKey: urlBase64ToUint8Array(publicKey)
}).then(subscription => {
  // Send subscription to server
});

self.addEventListener('push', event => {
  const options = {
    body: event.data.text(),
    icon: 'icon.png',
    badge: 'badge.png'
  };
  event.waitUntil(
    self.registration.showNotification('Push Notification', options)
  );
});
Next Question (9/20)