From 2d384053981b033c84cdb98f8b147506f4bcdc44 Mon Sep 17 00:00:00 2001 From: me Date: Mon, 23 Nov 2020 15:16:55 +0100 Subject: [PATCH 1/5] Use "_" char as delimiter for presets string --> fix use of negative values --- lib/lax.js | 2 +- lib/lax.min.js | 2 +- lib/lax.min.js.gz | Bin 3791 -> 3750 bytes src/lax.js | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/lax.js b/lib/lax.js index 6fd9cc9..74eccad 100644 --- a/lib/lax.js +++ b/lib/lax.js @@ -478,7 +478,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope var _styleBindings$preset = styleBindings.presets, presets = _styleBindings$preset === void 0 ? [] : _styleBindings$preset; presets.forEach(function (presetString) { - var _presetString$split = presetString.split("-"), + var _presetString$split = presetString.split("_"), _presetString$split2 = _slicedToArray(_presetString$split, 3), presetName = _presetString$split2[0], y = _presetString$split2[1], diff --git a/lib/lax.min.js b/lib/lax.min.js index 1aa07ae..75906ba 100644 --- a/lib/lax.min.js +++ b/lib/lax.min.js @@ -1 +1 @@ -"use strict";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length)return t[e.length-1];var o,a=(a=e[o=i-1],e=e[i],(n-a)/(e-a));return r&&(a=r(a)),o=t[o],t=t[i],o*(1-(a=a))+t*a}(f,h,g?u%g:u,w),d&&(c=s*d,"absolute"===p&&(c=Math.abs(c)),w+=c),c="px"==(m||_.includes(a)?"px":P.includes(a)?"deg":"")?0:3,c=w.toFixed(c),i[a]=y?y(c,b.domElement):c+m)}}b.applyStyles(i),b.onUpdate&&b.onUpdate(e,b.domElement)}),_defineProperty(this,"calculateTransforms",function(){b.transforms={};var e,l=b.laxInstance.windowWidth;for(e in b.transformsData)!function(e){var o=b.transformsData[e],a={},t=o.presets;(void 0===t?[]:t).forEach(function(e){var t,n=_slicedToArray(e.split("-"),3),r=n[0],i=n[1],e=n[2],n=window.lax.presets[r];n?(t=n(i,e),Object.keys(t).forEach(function(e){o[e]=t[e]})):console.error("Lax preset cannot be found with name: ",r)}),delete o.presets;for(var n in o)!function(e){var t=_slicedToArray(o[e],3),n=t[0],r=void 0===n?[-1e9,1e9]:n,n=t[1],n=void 0===n?[-1e9,1e9]:n,t=t[2],t=void 0===t?{}:t,i=b.domElement.getBoundingClientRect(),r=c(r,l).map(function(e){return d(e,i,b.groupIndex)}),n=c(n,l).map(function(e){return d(e,i,b.groupIndex)});a[e]=[r,n,t]}(n);b.transforms[e]=a}(e)}),_defineProperty(this,"applyStyles",function(e){var r,i,o,t=(r=e,i={transform:"",filter:""},o={translateX:1e-5,translateY:1e-5,translateZ:1e-5},Object.keys(r).forEach(function(e){var t=r[e],n=_.includes(e)?"px":P.includes(e)?"deg":"";s.includes(e)?o[e]=t:l.includes(e)?i.transform+="".concat(e,"(").concat(t).concat(n,") "):u.includes(e)?i.filter+="".concat(e,"(").concat(t).concat(n,") "):i[e]="".concat(t).concat(n," ")}),i.transform="translate3d(".concat(o.translateX,"px, ").concat(o.translateY,"px, ").concat(o.translateZ,"px) ").concat(i.transform),i);Object.keys(t).forEach(function(e){b.domElement.style.setProperty(e,t[e])})}),this.selector=e,this.laxInstance=t,this.domElement=n,this.transformsData=r,this.groupIndex=i;var a=void 0===(i=o.style)?{}:i,o=o.onUpdate;Object.keys(a).forEach(function(e){n.style.setProperty(e,a[e])}),o&&(this.onUpdate=o),this.calculateTransforms()}"undefined"!=typeof module&&void 0!==module.exports?module.exports=e:window.lax=e}(); \ No newline at end of file +"use strict";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length)return t[e.length-1];var o,a=(a=e[o=i-1],e=e[i],(n-a)/(e-a));return r&&(a=r(a)),o=t[o],t=t[i],o*(1-(a=a))+t*a}(f,h,g?u%g:u,w),d&&(c=s*d,"absolute"===p&&(c=Math.abs(c)),w+=c),c="px"==(m||_.includes(a)?"px":P.includes(a)?"deg":"")?0:3,c=w.toFixed(c),i[a]=y?y(c,b.domElement):c+m)}}b.applyStyles(i),b.onUpdate&&b.onUpdate(e,b.domElement)}),_defineProperty(this,"calculateTransforms",function(){b.transforms={};var e,l=b.laxInstance.windowWidth;for(e in b.transformsData)!function(e){var o=b.transformsData[e],a={},t=o.presets;(void 0===t?[]:t).forEach(function(e){var t,n=_slicedToArray(e.split("_"),3),r=n[0],i=n[1],e=n[2],n=window.lax.presets[r];n?(t=n(i,e),Object.keys(t).forEach(function(e){o[e]=t[e]})):console.error("Lax preset cannot be found with name: ",r)}),delete o.presets;for(var n in o)!function(e){var t=_slicedToArray(o[e],3),n=t[0],r=void 0===n?[-1e9,1e9]:n,n=t[1],n=void 0===n?[-1e9,1e9]:n,t=t[2],t=void 0===t?{}:t,i=b.domElement.getBoundingClientRect(),r=c(r,l).map(function(e){return d(e,i,b.groupIndex)}),n=c(n,l).map(function(e){return d(e,i,b.groupIndex)});a[e]=[r,n,t]}(n);b.transforms[e]=a}(e)}),_defineProperty(this,"applyStyles",function(e){var r,i,o,t=(r=e,i={transform:"",filter:""},o={translateX:1e-5,translateY:1e-5,translateZ:1e-5},Object.keys(r).forEach(function(e){var t=r[e],n=_.includes(e)?"px":P.includes(e)?"deg":"";s.includes(e)?o[e]=t:l.includes(e)?i.transform+="".concat(e,"(").concat(t).concat(n,") "):u.includes(e)?i.filter+="".concat(e,"(").concat(t).concat(n,") "):i[e]="".concat(t).concat(n," ")}),i.transform="translate3d(".concat(o.translateX,"px, ").concat(o.translateY,"px, ").concat(o.translateZ,"px) ").concat(i.transform),i);Object.keys(t).forEach(function(e){b.domElement.style.setProperty(e,t[e])})}),this.selector=e,this.laxInstance=t,this.domElement=n,this.transformsData=r,this.groupIndex=i;var a=void 0===(i=o.style)?{}:i,o=o.onUpdate;Object.keys(a).forEach(function(e){n.style.setProperty(e,a[e])}),o&&(this.onUpdate=o),this.calculateTransforms()}"undefined"!=typeof module&&void 0!==module.exports?module.exports=e:window.lax=e}(); \ No newline at end of file diff --git a/lib/lax.min.js.gz b/lib/lax.min.js.gz index 9b3a7241d97f9fa83c14ad7799023e998144b563..71a90195eb1731138b4a41d8a50a1b15cd2ae56d 100644 GIT binary patch literal 3750 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 F000)vM9csH diff --git a/src/lax.js b/src/lax.js index 7579b6f..aab1772 100644 --- a/src/lax.js +++ b/src/lax.js @@ -430,7 +430,7 @@ presets.forEach((presetString) => { - const [presetName, y, str] = presetString.split("-") + const [presetName, y, str] = presetString.split("_") const presetFn = window.lax.presets[presetName] From b4c109d20f708381c4d114b94747f0f109afaea0 Mon Sep 17 00:00:00 2001 From: Arthur Denner Date: Thu, 26 Nov 2020 22:40:24 +0100 Subject: [PATCH 2/5] docs: update element and animation options --- README.md | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/README.md b/README.md index a2c94a8..86a4452 100644 --- a/README.md +++ b/README.md @@ -177,6 +177,19 @@ Add static CSS to each element, for example: } ``` +#### `onUpdate: (driverValues: Object, domElement: DomElement) => void` +A method called every frame with the current driverValues and domElement. This could be used to toggle classes on an element or set innerHTML. See it in action [here](https://alexfox.dev/lax.js/examples/on-update). + +The driver values are formatted as follows: +```js +{ + scrollY: [ // Driver name + 100, // Driver value + 0 // Driver inertia + ] +} +``` + # Going deeper ## Custom animations @@ -206,7 +219,7 @@ The name of the driver you want to use as a source of values to map to your anim ### CSS property The name of the CSS property you want to animate, for example `opacity` or `rotate`. See a list of supported properties [here](#css-properties). -> Some css properties, for example `box-shadow`, require a custom function to build the style string. To do this use the [cssFn](#cssfn-value-number--string) element option. +> Some CSS properties, for example `box-shadow`, require a custom function to build the style string. To do this use the [cssFn](#cssfn-value-number--string) element option. ### Value maps The value maps are used to interpolate the driver value and output a value for your CSS property. For example: @@ -270,20 +283,7 @@ Use in combination with `inertia`. If set to `absolute` the inertia value will a Define the unit to be appended to the end of the value, for example For example `px` `deg` -#### `onUpdate: (driverValues: Object, domElement: DomElement) => void` -A method called every frame with the current driverValues and domElement. This could be used to toggle classes on an element or set innerHTML. See it in action [here](https://alexfox.dev/lax.js/examples/on-update). - -The driver values are formatted as follows: -```js -{ - scrollY: [ // Drivr name - 100, // Driver value - 0 // Driver inertia - ] -} -``` - -#### `cssFn: (value: number) => string` +#### `cssFn: (value: number, domElement: DomElement) => number | string` Some CSS properties require more complex strings as values. For example, `box-shadow` has multiple values that could be modified by a lax animation. ```javascript @@ -293,6 +293,9 @@ Some CSS properties require more complex strings as values. For example, `box-sh }; ``` +#### `easing: string` +See a list of available values [here](#supported-easings). + ## Optimising performance Lax.js has been designed to be performant but there are a few things to bare in mind when creating your websites. - Smaller elements perform better. From 42dd4d8e50324f110aec523e98168f2b7ee631b9 Mon Sep 17 00:00:00 2001 From: Alex Fox Date: Mon, 28 Dec 2020 18:19:23 +0000 Subject: [PATCH 3/5] Updated preset-deliminator --- README.md | 2 +- docs/examples/html-inline.html | 2 +- docs/lib/lax.min.js | 2 +- docs/preset-explorer.html | 2 +- lib/lax.js | 31 ++++++++++++++++++++++--------- lib/lax.min.js | 2 +- lib/lax.min.js.gz | Bin 3750 -> 3873 bytes package.json | 2 +- src/lax.js | 2 +- 9 files changed, 29 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 86a4452..80d1ee6 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,7 @@ To implement lax you need to create at least one _driver_, to provide values for The easiest way to get started is to use presets via html classes. For example: ```html -
+
``` Multiple presets can be chained together and they can be customised to suit your needs. Use the [preset explorer](https://alexfox.dev/lax.js/preset-explorer) to explore effects and see a simple example [here](https://alexfox.dev/lax.js/html-inline). diff --git a/docs/examples/html-inline.html b/docs/examples/html-inline.html index f865a2b..4cb2d7b 100644 --- a/docs/examples/html-inline.html +++ b/docs/examples/html-inline.html @@ -37,5 +37,5 @@ -
+
\ No newline at end of file diff --git a/docs/lib/lax.min.js b/docs/lib/lax.min.js index 1aa07ae..9c0f4a6 100644 --- a/docs/lib/lax.min.js +++ b/docs/lib/lax.min.js @@ -1 +1 @@ -"use strict";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length)return t[e.length-1];var o,a=(a=e[o=i-1],e=e[i],(n-a)/(e-a));return r&&(a=r(a)),o=t[o],t=t[i],o*(1-(a=a))+t*a}(f,h,g?u%g:u,w),d&&(c=s*d,"absolute"===p&&(c=Math.abs(c)),w+=c),c="px"==(m||_.includes(a)?"px":P.includes(a)?"deg":"")?0:3,c=w.toFixed(c),i[a]=y?y(c,b.domElement):c+m)}}b.applyStyles(i),b.onUpdate&&b.onUpdate(e,b.domElement)}),_defineProperty(this,"calculateTransforms",function(){b.transforms={};var e,l=b.laxInstance.windowWidth;for(e in b.transformsData)!function(e){var o=b.transformsData[e],a={},t=o.presets;(void 0===t?[]:t).forEach(function(e){var t,n=_slicedToArray(e.split("-"),3),r=n[0],i=n[1],e=n[2],n=window.lax.presets[r];n?(t=n(i,e),Object.keys(t).forEach(function(e){o[e]=t[e]})):console.error("Lax preset cannot be found with name: ",r)}),delete o.presets;for(var n in o)!function(e){var t=_slicedToArray(o[e],3),n=t[0],r=void 0===n?[-1e9,1e9]:n,n=t[1],n=void 0===n?[-1e9,1e9]:n,t=t[2],t=void 0===t?{}:t,i=b.domElement.getBoundingClientRect(),r=c(r,l).map(function(e){return d(e,i,b.groupIndex)}),n=c(n,l).map(function(e){return d(e,i,b.groupIndex)});a[e]=[r,n,t]}(n);b.transforms[e]=a}(e)}),_defineProperty(this,"applyStyles",function(e){var r,i,o,t=(r=e,i={transform:"",filter:""},o={translateX:1e-5,translateY:1e-5,translateZ:1e-5},Object.keys(r).forEach(function(e){var t=r[e],n=_.includes(e)?"px":P.includes(e)?"deg":"";s.includes(e)?o[e]=t:l.includes(e)?i.transform+="".concat(e,"(").concat(t).concat(n,") "):u.includes(e)?i.filter+="".concat(e,"(").concat(t).concat(n,") "):i[e]="".concat(t).concat(n," ")}),i.transform="translate3d(".concat(o.translateX,"px, ").concat(o.translateY,"px, ").concat(o.translateZ,"px) ").concat(i.transform),i);Object.keys(t).forEach(function(e){b.domElement.style.setProperty(e,t[e])})}),this.selector=e,this.laxInstance=t,this.domElement=n,this.transformsData=r,this.groupIndex=i;var a=void 0===(i=o.style)?{}:i,o=o.onUpdate;Object.keys(a).forEach(function(e){n.style.setProperty(e,a[e])}),o&&(this.onUpdate=o),this.calculateTransforms()}"undefined"!=typeof module&&void 0!==module.exports?module.exports=e:window.lax=e}(); \ No newline at end of file +"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length)return t[e.length-1];var o,a=(a=e[o=i-1],e=e[i],(n-a)/(e-a));return r&&(a=r(a)),o=t[o],t=t[i],o*(1-(a=a))+t*a}(f,h,g?u%g:u,w),d&&(c=s*d,"absolute"===m&&(c=Math.abs(c)),w+=c),c="px"==(p||_.includes(a)?"px":P.includes(a)?"deg":"")?0:3,c=w.toFixed(c),i[a]=y?y(c,b.domElement):c+p)}}b.applyStyles(i),b.onUpdate&&b.onUpdate(e,b.domElement)}),_defineProperty(this,"calculateTransforms",function(){b.transforms={};var e,l=b.laxInstance.windowWidth;for(e in b.transformsData)!function(e){var o=b.transformsData[e],a={},t=o.presets;(void 0===t?[]:t).forEach(function(e){var t,n=_slicedToArray(e.split(":"),3),r=n[0],i=n[1],e=n[2],n=window.lax.presets[r];n?(t=n(i,e),Object.keys(t).forEach(function(e){o[e]=t[e]})):console.error("Lax preset cannot be found with name: ",r)}),delete o.presets;for(var n in o)!function(e){var t=_slicedToArray(o[e],3),n=t[0],r=void 0===n?[-1e9,1e9]:n,n=t[1],n=void 0===n?[-1e9,1e9]:n,t=t[2],t=void 0===t?{}:t,i=b.domElement.getBoundingClientRect(),r=c(r,l).map(function(e){return d(e,i,b.groupIndex)}),n=c(n,l).map(function(e){return d(e,i,b.groupIndex)});a[e]=[r,n,t]}(n);b.transforms[e]=a}(e)}),_defineProperty(this,"applyStyles",function(e){var r,i,o,t=(r=e,i={transform:"",filter:""},o={translateX:1e-5,translateY:1e-5,translateZ:1e-5},Object.keys(r).forEach(function(e){var t=r[e],n=_.includes(e)?"px":P.includes(e)?"deg":"";s.includes(e)?o[e]=t:l.includes(e)?i.transform+="".concat(e,"(").concat(t).concat(n,") "):u.includes(e)?i.filter+="".concat(e,"(").concat(t).concat(n,") "):i[e]="".concat(t).concat(n," ")}),i.transform="translate3d(".concat(o.translateX,"px, ").concat(o.translateY,"px, ").concat(o.translateZ,"px) ").concat(i.transform),i);Object.keys(t).forEach(function(e){b.domElement.style.setProperty(e,t[e])})}),this.selector=e,this.laxInstance=t,this.domElement=n,this.transformsData=r,this.groupIndex=i;var a=void 0===(i=o.style)?{}:i,o=o.onUpdate;Object.keys(a).forEach(function(e){n.style.setProperty(e,a[e])}),o&&(this.onUpdate=o),this.calculateTransforms()}"undefined"!=typeof module&&void 0!==module.exports?module.exports=e:window.lax=e}(); \ No newline at end of file diff --git a/docs/preset-explorer.html b/docs/preset-explorer.html index e2821cc..6e388be 100644 --- a/docs/preset-explorer.html +++ b/docs/preset-explorer.html @@ -153,7 +153,7 @@ enabledPresets.forEach((presetName) => { const control = controlData[presetName] - const controlStr = control ? "-" + control.map(c => c.value).join("-") : '' + const controlStr = control ? ":" + control.map(c => c.value).join(":") : '' const settingString = `${presetName}${controlStr}` presets.push(settingString) }) diff --git a/lib/lax.js b/lib/lax.js index 74eccad..2916529 100644 --- a/lib/lax.js +++ b/lib/lax.js @@ -1,5 +1,9 @@ "use strict"; +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } @@ -12,10 +16,6 @@ function _iterableToArrayLimit(arr, i) { if (typeof Symbol === "undefined" || !( function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } - (function () { var inOutMap = function inOutMap() { var y = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 30; @@ -314,6 +314,15 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope }); flattenedStyles.transform = "translate3d(".concat(translate3dValues.translateX, "px, ").concat(translate3dValues.translateY, "px, ").concat(translate3dValues.translateZ, "px) ").concat(flattenedStyles.transform); return flattenedStyles; + } // https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollY#Notes + + + function getScrollPosition() { + var supportPageOffset = window.pageXOffset !== undefined; + var isCSS1Compat = (document.compatMode || '') === 'CSS1Compat'; + var x = supportPageOffset ? window.pageXOffset : isCSS1Compat ? document.documentElement.scrollLeft : document.body.scrollLeft; + var y = supportPageOffset ? window.pageYOffset : isCSS1Compat ? document.documentElement.scrollTop : document.body.scrollTop; + return [y, x]; } function parseValue(val, _ref, index) { @@ -330,8 +339,12 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope var pageWidth = document.body.scrollWidth; var screenWidth = window.innerWidth; var screenHeight = window.innerHeight; - var scrollTop = window.scrollY; - var scrollLeft = window.scrollX; + + var _getScrollPosition = getScrollPosition(), + _getScrollPosition2 = _slicedToArray(_getScrollPosition, 2), + scrollTop = _getScrollPosition2[0], + scrollLeft = _getScrollPosition2[1]; + var left = x + scrollLeft; var right = left + width; var top = y + scrollTop; @@ -366,7 +379,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope var value = _this.lastValue; if (frame % _this.frameStep === 0) { - value = _this.getValueFn(); + value = _this.getValueFn(frame); } if (_this.inertiaEnabled) { @@ -386,7 +399,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope Object.keys(options).forEach(function (key) { _this[key] = options[key]; }); - this.lastValue = this.getValueFn(); + this.lastValue = this.getValueFn(0); }; var LaxElement = function LaxElement(selector, laxInstance, domElement, transformsData) { @@ -478,7 +491,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope var _styleBindings$preset = styleBindings.presets, presets = _styleBindings$preset === void 0 ? [] : _styleBindings$preset; presets.forEach(function (presetString) { - var _presetString$split = presetString.split("_"), + var _presetString$split = presetString.split(":"), _presetString$split2 = _slicedToArray(_presetString$split, 3), presetName = _presetString$split2[0], y = _presetString$split2[1], diff --git a/lib/lax.min.js b/lib/lax.min.js index 75906ba..9c0f4a6 100644 --- a/lib/lax.min.js +++ b/lib/lax.min.js @@ -1 +1 @@ -"use strict";function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length)return t[e.length-1];var o,a=(a=e[o=i-1],e=e[i],(n-a)/(e-a));return r&&(a=r(a)),o=t[o],t=t[i],o*(1-(a=a))+t*a}(f,h,g?u%g:u,w),d&&(c=s*d,"absolute"===p&&(c=Math.abs(c)),w+=c),c="px"==(m||_.includes(a)?"px":P.includes(a)?"deg":"")?0:3,c=w.toFixed(c),i[a]=y?y(c,b.domElement):c+m)}}b.applyStyles(i),b.onUpdate&&b.onUpdate(e,b.domElement)}),_defineProperty(this,"calculateTransforms",function(){b.transforms={};var e,l=b.laxInstance.windowWidth;for(e in b.transformsData)!function(e){var o=b.transformsData[e],a={},t=o.presets;(void 0===t?[]:t).forEach(function(e){var t,n=_slicedToArray(e.split("_"),3),r=n[0],i=n[1],e=n[2],n=window.lax.presets[r];n?(t=n(i,e),Object.keys(t).forEach(function(e){o[e]=t[e]})):console.error("Lax preset cannot be found with name: ",r)}),delete o.presets;for(var n in o)!function(e){var t=_slicedToArray(o[e],3),n=t[0],r=void 0===n?[-1e9,1e9]:n,n=t[1],n=void 0===n?[-1e9,1e9]:n,t=t[2],t=void 0===t?{}:t,i=b.domElement.getBoundingClientRect(),r=c(r,l).map(function(e){return d(e,i,b.groupIndex)}),n=c(n,l).map(function(e){return d(e,i,b.groupIndex)});a[e]=[r,n,t]}(n);b.transforms[e]=a}(e)}),_defineProperty(this,"applyStyles",function(e){var r,i,o,t=(r=e,i={transform:"",filter:""},o={translateX:1e-5,translateY:1e-5,translateZ:1e-5},Object.keys(r).forEach(function(e){var t=r[e],n=_.includes(e)?"px":P.includes(e)?"deg":"";s.includes(e)?o[e]=t:l.includes(e)?i.transform+="".concat(e,"(").concat(t).concat(n,") "):u.includes(e)?i.filter+="".concat(e,"(").concat(t).concat(n,") "):i[e]="".concat(t).concat(n," ")}),i.transform="translate3d(".concat(o.translateX,"px, ").concat(o.translateY,"px, ").concat(o.translateZ,"px) ").concat(i.transform),i);Object.keys(t).forEach(function(e){b.domElement.style.setProperty(e,t[e])})}),this.selector=e,this.laxInstance=t,this.domElement=n,this.transformsData=r,this.groupIndex=i;var a=void 0===(i=o.style)?{}:i,o=o.onUpdate;Object.keys(a).forEach(function(e){n.style.setProperty(e,a[e])}),o&&(this.onUpdate=o),this.calculateTransforms()}"undefined"!=typeof module&&void 0!==module.exports?module.exports=e:window.lax=e}(); \ No newline at end of file +"use strict";function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n=e.length)return t[e.length-1];var o,a=(a=e[o=i-1],e=e[i],(n-a)/(e-a));return r&&(a=r(a)),o=t[o],t=t[i],o*(1-(a=a))+t*a}(f,h,g?u%g:u,w),d&&(c=s*d,"absolute"===m&&(c=Math.abs(c)),w+=c),c="px"==(p||_.includes(a)?"px":P.includes(a)?"deg":"")?0:3,c=w.toFixed(c),i[a]=y?y(c,b.domElement):c+p)}}b.applyStyles(i),b.onUpdate&&b.onUpdate(e,b.domElement)}),_defineProperty(this,"calculateTransforms",function(){b.transforms={};var e,l=b.laxInstance.windowWidth;for(e in b.transformsData)!function(e){var o=b.transformsData[e],a={},t=o.presets;(void 0===t?[]:t).forEach(function(e){var t,n=_slicedToArray(e.split(":"),3),r=n[0],i=n[1],e=n[2],n=window.lax.presets[r];n?(t=n(i,e),Object.keys(t).forEach(function(e){o[e]=t[e]})):console.error("Lax preset cannot be found with name: ",r)}),delete o.presets;for(var n in o)!function(e){var t=_slicedToArray(o[e],3),n=t[0],r=void 0===n?[-1e9,1e9]:n,n=t[1],n=void 0===n?[-1e9,1e9]:n,t=t[2],t=void 0===t?{}:t,i=b.domElement.getBoundingClientRect(),r=c(r,l).map(function(e){return d(e,i,b.groupIndex)}),n=c(n,l).map(function(e){return d(e,i,b.groupIndex)});a[e]=[r,n,t]}(n);b.transforms[e]=a}(e)}),_defineProperty(this,"applyStyles",function(e){var r,i,o,t=(r=e,i={transform:"",filter:""},o={translateX:1e-5,translateY:1e-5,translateZ:1e-5},Object.keys(r).forEach(function(e){var t=r[e],n=_.includes(e)?"px":P.includes(e)?"deg":"";s.includes(e)?o[e]=t:l.includes(e)?i.transform+="".concat(e,"(").concat(t).concat(n,") "):u.includes(e)?i.filter+="".concat(e,"(").concat(t).concat(n,") "):i[e]="".concat(t).concat(n," ")}),i.transform="translate3d(".concat(o.translateX,"px, ").concat(o.translateY,"px, ").concat(o.translateZ,"px) ").concat(i.transform),i);Object.keys(t).forEach(function(e){b.domElement.style.setProperty(e,t[e])})}),this.selector=e,this.laxInstance=t,this.domElement=n,this.transformsData=r,this.groupIndex=i;var a=void 0===(i=o.style)?{}:i,o=o.onUpdate;Object.keys(a).forEach(function(e){n.style.setProperty(e,a[e])}),o&&(this.onUpdate=o),this.calculateTransforms()}"undefined"!=typeof module&&void 0!==module.exports?module.exports=e:window.lax=e}(); \ No newline at end of file diff --git a/lib/lax.min.js.gz b/lib/lax.min.js.gz index 71a90195eb1731138b4a41d8a50a1b15cd2ae56d..bf06561f5d7a0601bc996f22a2df1ab080b20d1f 100644 GIT binary patch literal 3873 zcmV++58m(}iwFnS*YyM zJmsNcf?MyyI7pJaAdc^rH2mODqTDT;J7*5H7*ABdLn`K$a$U8Q;?d&t(fVPtre8}b zq+{O&oC{@zFy9I+&C3elpOr6QyZdsjh|U?O-$}8iQf+W8!riT;DwW()u%1Q7-_HI+ zL*+G)Za)TbN{5_Kp0212W-%R}^++iAoGsGg`B5^JwfF9jPSn(gDHRk+%t9LdAYMrs zY>dDeg!ch<{lwJrZz86NL*3o(JyT|_Y{DD1VoJ|~v6Lt2dM%`)(S4mPr{IF;Bj3|R zIaPHWjcprse9u8}7FmH(bhTEN5>^D{G7SMVwSY@E$5@!m`xn3GmXHyZNI!#-jD+Y3 zT2M=9T_@HmO_a3^K2k8;SeJ2D(?GYOXR`T05Z zz%`7XggifYxL@n>c(9@_vA+q{dctmJzolmGSflagQmkO1q5VoOz~i_|GQ!J$JLBPx zY|=c;6n2*4pwU#xrW0ZEoNy7=TLots3!8$CVR4^(p+x6lTfF%B_yBt(bBX zl97Fu8`5~n`T2pzU>qAmfb!g}fi#%{CWubvpY@6Gjoc$8H`^R`Kw^M)?0us%NBU0S z#~!DjAV^#<5}cy&+*_x~(g{4B7+i7&>fxC>&Olk<7Og76_5Fb-a{ z*&+Z5v$S?&&uC@0%Uc+(871g|WjRpn_nG?mk>#q%1Lqh|Vo7F8H}`$IKg(xA+!stZ zPBSDEo5uJ2p+n=pQMOnrn?T1Mcp;S!T^l_a#B!+LyA5*p%w#`5H|hl)&@mle_1wzT zDw|HpMw5J-s)uf|-gJ*;Kery5AE6;b8qk*2mg=a;b`rreyN8IHX^|Io8J!p3hmn!4?3B zJPk<$n#HO7LK6)N8zGZt8K~bg7V7E$R0Tn^MhxTM-aG?+8v_U`F8Zz+j*hL=Xf{HhxAfHwVBD@m^iN&s z)4k5GF6Ill{ks_y{Dm!k2^L>q%-*vQ0@J~{e0qGI%8oAhzg80vTj$?b@~+`?JN<=iwkP7001ue04;PHqH@c4^>>9ocK4|B@@qj!BXxF*~mcz?Ve6^#3re5^D}dOOf5*kx;*>r+tE`t?hn_lZObe1k`a@KDncw{^hk3X?UEl;p9 zR7LgQMz)qTp$J%=#Pioc1vc4g>~HjTlME-*ecK$y87x}4B@rG_MX%sr6n&j3$#IDR z=}G$ElqTvGXR81wyvAi5;R#;va*6ON()*DJ^%m&OM6~h3m_b{Q6m&-ZMnW@`Ll7Jk z!G57WuKJVi`(Agn%2+3>N!yCc_x+j#=jZLnDzv6!w{!mg;tMbLS#K`n*Fm^+n$j2E z+=eM`p+DeW3ZyHr-`;gksHbkbih?NmgLbR)b0=$|gL&G$-YQ7$K0H&8Lk4iot+Il= zx809`+C*U^T0WurYIy2XZ$Xu=d|(017Lh(7EcMcL1nWAS)Fx$6kC0}8V6HMtz};q% z+??rGH$C6)75wy7uuga(W%02-@>L{_Qpm7Pr%H=<)E;8|@&@7@@5x0>y;v+9`xWRa zSWruIvT`G0DpYJmhgNZmsEEBvY_|~iXnh|uS|&lK^VyNx>L)=I{Z*T^>L4hZxqKd+ zs&k8>$zVFJJ`8KFqV0qG0L$K6wWE=AB|g$4KuUY8VdqzTkj0A1=72#z#8Q0UzSwa} zJjj{3x8fCi5yPNxxp@mi_$K6496Pob2cK-W(WOo0Fqw`Zf^n~V!xGiv`;3Qi8qvhD zf!%wvFW7ijPa&ElUB>}r)+ z%|s`hD9Hdn;Yg(l>Oq9BXj@cl)QiX0r^Dfx_ZJBhiB-la7Y96`D9ys+eO2pwm&$9h z>=ok&y1}_$uORt^O-BG%-3nmji_uKd;6w3#iB9CSe8Uvw=D@kqSFk_hKFy%D%r;_Zej)+< z-5^(+r>hy{pyOAsbdKOP@*7&`NDF(q$gJ~ONd zsthHC_*2%IgQQCJHvW0m7S4dQ-58=*%bJ1#@UfFiy}>Fcx%Je*Ai!yOW)D zl&|HAoOucCDdk$xmkScQha*PaFcejWP?TaIJs8M&C6#^}=e@GlTQFg@?tA_KeL**> z_2RWVbgNotb}x_Q9dDnf(=f73|1cTM! z#31xY#e%0PzUKHfL3HXAn(L)r*PD6+(q%4daZm9T_X^>3`RgEEsa;I;gnM-Wy82Mv z3O^uO^?mQ<1^#yEh12hPFLB~(ko68aI8+W~98HNWMam=RnqFy2_p%R7Br5p(kWT8$ zW%Kc{i<0ZY&Znkb!iRa)JxMl~V{ky3`V#)+%qr{F`8mCc|If|t0fDU*JTo!C{1?xQ zffv;ncrhK~cNEvpn|fWHdfgsA^VZvgV$**rd{l9;G?xvhsS~w{Db!cn*4ibnolb@1 z0{mfpk6GtLOh7SupM9J46e_`g)F;TN=+ca;;lu-}ZRVA_04syevGC#eagNNZ5BwZx zgr5WLcKLyins3hjE-XN7nKO#@$kft8mxZ$)iBkf0wcC#yTt`( z(c;8*E!!QY2TY6#K8FKCG$nbB0LF2XD53e~Yv`-UDJBW8R5k%c5UX6VGWKv{>}MQv zD`S;a0fIYvM&#EbK^IpZ#BKE>evs8%eCbLxudeb+xROkv6xLlOL!X>wN-`wMM44yxElS-}_1O#bJ`|HQB|s^z`)UU3xm~JR>WUDG#MRzRg7_c_OS| zvzUhzeVe?Oron?lOuFloWS*ibP(?p*dG|>YQ|6HS`1mWAlm_#diUyzZC6}s|s>?-| zuU1JaDZ1V!D=9=G%9^h!la9Nofb7?;ur zOR@rM`pv^~p2VJ}mq|KvTx&`4E{Qz50sg6>ulcP*`qx$(5DVM)CB~H8TI5#ZHUj;9 ztL6A*kXpk3LSyq*X(AKV(38nGnvoX=-&c^_3AB1`w&Zl4H^By6IHRe8SJTP(fPv+-m4Xi@AvCmJ5pP zlTwk!QaYU-i-8eZMiCI6yEc%fGhjODGwz=ZSmK*;k7fF>E@1~O2DE+a8=p9-?*xAA z33>%5alI%Jqy{g%Ri52Bfd~J{p~@48M-<{X@qLV2b?J^bVIadhZI1Xx@3g^4U_}pW z1t3K$C0+Djr1JP!zBz75sbs)iLf)A5AtVB@9Hm3XyQA?0;%g zd@XLe6n{c|aVKqtf)7Z*7H)dB@?9v>A-{hWlnz;FyVEfS1+CMBM(2IE(X`2?TeHz5 zU*z(pSM@jBC_{`{&NB8Z`;uKV>922th^_?)MKAUdPF6w4<-=$y zoM(ZbN;c4cayHv+n1Qg<|1Rr&={?z1Lq;<;eR?=-P{Dybp2G7w-S6o_17c4@(tzf1 zp8ic04J#cfCeKpPpl>wP*MG7?(54|(_kXBo2sjm(|3g3hr}Z;5h%!W{zw1QaWvL;} z<+W7QbRyllO-H)&|4@>5$p$r?RxRn;e?v#l@FDNg078yQKOTl7(?Dc#AW>h+=ozBv zKhH)k`u!Tf%@Y7_{!0KWzH1)Om}~}gUK%KJ)j(>sF?wFt=a;~^UMA7^dSa!Gj;}Fa z{rE2c`SD*ta`P`Bx%tOPe&dTpOs@~+qR*ZYW8UglG3Ix=H*)I|8=ew7$N#rZ4RjUr zd-!R>L!Abg5oN*s{{!&m?*ROhFa8V`uMcq0e-=WJjdz{(Zwc})r>~XK{0(Ja));KC z=^5j*|Eck982L`@Pi-W^*@}SaB_Z1C82w}Ua#OzGsg0<3-V{$f3a_l*ZmKs#>Ky#l z#Er5VIzHy93gv>b3`7}-YU!f3j*HEYpFsNS9^Sd$4(O#p#PbZ_rnl$v`x5-NfE6$M z!zxF-D+n;T_SY0-n1#Q}gQ%h3Y6U_t0tON_Gq%$>!ydVy)2xnBUU?Uj;VGDooVR*- zaZjl?C>wr|&v|&bgC>kNvR+Tqbt`@)Z7UL3xWNJtE(QTG!|GY{!Dv!>7}qwkR>DEg zQt0$w$+e_!MfU>K2H&9f;iv;!Mlg1o}k#b?c>?)3cx z&6_d9>^w;SZSUf8c)^4}^xnQ0SBwW|Vj?w5x*F1AE~;w@B^>Q?Z zsC-y?NE<`L&gdO2>Muk*waHMe(aABwOniCAv+?eRg(_rNPw#9lm~uNx5q?qxoawBM zgkn-5`6$h8itRe&e68KkJYU%CWY9)%&qb8n|G*=82R6s4O#Xa?Y?V?*3a~ti=fgk- zHd|}#pX%u*8%<}Mwl-XFblTV@Njy+R@8Mq*eN+g^ahU;$J*q!)Y%jhi_%cupK33g0 ziI<4&B9|pzWAuKMgnA0}=1KJ6g)zswuF-V$_zx1AssaMKf*|;x>LC;F^7OiMY4kj6tov@Gx32CA}Fw z!)Ee=q|SWMfo2P&PYss5d=;TzN3cet3hFk}+7Zm=Z4J10ct~!^^v%n@@AoTydh=Tc zypVY8wDyuxlq146bIDpiUAcjepIySw)yY5-V>dlnIQDyxRj?pSbFvC0>QE^8l15gw zizu1B%xt$D?tcH+_^w9K?Y_3>w%SP$MIUOF+N?RWa=U$aEYGc~ro-8!`7vskN}(S$ z5Ab4}xE)PO%j6~P0Ro(go!_uQ9%IAeki!@|RH^u;y|ew0xD`ceYgLC1l@CMU>BBdu zQfEK!;RMO{;^39-9yDp~I%qy7PtSFq@=UhaJ{Mt}N7(PT!R}WxFWBmIf_#FWS8)(h zv+h@JG~jkroka z@v7zPGu)xz{Z9uICCh@78IJm^PqRY>`1navc`#TXs{T$7nL0sT2CGATu7Xshjp~eK zgJV{l@g5GJ@`@&d5f)UgI&YkoM{m8s499%^F~2HH#=P4tGDy(z*%)x;RRTtSGM=Xt z{9c`?(KMaa$5oM0hiRMo(!1C5G{@UrF%jeS6$|kDpt#yNmzq<0;INsrm&H4iy78}K zQqK=on$#fki_p!5pwyIwTV(~4s4Og87kej3cdO_}1-hF8bkL1hgkN4ROFk~eY@335 zqN!ua8MqJ$4dHCTGIzJe06|sQs9IqH!|kEoNqY?qZPP7bhANGeywmMr-Ihg%FTe?2M7UV|M- zmIL2=ajKqOI>kcVd*Q0mVNp8ls;Z)*=4dj{6sz~hxuA1R>7EVn3ZjZXdSlbZXWd?{ z0oA~DzT=a5uhFAjGgPN;Ti!nNQ~Z?7>V9|lHLd^F#8j3V@y<0ZLh4)3^MJQzljg@r z-KV&CUek+a(~EZJxotC&dMbR%d1STRQW^PE)R}z1jSVDOtuuO=Q50m=oJv6>bShNvvZ|Ral-Z!=F@oE$EGzNgPHC&P~9e`+mJ=O z4U=gwWALC`KT-|v@IWrH!ecmN%i_`y7Wk{ldNW$Fg}?O5oqG0wk18Utmo@PNa+C*l zk813O;rHTah-+XC;&%Iwt zf7`os9t4j&ym+|6Ej6S@usVL__uVqB!q`(%LiGIda-GLUI9V-gQgCn~<74mDkQ8f=_fcE=Wz{LRHEXZJ2s zku&tO(+D~99OjY3+>{zrv5ABzc0%yI@A{#O#K>N~0)?~04ajPRgpMbweDvjZQA7)S z1h<;>N9QW1!cD)A`74SXaN@8CXz;-a*}RbnyQ8qXbT^y17pzwC!#CQ0aX$-0rPp*i z^}9pcty|rEf4gRTZP|1txRTZYu^3L)@ayJgleT(NR&SctG08otO`-I|T^fXT7N8%M zLwdymaO_mJC@0g|NFG_iGO_2HUbc#Ht@-$JTuxe0cw@Ay! zVxlHlhhwjIYkF#dkf`ZN>gmZH?ZlN&5mXFkD>V1l=Gbjf)9H4QNtLc51Yb#3C4zcE zW5UVF-oW<*3+cduiB%0Zt^HX{ro92Z!|;DL5}IHD3A7Ptj~Ob*skNYjk%S1FCZ^`z z_tkI^a6Zr*hhMAvkV@d8ld`yF?PXRx9M)P-CQ1SVt;FlL8V5=N)06@AY~vtaH|44Sm~pmMYz%Z1Zx!-dMqS^o*I&$bY`6T9)tg|pYuWB7-(g}z@H!kg z&=~T40@OoI4QPISIC~yBRinhKh0P!chK2{~ZjRLbr0U#8U87e(aL3Q^{4Gz=$(0Ac zZQdlsSTUk9Z!NQ{A`xx|Q(u~*nxQXr$xf*BQ&U=dfX_{SQhTby{lvg=mCwR}@m lib/lax.min.js.gz && cp lib/lax.min.js docs/lib/lax.min.js" }, diff --git a/src/lax.js b/src/lax.js index ca2473e..f324d16 100644 --- a/src/lax.js +++ b/src/lax.js @@ -440,7 +440,7 @@ presets.forEach((presetString) => { - const [presetName, y, str] = presetString.split("_") + const [presetName, y, str] = presetString.split(":") const presetFn = window.lax.presets[presetName] From 26496247c266f360c225311dbfdfbc39abbfe37a Mon Sep 17 00:00:00 2001 From: Alex Fox Date: Mon, 28 Dec 2020 18:23:47 +0000 Subject: [PATCH 4/5] Updated build --- lib/lax.min.js.gz | Bin 3873 -> 3873 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/lib/lax.min.js.gz b/lib/lax.min.js.gz index bf06561f5d7a0601bc996f22a2df1ab080b20d1f..6b1a50a0df9010e8a869778ff39a3be39ffc8813 100644 GIT binary patch delta 15 WcmZ1|w@{8vzMF$%xza{9X?_4BIRohc delta 15 WcmZ1|w@{8vzMF%CS#cwqG(P|zTmwV^ From 9f2a3966008e7c563f4351f867c63c38896048b4 Mon Sep 17 00:00:00 2001 From: Alex Fox Date: Mon, 28 Dec 2020 19:07:16 +0000 Subject: [PATCH 5/5] New build --- lib/lax.min.js.gz | Bin 3873 -> 3873 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/lib/lax.min.js.gz b/lib/lax.min.js.gz index 6b1a50a0df9010e8a869778ff39a3be39ffc8813..599c46e9a6f82994123310524647b360887d07a7 100644 GIT binary patch delta 15 WcmZ1|w@{8vzMF&Np3X)#X?_4CwFD{v delta 15 WcmZ1|w@{8vzMF$%xza{9X?_4BIRohc