Code Duplication    Length = 26-26 lines in 2 locations

public/js/tinymce/themes/mobile/theme.js 1 location

@@ 5837-5862 (lines=26) @@
5834
        }
5835
      });
5836
    }
5837
    function anyUriToBlob(url) {
5838
      return new Promise(function (resolve, reject) {
5839
        var xhr = new XMLHttpRequest();
5840
        xhr.open('GET', url, true);
5841
        xhr.responseType = 'blob';
5842
        xhr.onload = function () {
5843
          if (this.status == 200) {
5844
            resolve(this.response);
5845
          }
5846
        };
5847
        xhr.onerror = function () {
5848
          var _this = this;
5849
          var corsError = function () {
5850
            var obj = new Error('No access to download image');
5851
            obj.code = 18;
5852
            obj.name = 'SecurityError';
5853
            return obj;
5854
          };
5855
          var genericError = function () {
5856
            return new Error('Error ' + _this.status + ' downloading image');
5857
          };
5858
          reject(this.status === 0 ? corsError() : genericError());
5859
        };
5860
        xhr.send();
5861
      });
5862
    }
5863
    function dataUriToBlobSync(uri) {
5864
      var data = uri.split(',');
5865
      var matches = /data:([^;]+)/.exec(data[0]);

public/js/tinymce/plugins/imagetools/plugin.js 1 location

@@ 472-497 (lines=26) @@
469
        }
470
      });
471
    }
472
    function anyUriToBlob(url) {
473
      return new Promise(function (resolve, reject) {
474
        var xhr = new XMLHttpRequest();
475
        xhr.open('GET', url, true);
476
        xhr.responseType = 'blob';
477
        xhr.onload = function () {
478
          if (this.status == 200) {
479
            resolve(this.response);
480
          }
481
        };
482
        xhr.onerror = function () {
483
          var _this = this;
484
          var corsError = function () {
485
            var obj = new Error('No access to download image');
486
            obj.code = 18;
487
            obj.name = 'SecurityError';
488
            return obj;
489
          };
490
          var genericError = function () {
491
            return new Error('Error ' + _this.status + ' downloading image');
492
          };
493
          reject(this.status === 0 ? corsError() : genericError());
494
        };
495
        xhr.send();
496
      });
497
    }
498
    function dataUriToBlobSync(uri) {
499
      var data = uri.split(',');
500
      var matches = /data:([^;]+)/.exec(data[0]);