vendor: 7,976 bytes, lines 1-16
1(function(factory){typeof define==='function'&&define.amd?define(factory):factory();}((function(){'use strict';var Stickybits=function(){function Stickybits(target,obj){var _this=this;var o=typeof obj!=='undefined'?obj:{};this.version='3.7.0';this.userAgent=window.navigator.userAgent||'no `userAgent` provided by the browser';this.props={customStickyChangeNumber:o.customStickyChangeNumber||null,noStyles:o.noStyles||false,stickyBitStickyOffset:o.stickyBitStickyOffset||0,parentClass:o.parentClass||'js-stickybit-parent',scrollEl:typeof o.scrollEl==='string'?document.querySelector(o.scrollEl):o.scrollEl||window,stickyClass:o.stickyClass||'js-is-sticky',stuckClass:o.stuckClass||'js-is-stuck',stickyChangeClass:o.stickyChangeClass||'js-is-sticky--change',useStickyClasses:o.useStickyClasses||false,useFixed:o.useFixed||false,useGetBoundingClientRect:o.useGetBoundingClientRect||false,verticalPosition:o.verticalPosition||'top',applyStyle:o.applyStyle||function(item,style){return _this.applyStyle(item,style);}};this.props.positionVal=this.definePosition()||'fixed';this.instances=[];var _this$props=this.props,positionVal=_this$props.positionVal,verticalPosition=_this$props.verticalPosition,noStyles=_this$props.noStyles,stickyBitStickyOffset=_this$props.stickyBitStickyOffset;var verticalPositionStyle=verticalPosition==='top'&&!noStyles?stickyBitStickyOffset+"px":'';var positionStyle=positionVal!=='fixed'?positionVal:'';this.els=typeof target==='string'?document.querySelectorAll(target):target;if(!('length'in this.els))this.els=[this.els];for(var i=0;i<this.els.length;i++){var _styles;var el=this.els[i];var instance=this.addInstance(el,this.props);this.props.applyStyle({styles:(_styles={},_styles[verticalPosition]=verticalPositionStyle,_styles.position=positionStyle,_styles),classes:{}},instance);this.instances.push(instance);}} 2var _proto=Stickybits.prototype;_proto.definePosition=function definePosition(){var stickyProp;if(this.props.useFixed){stickyProp='fixed';}else{var prefix=['','-o-','-webkit-','-moz-','-ms-'];var test=document.head.style;for(var i=0;i<prefix.length;i+=1){test.position=prefix[i]+"sticky";} 3stickyProp=test.position?test.position:'fixed';test.position='';} 4return stickyProp;};_proto.addInstance=function addInstance(el,props){var _this2=this;var item={el:el,parent:el.parentNode,props:props};if(props.positionVal==='fixed'||props.useStickyClasses){this.isWin=this.props.scrollEl===window;var se=this.isWin?window:this.getClosestParent(item.el,item.props.scrollEl);this.computeScrollOffsets(item);item.parent.className+=" "+props.parentClass;item.state='default';item.stateChange='default';item.stateContainer=function(){return _this2.manageState(item);};se.addEventListener('scroll',item.stateContainer);} 5return item;};_proto.getClosestParent=function getClosestParent(el,match){var p=match;var e=el;if(e.parentElement===p)return p;while(e.parentElement!==p){e=e.parentElement;} 6return p;};_proto.getTopPosition=function getTopPosition(el){if(this.props.useGetBoundingClientRect){return el.getBoundingClientRect().top+(this.props.scrollEl.pageYOffset||document.documentElement.scrollTop);} 7var topPosition=0;do{topPosition=el.offsetTop+topPosition;}while(el=el.offsetParent);return topPosition;};_proto.computeScrollOffsets=function computeScrollOffsets(item){var it=item;var p=it.props;var el=it.el;var parent=it.parent;var isCustom=!this.isWin&&p.positionVal==='fixed';var isTop=p.verticalPosition!=='bottom';var scrollElOffset=isCustom?this.getTopPosition(p.scrollEl):0;var stickyStart=isCustom?this.getTopPosition(parent)-scrollElOffset:this.getTopPosition(parent);var stickyChangeOffset=p.customStickyChangeNumber!==null?p.customStickyChangeNumber:el.offsetHeight;var parentBottom=stickyStart+parent.offsetHeight;it.offset=!isCustom?scrollElOffset+p.stickyBitStickyOffset:0;it.stickyStart=isTop?stickyStart-it.offset:0;it.stickyChange=it.stickyStart+stickyChangeOffset;it.stickyStop=isTop?parentBottom-(el.offsetHeight+it.offset):parentBottom-window.innerHeight;};_proto.toggleClasses=function toggleClasses(el,r,a){var e=el;var cArray=e.className.split(' ');if(a&&cArray.indexOf(a)===-1)cArray.push(a);var rItem=cArray.indexOf(r);if(rItem!==-1)cArray.splice(rItem,1);e.className=cArray.join(' ');};_proto.manageState=function manageState(item){var it=item;var p=it.props;var state=it.state;var stateChange=it.stateChange;var start=it.stickyStart;var change=it.stickyChange;var stop=it.stickyStop;var pv=p.positionVal;var se=p.scrollEl;var sticky=p.stickyClass;var stickyChange=p.stickyChangeClass;var stuck=p.stuckClass;var vp=p.verticalPosition;var isTop=vp!=='bottom';var aS=p.applyStyle;var rAFStub=function rAFDummy(f){f();};var rAF=!this.isWin?rAFStub:window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||rAFStub;var scroll=this.isWin?window.scrollY||window.pageYOffset:se.scrollTop;var notSticky=scroll>start&&scroll<stop&&(state==='default'||state==='stuck');var isSticky=isTop&&scroll<=start&&(state==='sticky'||state==='stuck');var isStuck=scroll>=stop&&state==='sticky';if(notSticky){it.state='sticky';}else if(isSticky){it.state='default';}else if(isStuck){it.state='stuck';} 8var isStickyChange=scroll>=change&&scroll<=stop;var isNotStickyChange=scroll<change/2||scroll>stop;if(isNotStickyChange){it.stateChange='default';}else if(isStickyChange){it.stateChange='sticky';} 9if(state===it.state&&stateChange===it.stateChange)return;rAF(function(){var _styles2,_classes,_styles3,_styles4,_classes2,_style$classes;var stateStyles={sticky:{styles:(_styles2={position:pv,top:'',bottom:''},_styles2[vp]=p.stickyBitStickyOffset+"px",_styles2),classes:(_classes={},_classes[sticky]=true,_classes)},default:{styles:(_styles3={},_styles3[vp]='',_styles3),classes:{}},stuck:{styles:(_styles4={position:'absolute',top:'',bottom:'0'},_styles4[vp]='',_styles4),classes:(_classes2={},_classes2[stuck]=true,_classes2)}};if(pv==='fixed'){stateStyles.default.styles.position='';} 10var style=stateStyles[it.state];style.classes=(_style$classes={},_style$classes[stuck]=!!style.classes[stuck],_style$classes[sticky]=!!style.classes[sticky],_style$classes[stickyChange]=isStickyChange,_style$classes);aS(style,item);});};_proto.applyStyle=function applyStyle(_ref,item){var styles=_ref.styles,classes=_ref.classes;var it=item;var e=it.el;var p=it.props;var stl=e.style;var ns=p.noStyles;var cArray=e.className.split(' ');for(var cls in classes){var addClass=classes[cls];if(addClass){if(cArray.indexOf(cls)===-1)cArray.push(cls);}else{var idx=cArray.indexOf(cls);if(idx!==-1)cArray.splice(idx,1);}} 11e.className=cArray.join(' ');for(var key in styles){if(ns&&key==='position'){stl[key]=styles[key];return;} 12stl[key]=styles[key];}};_proto.update=function update(updatedProps){var _this3=this;if(updatedProps===void 0){updatedProps=null;} 13this.instances.forEach(function(instance){_this3.computeScrollOffsets(instance);if(updatedProps){for(var updatedProp in updatedProps){instance.props[updatedProp]=updatedProps[updatedProp];}}});return this;};_proto.removeInstance=function removeInstance(instance){var _styles5,_classes3;var e=instance.el;var p=instance.props;this.applyStyle({styles:(_styles5={position:''},_styles5[p.verticalPosition]='',_styles5),classes:(_classes3={},_classes3[p.stickyClass]='',_classes3[p.stuckClass]='',_classes3)},instance);this.toggleClasses(e.parentNode,p.parentClass);};_proto.cleanup=function cleanup(){for(var i=0;i<this.instances.length;i+=1){var instance=this.instances[i];if(instance.stateContainer){instance.props.scrollEl.removeEventListener('scroll',instance.stateContainer);} 14this.removeInstance(instance);} 15this.manageState=false;this.instances=[];};return Stickybits;}();function stickybits(target,o){return new Stickybits(target,o);} 16if(typeof window!=='undefined'){var plugin=window.$||window.jQuery||window.Zepto;if(plugin){plugin.fn.stickybits=function stickybitsPlugin(opts){return stickybits(this,opts);};}}})));
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.