1;(function(window){'use strict';var docElem=window.document.documentElement;function classReg(className){return new RegExp("(^|\\s+)"+className+"(\\s+|$)");} 2var hasClass,addClass,removeClass;if('classList'in document.documentElement){hasClass=function(elem,c){return elem.classList.contains(c);};addClass=function(elem,c){elem.classList.add(c);};removeClass=function(elem,c){elem.classList.remove(c);};} 3else{hasClass=function(elem,c){return classReg(c).test(elem.className);};addClass=function(elem,c){if(!hasClass(elem,c)){elem.className=elem.className+' '+c;}};removeClass=function(elem,c){elem.className=elem.className.replace(classReg(c),' ');};} 4function toggleClass(elem,c){var fn=hasClass(elem,c)?removeClass:addClass;fn(elem,c);} 5var classie={hasClass:hasClass,addClass:addClass,removeClass:removeClass,toggleClass:toggleClass,has:hasClass,add:addClass,remove:removeClass,toggle:toggleClass};if(typeof define==='function'&&define.amd){define(classie);}else{window.classie=classie;} 6function getViewportH(){var client=docElem['clientHeight'],inner=window['innerHeight'];if(client<inner) 7return inner;else 8return client;} 9function scrollY(){return window.pageYOffset||docElem.scrollTop;} 10function getOffset(el){var offsetTop=0,offsetLeft=0;do{if(!isNaN(el.offsetTop)){offsetTop+=el.offsetTop;} 11if(!isNaN(el.offsetLeft)){offsetLeft+=el.offsetLeft;}}while(el=el.offsetParent) 12return{top:offsetTop,left:offsetLeft}} 13function inViewport(el,h){var elH=el.offsetHeight,scrolled=scrollY(),viewed=scrolled+getViewportH(),elTop=getOffset(el).top,elBottom=elTop+elH,h=h||0;return(elTop+elH*h)<=viewed&&(elBottom-elH*h)>=scrolled;} 14function extend(a,b){for(var key in b){if(b.hasOwnProperty(key)){a[key]=b[key];}} 15return a;} 16function AnimOnScroll(el,options,masonryOptions){this.el=el;this.options=extend(this.defaults,options);this.masonryOptions=masonryOptions;this._init();} 17AnimOnScroll.prototype={defaults:{minDuration:0,maxDuration:0,viewportFactor:0,animateVisible:false},_init:function(){this.items=Array.prototype.slice.call(jQuery(this.el).find('.masonry-item'));this.itemsCount=this.items.length;this.itemsRenderedCount=0;this.didScroll=false;var self=this;imagesLoaded(this.el,function(){if(self.masonryOptions){new Masonry(self.el,self.masonryOptions);} 18if(Modernizr.cssanimations){self.items.forEach(function(el,i){if(inViewport(el)){self._checkTotalRendered();if(self.options.animateVisible){setTimeout(function(){self._scrollPage();},500);}else{classie.add(el,'shown');}}});window.addEventListener('scroll',function(){self._onScrollFn();},false);window.addEventListener('resize',function(){self._resizeHandler();},false);}});},_onScrollFn:function(){var self=this;if(!this.didScroll){this.didScroll=true;setTimeout(function(){self._scrollPage();},60);}},_scrollPage:function(){var self=this;this.items.forEach(function(el,i){if(!classie.has(el,'shown')&&!classie.has(el,'animate')&&inViewport(el,self.options.viewportFactor)){setTimeout(function(){var el_offset=$(self.el).offset();var el_scrollY=(parseFloat(scrollY()-el_offset.top)<0)?0:(scrollY()-el_offset.top);var perspY=el_scrollY+getViewportH()/2;self.el.style.WebkitPerspectiveOrigin='50% '+perspY+'px';self.el.style.MozPerspectiveOrigin='50% '+perspY+'px';self.el.style.perspectiveOrigin='50% '+perspY+'px';self._checkTotalRendered();if(self.options.minDuration&&self.options.maxDuration){var randDuration=(Math.random()*(self.options.maxDuration-self.options.minDuration)+self.options.minDuration)+'s';el.style.WebkitAnimationDuration=randDuration;el.style.MozAnimationDuration=randDuration;el.style.animationDuration=randDuration;} 19classie.add(el,'animate');},25);}});this.didScroll=false;},_resizeHandler:function(){var self=this;function delayed(){self._scrollPage();self.resizeTimeout=null;} 20if(this.resizeTimeout){clearTimeout(this.resizeTimeout);} 21this.resizeTimeout=setTimeout(delayed,1000);},_checkTotalRendered:function(){++this.itemsRenderedCount;if(this.itemsRenderedCount===this.itemsCount){window.removeEventListener('scroll',this._onScrollFn);}}} 22window.AnimOnScroll=AnimOnScroll;})(window);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.