lanimate 1.2.3 → 1.2.4

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/_build/script.js CHANGED
@@ -122,7 +122,7 @@ class Lanimate {
122
122
  }
123
123
  addExtendedStyles() {
124
124
  if (document.head.querySelector('.lanimate-styles-extended') === null) {
125
- document.head.insertAdjacentHTML('beforeend', "\n <style class=\"lanimate-styles-extended\">\n [data-lanimate='fade'] {\n }\n [data-lanimate='scrollX'] {\n transform: translateX(50px);\n }\n [data-lanimate='scrollY'] {\n transform: translateY(50px);\n }\n [data-lanimate='scale'] {\n transform: scale(1.1) translateY(50px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(15deg) translateY(50px);\n transform-origin: 0 0;\n }\n [data-lanimate='rotate3d'] {\n transform: rotateX(80deg) rotateY(45deg);\n transform-style: preserve-3d;\n }\n [data-lanimate='skew'] {\n transform: skew(70deg, 10deg);\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] [data-lanimate] {\n display:inline-block;\n }\n [data-lanimate-split] [data-word-nowrap] {\n white-space:nowrap;\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: translateY(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) translateY(0px);\n }\n [data-lanimate='rotate3d'][data-lanimate-started] {\n transform: rotateX(0deg) rotateY(0deg);\n }\n [data-lanimate='skew'][data-lanimate-started] {\n transform: skew(0deg, 0deg);\n }\n @media print {\n [data-lanimate] { opacity: 1 !important; }\n } \n </style>\n ");
125
+ document.head.insertAdjacentHTML('beforeend', "\n <style class=\"lanimate-styles-extended\">\n [data-lanimate='fade'] {\n }\n [data-lanimate='scrollX'] {\n transform: translateX(50px);\n }\n [data-lanimate='scrollY'] {\n transform: translateY(50px);\n }\n [data-lanimate='scale'] {\n transform: scale(1.1) translateY(50px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(15deg) translateY(50px);\n transform-origin: 0 0;\n }\n [data-lanimate='rotate3d'] {\n transform: rotateX(80deg) rotateY(45deg);\n transform-style: preserve-3d;\n }\n [data-lanimate='skew'] {\n transform: skew(70deg, 10deg);\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] [data-lanimate] {\n display:inline-block;\n }\n [data-lanimate-split] [data-word-nowrap] {\n white-space:nowrap;\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: translateY(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) translateY(0px);\n }\n [data-lanimate='rotate3d'][data-lanimate-started] {\n transform: rotateX(0deg) rotateY(0deg);\n }\n [data-lanimate='skew'][data-lanimate-started] {\n transform: skew(0deg, 0deg);\n }\n @media print {\n [data-lanimate] { opacity: 1 !important; }\n [data-lanimate='scrollX'],\n [data-lanimate='scrollY'],\n [data-lanimate='scale'],\n [data-lanimate='rotate'],\n [data-lanimate='rotate3d'],\n [data-lanimate='skew'] { transform: none !important; }\n } \n </style>\n ");
126
126
  }
127
127
  }
128
128
  traverseAllTextNodes($el, $fn) {
package/lanimate.min.js CHANGED
@@ -1 +1 @@
1
- !function t(e,n,r){function a(o,l){if(!n[o]){if(!e[o]){var s="function"==typeof require&&require;if(!l&&s)return s(o,!0);if(i)return i(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var d=n[o]={exports:{}};e[o][0].call(d.exports,(function(t){return a(e[o][1][t]||t)}),d,d.exports,t,e,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o<r.length;o++)a(r[o]);return a}({1:[function(t,e,n){"use strict";var r=t("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var a=r(t("hlp"));class i{init(){a.default.isMobile()?document.head.insertAdjacentHTML("beforeend",'<style class="lanimate-styles-restore">[data-lanimate] { opacity: 1; }</style>'):(a.default.ready().then((()=>{this.ready()})),a.default.load().then((()=>{this.load()})))}ready(){this.addBasicStyles()}load(){this.addExtendedStyles(),a.default.runForEl("[data-lanimate]",(t=>{if(null===t.parentNode.closest("[data-lanimate]"))if(t.hasAttribute("data-lanimate-split")&&"none"!==t.getAttribute("data-lanimate-split")){t.setAttribute("data-aria-label",t.innerText.replace(/(?:\r\n|\r|\n)/g," ")),t.innerHTML=t.innerHTML.trim().replace(/ {2,}/g,"").split(" ").join("&nbsp;");let e=0;"char"===t.getAttribute("data-lanimate-split")&&(this.traverseAllTextNodes(t,(t=>"%span data-word data-word-nowrap%"+t.split(" ").map((t=>"%span data-char%"+t.split("").join("%/span%%span data-char%")+"%/span%")).join("%/span% %span data-word data-word-nowrap%")+"%/span%")),t.innerHTML=t.innerHTML.split("%span data-word data-word-nowrap%").join("<span data-word data-word-nowrap>").split("%span data-char%").join("<span data-char>").split("%/span%").join("</span>"),e=50),"word"===t.getAttribute("data-lanimate-split")&&(this.traverseAllTextNodes(t,(t=>"%span data-word%"+t.split(" ").join("%/span% %span data-word%")+"%/span%")),t.innerHTML=t.innerHTML.split("%span data-word%").join("<span data-word>").split("%/span%").join("</span>"),e=250),t.hasAttribute("data-lanimate-speed")&&(e=e*parseInt(t.getAttribute("data-lanimate-speed"))/1e3);let n=0;t.querySelectorAll("span").forEach((r=>{if(""==r.innerText.trim())return;if(null!==r.querySelector("[data-char]"))return;let a=0;t.hasAttribute("data-lanimate-delay")&&(a=parseInt(t.getAttribute("data-lanimate-delay"))),t.hasAttribute("data-lanimate-speed")&&r.setAttribute("data-lanimate-speed",t.getAttribute("data-lanimate-speed")),r.setAttribute("data-lanimate-delay",a+e*n),r.setAttribute("data-lanimate",t.getAttribute("data-lanimate")),n++,this.prepareAndBindStart(r)})),t.removeAttribute("data-lanimate"),t.removeAttribute("data-lanimate-delay"),t.removeAttribute("data-lanimate-speed")}else this.prepareAndBindStart(t)}))}prepareAndBindStart(t){if(t.hasAttribute("data-lanimate-speed")){let e=parseInt(t.getAttribute("data-lanimate-speed"))/1e3;setTimeout((()=>{t.style.transitionDuration=e+"s, "+e+"s"}),10)}this.start(t),window.addEventListener("scroll",(()=>{this.start(t)})),setInterval((()=>{this.start(t)}),500)}start(t){if(!0!==t.lanimateIsStarted&&this.scrollTop()+window.innerHeight>=this.offsetTop(t)){t.lanimateIsStarted=!0;let e=0;t.hasAttribute("data-lanimate-delay")&&(e=parseInt(t.getAttribute("data-lanimate-delay"))),setTimeout((()=>{t.setAttribute("data-lanimate-started","true")}),e)}}scrollTop(){let t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)}offsetTop(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop}addBasicStyles(){null===document.head.querySelector(".lanimate-styles-basic")&&document.head.insertAdjacentHTML("beforeend",'\n <style class="lanimate-styles-basic">\n [data-lanimate] {\n opacity: 0;\n }\n </style>\n ')}addExtendedStyles(){null===document.head.querySelector(".lanimate-styles-extended")&&document.head.insertAdjacentHTML("beforeend","\n <style class=\"lanimate-styles-extended\">\n [data-lanimate='fade'] {\n }\n [data-lanimate='scrollX'] {\n transform: translateX(50px);\n }\n [data-lanimate='scrollY'] {\n transform: translateY(50px);\n }\n [data-lanimate='scale'] {\n transform: scale(1.1) translateY(50px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(15deg) translateY(50px);\n transform-origin: 0 0;\n }\n [data-lanimate='rotate3d'] {\n transform: rotateX(80deg) rotateY(45deg);\n transform-style: preserve-3d;\n }\n [data-lanimate='skew'] {\n transform: skew(70deg, 10deg);\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] [data-lanimate] {\n display:inline-block;\n }\n [data-lanimate-split] [data-word-nowrap] {\n white-space:nowrap;\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: translateY(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) translateY(0px);\n }\n [data-lanimate='rotate3d'][data-lanimate-started] {\n transform: rotateX(0deg) rotateY(0deg);\n }\n [data-lanimate='skew'][data-lanimate-started] {\n transform: skew(0deg, 0deg);\n }\n @media print {\n [data-lanimate] { opacity: 1 !important; }\n } \n </style>\n ")}traverseAllTextNodes(t,e){t.childNodes.length>0&&t.childNodes.forEach((t=>{3===t.nodeType?t.textContent=e(t.textContent):this.traverseAllTextNodes(t,e)}))}}n.default=i,window.Lanimate=i},{"@babel/runtime/helpers/interopRequireDefault":2,hlp:3}],2:[function(t,e,n){e.exports=function(t){return t&&t.__esModule?t:{default:t}},e.exports.__esModule=!0,e.exports.default=e.exports},{}],3:[function(t,e,n){(function(t){(function(){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;class e{static x(t){if("function"==typeof t)try{return t=t(),this.x(t)}catch(t){return!1}return!(null===t||!1===t||"string"==typeof t&&""==t.trim()||"object"==typeof t&&0===Object.keys(t).length&&t.constructor===Object||void 0===t||Array.isArray(t)&&0===t.length||Array.isArray(t)&&1===t.length&&""===t[0])}static nx(t){return!this.x(t)}static true(t){if("function"==typeof t)try{return t=t(),this.true(t)}catch(t){return!1}return void 0!==t&&(null!==t&&(!1!==t&&((!Array.isArray(t)||0!==t.length)&&((!Array.isArray(t)||""!==e.first(t))&&(("object"!=typeof t||0!==Object.keys(t).length||t.constructor!==Object)&&(0!==t&&("0"!==t&&(""!==t&&(" "!==t&&("null"!==t&&"false"!==t))))))))))}static false(t){if("function"==typeof t)try{return t=t(),this.false(t)}catch(t){return!1}return void 0!==t&&(null!==t&&(!1===t||(!Array.isArray(t)||0!==t.length)&&((!Array.isArray(t)||""!==e.first(t))&&(("object"!=typeof t||0!==Object.keys(t).length||t.constructor!==Object)&&(0===t||("0"===t||""!==t&&(" "!==t&&("null"!==t&&"false"===t))))))))}static v(){if(this.nx(arguments))return"";for(let t=0;t<arguments.length;t++)if(this.x(arguments[t]))return arguments[t];return""}static loop(t,e){if(this.nx(t))return null;Array.isArray(t)?t.forEach(((t,n)=>{e(t,n)})):"object"==typeof t&&Object.entries(t).forEach((t=>{let[n,r]=t;e(r,n)}))}static map(t,e,n){return Object.keys(t).reduce(((r,a)=>(r[a]=e.call(n||null,a,t[a]),r)),{})}static first(t){if(Array.isArray(t)){var e=null;return t.forEach(((t,n)=>{null===e&&(e=t)})),e}if("object"==typeof t){e=null;return Object.entries(t).forEach((t=>{let[n,r]=t;null===e&&(e=r)})),e}return null}static last(t){if(Array.isArray(t)){let e=null;return t.forEach(((t,n)=>{e=t})),e}if("object"==typeof t){let e=null;return Object.entries(t).forEach((t=>{let[n,r]=t;e=r})),e}return null}static rand(t){return Array.isArray(t)?t[Math.floor(Math.random()*t.length)]:"object"==typeof t?(t=Object.values(t))[Math.floor(Math.random()*t.length)]:null}static random_string(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:8,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;null===e&&(e="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");let n=e.length,r="";for(let a=0;a<t;a++)r+=e[0+~~(Math.random()*(n-1-0+1))];return r}static round(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return Number(Math.round(t+"e"+e)+"e-"+e)}static isInteger(t){return!isNaN(t)&&parseInt(Number(t))==t&&!isNaN(parseInt(t,10))}static random_int(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:99999;return!(!this.isInteger(t)||!this.isInteger(e))&&(t>e&&([t,e]=[e,t]),~~(Math.random()*(e-t+1))+t)}static capitalize(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===t||""===t?t:t.charAt(0).toUpperCase()+t.slice(1)}static cookieExists(t){return void 0!==document.cookie&&null!==this.cookieGet(t)}static cookieGet(t){var e=document.cookie.match(new RegExp(t+"=([^;]+)"));return e?decodeURIComponent(e[1]):null}static cookieSet(t,e,n){let r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a="";window.location.protocol.indexOf("https")>-1&&(a="; SameSite=None; Secure"),document.cookie=t+"="+encodeURIComponent(e)+"; expires="+new Date((new Date).getTime()+24*n*60*60*1e3).toUTCString()+"; path=/"+a+"; domain="+(!0===r?this.urlHostTopLevel():"")}static cookieDelete(t){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n="";window.location.protocol.indexOf("https")>-1&&(n="; SameSite=None; Secure"),document.cookie=t+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/"+n+"; domain="+(!0===e?this.urlHostTopLevel():"")}static localStorageSet(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;n*=864e5;let r={value:e,expiry:(new Date).getTime()+n};localStorage.setItem(t,JSON.stringify(r))}static localStorageGet(t){let e=localStorage.getItem(t);if(!e)return null;let n=JSON.parse(e);return(new Date).getTime()>n.expiry?(localStorage.removeItem(t),null):n.value}static localStorageDelete(t){localStorage.removeItem(t)}static localStorageExists(t){return null!==this.localStorageGet(t)}static getParam(t){let e=window.location.search;if(this.nx(e))return null;let n=e.substring(1).split("&");for(var r=0;r<n.length;r++){var a=n[r].split("=");if(a[0]==t&&this.x(a[1]))return a[1]}return null}static getDevice(){return this.isPhone()?"phone":this.isTablet()?"tablet":"desktop"}static isPhone(){let t=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}static isTablet(){let t=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}static isDesktop(){return!this.isPhone()&&!this.isTablet()}static isMobile(){return!!(window.innerWidth<750||this.isPhone())}static isTouch(){return"ontouchstart"in window||navigator.maxTouchPoints||!1}static isMac(){return"mac"===e.getOs()}static isLinux(){return"linux"===e.getOs()}static isWindows(){return"windows"===e.getOs()}static getOs(){let t=window.navigator.userAgent,e=window.navigator.platform,n="unknown";return-1!==["Macintosh","MacIntel","MacPPC","Mac68K"].indexOf(e)||-1!==["iPhone","iPad","iPod"].indexOf(e)?n="mac":-1!==["Win32","Win64","Windows","WinCE"].indexOf(e)?n="windows":(/Android/.test(t)||/Linux/.test(e))&&(n="linux"),n}static getBrowser(){let t="",e=!!!document.documentMode&&!!window.StyleMedia;return t=-1!=navigator.userAgent.indexOf("Opera")||-1!=navigator.userAgent.indexOf("OPR")?"opera":-1==navigator.userAgent.indexOf("Chrome")||e?-1==navigator.userAgent.indexOf("Safari")||e?-1!=navigator.userAgent.indexOf("Firefox")?"firefox":-1!=navigator.userAgent.indexOf("MSIE")||1==!!document.documentMode?"ie":e?"edge":"unknown":"safari":"chrome",t}static isObject(t){return!!t&&t.constructor===Object}static isArray(t){return!!t&&t.constructor===Array}static isString(t){return"string"==typeof t||t instanceof String}static isDate(t){if(this.nx(t))return!1;if("[object Date]"===Object.prototype.toString.call(t))return!0;if(!this.isString(t))return!1;if(3!==t.split("-").length)return!1;let e=parseInt(t.split("-")[2]),n=parseInt(t.split("-")[1]),r=parseInt(t.split("-")[0]),a=new Date;return a.setFullYear(r,n-1,e),a.getFullYear()==r&&a.getMonth()+1==n&&a.getDate()==e}static formatDate(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;!1===e||!0===e||null===e||""===e?e=new Date:"object"!=typeof e&&(e=new Date(e.replace(/-/g,"/")));let n="",r=e.getMonth(),a=r+1,i=e.getDay(),o=e.getDate(),l=e.getFullYear(),s=e.getHours(),c=e.getMinutes(),d=e.getSeconds();for(let u=0,h=t.length;u<h;u++)switch(t[u]){case"j":n+=o;break;case"d":n+=o<10?"0"+o:o;break;case"l":let h=Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");n+=h[i];break;case"w":n+=i;break;case"D":h=Array("Sun","Mon","Tue","Wed","Thr","Fri","Sat"),n+=h[i];break;case"m":n+=a<10?"0"+a:a;break;case"n":n+=a;break;case"F":let m=Array("January","February","March","April","May","June","July","August","September","October","November","December");n+=m[r];break;case"M":m=Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"),n+=m[r];break;case"Y":n+=l;break;case"y":n+=l.toString().slice(-2);break;case"H":n+=s<10?"0"+s:s;break;case"g":let p=0===s?12:s;n+=p>12?p-12:p;break;case"h":p=0===s?12:s,p=p>12?p-12:p,n+=p<10?"0"+p:p;break;case"a":n+=s<12?"am":"pm";break;case"i":n+=c<10?"0"+c:c;break;case"s":n+=d<10?"0"+d:d;break;case"c":n+=e.toISOString();break;default:n+=t[u]}return n}static deepCopy(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if(Object(t)!==t)return t;if(n.has(t))return n.get(t);const r=t instanceof Date?new Date(t):t instanceof RegExp?new RegExp(t.source,t.flags):t.constructor?new t.constructor:Object.create(null);return n.set(t,r),t instanceof Map&&Array.from(t,(t=>{let[a,i]=t;return r.set(a,e.deepCopy(i,n))})),Object.assign(r,...Object.keys(t).map((r=>({[r]:e.deepCopy(t[r],n)}))))}static jsonStringToObject(t){if(this.nx(t)||!this.isString(t))return null;try{return JSON.parse(t)}catch(t){return null}}static isJsonString(t){if(this.nx(t)||!this.isString(t))return!1;try{JSON.parse(t);return!0}catch(t){return!1}}static jsonObjectToString(t){try{return JSON.stringify(t)}catch(t){return null}}static uuid(){function t(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return t()+t()+"-"+t()+"-"+t()+"-"+t()+"-"+t()+t()+t()}static guid(){return this.uuid()}static replaceAll(t,e,n){return t.split(e).join(n)}static replaceLast(t,e,n){let r=t.lastIndexOf(e);return t=t.slice(0,r)+t.slice(r).replace(e,n)}static replaceFirst(t,e,n){return t.replace(e,n)}static findAllPositions(t,e){let n,r=t.length,a=0,i=[];if(0==r)return[];for(;(n=e.indexOf(t,a))>-1;)i.push(n),a=n+r;return i}static findAllPositionsCaseInsensitive(t,e){let n,r=t.length,a=0,i=[];if(0==r)return[];for(;(n=this.indexOfCaseInsensitive(t,e,a))>-1;)i.push(n),a=n+r;return i}static countAllOccurences(t,e){let n=new RegExp(t,"g");return(e.match(n)||[]).length}static countAllOccurencesCaseInsensitive(t,e){let n=new RegExp(t,"gi");return(e.match(n)||[]).length}static indexOfCaseInsensitive(t,e,n){return e.toLowerCase().indexOf(t.toLowerCase(),n)}static highlight(t,e){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:500;if(this.nx(t)||this.nx(e))return t;if(!0===n){let n="...",a=this.findAllPositionsCaseInsensitive(e,t),i=t.split(" "),o=0;for(i.forEach(((t,l)=>{let s=!0;a.forEach((t=>{o>=t-r&&o<=t+e.length+r-1&&(s=!1)})),!0===s&&(i[l]=n),o+=t.length+1})),t=i.join(" ");t.indexOf(n+" "+n)>-1;)t=this.replaceAll(t,n+" "+n,n);t=t.trim()}let a=this.findAllPositionsCaseInsensitive(e,t),i='<strong class="highlight">',o="</strong>";for(let n=0;n<a.length;n++){t=t.substring(0,a[n])+i+t.substring(a[n],a[n]+e.length)+o+t.substring(a[n]+e.length);for(let t=n+1;t<a.length;t++)a[t]=a[t]+26+9}return t}static get(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return this.call("GET",t,e)}static post(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return this.call("POST",t,e)}static call(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return null===r&&(r={}),"data"in r||(r.data={}),"headers"in r||(r.headers=null),"throttle"in r||(r.throttle=0),"allow_errors"in r||(r.allow_errors=!0),new Promise(((a,i)=>{setTimeout((()=>{0!==n.indexOf("http")&&(n=e.baseUrl()+"/"+n);let o=new XMLHttpRequest;o.open(t,n,!0),"POST"===t&&(!("data"in r)||null===r.data||"object"!=typeof r.data||r.data instanceof FormData||(o.setRequestHeader("Content-Type","application/json;charset=UTF-8"),r.data=JSON.stringify(r.data)),o.setRequestHeader("X-Requested-With","XMLHttpRequest")),this.x(r.headers)&&Object.entries(r.headers).forEach((t=>{let[e,n]=t;o.setRequestHeader(e,n)})),o.onload=()=>{(4!=o.readyState||!0!==r.allow_errors&&200!=o.status&&304!=o.status)&&(this.isJsonString(o.responseText)?i(this.jsonStringToObject(o.responseText)):i(o.responseText)),this.isJsonString(o.responseText)?a(this.jsonStringToObject(o.responseText)):a(o.responseText)},o.onerror=()=>{i([o.readyState,o.status,o.statusText])},"GET"===t&&o.send(null),"POST"===t&&o.send(r.data)}),r.throttle)}))}static onResizeHorizontal(t){let e,n,r=window.innerWidth;window.addEventListener("resize",(()=>{e=window.innerWidth,e!=r&&(r=e,n&&clearTimeout(n),n=window.setTimeout((()=>{t()}),50))})),t()}static onResizeVertical(t){var e,n,r=window.innerHeight;window.addEventListener("resize",(()=>{(e=window.innerHeight)!=r&&(r=e,n&&clearTimeout(n),n=window.setTimeout((()=>{t()}),50))})),t()}static removeEmpty(t){return this.nx(t)||!Array.isArray(t)?t:t=t.filter((t=>this.x(t)))}static uniqueArray(t){let e={},n=[];for(let r=0;r<t.length;r++)t[r]in e||(n.push(t[r]),e[t[r]]=!0);return n}static powerset(t){return Array.isArray(t)?t.reduce(((t,e)=>t.concat(t.map((t=>[...t,e])))),[[]]):t}static charToInt(t){let e,n,r="ABCDEFGHIJKLMNOPQRSTUVWXYZ",a=0;for(e=0,n=(t=t.toUpperCase()).length-1;e<t.length;e+=1,n-=1)a+=Math.pow(26,n)*(r.indexOf(t[e])+1);return a}static intToChar(t){for(var e="",n=1,r=26;(t-=n)>=0;n=r,r*=26)e=String.fromCharCode(parseInt(t%r/n)+65)+e;return e}static slugify(t){return t.toString().toLowerCase().trim().split("ä").join("ae").split("ö").join("oe").split("ü").join("ue").split("ß").join("ss").replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}static incChar(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return this.intToChar(this.charToInt(t)+e)}static decChar(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return this.intToChar(this.charToInt(t)-e)}static range(t,e){let n=[],r=typeof t,a=typeof e,i=1;if("undefined"==r||"undefined"==a||r!=a)return null;if(e<t&&(i=-i),"number"==r)for(;i>0?e>=t:e<=t;)n.push(t),t+=i;else{if("string"!=r)return null;if(1!=t.length||1!=e.length)return null;for(t=t.charCodeAt(0),e=e.charCodeAt(0);i>0?e>=t:e<=t;)n.push(String.fromCharCode(t)),t+=i}return n}static dateToWeek(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;null===t&&(t=new Date),t=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate())),t.setUTCDate(t.getUTCDate()+4-(t.getUTCDay()||7));let e=new Date(Date.UTC(t.getUTCFullYear(),0,1));return Math.ceil(((t-e)/864e5+1)/7)}static weekToDate(t,e){null==e&&(e=(new Date).getFullYear());let n=new Date;n.setYear(e),n.setDate(1),n.setMonth(0),n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0);let r=n.getDay();r=0===r?7:r;let a=1-r;7-r+1<4&&(a+=7),n=new Date(n.getTime()+24*a*60*60*1e3);let i=6048e5*(t-1),o=n.getTime()+i;return n.setTime(o),n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n}static addDays(t,e){var n=new Date(t);return n.setDate(n.getDate()+e),n}static objectsAreEqual(t,e){var n=this;if(null==t||null==e)return t===e;if(t.constructor!==e.constructor)return!1;if(t instanceof Function)return t===e;if(t instanceof RegExp)return t===e;if(t===e||t.valueOf()===e.valueOf())return!0;if(Array.isArray(t)&&t.length!==e.length)return!1;if(t instanceof Date)return!1;if(!(t instanceof Object))return!1;if(!(e instanceof Object))return!1;var r=Object.keys(t);return Object.keys(e).every((function(t){return-1!==r.indexOf(t)}))&&r.every((function(r){return n.objectsAreEqual(t[r],e[r])}))}static containsObject(t,e){var n;for(n in e)if(e.hasOwnProperty(n)&&this.objectsAreEqual(e[n],t))return!0;return!1}static fadeOut(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;return e<=25&&(e=25),new Promise((n=>{t.style.opacity=1,function r(){(t.style.opacity-=25/e)<0?(t.style.display="none",n()):requestAnimationFrame(r)}()}))}static fadeIn(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;return e<=25&&(e=25),new Promise((n=>{t.style.opacity=0,t.style.display="block",function r(){var a=parseFloat(t.style.opacity);(a+=25/e)>1?n():(t.style.opacity=a,requestAnimationFrame(r))}()}))}static scrollTop(){let t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)}static scrollLeft(){let t=document.documentElement;return(window.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}static closestScrollable(t){let e=t instanceof HTMLElement&&window.getComputedStyle(t).overflowY,n=e&&!(e.includes("hidden")||e.includes("visible"));return t?n&&t.scrollHeight>=t.clientHeight?t:this.closestScrollable(t.parentNode)||document.scrollingElement||document.body:null}static offsetTop(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop}static offsetLeft(t){return t.getBoundingClientRect().left+window.pageXOffset-document.documentElement.clientLeft}static offsetRight(t){return t.getBoundingClientRect().left+window.pageXOffset-document.documentElement.clientLeft+t.offsetWidth}static offsetBottom(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop+t.offsetHeight}static offsetTopWithMargin(t){return this.offsetTop(t)-parseInt(getComputedStyle(t).marginTop)}static offsetLeftWithMargin(t){return this.offsetLeft(t)-parseInt(getComputedStyle(t).marginLeft)}static offsetRightWithMargin(t){return this.offsetRight(t)+parseInt(getComputedStyle(t).marginRight)}static offsetBottomWithMargin(t){return this.offsetBottom(t)+parseInt(getComputedStyle(t).marginBottom)}static documentHeight(){return Math.max(document.body.offsetHeight,document.body.scrollHeight,document.documentElement.clientHeight,document.documentElement.offsetHeight,document.documentElement.scrollHeight)}static documentWidth(){return document.documentElement.clientWidth||document.body.clientWidth}static windowWidth(){return window.innerWidth}static windowHeight(){return window.innerHeight}static windowWidthWithoutScrollbar(){return document.documentElement.clientWidth||document.body.clientWidth}static windowHeightWithoutScrollbar(){return document.documentElement.clientHeight||document.body.clientHeight}static outerWidthWithMargin(t){return t.offsetWidth+parseInt(getComputedStyle(t).marginLeft)+parseInt(getComputedStyle(t).marginRight)}static outerHeightWithMargin(t){return t.offsetHeight+parseInt(getComputedStyle(t).marginTop)+parseInt(getComputedStyle(t).marginBottom)}static scrollTo(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return new Promise((o=>{null===r&&(r=document.scrollingElement||document.documentElement),e.isNumeric(t)||(t=r===(document.scrollingElement||documentElement)?this.offsetTopWithMargin(t):t.getBoundingClientRect().top-parseInt(getComputedStyle(t).marginTop)-(r.getBoundingClientRect().top-r.scrollTop-parseInt(getComputedStyle(r).marginTop)));let l=0;Array.isArray(a)||(a=[a]),a.forEach((t=>{e.isNumeric(t)?l+=t:null!==t&&"fixed"===window.getComputedStyle(t).position&&(l+=-1*t.offsetHeight)})),t+=l;const s=r.scrollTop,c=t-s,d=+new Date,u=function(){const e=+new Date-d;var a,i,l;r.scrollTop=parseInt((a=e,i=s,l=c,(a/=n/2)<1?-l/2*(Math.sqrt(1-a*a)-1)+i:(a-=2,l/2*(Math.sqrt(1-a*a)+1)+i))),e<n?requestAnimationFrame(u):(r.scrollTop=t,o())};!0===i&&c>0?o():u()}))}static loadJs(t){e.isArray(t)||(t=[t]);let n=[];return e.loop(t,((t,e)=>{n.push(new Promise(((e,n)=>{let r=document.createElement("script");r.src=t,r.onload=()=>{e()},document.head.appendChild(r)})))})),Promise.all(n)}static async loadJsSequentially(t){e.isArray(t)||(t=[t]);for(let n of t)await e.loadJs(n)}static triggerAfterAllImagesLoaded(t,e,n){window.addEventListener("load",(r=>{null!==document.querySelector(t+" "+e)&&document.querySelectorAll(t+" "+e).forEach((r=>{this.triggerAfterAllImagesLoadedBindLoadEvent(r,t,e,n)}))})),document.addEventListener("DOMContentLoaded",(()=>{null!==document.querySelector(t)&&new MutationObserver((r=>{r.forEach((r=>{"childList"===r.type&&r.addedNodes.length>0?r.addedNodes.forEach((r=>{this.triggerAfterAllImagesLoadedHandleEl(r,t,e,n)})):"attributes"===r.type&&"src"===r.attributeName&&r.target.classList.contains(e.replace(".",""))&&r.oldValue!==r.target.getAttribute("src")&&this.triggerAfterAllImagesLoadedHandleEl(r.target,t,e,n)}))})).observe(document.querySelector(t),{attributes:!0,childList:!0,characterData:!1,subtree:!0,attributeOldValue:!0,characterDataOldValue:!1})}))}static triggerAfterAllImagesLoadedHandleEl(t,e,n,r){t.nodeType===Node.ELEMENT_NODE&&(t.classList.remove("loaded-img"),t.closest(e).classList.remove("loaded-all"),t.classList.contains("binded-trigger")||(t.classList.add("binded-trigger"),t.addEventListener("load",(()=>{this.triggerAfterAllImagesLoadedBindLoadEvent(t,e,n,r)}))))}static triggerAfterAllImagesLoadedBindLoadEvent(t,e,n,r){t.classList.add("loaded-img"),t.closest(e).querySelectorAll(".loaded-img").length===t.closest(e).querySelectorAll(n).length&&(t.closest(e).classList.add("loaded-all"),r())}static isVisible(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)}static isVisibleInViewport(t){if(!this.isVisible(t))return!1;let e=t.getBoundingClientRect();return!(e.bottom<0||e.right<0||e.left>window.innerWidth||e.top>window.innerHeight)}static textareaAutoHeight(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"textarea";this.textareaSetHeights(t),this.onResizeHorizontal((()=>{this.textareaSetHeights(t)})),[].forEach.call(document.querySelectorAll(t),(t=>{t.addEventListener("keyup",(t=>{this.textareaSetHeight(t.target)}))}))}static textareaSetHeights(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"textarea";[].forEach.call(document.querySelectorAll(t),(t=>{this.isVisible(t)&&this.textareaSetHeight(t)}))}static textareaSetHeight(t){t.style.height="5px",t.style.height=t.scrollHeight+"px"}static real100vh(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;if(null===t){let t=()=>{let t=.01*window.innerHeight;document.documentElement.style.setProperty("--vh","".concat(t,"px"))};t(),window.addEventListener("resize",(()=>{t()}))}else{let n=()=>{console.log(t),null!==document.querySelector(t)&&document.querySelectorAll(t).forEach((t=>{t.style.height=window.innerHeight*(e/100)+"px"}))};n(),window.addEventListener("resize",(()=>{n()}))}}static iOsRemoveHover(){"safari"===e.getBrowser()&&"desktop"!==e.getDevice()&&e.on("touchend","a",((t,e)=>{e.click()}))}static isNumeric(t){return!isNaN(parseFloat(t))&&isFinite(t)}static animate(t,n,r,a,i){return new Promise((o=>{i<=50&&(i=50);let l=[];n.split(";").forEach((t=>{l.push(t.split(":")[0].trim())}));let s=[];l.forEach((t=>{s.push(t+" "+Math.round(i/1e3*10)/10+"s "+a)})),s="transition: "+s.join(", ")+" !important;";let c=null;NodeList.prototype.isPrototypeOf(t)?c=Array.from(t):null===t?(console.log("cannot animate element from "+n+" to "+r+" because it does not exist"),o()):c=[t];let d=c.length;c.forEach(((t,a)=>{let c=e.random_string(10,"abcdefghijklmnopqrstuvwxyz");t.classList.add(c),window.requestAnimationFrame((()=>{let a=[],u=t.getAttribute("style");null!==u&&u.split(";").forEach((t=>{l.includes(t.split(":")[0].trim())||a.push(t)})),a=a.join(";")+n+";",t.setAttribute("style",a),window.requestAnimationFrame((()=>{let a=document.createElement("style");a.innerHTML="."+c+" { "+s+" }",document.head.appendChild(a),window.requestAnimationFrame((()=>{if(t.setAttribute("style",t.getAttribute("style").replace(n+";","")+r+";"),this.isVisible(t)){let n=!1;e.addEventListenerOnce(t,"transitionend",(e=>{if(n=!0,e.target!==e.currentTarget)return!1;document.head.removeChild(a),t.classList.remove(c),d--,d<=0&&window.requestAnimationFrame((()=>{o()}))})),setTimeout((()=>{!1===n&&(document.head.removeChild(a),t.classList.remove(c),d--,d<=0&&o())}),1.5*i)}else document.head.removeChild(a),t.classList.remove(c),d--,d<=0&&o()}))}))}))}))}))}static addEventListenerOnce(t,e,n,r,a){t.addEventListener(e,(function i(o){!1!==n.apply(this,arguments,r)&&t.removeEventListener(e,i,a)}))}static htmlDecode(t){let e=document.createElement("textarea");return e.innerHTML=t,e.value}static htmlEncode(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/`/g,"&#96;")}static nl2br(t){if(null==t)return"";return(t+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1<br/>")}static br2nl(t){if(null==t)return"";return t.replace(/<\s*\/?br\s*[\/]?>/gi,"\n")}static closest(t,e){if(!document.documentElement.contains(t))return null;do{if(this.matches(t,e))return t;t=t.parentElement||t.parentNode}while(null!==t&&1===t.nodeType);return null}static matches(t,e){let n=t,r=(n.parentNode||n.document).querySelectorAll(e),a=-1;for(;r[++a]&&r[a]!=n;);return!!r[a]}static wrap(t,e){if(null===t)return;let n=(new DOMParser).parseFromString(e,"text/html").body.childNodes[0];t.parentNode.insertBefore(n,t.nextSibling),n.appendChild(t)}static wrapTextNodes(t,e){null!==t&&Array.from(t.childNodes).filter((t=>3===t.nodeType&&t.textContent.trim().length>1)).forEach((t=>{const n=document.createElement(e);t.after(n),n.appendChild(t)}))}static html2dom(t){let e=document.createElement("template");return t=t.trim(),e.innerHTML=t,void 0===e.content?this.html2domLegacy(t):e.content.firstChild}static html2domLegacy(t){var e,n,r,a={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]},i=document,o=i.createDocumentFragment();if(/<|&#?\w+;/.test(t)){for(e=o.appendChild(i.createElement("div")),n=a[(/<([\w:]+)/.exec(t)||["",""])[1].toLowerCase()]||a._default,e.innerHTML=n[1]+t.replace(/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,"<$1></$2>")+n[2],r=n[0];r--;)e=e.lastChild;for(o.removeChild(o.firstChild);e.firstChild;)o.appendChild(e.firstChild)}else o.appendChild(i.createTextNode(t));return o.querySelector("*")}static prev(t,e){let n=t.previousElementSibling;return null===n?null:void 0===e||this.matches(n,e)?n:null}static next(t,e){let n=t.nextElementSibling;return null===n?null:void 0===e||this.matches(n,e)?n:null}static prevAll(t,e){let n=[];for(;t=t.previousElementSibling;)(void 0===e||this.matches(t,e))&&n.push(t);return n}static nextAll(t,e){let n=[];for(;t=t.nextElementSibling;)(void 0===e||this.matches(t,e))&&n.push(t);return n}static prevUntil(t,e){let n=[];for(;(t=t.previousElementSibling)&&!this.matches(t,e);)n.push(t);return n}static nextUntil(t,e){let n=[];for(;(t=t.nextElementSibling)&&!this.matches(t,e);)n.push(t);return n}static siblings(t,e){let n=[],r=t;for(t=t.parentNode.firstChild;t=t.nextElementSibling;)(void 0===e||this.matches(t,e))&&r!==t&&n.push(t);return n}static parents(t,e){let n=[],r=void 0!==e;for(;null!==(t=t.parentElement);)t.nodeType===Node.ELEMENT_NODE&&(r&&!this.matches(t,e)||n.push(t));return n}static css(t){let e=document.styleSheets,n={};for(let r in e)try{let a=e[r].rules||e[r].cssRules;for(let e in a)this.matches(t,a[e].selectorText)&&(n=Object.assign(n,this.css2json(a[e].style),this.css2json(t.getAttribute("style"))))}catch(t){}return n}static css2json(t){let e={};if(!t)return e;if(t instanceof CSSStyleDeclaration)for(let n in t)t[n].toLowerCase&&void 0!==t[t[n]]&&(e[t[n].toLowerCase()]=t[t[n]]);else if("string"==typeof t){t=t.split(";");for(let n in t)if(t[n].indexOf(":")>-1){let r=t[n].split(":");e[r[0].toLowerCase().trim()]=r[1].trim()}}return e}static compareDates(t,e){return"string"==typeof t&&(t=t.split(" ").join("T")),"string"==typeof e&&(e=e.split(" ").join("T")),t=new Date(t),e=new Date(e),t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0),t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate()?0:t<e?-1:1}static spaceship(t,e){return null===t||null===e||typeof t!=typeof e?null:"string"==typeof t?t.localeCompare(e):t>e?1:t<e?-1:0}static focus(t){e.unfocus();let n=null;if(n="string"==typeof t||t instanceof String?document.querySelector(t):t,null!==n){let t=document.createElement("div");t.classList.add("hlp-focus-mask"),t.style.position="fixed",t.style.top=0,t.style.bottom=0,t.style.left=0,t.style.right=0,t.style.backgroundColor="rgba(0,0,0,0.8)",t.style.zIndex=2147483646,n.before(t),n.setAttribute("data-focussed",1),n.setAttribute("data-focussed-orig-z-index",n.style.zIndex),n.setAttribute("data-focussed-orig-position",n.style.position),n.setAttribute("data-focussed-orig-background-color",n.style.backgroundColor),n.setAttribute("data-focussed-orig-box-shadow",n.style.boxShadow),n.style.zIndex=2147483647,n.style.position="relative",n.style.backgroundColor="#ffffff",n.style.boxShadow="0px 0px 0px 20px #fff"}}static unfocus(){null!==document.querySelector(".hlp-focus-mask")&&document.querySelectorAll(".hlp-focus-mask").forEach((t=>{e.remove(t)})),null!==document.querySelector("[data-focussed]")&&document.querySelectorAll("[data-focussed]").forEach((t=>{t.style.zIndex=t.getAttribute("data-focussed-orig-z-index"),t.style.position=t.getAttribute("data-focussed-orig-position"),t.style.backgroundColor=t.getAttribute("data-focussed-orig-background-color"),t.style.boxShadow=t.getAttribute("data-focussed-orig-box-shadow"),t.removeAttribute("data-focussed"),t.removeAttribute("data-focussed-orig-z-index"),t.removeAttribute("data-focussed-orig-position"),t.removeAttribute("data-focussed-orig-background-color"),t.removeAttribute("data-focussed-orig-box-shadow")}))}static remove(t){null!==t&&t.parentNode.removeChild(t)}static on(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;null===a?(a=r,r=document):r=document.querySelector(r),r.addEventListener(t,(t=>{var r=e.closest(t.target,n);r&&a(t,r)}),!1)}static url(){return window.location.protocol+"//"+window.location.host+window.location.pathname}static urlWithHash(){return window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.hash}static fullUrl(){return window.location.href}static urlWithArgs(){return window.location.href.split("#")[0]}static baseUrl(){return window.location.protocol+"//"+window.location.host}static urlProtocol(){return window.location.protocol+"//"}static urlHost(){return window.location.host}static urlHostTopLevel(){let t=window.location.host;if(t.match(/^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$/))return t;for(t=t.split(".");t.length>2;)t.shift();return t=t.join("."),t}static urlPath(){return window.location.pathname}static urlHash(){return window.location.hash}static urlArgs(){return window.location.search}static urlOfScript(){if(document.currentScript)return document.currentScript.src;{let t=document.getElementsByTagName("script");return t[t.length-1].src}}static pathOfScript(){let t=this.urlOfScript();return t.substring(0,t.lastIndexOf("/"))}static waitUntil(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return new Promise(((r,a)=>{let i=setInterval((()=>{null!==document.querySelector(t)&&(null===e||null===n&&void 0!==window.getComputedStyle(document.querySelector(t))[e]&&""!=window.getComputedStyle(document.querySelector(t))[e]||null!==n&&window.getComputedStyle(document.querySelector(t))[e]===n)&&(window.clearInterval(i),r())}),30)}))}static waitUntilVar(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=null,a=null;return null===e?(r=t,a=window):(r=e,a=t),new Promise(((t,e)=>{let i=setInterval((()=>{void 0!==a[r]&&null!==a[r]&&(null!==n&&a[r]!==n||(window.clearInterval(i),t()))}),30)}))}static ready(){return new Promise((t=>{if("loading"!==document.readyState)return t();document.addEventListener("DOMContentLoaded",(()=>t()))}))}static load(){return new Promise((t=>{if("complete"===document.readyState)return t();window.addEventListener("load",(()=>t()))}))}static runForEl(t,n){e.ready().then((()=>{let r=e.pushId();null!==document.querySelector(t)&&document.querySelectorAll(t).forEach((t=>{void 0===t.runForEl&&(t.runForEl=[]),t.runForEl.includes(r)||(t.runForEl.push(r),n(t))})),void 0===window.runForEl_queue&&(window.runForEl_queue=[]),void 0===window.runForEl_observer&&(window.runForEl_observer=new MutationObserver((t=>{t.forEach((t=>{if(t.addedNodes)for(let e=0;e<t.addedNodes.length;e++){let n=t.addedNodes[e];n.nodeType===Node.ELEMENT_NODE&&window.runForEl_queue.forEach((t=>{n.matches(t.selector)&&(void 0===n.runForEl&&(n.runForEl=[]),n.runForEl.includes(t.id)||(n.runForEl.push(t.id),t.callback(n))),null!==n.querySelector(t.selector)&&n.querySelectorAll(t.selector).forEach((e=>{void 0===e.runForEl&&(e.runForEl=[]),e.runForEl.includes(t.id)||(e.runForEl.push(t.id),t.callback(e))}))}))}}))})).observe(document.body,{attributes:!1,childList:!0,characterData:!1,subtree:!0,attributeOldValue:!1,characterDataOldValue:!1})),window.runForEl_queue.push({id:r,selector:t,callback:n})}))}static fmath(t,e,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:8,a={"*":e*n,"-":e-n,"+":e+n,"/":e/n}[t];return Math.round(10*a*Math.pow(10,r))/(10*Math.pow(10,r))}static trim(t,e){let n=[" ","\n","\r","\t","\f","\v"," "," "," "," "," "," "," "," "," "," "," "," ","​","\u2028","\u2029"," "].join(""),r=0,a=0;for(t+="",e&&(n=(e+"").replace(/([[\]().?/*{}+$^:])/g,"$1")),r=t.length,a=0;a<r;a++)if(-1===n.indexOf(t.charAt(a))){t=t.substring(a);break}for(r=t.length,a=r-1;a>=0;a--)if(-1===n.indexOf(t.charAt(a))){t=t.substring(0,a+1);break}return-1===n.indexOf(t.charAt(0))?t:""}static ltrim(t,e){e=e?(e+"").replace(/([[\]().?/*{}+$^:])/g,"$1"):" \\s ";const n=new RegExp("^["+e+"]+","g");return(t+"").replace(n,"")}static rtrim(t,e){e=e?(e+"").replace(/([[\]().?/*{}+$^:])/g,"\\$1"):" \\s ";const n=new RegExp("["+e+"]+$","g");return(t+"").replace(n,"")}static pushId(){let n=null;void 0!==window&&(void 0===window.pushIdDataGlobal&&(window.pushIdDataGlobal={}),n=window.pushIdDataGlobal),void 0!==t&&(void 0===t.pushIdDataGlobal&&(t.pushIdDataGlobal={}),n=t.pushIdDataGlobal),e.objectsAreEqual(n,{})&&(n.lastPushTime=0,n.lastRandChars=[],n.PUSH_CHARS="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");let r=(new Date).getTime(),a=r===n.lastPushTime;n.lastPushTime=r;let i=new Array(8);for(var o=7;o>=0;o--)i[o]=n.PUSH_CHARS.charAt(r%64),r=Math.floor(r/64);if(0!==r)throw new Error;let l=i.join("");if(a){for(o=11;o>=0&&63===n.lastRandChars[o];o--)n.lastRandChars[o]=0;n.lastRandChars[o]++}else for(o=0;o<12;o++)n.lastRandChars[o]=Math.floor(64*Math.random());for(o=0;o<12;o++)l+=n.PUSH_CHARS.charAt(n.lastRandChars[o]);if(20!=l.length)throw new Error;return l}static getProp(t,e){let n=e.split(".");for(;n.length&&(t=t[n.shift()]););return t}static base64toblob(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=atob(t),r=[];for(let t=0;t<n.length;t+=512){let e=n.slice(t,t+512),a=new Array(e.length);for(let t=0;t<e.length;t++)a[t]=e.charCodeAt(t);let i=new Uint8Array(a);r.push(i)}return new Blob(r,{type:e})}static blobtobase64(t){return new Promise((e=>{let n=new FileReader;n.onload=()=>{var t=n.result.split(",")[1];e(t)},n.readAsDataURL(t)}))}static stringtoblob(t){return new Blob([t],{type:arguments.length>1&&void 0!==arguments[1]?arguments[1]:""})}static blobtostring(t){return new Promise((e=>{let n=new FileReader;n.onload=()=>{e(n.result)},n.readAsText(t)}))}static filetobase64(t){return new Promise(((e,n)=>{const r=new FileReader;r.readAsDataURL(t),r.onload=()=>e(r.result.split(",")[1]),r.onerror=t=>n(t)}))}static blobtofile(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"file.txt",n=null;try{n=new File([t],e)}catch{n=new Blob([t],e)}return n}static filetoblob(t){return new Blob([t])}static base64tofile(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"file.txt";return this.blobtofile(this.base64toblob(t,e),n)}static blobtourl(t){return URL.createObjectURL(t,{type:"text/plain"})}static stringtourl(t){return this.blobtourl(this.stringtoblob(t))}static base64tostring(t){return atob(t)}static stringtobase64(t){return btoa(t)}static base64tourl(t){return this.blobtourl(this.base64toblob(t))}static filetourl(t){return this.blobtourl(this.filetoblob(t))}static getImageOrientation(t){return new Promise(((e,n)=>{t=t.replace("data:image/jpeg;base64,","");let r=this.base64tofile(t),a=new FileReader;a.onload=t=>{var n=new DataView(t.target.result);if(65496==n.getUint16(0,!1)){for(var r=n.byteLength,a=2;a<r;){if(n.getUint16(a+2,!1)<=8)return void e(-1);var i=n.getUint16(a,!1);if(a+=2,65505==i){if(1165519206!=n.getUint32(a+=2,!1))return void e(-1);var o=18761==n.getUint16(a+=6,!1);a+=n.getUint32(a+4,o);var l=n.getUint16(a,o);a+=2;for(var s=0;s<l;s++)if(274==n.getUint16(a+12*s,o))return void e(n.getUint16(a+12*s+8,o))}else{if(65280!=(65280&i))break;a+=n.getUint16(a,!1)}}e(-1)}else e(-2)},a.readAsArrayBuffer(r)}))}static resetImageOrientation(t,e){return new Promise(((n,r)=>{var a=new Image;a.onload=()=>{var t=a.width,r=a.height,i=document.createElement("canvas"),o=i.getContext("2d");switch(4<e&&e<9?(i.width=r,i.height=t):(i.width=t,i.height=r),e){case 2:o.transform(-1,0,0,1,t,0);break;case 3:o.transform(-1,0,0,-1,t,r);break;case 4:o.transform(1,0,0,-1,0,r);break;case 5:o.transform(0,1,1,0,0,0);break;case 6:o.transform(0,1,-1,0,r,0);break;case 7:o.transform(0,-1,-1,0,r,t);break;case 8:o.transform(0,-1,1,0,0,t)}o.drawImage(a,0,0);let l=i.toDataURL();l="data:image/jpeg;base64,"+l.split(",")[1],n(l)},a.src=t}))}static fixImageOrientation(t){return new Promise(((e,n)=>{-1!==t.indexOf("data:")?(0===t.indexOf("data:image/jpeg;base64,")&&(t=t.replace("data:image/jpeg;base64,","")),this.getImageOrientation(t).then((n=>{t="data:image/jpeg;base64,"+t,n<=1?e(t):this.resetImageOrientation(t,n).then((t=>{e(t)}))}))):e(t)}))}static debounce(t,e,n){var r;return function(){var a=this,i=arguments,o=n&&!r;clearTimeout(r),r=setTimeout((function(){r=null,n||t.apply(a,i)}),e),o&&t.apply(a,i)}}static throttle(t,e,n){var r,a,i,o=null,l=0;n||(n={});var s=function(){l=!1===n.leading?0:Date.now(),o=null,i=t.apply(r,a),o||(r=a=null)};return function(){var c=Date.now();l||!1!==n.leading||(l=c);var d=e-(c-l);return r=this,a=arguments,d<=0||d>e?(o&&(clearTimeout(o),o=null),l=c,i=t.apply(r,a),o||(r=a=null)):o||!1===n.trailing||(o=setTimeout(s,d)),i}}static shuffle(t){let e,n,r=t.length;for(;0!==r;)n=Math.floor(Math.random()*r),r-=1,e=t[r],t[r]=t[n],t[n]=e;return t}static findRecursiveInObject(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];if(null!==t&&"object"==typeof t)for(const[i,o]of Object.entries(t))if(null!==o&&"object"==typeof o)this.findRecursiveInObject(o,e,n,(""===r?"":r+".")+i,a);else if(!(null!==e&&i!==e||null!==n&&o!==n)){a.push(r);break}return a}}n.default=e,"undefined"!=typeof window&&(window.hlp={},Object.getOwnPropertyNames(e).forEach(((t,n)=>{"length"!==t&&"name"!==t&&"prototype"!==t&&"caller"!==t&&"arguments"!==t&&(window.hlp[t]=e[t])})))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]);
1
+ !function t(e,n,r){function a(o,l){if(!n[o]){if(!e[o]){var s="function"==typeof require&&require;if(!l&&s)return s(o,!0);if(i)return i(o,!0);var c=new Error("Cannot find module '"+o+"'");throw c.code="MODULE_NOT_FOUND",c}var d=n[o]={exports:{}};e[o][0].call(d.exports,(function(t){return a(e[o][1][t]||t)}),d,d.exports,t,e,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o<r.length;o++)a(r[o]);return a}({1:[function(t,e,n){"use strict";var r=t("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var a=r(t("hlp"));class i{init(){a.default.isMobile()?document.head.insertAdjacentHTML("beforeend",'<style class="lanimate-styles-restore">[data-lanimate] { opacity: 1; }</style>'):(a.default.ready().then((()=>{this.ready()})),a.default.load().then((()=>{this.load()})))}ready(){this.addBasicStyles()}load(){this.addExtendedStyles(),a.default.runForEl("[data-lanimate]",(t=>{if(null===t.parentNode.closest("[data-lanimate]"))if(t.hasAttribute("data-lanimate-split")&&"none"!==t.getAttribute("data-lanimate-split")){t.setAttribute("data-aria-label",t.innerText.replace(/(?:\r\n|\r|\n)/g," ")),t.innerHTML=t.innerHTML.trim().replace(/ {2,}/g,"").split(" ").join("&nbsp;");let e=0;"char"===t.getAttribute("data-lanimate-split")&&(this.traverseAllTextNodes(t,(t=>"%span data-word data-word-nowrap%"+t.split(" ").map((t=>"%span data-char%"+t.split("").join("%/span%%span data-char%")+"%/span%")).join("%/span% %span data-word data-word-nowrap%")+"%/span%")),t.innerHTML=t.innerHTML.split("%span data-word data-word-nowrap%").join("<span data-word data-word-nowrap>").split("%span data-char%").join("<span data-char>").split("%/span%").join("</span>"),e=50),"word"===t.getAttribute("data-lanimate-split")&&(this.traverseAllTextNodes(t,(t=>"%span data-word%"+t.split(" ").join("%/span% %span data-word%")+"%/span%")),t.innerHTML=t.innerHTML.split("%span data-word%").join("<span data-word>").split("%/span%").join("</span>"),e=250),t.hasAttribute("data-lanimate-speed")&&(e=e*parseInt(t.getAttribute("data-lanimate-speed"))/1e3);let n=0;t.querySelectorAll("span").forEach((r=>{if(""==r.innerText.trim())return;if(null!==r.querySelector("[data-char]"))return;let a=0;t.hasAttribute("data-lanimate-delay")&&(a=parseInt(t.getAttribute("data-lanimate-delay"))),t.hasAttribute("data-lanimate-speed")&&r.setAttribute("data-lanimate-speed",t.getAttribute("data-lanimate-speed")),r.setAttribute("data-lanimate-delay",a+e*n),r.setAttribute("data-lanimate",t.getAttribute("data-lanimate")),n++,this.prepareAndBindStart(r)})),t.removeAttribute("data-lanimate"),t.removeAttribute("data-lanimate-delay"),t.removeAttribute("data-lanimate-speed")}else this.prepareAndBindStart(t)}))}prepareAndBindStart(t){if(t.hasAttribute("data-lanimate-speed")){let e=parseInt(t.getAttribute("data-lanimate-speed"))/1e3;setTimeout((()=>{t.style.transitionDuration=e+"s, "+e+"s"}),10)}this.start(t),window.addEventListener("scroll",(()=>{this.start(t)})),setInterval((()=>{this.start(t)}),500)}start(t){if(!0!==t.lanimateIsStarted&&this.scrollTop()+window.innerHeight>=this.offsetTop(t)){t.lanimateIsStarted=!0;let e=0;t.hasAttribute("data-lanimate-delay")&&(e=parseInt(t.getAttribute("data-lanimate-delay"))),setTimeout((()=>{t.setAttribute("data-lanimate-started","true")}),e)}}scrollTop(){let t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)}offsetTop(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop}addBasicStyles(){null===document.head.querySelector(".lanimate-styles-basic")&&document.head.insertAdjacentHTML("beforeend",'\n <style class="lanimate-styles-basic">\n [data-lanimate] {\n opacity: 0;\n }\n </style>\n ')}addExtendedStyles(){null===document.head.querySelector(".lanimate-styles-extended")&&document.head.insertAdjacentHTML("beforeend","\n <style class=\"lanimate-styles-extended\">\n [data-lanimate='fade'] {\n }\n [data-lanimate='scrollX'] {\n transform: translateX(50px);\n }\n [data-lanimate='scrollY'] {\n transform: translateY(50px);\n }\n [data-lanimate='scale'] {\n transform: scale(1.1) translateY(50px);\n }\n [data-lanimate='rotate'] {\n transform: rotate(15deg) translateY(50px);\n transform-origin: 0 0;\n }\n [data-lanimate='rotate3d'] {\n transform: rotateX(80deg) rotateY(45deg);\n transform-style: preserve-3d;\n }\n [data-lanimate='skew'] {\n transform: skew(70deg, 10deg);\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] [data-lanimate] {\n display:inline-block;\n }\n [data-lanimate-split] [data-word-nowrap] {\n white-space:nowrap;\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: translateY(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) translateY(0px);\n }\n [data-lanimate='rotate3d'][data-lanimate-started] {\n transform: rotateX(0deg) rotateY(0deg);\n }\n [data-lanimate='skew'][data-lanimate-started] {\n transform: skew(0deg, 0deg);\n }\n @media print {\n [data-lanimate] { opacity: 1 !important; }\n [data-lanimate='scrollX'],\n [data-lanimate='scrollY'],\n [data-lanimate='scale'],\n [data-lanimate='rotate'],\n [data-lanimate='rotate3d'],\n [data-lanimate='skew'] { transform: none !important; }\n } \n </style>\n ")}traverseAllTextNodes(t,e){t.childNodes.length>0&&t.childNodes.forEach((t=>{3===t.nodeType?t.textContent=e(t.textContent):this.traverseAllTextNodes(t,e)}))}}n.default=i,window.Lanimate=i},{"@babel/runtime/helpers/interopRequireDefault":2,hlp:3}],2:[function(t,e,n){e.exports=function(t){return t&&t.__esModule?t:{default:t}},e.exports.__esModule=!0,e.exports.default=e.exports},{}],3:[function(t,e,n){(function(t){(function(){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;class e{static x(t){if("function"==typeof t)try{return t=t(),this.x(t)}catch(t){return!1}return!(null===t||!1===t||"string"==typeof t&&""==t.trim()||"object"==typeof t&&0===Object.keys(t).length&&t.constructor===Object||void 0===t||Array.isArray(t)&&0===t.length||Array.isArray(t)&&1===t.length&&""===t[0])}static nx(t){return!this.x(t)}static true(t){if("function"==typeof t)try{return t=t(),this.true(t)}catch(t){return!1}return void 0!==t&&(null!==t&&(!1!==t&&((!Array.isArray(t)||0!==t.length)&&((!Array.isArray(t)||""!==e.first(t))&&(("object"!=typeof t||0!==Object.keys(t).length||t.constructor!==Object)&&(0!==t&&("0"!==t&&(""!==t&&(" "!==t&&("null"!==t&&"false"!==t))))))))))}static false(t){if("function"==typeof t)try{return t=t(),this.false(t)}catch(t){return!1}return void 0!==t&&(null!==t&&(!1===t||(!Array.isArray(t)||0!==t.length)&&((!Array.isArray(t)||""!==e.first(t))&&(("object"!=typeof t||0!==Object.keys(t).length||t.constructor!==Object)&&(0===t||("0"===t||""!==t&&(" "!==t&&("null"!==t&&"false"===t))))))))}static v(){if(this.nx(arguments))return"";for(let t=0;t<arguments.length;t++)if(this.x(arguments[t]))return arguments[t];return""}static loop(t,e){if(this.nx(t))return null;Array.isArray(t)?t.forEach(((t,n)=>{e(t,n)})):"object"==typeof t&&Object.entries(t).forEach((t=>{let[n,r]=t;e(r,n)}))}static map(t,e,n){return Object.keys(t).reduce(((r,a)=>(r[a]=e.call(n||null,a,t[a]),r)),{})}static first(t){if(Array.isArray(t)){var e=null;return t.forEach(((t,n)=>{null===e&&(e=t)})),e}if("object"==typeof t){e=null;return Object.entries(t).forEach((t=>{let[n,r]=t;null===e&&(e=r)})),e}return null}static last(t){if(Array.isArray(t)){let e=null;return t.forEach(((t,n)=>{e=t})),e}if("object"==typeof t){let e=null;return Object.entries(t).forEach((t=>{let[n,r]=t;e=r})),e}return null}static rand(t){return Array.isArray(t)?t[Math.floor(Math.random()*t.length)]:"object"==typeof t?(t=Object.values(t))[Math.floor(Math.random()*t.length)]:null}static random_string(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:8,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;null===e&&(e="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");let n=e.length,r="";for(let a=0;a<t;a++)r+=e[0+~~(Math.random()*(n-1-0+1))];return r}static round(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return Number(Math.round(t+"e"+e)+"e-"+e)}static isInteger(t){return!isNaN(t)&&parseInt(Number(t))==t&&!isNaN(parseInt(t,10))}static random_int(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:99999;return!(!this.isInteger(t)||!this.isInteger(e))&&(t>e&&([t,e]=[e,t]),~~(Math.random()*(e-t+1))+t)}static capitalize(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;return null===t||""===t?t:t.charAt(0).toUpperCase()+t.slice(1)}static cookieExists(t){return void 0!==document.cookie&&null!==this.cookieGet(t)}static cookieGet(t){var e=document.cookie.match(new RegExp(t+"=([^;]+)"));return e?decodeURIComponent(e[1]):null}static cookieSet(t,e,n){let r=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],a="";window.location.protocol.indexOf("https")>-1&&(a="; SameSite=None; Secure"),document.cookie=t+"="+encodeURIComponent(e)+"; expires="+new Date((new Date).getTime()+24*n*60*60*1e3).toUTCString()+"; path=/"+a+"; domain="+(!0===r?this.urlHostTopLevel():"")}static cookieDelete(t){let e=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],n="";window.location.protocol.indexOf("https")>-1&&(n="; SameSite=None; Secure"),document.cookie=t+"=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/"+n+"; domain="+(!0===e?this.urlHostTopLevel():"")}static localStorageSet(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;n*=864e5;let r={value:e,expiry:(new Date).getTime()+n};localStorage.setItem(t,JSON.stringify(r))}static localStorageGet(t){let e=localStorage.getItem(t);if(!e)return null;let n=JSON.parse(e);return(new Date).getTime()>n.expiry?(localStorage.removeItem(t),null):n.value}static localStorageDelete(t){localStorage.removeItem(t)}static localStorageExists(t){return null!==this.localStorageGet(t)}static getParam(t){let e=window.location.search;if(this.nx(e))return null;let n=e.substring(1).split("&");for(var r=0;r<n.length;r++){var a=n[r].split("=");if(a[0]==t&&this.x(a[1]))return a[1]}return null}static getDevice(){return this.isPhone()?"phone":this.isTablet()?"tablet":"desktop"}static isPhone(){let t=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}static isTablet(){let t=navigator.userAgent||navigator.vendor||window.opera;return/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(t)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(t.substr(0,4))}static isDesktop(){return!this.isPhone()&&!this.isTablet()}static isMobile(){return!!(window.innerWidth<750||this.isPhone())}static isTouch(){return"ontouchstart"in window||navigator.maxTouchPoints||!1}static isMac(){return"mac"===e.getOs()}static isLinux(){return"linux"===e.getOs()}static isWindows(){return"windows"===e.getOs()}static getOs(){let t=window.navigator.userAgent,e=window.navigator.platform,n="unknown";return-1!==["Macintosh","MacIntel","MacPPC","Mac68K"].indexOf(e)||-1!==["iPhone","iPad","iPod"].indexOf(e)?n="mac":-1!==["Win32","Win64","Windows","WinCE"].indexOf(e)?n="windows":(/Android/.test(t)||/Linux/.test(e))&&(n="linux"),n}static getBrowser(){let t="",e=!!!document.documentMode&&!!window.StyleMedia;return t=-1!=navigator.userAgent.indexOf("Opera")||-1!=navigator.userAgent.indexOf("OPR")?"opera":-1==navigator.userAgent.indexOf("Chrome")||e?-1==navigator.userAgent.indexOf("Safari")||e?-1!=navigator.userAgent.indexOf("Firefox")?"firefox":-1!=navigator.userAgent.indexOf("MSIE")||1==!!document.documentMode?"ie":e?"edge":"unknown":"safari":"chrome",t}static isObject(t){return!!t&&t.constructor===Object}static isArray(t){return!!t&&t.constructor===Array}static isString(t){return"string"==typeof t||t instanceof String}static isDate(t){if(this.nx(t))return!1;if("[object Date]"===Object.prototype.toString.call(t))return!0;if(!this.isString(t))return!1;if(3!==t.split("-").length)return!1;let e=parseInt(t.split("-")[2]),n=parseInt(t.split("-")[1]),r=parseInt(t.split("-")[0]),a=new Date;return a.setFullYear(r,n-1,e),a.getFullYear()==r&&a.getMonth()+1==n&&a.getDate()==e}static formatDate(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;!1===e||!0===e||null===e||""===e?e=new Date:"object"!=typeof e&&(e=new Date(e.replace(/-/g,"/")));let n="",r=e.getMonth(),a=r+1,i=e.getDay(),o=e.getDate(),l=e.getFullYear(),s=e.getHours(),c=e.getMinutes(),d=e.getSeconds();for(let u=0,h=t.length;u<h;u++)switch(t[u]){case"j":n+=o;break;case"d":n+=o<10?"0"+o:o;break;case"l":let h=Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");n+=h[i];break;case"w":n+=i;break;case"D":h=Array("Sun","Mon","Tue","Wed","Thr","Fri","Sat"),n+=h[i];break;case"m":n+=a<10?"0"+a:a;break;case"n":n+=a;break;case"F":let m=Array("January","February","March","April","May","June","July","August","September","October","November","December");n+=m[r];break;case"M":m=Array("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"),n+=m[r];break;case"Y":n+=l;break;case"y":n+=l.toString().slice(-2);break;case"H":n+=s<10?"0"+s:s;break;case"g":let p=0===s?12:s;n+=p>12?p-12:p;break;case"h":p=0===s?12:s,p=p>12?p-12:p,n+=p<10?"0"+p:p;break;case"a":n+=s<12?"am":"pm";break;case"i":n+=c<10?"0"+c:c;break;case"s":n+=d<10?"0"+d:d;break;case"c":n+=e.toISOString();break;default:n+=t[u]}return n}static deepCopy(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if(Object(t)!==t)return t;if(n.has(t))return n.get(t);const r=t instanceof Date?new Date(t):t instanceof RegExp?new RegExp(t.source,t.flags):t.constructor?new t.constructor:Object.create(null);return n.set(t,r),t instanceof Map&&Array.from(t,(t=>{let[a,i]=t;return r.set(a,e.deepCopy(i,n))})),Object.assign(r,...Object.keys(t).map((r=>({[r]:e.deepCopy(t[r],n)}))))}static jsonStringToObject(t){if(this.nx(t)||!this.isString(t))return null;try{return JSON.parse(t)}catch(t){return null}}static isJsonString(t){if(this.nx(t)||!this.isString(t))return!1;try{JSON.parse(t);return!0}catch(t){return!1}}static jsonObjectToString(t){try{return JSON.stringify(t)}catch(t){return null}}static uuid(){function t(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)}return t()+t()+"-"+t()+"-"+t()+"-"+t()+"-"+t()+t()+t()}static guid(){return this.uuid()}static replaceAll(t,e,n){return t.split(e).join(n)}static replaceLast(t,e,n){let r=t.lastIndexOf(e);return t=t.slice(0,r)+t.slice(r).replace(e,n)}static replaceFirst(t,e,n){return t.replace(e,n)}static findAllPositions(t,e){let n,r=t.length,a=0,i=[];if(0==r)return[];for(;(n=e.indexOf(t,a))>-1;)i.push(n),a=n+r;return i}static findAllPositionsCaseInsensitive(t,e){let n,r=t.length,a=0,i=[];if(0==r)return[];for(;(n=this.indexOfCaseInsensitive(t,e,a))>-1;)i.push(n),a=n+r;return i}static countAllOccurences(t,e){let n=new RegExp(t,"g");return(e.match(n)||[]).length}static countAllOccurencesCaseInsensitive(t,e){let n=new RegExp(t,"gi");return(e.match(n)||[]).length}static indexOfCaseInsensitive(t,e,n){return e.toLowerCase().indexOf(t.toLowerCase(),n)}static highlight(t,e){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:500;if(this.nx(t)||this.nx(e))return t;if(!0===n){let n="...",a=this.findAllPositionsCaseInsensitive(e,t),i=t.split(" "),o=0;for(i.forEach(((t,l)=>{let s=!0;a.forEach((t=>{o>=t-r&&o<=t+e.length+r-1&&(s=!1)})),!0===s&&(i[l]=n),o+=t.length+1})),t=i.join(" ");t.indexOf(n+" "+n)>-1;)t=this.replaceAll(t,n+" "+n,n);t=t.trim()}let a=this.findAllPositionsCaseInsensitive(e,t),i='<strong class="highlight">',o="</strong>";for(let n=0;n<a.length;n++){t=t.substring(0,a[n])+i+t.substring(a[n],a[n]+e.length)+o+t.substring(a[n]+e.length);for(let t=n+1;t<a.length;t++)a[t]=a[t]+26+9}return t}static get(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return this.call("GET",t,e)}static post(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return this.call("POST",t,e)}static call(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return null===r&&(r={}),"data"in r||(r.data={}),"headers"in r||(r.headers=null),"throttle"in r||(r.throttle=0),"allow_errors"in r||(r.allow_errors=!0),new Promise(((a,i)=>{setTimeout((()=>{0!==n.indexOf("http")&&(n=e.baseUrl()+"/"+n);let o=new XMLHttpRequest;o.open(t,n,!0),"POST"===t&&(!("data"in r)||null===r.data||"object"!=typeof r.data||r.data instanceof FormData||(o.setRequestHeader("Content-Type","application/json;charset=UTF-8"),r.data=JSON.stringify(r.data)),o.setRequestHeader("X-Requested-With","XMLHttpRequest")),this.x(r.headers)&&Object.entries(r.headers).forEach((t=>{let[e,n]=t;o.setRequestHeader(e,n)})),o.onload=()=>{(4!=o.readyState||!0!==r.allow_errors&&200!=o.status&&304!=o.status)&&(this.isJsonString(o.responseText)?i(this.jsonStringToObject(o.responseText)):i(o.responseText)),this.isJsonString(o.responseText)?a(this.jsonStringToObject(o.responseText)):a(o.responseText)},o.onerror=()=>{i([o.readyState,o.status,o.statusText])},"GET"===t&&o.send(null),"POST"===t&&o.send(r.data)}),r.throttle)}))}static onResizeHorizontal(t){let e,n,r=window.innerWidth;window.addEventListener("resize",(()=>{e=window.innerWidth,e!=r&&(r=e,n&&clearTimeout(n),n=window.setTimeout((()=>{t()}),50))})),t()}static onResizeVertical(t){var e,n,r=window.innerHeight;window.addEventListener("resize",(()=>{(e=window.innerHeight)!=r&&(r=e,n&&clearTimeout(n),n=window.setTimeout((()=>{t()}),50))})),t()}static removeEmpty(t){return this.nx(t)||!Array.isArray(t)?t:t=t.filter((t=>this.x(t)))}static uniqueArray(t){let e={},n=[];for(let r=0;r<t.length;r++)t[r]in e||(n.push(t[r]),e[t[r]]=!0);return n}static powerset(t){return Array.isArray(t)?t.reduce(((t,e)=>t.concat(t.map((t=>[...t,e])))),[[]]):t}static charToInt(t){let e,n,r="ABCDEFGHIJKLMNOPQRSTUVWXYZ",a=0;for(e=0,n=(t=t.toUpperCase()).length-1;e<t.length;e+=1,n-=1)a+=Math.pow(26,n)*(r.indexOf(t[e])+1);return a}static intToChar(t){for(var e="",n=1,r=26;(t-=n)>=0;n=r,r*=26)e=String.fromCharCode(parseInt(t%r/n)+65)+e;return e}static slugify(t){return t.toString().toLowerCase().trim().split("ä").join("ae").split("ö").join("oe").split("ü").join("ue").split("ß").join("ss").replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}static incChar(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return this.intToChar(this.charToInt(t)+e)}static decChar(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1;return this.intToChar(this.charToInt(t)-e)}static range(t,e){let n=[],r=typeof t,a=typeof e,i=1;if("undefined"==r||"undefined"==a||r!=a)return null;if(e<t&&(i=-i),"number"==r)for(;i>0?e>=t:e<=t;)n.push(t),t+=i;else{if("string"!=r)return null;if(1!=t.length||1!=e.length)return null;for(t=t.charCodeAt(0),e=e.charCodeAt(0);i>0?e>=t:e<=t;)n.push(String.fromCharCode(t)),t+=i}return n}static dateToWeek(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;null===t&&(t=new Date),t=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate())),t.setUTCDate(t.getUTCDate()+4-(t.getUTCDay()||7));let e=new Date(Date.UTC(t.getUTCFullYear(),0,1));return Math.ceil(((t-e)/864e5+1)/7)}static weekToDate(t,e){null==e&&(e=(new Date).getFullYear());let n=new Date;n.setYear(e),n.setDate(1),n.setMonth(0),n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0);let r=n.getDay();r=0===r?7:r;let a=1-r;7-r+1<4&&(a+=7),n=new Date(n.getTime()+24*a*60*60*1e3);let i=6048e5*(t-1),o=n.getTime()+i;return n.setTime(o),n.setHours(0),n.setMinutes(0),n.setSeconds(0),n.setMilliseconds(0),n}static addDays(t,e){var n=new Date(t);return n.setDate(n.getDate()+e),n}static objectsAreEqual(t,e){var n=this;if(null==t||null==e)return t===e;if(t.constructor!==e.constructor)return!1;if(t instanceof Function)return t===e;if(t instanceof RegExp)return t===e;if(t===e||t.valueOf()===e.valueOf())return!0;if(Array.isArray(t)&&t.length!==e.length)return!1;if(t instanceof Date)return!1;if(!(t instanceof Object))return!1;if(!(e instanceof Object))return!1;var r=Object.keys(t);return Object.keys(e).every((function(t){return-1!==r.indexOf(t)}))&&r.every((function(r){return n.objectsAreEqual(t[r],e[r])}))}static containsObject(t,e){var n;for(n in e)if(e.hasOwnProperty(n)&&this.objectsAreEqual(e[n],t))return!0;return!1}static fadeOut(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;return e<=25&&(e=25),new Promise((n=>{t.style.opacity=1,function r(){(t.style.opacity-=25/e)<0?(t.style.display="none",n()):requestAnimationFrame(r)}()}))}static fadeIn(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3;return e<=25&&(e=25),new Promise((n=>{t.style.opacity=0,t.style.display="block",function r(){var a=parseFloat(t.style.opacity);(a+=25/e)>1?n():(t.style.opacity=a,requestAnimationFrame(r))}()}))}static scrollTop(){let t=document.documentElement;return(window.pageYOffset||t.scrollTop)-(t.clientTop||0)}static scrollLeft(){let t=document.documentElement;return(window.pageXOffset||t.scrollLeft)-(t.clientLeft||0)}static closestScrollable(t){let e=t instanceof HTMLElement&&window.getComputedStyle(t).overflowY,n=e&&!(e.includes("hidden")||e.includes("visible"));return t?n&&t.scrollHeight>=t.clientHeight?t:this.closestScrollable(t.parentNode)||document.scrollingElement||document.body:null}static offsetTop(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop}static offsetLeft(t){return t.getBoundingClientRect().left+window.pageXOffset-document.documentElement.clientLeft}static offsetRight(t){return t.getBoundingClientRect().left+window.pageXOffset-document.documentElement.clientLeft+t.offsetWidth}static offsetBottom(t){return t.getBoundingClientRect().top+window.pageYOffset-document.documentElement.clientTop+t.offsetHeight}static offsetTopWithMargin(t){return this.offsetTop(t)-parseInt(getComputedStyle(t).marginTop)}static offsetLeftWithMargin(t){return this.offsetLeft(t)-parseInt(getComputedStyle(t).marginLeft)}static offsetRightWithMargin(t){return this.offsetRight(t)+parseInt(getComputedStyle(t).marginRight)}static offsetBottomWithMargin(t){return this.offsetBottom(t)+parseInt(getComputedStyle(t).marginBottom)}static documentHeight(){return Math.max(document.body.offsetHeight,document.body.scrollHeight,document.documentElement.clientHeight,document.documentElement.offsetHeight,document.documentElement.scrollHeight)}static documentWidth(){return document.documentElement.clientWidth||document.body.clientWidth}static windowWidth(){return window.innerWidth}static windowHeight(){return window.innerHeight}static windowWidthWithoutScrollbar(){return document.documentElement.clientWidth||document.body.clientWidth}static windowHeightWithoutScrollbar(){return document.documentElement.clientHeight||document.body.clientHeight}static outerWidthWithMargin(t){return t.offsetWidth+parseInt(getComputedStyle(t).marginLeft)+parseInt(getComputedStyle(t).marginRight)}static outerHeightWithMargin(t){return t.offsetHeight+parseInt(getComputedStyle(t).marginTop)+parseInt(getComputedStyle(t).marginBottom)}static scrollTo(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];return new Promise((o=>{null===r&&(r=document.scrollingElement||document.documentElement),e.isNumeric(t)||(t=r===(document.scrollingElement||documentElement)?this.offsetTopWithMargin(t):t.getBoundingClientRect().top-parseInt(getComputedStyle(t).marginTop)-(r.getBoundingClientRect().top-r.scrollTop-parseInt(getComputedStyle(r).marginTop)));let l=0;Array.isArray(a)||(a=[a]),a.forEach((t=>{e.isNumeric(t)?l+=t:null!==t&&"fixed"===window.getComputedStyle(t).position&&(l+=-1*t.offsetHeight)})),t+=l;const s=r.scrollTop,c=t-s,d=+new Date,u=function(){const e=+new Date-d;var a,i,l;r.scrollTop=parseInt((a=e,i=s,l=c,(a/=n/2)<1?-l/2*(Math.sqrt(1-a*a)-1)+i:(a-=2,l/2*(Math.sqrt(1-a*a)+1)+i))),e<n?requestAnimationFrame(u):(r.scrollTop=t,o())};!0===i&&c>0?o():u()}))}static loadJs(t){e.isArray(t)||(t=[t]);let n=[];return e.loop(t,((t,e)=>{n.push(new Promise(((e,n)=>{let r=document.createElement("script");r.src=t,r.onload=()=>{e()},document.head.appendChild(r)})))})),Promise.all(n)}static async loadJsSequentially(t){e.isArray(t)||(t=[t]);for(let n of t)await e.loadJs(n)}static triggerAfterAllImagesLoaded(t,e,n){window.addEventListener("load",(r=>{null!==document.querySelector(t+" "+e)&&document.querySelectorAll(t+" "+e).forEach((r=>{this.triggerAfterAllImagesLoadedBindLoadEvent(r,t,e,n)}))})),document.addEventListener("DOMContentLoaded",(()=>{null!==document.querySelector(t)&&new MutationObserver((r=>{r.forEach((r=>{"childList"===r.type&&r.addedNodes.length>0?r.addedNodes.forEach((r=>{this.triggerAfterAllImagesLoadedHandleEl(r,t,e,n)})):"attributes"===r.type&&"src"===r.attributeName&&r.target.classList.contains(e.replace(".",""))&&r.oldValue!==r.target.getAttribute("src")&&this.triggerAfterAllImagesLoadedHandleEl(r.target,t,e,n)}))})).observe(document.querySelector(t),{attributes:!0,childList:!0,characterData:!1,subtree:!0,attributeOldValue:!0,characterDataOldValue:!1})}))}static triggerAfterAllImagesLoadedHandleEl(t,e,n,r){t.nodeType===Node.ELEMENT_NODE&&(t.classList.remove("loaded-img"),t.closest(e).classList.remove("loaded-all"),t.classList.contains("binded-trigger")||(t.classList.add("binded-trigger"),t.addEventListener("load",(()=>{this.triggerAfterAllImagesLoadedBindLoadEvent(t,e,n,r)}))))}static triggerAfterAllImagesLoadedBindLoadEvent(t,e,n,r){t.classList.add("loaded-img"),t.closest(e).querySelectorAll(".loaded-img").length===t.closest(e).querySelectorAll(n).length&&(t.closest(e).classList.add("loaded-all"),r())}static isVisible(t){return!!(t.offsetWidth||t.offsetHeight||t.getClientRects().length)}static isVisibleInViewport(t){if(!this.isVisible(t))return!1;let e=t.getBoundingClientRect();return!(e.bottom<0||e.right<0||e.left>window.innerWidth||e.top>window.innerHeight)}static textareaAutoHeight(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"textarea";this.textareaSetHeights(t),this.onResizeHorizontal((()=>{this.textareaSetHeights(t)})),[].forEach.call(document.querySelectorAll(t),(t=>{t.addEventListener("keyup",(t=>{this.textareaSetHeight(t.target)}))}))}static textareaSetHeights(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"textarea";[].forEach.call(document.querySelectorAll(t),(t=>{this.isVisible(t)&&this.textareaSetHeight(t)}))}static textareaSetHeight(t){t.style.height="5px",t.style.height=t.scrollHeight+"px"}static real100vh(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100;if(null===t){let t=()=>{let t=.01*window.innerHeight;document.documentElement.style.setProperty("--vh","".concat(t,"px"))};t(),window.addEventListener("resize",(()=>{t()}))}else{let n=()=>{console.log(t),null!==document.querySelector(t)&&document.querySelectorAll(t).forEach((t=>{t.style.height=window.innerHeight*(e/100)+"px"}))};n(),window.addEventListener("resize",(()=>{n()}))}}static iOsRemoveHover(){"safari"===e.getBrowser()&&"desktop"!==e.getDevice()&&e.on("touchend","a",((t,e)=>{e.click()}))}static isNumeric(t){return!isNaN(parseFloat(t))&&isFinite(t)}static animate(t,n,r,a,i){return new Promise((o=>{i<=50&&(i=50);let l=[];n.split(";").forEach((t=>{l.push(t.split(":")[0].trim())}));let s=[];l.forEach((t=>{s.push(t+" "+Math.round(i/1e3*10)/10+"s "+a)})),s="transition: "+s.join(", ")+" !important;";let c=null;NodeList.prototype.isPrototypeOf(t)?c=Array.from(t):null===t?(console.log("cannot animate element from "+n+" to "+r+" because it does not exist"),o()):c=[t];let d=c.length;c.forEach(((t,a)=>{let c=e.random_string(10,"abcdefghijklmnopqrstuvwxyz");t.classList.add(c),window.requestAnimationFrame((()=>{let a=[],u=t.getAttribute("style");null!==u&&u.split(";").forEach((t=>{l.includes(t.split(":")[0].trim())||a.push(t)})),a=a.join(";")+n+";",t.setAttribute("style",a),window.requestAnimationFrame((()=>{let a=document.createElement("style");a.innerHTML="."+c+" { "+s+" }",document.head.appendChild(a),window.requestAnimationFrame((()=>{if(t.setAttribute("style",t.getAttribute("style").replace(n+";","")+r+";"),this.isVisible(t)){let n=!1;e.addEventListenerOnce(t,"transitionend",(e=>{if(n=!0,e.target!==e.currentTarget)return!1;document.head.removeChild(a),t.classList.remove(c),d--,d<=0&&window.requestAnimationFrame((()=>{o()}))})),setTimeout((()=>{!1===n&&(document.head.removeChild(a),t.classList.remove(c),d--,d<=0&&o())}),1.5*i)}else document.head.removeChild(a),t.classList.remove(c),d--,d<=0&&o()}))}))}))}))}))}static addEventListenerOnce(t,e,n,r,a){t.addEventListener(e,(function i(o){!1!==n.apply(this,arguments,r)&&t.removeEventListener(e,i,a)}))}static htmlDecode(t){let e=document.createElement("textarea");return e.innerHTML=t,e.value}static htmlEncode(t){return t.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/`/g,"&#96;")}static nl2br(t){if(null==t)return"";return(t+"").replace(/([^>\r\n]?)(\r\n|\n\r|\r|\n)/g,"$1<br/>")}static br2nl(t){if(null==t)return"";return t.replace(/<\s*\/?br\s*[\/]?>/gi,"\n")}static closest(t,e){if(!document.documentElement.contains(t))return null;do{if(this.matches(t,e))return t;t=t.parentElement||t.parentNode}while(null!==t&&1===t.nodeType);return null}static matches(t,e){let n=t,r=(n.parentNode||n.document).querySelectorAll(e),a=-1;for(;r[++a]&&r[a]!=n;);return!!r[a]}static wrap(t,e){if(null===t)return;let n=(new DOMParser).parseFromString(e,"text/html").body.childNodes[0];t.parentNode.insertBefore(n,t.nextSibling),n.appendChild(t)}static wrapTextNodes(t,e){null!==t&&Array.from(t.childNodes).filter((t=>3===t.nodeType&&t.textContent.trim().length>1)).forEach((t=>{const n=document.createElement(e);t.after(n),n.appendChild(t)}))}static html2dom(t){let e=document.createElement("template");return t=t.trim(),e.innerHTML=t,void 0===e.content?this.html2domLegacy(t):e.content.firstChild}static html2domLegacy(t){var e,n,r,a={option:[1,"<select multiple='multiple'>","</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]},i=document,o=i.createDocumentFragment();if(/<|&#?\w+;/.test(t)){for(e=o.appendChild(i.createElement("div")),n=a[(/<([\w:]+)/.exec(t)||["",""])[1].toLowerCase()]||a._default,e.innerHTML=n[1]+t.replace(/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,"<$1></$2>")+n[2],r=n[0];r--;)e=e.lastChild;for(o.removeChild(o.firstChild);e.firstChild;)o.appendChild(e.firstChild)}else o.appendChild(i.createTextNode(t));return o.querySelector("*")}static prev(t,e){let n=t.previousElementSibling;return null===n?null:void 0===e||this.matches(n,e)?n:null}static next(t,e){let n=t.nextElementSibling;return null===n?null:void 0===e||this.matches(n,e)?n:null}static prevAll(t,e){let n=[];for(;t=t.previousElementSibling;)(void 0===e||this.matches(t,e))&&n.push(t);return n}static nextAll(t,e){let n=[];for(;t=t.nextElementSibling;)(void 0===e||this.matches(t,e))&&n.push(t);return n}static prevUntil(t,e){let n=[];for(;(t=t.previousElementSibling)&&!this.matches(t,e);)n.push(t);return n}static nextUntil(t,e){let n=[];for(;(t=t.nextElementSibling)&&!this.matches(t,e);)n.push(t);return n}static siblings(t,e){let n=[],r=t;for(t=t.parentNode.firstChild;t=t.nextElementSibling;)(void 0===e||this.matches(t,e))&&r!==t&&n.push(t);return n}static parents(t,e){let n=[],r=void 0!==e;for(;null!==(t=t.parentElement);)t.nodeType===Node.ELEMENT_NODE&&(r&&!this.matches(t,e)||n.push(t));return n}static css(t){let e=document.styleSheets,n={};for(let r in e)try{let a=e[r].rules||e[r].cssRules;for(let e in a)this.matches(t,a[e].selectorText)&&(n=Object.assign(n,this.css2json(a[e].style),this.css2json(t.getAttribute("style"))))}catch(t){}return n}static css2json(t){let e={};if(!t)return e;if(t instanceof CSSStyleDeclaration)for(let n in t)t[n].toLowerCase&&void 0!==t[t[n]]&&(e[t[n].toLowerCase()]=t[t[n]]);else if("string"==typeof t){t=t.split(";");for(let n in t)if(t[n].indexOf(":")>-1){let r=t[n].split(":");e[r[0].toLowerCase().trim()]=r[1].trim()}}return e}static compareDates(t,e){return"string"==typeof t&&(t=t.split(" ").join("T")),"string"==typeof e&&(e=e.split(" ").join("T")),t=new Date(t),e=new Date(e),t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),e.setHours(0),e.setMinutes(0),e.setSeconds(0),e.setMilliseconds(0),t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate()?0:t<e?-1:1}static spaceship(t,e){return null===t||null===e||typeof t!=typeof e?null:"string"==typeof t?t.localeCompare(e):t>e?1:t<e?-1:0}static focus(t){e.unfocus();let n=null;if(n="string"==typeof t||t instanceof String?document.querySelector(t):t,null!==n){let t=document.createElement("div");t.classList.add("hlp-focus-mask"),t.style.position="fixed",t.style.top=0,t.style.bottom=0,t.style.left=0,t.style.right=0,t.style.backgroundColor="rgba(0,0,0,0.8)",t.style.zIndex=2147483646,n.before(t),n.setAttribute("data-focussed",1),n.setAttribute("data-focussed-orig-z-index",n.style.zIndex),n.setAttribute("data-focussed-orig-position",n.style.position),n.setAttribute("data-focussed-orig-background-color",n.style.backgroundColor),n.setAttribute("data-focussed-orig-box-shadow",n.style.boxShadow),n.style.zIndex=2147483647,n.style.position="relative",n.style.backgroundColor="#ffffff",n.style.boxShadow="0px 0px 0px 20px #fff"}}static unfocus(){null!==document.querySelector(".hlp-focus-mask")&&document.querySelectorAll(".hlp-focus-mask").forEach((t=>{e.remove(t)})),null!==document.querySelector("[data-focussed]")&&document.querySelectorAll("[data-focussed]").forEach((t=>{t.style.zIndex=t.getAttribute("data-focussed-orig-z-index"),t.style.position=t.getAttribute("data-focussed-orig-position"),t.style.backgroundColor=t.getAttribute("data-focussed-orig-background-color"),t.style.boxShadow=t.getAttribute("data-focussed-orig-box-shadow"),t.removeAttribute("data-focussed"),t.removeAttribute("data-focussed-orig-z-index"),t.removeAttribute("data-focussed-orig-position"),t.removeAttribute("data-focussed-orig-background-color"),t.removeAttribute("data-focussed-orig-box-shadow")}))}static remove(t){null!==t&&t.parentNode.removeChild(t)}static on(t,n,r){let a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;null===a?(a=r,r=document):r=document.querySelector(r),r.addEventListener(t,(t=>{var r=e.closest(t.target,n);r&&a(t,r)}),!1)}static url(){return window.location.protocol+"//"+window.location.host+window.location.pathname}static urlWithHash(){return window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.hash}static fullUrl(){return window.location.href}static urlWithArgs(){return window.location.href.split("#")[0]}static baseUrl(){return window.location.protocol+"//"+window.location.host}static urlProtocol(){return window.location.protocol+"//"}static urlHost(){return window.location.host}static urlHostTopLevel(){let t=window.location.host;if(t.match(/^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$/))return t;for(t=t.split(".");t.length>2;)t.shift();return t=t.join("."),t}static urlPath(){return window.location.pathname}static urlHash(){return window.location.hash}static urlArgs(){return window.location.search}static urlOfScript(){if(document.currentScript)return document.currentScript.src;{let t=document.getElementsByTagName("script");return t[t.length-1].src}}static pathOfScript(){let t=this.urlOfScript();return t.substring(0,t.lastIndexOf("/"))}static waitUntil(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;return new Promise(((r,a)=>{let i=setInterval((()=>{null!==document.querySelector(t)&&(null===e||null===n&&void 0!==window.getComputedStyle(document.querySelector(t))[e]&&""!=window.getComputedStyle(document.querySelector(t))[e]||null!==n&&window.getComputedStyle(document.querySelector(t))[e]===n)&&(window.clearInterval(i),r())}),30)}))}static waitUntilVar(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=null,a=null;return null===e?(r=t,a=window):(r=e,a=t),new Promise(((t,e)=>{let i=setInterval((()=>{void 0!==a[r]&&null!==a[r]&&(null!==n&&a[r]!==n||(window.clearInterval(i),t()))}),30)}))}static ready(){return new Promise((t=>{if("loading"!==document.readyState)return t();document.addEventListener("DOMContentLoaded",(()=>t()))}))}static load(){return new Promise((t=>{if("complete"===document.readyState)return t();window.addEventListener("load",(()=>t()))}))}static runForEl(t,n){e.ready().then((()=>{let r=e.pushId();null!==document.querySelector(t)&&document.querySelectorAll(t).forEach((t=>{void 0===t.runForEl&&(t.runForEl=[]),t.runForEl.includes(r)||(t.runForEl.push(r),n(t))})),void 0===window.runForEl_queue&&(window.runForEl_queue=[]),void 0===window.runForEl_observer&&(window.runForEl_observer=new MutationObserver((t=>{t.forEach((t=>{if(t.addedNodes)for(let e=0;e<t.addedNodes.length;e++){let n=t.addedNodes[e];n.nodeType===Node.ELEMENT_NODE&&window.runForEl_queue.forEach((t=>{n.matches(t.selector)&&(void 0===n.runForEl&&(n.runForEl=[]),n.runForEl.includes(t.id)||(n.runForEl.push(t.id),t.callback(n))),null!==n.querySelector(t.selector)&&n.querySelectorAll(t.selector).forEach((e=>{void 0===e.runForEl&&(e.runForEl=[]),e.runForEl.includes(t.id)||(e.runForEl.push(t.id),t.callback(e))}))}))}}))})).observe(document.body,{attributes:!1,childList:!0,characterData:!1,subtree:!0,attributeOldValue:!1,characterDataOldValue:!1})),window.runForEl_queue.push({id:r,selector:t,callback:n})}))}static fmath(t,e,n){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:8,a={"*":e*n,"-":e-n,"+":e+n,"/":e/n}[t];return Math.round(10*a*Math.pow(10,r))/(10*Math.pow(10,r))}static trim(t,e){let n=[" ","\n","\r","\t","\f","\v"," "," "," "," "," "," "," "," "," "," "," "," ","​","\u2028","\u2029"," "].join(""),r=0,a=0;for(t+="",e&&(n=(e+"").replace(/([[\]().?/*{}+$^:])/g,"$1")),r=t.length,a=0;a<r;a++)if(-1===n.indexOf(t.charAt(a))){t=t.substring(a);break}for(r=t.length,a=r-1;a>=0;a--)if(-1===n.indexOf(t.charAt(a))){t=t.substring(0,a+1);break}return-1===n.indexOf(t.charAt(0))?t:""}static ltrim(t,e){e=e?(e+"").replace(/([[\]().?/*{}+$^:])/g,"$1"):" \\s ";const n=new RegExp("^["+e+"]+","g");return(t+"").replace(n,"")}static rtrim(t,e){e=e?(e+"").replace(/([[\]().?/*{}+$^:])/g,"\\$1"):" \\s ";const n=new RegExp("["+e+"]+$","g");return(t+"").replace(n,"")}static pushId(){let n=null;void 0!==window&&(void 0===window.pushIdDataGlobal&&(window.pushIdDataGlobal={}),n=window.pushIdDataGlobal),void 0!==t&&(void 0===t.pushIdDataGlobal&&(t.pushIdDataGlobal={}),n=t.pushIdDataGlobal),e.objectsAreEqual(n,{})&&(n.lastPushTime=0,n.lastRandChars=[],n.PUSH_CHARS="-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");let r=(new Date).getTime(),a=r===n.lastPushTime;n.lastPushTime=r;let i=new Array(8);for(var o=7;o>=0;o--)i[o]=n.PUSH_CHARS.charAt(r%64),r=Math.floor(r/64);if(0!==r)throw new Error;let l=i.join("");if(a){for(o=11;o>=0&&63===n.lastRandChars[o];o--)n.lastRandChars[o]=0;n.lastRandChars[o]++}else for(o=0;o<12;o++)n.lastRandChars[o]=Math.floor(64*Math.random());for(o=0;o<12;o++)l+=n.PUSH_CHARS.charAt(n.lastRandChars[o]);if(20!=l.length)throw new Error;return l}static getProp(t,e){let n=e.split(".");for(;n.length&&(t=t[n.shift()]););return t}static base64toblob(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=atob(t),r=[];for(let t=0;t<n.length;t+=512){let e=n.slice(t,t+512),a=new Array(e.length);for(let t=0;t<e.length;t++)a[t]=e.charCodeAt(t);let i=new Uint8Array(a);r.push(i)}return new Blob(r,{type:e})}static blobtobase64(t){return new Promise((e=>{let n=new FileReader;n.onload=()=>{var t=n.result.split(",")[1];e(t)},n.readAsDataURL(t)}))}static stringtoblob(t){return new Blob([t],{type:arguments.length>1&&void 0!==arguments[1]?arguments[1]:""})}static blobtostring(t){return new Promise((e=>{let n=new FileReader;n.onload=()=>{e(n.result)},n.readAsText(t)}))}static filetobase64(t){return new Promise(((e,n)=>{const r=new FileReader;r.readAsDataURL(t),r.onload=()=>e(r.result.split(",")[1]),r.onerror=t=>n(t)}))}static blobtofile(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"file.txt",n=null;try{n=new File([t],e)}catch{n=new Blob([t],e)}return n}static filetoblob(t){return new Blob([t])}static base64tofile(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"file.txt";return this.blobtofile(this.base64toblob(t,e),n)}static blobtourl(t){return URL.createObjectURL(t,{type:"text/plain"})}static stringtourl(t){return this.blobtourl(this.stringtoblob(t))}static base64tostring(t){return atob(t)}static stringtobase64(t){return btoa(t)}static base64tourl(t){return this.blobtourl(this.base64toblob(t))}static filetourl(t){return this.blobtourl(this.filetoblob(t))}static getImageOrientation(t){return new Promise(((e,n)=>{t=t.replace("data:image/jpeg;base64,","");let r=this.base64tofile(t),a=new FileReader;a.onload=t=>{var n=new DataView(t.target.result);if(65496==n.getUint16(0,!1)){for(var r=n.byteLength,a=2;a<r;){if(n.getUint16(a+2,!1)<=8)return void e(-1);var i=n.getUint16(a,!1);if(a+=2,65505==i){if(1165519206!=n.getUint32(a+=2,!1))return void e(-1);var o=18761==n.getUint16(a+=6,!1);a+=n.getUint32(a+4,o);var l=n.getUint16(a,o);a+=2;for(var s=0;s<l;s++)if(274==n.getUint16(a+12*s,o))return void e(n.getUint16(a+12*s+8,o))}else{if(65280!=(65280&i))break;a+=n.getUint16(a,!1)}}e(-1)}else e(-2)},a.readAsArrayBuffer(r)}))}static resetImageOrientation(t,e){return new Promise(((n,r)=>{var a=new Image;a.onload=()=>{var t=a.width,r=a.height,i=document.createElement("canvas"),o=i.getContext("2d");switch(4<e&&e<9?(i.width=r,i.height=t):(i.width=t,i.height=r),e){case 2:o.transform(-1,0,0,1,t,0);break;case 3:o.transform(-1,0,0,-1,t,r);break;case 4:o.transform(1,0,0,-1,0,r);break;case 5:o.transform(0,1,1,0,0,0);break;case 6:o.transform(0,1,-1,0,r,0);break;case 7:o.transform(0,-1,-1,0,r,t);break;case 8:o.transform(0,-1,1,0,0,t)}o.drawImage(a,0,0);let l=i.toDataURL();l="data:image/jpeg;base64,"+l.split(",")[1],n(l)},a.src=t}))}static fixImageOrientation(t){return new Promise(((e,n)=>{-1!==t.indexOf("data:")?(0===t.indexOf("data:image/jpeg;base64,")&&(t=t.replace("data:image/jpeg;base64,","")),this.getImageOrientation(t).then((n=>{t="data:image/jpeg;base64,"+t,n<=1?e(t):this.resetImageOrientation(t,n).then((t=>{e(t)}))}))):e(t)}))}static debounce(t,e,n){var r;return function(){var a=this,i=arguments,o=n&&!r;clearTimeout(r),r=setTimeout((function(){r=null,n||t.apply(a,i)}),e),o&&t.apply(a,i)}}static throttle(t,e,n){var r,a,i,o=null,l=0;n||(n={});var s=function(){l=!1===n.leading?0:Date.now(),o=null,i=t.apply(r,a),o||(r=a=null)};return function(){var c=Date.now();l||!1!==n.leading||(l=c);var d=e-(c-l);return r=this,a=arguments,d<=0||d>e?(o&&(clearTimeout(o),o=null),l=c,i=t.apply(r,a),o||(r=a=null)):o||!1===n.trailing||(o=setTimeout(s,d)),i}}static shuffle(t){let e,n,r=t.length;for(;0!==r;)n=Math.floor(Math.random()*r),r-=1,e=t[r],t[r]=t[n],t[n]=e;return t}static findRecursiveInObject(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[];if(null!==t&&"object"==typeof t)for(const[i,o]of Object.entries(t))if(null!==o&&"object"==typeof o)this.findRecursiveInObject(o,e,n,(""===r?"":r+".")+i,a);else if(!(null!==e&&i!==e||null!==n&&o!==n)){a.push(r);break}return a}}n.default=e,"undefined"!=typeof window&&(window.hlp={},Object.getOwnPropertyNames(e).forEach(((t,n)=>{"length"!==t&&"name"!==t&&"prototype"!==t&&"caller"!==t&&"arguments"!==t&&(window.hlp[t]=e[t])})))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}]},{},[1]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lanimate",
3
- "version": "1.2.3",
3
+ "version": "1.2.4",
4
4
  "main": "_build/script.js",
5
5
  "files": [
6
6
  "_build/*.js",