!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.shuffle=e():t.shuffle=e()}(this,function(){return function(t){function e(n){if(i[n])return i[n].exports;var s=i[n]={exports:{},id:n,loaded:!1};return t[n].call(s.exports,s,s.exports,e),s.loaded=!0,s.exports}var i={};return e.m=t,e.c=i,e.p="",e(0)}([function(t,e,i){"use strict";t.exports=i(1)["default"]},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function o(t){return Array.prototype.slice.call(t)}function r(t){return Math.max.apply(Math,t)}function u(t,e){return 2===arguments.length?u(t)(e):function(e){return t.indexOf(e)>-1}}Object.defineProperty(e,"__esModule",{value:!0});var l=function(){function t(t,e){for(var i=0;i0?t.getSize(this.items[0].element,!0).width:e,0===n&&(n=e),n+i}},{key:"_getGutterSize",value:function(t){var e;return e="function"==typeof this.options.gutterWidth?this.options.gutterWidth(t):this.useSizer?(0,w["default"])(this.options.sizer,"marginLeft"):this.options.gutterWidth}},{key:"_setColumns",value:function(){var e=arguments.length<=0||void 0===arguments[0]?t.getSize(this.element).width:arguments[0],i=this._getGutterSize(e),n=this._getColumnSize(e,i),s=(e+i)/n;Math.abs(Math.round(s)-s)0,e=this._queue.length>0;e&&t&&this.isInitialized?this._startTransitions(this._queue):e?(this._styleImmediately(this._queue),this._dispatchLayout()):this._dispatchLayout(),this._queue.length=0}},{key:"_startTransitions",value:function(t){var e=this;this.isTransitioning=!0;var i=t.map(function(t){return e._getTransitionFunction(t)});(0,_["default"])(i,this._movementFinished.bind(this))}},{key:"_cancelMovement",value:function(){this._transitions.forEach(M.cancelTransitionEnd),this._transitions.length=0,this.isTransitioning=!1}},{key:"_styleImmediately",value:function(e){var i=this;if(e.length){var n=e.map(function(t){return t.item.element});t._skipTransitions(n,function(){e.forEach(function(t){t.item.applyCss(i._getStylesForTransition(t)),t.callback()})})}}},{key:"_movementFinished",value:function(){this._transitions.length=0,this.isTransitioning=!1,this._dispatchLayout()}},{key:"_dispatchLayout",value:function(){this._dispatch(t.EventType.LAYOUT)}},{key:"filter",value:function(e,i){this.isEnabled&&((!e||e&&0===e.length)&&(e=t.ALL_ITEMS),this._filter(e),this._shrink(),this._updateItemCount(),this.sort(i))}},{key:"sort",value:function(){var t=arguments.length<=0||void 0===arguments[0]?this.lastSort:arguments[0];if(this.isEnabled){this._resetCols();var e=this._getFilteredItems();e=(0,L["default"])(e,t),this._layout(e),this._processQueue(),this._setContainerSize(),this.lastSort=t}}},{key:"update",value:function(t){this.isEnabled&&(t||this._setColumns(),this.sort())}},{key:"layout",value:function(){this.update(!0)}},{key:"add",value:function(t){t=(0,c["default"])(t).map(function(t){return new S["default"](t)}),this._initItems(t),this._setTransitions(t),this.items=this.items.concat(t),this._updateItemsOrder(),this.filter(this.lastFilter)}},{key:"disable",value:function(){this.isEnabled=!1}},{key:"enable",value:function(t){this.isEnabled=!0,t!==!1&&this.update()}},{key:"remove",value:function(e){var i=this;if(e.length){e=(0,c["default"])(e);var n=e.map(function(t){return i.getItemByElement(t)}).filter(function(t){return!!t}),s=function o(){i.element.removeEventListener(t.EventType.LAYOUT,o),i._disposeItems(n),e.forEach(function(t){t.parentNode.removeChild(t)}),i._dispatch(t.EventType.REMOVED,{collection:e}),e=null,n=null};this._toggleFilterClasses({visible:[],hidden:n}),this._shrink(n),this.sort(),this.items=this.items.filter(function(t){return!u(n,t)}),this._updateItemCount(),this.element.addEventListener(t.EventType.LAYOUT,s)}}},{key:"getItemByElement",value:function(t){for(var e=this.items.length-1;e>=0;e--)if(this.items[e].element===t)return this.items[e];return null}},{key:"destroy",value:function(){this._cancelMovement(),window.removeEventListener("resize",this._onResize),this.element.classList.remove("shuffle"),this.element.removeAttribute("style"),this._disposeItems(),this.items=null,this.options.sizer=null,this.element=null,this._transitions=null,this.isDestroyed=!0}}],[{key:"getSize",value:function(t,e){var i=window.getComputedStyle(t,null),n=(0,w["default"])(t,"width",i),s=(0,w["default"])(t,"height",i);if(e){var o=(0,w["default"])(t,"marginLeft",i),r=(0,w["default"])(t,"marginRight",i),u=(0,w["default"])(t,"marginTop",i),l=(0,w["default"])(t,"marginBottom",i);n+=o+r,s+=u+l}return{width:n,height:s}}},{key:"_skipTransitions",value:function(t,e){var i="0ms",n=t.map(function(t){var e=t.style,n=e.transitionDuration,s=e.transitionDelay;return e.transitionDuration=i,e.transitionDelay=i,{duration:n,delay:s}});e(),t[0].offsetWidth,t.forEach(function(t,e){t.style.transitionDuration=n[e].duration,t.style.transitionDelay=n[e].delay})}}]),t}();x.ShuffleItem=S["default"],x.ALL_ITEMS="all",x.FILTER_ATTRIBUTE_KEY="groups",x.EventType={LAYOUT:"shuffle:layout",REMOVED:"shuffle:removed"},x.Classes=k["default"],x.options={group:x.ALL_ITEMS,speed:250,easing:"ease",itemSelector:"*",sizer:null,gutterWidth:0,columnWidth:0,delimeter:null,buffer:0,columnThreshold:.01,initialSort:null,throttle:p["default"],throttleTime:300,staggerAmount:15,staggerAmountMax:250,useTransforms:!0},x.__Point=E["default"],x.__sorter=L["default"],x.__getColumnSpan=z.getColumnSpan,x.__getAvailablePositions=z.getAvailablePositions,x.__getShortColumn=z.getShortColumn,e["default"]=x},function(t,e){try{new window.CustomEvent("test")}catch(i){var n=function(t,e){var i;return e=e||{bubbles:!1,cancelable:!1,detail:void 0},i=document.createEvent("CustomEvent"),i.initCustomEvent(t,e.bubbles,e.cancelable,e.detail),i};n.prototype=window.Event.prototype,window.CustomEvent=n}},function(t,e){"use strict";function i(t,e){if(s)return s.call(t,e);for(var i=t.parentNode.querySelectorAll(e),n=0;n=e?i():r=setTimeout(i,e-t)),o}}t.exports=i},function(t,e){function i(){}t.exports=function(t,e,n){function s(t){return function(e,i){if(!r){if(e)return n(e,u),void(r=!0);u[t]=i,--o||n(null,u)}}}n||("function"==typeof e?(n=e,e=null):n=i);var o=t&&t.length;if(!o)return n(null,[]);var r=!1,u=new Array(o);t.forEach(e?function(t,i){t.call(e,s(i))}:function(t,e){t(s(e))})}},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}Object.defineProperty(e,"__esModule",{value:!0});var s=i(9),o=n(s),r=function(t,e){this.x=(0,o["default"])(t),this.y=(0,o["default"])(e)};r.equals=function(t,e){return t.x===e.x&&t.y===e.y},e["default"]=r},function(t,e){"use strict";function i(t){return parseFloat(t)||0}Object.defineProperty(e,"__esModule",{value:!0}),e["default"]=i},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;in||"sortFirst"===n||"sortLast"===s?-1:n>s||"sortLast"===n||"sortFirst"===s?1:0}),o?n:(i.reverse&&t.reverse(),t)):[]}Object.defineProperty(e,"__esModule",{value:!0}),e["default"]=o;var r=i(5),u=n(r),l={reverse:!1,by:null,randomize:!1,key:"element"}},function(t,e){"use strict";function i(){return r+u++}function n(t,e){var n=i(),u=function(t){t.currentTarget===t.target&&(s(n),e(t))};return t.addEventListener(r,u),o[n]={element:t,listener:u},n}function s(t){return o[t]?(o[t].element.removeEventListener(r,o[t].listener),o[t]=null,!0):!1}Object.defineProperty(e,"__esModule",{value:!0}),e.onTransitionEnd=n,e.cancelTransitionEnd=s;var o={},r="transitionend",u=0},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{"default":t}}function s(t){return Math.max.apply(Math,t)}function o(t){return Math.min.apply(Math,t)}function r(t){for(var e=t.itemSize,i=t.positions,n=t.gridSize,s=t.total,o=t.threshold,r=t.buffer,h=u(e.width,n,s,o),c=l(i,h,s),d=a(c,r),m=new f["default"](Math.round(n*d),Math.round(c[d])),v=c[d]+e.height,p=0;h>p;p++)i[d+p]=v;return m}function u(t,e,i,n){var s=t/e;return Math.abs(Math.round(s)-s)=o;o++)n.push(s(t.slice(o,o+e)));return n}function a(t,e){for(var i=o(t),n=0,s=t.length;s>n;n++)if(t[n]>=i-e&&t[n]<=i+e)return n;return 0}Object.defineProperty(e,"__esModule",{value:!0}),e.getItemPosition=r,e.getColumnSpan=u,e.getAvailablePositions=l,e.getShortColumn=a;var h=i(8),f=n(h)}])}); //# sourceMappingURL=shuffle.min.js.map