@danieldx/register-service-worker
TypeScript icon, indicating that this package has built-in type declarations

1.6.0 • Public • Published

register-service-worker

A script to simplify service worker registration with hooks for common events.

Usage

Note: this script uses ES modules export and is expected to be used with a client side bundler that can handle ES modules syntax.

import { register } from 'register-service-worker'

/**
 * immediate: If you registered after the onload event, you can set immediate to true. false means auto registered in onload event handler
 */ 
register('/service-worker.js', { scope: '/', immediate: false }, {
  ready (registration) {
    console.log('Service worker is active.')
  },
  registered (registration) {
    console.log('Service worker has been registered.')
  },
  cached (registration) {
    console.log('Content has been cached for offline use.')
  },
  updatefound (registration) {
    console.log('New content is downloading.')
  },
  updated (registration) {
    console.log('New content is available; please refresh.')
  },
  offline () {
    console.log('No internet connection found. App is running in offline mode.')
  },
  error (error) {
    console.error('Error during service worker registration:', error)
  }
})

The ready, registered, cached, updatefound and updated events passes a ServiceWorkerRegistration instance in their arguments.

Dependencies (0)

    Dev Dependencies (2)

    Package Sidebar

    Install

    npm i @danieldx/register-service-worker

    Weekly Downloads

    1

    Version

    1.6.0

    License

    MIT

    Unpacked Size

    65.3 kB

    Total Files

    8

    Last publish

    Collaborators

    • daniel-dx