lanimate 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -23,5 +23,6 @@ or as a ready-to-go bundle:
23
23
  ## usage
24
24
 
25
25
  ```js
26
- new lanimate();
26
+ const lanimate = new lanimate();
27
+ lanimate.init();
27
28
  ```
package/_build/script.js CHANGED
@@ -13,18 +13,40 @@ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/creat
13
13
 
14
14
  var lanimate = /*#__PURE__*/function () {
15
15
  function lanimate() {
16
- var _this = this;
17
-
18
16
  (0, _classCallCheck2.default)(this, lanimate);
19
- document.addEventListener('DOMContentLoaded', function () {
20
- _this.ready();
21
- });
22
- window.addEventListener('load', function () {
23
- _this.load();
24
- });
25
17
  }
26
18
 
27
19
  (0, _createClass2.default)(lanimate, [{
20
+ key: "init",
21
+ value: function init() {
22
+ var _this = this;
23
+
24
+ var ready = new Promise(function (resolve) {
25
+ if (document.readyState !== 'loading') {
26
+ return resolve();
27
+ } else {
28
+ document.addEventListener('DOMContentLoaded', function () {
29
+ return resolve();
30
+ });
31
+ }
32
+ });
33
+ ready.then(function () {
34
+ _this.ready();
35
+ });
36
+ var load = new Promise(function (resolve) {
37
+ if (document.readyState === 'complete') {
38
+ return resolve();
39
+ } else {
40
+ window.addEventListener('load', function () {
41
+ return resolve();
42
+ });
43
+ }
44
+ });
45
+ load.then(function () {
46
+ load();
47
+ });
48
+ }
49
+ }, {
28
50
  key: "ready",
29
51
  value: function ready() {
30
52
  document.head.insertAdjacentHTML('beforeend', "\n <style>\n [data-lanimate] {\n opacity: 0;\n }\n /* disable on mobile */\n @media screen and (max-width: 1100px) {\n [data-lanimate] {\n transition: all 0s ease 0s;\n opacity: 1;\n }\n [data-lanimate='scrollX'] {\n transform: translateX(0px);\n }\n [data-lanimate='scrollY'] {\n transform: translateX(0px);\n }\n [data-lanimate='scale'] {\n transform: scale(1) translateY(0px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(0deg);\n }\n }\n </style>\n ");
package/lanimate.min.js CHANGED
@@ -1 +1 @@
1
- !function t(e,a,n){function r(l,s){if(!a[l]){if(!e[l]){var o="function"==typeof require&&require;if(!s&&o)return o(l,!0);if(i)return i(l,!0);var d=new Error("Cannot find module '"+l+"'");throw d.code="MODULE_NOT_FOUND",d}var u=a[l]={exports:{}};e[l][0].call(u.exports,(function(t){return r(e[l][1][t]||t)}),u,u.exports,t,e,a,n)}return a[l].exports}for(var i="function"==typeof require&&require,l=0;l<n.length;l++)r(n[l]);return r}({1:[function(t,e,a){"use strict";var n=t("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(a,"__esModule",{value:!0}),a.default=void 0;var r=n(t("@babel/runtime/helpers/classCallCheck")),i=n(t("@babel/runtime/helpers/createClass")),l=function(){function t(){var e=this;(0,r.default)(this,t),document.addEventListener("DOMContentLoaded",(function(){e.ready()})),window.addEventListener("load",(function(){e.load()}))}return(0,i.default)(t,[{key:"ready",value:function(){document.head.insertAdjacentHTML("beforeend","\n <style>\n [data-lanimate] {\n opacity: 0;\n }\n /* disable on mobile */\n @media screen and (max-width: 1100px) {\n [data-lanimate] {\n transition: all 0s ease 0s;\n opacity: 1;\n }\n [data-lanimate='scrollX'] {\n transform: translateX(0px);\n }\n [data-lanimate='scrollY'] {\n transform: translateX(0px);\n }\n [data-lanimate='scale'] {\n transform: scale(1) translateY(0px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(0deg);\n }\n }\n </style>\n ")}},{key:"traverseAllTextNodes",value:function(t,e){var a=this;t.childNodes.length>0&&t.childNodes.forEach((function(t){3===t.nodeType?t.textContent=e(t.textContent):a.traverseAllTextNodes(t,e)}))}},{key:"load",value:function(){var t=this;document.querySelectorAll("[data-lanimate-split]").length>0&&document.querySelectorAll("[data-lanimate-split]").forEach((function(e){e.setAttribute("data-aria-label",e.innerText.replace(/(?:\r\n|\r|\n)/g," ")),e.innerHTML=e.innerHTML.split(" ").join("&nbsp;");var a=0;"char"===e.getAttribute("data-lanimate-split")&&(t.traverseAllTextNodes(e,(function(t){return"%span%"+t.split("").join("%/span%%span%")+"%/span%"})),e.innerHTML=e.innerHTML.split("%span%").join("<span>").split("%/span%").join("</span>"),a=100),"word"===e.getAttribute("data-lanimate-split")&&(t.traverseAllTextNodes(e,(function(t){return"%span%"+t.split(" ").join("%/span% %span%")+"%/span%"})),e.innerHTML=e.innerHTML.split("%span%").join("<span>").split("%/span%").join("</span>"),a=250),"line"===e.getAttribute("data-lanimate-split")&&(e.innerHTML="<span>"+e.innerHTML.split("<br>").join("</span><br/><span>")+"</span>",a=500);var n=0;e.querySelectorAll("span").forEach((function(t,r){if(""!=t.innerText.trim()){t.setAttribute("data-lanimate",e.getAttribute("data-lanimate"));var i=0;e.hasAttribute("data-lanimate-delay")&&(i=parseInt(e.getAttribute("data-lanimate-delay"))),e.hasAttribute("data-lanimate-speed")&&(t.setAttribute("data-lanimate-speed",e.getAttribute("data-lanimate-speed")),i*=1/parseInt(e.getAttribute("data-lanimate-speed"))),t.setAttribute("data-lanimate-delay",i+a*n),n++}})),e.removeAttribute("data-lanimate"),e.removeAttribute("data-lanimate-delay"),e.removeAttribute("data-lanimate-speed")})),document.querySelectorAll("[data-lanimate-speed]").length>0&&document.querySelectorAll("[data-lanimate-speed]").forEach((function(t){var e=parseInt(t.getAttribute("data-lanimate-speed"))/1e3;setTimeout((function(){t.style.transitionDuration=e+"s, "+e+"s"}),10)})),document.querySelectorAll("[data-lanimate]").length>0&&document.querySelectorAll("[data-lanimate]").forEach((function(e){t.start(e),window.addEventListener("scroll",(function(){t.start(e)}))})),document.head.insertAdjacentHTML("beforeend","\n <style>\n [data-lanimate='fade'] {\n }\n [data-lanimate='scrollX'] {\n transform: translateX(30px);\n }\n [data-lanimate='scrollY'] {\n transform: translateY(30px);\n }\n [data-lanimate='scale'] {\n transform: scale(1.1) translateY(30px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(15deg);\n transform-origin: 0 0;\n }\n [data-lanimate-started] {\n transition: opacity 1s ease-in-out, transform 1s ease-in-out;\n opacity: 1;\n }\n [data-lanimate-split] span {\n display:inline-block;\n }\n [data-lanimate='fade'][data-lanimate-started] {\n }\n [data-lanimate='scrollX'][data-lanimate-started] {\n transform: translateX(0px);\n }\n [data-lanimate='scrollY'][data-lanimate-started] {\n transform: translateX(0px);\n }\n [data-lanimate='scale'][data-lanimate-started] {\n transform: scale(1) translateY(0px);\n }\n [data-lanimate='rotate'][data-lanimate-started] {\n transform: rotate(0deg);\n }\n </style>\n ")}},{key:"start",value:function(t){if(!t.hasAttribute("data-lanimate-started")&&this.scrollTop()+window.innerHeight>=this.offsetTop(t)){var e=0;t.hasAttribute("data-lanimate-delay")&&(e=parseInt(t.getAttribute("data-lanimate-delay"))),setTimeout((function(){t.setAttribute("data-lanimate-started","true")}),e)}}},{key:"scrollTop",value:function(){var t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)}},{key:"offsetTop",value:function(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop}}]),t}();a.default=l,window.lanimate=l},{"@babel/runtime/helpers/classCallCheck":2,"@babel/runtime/helpers/createClass":3,"@babel/runtime/helpers/interopRequireDefault":4}],2:[function(t,e,a){e.exports=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},e.exports.__esModule=!0,e.exports.default=e.exports},{}],3:[function(t,e,a){function n(t,e){for(var a=0;a<e.length;a++){var n=e[a];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}e.exports=function(t,e,a){return e&&n(t.prototype,e),a&&n(t,a),Object.defineProperty(t,"prototype",{writable:!1}),t},e.exports.__esModule=!0,e.exports.default=e.exports},{}],4:[function(t,e,a){e.exports=function(t){return t&&t.__esModule?t:{default:t}},e.exports.__esModule=!0,e.exports.default=e.exports},{}]},{},[1]);
1
+ !function t(e,a,n){function r(l,o){if(!a[l]){if(!e[l]){var s="function"==typeof require&&require;if(!o&&s)return s(l,!0);if(i)return i(l,!0);var d=new Error("Cannot find module '"+l+"'");throw d.code="MODULE_NOT_FOUND",d}var u=a[l]={exports:{}};e[l][0].call(u.exports,(function(t){return r(e[l][1][t]||t)}),u,u.exports,t,e,a,n)}return a[l].exports}for(var i="function"==typeof require&&require,l=0;l<n.length;l++)r(n[l]);return r}({1:[function(t,e,a){"use strict";var n=t("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(a,"__esModule",{value:!0}),a.default=void 0;var r=n(t("@babel/runtime/helpers/classCallCheck")),i=n(t("@babel/runtime/helpers/createClass")),l=function(){function t(){(0,r.default)(this,t)}return(0,i.default)(t,[{key:"init",value:function(){var t=this;new Promise((function(t){if("loading"!==document.readyState)return t();document.addEventListener("DOMContentLoaded",(function(){return t()}))})).then((function(){t.ready()}));var e=new Promise((function(t){if("complete"===document.readyState)return t();window.addEventListener("load",(function(){return t()}))}));e.then((function(){e()}))}},{key:"ready",value:function(){document.head.insertAdjacentHTML("beforeend","\n <style>\n [data-lanimate] {\n opacity: 0;\n }\n /* disable on mobile */\n @media screen and (max-width: 1100px) {\n [data-lanimate] {\n transition: all 0s ease 0s;\n opacity: 1;\n }\n [data-lanimate='scrollX'] {\n transform: translateX(0px);\n }\n [data-lanimate='scrollY'] {\n transform: translateX(0px);\n }\n [data-lanimate='scale'] {\n transform: scale(1) translateY(0px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(0deg);\n }\n }\n </style>\n ")}},{key:"traverseAllTextNodes",value:function(t,e){var a=this;t.childNodes.length>0&&t.childNodes.forEach((function(t){3===t.nodeType?t.textContent=e(t.textContent):a.traverseAllTextNodes(t,e)}))}},{key:"load",value:function(){var t=this;document.querySelectorAll("[data-lanimate-split]").length>0&&document.querySelectorAll("[data-lanimate-split]").forEach((function(e){e.setAttribute("data-aria-label",e.innerText.replace(/(?:\r\n|\r|\n)/g," ")),e.innerHTML=e.innerHTML.split(" ").join("&nbsp;");var a=0;"char"===e.getAttribute("data-lanimate-split")&&(t.traverseAllTextNodes(e,(function(t){return"%span%"+t.split("").join("%/span%%span%")+"%/span%"})),e.innerHTML=e.innerHTML.split("%span%").join("<span>").split("%/span%").join("</span>"),a=100),"word"===e.getAttribute("data-lanimate-split")&&(t.traverseAllTextNodes(e,(function(t){return"%span%"+t.split(" ").join("%/span% %span%")+"%/span%"})),e.innerHTML=e.innerHTML.split("%span%").join("<span>").split("%/span%").join("</span>"),a=250),"line"===e.getAttribute("data-lanimate-split")&&(e.innerHTML="<span>"+e.innerHTML.split("<br>").join("</span><br/><span>")+"</span>",a=500);var n=0;e.querySelectorAll("span").forEach((function(t,r){if(""!=t.innerText.trim()){t.setAttribute("data-lanimate",e.getAttribute("data-lanimate"));var i=0;e.hasAttribute("data-lanimate-delay")&&(i=parseInt(e.getAttribute("data-lanimate-delay"))),e.hasAttribute("data-lanimate-speed")&&(t.setAttribute("data-lanimate-speed",e.getAttribute("data-lanimate-speed")),i*=1/parseInt(e.getAttribute("data-lanimate-speed"))),t.setAttribute("data-lanimate-delay",i+a*n),n++}})),e.removeAttribute("data-lanimate"),e.removeAttribute("data-lanimate-delay"),e.removeAttribute("data-lanimate-speed")})),document.querySelectorAll("[data-lanimate-speed]").length>0&&document.querySelectorAll("[data-lanimate-speed]").forEach((function(t){var e=parseInt(t.getAttribute("data-lanimate-speed"))/1e3;setTimeout((function(){t.style.transitionDuration=e+"s, "+e+"s"}),10)})),document.querySelectorAll("[data-lanimate]").length>0&&document.querySelectorAll("[data-lanimate]").forEach((function(e){t.start(e),window.addEventListener("scroll",(function(){t.start(e)}))})),document.head.insertAdjacentHTML("beforeend","\n <style>\n [data-lanimate='fade'] {\n }\n [data-lanimate='scrollX'] {\n transform: translateX(30px);\n }\n [data-lanimate='scrollY'] {\n transform: translateY(30px);\n }\n [data-lanimate='scale'] {\n transform: scale(1.1) translateY(30px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(15deg);\n transform-origin: 0 0;\n }\n [data-lanimate-started] {\n transition: opacity 1s ease-in-out, transform 1s ease-in-out;\n opacity: 1;\n }\n [data-lanimate-split] span {\n display:inline-block;\n }\n [data-lanimate='fade'][data-lanimate-started] {\n }\n [data-lanimate='scrollX'][data-lanimate-started] {\n transform: translateX(0px);\n }\n [data-lanimate='scrollY'][data-lanimate-started] {\n transform: translateX(0px);\n }\n [data-lanimate='scale'][data-lanimate-started] {\n transform: scale(1) translateY(0px);\n }\n [data-lanimate='rotate'][data-lanimate-started] {\n transform: rotate(0deg);\n }\n </style>\n ")}},{key:"start",value:function(t){if(!t.hasAttribute("data-lanimate-started")&&this.scrollTop()+window.innerHeight>=this.offsetTop(t)){var e=0;t.hasAttribute("data-lanimate-delay")&&(e=parseInt(t.getAttribute("data-lanimate-delay"))),setTimeout((function(){t.setAttribute("data-lanimate-started","true")}),e)}}},{key:"scrollTop",value:function(){var t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)}},{key:"offsetTop",value:function(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop}}]),t}();a.default=l,window.lanimate=l},{"@babel/runtime/helpers/classCallCheck":2,"@babel/runtime/helpers/createClass":3,"@babel/runtime/helpers/interopRequireDefault":4}],2:[function(t,e,a){e.exports=function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")},e.exports.__esModule=!0,e.exports.default=e.exports},{}],3:[function(t,e,a){function n(t,e){for(var a=0;a<e.length;a++){var n=e[a];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}e.exports=function(t,e,a){return e&&n(t.prototype,e),a&&n(t,a),Object.defineProperty(t,"prototype",{writable:!1}),t},e.exports.__esModule=!0,e.exports.default=e.exports},{}],4:[function(t,e,a){e.exports=function(t){return t&&t.__esModule?t:{default:t}},e.exports.__esModule=!0,e.exports.default=e.exports},{}]},{},[1]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lanimate",
3
- "version": "1.0.2",
3
+ "version": "1.0.3",
4
4
  "main": "_build/script.js",
5
5
  "files": [
6
6
  "_build/*.js",