1/**! 2 * MixItUp v3.3.1 3 * A high-performance, dependency-free library for animated filtering, sorting and more 4 * Build 94e0fbf6-cd0b-4987-b3c0-14b59b67b8a0 5 * 6 * @copyright Copyright 2014-2018 KunkaLabs Limited. 7 * @author KunkaLabs Limited. 8 * @link https://www.kunkalabs.com/mixitup/ 9 * 10 * @license Commercial use requires a commercial license. 11 * https://www.kunkalabs.com/mixitup/licenses/ 12 * 13 * Non-commercial use permitted under same terms as CC BY-NC 3.0 license. 14 * http://creativecommons.org/licenses/by-nc/3.0/ 15 */ 16!function(window){"use strict";var mixitup=null,h=null;!function(){var ElementPrototype,hasDontEnumBug,dontEnums,dontEnumsLength,hasOwnProperty,Temp,VENDORS=["webkit","moz","o","ms"],canary=window.document.createElement("div"),i=-1;for(i=0;i<VENDORS.length&&!window.requestAnimationFrame;i++)window.requestAnimationFrame=window[VENDORS[i]+"RequestAnimationFrame"];void 0===canary.nextElementSibling&&Object.defineProperty(window.Element.prototype,"nextElementSibling",{get:function(){for(var el=this.nextSibling;el;){if(1===el.nodeType)return el;el=el.nextSibling}return null}}),(ElementPrototype=window.Element.prototype).matches=ElementPrototype.matches||ElementPrototype.machesSelector||ElementPrototype.mozMatchesSelector||ElementPrototype.msMatchesSelector||ElementPrototype.oMatchesSelector||ElementPrototype.webkitMatchesSelector||function(selector){return Array.prototype.indexOf.call(this.parentElement.querySelectorAll(selector),this)>-1},Object.keys||(Object.keys=(hasOwnProperty=Object.prototype.hasOwnProperty,hasDontEnumBug=!{toString:null}.propertyIsEnumerable("toString"),dontEnumsLength=(dontEnums=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"]).length,function(obj){var result=[],prop="",i=-1;if("object"!=typeof obj&&("function"!=typeof obj||null===obj))throw new TypeError("Object.keys called on non-object");for(prop in obj)hasOwnProperty.call(obj,prop)&&result.push(prop);if(hasDontEnumBug)for(i=0;i<dontEnumsLength;i++)hasOwnProperty.call(obj,dontEnums[i])&&result.push(dontEnums[i]);return result})),Array.isArray||(Array.isArray=function(arg){return"[object Array]"===Object.prototype.toString.call(arg)}),"function"!=typeof Object.create&&(Object.create=(Temp=function(){},function(prototype,propertiesObject){if(prototype!==Object(prototype)&&null!==prototype)throw TypeError("Argument must be an object, or null");Temp.prototype=prototype||{};var result=new Temp;return Temp.prototype=null,void 0!==propertiesObject&&Object.defineProperties(result,propertiesObject),null===prototype&&(result.__proto__=null),result})),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}),Array.prototype.indexOf||(Array.prototype.indexOf=function(searchElement){var n,k,t,len;if(null===this)throw new TypeError;if(0===(len=(t=Object(this)).length>>>0))return-1;if(n=0,arguments.length>1&&((n=Number(arguments[1]))!=n?n=0:0!==n&&n!==1/0&&n!==-1/0&&(n=(n>0||-1)*Math.floor(Math.abs(n)))),n>=len)return-1;for(k=n>=0?n:Math.max(len-Math.abs(n),0);k<len;k++)if(k in t&&t[k]===searchElement)return k;return-1}),Function.prototype.bind||(Function.prototype.bind=function(oThis){var aArgs,self,FNOP,fBound;if("function"!=typeof this)throw new TypeError;return aArgs=Array.prototype.slice.call(arguments,1),self=this,FNOP=function(){},fBound=function(){return self.apply(this instanceof FNOP?this:oThis,aArgs.concat(Array.prototype.slice.call(arguments)))},this.prototype&&(FNOP.prototype=this.prototype),fBound.prototype=new FNOP,fBound}),window.Element.prototype.dispatchEvent||(window.Element.prototype.dispatchEvent=function(event){try{return this.fireEvent("on"+event.type,event)}catch(err){}})}(),mixitup=function(container,config,foreignDoc){var el=null,returnCollection=!1,instance=null,facade=null,doc=null,instances=[],id="",elements=[],i=-1;if(doc=foreignDoc||window.document,(returnCollection=arguments[3])&&(returnCollection="boolean"==typeof returnCollection),"string"==typeof container)elements=doc.querySelectorAll(container);else if(container&&"object"==typeof container&&h.isElement(container,doc))elements=[container];else{if(!container||"object"!=typeof container||!container.length)throw new Error(mixitup.messages.errorFactoryInvali
16dContainer());elements=container}if(elements.length<1)throw new Error(mixitup.messages.errorFactoryContainerNotFound());for(i=0;(el=elements[i])&&(!(i>0)||returnCollection);i++)el.id?id=el.id:(id="MixItUp"+h.randomHex(),el.id=id),mixitup.instances[id]instanceof mixitup.Mixer?(instance=mixitup.instances[id],(!config||config&&config.debug&&!1!==config.debug.showWarnings)&&console.warn(mixitup.messages.warningFactoryPreexistingInstance())):((instance=new mixitup.Mixer).attach(el,doc,id,config),mixitup.instances[id]=instance),facade=new mixitup.Facade(instance),config&&config.debug&&config.debug.enable?instances.push(instance):instances.push(facade);return returnCollection?new mixitup.Collection(instances):instances[0]},mixitup.use=function(extension){mixitup.Base.prototype.callActions.call(mixitup,"beforeUse",arguments),"function"==typeof extension&&"mixitup-extension"===extension.TYPE?void 0===mixitup.extensions[extension.NAME]&&(extension(mixitup),mixitup.extensions[extension.NAME]=extension):extension.fn&&extension.fn.jquery&&(mixitup.libraries.$=extension),mixitup.Base.prototype.callActions.call(mixitup,"afterUse",arguments)},mixitup.instances={},mixitup.extensions={},mixitup.libraries={},h={hasClass:function(el,cls){return!!el.className.match(new RegExp("(\\s|^)"+cls+"(\\s|$)"))},addClass:function(el,cls){this.hasClass(el,cls)||(el.className+=el.className?" "+cls:cls)},removeClass:function(el,cls){if(this.hasClass(el,cls)){var reg=new RegExp("(\\s|^)"+cls+"(\\s|$)");el.className=el.className.replace(reg," ").trim()}},extend:function(destination,source,deep,handleErrors){var sourceKeys=[],key="",i=-1;deep=deep||!1,handleErrors=handleErrors||!1;try{if(Array.isArray(source))for(i=0;i<source.length;i++)sourceKeys.push(i);else source&&(sourceKeys=Object.keys(source));for(i=0;i<sourceKeys.length;i++)key=sourceKeys[i],!deep||"object"!=typeof source[key]||this.isElement(source[key])?destination[key]=source[key]:Array.isArray(source[key])?(destination[key]||(destination[key]=[]),this.extend(destination[key],source[key],deep,handleErrors)):(destination[key]||(destination[key]={}),this.extend(destination[key],source[key],deep,handleErrors))}catch(err){if(!handleErrors)throw err;this.handleExtendError(err,destination)}return destination},handleExtendError:function(err,destination){var matches=null,erroneous="",message="",suggestion="",probableMatch="",key="",mostMatchingChars=-1,i=-1;if(err instanceof TypeError&&(matches=/property "?(\w*)"?[,:] object/i.exec(err.message))){for(key in erroneous=matches[1],destination){for(i=0;i<erroneous.length&&erroneous.charAt(i)===key.charAt(i);)i++;i>mostMatchingChars&&(mostMatchingChars=i,probableMatch=key)}throw mostMatchingChars>1&&(suggestion=mixitup.messages.errorConfigInvalidPropertySuggestion({probableMatch:probableMatch})),message=mixitup.messages.errorConfigInvalidProperty({erroneous:erroneous,suggestion:suggestion}),new TypeError(message)}throw err},template:function(str){for(var re=/\${([\w]*)}/g,dynamics={},matches=null;matches=re.exec(str);)dynamics[matches[1]]=new RegExp("\\${"+matches[1]+"}","g");return function(data){var key="",output=str;for(key in data=data||{},dynamics)output=output.replace(dynamics[key],void 0!==data[key]?data[key]:"");return output}},on:function(el,type,fn,useCapture){el&&(el.addEventListener?el.addEventListener(type,fn,useCapture):el.attachEvent&&(el["e"+type+fn]=fn,el[type+fn]=function(){el["e"+type+fn](window.event)},el.attachEvent("on"+type,el[type+fn])))},off:function(el,type,fn){el&&(el.removeEventListener?el.removeEventListener(type,fn,!1):el.detachEvent&&(el.detachEvent("on"+type,el[type+fn]),el[type+fn]=null))},getCustomEvent:function(eventType,detail,doc){var event=null;return doc=doc||window.document,"function"==typeof window.CustomEvent?event=new window.CustomEvent(eventType,{detail:detail,bubbles:!0,cancelable:!0}):"function"==typeof doc.createEvent?(event=doc.createEvent("CustomEvent")).initCustomEvent(eventType,!0,!0,detail):((event=doc.createEventObject()).type=eventType,event.returnValue=!1,event.cancelBubble=!1,event.detail=detail),event},getOriginalEvent:function(e){return e.touches&&e.touches.length?e.touches[0]:e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:e},index:function(el,selector){for(var i=0;null!==(el=el.previousElementSibling);)selector&&!el.matches(selector)||++i;return i},camelCase:function(str){return str.toLowerCase().replace(/([_-][a-z])/g,function($1){return $1.toUpperCase().replace(/[_-]/,"")})},pascalCase:function(str){return(str=this.camelCase(str)).charAt(0).toUpperCase()+str.slice(1)},dashCase:function(str){return str.replace(/([A-Z])/g,"-$1").replace(/^-/,"").toLowerCase()},isElement:function(el,doc){return doc=doc||window.document,!!(window.HTMLElement&&el instanceof window.HTMLElement)||(!!(doc.defaultView&&doc.defaultView.HTMLElement&&el instanceof doc.defaultView.HTMLElement)||null!==el&&1===el.nodeType&&"string"==typeof el.nodeName)},createElement:function(htmlString,doc){var frag=null,temp=null;for(frag=(doc=doc||window.document).createDocumentFragment(),(temp=doc.createElement("div")).innerHTML=htmlString.trim();temp.firstChild;)frag.appendChild(temp.firstChild);return frag},removeWhitespace:function(node){for(var deleting;node&&"#text"===node.nodeName;)deleting=node,node=node.previousSibling,deleting.parentElement&&deleting.parentElement.removeChild(deleting)},isEqualArray:function(a,b){var i=a.length;if(i!==b.length)return!1;for(;i--;)if(a[i]!==b[i])return!1;return!0},deepEquals:function(a,b){var key;if("object"==typeof a&&a&&"object"==typeof b&&b){if(Object.keys(a).length!==Object.keys(b).length)return!1;for(key in a)if(!b.hasOwnProperty(key)||!this.deepEquals(a[key],b[key]))return!1}else if(a!==b)return!1;return!0},arrayShuffle:function(oldArray){for(var newArray=oldArray.slice(),len=newArray.length,i=len,p=-1,t=[];i--;
16)p=~~(Math.random()*len),t=newArray[i],newArray[i]=newArray[p],newArray[p]=t;return newArray},arrayFromList:function(list){var output,i;try{return Array.prototype.slice.call(list)}catch(err){for(output=[],i=0;i<list.length;i++)output.push(list[i]);return output}},debounce:function(func,wait,immediate){var timeout;return function(){var later,self=this,args=arguments,callNow=immediate&&!timeout;later=function(){timeout=null,immediate||func.apply(self,args)},clearTimeout(timeout),timeout=setTimeout(later,wait),callNow&&func.apply(self,args)}},position:function(element){for(var xPosition=0,yPosition=0,offsetParent=element;element;)xPosition-=element.scrollLeft,yPosition-=element.scrollTop,element===offsetParent&&(xPosition+=element.offsetLeft,yPosition+=element.offsetTop,offsetParent=element.offsetParent),element=element.parentElement;return{x:xPosition,y:yPosition}},getHypotenuse:function(node1,node2){var distanceX=node1.x-node2.x,distanceY=node1.y-node2.y;return distanceX=distanceX<0?-1*distanceX:distanceX,distanceY=distanceY<0?-1*distanceY:distanceY,Math.sqrt(Math.pow(distanceX,2)+Math.pow(distanceY,2))},getIntersectionRatio:function(box1,box2){var intersectionX,controlArea=box1.width*box1.height;return intersectionX=Math.max(0,Math.min(box1.left+box1.width,box2.left+box2.width)-Math.max(box1.left,box2.left)),Math.max(0,Math.min(box1.top+box1.height,box2.top+box2.height)-Math.max(box1.top,box2.top))*intersectionX/controlArea},closestParent:function(el,selector,includeSelf,doc){var parent=el.parentNode;if(doc=doc||window.document,includeSelf&&el.matches(selector))return el;for(;parent&&parent!=doc.body;){if(parent.matches&&parent.matches(selector))return parent;if(!parent.parentNode)return null;parent=parent.parentNode}return null},children:function(el,selector,doc){var children=[],tempId="";return doc=doc||window.doc,el&&(el.id||(tempId="Temp"+this.randomHexKey(),el.id=tempId),children=doc.querySelectorAll("#"+el.id+" > "+selector),tempId&&el.removeAttribute("id")),children},clean:function(originalArray){var cleanArray=[],i=-1;for(i=0;i<originalArray.length;i++)""!==originalArray[i]&&cleanArray.push(originalArray[i]);return cleanArray},defer:function(libraries){var deferred=null,promiseWrapper=null,$=null;return promiseWrapper=new this.Deferred,mixitup.features.has.promises?promiseWrapper.promise=new Promise(function(resolve,reject){promiseWrapper.resolve=resolve,promiseWrapper.reject=reject}):($=window.jQuery||libraries.$)&&"function"==typeof $.Deferred?(deferred=$.Deferred(),promiseWrapper.promise=deferred.promise(),promiseWrapper.resolve=deferred.resolve,promiseWrapper.reject=deferred.reject):window.console&&console.warn(mixitup.messages.warningNoPromiseImplementation()),promiseWrapper},all:function(tasks,libraries){var $=null;return mixitup.features.has.promises?Promise.all(tasks):($=window.jQuery||libraries.$)&&"function"==typeof $.when?$.when.apply($,tasks).done(function(){return arguments}):(window.console&&console.warn(mixitup.messages.warningNoPromiseImplementation()),[])},getPrefix:function(el,property,vendors){var i=-1,prefix="";if(h.dashCase(property)in el.style)return"";for(i=0;prefix=vendors[i];i++)if(prefix+property in el.style)return prefix.toLowerCase();return"unsupported"},randomHex:function(){return("00000"+(16777216*Math.random()|0).toString(16)).substr(-6).toUpperCase()},getDocumentState:function(doc){return doc="object"==typeof doc.body?doc:window.document,{scrollTop:window.pageYOffset,scrollLeft:window.pageXOffset,docHeight:doc.documentElement.scrollHeight,docWidth:doc.documentElement.scrollWidth,viewportHeight:doc.documentElement.clientHeight,viewportWidth:doc.documentElement.clientWidth}},bind:function(obj,fn){return function(){return fn.apply(obj,arguments)}},isVisible:function(el){var styles;return!!el.offsetParent||"fixed"===(styles=window.getComputedStyle(el)).position&&"hidden"!==styles.visibility&&"0"!==styles.opacity},seal:function(obj){"function"==typeof Object.seal&&Object.seal(obj)},freeze:function(obj){"function"==typeof Object.freeze&&Object.freeze(obj)},compareVersions:function(control,specimen){var controlParts=control.split("."),specimenParts=specimen.split("."),controlPart=-1,specimenPart=-1,i=-1;for(i=0;i<controlParts.length;i++){if(controlPart=parseInt(controlParts[i].replace(/[^\d.]/g,"")),(specimenPart=parseInt(specimenParts[i].replace(/[^\d.]/g,"")||0))<controlPart)return!1;if(specimenPart>controlPart)return!0}return!0},Deferred:function(){this.promise=null,this.resolve=null,this.reject=null,this.id=h.randomHex()},isEmptyObject:function(obj){var key="";if("function"==typeof Object.keys)return 0===Object.keys(obj).length;for(key in obj)if(obj.hasOwnProperty(key))return!1;return!0},getClassname:function(classNames,elementName,modifier){var classname="";return(classname+=classNames.block).length&&(classname+=classNames.delineatorElement),classname+=classNames["element"+this.pascalCase(elementName)],modifier?(classname.length&&(classname+=classNames.delineatorModifier),classname+=modifier):classname}
16,getProperty:function(obj,stringKey){var returnCurrent,parts=stringKey.split("."),current="",i=0;if(!stringKey)return obj;for(returnCurrent=function(obj){return obj?obj[current]:null};i<parts.length;)current=parts[i],obj=returnCurrent(obj),i++;return void 0!==obj?obj:null}},mixitup.h=h,mixitup.Base=function(){},mixitup.Base.prototype={constructor:mixitup.Base,callActions:function(actionName,args){var hooks=this.constructor.actions[actionName],extensionName="";if(hooks&&!h.isEmptyObject(hooks))for(extensionName in hooks)hooks[extensionName].apply(this,args)},callFilters:function(filterName,input,args){var hooks=this.constructor.filters[filterName],output=input,extensionName="";if(!hooks||h.isEmptyObject(hooks))return output;for(extensionName in args=args||[],hooks)(args=h.arrayFromList(args)).unshift(output),output=hooks[extensionName].apply(this,args);return output}},mixitup.BaseStatic=function(){this.actions={},this.filters={},this.extend=function(extension){h.extend(this.prototype,extension)},this.registerAction=function(hookName,extensionName,func){(this.actions[hookName]=this.actions[hookName]||{})[extensionName]=func},this.registerFilter=function(hookName,extensionName,func){(this.filters[hookName]=this.filters[hookName]||{})[extensionName]=func}},mixitup.Features=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.boxSizingPrefix="",this.transformPrefix="",this.transitionPrefix="",this.boxSizingPrefix="",this.transformProp="",this.transformRule="",this.transitionProp="",this.perspectiveProp="",this.perspectiveOriginProp="",this.has=new mixitup.Has,this.canary=null,this.BOX_SIZING_PROP="boxSizing",this.TRANSITION_PROP="transition",this.TRANSFORM_PROP="transform",this.PERSPECTIVE_PROP="perspective",this.PERSPECTIVE_ORIGIN_PROP="perspectiveOrigin",this.VENDORS=["Webkit","moz","O","ms"],this.TWEENABLE=["opacity","width","height","marginRight","marginBottom","x","y","scale","translateX","translateY","translateZ","rotateX","rotateY","rotateZ"],this.callActions("afterConstruct")},mixitup.BaseStatic.call(mixitup.Features),mixitup.Features.prototype=Object.create(mixitup.Base.prototype),h.extend(mixitup.Features.prototype,{constructor:mixitup.Features,init:function(){this.callActions("beforeInit",arguments),this.canary=document.createElement("div"),this.setPrefixes(),this.runTests(),this.callActions("beforeInit",arguments)},runTests:function(){this.callActions("beforeRunTests",arguments),this.has.promises="function"==typeof window.Promise,this.has.transitions="unsupported"!==this.transitionPrefix,this.callActions("afterRunTests",arguments),h.freeze(this.has)},setPrefixes:function(){this.callActions("beforeSetPrefixes",arguments),this.transitionPrefix=h.getPrefix(this.canary,"Transition",this.VENDORS),this.transformPrefix=h.getPrefix(this.canary,"Transform",this.VENDORS),this.boxSizingPrefix=h.getPrefix(this.canary,"BoxSizing",this.VENDORS),this.boxSizingProp=this.boxSizingPrefix?this.boxSizingPrefix+h.pascalCase(this.BOX_SIZING_PROP):this.BOX_SIZING_PROP,this.transitionProp=this.transitionPrefix?this.transitionPrefix+h.pascalCase(this.TRANSITION_PROP):this.TRANSITION_PROP,this.transformProp=this.transformPrefix?this.transformPrefix+h.pascalCase(this.TRANSFORM_PROP):this.TRANSFORM_PROP,this.transformRule=this.transformPrefix?"-"+this.transformPrefix+"-"+this.TRANSFORM_PROP:this.TRANSFORM_PROP,this.perspectiveProp=this.transformPrefix?this.transformPrefix+h.pascalCase(this.PERSPECTIVE_PROP):this.PERSPECTIVE_PROP,this.perspectiveOriginProp=this.transformPrefix?this.transformPrefix+h.pascalCase(this.PERSPECTIVE_ORIGIN_PROP):this.PERSPECTIVE_ORIGIN_PROP,this.callActions("afterSetPrefixes",arguments)}}),mixitup.Has=function(){this.transitions=!1,this.promises=!1,h.seal(this)},mixitup.features=new mixitup.Features,mixitup.features.init(),mixitup.ConfigAnimation=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.enable=!0,this.effects="fade scale",this.effectsIn="",this.effectsOut="",this.duration=600,this.easing="ease",this.applyPerspective=!0,this.perspectiveDistance="3000px",this.perspectiveOrigin="50% 50%",this.queue=!0,this.queueLimit=3,this.animateResizeContainer=!0,this.animateResizeTargets=!1,this.staggerSequence=null,this.reverseOut=!1,this.nudge=!0,this.clampHeight=!0,this.clampWidth=!0,this.callActions("afterConstruct"),h.seal(this)}
16,mixitup.BaseStatic.call(mixitup.ConfigAnimation),mixitup.ConfigAnimation.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigAnimation.prototype.constructor=mixitup.ConfigAnimation,mixitup.ConfigBehavior=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.liveSort=!1,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigBehavior),mixitup.ConfigBehavior.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigBehavior.prototype.constructor=mixitup.ConfigBehavior,mixitup.ConfigCallbacks=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.onMixStart=null,this.onMixBusy=null,this.onMixEnd=null,this.onMixFail=null,this.onMixClick=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigCallbacks),mixitup.ConfigCallbacks.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigCallbacks.prototype.constructor=mixitup.ConfigCallbacks,mixitup.ConfigControls=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.enable=!0,this.live=!1,this.scope="global",this.toggleLogic="or",this.toggleDefault="all",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigControls),mixitup.ConfigControls.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigControls.prototype.constructor=mixitup.ConfigControls,mixitup.ConfigClassNames=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.block="mixitup",this.elementContainer="container",this.elementFilter="control",this.elementSort="control",this.elementMultimix="control",this.elementToggle="control",this.modifierActive="active",this.modifierDisabled="disabled",this.modifierFailed="failed",this.delineatorElement="-",this.delineatorModifier="-",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigClassNames),mixitup.ConfigClassNames.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigClassNames.prototype.constructor=mixitup.ConfigClassNames,mixitup.ConfigData=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.uidKey="",this.dirtyCheck=!1,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigData),mixitup.ConfigData.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigData.prototype.constructor=mixitup.ConfigData,mixitup.ConfigDebug=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.enable=!1,this.showWarnings=!0,this.fauxAsync=!1,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigDebug),mixitup.ConfigDebug.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigDebug.prototype.constructor=mixitup.ConfigDebug,mixitup.ConfigLayout=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.allowNestedTargets=!0,this.containerClassName="",this.siblingBefore=null,this.siblingAfter=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigLayout),mixitup.ConfigLayout.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigLayout.prototype.constructor=mixitup.ConfigLayout,mixitup.ConfigLoad=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.filter="all",this.sort="default:asc",this.dataset=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigLoad),mixitup.ConfigLoad.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigLoad.prototype.constructor=mixitup.ConfigLoad,mixitup.ConfigSelectors=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.target=".mix",this.control="",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigSelectors),mixitup.ConfigSelectors.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigSelectors.prototype.constructor=mixitup.ConfigSelectors,mixitup.ConfigRender=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.target=null,this.callActions("afterConstruct"),h.seal(this)}
vendor: 4,164 bytes, line 16
16,mixitup.BaseStatic.call(mixitup.ConfigRender),mixitup.ConfigRender.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigRender.prototype.constructor=mixitup.ConfigRender,mixitup.ConfigTemplates=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.ConfigTemplates),mixitup.ConfigTemplates.prototype=Object.create(mixitup.Base.prototype),mixitup.ConfigTemplates.prototype.constructor=mixitup.ConfigTemplates,mixitup.Config=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.animation=new mixitup.ConfigAnimation,this.behavior=new mixitup.ConfigBehavior,this.callbacks=new mixitup.ConfigCallbacks,this.controls=new mixitup.ConfigControls,this.classNames=new mixitup.ConfigClassNames,this.data=new mixitup.ConfigData,this.debug=new mixitup.ConfigDebug,this.layout=new mixitup.ConfigLayout,this.load=new mixitup.ConfigLoad,this.selectors=new mixitup.ConfigSelectors,this.render=new mixitup.ConfigRender,this.templates=new mixitup.ConfigTemplates,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.Config),mixitup.Config.prototype=Object.create(mixitup.Base.prototype),mixitup.Config.prototype.constructor=mixitup.Config,mixitup.MixerDom=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.document=null,this.body=null,this.container=null,this.parent=null,this.targets=[],this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.MixerDom),mixitup.MixerDom.prototype=Object.create(mixitup.Base.prototype),mixitup.MixerDom.prototype.constructor=mixitup.MixerDom,mixitup.UiClassNames=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.base="",this.active="",this.disabled="",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.UiClassNames),mixitup.UiClassNames.prototype=Object.create(mixitup.Base.prototype),mixitup.UiClassNames.prototype.constructor=mixitup.UiClassNames,mixitup.CommandDataset=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.dataset=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.CommandDataset),mixitup.CommandDataset.prototype=Object.create(mixitup.Base.prototype),mixitup.CommandDataset.prototype.constructor=mixitup.CommandDataset,mixitup.CommandMultimix=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.filter=null,this.sort=null,this.insert=null,this.remove=null,this.changeLayout=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.CommandMultimix),mixitup.CommandMultimix.prototype=Object.create(mixitup.Base.prototype),mixitup.CommandMultimix.prototype.constructor=mixitup.CommandMultimix,mixitup.CommandFilter=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.selector="",this.collection=null,this.action="show",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.CommandFilter),mixitup.CommandFilter.prototype=Object.create(mixitup.Base.prototype),mixitup.CommandFilter.prototype.constructor=mixitup.CommandFilter,mixitup.CommandSort=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.sortString="",this.attribute="",this.order="asc",this.collection=null,this.next=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.CommandSort),mixitup.CommandSort.prototype=Object.create(mixitup.Base.prototype),mixitup.CommandSort.prototype.constructor=mixitup.CommandSort,mixitup.CommandInsert=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.index=0,this.collection=[],this.position="before",this.sibling=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.CommandInsert),mixitup.CommandInsert.prototype=Object.create(mixitup.Base.prototype),mixitup.CommandInsert.prototype.constructor=mixitup.CommandInsert,mixitup.CommandRemove=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.targets=[],this.collection=[],this.callActions("afterConstruct"),h.seal(this)}
16,mixitup.BaseStatic.call(mixitup.CommandRemove),mixitup.CommandRemove.prototype=Object.create(mixitup.Base.prototype),mixitup.CommandRemove.prototype.constructor=mixitup.CommandRemove,mixitup.CommandChangeLayout=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.containerClassName="",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.CommandChangeLayout),mixitup.CommandChangeLayout.prototype=Object.create(mixitup.Base.prototype),mixitup.CommandChangeLayout.prototype.constructor=mixitup.CommandChangeLayout,mixitup.ControlDefinition=function(type,selector,live,parent){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.type=type,this.selector=selector,this.live=live||!1,this.parent=parent||"",this.callActions("afterConstruct"),h.freeze(this),h.seal(this)},mixitup.BaseStatic.call(mixitup.ControlDefinition),mixitup.ControlDefinition.prototype=Object.create(mixitup.Base.prototype),mixitup.ControlDefinition.prototype.constructor=mixitup.ControlDefinition,mixitup.controlDefinitions=[],mixitup.controlDefinitions.push(new mixitup.ControlDefinition("multimix","[data-filter][data-sort]")),mixitup.controlDefinitions.push(new mixitup.ControlDefinition("filter","[data-filter]")),mixitup.controlDefinitions.push(new mixitup.ControlDefinition("sort","[data-sort]")),mixitup.controlDefinitions.push(new mixitup.ControlDefinition("toggle","[data-toggle]")),mixitup.Control=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.el=null,this.selector="",this.bound=[],this.pending=-1,this.type="",this.status="inactive",this.filter="",this.sort="",this.canDisable=!1,this.handler=null,this.classNames=new mixitup.UiClassNames,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.Control),mixitup.Control.prototype=Object.create(mixitup.Base.prototype),h.extend(mixitup.Control.prototype,{constructor:mixitup.Control,init:function(el,type,selector){if(this.callActions("beforeInit",arguments),this.el=el,this.type=type,this.selector=selector,this.selector)this.status="live";else switch(this.canDisable="boolean"==typeof this.el.disable,this.type){case"filter":this.filter=this.el.getAttribute("data-filter");break;case"toggle":this.filter=this.el.getAttribute("data-toggle");break;case"sort":this.sort=this.el.getAttribute("data-sort");break;case"multimix":this.filter=this.el.getAttribute("data-filter"),this.sort=this.el.getAttribute("data-sort")}this.bindClick(),mixitup.controls.push(this),this.callActions("afterInit",arguments)},isBound:function(mixer){var isBound;return this.callActions("beforeIsBound",arguments),isBound=this.bound.indexOf(mixer)>-1,this.callFilters("afterIsBound",isBound,arguments)},addBinding:function(mixer){this.callActions("beforeAddBinding",arguments),this.isBound()||this.bound.push(mixer),this.callActions("afterAddBinding",arguments)},removeBinding:function(mixer){var removeIndex=-1;this.callActions("beforeRemoveBinding",arguments),(removeIndex=this.bound.indexOf(mixer))>-1&&this.bound.splice(removeIndex,1),this.bound.length<1&&(this.unbindClick(),removeIndex=mixitup.controls.indexOf(this),mixitup.controls.splice(removeIndex,1),"active"===this.status&&this.renderStatus(this.el,"inactive")),this.callActions("afterRemoveBinding",arguments)},bindClick:function(){var self=this;this.callActions("beforeBindClick",arguments),self.handler=function(e){self.handleClick(e)},h.on(self.el,"click",self.handler),this.callActions("afterBindClick",arguments)},unbindClick:function(){this.callActions("beforeUnbindClick",arguments),h.off(this.el,"click",this.handler),this.handler=null,this.callActions("afterUnbindClick",arguments)},handleClick:function(e){var button=null,mixer=null,isActive=!1,command={},clone=null,commands=[],i=-1;if(this.callActions("beforeHandleClick",arguments),this.pending=0,mixer=this.bound[0],button=this.selector?h.closestParent(e.target,mixer.config.selectors.control+this.selector,!0,mixer.dom.document):this.el){switch(this.type){case"filter":command.filter=this.filter||button.getAttribute("data-filter");break;case"sort":command.sort=this.sort||button.getAttribute("data-sort");break;case"multimix":command.filter=this.filter||button.getAttribute("data-filter"),command.sort=this.sort||button.getAttribute("data-sort");break;case"toggle":command.filter=this.filter||button.getAttribute("data-toggle"),isActive="live"===this.status?h.hasClass(button,this.classNames.active):"active"===this.status}for(i=0;i<this.bound.length;i++)clone=new mixitup.CommandMultimix,h.extend(clone,command),commands.push(clone);for(commands=this.callFilters("commandsHandleClick",commands,arguments),this.pending=this.bound.length,i=0;mixer=this.bound[i];i++)(command=commands[i])&&(mixer.lastClicked||(mixer.lastClicked=button),mixitup.events.fire("mixClick",mixer.dom.container,{state:mixer.state,instance:mixer,originalEvent:e,control:mixer.lastClicked},mixer.dom.document),"function"==typeof mixer.config.callbacks.onMixClick&&!1===mixer.config.callbacks.onMixClick.call(mixer.lastClicked,mixer.state,e,mixer)||("toggle"===this.type?isActive?mixer.toggleOff(command.filter):mixer.toggleOn(command.filter):mixer.multimix(command)));this.callActions("afterHandleClick",arguments)}else this.callActions("afterHandleClick",arguments)},update:function(command,toggleArray){var actions=new mixitup.CommandMultimix;this.callActions("beforeUpdate",arguments),this.pending--,this.pending=Math.max(0,this.pending),this.pending>0||("live"===this.status?this.updateLive(command,toggleArray):(actions.sort=this.sort,actions.filter=this.filter,this.callFilters("actionsUpdate",actions,arguments),this.parseStatusChange(this.el,command,actions,toggleArray)),this.callActions("afterUpdate",arguments))},updateLive:function(command,toggleArray){var controlButtons,actions=null,button=null,i=-1;if(this.callActions("beforeUpdateLive",arguments),this.el){for(controlButtons=this.el.querySelectorAll(this.selector),i=0;button=controlButtons[i];i++){switch(actions=new mixitup.CommandMultimix,this.type){case"filter":actions.filter=button.getAttribute("data-filter");break;case"sort":actions.sort=button.getAttribute("data-sort");break;case"multimix":actions.filter=button.getAttribute("data-filter"),actions.sort=button.getAttribute("data-sort");break;case"toggle":actions.filter=button.getAttribute("data-toggle")}actions=this.callFilters("actionsUpdateLive",actions,arguments),this.parseStatusChange(button,command,actions,toggleArray)}this.callActions("afterUpdateLive",arguments)}},parseStatusChange:function(button,command,actions,toggleArray){var alias="",i=-1;switch(this.callActions("beforeParseStatusChange",arguments),this.type){case"filter":command.filter===actions.filter?this.renderStatus(button,"active"):this.renderStatus(button,"inactive");break;case"multimix":command.sort===actions.sort&&command.filter===actions.filter?this.renderStatus(button,"active"):this.renderStatus(button,"inactive");break;case"sort":command.sort.match(/:asc/g)&&(alias=command.sort.replace(/:asc/g,"")),command.sort===actions.sort||alias===actions.sort?this.renderStatus(button,"active"):this.renderStatus(button,"inactive");break;case"toggle":for(toggleArray.length<1&&this.renderStatus(button,"inactive"),command.filter===actions.filter&&this.renderStatus(button,"active"),i=0;i<toggleArray.length;i++){if(toggleArray[i]===actions.filter){this.renderStatus(button,"active");break}this.renderStatus(button,"inactive")}}this.callActions("afterParseStatusChange",arguments)},renderStatus:function(button,status){switch(this.callActions("beforeRenderStatus",arguments),status){case"active":h.addClass(button,this.classNames.active),h.removeClass(button,this.classNames.disabled),this.canDisable&&(this.el.disabled=!1);break;case"inactive":h.removeClass(button,this.classNames.active),h.removeClass(button,this.classNames.disabled),this.canDisable&&(this.el.disabled=!1);break;case"disabled":this.canDisable&&(this.el.disabled=!0),h.addClass(button,this.classNames.disabled),h.removeClass(button,this.classNames.active)}"live"!==this.status&&(this.status=status),this.callActions("afterRenderStatus",arguments)}}),mixitup.controls=[],mixitup.StyleData=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.x=0,this.y=0,this.top=0,this.right=0,this.bottom=0,this.left=0,this.width=0,this.height=0,this.marginRight=0,this.marginBottom=0,this.opacity=0,this.scale=new mixitup.TransformData,this.translateX=new mixitup.TransformData,this.translateY=new mixitup.TransformData,this.translateZ=new mixitup.TransformData,this.rotateX=new mixitup.TransformData,this.rotateY=ne
16w mixitup.TransformData,this.rotateZ=new mixitup.TransformData,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.StyleData),mixitup.StyleData.prototype=Object.create(mixitup.Base.prototype),mixitup.StyleData.prototype.constructor=mixitup.StyleData,mixitup.TransformData=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.value=0,this.unit="",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.TransformData),mixitup.TransformData.prototype=Object.create(mixitup.Base.prototype),mixitup.TransformData.prototype.constructor=mixitup.TransformData,mixitup.TransformDefaults=function(){mixitup.StyleData.apply(this),this.callActions("beforeConstruct"),this.scale.value=.01,this.scale.unit="",this.translateX.value=20,this.translateX.unit="px",this.translateY.value=20,this.translateY.unit="px",this.translateZ.value=20,this.translateZ.unit="px",this.rotateX.value=90,this.rotateX.unit="deg",this.rotateY.value=90,this.rotateY.unit="deg",this.rotateX.value=90,this.rotateX.unit="deg",this.rotateZ.value=180,this.rotateZ.unit="deg",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.TransformDefaults),mixitup.TransformDefaults.prototype=Object.create(mixitup.StyleData.prototype),mixitup.TransformDefaults.prototype.constructor=mixitup.TransformDefaults,mixitup.transformDefaults=new mixitup.TransformDefaults,mixitup.EventDetail=function(){this.state=null,this.futureState=null,this.instance=null,this.originalEvent=null},mixitup.Events=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.mixStart=null,this.mixBusy=null,this.mixEnd=null,this.mixFail=null,this.mixClick=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.Events),mixitup.Events.prototype=Object.create(mixitup.Base.prototype),mixitup.Events.prototype.constructor=mixitup.Events,mixitup.Events.prototype.fire=function(eventType,el,detail,doc){var event,eventDetail=new mixitup.EventDetail;if(this.callActions("beforeFire",arguments),void 0===this[eventType])throw new Error('Event type "'+eventType+'" not found.');eventDetail.state=new mixitup.State,h.extend(eventDetail.state,detail.state),detail.futureState&&(eventDetail.futureState=new mixitup.State,h.extend(eventDetail.futureState,detail.futureState)),eventDetail.instance=detail.instance,detail.originalEvent&&(eventDetail.originalEvent=detail.originalEvent),event=h.getCustomEvent(eventType,eventDetail,doc),this.callFilters("eventFire",event,arguments),el.dispatchEvent(event)},mixitup.events=new mixitup.Events,mixitup.QueueItem=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.args=[],this.instruction=null,this.triggerElement=null,this.deferred=null,this.isToggling=!1,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.QueueItem),mixitup.QueueItem.prototype=Object.create(mixitup.Base.prototype),mixitup.QueueItem.prototype.constructor=mixitup.QueueItem,mixitup.Mixer=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.config=new mixitup.Config,this.id="",this.isBusy=!1,this.isToggling=!1,this.incPadding=!0,this.controls=[],this.targets=[],this.origOrder=[],this.cache={},this.toggleArray=[],this.targetsMoved=0,this.targetsImmovable=0,this.targetsBound=0,this.targetsDone=0,this.staggerDuration=0,this.effectsIn=null,this.effectsOut=null,this.transformIn=[],this.transformOut=[],this.queue=[],this.state=null,this.lastOperation=null,this.lastClicked=null,this.userCallback=null,this.userDeferred=null,this.dom=new mixitup.MixerDom,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.Mixer),mixitup.Mixer.prototype=Object.create(mixitup.Base.prototype),h.extend(mixitup.Mixer.prototype,{constructor:mixitup.Mixer,attach:function(container,document,id,config){var target=null,i=-1;for(this.callActions("beforeAttach",arguments),this.id=id,config&&h.extend(this.config,config,!0,!0),this.sanitizeConfig(),this.cacheDom(container,document),this.config.layout.containerClassName&&h.addClass(this.dom.container,this.config.layout.containerClassName),mixitup.features.has.transitions||(this.config.animation.enable=!1),void 0===window.console&&(this.config.debug.showWarnings=!1),this.config.data.uidKey&&(this.config.controls.enable=!1),this.indexTargets(),this.state=this.getInitialState(),i=0;target=this.lastOperation.toHide[i];i++)target.hide();this.config.controls.enable&&(this.initControls(),this.buildToggleArray(null,this.state),this.updateControls({filter:this.state.activeFilter,sort:this.state.activeSort})),this.parseEffects(),this.callActions("afterAttach",arguments)},sanitizeConfig:function(){this.callActions("beforeSanitizeConfig",arguments),this.config.controls.scope=this.config.controls.scope.toLowerCase().trim(),this.config.controls.toggleLogic=this.config.controls.toggleLogic.toLowerCase().trim(),this.config.controls.toggleDefault=this.config.controls.toggleDefault.toLowerCase().trim(),this.config.animation.effects=this.config.animation.effects.trim(),this.callActions("afterSanitizeConfig",arguments)},getInitialState:function(){var state=new mixitup.State,operation=new mixitup.Operation;if(this.callActions("beforeGetInitialState",arguments),state.activeContainerClassName=this.config.layout.containerClassName,this.config.load.dataset){if(!this.config.data.uidKey||"string"!=typeof this.config.data.uidKey)throw new TypeError(mixitup.messages.errorConfigDataUidKeyNotSet());
16operation.startDataset=operation.newDataset=state.activeDataset=this.config.load.dataset.slice(),operation.startContainerClassName=operation.newContainerClassName=state.activeContainerClassName,operation.show=this.targets.slice(),state=this.callFilters("stateGetInitialState",state,arguments)}else state.activeFilter=this.parseFilterArgs([this.config.load.filter]).command,state.activeSort=this.parseSortArgs([this.config.load.sort]).command,state.totalTargets=this.targets.length,(state=this.callFilters("stateGetInitialState",state,arguments)).activeSort.collection||state.activeSort.attribute||"random"===state.activeSort.order||"desc"===state.activeSort.order?(operation.newSort=state.activeSort,this.sortOperation(operation),this.printSort(!1,operation),this.targets=operation.newOrder):operation.startOrder=operation.newOrder=this.targets,operation.startFilter=operation.newFilter=state.activeFilter,operation.startSort=operation.newSort=state.activeSort,operation.startContainerClassName=operation.newContainerClassName=state.activeContainerClassName,"all"===operation.newFilter.selector?operation.newFilter.selector=this.config.selectors.target:"none"===operation.newFilter.selector&&(operation.newFilter.selector="");return operation=this.callFilters("operationGetInitialState",operation,[state]),this.lastOperation=operation,operation.newFilter&&this.filterOperation(operation),state=this.buildState(operation)},cacheDom:function(el,document){this.callActions("beforeCacheDom",arguments),this.dom.document=document,this.dom.body=this.dom.document.querySelector("body"),this.dom.container=el,this.dom.parent=el,this.callActions("afterCacheDom",arguments)},indexTargets:function(){var dataset,target=null,el=null,i=-1;if(this.callActions("beforeIndexTargets",arguments),this.dom.targets=this.config.layout.allowNestedTargets?this.dom.container.querySelectorAll(this.config.selectors.target):h.children(this.dom.container,this.config.selectors.target,this.dom.document),this.dom.targets=h.arrayFromList(this.dom.targets),this.targets=[],(dataset=this.config.load.dataset)&&dataset.length!==this.dom.targets.length)throw new Error(mixitup.messages.errorDatasetPrerenderedMismatch());if(this.dom.targets.length){for(i=0;el=this.dom.targets[i];i++)(target=new mixitup.Target).init(el,this,dataset?dataset[i]:void 0),target.isInDom=!0,this.targets.push(target);this.dom.parent=this.dom.targets[0].parentElement===this.dom.container?this.dom.container:this.dom.targets[0].parentElement}this.origOrder=this.targets,this.callActions("afterIndexTargets",arguments)},initControls:function(){var definition="",controlElements=null,el=null,parent=null,delagators=null,control=null,i=-1,j=-1;switch(this.callActions("beforeInitControls",arguments),this.config.controls.scope){case"local":parent=this.dom.container;break;case"global":parent=this.dom.document;break;default:throw new Error(mixitup.messages.errorConfigInvalidControlsScope())}for(i=0;definition=mixitup.controlDefinitions[i];i++)if(this.config.controls.live||definition.live){if(definition.parent){if(!(delagators=this.dom[definition.parent])||delagators.length<0)continue;"number"!=typeof delagators.length&&(delagators=[delagators])}else delagators=[parent];for(j=0;el=delagators[j];j++)control=this.getControl(el,definition.type,definition.selector),this.controls.push(control)}else for(controlElements=parent.querySelectorAll(this.config.selectors.control+definition.selector),j=0;el=controlElements[j];j++)(control=this.getControl(el,definition.type,""))&&this.controls.push(control);this.callActions("afterInitControls",arguments)},getControl:function(el,type,selector){var control=null,i=-1;if(this.callActions("beforeGetControl",arguments),!selector)for(i=0;control=mixitup.controls[i];i++){if(control.el===el&&control.isBound(this))return this.callFilters("controlGetControl",null,arguments);if(control.el===el&&control.type===type&&control.selector===selector)return control.addBinding(this),this.callFilters("controlGetControl",control,arguments)}return(control=new mixitup.Control).init(el,type,selector),control.classNames.base=h.getClassname(this.config.classNames,type),control.classNames.active=h.getClassname(this.config.classNames,type,this.config.classNames.modifierActive),control.classNames.disabled=h.getClassname(this.config.classNames,type,this.config.classNames.modifierDisabled),control.addBinding(this),this.callFilters("controlGetControl",control,arguments)},getToggleSelector:function(){var delineator="or"===this.config.controls.toggleLogic?", ":"",toggleSelector="";return this.callActions("beforeGetToggleSelector",arguments),this.toggleArray=h.clean(this.toggleArray),""===(toggleSelector=this.toggleArray.join(delineator))&&(toggleSelector=this.config.controls.toggleDefault),this.callFilters("selectorGetToggleSelector",toggleSelector,arguments)},buildToggleArray:function(command,state){var activeFilterSelector="";if(this.callActions("beforeBuildToggleArray",arguments),command&&command.filter)activeFilterSelector=command.filter.selector.replace(/\s/g,"");else{if(!state)return;activeFilterSelector=state.activeFilter.selector.replace(/\s/g,"")}activeFilterSelector!==this.config.selectors.target&&"all"!==activeFilterSelector||(activeFilterSelector=""),"or"===this.config.controls.toggleLogic?this.toggleArray=activeFilterSelector.split(","):this.toggleArray=this.splitCompoundSelector(activeFilterSelector),this.toggleArray=h.clean(this.toggleArray),this.callActions("afterBuildToggleArray",arguments)},splitCompoundSelector:function(compoundSelector){var partials=compoundSelector.split(/([\.\[])/g),toggleArray=[],selector="",i=-1;for(""===partials[0]&&partials.shift(),i=0;i<partials.length;i++)i%2==0&&(selector=""),selector+=partials[i],i%2!=0&&toggleArray.push(selector);return toggleArray},updateControls:function(command){var control=null,output=new mixitup.CommandMultimix,i=-1;for(this.callActions("beforeUpdateControls",arguments),command.filter?output.f
16ilter=command.filter.selector:output.filter=this.state.activeFilter.selector,command.sort?output.sort=this.buildSortString(command.sort):output.sort=this.buildSortString(this.state.activeSort),output.filter===this.config.selectors.target&&(output.filter="all"),""===output.filter&&(output.filter="none"),h.freeze(output),i=0;control=this.controls[i];i++)control.update(output,this.toggleArray);this.callActions("afterUpdateControls",arguments)},buildSortString:function(command){var output="";return output+=command.sortString,command.next&&(output+=" "+this.buildSortString(command.next)),output},insertTargets:function(command,operation){var nextSibling,insertionIndex=-1,frag=null,target=null,el=null,i=-1;if(this.callActions("beforeInsertTargets",arguments),void 0===command.index&&(command.index=0),nextSibling=this.getNextSibling(command.index,command.sibling,command.position),frag=this.dom.document.createDocumentFragment(),insertionIndex=nextSibling?h.index(nextSibling,this.config.selectors.target):this.targets.length,command.collection){for(i=0;el=command.collection[i];i++){if(this.dom.targets.indexOf(el)>-1)throw new Error(mixitup.messages.errorInsertPreexistingElement());el.style.display="none",frag.appendChild(el),frag.appendChild(this.dom.document.createTextNode(" ")),h.isElement(el,this.dom.document)&&el.matches(this.config.selectors.target)&&((target=new mixitup.Target).init(el,this),target.isInDom=!0,this.targets.splice(insertionIndex,0,target),insertionIndex++)}this.dom.parent.insertBefore(frag,nextSibling)}operation.startOrder=this.origOrder=this.targets,this.callActions("afterInsertTargets",arguments)},getNextSibling:function(index,sibling,position){var element=null;return index=Math.max(index,0),sibling&&"before"===position?element=sibling:sibling&&"after"===position?element=sibling.nextElementSibling||null:this.targets.length>0&&void 0!==index?element=index<this.targets.length||!this.targets.length?this.targets[index].dom.el:this.targets[this.targets.length-1].dom.el.nextElementSibling:0===this.targets.length&&this.dom.parent.children.length>0&&(this.config.layout.siblingAfter?element=this.config.layout.siblingAfter:this.config.layout.siblingBefore?element=this.config.layout.siblingBefore.nextElementSibling:this.dom.parent.children[0]),this.callFilters("elementGetNextSibling",element,arguments)},filterOperation:function(operation){var action,testResult=!1,index=-1,target=null,i=-1;for(this.callActions("beforeFilterOperation",arguments),action=operation.newFilter.action,i=0;target=operation.newOrder[i];i++)testResult=operation.newFilter.collection?operation.newFilter.collection.indexOf(target.dom.el)>-1:""!==operation.newFilter.selector&&target.dom.el.matches(operation.newFilter.selector),this.evaluateHideShow(testResult,target,action,operation);if(operation.toRemove.length)for(i=0;target=operation.show[i];i++)operation.toRemove.indexOf(target)>-1&&(operation.show.splice(i,1),(index=operation.toShow.indexOf(target))>-1&&operation.toShow.splice(index,1),operation.toHide.push(target),operation.hide.push(target),i--);operation.matching=operation.show.slice(),0===operation.show.length&&""!==operation.newFilter.selector&&0!==this.targets.length&&(operation.hasFailed=!0),this.callActions("afterFilterOperation",arguments)},evaluateHideShow:function(testResult,target,action,operation){var filteredTestResult,args=Array.prototype.slice.call(arguments,1);filteredTestResult=this.callFilters("testResultEvaluateHideShow",testResult,args),this.callActions("beforeEvaluateHideShow",arguments),!0===filteredTestResult&&"show"===action||!1===filteredTestResult&&"hide"===action?(operation.show.push(target),!target.isShown&&operation.toShow.push(target)):(operation.hide.push(target),target.isShown&&operation.toHide.push(target)),this.callActions("afterEvaluateHideShow",arguments)},sortOperation:function(operation){var self=this,newOrder=[],target=null,el=null,i=-1;if(self.callActions("beforeSortOperation",arguments),operation.startOrder=self.targets,operation.newSort.collection){for(newOrder=[],i=0;el=operation.newSort.collection[i];i++){if(self.dom.targets.indexOf(el)<0)throw new Error(mixitup.messages.errorSort
16NonExistentElement());(target=new mixitup.Target).init(el,self),target.isInDom=!0,newOrder.push(target)}operation.newOrder=newOrder}else"random"===operation.newSort.order?operation.newOrder=h.arrayShuffle(operation.startOrder):""===operation.newSort.attribute?(operation.newOrder=self.origOrder.slice(),"desc"===operation.newSort.order&&operation.newOrder.reverse()):(operation.newOrder=operation.startOrder.slice(),operation.newOrder.sort(function(a,b){return self.compare(a,b,operation.newSort)}));h.isEqualArray(operation.newOrder,operation.startOrder)&&(operation.willSort=!1),self.callActions("afterSortOperation",arguments)},compare:function(a,b,command){var order=command.order,attrA=this.getAttributeValue(a,command.attribute),attrB=this.getAttributeValue(b,command.attribute);return isNaN(1*attrA)||isNaN(1*attrB)?(attrA=attrA.toLowerCase(),attrB=attrB.toLowerCase()):(attrA*=1,attrB*=1),attrA<attrB?"asc"===order?-1:1:attrA>attrB?"asc"===order?1:-1:attrA===attrB&&command.next?this.compare(a,b,command.next):0},getAttributeValue:function(target,attribute){var value;return null===(value=target.dom.el.getAttribute("data-"+attribute))&&this.config.debug.showWarnings&&console.warn(mixitup.messages.warningInconsistentSortingAttributes({attribute:"data-"+attribute})),this.callFilters("valueGetAttributeValue",value||0,arguments)},printSort:function(isResetting,operation){var whitespace,startOrder=isResetting?operation.newOrder:operation.startOrder,newOrder=isResetting?operation.startOrder:operation.newOrder,nextSibling=startOrder.length?startOrder[startOrder.length-1].dom.el.nextElementSibling:null,frag=window.document.createDocumentFragment(),target=null,el=null,i=-1;for(this.callActions("beforePrintSort",arguments),i=0;target=startOrder[i];i++)"absolute"!==(el=target.dom.el).style.position&&(h.removeWhitespace(el.previousSibling),el.parentElement.removeChild(el));for((whitespace=nextSibling?nextSibling.previousSibling:this.dom.parent.lastChild)&&"#text"===whitespace.nodeName&&h.removeWhitespace(whitespace),i=0;target=newOrder[i];i++)el=target.dom.el,h.isElement(frag.lastChild)&&frag.appendChild(window.document.createTextNode(" ")),frag.appendChild(el);this.dom.parent.firstChild&&this.dom.parent.firstChild!==nextSibling&&frag.insertBefore(window.document.createTextNode(" "),frag.childNodes[0]),nextSibling?(frag.appendChild(window.document.createTextNode(" ")),this.dom.parent.insertBefore(frag,nextSibling)):this.dom.parent.appendChild(frag),this.callActions("afterPrintSort",arguments)},parseSortString:function(sortString,command){var rules=sortString.split(" "),current=command,rule=[],i=-1;for(i=0;i<rules.length;i++){switch(rule=rules[i].split(":"),current.sortString=rules[i],current.attribute=h.dashCase(rule[0]),current.order=rule[1]||"asc",current.attribute){case"default":current.attribute="";break;case"random":current.attribute="",current.order="random"}if(!current.attribute||"random"===current.order)break;i<rules.length-1&&(current.next=new mixitup.CommandSort,h.freeze(current),current=current.next)}return this.callFilters("commandsParseSort",command,arguments)},parseEffects:function(){var transformName="",effectsIn=this.config.animation.effectsIn||this.config.animation.effects,effectsOut=this.config.animation.effectsOut||this.config.animation.effects;for(transformName in this.callActions("beforeParseEffects",arguments),this.effectsIn=new mixitup.StyleData,this.effectsOut=new mixitup.StyleData,this.transformIn=[],this.transformOut=[],this.effectsIn.opacity=this.effectsOut.opacity=1,this.parseEffect("fade",effectsIn,this.effectsIn,this.transformIn),this.parseEffect("fade",effectsOut,this.effectsOut,this.transformOut,!0),mixitup.transformDefaults)mixitup.transformDefaults[transformName]instanceof mixitup.TransformData&&(this.parseEffect(transformName,effectsIn,this.effectsIn,this.transformIn),this.parseEffect(transformName,effectsOut,this.effectsOut,this.transformOut,!0));this.parseEffect("stagger",effectsIn,this.effectsIn,this.transformIn),this.parseEffect("stagger",effectsOut,this.effectsOut,this.transformOut,!0),this.callActions("afterParseEffects",arguments)},parseEffect:function(effectName,effectString,effects,transform,isOut){var propIndex,str="",val="",units=["%","px","em","rem","vh","vw","deg"],unit="",i=-1;if(this.callActions("beforeParseEffect",arguments),"string"!=typeof effectString)throw new TypeError(mixitup.messages.errorConfigInvalidAnimationEffects());if(effectString.indexOf(effectName)<0)"stagger"===effectName&&(this.staggerDuration=0);else{switch((propIndex=effectString.indexOf(effectName+"("))>-1&&(str=effectString.substring(propIndex),val=/\(([^)]+)\)/.exec(str)[1]),effectName){case"fade":effects.opacity=val?parseFloat(val):0;break;case"stagger":this.staggerDuration=val?parseFloat(val):100;break;default:if(isOut&&this.config.animation.reverseOut&&"scale"!==effectName?effects[effectName].value=-1*(val?parseFloat(val):mixitup.transformDefaults[effectName].value):effects[effectName].value=val?parseFloat(val):mixitup.transformDefaults[effectName].value,val){for(i=0;unit=units[i];i++)if(val.indexOf(unit)>-1){effects[effectName].unit=unit;break}}else effects[effectName].unit=mixitup.transformDefaults[effectName].unit;transform.push(effectName+"("+effects[effectName].value+effects[effectName].unit+")")}this.callActions("afterParseEffect",arguments)}},buildState:function(operation){var state=new mixitup.State,target=null,i=-1;for(this.callActions("beforeBuildState",arguments),i=0;target=this.targets[i];i++)(!operation.toRemove.length||operation.toRemove.indexOf(target)<0)&&state.targets.push(target.dom.el);for(i=0;
16target=operation.matching[i];i++)state.matching.push(target.dom.el);for(i=0;target=operation.show[i];i++)state.show.push(target.dom.el);for(i=0;target=operation.hide[i];i++)(!operation.toRemove.length||operation.toRemove.indexOf(target)<0)&&state.hide.push(target.dom.el);return state.id=this.id,state.container=this.dom.container,state.activeFilter=operation.newFilter,state.activeSort=operation.newSort,state.activeDataset=operation.newDataset,state.activeContainerClassName=operation.newContainerClassName,state.hasFailed=operation.hasFailed,state.totalTargets=this.targets.length,state.totalShow=operation.show.length,state.totalHide=operation.hide.length,state.totalMatching=operation.matching.length,state.triggerElement=operation.triggerElement,this.callFilters("stateBuildState",state,arguments)},goMix:function(shouldAnimate,operation){var self=this,deferred=null;return self.callActions("beforeGoMix",arguments),self.config.animation.duration&&self.config.animation.effects&&h.isVisible(self.dom.container)||(shouldAnimate=!1),operation.toShow.length||operation.toHide.length||operation.willSort||operation.willChangeLayout||(shouldAnimate=!1),operation.startState.show.length||operation.show.length||(shouldAnimate=!1),mixitup.events.fire("mixStart",self.dom.container,{state:operation.startState,futureState:operation.newState,instance:self},self.dom.document),"function"==typeof self.config.callbacks.onMixStart&&self.config.callbacks.onMixStart.call(self.dom.container,operation.startState,operation.newState,self),h.removeClass(self.dom.container,h.getClassname(self.config.classNames,"container",self.config.classNames.modifierFailed)),deferred=self.userDeferred?self.userDeferred:self.userDeferred=h.defer(mixitup.libraries),self.isBusy=!0,shouldAnimate&&mixitup.features.has.transitions?(self.config.animation.applyPerspective&&(self.dom.parent.style[mixitup.features.perspectiveProp]=self.config.animation.perspectiveDistance,self.dom.parent.style[mixitup.features.perspectiveOriginProp]=self.config.animation.perspectiveOrigin),self.config.animation.animateResizeContainer&&operation.startHeight!==operation.newHeight&&operation.viewportDeltaY!==operation.startHeight-operation.newHeight&&(self.dom.parent.style.height=operation.startHeight+"px"),self.config.animation.animateResizeContainer&&operation.startWidth!==operation.newWidth&&operation.viewportDeltaX!==operation.startWidth-operation.newWidth&&(self.dom.parent.style.width=operation.startWidth+"px"),operation.startHeight===operation.newHeight&&(self.dom.parent.style.height=operation.startHeight+"px"),operation.startWidth===operation.newWidth&&(self.dom.parent.style.width=operation.startWidth+"px"),operation.startHeight===operation.newHeight&&operation.startWidth===operation.newWidth&&(self.dom.parent.style.overflow="hidden"),requestAnimationFrame(function(){self.moveTargets(operation)}),self.callFilters("promiseGoMix",deferred.promise,arguments)):(self.config.debug.fauxAsync?setTimeout(function(){self.cleanUp(operation)},self.config.animation.duration):self.cleanUp(operation),self.callFilters("promiseGoMix",deferred.promise,arguments))},getStartMixData:function(operation){var parentStyle=window.getComputedStyle(this.dom.parent),parentRect=this.dom.parent.getBoundingClientRect(),target=null,data={},i=-1,boxSizing=parentStyle[mixitup.features.boxSizingProp];for(this.incPadding="border-box"===boxSizing,this.callActions("beforeGetStartMixData",arguments),i=0;target=operation.show[i];i++)data=target.getPosData(),operation.showPosData[i]={startPosData:data};for(i=0;target=operation.toHide[i];i++)data=target.getPosData(),operation.toHidePosData[i]={startPosData:data};operation.startX=parentRect.left,operation.startY=parentRect.top,operation.startHeight=this.incPadding?parentRect.height:parentRect.height-parseFloat(parentStyle.paddingTop)-parseFloat(parentStyle.paddingBottom)-parseFloat(parentStyle.borderTop)-parseFloat(parentStyle.borderBottom),operation.startWidth=this.incPadding?parentRect.width:parentRect.width-parseFloat(parentStyle.paddingLeft)-parseFloat(parentStyle.paddingRight)-parseFloat(parentStyle.borderLeft)-parseFloat(parentStyle.borderRight),this.callActions("afterGetStartMixData",arguments)},setInter:function(operation){var target=null,i=-1;for(this.callActions("beforeSetInter",arguments),this.config.animation.clampHeight&&(this.dom.parent.style.height=operation.startHeight+"px",this.dom.parent.style.overflow="hidden"),this.config.animation.clampWidth&&(this.dom.parent.style.width=operation.startWidth+"px",this.dom.parent.style.overflow="hidden"),i=0;
16target=operation.toShow[i];i++)target.show();operation.willChangeLayout&&(h.removeClass(this.dom.container,operation.startContainerClassName),h.addClass(this.dom.container,operation.newContainerClassName)),this.callActions("afterSetInter",arguments)},getInterMixData:function(operation){var target=null,i=-1;for(this.callActions("beforeGetInterMixData",arguments),i=0;target=operation.show[i];i++)operation.showPosData[i].interPosData=target.getPosData();for(i=0;target=operation.toHide[i];i++)operation.toHidePosData[i].interPosData=target.getPosData();this.callActions("afterGetInterMixData",arguments)},setFinal:function(operation){var target=null,i=-1;for(this.callActions("beforeSetFinal",arguments),operation.willSort&&this.printSort(!1,operation),i=0;target=operation.toHide[i];i++)target.hide();this.callActions("afterSetFinal",arguments)},getFinalMixData:function(operation){var parentRect,parentStyle=null,target=null,i=-1;for(this.callActions("beforeGetFinalMixData",arguments),i=0;target=operation.show[i];i++)operation.showPosData[i].finalPosData=target.getPosData();for(i=0;target=operation.toHide[i];i++)operation.toHidePosData[i].finalPosData=target.getPosData();for((this.config.animation.clampHeight||this.config.animation.clampWidth)&&(this.dom.parent.style.height=this.dom.parent.style.width=this.dom.parent.style.overflow=""),this.incPadding||(parentStyle=window.getComputedStyle(this.dom.parent)),parentRect=this.dom.parent.getBoundingClientRect(),operation.newX=parentRect.left,operation.newY=parentRect.top,operation.newHeight=this.incPadding?parentRect.height:parentRect.height-parseFloat(parentStyle.paddingTop)-parseFloat(parentStyle.paddingBottom)-parseFloat(parentStyle.borderTop)-parseFloat(parentStyle.borderBottom),operation.newWidth=this.incPadding?parentRect.width:parentRect.width-parseFloat(parentStyle.paddingLeft)-parseFloat(parentStyle.paddingRight)-parseFloat(parentStyle.borderLeft)-parseFloat(parentStyle.borderRight),operation.viewportDeltaX=operation.docState.viewportWidth-this.dom.document.documentElement.clientWidth,operation.viewportDeltaY=operation.docState.viewportHeight-this.dom.document.documentElement.clientHeight,operation.willSort&&this.printSort(!0,operation),i=0;target=operation.toShow[i];i++)target.hide();for(i=0;target=operation.toHide[i];i++)target.show();operation.willChangeLayout&&(h.removeClass(this.dom.container,operation.newContainerClassName),h.addClass(this.dom.container,this.config.layout.containerClassName)),this.callActions("afterGetFinalMixData",arguments)},getTweenData:function(operation){var target=null,posData=null,effectNames=Object.getOwnPropertyNames(this.effectsIn),effectName="",effect=null,widthChange=-1,heightChange=-1,i=-1,j=-1;for(this.callActions("beforeGetTweenData",arguments),i=0;target=operation.show[i];i++)for((posData=operation.showPosData[i]).posIn=new mixitup.StyleData,posData.posOut=new mixitup.StyleData,posData.tweenData=new mixitup.StyleData,target.isShown?(posData.posIn.x=posData.startPosData.x-posData.interPosData.x,posData.posIn.y=p
16osData.startPosData.y-posData.interPosData.y):posData.posIn.x=posData.posIn.y=0,posData.posOut.x=posData.finalPosData.x-posData.interPosData.x,posData.posOut.y=posData.finalPosData.y-posData.interPosData.y,posData.posIn.opacity=target.isShown?1:this.effectsIn.opacity,posData.posOut.opacity=1,posData.tweenData.opacity=posData.posOut.opacity-posData.posIn.opacity,target.isShown||this.config.animation.nudge||(posData.posIn.x=posData.posOut.x,posData.posIn.y=posData.posOut.y),posData.tweenData.x=posData.posOut.x-posData.posIn.x,posData.tweenData.y=posData.posOut.y-posData.posIn.y,this.config.animation.animateResizeTargets&&(posData.posIn.width=posData.startPosData.width,posData.posIn.height=posData.startPosData.height,widthChange=(posData.startPosData.width||posData.finalPosData.width)-posData.interPosData.width,posData.posIn.marginRight=posData.startPosData.marginRight-widthChange,heightChange=(posData.startPosData.height||posData.finalPosData.height)-posData.interPosData.height,posData.posIn.marginBottom=posData.startPosData.marginBottom-heightChange,posData.posOut.width=posData.finalPosData.width,posData.posOut.height=posData.finalPosData.height,widthChange=(posData.finalPosData.width||posData.startPosData.width)-posData.interPosData.width,posData.posOut.marginRight=posData.finalPosData.marginRight-widthChange,heightChange=(posData.finalPosData.height||posData.startPosData.height)-posData.interPosData.height,posData.posOut.marginBottom=posData.finalPosData.marginBottom-heightChange,posData.tweenData.width=posData.posOut.width-posData.posIn.width,posData.tweenData.height=posData.posOut.height-posData.posIn.height,posData.tweenData.marginRight=posData.posOut.marginRight-posData.posIn.marginRight,posData.tweenData.marginBottom=posData.posOut.marginBottom-posData.posIn.marginBottom),j=0;effectName=effectNames[j];j++)(effect=this.effectsIn[effectName])instanceof mixitup.TransformData&&effect.value&&(posData.posIn[effectName].value=effect.value,posData.posOut[effectName].value=0,posData.tweenData[effectName].value=posData.posOut[effectName].value-posData.posIn[effectName].value,posData.posIn[effectName].unit=posData.posOut[effectName].unit=posData.tweenData[effectName].unit=effect.unit);for(i=0;target=operation.toHide[i];i++)for((posData=operation.toHidePosData[i]).posIn=new mixitup.StyleData,posData.posOut=new mixitup.StyleData,posData.tweenData=new mixitup.StyleData,posData.posIn.x=target.isShown?posData.startPosData.x-posData.interPosData.x:0,posData.posIn.y=target.isShown?posData.startPosData.y-posData.interPosData.y:0,posData.posOut.x=this.config.animation.nudge?0:posData.posIn.x,posData.posOut.y=this.config.animation.nudge?0:posData.posIn.y,posData.tweenData.x=posData.posOut.x-posData.posIn.x,posData.tweenData.y=posData.posOut.y-posData.posIn.y,this.config.animation.animateResizeTargets&&(posData.posIn.width=posData.startPosData.width,posData.posIn.height=posData.startPosData.height,widthChange=posData.startPosData.width-posData.interPosData.width,posData.posIn.marginRight=posData.startPosData.marginRight-widthChange,heightChange=posData.startPosData.height-posData.interPosData.height,posData.posIn.marginBottom=posData.startPosData.marginBottom-heightChange),posData.posIn.opacity=1,posData.posOut.opacity=this.effectsOut.opacity,posData.tweenData.opacity=posData.posOut.opacity-posData.posIn.opacity,j=0;effectName=effectNames[j];j++)(effect=this.effectsOut[effectName])instanceof mixitup.TransformData&&effect.value&&(posData.posIn[effectName].value=0,posData.posOut[effectName].value=effect.value,posData.tweenData[effectName].value=posData.posOut[effectName].value-posData.posIn[effectName].value,posData.posIn[effectName].unit=posData.posOut[effectName].unit=posData.tweenData[effectName].unit=effect.unit);this.callActions("afterGetTweenData",arguments)},moveTargets:function(operation){var self=this,target=null,moveData=null,posData=null,statusChange="",willTransition=!1,staggerIndex=-1,i=-1,checkProgress=self.checkProgress.bind(self);for(self.callActions("beforeMoveTargets",arguments),i=0;target=operation.show[i];i++)moveData=new mixitup.IMoveData,posData=operation.showPosData[i],statusChange=target.isShown?"none":"show",(willTransition=self.willTransition(statusChange,operation.hasEffect,posData.posIn,posData.posOut))&&staggerIndex++,target.show(),moveData.posIn=posData.posIn,moveData.posOut=posData.posOut,moveData.statusChange=statusChange,moveData.staggerIndex=staggerIndex,moveData.operation=operation,moveData.callback=willTransition?checkProgress:null,target.move(moveData);for(i=0;
16target=operation.toHide[i];i++)posData=operation.toHidePosData[i],moveData=new mixitup.IMoveData,statusChange="hide",willTransition=self.willTransition(statusChange,posData.posIn,posData.posOut),moveData.posIn=posData.posIn,moveData.posOut=posData.posOut,moveData.statusChange=statusChange,moveData.staggerIndex=i,moveData.operation=operation,moveData.callback=willTransition?checkProgress:null,target.move(moveData);self.config.animation.animateResizeContainer&&(self.dom.parent.style[mixitup.features.transitionProp]="height "+self.config.animation.duration+"ms ease, width "+self.config.animation.duration+"ms ease ",requestAnimationFrame(function(){operation.startHeight!==operation.newHeight&&operation.viewportDeltaY!==operation.startHeight-operation.newHeight&&(self.dom.parent.style.height=operation.newHeight+"px"),operation.startWidth!==operation.newWidth&&operation.viewportDeltaX!==operation.startWidth-operation.newWidth&&(self.dom.parent.style.width=operation.newWidth+"px")})),operation.willChangeLayout&&(h.removeClass(self.dom.container,self.config.layout.ContainerClassName),h.addClass(self.dom.container,operation.newContainerClassName)),self.callActions("afterMoveTargets",arguments)},hasEffect:function(){var EFFECTABLES=["scale","translateX","translateY","translateZ","rotateX","rotateY","rotateZ"],effectName="",effect=null,result=!1,i=-1;if(1!==this.effectsIn.opacity)return this.callFilters("resultHasEffect",!0,arguments);for(i=0;effectName=EFFECTABLES[i];i++)if(0!==("undefined"!==(effect=this.effectsIn[effectName]).value?effect.value:effect)){result=!0;break}return this.callFilters("resultHasEffect",result,arguments)},willTransition:function(statusChange,hasEffect,posIn,posOut){var result=!1;return result=!!h.isVisible(this.dom.container)&&(!!("none"!==statusChange&&hasEffect||posIn.x!==posOut.x||posIn.y!==posOut.y)||!!this.config.animation.animateResizeTargets&&(posIn.width!==posOut.width||posIn.height!==posOut.height||posIn.marginRight!==posOut.marginRight||posIn.marginTop!==posOut.marginTop)),this.callFilters("resultWillTransition",result,arguments)},checkProgress:function(operation){this.targetsDone++,this.targetsBound===this.targetsDone&&this.cleanUp(operation)},cleanUp:function(operation){var target=null,whitespaceBefore=null,whitespaceAfter=null,nextInQueue=null,i=-1;for(this.callActions("beforeCleanUp",arguments),this.targetsMoved=this.targetsImmovable=this.targetsBound=this.targetsDone=0,i=0;target=operation.show[i];i++)target.cleanUp(),target.show();for(i=0;target=operation.toHide[i];i++)target.cleanUp(),target.hide();if(operation.willSort&&this.printSort(!1,operation),this.dom.parent.style[mixitup.features.transitionProp]=this.dom.parent.style.height=this.dom.parent.style.width=this.dom.parent.style.overflow=this.dom.parent.style[mixitup.features.perspectiveProp]=this.dom.parent.style[mixitup.features.perspectiveOriginProp]="",operation.willChangeLayout&&(h.removeClass(this.dom.container,operation.startContainerClassName),h.addClass(this.dom.container,operation.newContainerClassName)),operation.toRemove.length){for(i=0;target=this.targets[i];i++)operation.toRemove.indexOf(target)>-1&&((whitespaceBefore=target.dom.el.previousSibling)&&"#text"===whitespaceBefore.nodeName&&(whitespaceAfter=target.dom.el.nextSibling)&&"#text"===whitespaceAfter.nodeName&&h.removeWhitespace(whitespaceBefore),operation.willSort||this.dom.parent.removeChild(target.dom.el),this.targets.splice(i,1),target.isInDom=!1,i--);this.origOrder=this.targets}operation.willSort&&(this.targets=operation.newOrder),this.state=operation.newState,this.lastOperation=operation,this.dom.targets=this.state.targets,mixitup.events.fire("mixEnd",this.dom.container,{state:this.state,instance:this},this.dom.document),"function"==typeof this.config.callbacks.onMixEnd&&this.config.callbacks.onMixEnd.call(this.dom.container,this.state,this),operation.hasFailed&&(mixitup.events.fire("mixFail",this.dom.container,{state:this.state,instance:this},this.dom.document),"function"==typeof this.config.callbacks.onMixFail&&this.config.callbacks.onMixFail.call(this.dom.container,this.state,this),h.addClass(this.dom.container,h.getClassname(this.config.classNames,"container",this.config.classNames.modifierFailed))),"function"==typeof this.userCallback&&this.userCallback.call(this.dom.container,this.state,this),"function"==typeof this.userDeferred.resolve&&this.userDeferred.resolve(this.state),this.userCallback=null,this.userDeferred=null,this.lastClicked=null,this.isToggling=!1,this.isBusy=!1,this.queue.length&&(this.callActions("beforeReadQueueCleanUp",arguments),nextInQueue=this.queue.shift(),this.userDeferred=nextInQueue.deferred,this.isToggling=nextInQueue.isToggling,this.lastClicked=nextInQueue.triggerElement,nextInQueue.instruction.command instanceof mixitup.CommandMultimix?this.multimix.apply(this,nextInQueue.args):this.dataset.apply(this,nextInQueue.args)),this.callActions("afterCleanUp",arguments)},parseMultimixArgs:function(args){var instruction=new mixitup.UserInstruction,arg=null,i=-1;for(instruction.animate=this.config.animation.enable,instruction.command=new mixitup.CommandMultimix,i=0;i<args.length;i++)null!==(arg=args[i])&&("object"==typeof arg?h.extend(instruction.command,arg):"boolean"==typeof arg?instruction.animate=arg:"function"==typeof arg&&(instruction.callback=arg));return!instruction.command.insert||instruction.command.insert instanceof mixitup.CommandInsert||(instruction.command.insert=this.parseInsertArgs([instruction.command.insert]).command),!instruction.command.remove||instruction.command.remove instanceof mixitup.CommandRemove||(instruction.command.remove=this.parseRemoveArgs([instruction.command.remove]).command),!instruction.command.filter||instruction.command.filter instanceof mixitup.CommandFilter||(instruction.command.filter=this.parseFilterArgs([instruction.command.filter]).command),!instruction.command.sort||instruction.command.sort instanceof mixitup.CommandSort||(instruction.command.sort=this.parseSortArgs([instruction.command.sort]).command),!instruction.command.changeLayout||instruction.command.changeLayout instanceof mixitup.CommandChangeLayout||(instruction.command.changeLayout=this.parseChangeLayoutArgs([instruction.command.changeLayout]).command),instruction=this.callFilters("instructionParseMultimixArgs",instruction,arguments),h.freeze(instruction),instruction},parseFilterArgs:function(args){var instruction=new mixitup.UserInstruction,arg=null,i=-1;for(instruction.animate=this.config.animation.enable,instruction.command=new mixitup.CommandFilter,i=0;i<args.length;i++)"string"==typeof(arg=args[i])?instruction.command.selector=arg:null===arg?instruction.command.collection=[]:"object"==typeof arg&&h.isElement(arg,this.dom.document)?instruction.command.collection=[arg]:"object"==typeof arg&&void 0!==arg.length?
16instruction.command.collection=h.arrayFromList(arg):"object"==typeof arg?h.extend(instruction.command,arg):"boolean"==typeof arg?instruction.animate=arg:"function"==typeof arg&&(instruction.callback=arg);if(instruction.command.selector&&instruction.command.collection)throw new Error(mixitup.messages.errorFilterInvalidArguments());return instruction=this.callFilters("instructionParseFilterArgs",instruction,arguments),h.freeze(instruction),instruction},parseSortArgs:function(args){var instruction=new mixitup.UserInstruction,arg=null,sortString="",i=-1;for(instruction.animate=this.config.animation.enable,instruction.command=new mixitup.CommandSort,i=0;i<args.length;i++)if(null!==(arg=args[i]))switch(typeof arg){case"string":sortString=arg;break;case"object":arg.length&&(instruction.command.collection=h.arrayFromList(arg));break;case"boolean":instruction.animate=arg;break;case"function":instruction.callback=arg}return sortString&&(instruction.command=this.parseSortString(sortString,instruction.command)),instruction=this.callFilters("instructionParseSortArgs",instruction,arguments),h.freeze(instruction),instruction},parseInsertArgs:function(args){var instruction=new mixitup.UserInstruction,arg=null,i=-1;for(instruction.animate=this.config.animation.enable,instruction.command=new mixitup.CommandInsert,i=0;i<args.length;i++)null!==(arg=args[i])&&("number"==typeof arg?instruction.command.index=arg:"string"==typeof arg&&["before","after"].indexOf(arg)>-1?instruction.command.position=arg:"string"==typeof arg?instruction.command.collection=h.arrayFromList(h.createElement(arg).childNodes):"object"==typeof arg&&h.isElement(arg,this.dom.document)?instruction.command.collection.length?instruction.command.sibling=arg:instruction.command.collection=[arg]:"object"==typeof arg&&arg.length?instruction.command.collection.length?instruction.command.sibling=arg[0]:instruction.command.collection=arg:"object"==typeof arg&&arg.childNodes&&arg.childNodes.length?instruction.command.collection.length?instruction.command.sibling=arg.childNodes[0]:instruction.command.collection=h.arrayFromList(arg.childNodes):"object"==typeof arg?h.extend(instruction.command,arg):"boolean"==typeof arg?instruction.animate=arg:"function"==typeof arg&&(instruction.callback=arg));if(instruction.command.index&&instruction.command.sibling)throw new Error(mixitup.messages.errorInsertInvalidArguments());return!instruction.command.collection.length&&this.config.debug.showWarnings&&console.warn(mixitup.messages.warningInsertNoElements()),instruction=this.callFilters("instructionParseInsertArgs",instruction,arguments),h.freeze(instruction),instruction},parseRemoveArgs:function(args){var instruction=new mixitup.UserInstruction,target=null,arg=null,i=-1;for(instruction.animate=this.config.animation.enable,instruction.command=new mixitup.CommandRemove,i=0;i<args.length;i++)if(null!==(arg=args[i]))switch(typeof arg){case"number":this.targets[arg]&&(instruction.command.targets[0]=this.targets[arg]);break;case"string":instruction.command.collection=h.arrayFromList(this.dom.parent.querySelectorAll(arg));break;case"object":arg&&arg.length?instruction.command.collection=arg:h.isElement(arg,this.dom.document)?instruction.command.collection=[arg]:h.extend(instruction.command,arg);break;case"boolean":instruction.animate=arg;break;case"function":instruction.callback=arg}if(instruction.command.collection.length)for(i=0;target=this.targets[i];i++)instruction.command.collection.indexOf(target.dom.el)>-1&&instruction.command.targets.push(target);return!instruction.command.targets.length&&this.config.debug.showWarnings&&console.warn(mixitup.messages.warningRemoveNoElements()),h.freeze(instruction),instruction},parseDatasetArgs:function(args){var instruction=new mixitup.UserInstruction,arg=null,i=-1;for(instruction.animate=this.config.animation.enable,instruction.command=new mixitup.CommandDataset,i=0;i<args.length;i++)if(null!==(arg=args[i]))switch(typeof arg){case"object":Array.isArray(arg)||"number"==typeof arg.length?instruction.command.dataset=arg:h.extend(instruction.command,arg);break;case"boolean":instruction.animate=arg;break;case"function":instruction.callback=arg}return h.freeze(instruction),instruction},parseChangeLayoutArgs:function(args){var instruction=new mixitup.UserInstruction,arg=null,i=-1;for(instruction.animate=this.config.animation.enable,instruction.command=new mixitup.CommandChangeLayout,i=0;i<args.length;i++)if(null!==(arg=args[i]))switch(typeof arg){case"string":instruction.command.containerClassName=arg;break;case"object":h.extend(instruction.command,arg);break;case"boolean":instruction.animate=arg;break;case"function":instruction.callback=arg}return h.freeze(instruction),instruction},queueMix:function(queueItem){var deferred=null,toggleSelector="";return this.callActions("beforeQueueMix",arguments),deferred=h.defer(mixitup.libraries),this.config.animation.queue&&this.queue.length<this.config.animation.queueLimit?(queueItem.deferred=deferred,this.queue.push(queueItem),this.config.controls.enable&&(this.isToggling?(this.buildToggleArray(queueItem.instruction.command),toggleSelector=this.getToggleSelector(),this.updateControls({filter:{selector:toggleSelector}})):this.updateControls(queueItem.instruction.command))):(this.config.debug.showWarnings&&console.warn(mixitup.messages.warningMultimixInstanceQueueFull()),deferred.resolve(this.state),mixitup.events.fire("mixBusy",this.dom.container,{state:this.state,instance:this},this.dom.document),"function"==typeof this.config.callbacks.onMixBusy&&this.config.callbacks.onMixBusy.call(this.dom.container,this.state,this)),this.callFilters("promiseQueueMix",deferred.promise,arguments)},getDataOperation:function(newDataset){var operation=new mixitup.Operation,startDataset=[];if(operation=this.callFilters("operationUnmappedGetDataOperation",operation,arguments),this.dom.targets.length&&!(startDataset=this.state.activeDataset||[]).length)throw new Error(mixitup.messages.errorDatasetNotSet());return operation.id=h.randomHex(),operation.startState=this.state,operation.startDataset=startDataset,operation.newD
16ataset=newDataset.slice(),this.diffDatasets(operation),operation.startOrder=this.targets,operation.newOrder=operation.show,this.config.animation.enable&&(this.getStartMixData(operation),this.setInter(operation),operation.docState=h.getDocumentState(this.dom.document),this.getInterMixData(operation),this.setFinal(operation),this.getFinalMixData(operation),this.parseEffects(),operation.hasEffect=this.hasEffect(),this.getTweenData(operation)),this.targets=operation.show.slice(),operation.newState=this.buildState(operation),Array.prototype.push.apply(this.targets,operation.toRemove),operation=this.callFilters("operationMappedGetDataOperation",operation,arguments)},diffDatasets:function(operation){var persistantStartIds=[],persistantNewIds=[],insertedTargets=[],data=null,target=null,el=null,frag=null,nextEl=null,uids={},id="",i=-1;for(this.callActions("beforeDiffDatasets",arguments),i=0;data=operation.newDataset[i];i++){if(void 0===(id=data[this.config.data.uidKey])||id.toString().length<1)throw new TypeError(mixitup.messages.errorDatasetInvalidUidKey({uidKey:this.config.data.uidKey}));if(uids[id])throw new Error(mixitup.messages.errorDatasetDuplicateUid({uid:id}));uids[id]=!0,(target=this.cache[id])instanceof mixitup.Target?(this.config.data.dirtyCheck&&!h.deepEquals(data,target.data)&&(el=target.render(data),target.data=data,el!==target.dom.el&&(target.isInDom&&(target.unbindEvents(),this.dom.parent.replaceChild(el,target.dom.el)),target.isShown||(el.style.display="none"),target.dom.el=el,target.isInDom&&target.bindEvents())),el=target.dom.el):((target=new mixitup.Target).init(null,this,data),target.hide()),target.isInDom?(nextEl=target.dom.el.nextElementSibling,persistantNewIds.push(id),frag&&(frag.lastElementChild&&frag.appendChild(this.dom.document.createTextNode(" ")),this.insertDatasetFrag(frag,target.dom.el,insertedTargets),frag=null)):(frag||(frag=this.dom.document.createDocumentFragment()),frag.lastElementChild&&frag.appendChild(this.dom.document.createTextNode(" ")),frag.appendChild(target.dom.el),target.isInDom=!0,target.unbindEvents(),target.bindEvents(),target.hide(),operation.toShow.push(target),insertedTargets.push(target)),operation.show.push(target)}for(frag&&((nextEl=nextEl||this.config.layout.siblingAfter)&&frag.appendChild(this.dom.document.createTextNode(" ")),this.insertDatasetFrag(frag,nextEl,insertedTargets)),i=0;data=operation.startDataset[i];i++)id=data[this.config.data.uidKey],target=this.cache[id],operation.show.indexOf(target)<0?(operation.hide.push(target),operation.toHide.push(target),operation.toRemove.push(target)):persistantStartIds.push(id);h.isEqualArray(persistantStartIds,persistantNewIds)||(operation.willSort=!0),this.callActions("afterDiffDatasets",arguments)},insertDatasetFrag:function(frag,nextEl,targets){var insertAt=nextEl?h.arrayFromList(this.dom.parent.children).indexOf(nextEl):this.targets.length;for(this.dom.parent.insertBefore(frag,nextEl);targets.length;)this.targets.splice(insertAt,0,targets.shift()),insertAt++},willSort:function(sortCommandA,sortCommandB){var result=!1;return result=!!(this.config.behavior.liveSort||"random"===sortCommandA.order||sortCommandA.attribute!==sortCommandB.attribute||sortCommandA.order!==sortCommandB.order||sortCommandA.collection!==sortCommandB.collection||null===sortCommandA.next&&sortCommandB.next||sortCommandA.next&&null===sortCommandB.next)||!(!sortCommandA.next||!sortCommandB.next)&&this.willSort(sortCommandA.next,sortCommandB.next),this.callFilters("resultWillSort",result,arguments)},show:function(){return this.filter("all")},hide:function(){return this.filter("none")},isMixing:function(){return this.isBusy},filter:function(){var instruction=this.parseFilterArgs(arguments);return this.multimix({filter:instruction.command},instruction.animate,instruction.callback)},toggleOn:function(){var toggleSelector,instruction=this.parseFilterArgs(arguments),selector=instruction.command.selector;return this.isToggling=!0,this.toggleArray.indexOf(selector)<0&&this.toggleArray.push(selector),toggleSelector=this.getToggleSelector(),this.multimix({filter:toggleSelector},instruction.animate,instruction.callback)},toggleOff:function(){var toggleSelector,instruction=this.parseFilterArgs(arguments),selector=instruction.command.selector,selectorIndex=this.toggleArray.indexOf(selector);return this.isToggling=!0,selectorIndex>-1&&this.toggleArray.splice(selectorIndex,1),toggleSelector=this.getToggleSelector(),this.multimix({filter:toggleSelector},instruction.animate,instruction.callback)},sort:function(){var instruction=this.parseSortArgs(arguments);return this.multimix({sort:instruction.command},instruction.animate,instruction.callback)},changeLayout:function(){var instruction=this.parseChangeLayoutArgs(arguments);return this.multimix({changeLayout:instruction.command},instruction.animate,instruction.callback)},dataset:function(){var instruction=this.parseDatasetArgs(arguments),operation=null,queueItem=null,animate=!1;return this.callActions("beforeDataset",arguments),this.isBusy?((queueItem=new mixitup.QueueItem).args=arguments,queueItem.instruction=instruction,this.queueMix(queueItem)):(instru
16ction.callback&&(this.userCallback=instruction.callback),animate=instruction.animate^this.config.animation.enable?instruction.animate:this.config.animation.enable,operation=this.getDataOperation(instruction.command.dataset),this.goMix(animate,operation))},multimix:function(){var operation=null,animate=!1,queueItem=null,instruction=this.parseMultimixArgs(arguments);return this.callActions("beforeMultimix",arguments),this.isBusy?((queueItem=new mixitup.QueueItem).args=arguments,queueItem.instruction=instruction,queueItem.triggerElement=this.lastClicked,queueItem.isToggling=this.isToggling,this.queueMix(queueItem)):(operation=this.getOperation(instruction.command),this.config.controls.enable&&(instruction.command.filter&&!this.isToggling&&(this.toggleArray.length=0,this.buildToggleArray(operation.command)),this.queue.length<1&&this.updateControls(operation.command)),instruction.callback&&(this.userCallback=instruction.callback),animate=instruction.animate^this.config.animation.enable?instruction.animate:this.config.animation.enable,this.callFilters("operationMultimix",operation,arguments),this.goMix(animate,operation))},getOperation:function(multimixCommand){var sortCommand=multimixCommand.sort,filterCommand=multimixCommand.filter,changeLayoutCommand=multimixCommand.changeLayout,removeCommand=multimixCommand.remove,insertCommand=multimixCommand.insert,operation=new mixitup.Operation;return(operation=this.callFilters("operationUnmappedGetOperation",operation,arguments)).id=h.randomHex(),operation.command=multimixCommand,operation.startState=this.state,operation.triggerElement=this.lastClicked,this.isBusy?(this.config.debug.showWarnings&&console.warn(mixitup.messages.warningGetOperationInstanceBusy()),null):(insertCommand&&this.insertTargets(insertCommand,operation),removeCommand&&(operation.toRemove=removeCommand.targets),operation.startSort=operation.newSort=operation.startState.activeSort,operation.startOrder=operation.newOrder=this.targets,sortCommand&&(operation.startSort=operation.startState.activeSort,operation.newSort=sortCommand,operation.willSort=this.willSort(sortCommand,operation.startState.activeSort),operation.willSort&&this.sortOperation(operation)),operation.startFilter=operation.startState.activeFilter,operation.newFilter=filterCommand||h.extend(new mixitup.CommandFilter,operation.startFilter),"all"===operation.newFilter.selector?operation.newFilter.selector=this.config.selectors.target:"none"===operation.newFilter.selector&&(operation.newFilter.selector=""),this.filterOperation(operation),operation.startContainerClassName=operation.startState.activeContainerClassName,changeLayoutCommand?(operation.newContainerClassName=changeLayoutCommand.containerClassName,operation.newContainerClassName!==operation.startContainerClassName&&(operation.willChangeLayout=!0)):operation.newContainerClassName=operation.startContainerClassName,this.config.animation.enable&&(this.getStartMixData(operation),this.setInter(operation),operation.docState=h.getDocumentState(this.dom.document),this.getInterMixData(operation),this.setFinal(operation),this.getFinalMixData(operation),this.parseEffects(),operation.hasEffect=this.hasEffect(),this.getTweenData(operation)),operation.willSort&&(this.targets=operation.newOrder),operation.newState=this.buildState(operation),this.callFilters("operationMappedGetOperation",operation,arguments))},tween:function(operation,multiplier){var target=null,posData=null,toHideIndex=-1,i=-1;for(multiplier=Math.min(multiplier,1),multiplier=Math.max(multiplier,0),i=0;target=operation.show[i];i++)posData=operation.showPosData[i],target.applyTween(posData,multiplier);for(i=0;target=operation.hide[i];i++)target.isShown&&target.hide(),(toHideIndex=operation.toHide.indexOf(target))>-1&&(posData=operation.toHidePosData[toHideIndex],target.isShown||target.show(),target.applyTween(posData,multiplier))},insert:function(){var args=this.parseInsertArgs(arguments);return this.multimix({insert:args.command},args.animate,args.callback)},insertBefore:function(){var args=this.parseInsertArgs(arguments);return this.insert(args.command.collection,"before",args.command.sibling,args.animate,args.callback)},insertAfter:function(){var args=this.parseInsertArgs(arguments);return this.insert(args.command.collection,"after",args.command.sibling,args.animate,args.callback)},prepend:function(){var args=this.parseInsertArgs(arguments);return this.insert(0,args.command.collection,args.animate,args.callback)},append:function(){var args=this.parseInsertArgs(arguments);return this.insert(this.state.totalTargets,args.command.collection,args.animate,args.callback)},remove:function(){var args=this.parseRemoveArgs(arguments);return this.multimix({remove:args.command},args.animate,args.callback)},getConfig:function(stringKey){var value=null;return value=stringKey?h.getProperty(this.config,stringKey):this.config,this.callFilters("valueGetConfig",value,arguments)},configure:function(config){this.callActions("beforeConfigure",arguments),h.extend(this.config,config,!0,!0),this.callActions("afterConfigure",arguments)},getState:function(){var state;return state=new mixitup.State,h.extend(state,this.state),h.freeze(state),this.callFilters("stateGetState",state,arguments)},forceRefresh:function(){this.indexTargets()},forceRender:function(){var target=null,el=null,id="";for(id in this.cache)(el=(target=this.cache[id]).render(target.data))!==target.dom.el&&(target.isInDom&&(target.unbindEvents(),this.dom.parent.replaceChild(el,target.dom.el)),target.isShown||(el.style.display="none"),target.dom.el=el,target.isInDom&&target.bindEvents());this.state=this.buildState(this.lastOperation)},destroy:function(cleanUp){var control=null,target=null,i=0;for(this.callActions("beforeDestroy",arguments),i=0;control=this.controls[i];i++)control.removeBinding(this);for(i=0;target=this.targets[i];i++)cleanUp&&target.show(),target.unbindEvents();this.dom.container.id.match(/^MixItUp/)&&this.dom.container.removeAttribute("id"),delete mixitup.instances[this.id],this.callActions("afterDestroy",arguments)}}),mixitup.IMoveData=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.posIn=null,this.posOut=null,this.operation=null,this.callback=null,this.statusChange="",this.duration=-1,this.staggerIndex=-1,this.callActions("afterConstruct"),h.seal(this)}
16,mixitup.BaseStatic.call(mixitup.IMoveData),mixitup.IMoveData.prototype=Object.create(mixitup.Base.prototype),mixitup.IMoveData.prototype.constructor=mixitup.IMoveData,mixitup.TargetDom=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.el=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.TargetDom),mixitup.TargetDom.prototype=Object.create(mixitup.Base.prototype),mixitup.TargetDom.prototype.constructor=mixitup.TargetDom,mixitup.Target=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.id="",this.sortString="",this.mixer=null,this.callback=null,this.isShown=!1,this.isBound=!1,this.isExcluded=!1,this.isInDom=!1,this.handler=null,this.operation=null,this.data=null,this.dom=new mixitup.TargetDom,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.Target),mixitup.Target.prototype=Object.create(mixitup.Base.prototype),h.extend(mixitup.Target.prototype,{constructor:mixitup.Target,init:function(el,mixer,data){var id="";if(this.callActions("beforeInit",arguments),this.mixer=mixer,el||(el=this.render(data)),this.cacheDom(el),this.bindEvents(),"none"!==this.dom.el.style.display&&(this.isShown=!0),data&&mixer.config.data.uidKey){if(void 0===(id=data[mixer.config.data.uidKey])||id.toString().length<1)throw new TypeError(mixitup.messages.errorDatasetInvalidUidKey({uidKey:mixer.config.data.uidKey}));this.id=id,this.data=data,mixer.cache[id]=this}this.callActions("afterInit",arguments)},render:function(data){var output,render=null,el=null,temp=null;if(this.callActions("beforeRender",arguments),"function"!=typeof(render=this.callFilters("renderRender",this.mixer.config.render.target,arguments)))throw new TypeError(mixitup.messages.errorDatasetRendererNotSet());return(output=render(data))&&"object"==typeof output&&h.isElement(output)?el=output:"string"==typeof output&&((temp=document.createElement("div")).innerHTML=output,el=temp.firstElementChild),this.callFilters("elRender",el,arguments)},cacheDom:function(el){this.callActions("beforeCacheDom",arguments),this.dom.el=el,this.callActions("afterCacheDom",arguments)},getSortString:function(attributeName){var value=this.dom.el.getAttribute("data-"+attributeName)||"";this.callActions("beforeGetSortString",arguments),value=isNaN(1*value)?value.toLowerCase():1*value,this.sortString=value,this.callActions("afterGetSortString",arguments)},show:function(){this.callActions("beforeShow",arguments),this.isShown||(this.dom.el.style.display="",this.isShown=!0),this.callActions("afterShow",arguments)},hide:function(){this.callActions("beforeHide",arguments),this.isShown&&(this.dom.el.style.display="none",this.isShown=!1),this.callActions("afterHide",arguments)},move:function(moveData){var self=this;self.callActions("beforeMove",arguments),self.isExcluded||self.mixer.targetsMoved++,self.applyStylesIn(moveData),requestAnimationFrame(function(){self.applyStylesOut(moveData)}),self.callActions("afterMove",arguments)},applyTween:function(posData,multiplier){var propertyName="",tweenData=null,posIn=posData.posIn,currentTransformValues=[],currentValues=new mixitup.StyleData,i=-1;for(this.callActions("beforeApplyTween",arguments),currentValues.x=posIn.x,currentValues.y=posIn.y,0===multiplier?this.hide():this.isShown||this.show(),i=0;propertyName=mixitup.features.TWEENABLE[i];i++)if(tweenData=posData.tweenData[propertyName],"x"===propertyName){if(!tweenData)continue;currentValues.x=posIn.x+tweenData*multiplier}else if("y"===propertyName){if(!tweenData)continue;currentValues.y=posIn.y+tweenData*multiplier}else if(tweenData instanceof mixitup.TransformData){if(!tweenData.value)continue;currentValues[propertyName].value=posIn[propertyName].value+tweenData.value*multiplier,currentValues[propertyName].unit=tweenData.unit,currentTransformValues.push(propertyName+"("+currentValues[propertyName].value+tweenData.unit+")")}else{if(!tweenData)continue;currentValues[propertyName]=posIn[propertyName]+tweenData*multiplier,this.dom.el.style[propertyName]=currentValues[propertyName]}(currentValues.x||currentValues.y)&¤tTransformValues.unshift("translate("+currentValues.x+"px, "+currentValues.y+"px)"),currentTransformValues.length&&(this.dom.el.style[mixitup.features.transformProp]=currentTransformValues.join(" ")),this.callActions("afterApplyTween",arguments)},applyStylesIn:function(moveData){var posIn=moveData.posIn,isFading=1!==this.mixer.effectsIn.opacity,transformValues=[];this.callActions("beforeApplyStylesIn",arguments),transformValues.push("translate("+posIn.x+"px, "+posIn.y+"px)"),this.mixer.config.animation.animateResizeTargets&&("show"!==moveData.statusChange&&(this.dom.el.style.width=posIn.width+"px",this.dom.el.style.height=posIn.height+"px"),this.dom.el.style.marginRight=posIn.marginRight+"px",this.dom.el.style.marginBottom=posIn.marginBottom+"px"),isFading&&(this.dom.el.style.opacity=posIn.opacity),"show"===moveData.statusChange&&(transformValues=transformValues.concat(this.mixer.transformIn)),this.dom.el.style[mixitup.features.transformProp]=transformValues.join(" "),this.callActions("afterApplyStylesIn",arguments)},applyStylesOut:function(moveData){var transitionRules=[],transformValues=[],isResizing=this.mixer.config.animation.animateResizeTargets,isFading=void 0!==this.mixer.effectsIn.opacity;if(this.callActions("beforeApplyStylesOut",arguments),transitionRules.push(this.writeTransitionRule(mixitup.features.transformRule,moveData.staggerIndex)),"none"!==moveData.statusChange&&transitionRules.push(this.writeTransitionRule("opacity",moveData.staggerIndex,moveData.duration)),isResizing&&(transitionRules.push(this.writeTransitionRule("width",moveData.staggerIndex,moveData.duration)),transitionRules.push(this.writeTransitionRule("height",moveData.staggerIndex,moveData.duration)),transitionRules.push(this.writeTransitionRule("margin",moveData.staggerIndex,moveData.duration))),!moveData.callback)return this.mixer.targetsImmovable++,void(this.mixer.targetsMoved===this.mixer.targetsImmovable&&this.mixer.cleanUp(moveData.operation));switch(this.operation=moveData.operation,this.callback=moveData.callback,!this.isExcluded&&this.mixer.targetsBound++,this.isBound=!0,this.applyTransition(transitionRules),isResizing&&moveData.posOut.width>0&&moveData.posOut.height>0&&(this.dom.el.style.width=moveData.posOut.width+"px",this.dom.el.style.height=moveData.posOut.height+"px",this.dom.el.style.marginRight=moveData.posOut.marginRight+"px",this.dom.el.style.marginBottom=moveData.posOut.marginBottom+"px"),this.mixer.config.animation.nudge||"hide"!==moveData.statusChange||transformValues.push("translate("+moveData.posOut.x+"px, "+moveData.posOut.y+"px)"),moveData.statusChange){case"hide":isFading&&(this.dom.el.style.opacity=this.mixer.effectsOut.opacity),transformValues=transformValues.concat(this.mixer.transformOut);break;case"show":isFading&&(this.dom.el.style.opacity=1)}(this.mixer.config.animation.nudge||!this.mixer.config.animation.nudge&&"hide"!==moveData.statusChange)&&transformValues.push("translate("+moveData.posOut.x+"px, "+moveData.posOut.y+"px)"),this.dom.el.style[mixitup.features.transformProp]=transformValues.join(" "),this.callActions("afterApplyStylesOut",arguments)},writeTransitionRule:function(property,staggerIndex,duration){var rule,delay=this.getDelay(staggerIndex);return rule=property+" "+(duration>0?duration:this.mixer.config.animation.duration)+"ms "+delay+"ms "+("opacity"===property?"linear":this.mixer.config.animation.easing),this.callFilters("ruleWriteTransitionRule",rule,arguments)},getDelay:function(index){var delay;return"function"==typeof this.mixer.config.animation.staggerSequence&&(index=this.mixer.config.animation.staggerSequence.call(this,index,this.state)),delay=this.mixer.staggerDuration?index*this.mixer.staggerDuration:0,this.callFilters("delayGetDelay",delay,arguments)},applyTransition:function(rules){var transitionString=rules.join(", ");this.callActions("beforeApplyTransition",arguments),this.dom.el.style[mixitup.features.transitionProp]=transitionString,this.callActions("afterApplyTransition",arguments)},handleTransitionEnd:function(e){var propName=e.propertyName,canResize=this.mixer.config.animation.animateResizeTargets;this.callActions("beforeHandleTransitionEnd",arguments),this.isBound&&e.target.matches(this.mixer.config.selectors.target)&&(propName.indexOf("transform")>-1||propName.indexOf("opacity")>-1||canResize&&propName.indexOf("height")>-1||canResize&&propName.indexOf("width")>-1||canResize&&propName.indexOf("margin")>-1)&&(this.callback.call(this,this.operation),this.isBound=!1,this.callback=null,this.operation=null),this.callActions("afterHandleTransitionEnd",arguments)},eventBus:function(e){switch(this.callActions("beforeEventBus",arguments),e.type){case"webkitTransitionEnd":case"transitionend":this.handleTransitionEnd(e)}this.callActions("afterEventBus",arguments)},unbindEvents:function(){this.callActions("beforeUnbindEvents",arguments),h.off(this.dom.el,"webkitTransitionEnd",this.handler),h.off(this.dom.el,"transitionend",this.handler),this.callActions("afterUnbindEvents",arguments)},bindEvents:function(){var transitionEndEvent,self=this;self.callActions("beforeBindEvents",arguments),transitionEndEvent="webkit"===mixitup.features.transitionPrefix?"webkitTransitionEnd":"transitionend",self.handler=function(e){return self.eventBus(e)},h.on(self.dom.el,transitionEndEvent,self.handler),self.callActions("afterBindEvents",arguments)},getPosData:function(getBox){var styles={},rect=null,posData=new mixitup.StyleData;return this.callActions("beforeGetPosData",arguments),posData.x=this.dom.el.offsetLeft,posData.y=this.dom.el.offsetTop,(this.mixer.config.animation.animateResizeTargets||getBox)&&(rect=this.dom.el.getBoundingClientRect(),posData.top=rect.top,posData.right=rect.right,posData.bottom=rect.bottom,posData.left
16=rect.left,posData.width=rect.width,posData.height=rect.height),this.mixer.config.animation.animateResizeTargets&&(styles=window.getComputedStyle(this.dom.el),posData.marginBottom=parseFloat(styles.marginBottom),posData.marginRight=parseFloat(styles.marginRight)),this.callFilters("posDataGetPosData",posData,arguments)},cleanUp:function(){this.callActions("beforeCleanUp",arguments),this.dom.el.style[mixitup.features.transformProp]="",this.dom.el.style[mixitup.features.transitionProp]="",this.dom.el.style.opacity="",this.mixer.config.animation.animateResizeTargets&&(this.dom.el.style.width="",this.dom.el.style.height="",this.dom.el.style.marginRight="",this.dom.el.style.marginBottom=""),this.callActions("afterCleanUp",arguments)}}),mixitup.Collection=function(instances){var instance=null,i=-1;for(this.callActions("beforeConstruct"),i=0;instance=instances[i];i++)this[i]=instance;this.length=instances.length,this.callActions("afterConstruct"),h.freeze(this)},mixitup.BaseStatic.call(mixitup.Collection),mixitup.Collection.prototype=Object.create(mixitup.Base.prototype),h.extend(mixitup.Collection.prototype,{constructor:mixitup.Collection,mixitup:function(methodName){var instance=null,args=Array.prototype.slice.call(arguments),tasks=[],i=-1;for(this.callActions("beforeMixitup"),args.shift(),i=0;instance=this[i];i++)tasks.push(instance[methodName].apply(instance,args));return this.callFilters("promiseMixitup",h.all(tasks,mixitup.libraries),arguments)}}),mixitup.Operation=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.id="",this.args=[],this.command=null,this.showPosData=[],this.toHidePosData=[],this.startState=null,this.newState=null,this.docState=null,this.willSort=!1,this.willChangeLayout=!1,this.hasEffect=!1,this.hasFailed=!1,this.triggerElement=null,this.show=[],this.hide=[],this.matching=[],this.toShow=[],this.toHide=[],this.toMove=[],this.toRemove=[],this.startOrder=[],this.newOrder=[],this.startSort=null,this.newSort=null,this.startFilter=null,this.newFilter=null,this.startDataset=null,this.newDataset=null,this.viewportDeltaX=0,this.viewportDeltaY=0,this.startX=0,this.startY=0,this.startHeight=0,this.startWidth=0,this.newX=0,this.newY=0,this.newHeight=0,this.newWidth=0,this.startContainerClassName="",this.startDisplay="",this.newContainerClassName="",this.newDisplay="",this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.Operation),mixitup.Operation.prototype=Object.create(mixitup.Base.prototype),mixitup.Operation.prototype.constructor=mixitup.Operation,mixitup.State=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.id="",this.activeFilter=null,this.activeSort=null,this.activeContainerClassName="",this.container=null,this.targets=[],this.hide=[],this.show=[],this.matching=[],this.totalTargets=-1,this.totalShow=-1,this.totalHide=-1,this.totalMatching=-1,this.hasFailed=!1,this.triggerElement=null,this.activeDataset=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.State),mixitup.State.prototype=Object.create(mixitup.Base.prototype),mixitup.State.prototype.constructor=mixitup.State,mixitup.UserInstruction=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.command={},this.animate=!1,this.callback=null,this.callActions("afterConstruct"),h.seal(this)},mixitup.BaseStatic.call(mixitup.UserInstruction),mixitup.UserInstruction.prototype=Object.create(mixitup.Base.prototype),mixitup.UserInstruction.prototype.constructor=mixitup.UserInstruction,mixitup.Messages=function(){mixitup.Base.call(this),this.callActions("beforeConstruct"),this.ERROR_FACTORY_INVALID_CONTAINER="[MixItUp] An invalid selector or element reference was passed to the mixitup factory function",this.ERROR_FACTORY_CONTAINER_NOT_FOUND="[MixItUp] The provided selector yielded no container element",this.ERROR_CONFIG_INVALID_ANIMATION_EFFECTS="[MixItUp] Invalid value for `animation.effects`",this.ERROR_CONFIG_INVALID_CONTROLS_SCOPE="[MixItUp] Invalid value for `controls.scope`",this.ERROR_CONFIG_INVALID_PROPERTY='[MixitUp] Invalid configuration object property "${erroneous}"${suggestion}',this.ERROR_CONFIG_INVALID_PROPERTY_SUGGESTION='. Did you mean "${probableMatch}"?',this.ERROR_CONFIG_DATA_UID_KEY_NOT_SET="[MixItUp] To use the dataset API, a UID key must be specified using `data.uidKey`",this.ERROR_DATASET_INVALID_UID_KEY='[MixItUp] The specified UID key "${uidKey}" is not present on one or more dataset items',this.ERROR_DATASET_DUPL
vendor: 4,177 bytes, line 16
16ICATE_UID='[MixItUp] The UID "${uid}" was found on two or more dataset items. UIDs must be unique.',this.ERROR_INSERT_INVALID_ARGUMENTS="[MixItUp] Please provider either an index or a sibling and position to insert, not both",this.ERROR_INSERT_PREEXISTING_ELEMENT="[MixItUp] An element to be inserted already exists in the container",this.ERROR_FILTER_INVALID_ARGUMENTS="[MixItUp] Please provide either a selector or collection `.filter()`, not both",this.ERROR_DATASET_NOT_SET="[MixItUp] To use the dataset API with pre-rendered targets, a starting dataset must be set using `load.dataset`",this.ERROR_DATASET_PRERENDERED_MISMATCH="[MixItUp] `load.dataset` does not match pre-rendered targets",this.ERROR_DATASET_RENDERER_NOT_SET="[MixItUp] To insert an element via the dataset API, a target renderer function must be provided to `render.target`",this.ERROR_SORT_NON_EXISTENT_ELEMENT="[MixItUp] An element to be sorted does not already exist in the container",this.WARNING_FACTORY_PREEXISTING_INSTANCE="[MixItUp] WARNING: This element already has an active MixItUp instance. The provided configuration object will be ignored. If you wish to perform additional methods on this instance, please create a reference.",this.WARNING_INSERT_NO_ELEMENTS="[MixItUp] WARNING: No valid elements were passed to `.insert()`",this.WARNING_REMOVE_NO_ELEMENTS="[MixItUp] WARNING: No valid elements were passed to `.remove()`",this.WARNING_MULTIMIX_INSTANCE_QUEUE_FULL="[MixItUp] WARNING: An operation was requested but the MixItUp instance was busy. The operation was rejected because the queue is full or queuing is disabled.",this.WARNING_GET_OPERATION_INSTANCE_BUSY="[MixItUp] WARNING: Operations can be be created while the MixItUp instance is busy.",this.WARNING_NO_PROMISE_IMPLEMENTATION="[MixItUp] WARNING: No Promise implementations could be found. If you wish to use promises with MixItUp please install an ES6 Promise polyfill.",this.WARNING_INCONSISTENT_SORTING_ATTRIBUTES='[MixItUp] WARNING: The requested sorting data attribute "${attribute}" was not present on one or more target elements which may product unexpected sort output',this.callActions("afterConstruct"),this.compileTemplates(),h.seal(this)},mixitup.BaseStatic.call(mixitup.Messages),mixitup.Messages.prototype=Object.create(mixitup.Base.prototype),mixitup.Messages.prototype.constructor=mixitup.Messages,mixitup.Messages.prototype.compileTemplates=function(){var errorKey="",errorMessage="";for(errorKey in this)"string"==typeof(errorMessage=this[errorKey])&&(this[h.camelCase(errorKey)]=h.template(errorMessage))},mixitup.messages=new mixitup.Messages,mixitup.Facade=function(mixer){mixitup.Base.call(this),this.callActions("beforeConstruct",arguments),this.configure=mixer.configure.bind(mixer),this.show=mixer.show.bind(mixer),this.hide=mixer.hide.bind(mixer),this.filter=mixer.filter.bind(mixer),this.toggleOn=mixer.toggleOn.bind(mixer),this.toggleOff=mixer.toggleOff.bind(mixer),this.sort=mixer.sort.bind(mixer),this.changeLayout=mixer.changeLayout.bind(mixer),this.multimix=mixer.multimix.bind(mixer),this.dataset=mixer.dataset.bind(mixer),this.tween=mixer.tween.bind(mixer),this.insert=mixer.insert.bind(mixer),this.insertBefore=mixer.insertBefore.bind(mixer),this.insertAfter=mixer.insertAfter.bind(mixer),this.prepend=mixer.prepend.bind(mixer),this.append=mixer.append.bind(mixer),this.remove=mixer.remove.bind(mixer),this.destroy=mixer.destroy.bind(mixer),this.forceRefresh=mixer.forceRefresh.bind(mixer),this.forceRender=mixer.forceRender.bind(mixer),this.isMixing=mixer.isMixing.bind(mixer),this.getOperation=mixer.getOperation.bind(mixer),this.getConfig=mixer.getConfig.bind(mixer),this.getState=mixer.getState.bind(mixer),this.callActions("afterConstruct",arguments),h.freeze(this),h.seal(this)},mixitup.BaseStatic.call(mixitup.Facade),mixitup.Facade.prototype=Object.create(mixitup.Base.prototype),mixitup.Facade.prototype.constructor=mixitup.Facade,"object"==typeof exports&&"object"==typeof module?module.exports=mixitup:"function"==typeof define&&define.amd?define(function(){return mixitup}):void 0!==window.mixitup&&"function"==typeof window.mixitup||(window.mixitup=mixitup),mixitup.BaseStatic.
16call(mixitup.constructor),mixitup.NAME="mixitup",mixitup.CORE_VERSION="3.3.1"}(window); 17//# sourceURL=https://8595762.fs1.hubspotusercontent-na1.net/hubfs/8595762/hub_generated/template_assets/1/209203052121/1790719392035/template_mixitup.js
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.