Nostalgic Primordial Monster

    choo-service-worker

    3.0.0 • Public • Published

    choo-service-worker stability

    npm version build status downloads js-standard-style

    Service worker loader for choo. Only runs in the browser, and emits events. Does not include the worker code itself, you'll need to serve it using a tool like bankai.

    Usage

    var choo = require('choo')
     
    var app = choo()
    if (process.env.NODE_ENV !== 'production') {
      app.use(require('choo-service-worker/clear')())
    }
    app.use(require('choo-service-worker')())
    app.mount('body')

    The above example will install your service worker, and add the events and state properties documented below. For a complete example on how to use them check the example.js file.

    Events

    log:error | sw.events.ERROR

    Emitted if the worker fails to register.

    sw:installed | sw.events.INSTALLED

    Emitted when the worker correctly registers for the first time.

    sw:updated | sw.events.UPDATED

    Emitted when an already saved worker register or update its content.

    sw:redundant | sw.events.REDUNDANT

    Emitted when an existing worker become redundant.

    sw:postMessage | sw.events.POST_MESSAGE

    Emit this to post a message to the current service worker. This event is not meant to be handled by choo (or any client).

    sw:message | sw.events.MESSAGE

    Listen to this event to hadle messages from the worker. This event is not meant to be sent by choo (or any client).

    sw:sync | sw.events.SYNC

    Emit this to register a sync tag to the service worker. This event is not meant to be handled by choo (or any client).

    sw:notificationRequest | sw.events.NOTIFICATION_REQUEST

    Emit this to ask for authorization to send notifications. This event is not meant to be handled by choo (or any client).

    API

    plugin = sw([route], [opts])

    Register a new service worker if possible. Route defaults to /sw.js. An optional opts object can be passed, you can add a electron Boolean property to the options object, to enable registration in electron, the rest of the options are passed directly to the registration method of the service worker. Note that, if you enable electron with opts.electron, the scope property will be forced to the root path of your app. Emits events when the worker is registered. The plugin also add a few properties to the app state.

    • state.syncTags: array - an array of registered tags for background syncronization.

    clear = sw/clear()

    Clear all service workers.

    License

    MIT

    Install

    npm i choo-service-worker

    DownloadsWeekly Downloads

    99

    Version

    3.0.0

    License

    MIT

    Unpacked Size

    14 kB

    Total Files

    8

    Last publish

    Collaborators

    • ahdinosaur
    • almost
    • amongiants
    • benlyn
    • bret
    • colingourlay
    • emilbayes
    • feross
    • freeman-lab
    • goto-bus-stop
    • graforlock
    • jameskyburz
    • juliangruber
    • lrlna
    • mafintosh
    • maxogden
    • s3ththompson
    • sethvincent
    • shama
    • slaskis
    • substack
    • timwis
    • toddself
    • tornqvist
    • ungoldman
    • yerkopalma
    • yoshuawuyts