Skip to content

Commit

Permalink
chore(release): 2.1.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Sherwin H committed Jul 29, 2019
1 parent 81f38e7 commit 3462f93
Show file tree
Hide file tree
Showing 7 changed files with 75 additions and 11 deletions.
12 changes: 7 additions & 5 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,22 +2,24 @@

All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.

<a name="1.5.0"></a>
# [1.5.0](https://github.com/imgix/imgix-core-js/compare/1.4.0...1.5.0) (2019-06-06)
<a name="2.1.0"></a>
## [2.1.0](https://github.com/imgix/imgix-core-js/compare/1.2.1...2.1.0) (2019-07-28)

* feat: add srcset generation ([#53](https://github.com/imgix/imgix-core-js/pull/53))

<a name="2.0.0"></a>
# [2.0.0](https://github.com/imgix/imgix-core-js/compare/1.4.0...2.0.0) (2019-06-06)

* fix: remove deprecated domain sharding functionality ([#42](https://github.com/imgix/imgix-core-js/pull/42))
* fix: remove deprecated settings.host ([#45](https://github.com/imgix/imgix-core-js/pull/45))


<a name="1.4.0"></a>
## [1.4.0](https://github.com/imgix/imgix-core-js/compare/1.3.0...1.4.0) (2019-06-05)

* docs: deprecate settings.domains ([#43](https://github.com/imgix/imgix-core-js/pull/43))
* feat: add settings.domain argument ([#44](https://github.com/imgix/imgix-core-js/pull/44))


<a name="1.3.0"></a>
## [1.3.0](https://github.com/imgix/imgix-core-js/compare/1.2.1...1.3.0) (2019-05-07)

* deprecate domain sharding ([#39](https://github.com/imgix/imgix-core-js/pull/39))

2 changes: 1 addition & 1 deletion bower.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "imgix-core-js",
"version": "2.0.0",
"version": "2.1.0",
"homepage": "https://github.com/imgix/imgix-core-js",
"authors": [
"Kelly Sutton <michael.k.sutton@gmail.com>",
Expand Down
64 changes: 63 additions & 1 deletion dist/imgix-core-js.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,30 @@
var md5 = _md5;
var Base64 = _jsBase64.Base64 || _jsBase64;

var VERSION = '2.0.0';
// package version used in the ix-lib parameter
var VERSION = '2.1.0';
// regex pattern used to determine if a domain is valid
var DOMAIN_REGEX = /^(?:[a-z\d\-_]{1,62}\.){0,125}(?:[a-z\d](?:\-(?=\-*[a-z\d])|[a-z]|\d){0,62}\.)[a-z\d]{1,63}$/i;
// returns an array of width values used during scrset generation
var TARGET_WIDTHS = (function() {
var resolutions = [];
var prev = 100;
var INCREMENT_PERCENTAGE = 8;
var MAX_SIZE = 8192;

var ensureEven = function(n){
return 2 * Math.round(n / 2);
};

while (prev <= MAX_SIZE) {
resolutions.push(ensureEven(prev));
prev *= 1 + (INCREMENT_PERCENTAGE / 100) * 2;
}

resolutions.push(MAX_SIZE);
return resolutions;
})();
// default ImgixClient settings passed in during instantiation
var DEFAULTS = {
domain: null,
useHTTPS: true,
Expand Down Expand Up @@ -124,6 +146,46 @@
}
};

ImgixClient.prototype.buildSrcSet = function (path, params) {
var width = params ? params['w'] : undefined;
var height = params ? params['h'] : undefined;
var aspectRatio = params ? params['ar'] : undefined;

if ((width) || (height && aspectRatio)) {
return this._buildDPRSrcSet(path, params);
}
else {
return this._buildSrcSetPairs(path, params);
}
};

ImgixClient.prototype._buildSrcSetPairs = function(path, params) {
var srcset = '';
var currentWidth, currentParams;

for(var i = 0; i < TARGET_WIDTHS.length; i++) {
currentWidth = TARGET_WIDTHS[i];
currentParams = params ? params : {};
currentParams['w'] = currentWidth;
srcset += this.buildURL(path, currentParams) + ' ' + currentWidth + 'w,\n';
}

return srcset.slice(0,-2);
};

ImgixClient.prototype._buildDPRSrcSet = function(path, params) {
var srcset = '';
var targetRatios = [1, 2, 3, 4, 5];
var url = this.buildURL(path, params);

for(var i = 0; i < targetRatios.length; i++) {
currentRatio = targetRatios[i];
srcset += url + ' ' + currentRatio +'x,\n'
}

return srcset.slice(0,-2);
};

ImgixClient.VERSION = VERSION;

return ImgixClient;
Expand Down
2 changes: 1 addition & 1 deletion dist/imgix-core-js.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "imgix-core-js",
"description": "Common boilerplate for all imgix JavaScript-based functionality.",
"version": "2.0.0",
"version": "2.1.0",
"repository": "https://github.com/imgix/imgix-core-js",
"scripts": {
"assert_version": "node assert_version.js",
Expand Down
2 changes: 1 addition & 1 deletion src/imgix-core-js.js
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
var Base64 = _jsBase64.Base64 || _jsBase64;

// package version used in the ix-lib parameter
var VERSION = '2.0.0';
var VERSION = '2.1.0';
// regex pattern used to determine if a domain is valid
var DOMAIN_REGEX = /^(?:[a-z\d\-_]{1,62}\.){0,125}(?:[a-z\d](?:\-(?=\-*[a-z\d])|[a-z]|\d){0,62}\.)[a-z\d]{1,63}$/i;
// returns an array of width values used during scrset generation
Expand Down

0 comments on commit 3462f93

Please sign in to comment.