!function(t,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e(require,exports,module):t.scrollreveal=e()}(this,function(){return window.scrollreveal=function(t){"use strict";function e(e){this.docelem=t.document.documentelement,this.options=this.extend(this.defaults,e),this.stylebank={},1==this.options.init&&this.init()}var i=1,o=function(){return t.requestanimationframe||t.webkitrequestanimationframe||t.mozrequestanimationframe||function(e){t.settimeout(e,1e3/60)}}();return e.prototype={defaults:{after:"0s",enter:"bottom",move:"24px",over:"0.66s",easing:"ease-in-out",opacity:0,viewportfactor:.33,reset:!1,init:!0},init:function(){this.scrolled=!1;var e=this;this.elems=array.prototype.slice.call(this.docelem.queryselectorall("[data-scroll-reveal]")),this.elems.foreach(function(t){var o=t.getattribute("data-scroll-reveal-id");o||(o=i++,t.setattribute("data-scroll-reveal-id",o)),e.stylebank[o]||(e.stylebank[o]=t.getattribute("style")),e.update(t)});var r=function(){e.scrolled||(e.scrolled=!0,o(function(){e._scrollpage()}))},n=function(){function t(){e._scrollpage(),e.resizetimeout=null}e.resizetimeout&&cleartimeout(e.resizetimeout),e.resizetimeout=settimeout(t,200)};t.addeventlistener("scroll",r,!1),t.addeventlistener("resize",n,!1)},_scrollpage:function(){var t=this;this.elems.foreach(function(e){t.update(e)}),this.scrolled=!1},parselanguage:function(t){function e(t){var e=[],i=["from","the","and","then","but","with"];return t.foreach(function(t){i.indexof(t)>-1||e.push(t)}),e}var i=t.getattribute("data-scroll-reveal").split(/[, ]+/),o={};return i=e(i),i.foreach(function(t,e){switch(t){case"enter":return void(o.enter=i[e+1]);case"after":return void(o.after=i[e+1]);case"wait":return void(o.after=i[e+1]);case"move":return void(o.move=i[e+1]);case"ease":return o.move=i[e+1],void(o.ease="ease");case"ease-in":return o.move=i[e+1],void(o.easing="ease-in");case"ease-in-out":return o.move=i[e+1],void(o.easing="ease-in-out");case"ease-out":return o.move=i[e+1],void(o.easing="ease-out");case"over":return void(o.over=i[e+1]);default:return}}),o},update:function(t){var e=this.gencss(t),i=this.stylebank[t.getattribute("data-scroll-reveal-id")];return null!=i?i+=";":i="",t.getattribute("data-scroll-reveal-initialized")||(t.setattribute("style",i+e.initial),t.setattribute("data-scroll-reveal-initialized",!0)),this.iselementinviewport(t,this.options.viewportfactor)?t.getattribute("data-scroll-reveal-complete")?void 0:this.iselementinviewport(t,this.options.viewportfactor)?(t.setattribute("style",i+e.target+e.transition),void(this.options.reset||settimeout(function(){""!=i?t.setattribute("style",i):t.removeattribute("style"),t.setattribute("data-scroll-reveal-complete",!0)},e.totalduration))):void 0:void(this.options.reset&&t.setattribute("style",i+e.initial+e.reset))},gencss:function(t){var e,i,o=this.parselanguage(t);o.enter?(("top"==o.enter||"bottom"==o.enter)&&(e=o.enter,i="y"),("left"==o.enter||"right"==o.enter)&&(e=o.enter,i="x")):(("top"==this.options.enter||"bottom"==this.options.enter)&&(e=this.options.enter,i="y"),("left"==this.options.enter||"right"==this.options.enter)&&(e=this.options.enter,i="x")),("top"==e||"left"==e)&&(o.move=o.move?"-"+o.move:"-"+this.options.move);var r=o.move||this.options.move,n=o.over||this.options.over,s=o.after||this.options.after,a=o.easing||this.options.easing,l=o.opacity||this.options.opacity,u="-webkit-transition: -webkit-transform "+n+" "+a+" "+s+", opacity "+n+" "+a+" "+s+";transition: transform "+n+" "+a+" "+s+", opacity "+n+" "+a+" "+s+";-webkit-perspective: 1000;-webkit-backface-visibility: hidden;",c="-webkit-transition: -webkit-transform "+n+" "+a+" 0s, opacity "+n+" "+a+" "+s+";transition: transform "+n+" "+a+" 0s, opacity "+n+" "+a+" "+s+";-webkit-perspective: 1000;-webkit-backface-visibility: hidden;",f="-webkit-transform: translate"+i+"("+r+");transform: translate"+i+"("+r+");opacity: "+l+";",p="-webkit-transform: translate"+i+"(0);transform: translate"+i+"(0);opacity: 1;";return{transition:u,initial:f,target:p,reset:c,totalduration:1e3*(parsefloat(n)+parsefloat(s))}},getviewporth:function(){var e=this.docelem.clientheight,i=t.innerheight;return i>e?i:e},getoffset:function(t){var e=0,i=0;do isnan(t.offsettop)||(e+=t.offsettop),isnan(t.offsetleft)||(i+=t.offsetleft);while(t=t.offsetparent);return{top:e,left:i}},iselementinviewport:function(e,i){var o=t.pageyoffset,r=o+this.getviewporth(),n=e.offsetheight,s=this.getoffset(e).top,a=s+n,i=i||0;return r>=s+n*i&&a>=o||"fixed"==(e.currentstyle?e.currentstyle:t.getcomputedstyle(e,null)).position},extend:function(t,e){for(var i in e)e.hasownproperty(i)&&(t[i]=e[i]);return t}},e}(window),scrollreveal});