From 6944323816a3365a9507747eb222ce78a858955f Mon Sep 17 00:00:00 2001 From: Sherwin H Date: Wed, 27 Feb 2019 15:18:05 -0800 Subject: [PATCH] fix: * removed arrow function * malformed require path --- dist/imgix-core-js.js | 34 +++++++++++++++++++++------------- dist/imgix-core-js.min.js | 2 +- src/imgix-core-js.js | 7 ++----- 3 files changed, 24 insertions(+), 19 deletions(-) diff --git a/dist/imgix-core-js.js b/dist/imgix-core-js.js index f5030ac62..c1e3f1adb 100644 --- a/dist/imgix-core-js.js +++ b/dist/imgix-core-js.js @@ -1,3 +1,5 @@ +var constants = require("../src/constants.js"); + (function (global, factory) { if (typeof define === 'function' && define.amd) { define('Imgix', ['exports', 'md5', 'js-base64', 'crc'], factory); @@ -14,15 +16,12 @@ var Base64 = _jsBase64.Base64 || _jsBase64; var crc = _crc; - var VERSION = '1.2.0'; - var SHARD_STRATEGY_CRC = 'crc'; - var SHARD_STRATEGY_CYCLE = 'cycle'; var DEFAULTS = { host: null, domains: [], useHTTPS: true, includeLibraryParam: true, - shard_strategy: SHARD_STRATEGY_CRC + shard_strategy: constants.SHARD_STRATEGY_CRC }; var ImgixClient = (function() { @@ -50,10 +49,10 @@ throw new Error('ImgixClient must be passed valid domain(s)'); } - if (this.settings.shard_strategy !== SHARD_STRATEGY_CRC - && this.settings.shard_strategy !== SHARD_STRATEGY_CYCLE) { + if (this.settings.shard_strategy !== constants.SHARD_STRATEGY_CRC + && this.settings.shard_strategy !== constants.SHARD_STRATEGY_CYCLE) { throw new Error('Shard strategy must be one of ' + - SHARD_STRATEGY_CRC + ' or ' + SHARD_STRATEGY_CYCLE); + constants.SHARD_STRATEGY_CRC + ' or ' + constants.SHARD_STRATEGY_CYCLE); } if (this.settings.host) { @@ -62,8 +61,17 @@ this.settings.domains[0] = this.settings.host; } + this.settings.domains.forEach(function(domain) { + if(constants.DOMAIN_REGEX.exec(domain) == null){ + throw new Error( + 'Domains must be passed in as fully-qualified ' + + 'domain names and should not include a protocol or any path ' + + 'element, i.e. "example.imgix.net".'); + } + }); + if (this.settings.includeLibraryParam) { - this.settings.libraryParam = "js-" + VERSION; + this.settings.libraryParam = "js-" + constants.VERSION; } this.settings.urlPrefix = this.settings.useHTTPS ? 'https://' : 'http://' @@ -85,12 +93,12 @@ }; ImgixClient.prototype._getDomain = function(path) { - if (this.settings.shard_strategy === SHARD_STRATEGY_CYCLE) { + if (this.settings.shard_strategy === constants.SHARD_STRATEGY_CYCLE) { var domain = this.settings.domains[this._shard_next_index]; this._shard_next_index = (this._shard_next_index + 1) % this.settings.domains.length; return domain; } - else if (this.settings.shard_strategy === SHARD_STRATEGY_CRC) { + else if (this.settings.shard_strategy === constants.SHARD_STRATEGY_CRC) { return this.settings.domains[crc.crc32(path) % this.settings.domains.length]; } } @@ -149,9 +157,9 @@ } }; - ImgixClient.VERSION = VERSION; - ImgixClient.SHARD_STRATEGY_CRC = SHARD_STRATEGY_CRC; - ImgixClient.SHARD_STRATEGY_CYCLE = SHARD_STRATEGY_CYCLE; + ImgixClient.VERSION = constants.VERSION; + ImgixClient.SHARD_STRATEGY_CRC = constants.SHARD_STRATEGY_CRC; + ImgixClient.SHARD_STRATEGY_CYCLE = constants.SHARD_STRATEGY_CYCLE; return ImgixClient; })(); diff --git a/dist/imgix-core-js.min.js b/dist/imgix-core-js.min.js index bc7af1b07..fe4b8b48b 100644 --- a/dist/imgix-core-js.min.js +++ b/dist/imgix-core-js.min.js @@ -1 +1 @@ -(function(global,factory){if(typeof define==="function"&&define.amd){define("Imgix",["exports","md5","js-base64","crc"],factory)}else if(typeof exports!=="undefined"){module.exports=factory(exports,require("md5"),require("js-base64").Base64,require("crc"))}else{var mod={exports:{}};global.ImgixClient=factory(mod.exports,global.md5,global.Base64,global.crc)}})(this,function(exports,_md5,_jsBase64,_crc){var md5=_md5;var Base64=_jsBase64.Base64||_jsBase64;var crc=_crc;var VERSION="1.2.0";var SHARD_STRATEGY_CRC="crc";var SHARD_STRATEGY_CYCLE="cycle";var DEFAULTS={host:null,domains:[],useHTTPS:true,includeLibraryParam:true,shard_strategy:SHARD_STRATEGY_CRC};var ImgixClient=function(){function ImgixClient(opts){var key,val;this.settings={};this._shard_next_index=0;for(key in DEFAULTS){val=DEFAULTS[key];this.settings[key]=val}for(key in opts){val=opts[key];this.settings[key]=val}if(!Array.isArray(this.settings.domains)){this.settings.domains=[this.settings.domains]}if(!this.settings.host&&this.settings.domains.length===0){throw new Error("ImgixClient must be passed valid domain(s)")}if(this.settings.shard_strategy!==SHARD_STRATEGY_CRC&&this.settings.shard_strategy!==SHARD_STRATEGY_CYCLE){throw new Error("Shard strategy must be one of "+SHARD_STRATEGY_CRC+" or "+SHARD_STRATEGY_CYCLE)}if(this.settings.host){console.warn("'host' argument is deprecated; use 'domains' instead.");if(this.settings.domains.length==0)this.settings.domains[0]=this.settings.host}if(this.settings.includeLibraryParam){this.settings.libraryParam="js-"+VERSION}this.settings.urlPrefix=this.settings.useHTTPS?"https://":"http://"}ImgixClient.prototype.buildURL=function(path,params){path=this._sanitizePath(path);if(params==null){params={}}var queryParams=this._buildParams(params);if(!!this.settings.secureURLToken){queryParams=this._signParams(path,queryParams)}return this.settings.urlPrefix+this._getDomain(path)+path+queryParams};ImgixClient.prototype._getDomain=function(path){if(this.settings.shard_strategy===SHARD_STRATEGY_CYCLE){var domain=this.settings.domains[this._shard_next_index];this._shard_next_index=(this._shard_next_index+1)%this.settings.domains.length;return domain}else if(this.settings.shard_strategy===SHARD_STRATEGY_CRC){return this.settings.domains[crc.crc32(path)%this.settings.domains.length]}};ImgixClient.prototype._sanitizePath=function(path){path=path.replace(/^\//,"");if(/^https?:\/\//.test(path)){path=encodeURIComponent(path)}else{path=encodeURI(path)}return"/"+path};ImgixClient.prototype._buildParams=function(params){if(this.settings.libraryParam){params.ixlib=this.settings.libraryParam}var queryParams=[];var key,val,encodedKey,encodedVal;for(key in params){val=params[key];encodedKey=encodeURIComponent(key);encodedVal;if(key.substr(-2)==="64"){encodedVal=Base64.encodeURI(val)}else{encodedVal=encodeURIComponent(val)}queryParams.push(encodedKey+"="+encodedVal)}if(queryParams[0]){queryParams[0]="?"+queryParams[0]}return queryParams.join("&")};ImgixClient.prototype._signParams=function(path,queryParams){var signatureBase=this.settings.secureURLToken+path+queryParams;var signature=md5(signatureBase);if(queryParams.length>0){return queryParams=queryParams+"&s="+signature}else{return queryParams="?s="+signature}};ImgixClient.VERSION=VERSION;ImgixClient.SHARD_STRATEGY_CRC=SHARD_STRATEGY_CRC;ImgixClient.SHARD_STRATEGY_CYCLE=SHARD_STRATEGY_CYCLE;return ImgixClient}();return ImgixClient}); \ No newline at end of file +var constants=require("../src/constants.js");(function(global,factory){if(typeof define==="function"&&define.amd){define("Imgix",["exports","md5","js-base64","crc"],factory)}else if(typeof exports!=="undefined"){module.exports=factory(exports,require("md5"),require("js-base64").Base64,require("crc"))}else{var mod={exports:{}};global.ImgixClient=factory(mod.exports,global.md5,global.Base64,global.crc)}})(this,function(exports,_md5,_jsBase64,_crc){var md5=_md5;var Base64=_jsBase64.Base64||_jsBase64;var crc=_crc;var DEFAULTS={host:null,domains:[],useHTTPS:true,includeLibraryParam:true,shard_strategy:constants.SHARD_STRATEGY_CRC};var ImgixClient=function(){function ImgixClient(opts){var key,val;this.settings={};this._shard_next_index=0;for(key in DEFAULTS){val=DEFAULTS[key];this.settings[key]=val}for(key in opts){val=opts[key];this.settings[key]=val}if(!Array.isArray(this.settings.domains)){this.settings.domains=[this.settings.domains]}if(!this.settings.host&&this.settings.domains.length===0){throw new Error("ImgixClient must be passed valid domain(s)")}if(this.settings.shard_strategy!==constants.SHARD_STRATEGY_CRC&&this.settings.shard_strategy!==constants.SHARD_STRATEGY_CYCLE){throw new Error("Shard strategy must be one of "+constants.SHARD_STRATEGY_CRC+" or "+constants.SHARD_STRATEGY_CYCLE)}if(this.settings.host){console.warn("'host' argument is deprecated; use 'domains' instead.");if(this.settings.domains.length==0)this.settings.domains[0]=this.settings.host}this.settings.domains.forEach(function(domain){if(constants.DOMAIN_REGEX.exec(domain)==null){throw new Error("Domains must be passed in as fully-qualified "+"domain names and should not include a protocol or any path "+'element, i.e. "example.imgix.net".')}});if(this.settings.includeLibraryParam){this.settings.libraryParam="js-"+constants.VERSION}this.settings.urlPrefix=this.settings.useHTTPS?"https://":"http://"}ImgixClient.prototype.buildURL=function(path,params){path=this._sanitizePath(path);if(params==null){params={}}var queryParams=this._buildParams(params);if(!!this.settings.secureURLToken){queryParams=this._signParams(path,queryParams)}return this.settings.urlPrefix+this._getDomain(path)+path+queryParams};ImgixClient.prototype._getDomain=function(path){if(this.settings.shard_strategy===constants.SHARD_STRATEGY_CYCLE){var domain=this.settings.domains[this._shard_next_index];this._shard_next_index=(this._shard_next_index+1)%this.settings.domains.length;return domain}else if(this.settings.shard_strategy===constants.SHARD_STRATEGY_CRC){return this.settings.domains[crc.crc32(path)%this.settings.domains.length]}};ImgixClient.prototype._sanitizePath=function(path){path=path.replace(/^\//,"");if(/^https?:\/\//.test(path)){path=encodeURIComponent(path)}else{path=encodeURI(path)}return"/"+path};ImgixClient.prototype._buildParams=function(params){if(this.settings.libraryParam){params.ixlib=this.settings.libraryParam}var queryParams=[];var key,val,encodedKey,encodedVal;for(key in params){val=params[key];encodedKey=encodeURIComponent(key);encodedVal;if(key.substr(-2)==="64"){encodedVal=Base64.encodeURI(val)}else{encodedVal=encodeURIComponent(val)}queryParams.push(encodedKey+"="+encodedVal)}if(queryParams[0]){queryParams[0]="?"+queryParams[0]}return queryParams.join("&")};ImgixClient.prototype._signParams=function(path,queryParams){var signatureBase=this.settings.secureURLToken+path+queryParams;var signature=md5(signatureBase);if(queryParams.length>0){return queryParams=queryParams+"&s="+signature}else{return queryParams="?s="+signature}};ImgixClient.VERSION=constants.VERSION;ImgixClient.SHARD_STRATEGY_CRC=constants.SHARD_STRATEGY_CRC;ImgixClient.SHARD_STRATEGY_CYCLE=constants.SHARD_STRATEGY_CYCLE;return ImgixClient}();return ImgixClient}); \ No newline at end of file diff --git a/src/imgix-core-js.js b/src/imgix-core-js.js index d6d00b8bb..c1e3f1adb 100644 --- a/src/imgix-core-js.js +++ b/src/imgix-core-js.js @@ -1,4 +1,4 @@ -var constants = require("./constants.js"); +var constants = require("../src/constants.js"); (function (global, factory) { if (typeof define === 'function' && define.amd) { @@ -16,9 +16,6 @@ var constants = require("./constants.js"); var Base64 = _jsBase64.Base64 || _jsBase64; var crc = _crc; - // var VERSION = '1.2.0' - // var SHARD_STRATEGY_CRC = 'crc'; - // var SHARD_STRATEGY_CYCLE = 'cycle'; var DEFAULTS = { host: null, domains: [], @@ -64,7 +61,7 @@ var constants = require("./constants.js"); this.settings.domains[0] = this.settings.host; } - this.settings.domains.forEach(domain => { + this.settings.domains.forEach(function(domain) { if(constants.DOMAIN_REGEX.exec(domain) == null){ throw new Error( 'Domains must be passed in as fully-qualified ' +