Code coverage report for imgly-sdk-html5/src/js/lib/version-checker.js

Statements: 69.23% (27 / 39)      Branches: 83.33% (10 / 12)      Functions: 62.5% (5 / 8)      Lines: 47.83% (11 / 23)      Ignored: 3 statements, 1 function, 5 branches     

All files » imgly-sdk-html5/src/js/lib/ » version-checker.js
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63                        1         1       1   1 1   1 1                       1                                   1     1 1  
/*
 * Photo Editor SDK - photoeditorsdk.com
 * Copyright (c) 2013-2015 9elements GmbH
 *
 * Released under Attribution-NonCommercial 3.0 Unported
 * http://creativecommons.org/licenses/by-nc/3.0/
 *
 * For commercial use, please contact us at contact@9elements.com
 */
 
'use strict';
 
Object.defineProperty(exports, '__esModule', {
  value: true
});
// istanbul ignore next
 
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; Eif ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { Eif (protoProps) defineProperties(Constructor.prototype, protoProps); Iif (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
 
// istanbul ignore next
 
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
 
var VERSION_CHECK_FN = 'imglySDKVersionCallback';
var VERSION_CHECK_URL = 'https://www.photoeditorsdk.com/version.json?sdk=html5&jsoncallback=' + VERSION_CHECK_FN;
 
var VersionChecker = (function () {
  function VersionChecker(version) {
    _classCallCheck(this, VersionChecker);
 
    this._version = version;
    this._check();
  }
 
  /**
   * Checks if this version of the SDK is outdated
   * @private
   */
 
  _createClass(VersionChecker, [{
    key: '_check',
    value: function _check() {
      var self = this;
      window[VERSION_CHECK_FN] = function (response) {
        if (response.outdated) {
          console.warn('imgly-sdk-html5: Your version ' + self._version + ' is outdated.');
          console.warn('imgly-sdk-html5: Current version is ' + response.version + '.');
        }
      };
 
      var script = document.createElement('script');
      script.src = VERSION_CHECK_URL + '&version=' + this._version;
      script.async = true;
      document.getElementsByTagName('head')[0].appendChild(script);
    }
  }]);
 
  return VersionChecker;
})();
 
exports['default'] = VersionChecker;
module.exports = exports['default'];
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9yb290L1NFUlZFUi9pbWdseS1zZGstaHRtbDUvc3JjL2pzL2xpYi92ZXJzaW9uLWNoZWNrZXIuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVQSxJQUFNLGdCQUFnQixHQUFHLHlCQUF5QixDQUFBO0FBQ2xELElBQU0saUJBQWlCLDJFQUF5RSxnQkFBZ0IsQUFBRSxDQUFBOztJQUU3RixjQUFjO0FBQ3JCLFdBRE8sY0FBYyxDQUNwQixPQUFPLEVBQUU7MEJBREgsY0FBYzs7QUFFL0IsUUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUE7QUFDdkIsUUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO0dBQ2Q7Ozs7Ozs7ZUFKa0IsY0FBYzs7V0FVMUIsa0JBQUc7QUFDUixVQUFJLElBQUksR0FBRyxJQUFJLENBQUE7QUFDZixZQUFNLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxVQUFDLFFBQVEsRUFBSztBQUN2QyxZQUFJLFFBQVEsQ0FBQyxRQUFRLEVBQUU7QUFDckIsaUJBQU8sQ0FBQyxJQUFJLG9DQUFrQyxJQUFJLENBQUMsUUFBUSxtQkFBZ0IsQ0FBQTtBQUMzRSxpQkFBTyxDQUFDLElBQUksMENBQXdDLFFBQVEsQ0FBQyxPQUFPLE9BQUksQ0FBQTtTQUN6RTtPQUNGLENBQUE7O0FBRUQsVUFBSSxNQUFNLEdBQUcsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtBQUM3QyxZQUFNLENBQUMsR0FBRyxHQUFHLGlCQUFpQixHQUFHLFdBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFBO0FBQzVELFlBQU0sQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFBO0FBQ25CLGNBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUE7S0FDN0Q7OztTQXZCa0IsY0FBYzs7O3FCQUFkLGNBQWMiLCJmaWxlIjoiL3Jvb3QvU0VSVkVSL2ltZ2x5LXNkay1odG1sNS9zcmMvanMvbGliL3ZlcnNpb24tY2hlY2tlci5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQaG90byBFZGl0b3IgU0RLIC0gcGhvdG9lZGl0b3JzZGsuY29tXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTMtMjAxNSA5ZWxlbWVudHMgR21iSFxuICpcbiAqIFJlbGVhc2VkIHVuZGVyIEF0dHJpYnV0aW9uLU5vbkNvbW1lcmNpYWwgMy4wIFVucG9ydGVkXG4gKiBodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1uYy8zLjAvXG4gKlxuICogRm9yIGNvbW1lcmNpYWwgdXNlLCBwbGVhc2UgY29udGFjdCB1cyBhdCBjb250YWN0QDllbGVtZW50cy5jb21cbiAqL1xuXG5jb25zdCBWRVJTSU9OX0NIRUNLX0ZOID0gJ2ltZ2x5U0RLVmVyc2lvbkNhbGxiYWNrJ1xuY29uc3QgVkVSU0lPTl9DSEVDS19VUkwgPSBgaHR0cHM6Ly93d3cucGhvdG9lZGl0b3JzZGsuY29tL3ZlcnNpb24uanNvbj9zZGs9aHRtbDUmanNvbmNhbGxiYWNrPSR7VkVSU0lPTl9DSEVDS19GTn1gXG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFZlcnNpb25DaGVja2VyIHtcbiAgY29uc3RydWN0b3IgKHZlcnNpb24pIHtcbiAgICB0aGlzLl92ZXJzaW9uID0gdmVyc2lvblxuICAgIHRoaXMuX2NoZWNrKClcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhpcyB2ZXJzaW9uIG9mIHRoZSBTREsgaXMgb3V0ZGF0ZWRcbiAgICogQHByaXZhdGVcbiAgICovXG4gIF9jaGVjayAoKSB7XG4gICAgbGV0IHNlbGYgPSB0aGlzXG4gICAgd2luZG93W1ZFUlNJT05fQ0hFQ0tfRk5dID0gKHJlc3BvbnNlKSA9PiB7XG4gICAgICBpZiAocmVzcG9uc2Uub3V0ZGF0ZWQpIHtcbiAgICAgICAgY29uc29sZS53YXJuKGBpbWdseS1zZGstaHRtbDU6IFlvdXIgdmVyc2lvbiAke3NlbGYuX3ZlcnNpb259IGlzIG91dGRhdGVkLmApXG4gICAgICAgIGNvbnNvbGUud2FybihgaW1nbHktc2RrLWh0bWw1OiBDdXJyZW50IHZlcnNpb24gaXMgJHtyZXNwb25zZS52ZXJzaW9ufS5gKVxuICAgICAgfVxuICAgIH1cblxuICAgIGxldCBzY3JpcHQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdzY3JpcHQnKVxuICAgIHNjcmlwdC5zcmMgPSBWRVJTSU9OX0NIRUNLX1VSTCArICcmdmVyc2lvbj0nICsgdGhpcy5fdmVyc2lvblxuICAgIHNjcmlwdC5hc3luYyA9IHRydWVcbiAgICBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdLmFwcGVuZENoaWxkKHNjcmlwdClcbiAgfVxufVxuIl19