version-service

This service provides a mechanism for determining if your local SPA is out of date and needs to be refreshed.

Usage no npm install needed!

<script type="module">
  import versionService from 'https://cdn.skypack.dev/version-service';
</script>

README

Version Service

This service provides a mechanism for determining if your local SPA is out of date and needs to be refreshed.

Install

npm install --save version-service

Use

// es6
import Version from 'version-service';

// node/webpack/etc. + es6
var Version = require('version-service');

// node/webpack/etc. + es5
var Version = require('version-service')['default'];

var url = 'some/url';
var timeout = 500;
var localVersion = '1.0.0';
var callback = function(localVersion, responseVersion) {
    //...do something when versions dont match
}
var versionService = new Version(url, timeout, localVersion, callback);

// you can run a single version check
versionService.checkVersion().then(function(version) {
    /* returns an object of signature:
        {
            isCurrent: localVersion === responseVersion,
            local: localVersion,
            server: responseVersion
        }
    */
});

// to run periodic checks
versionService.start();

// to cancel the periodic checks
versionService.stop();

// you can override the default getVersion function
versionService.setGetVersion(function() {
    // make an api call
    // must return a promise which resolves with a version (typically a string)
});