gridifier
Version:
Library for grid layout sort/filter/drag and drop
12 lines • 127 kB
JavaScript
/* Gridifier v2.~.~ source file for custom build.
* Async Responsive HTML Grids
* http://gridifier.io
*
* Gridifier is dual-licensed:
* Non-commercial license - https://creativecommons.org/licenses/by-nc-sa/4.0/.
* Commercial license - http://gridifier.io/license (Commercial license).
* Read http://gridifier.io/license for details.
* Copyright 2015 nTech
*/
!function(t,e){"function"==typeof define&&define.amd?define([],e):"object"==typeof exports&&exports?module.exports=e():t.Gridifier=e()}(this,function(){var t=function(t,e){var n=function(t,e){for(var n in e)t.prototype[n]=e[n]},i=function(t,e){for(var n in e)!function(t,n){Qt[t]=function(){return e[t].apply(n,arguments)}}(n,t)},r=function(t){throw new Error(N.ERR+t)},s=function(){return function(){}},o=function(t,e){return function(){return e[t].apply(e,arguments)}},a=s(),u=s(),c=function(){return{isScheduled:function(){return!1}}},l=s(),h=s(),f=s(),d=s(),g=s(),_=s(),p=(s(),s()),m=s(),v=s(),C=s(),T=s(),y=s(),A=s(),E=s(),x=s(),I=s(),D=function(){return{getCoordsChanger:s()}},R=s(),S=s(),O=s(),P=s(),F=s(),N={DATA:"data-gridifier",OWCACHED:"-cached-per-ow",OHCACHED:"-cached-per-oh",ERR:"Gridifier error: ",NOT_NATIVE:"is not jQuery/Native DOM object.",IS_ACTIVE:"-toggle-is-active"},w={SRM:{CACHED_PER_OW_ITEM_GUID_DATA:N.DATA+N.OWCACHED+"-guid",CACHED_PER_OH_ITEM_GUID_DATA:N.DATA+N.OHCACHED+"-guid",CACHED_PER_OW_DATA:N.DATA+N.OWCACHED,CACHED_PER_OH_DATA:N.DATA+N.OHCACHED,EMPTY_DATA:"e"},COLL:{SORT_INDEX_DATA:N.DATA+"-orig-sort-index",NOT_COLLECTABLE_DATA:N.DATA+"-not-collectable"},ITEM:{IS_CONNECTED_DATA:N.DATA+"-connected"},REND:{CN_RENDERED_DATA:N.DATA+"-cn-rendered",SCH_TO_HIDE_DATA:N.DATA+"-sch-to-hide",SILENT_DATA:N.DATA+"-sch-for-silentr"},DRAGIFIER_REPOS_DELAY:20,DRAGIFIER_DISCR_REPOS_DELAY:100,IS_DRAGGABLE_DATA:N.DATA+"-is-draggable",GUID_DATA:N.DATA+"-guid",RANGE_SIZE:500,REFLOW_FIX_DELAY:0,UPDATE_Z_DELAY:100,INSERT_QUEUE_DELAY:100,INSERT_BATCH_DELAY:100,RENDER_QUEUE_DELAY:20,RENDER_DEF_DELAY:40,DISC_TYPES:{SOFT:0,HARD:1},DISC_BATCH:12,DISC_DELAY:60,RSORT_REPOS_DELAY:20,MAX_Z:"16777271"},L={IS_ACTIVE:N.DATA+N.IS_ACTIVE,IS_ACTIVE_WITH_CC:N.DATA+N.IS_ACTIVE+"-with-cc",SYNCER_DATA:N.DATA+"-toggle-syncer-id"},b={MATRICES:{X:"1, 0, 0, ",Y:"0, 1, 0, ",Z:"0, 0, 1, ",XY:"1, 1, 0, ",XZ:"1, 0, 1, ",YZ:"0, 1, 1, ",XYZ:"1, 1, 1, "},FNS:{X:"rotateX",Y:"rotateY",Z:"rotateZ"},FADES:{NONE:0,FULL:1,ON_HIDE_MIDDLE:2},GUID_DATA:N.DATA+"rotate-guid",SCENE_CLASS_PREFIX:"gridifierRotateSceneId"},B={INITIAL_GUID:-1,SHIFTED:8,APPEND:{DEF:0,REV:1},PREPEND:{DEF:2,REV:3},LEFT:{TOP:0,BOTTOM:1},BOTTOM:{RIGHT:2,LEFT:3},RIGHT:{TOP:4,BOTTOM:5},TOP:{LEFT:6,RIGHT:7},CLEANERS:{INSIDE:0,INSIDE_OR_BEFORE:1}},M={PREPEND:0,REV_PREPEND:1,APPEND:2,REV_APPEND:3,MIR_PREPEND:4,INS_BEFORE:5,INS_AFTER:6,SIL_APPEND:7},H={SHOW:0,HIDE:1,RENDER:2,DEL_RENDER:3},G={FILTER:"filter",SORT:"sort",TOGGLE:"toggle",DRAG:"drag",RSORT:"rsort",COORDSCHANGER:"coordsChanger"},V={NOT_NATIVE:"one of items "+N.NOT_NATIVE,GRID_NOT_NATIVE:"grid "+N.NOT_NATIVE,NO_CNS:"no inserted items",CANT_FIND_CN:"can't find conn. by item",WRONG_IBA_ITEM:"wrong insertBefore/After targetItem",TOO_BIG_ITEM:"too wide(ver.grid)/too tall(hor.grid) item"},Y={SHOW:"Show",HIDE:"Hide",GRID_RESIZE:"GridResize",CSS_CHANGE:"CssChange",REPOSITION_END:"RepositionEnd",REPOSITION:"Reposition",DISCONNECT:"Disconnect",INSERT:"Insert",DRAG_END:"DragEnd"},U={REPOSITION_END_FOR_DRAG:"RepositionEndForDrag",BEFORE_SHOW_FOR_RSORT:"BeforeShowForRsort",SET_SETTING_FOR_NZER:"SetSettingForNzer",RSORT_CHANGE:"RsortChange"},q={getComputedCSS:null,_getProps:{forOw:["paddingLeft","paddingRight","marginLeft","marginRight","borderLeftWidth","borderRightWidth"],forOh:["paddingTop","paddingBottom","marginTop","marginBottom","borderTopWidth","borderBottomWidth"],forPosLeft:["marginLeft"],forPosTop:["marginTop"]},_prefixedProps:{boxSizing:null},_borderBoxType:null,_borderBoxTypes:{OUTER:0,INNER:1},_ptValsCalcType:null,_ptValsCalcTypes:{BROWSER:0,RECALC:1},recalcPtWidthFn:function(t,e,n,i){return this.outerWidth(t,e,n,i)},recalcPtHeightFn:function(t,e,n,i){return this.outerHeight(t,e,n,i)},_lastRawWidth:null,_lastRawHeight:null,_lastBorderWidth:null,_lastBorderHeight:null,_hasLastBorderBox:!1,init:function(){this.getComputedCSS=this._getComputedCSSFn(),this._findPrefixedProps(),this._findBorderBoxType(W.div()),this._findPtValsCalcType(W.div(),W.div())},clearRecursiveSubcallsData:function(){this._lastRawWidth=null,this._lastRawHeight=null,this._lastBorderWidth=null,this._lastBorderHeight=null,this._hasLastBorderBox=!1},_areBrowserPtVals:function(){return this._ptValsCalcType==this._ptValsCalcTypes.BROWSER},_areRecalcPtVals:function(){return this._ptValsCalcType==this._ptValsCalcTypes.RECALC},getUncomputedCSS:function(t){var e=t.parentNode.cloneNode(),n=t.cloneNode();e.appendChild(n),e.style.display="none";var i="HTML"==t.parentNode.nodeName?t.parentNode:t.parentNode.parentNode;i.appendChild(e);for(var r=this.getComputedCSS(n),s={},o=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","width","height"],a=0;a<o.length;a++)s[o[a]]=r[o[a]];return i.removeChild(e),s},_ensureHasParentNode:function(t){null!=t.parentNode&&W.hasOwnProp(t.parentNode,"innerHTML")||r("no parentNode")},_ensureHasComputedProp:function(t,e){e in t||r("no prop "+e)},_hasPtCSSVal:function(t,e,n){var i=function(t,e,n){this._ensureHasParentNode(e),n=n||this.getUncomputedCSS(e),this._ensureHasComputedProp(n,t);var i=new RegExp("(.*\\d)%$");return i.test(n[t])};if(W.isArray(t)){for(var r=0;r<t.length;r++)if(i.call(this,t[r],e,n))return!0;return!1}return i.call(this,t,e,n)},_getPtCSSVal:function(t,e,n){return this._ensureHasParentNode(e),n=n||this.getUncomputedCSS(e),this._ensureHasComputedProp(n,t),n[t]},_recalcPtVal:function(t,e,n,i){var r=parseFloat(this._getPtCSSVal(i,t,n));return e/100*r},_recalcTwoSidePropPtVals:function(t,e,n,i,r,s){var o=r+(s?"Top":"Left"),a=r+(s?"Bottom":"Right"),u=n[o],c=n[a];return this._hasPtCSSVal(o,t,i)&&(u=this._recalcPtVal(t,e,i,o)),this._hasPtCSSVal(a,t,i)&&(c=this._recalcPtVal(t,e,i,a)),u+c},_isDefBoxSizing:function(t){var e=this._prefixedProps.boxSizing;return e&&t[e]&&"border-box"===t[e]?!0:!1},_isOuterBoxSizing:function(){return this._borderBoxType===this._borderBoxTypes.OUTER},_isCascadedCSSVal:function(t){return window.getComputedStyle||-1!==t.indexOf("px")?!1:!0},_cascadedToComputed:function(t,e,n){var i=new RegExp("(?=.*\\d)");if(!i.test(e))return e;var r=t.style,s=t.runtimeStyle,o=r.left,a=s&&s.left;return a&&(s.left=n.left),r.left=e,e=r.pixelLeft,r.left=o,a&&(s.left=a),e},_normalizeComputedCSS:function(t){var e=parseFloat(t),n=-1===t.indexOf("%")&&!isNaN(e);return n?e:!1},_getComputedProps:function(t,e,n){for(var i={},r=0;r<this._getProps[t].length;r++){var s=this._getProps[t][r],o=e[s];this._isCascadedCSSVal(o)&&(o=this._cascadedToComputed(n,o,e)),o=parseFloat(o),o=isNaN(o)?0:o,i[s]=o}return i},positionLeft:function(t){var e=this.getComputedCSS(t);if("none"==e.display)return 0;var n=this._getComputedProps("forPosLeft",e,t);return t.offsetLeft-n.marginLeft},positionTop:function(t){var e=this.getComputedCSS(t);if("none"==e.display)return 0;var n=this._getComputedProps("forPosTop",e,t);return t.offsetTop-n.marginTop},offsetLeft:function(t){var e=t.getBoundingClientRect(),n=window.pageXOffset||document.documentElement.scrollLeft;return e.left+n},offsetTop:function(t){var e=t.getBoundingClientRect(),n=window.pageYOffset||document.documentElement.scrollTop;return e.top+n},cloneComputedStyle:function(t,e){var n=function(t){return t.replace(/-+(.)?/g,function(t,e){return e?e.toUpperCase():""})},i=this.getComputedCSS(t);for(var r in i)if("cssText"!=r){var s=n(r);e.style[s]!=i[s]&&(e.style[s]=i[s])}this._reclone(i,e)},_reclone:function(t,e){for(var n=["font","fontSize","fontWeight","lineHeight"],i=["Width","Color","Style"],r=["Left","Right","Top","Bottom"],s=0;s<i.length;s++)for(var o=0;o<r.length;o++)n.push("border"+r[o]+i[s]);for(var s=0;s<n.length;s++){var a=n[s];"undefined"!=typeof t[a]&&e.style[a]!=t[a]&&(e.style[a]=t[a])}}};q._getComputedCSSFn=function(){return window.getComputedStyle?function(t){return window.getComputedStyle(t,null)}:function(t){return t.currentStyle}},q._findPrefixedProps=function(){this._prefixedProps.boxSizing=k.get("boxSizing")},q._findBorderBoxType=function(t){W.css.set(t,{width:"100px",padding:"10px 20px",borderWidth:"10px 20px",borderStyle:"solid"});var e=this._prefixedProps.boxSizing;t.style[e]="border-box";var n=document.body||document.documentElement;n.appendChild(t);var i=this.getComputedCSS(t);100===this._normalizeComputedCSS(i.width)?this._borderBoxType=this._borderBoxTypes.OUTER:this._borderBoxType=this._borderBoxTypes.INNER,n.removeChild(t)},q._findPtValsCalcType=function(t,e,n){W.css.set(t,{width:"1178px",height:"300px",position:"absolute",left:"-9000px",top:"0px",visibility:"hidden"});var i=document.body||document.documentElement;i.appendChild(t),W.css.set(e,{width:"10%",height:"200px"}),t.appendChild(e);var r=117.796875.toFixed(1),s=parseFloat(this.outerWidth(e,!0,!0)).toFixed(1);this._ptValsCalcType=r==s?this._ptValsCalcTypes.BROWSER:this._ptValsCalcTypes.RECALC,i.removeChild(t)},q.outerWidth=function(t,e,n,i){var e=e||!1,n=n||!1,i=i||!1,r=this.getComputedCSS(t);if(n||this._areBrowserPtVals())var s=!1;else if(this._areRecalcPtVals()){this._ensureHasParentNode(t);var s=this._hasPtCSSVal("width",t)}if("none"===r.display)return 0;var o=this._getComputedProps("forOw",r,t),a=o.paddingLeft+o.paddingRight,u=o.marginLeft+o.marginRight,c=o.borderLeftWidth+o.borderRightWidth,l=0,h=this._normalizeComputedCSS(r.width);h!==!1&&(l=h);var f=null,d=null;return s&&(f=this.getUncomputedCSS(t),d=this.recalcPtWidthFn.call(this,t.parentNode,!1,"HTML"==t.parentNode.nodeName,!0),this._hasLastBorderBox&&this._hasPtCSSVal("width",t,f)&&(d-=this._lastBorderWidth)),s&&this._hasPtCSSVal(["paddingLeft","paddingRight"],t,f)&&(a=this._recalcTwoSidePropPtVals(t,d,o,f,"padding")),s&&this._hasPtCSSVal("width",t,f)&&(l=this._recalcPtVal(t,d,f,"width")),!this._isDefBoxSizing(r)||this._isDefBoxSizing(r)&&!this._isOuterBoxSizing()?(this._lastRawWidth=l,l+=a,i||(l+=c),this._hasLastBorderBox=!1):(this._hasLastBorderBox=!0,this._lastRawWidth=l,this._lastBorderWidth=c),e&&(s&&this._hasPtCSSVal(["marginLeft","marginRight"],t,f)&&(u=this._recalcTwoSidePropPtVals(t,d,o,f,"margin")),l+=u),l},q.outerHeight=function(t,e,n,i){var e=e||!1,n=n||!1,i=i||!1,r=this.getComputedCSS(t);if(n||this._areBrowserPtVals())var s=!1;else if(this._areRecalcPtVals()){this._ensureHasParentNode(t);var s=this._hasPtCSSVal("height",t)}if("none"===r.display)return 0;var o=this._getComputedProps("forOh",r,t),a=o.paddingTop+o.paddingBottom,u=o.marginTop+o.marginBottom,c=o.borderTopWidth+o.borderBottomWidth,l=0,h=this._normalizeComputedCSS(r.height);h!==!1&&(l=h);var f=null,d=null,g=null;return s&&(f=this.getUncomputedCSS(t),d=this.recalcPtWidthFn.call(this,t.parentNode,!1,"HTML"==t.parentNode.nodeName,!0),this._hasLastBorderBox&&(d-=this._lastBorderWidth),g=this.recalcPtHeightFn.call(this,t.parentNode,!1,"HTML"==t.parentNode.nodeName,!0),this._hasLastBorderBox&&this._hasPtCSSVal("height",t,f)&&(g-=this._lastBorderHeight)),s&&this._hasPtCSSVal(["paddingTop","paddingBottom"],t,f)&&(a=this._recalcTwoSidePropPtVals(t,d,o,f,"padding",!0)),s&&this._hasPtCSSVal("height",t,f)&&(l=this._recalcPtVal(t,g,f,"height")),!this._isDefBoxSizing(r)||this._isDefBoxSizing(r)&&!this._isOuterBoxSizing()?(this._lastRawHeight=l,l+=a,i||(l+=c),this._hasLastBorderBox=!1):(this._hasLastBorderBox=!0,this._lastRawHeight=l,this._lastBorderHeight=c),e&&(s&&this._hasPtCSSVal(["marginTop","marginBottom"],t,f)&&(u=this._recalcTwoSidePropPtVals(t,d,o,f,"margin",!0)),l+=u),l};var X=function(){function t(t){if(t=t||window.event,t.isFixed)return t;if(t.isFixed=!0,t.preventDefault=t.preventDefault||function(){this.returnValue=!1},t.stopPropagation=t.stopPropagation||function(){this.cancelBubble=!0},t.target||(t.target=t.srcElement),!t.relatedTarget&&t.fromElement&&(t.relatedTarget=t.fromElement==t.target?t.toElement:t.fromElement),null==t.pageX&&null!=t.clientX){var e=document.documentElement,n=document.body;t.pageX=t.clientX+(e&&e.scrollLeft||n&&n.scrollLeft||0)-(e.clientLeft||0),t.pageY=t.clientY+(e&&e.scrollTop||n&&n.scrollTop||0)-(e.clientTop||0)}return!t.which&&t.button&&(t.which=1&t.button?1:2&t.button?3:4&t.button?2:0),t}function e(e){e=t(e);var i=this[n][e.type];for(var r in i){var s=i[r].call(this,e);if(s===!1?(e.preventDefault(),e.stopPropagation()):void 0!==s&&(e.result=s),e.stopNow)break}}var n="gridifierEvents",i="gridifierHandle",r=function(){var t=(new Date).getTime();return"xxxxxxxxxxxx4xxxyxxxxxxxxxxxxxxx".replace(/[xy]/g,function(e){var n=(t+16*Math.random())%16|0;return t=Math.floor(t/16),("x"==e?n:3&n|8).toString(16)})};return{add:function(t,s,o){t.setInterval&&t!=window&&!t.frameElement&&(t=window),o.guid||(o.guid=r()),t[n]||(t[n]={},t[i]=function(n){return"undefined"!=typeof X?e.call(t,n):void 0}),t[n][s]||(t[n][s]={},t.addEventListener?t.addEventListener(s,t[i],!1):t.attachEvent&&t.attachEvent("on"+s,t[i])),t[n][s][o.guid]=o},rm:function(t,e,r){var s=t[n]&&t[n][e];if(s)if(r){delete s[r.guid];for(var o in s)return;t.removeEventListener?t.removeEventListener(e,t[i],!1):t.detachEvent&&t.detachEvent("on"+e,t[i]),delete t[n][e];for(var o in t[n])return;try{delete t[i],delete t[n]}catch(a){t.removeAttribute(i),t.removeAttribute(n)}}else for(var u in s)delete t[n][e][u]}}}(),k={_prefixes:["Moz","Webkit","ms","Ms","Khtml","O"],_getter:function(t,e,n){e=e||document.documentElement;var i=e.style;if("string"==typeof i[t])return t;for(var r=t,t=t.charAt(0).toUpperCase()+t.slice(1),s=0;s<this._prefixes.length;s++){var o=this._prefixes[s]+t;if("string"==typeof i[o])return n(o,r,s)}},get:function(t,e){return this._getter(t,e,function(t){return t})},getForCss:function(t,e){var n=this;return this._getter(t,e,function(t,e,i){return"-"+n._prefixes[i].toLowerCase()+"-"+e})}},W={init:function(){this._createTrimFunction(),this._createHasOwnPropFn(),this._checkIfHasTransitions(W.div()),this.browsers.init(),this.css3.init()},_createTrimFunction:function(){"function"!=typeof String.prototype.gridifierTrim&&(String.prototype.gridifierTrim=function(){return this.replace(/^\s+|\s+$/g,"")})},_createHasOwnPropFn:function(){var t=W.div(),e=document.body||document.documentElement;e.appendChild(t),Object.prototype.hasOwnProperty.call(t,"innerHTML")?this._hasOwnPropFn=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)}:this._hasOwnPropFn=function(t,e){for(var n in t)if(n==e)return!0;return!1},e.removeChild(t)},_checkIfHasTransitions:function(t){var e=["WebkitTransition","MozTransition","OTransition","msTransition","MsTransition","transition"];this._hasTransitions=!1;for(var n=0;n<e.length;n++)void 0!==t.style[e[n]]&&(this._hasTransitions=!0)},get:function(t,e){return t.getAttribute(e)},set:function(t,e,n){if(this.isArray(e))for(var i=0;i<e.length;i++)t.setAttribute(e[i][0],e[i][1]);else t.setAttribute(e,n)},rm:function(t,e){t.removeAttribute(e)},rmIfHas:function(t,e){if(this.isArray(e))for(var n in e)this.has(t,e[n])&&this.rm(t,e[n]);else this.has(t,e)&&this.rm(t,e)},has:function(t,e){return null===t.getAttribute(e)||""===t.getAttribute(e)?!1:!0},"int":function(t){return parseInt(t,10)},isJquery:function(t){return"undefined"==typeof jQuery?!1:t&&t instanceof jQuery},isNative:function(t){return"undefined"!=typeof t&&"undefined"!=typeof t.tagName&&"undefined"!=typeof t.nodeName&&"undefined"!=typeof t.ownerDocument&&"undefined"!=typeof t.removeAttribute?!0:!1},isArray:function(t){return"[object Array]"==Object.prototype.toString.call(t)},isObj:function(t){return"object"==typeof t&&null!==t},isChildOf:function(t,e){if(t==e)return!1;for(var n=t.parentNode;void 0!=n;){if(n==e)return!0;if(n==document.body)break;n=n.parentNode}return!1},hasTransitions:function(){return this._hasTransitions},hasVal:function(t,e){for(var n in t)if(t[n]==e)return!0;return!1},hasOwnProp:function(t,e){return this._hasOwnPropFn(t,e)},hasAnyProp:function(t,e){for(var n=0;n<e.length;n++)if(this._hasOwnPropFn(t,e[n]))return!0;return!1},toFixed:function(t,e){return parseFloat(+(Math.round(+(t.toString()+"e"+e)).toString()+"e"+-e))},areRoundedOrFlooredEq:function(t,e){return Math.round(t)==Math.round(e)||Math.floor(t)==Math.floor(e)},areRoundedOrCeiledEq:function(t,e){return Math.round(t)==Math.round(e)||Math.ceil(t)==Math.ceil(e)},filter:function(t,e,n){for(var n=n||window,i=[],r=0;r<t.length;r++)e.call(n,t[r])&&i.push(t[r]);return i},show:function(t){t.style.visibility="visible"},hide:function(t){t.style.visibility="hidden"},div:function(){return document.createElement("div")},browsers:{_navigator:null,init:function(){this._navigator="undefined"!=typeof navigator?navigator.userAgent:""},isAndroid:function(){return/android/i.test(this._navigator)},isAndroidFirefox:function(){return this.isAndroid()?/firefox|iceweasel/i.test(this._navigator):!1},isAndroidUC:function(){return this.isAndroid()?/UCBrowser/i.test(this._navigator):!1}},css:{set:function(t,e){W.isNative(t)||r("Error: not DOM.");for(var n in e)t.style[n]=e[n]},set4:function(t,e,n){for(var i=["Left","Right","Top","Bottom"],r=0;r<i.length;r++)t.style[e+i[r]]=W.isObj(n)?n[e+i[r]]:n},hasClass:function(t,e){var n=t.getAttribute("class");if(null==n||0==n.length)return!1;n=n.split(" ");for(var i=0;i<n.length;i++)if(n[i]=n[i].gridifierTrim(),n[i]==e)return!0;return!1},addClass:function(t,e){var n=t.getAttribute("class");if(null==n||0==n.length)var i=e;else var i=n+" "+e;W.set(t,"class",i)},removeClass:function(t,e){for(var n=t.getAttribute("class").split(" "),i="",r=0;r<n.length;r++)n[r].gridifierTrim()!=e&&(i+=n[r]+" ");i=i.substring(0,i.length-1),W.set(t,"class",i)}},css3:{_opacityProps:["opacity"],_perspectiveProps:["perspective"],_transformStyleProps:["transformStyle"],_backfaceVisibilityProps:["backfaceVisibility"],_transformOriginProps:["transformOrigin"],init:function(){for(var t=[["Webkit","Moz"],["webkit","moz","o","ms"]],e=0;e<t[0].length;e++){var n=t[0][e];this._opacityProps.push(n+"Opacity"),this._perspectiveProps.push(n+"Perspective"),this._transformStyleProps.push(n+"TransformStyle"),this._backfaceVisibilityProps.push(n+"BackfaceVisibility")}for(var e=0;e<t[1].length;e++)this._transformOriginProps.push(t[1][e]+"TransformOrigin")},transition:function(t,e){t.style[k.get("transition",t)]=e},transitionProperty:function(t,e){var n=t.style[k.get("transition",t)];if(0==n.length)return void(t.style[k.get("transition",t)]=e);var i=function(t){return t.replace(/cubic-bezier\([^\)]+/g,function(t){return t.replace(/,/g,";")})},r=function(t){return t.replace(/cubic-bezier\([^\)]+/g,function(t){return t.replace(/;/g,",")})},s=i(e);n=i(n);for(var o=n.split(","),a=0;a<o.length;a++){var u=o[a].gridifierTrim();if(0!=u.length){var c=u.split(" "),l=c[0];-1===s.search(l)&&(s+=", "+u)}}t.style[k.get("transition",t)]=r(s).gridifierTrim()},transform:function(t,e){t.style[k.get("transform",t)]=e},transformProperty:function(t,e,n){var i=t.style[k.get("transform",t)];if(0==i.length)return void(t.style[k.get("transform",t)]=e+"("+n+")");for(var r="",s=i.split(/\)/),o=!1,a=0;a<s.length;a++){var u=s[a].gridifierTrim();0!=u.length&&(-1!==u.search(e)?(r+=" "+e+"("+n+")",o=!0):r+=" "+u+")")}o||(r+=" "+e+"("+n+")"),t.style[k.get("transform",t)]=r.gridifierTrim()},style:function(t,e,n){for(var i=0;i<e.length;i++)t.style[e[i]]=n},opacity:function(t,e){this.style(t,this._opacityProps,e)},perspective:function(t,e){this.style(t,this._perspectiveProps,e)},transformStyle:function(t,e){this.style(t,this._transformStyleProps,e)},backfaceVisibility:function(t,e){this.style(t,this._backfaceVisibilityProps,e)},transformOrigin:function(t,e){for(var n=0;n<this._transformOriginProps.length;n++)"undefined"!=typeof t.style[this._transformOriginProps[n]]&&(t.style[this._transformOriginProps[n]]=e)}},find:{byId:function(t){return document.getElementById(t)},byClass:function(t,e){return t.querySelectorAll("."+e)},byQuery:function(t,e){var n=e.gridifierTrim()[0];if(">"==n){for(var i=e.substr(2,e.length-1),r=t.querySelectorAll(i),s=[],o=0;o<r.length;o++)r[o].parentNode==t&&s.push(r[o]);return s}return t.querySelectorAll(e)}},remove:{byQuery:function(t,e){for(var n=W.find.byQuery(t,e),i=0;i<n.length;i++){var r=n[i];r.parentNode.removeChild(r)}}}},z=function(){};n(z,{find:function(t,e){var e=e||!1,n=me.get();e||0!=n.length||r(V.NO_CNS);for(var i=ie.get(t),s=null,o=0;o<n.length;o++)if(i==n[o].itemGUID){s=n[o];break}if(null==s&&!Be.isEmpty())for(var a=Be.getQueued(),o=0;o<a.length;o++)if(i==a[o].cn.itemGUID){s=a[o].cn;break}return e||null!=s||r(V.CANT_FIND_CN),s},create:function(t,e){for(var n=["x1","x2","y1","y2"],i=0;i<n.length;i++){var r=n[i],s=e[r];e[r]=W.toFixed(e[r],2),isNaN(e[r])&&(e[r]=s)}return e.item=t,e.itemGUID=ie.get(t),e.hOffset=W.hasOwnProp(e,"hOffset")?e.hOffset:0,e.vOffset=W.hasOwnProp(e,"vOffset")?e.vOffset:0,e.restrictCollect=W.hasOwnProp(e,"restrictCollect")?e.restrictCollect:!1,jt.isConnected(t)||jt.markAsConnected(t),e},rm:function(t,e){for(var n=0;n<t.length;n++)if(ie.get(e.item)==ie.get(t[n].item))return void t.splice(n,1)},_remapGUIDS:function(t){for(var e=0;e<t.length;e++)t[e].itemGUID=ie.markForAppend(t[e].item)},remapAllGUIDS:function(){ie.reinit(),this._remapGUIDS(ye.sortForReappend(me.get()))},remapGUIDSIn:function(t){this._remapGUIDS(t)},getByGUIDS:function(t){for(var e=me.get(),n=[],i=0;i<e.length;i++)for(var r=0;r<t.length;r++)if(e[i].itemGUID==t[r]){n.push(e[i]);break}return n},syncParams:function(t){for(var e=me.get(),n=["x1","x2","y1","y2","hOffset","vOffset","restrictCollect"],i=0;i<t.length;i++)for(var r=0;r<e.length;r++)if(t[i].itemGUID==e[r].itemGUID){for(var s=0;s<n.length;s++)e[r][n[s]]=t[i][n[s]];break}},_getMinSize:function(t,e,n,i){var r=me.get();if(0==r.length)return 0;for(var s=function(s){return r[s][t]>=r[s][e]||r[s][t]<0||r[s][e]>n?Zt["outer"+i](r[s].item,!0):r[s][e]-r[s][t]+1},o=s(0),a=1;a<r.length;a++){var u=s(a);o>u&&(o=u)}return o},getMinWidth:function(){return this._getMinSize("x1","x2",Jt.x2(),"Width")},getMinHeight:function(){return this._getMinSize("y1","y2",Jt.y2(),"Height")},_compareGUIDS:function(t,e,n){for(var i=ie.get(e),r=0;r<t.length;r++)if(n(ie.get(t[r].item),i))return!0;return!1},isAnyGUIDSmallerThan:function(t,e){return this._compareGUIDS(t,e,function(t,e){return e>t})},isAnyGUIDBiggerThan:function(t,e){return this._compareGUIDS(t,e,function(t,e){return t>e})},getMaxY:function(){for(var t=me.get(),e=0,n=0;n<t.length;n++)t[n].y2>e&&(e=t[n].y2);return e},restoreOnSortDispersion:function(t,e,n){var i=ye.sortForReappend(me.get()),r=i[i.length-1],s=function(t,e,n){t.x1=e,t.x2=e,t.y1=n,t.y2=n};Kt.eq("append","default")?e(t,r,s):n(t,r,s)},getAllBACoord:function(t,e){for(var n=me.get(),i=[],r=0;r<n.length;r++)Kt.eq("sortDispersion",!1)&&e(n[r],t)&&i.push(n[r]);return i},fixAllXYPosAfterPrepend:function(t,e,n,i,r){if(t[i]>=0)return!1;var s=Math.round(Math.abs(t[i]));t[r]=Math.abs(t[i]-t[r]),t[i]=0;for(var o=me.get(),a=0;a<o.length;a++)t.itemGUID!=o[a].itemGUID&&(o[a][i]+=s,o[a][r]+=s);for(var a=0;a<e.length;a++)e[a][n]+=s;return Te.incAllBy(s,i,r),Te.createPrepended(t[i],t[r],i,r),!0}});var Q=function(){};n(Q,{isIntersectingAny:function(t,e){for(var n=0;n<t.length;n++){var i=t[n],r=e.y1<i.y1&&e.y2<i.y1,s=e.y1>i.y2&&e.y2>i.y2,o=e.x1<i.x1&&e.x2<i.x1,a=e.x1>i.x2&&e.x2>i.x2;if(!(r||s||o||a))return!0}return!1},getAllWithIntersectedCenter:function(t){for(var e=me.get(),n=[],i=0;i<e.length;i++){var r=e[i].x2-e[i].x1+1,s=e[i].y2-e[i].y1+1,o=e[i].x1+r/2,a=e[i].y1+s/2,u={x1:o,x2:o,y1:a,y2:a};this.isIntersectingAny([u],t)&&n.push(e[i])}return n},_findAllMaybeIntCns:function(t,e){for(var n=me.get(),i=[],r=0;r<n.length;r++)e(t,n[r])||i.push(n[r]);return i},findAllMaybeIntOnVgAppend:function(t){return this._findAllMaybeIntCns(t,function(t,e){return t.y>e.y2})},findAllMaybeIntOnVgPrepend:function(t){return this._findAllMaybeIntCns(t,function(t,e){return t.y<e.y1})},findAllMaybeIntOnHgAppend:function(t){return this._findAllMaybeIntCns(t,function(t,e){return t.x>e.x2})},findAllMaybeIntOnHgPrepend:function(t){return this._findAllMaybeIntCns(t,function(t,e){return t.x<e.x1})}});var Z=function(){this._ranges=null,Kt.eq("grid","vertical")?this.init("y1","y2"):this.init("x1","x2")};n(Z,{init:function(t,e){var n={cnIndexes:[]};n[t]=-1,n[e]=w.RANGE_SIZE-1,this._ranges=[n],this._attachAllCns(t,e)},incAllBy:function(t,e,n){for(var i=0;i<this._ranges.length;i++)this._ranges[i][e]+=t,this._ranges[i][n]+=t},createPrepended:function(t,e,n,i){var r={cnIndexes:[]};r[n]=-1,r[i]=e,this._ranges.unshift(r)},_createNext:function(t,e){var n=this._ranges[this._ranges.length-1][e]+1,i={cnIndexes:[]};i[t]=n,i[e]=n+w.RANGE_SIZE-1,this._ranges.push(i)},attachCn:function(t,e,n,i){for(;t[i]+1>this._ranges[this._ranges.length-1][i];)this._createNext(n,i);for(var s=!1,o=0;o<this._ranges.length;o++){var a=t[i]<this._ranges[o][n],u=t[n]>this._ranges[o][i];a||u||(this._ranges[o].cnIndexes.push(e),s=!0)}s||r("Range for cn NF")},_attachAllCns:function(t,e){for(var n=me.get(),i=0;i<n.length;i++)this.attachCn(n[i],i,t,e)},mapAllIntAndSideCns:function(t,e,n,i,r,s,o,a){for(var u=this._ranges,c=r(u),l=[],h=0;h<t.length;h++){for(var f=!1,d=c!=r(u);!f;){if(c>s(u)||0>c){c=r(u);break}t[h][e]>=u[c][n]&&t[h][e]<=u[c][i]?f=!0:(c=a(c),d=!1)}d||(l=o(c,u)),t[h].cnIndexes=l}return t},firstRngIndexFn:function(){return function(t){return 0}},lastRngIndexFn:function(){return function(t){return t.length-1}},lowerCrCnIndexesFn:function(){return function(t,e){for(var n=[],i=t;i>=0;i--)n.push(e[i].cnIndexes);return n}},upperCrCnIndexesFn:function(){return function(t,e){for(var n=[],i=t;i<e.length;i++)n.push(e[i].cnIndexes);return n}},incFn:function(){return function(t){return++t}},decFn:function(){return function(t){return--t}},getAllCnsFromIntRange:function(t,e,n){for(var i=this._ranges,r=0;r<i.length;r++)if(t>=i[r][e]&&t<=i[r][n])return i[r].cnIndexes;for(var s=function(t,e){for(var n=0;n<t.length;n++)if(t[n]==e)return!0;return!1},o=[],r=0;r<i.length;r++)for(var a=0;a<i[r].cnIndexes.length;a++)s(o,i[r].cnIndexes[a])||o.push(i[r].cnIndexes[a]);return o},getAllCnsFromIntAndTLSideRgs:function(t,e,n){for(var i=this._ranges,r=[],s=null,o=i.length-1;o>=0;o--)if(t>=i[o][e]&&t<=i[o][n]){s=o;break}null==s&&(s=i.length-1);for(var o=s;o>=0;o--)r.push(i[o].cnIndexes);return r},getAllCnsFromIntAndRBSideRgs:function(t,e,n){for(var i=this._ranges,r=[],s=null,o=0;o<i.length;o++)if(t>=i[o][e]&&t<=i[o][n]){s=o;break}null==s&&(s=0);for(var o=s;o<i.length;o++)r.push(i[o].cnIndexes);return r}});var j=function(){};n(j,{_sortForReappend:function(t,e,n,i){if(Kt.eq("sortDispersion",!1))t.sort(function(t,e){return ie.get(t.item)>ie.get(e.item)?1:-1});else{Kt.eq("append","default")?t.sort(function(t,i){return W.areRoundedOrFlooredEq(t[e],i[e])?t[n]<i[n]?-1:1:t[e]<i[e]?-1:1}):t.sort(function(t,n){return W.areRoundedOrFlooredEq(t[e],n[e])?t[i]>n[i]?-1:1:t[e]<n[e]?-1:1});var r=Kt.getApi("rsort");t=r(t)}return t},sortForReappend:function(t){return Kt.eq("grid","vertical")?this._sortForReappend(t,"y1","x1","x2"):this._sortForReappend(t,"x1","y2","y1")}});var J=function(){this._lastXYExpandedCns=[]};n(J,{_isBefore:function(t,e,n,i){return t[n]<e[n]&&t[i]<e[n]},_isAfter:function(t,e,n,i){return t[n]>e[i]&&t[i]>e[i]},getLastXYExpandedCns:function(){return this._lastXYExpandedCns},isIntMoreThanOneCnXY:function(t,e,n){for(var i=this,r=me.get(),s=[],o=function(t){if(0==s.length)return!1;for(var o=0;o<s.length;o++){var a=r[s[o]],u=a[e],c=a[n];a[e]=Math.ceil(a[e]),a[n]=Math.floor(a[n]);var l=i._isBefore(t,a,e,n),h=i._isAfter(t,a,e,n);if(a[e]=u,a[n]=c,!l&&!h)return!0}return!1},a=0,u=0;u<r.length;u++)i._isBefore(t,r[u],e,n)||i._isAfter(t,r[u],e,n)||o(r[u])||(s.push(u),a++);return a>1},getMostBigFromAllXYIntCns:function(t,e,n){for(var i=me.get(),r=null,s=0;s<i.length;s++)if(!this._isBefore(t,i[s],e,n)&&!this._isAfter(t,i[s],e,n))if(null==r)r=i[s];else{var o=Math.abs(i[s][n]-i[s][e]),a=Math.abs(r[n]-r[e]);o>a&&(r=i[s])}return r},getAllXYIntCns:function(t,e,n){for(var i=me.get(),r=[],s=0;s<i.length;s++)this._isBefore(t,i[s],e,n)||this._isAfter(t,i[s],e,n)||r.push(i[s]);return r},expandXYAllCnsToMostBig:function(t,e,n,i,r){var s=o("eq",Kt),a=this.getMostBigFromAllXYIntCns(t,e,n);if(null!=a){for(var u=this.getAllXYIntCns(t,e,n),c=[],l=0;l<u.length;l++)if(u[l][e]=a[e],u[l][n]=a[n],s("align","left")||s("align","top"))0!=u[l][i]&&c.push(u[l]),u[l][i]=0;else{var h=Zt["outer"+r](u[l].item,!0);if(s("align","center"))var f=Math.abs(u[l][n]-u[l][e]+1)/2-h/2;else var f=Math.abs(u[l][n]-u[l][e]+1)-h;u[l][i]!=f&&(u[l][i]=f,c.push(u[l]))}this._lastXYExpandedCns=c}}});var $=function(){this._cleaner=null};n($,{_updateCleaner:function(){var t=B.CLEANERS;this._cleaner=Kt.eq("sortDispersion",!1)?t.INSIDE_OR_BEFORE:t.INSIDE},_isInsideCleaner:function(){return this._updateCleaner(),this._cleaner==B.CLEANERS.INSIDE},_isMappedCrIntAnySideCn:function(t,e,n,i,r){for(var s=me.get(),o=0;o<t.cnIndexes.length;o++)for(var a=0;a<t.cnIndexes[o].length;a++){var u=s[t.cnIndexes[o][a]];if(fe.roundCnPerCr(u,t),t[e]>=u[n]&&t[e]<=u[i]&&r.call(this,t,u))return fe.unroundCnPerCr(u,t),!0;fe.unroundCnPerCr(u,t)}return!1},_isMappedCrIntAnyTopCn:function(t){return this._isMappedCrIntAnySideCn(t,"x","x1","x2",function(t,e){return this._isInsideCleaner()?t.y>=e.y1&&t.y<=e.y2:t.y>=e.y1})},_isMappedCrIntAnyBottomCn:function(t){return this._isMappedCrIntAnySideCn(t,"x","x1","x2",function(t,e){return this._isInsideCleaner()?t.y<=e.y2&&t.y>=e.y1:t.y<=e.y2})},_isMappedCrIntAnyLeftCn:function(t){return this._isMappedCrIntAnySideCn(t,"y","y1","y2",function(t,e){return this._isInsideCleaner()?t.x>=e.x1&&t.x<=e.x2:t.x>=e.x1})},_isMappedCrIntAnyRightCn:function(t){return this._isMappedCrIntAnySideCn(t,"y","y1","y2",function(t,e){return this._isInsideCleaner()?t.x<=e.x2&&t.x>=e.x1:t.x<=e.x2})},_rmIntFrom:function(t,e,n){var i=ue.get(),r=ue.getClone();r.sort(function(t,i){return t[e]==i[e]?0:n(t[e],i[e])?-1:1}),r=me["mapAllIntAnd"+t+"Cns"](r);for(var s=0;s<r.length;s++){var o="_isMappedCrIntAny"+t+"Cn";i[r[s].crIndex].isInt=this[o](r[s])}for(var s=0;s<i.length;s++)i[s].isInt&&(i.splice(s,1),s--)},rmIntFromTop:function(){this._rmIntFrom("Top","y",function(t,e){return t.y>e.y})},rmIntFromBottom:function(){this._rmIntFrom("Bottom","y",function(t,e){return t.y<e.y})},rmIntFromLeft:function(){this._rmIntFrom("Left","x",function(t,e){return t.x>e.x})},rmIntFromRight:function(){this._rmIntFrom("Right","x",function(t,e){return t.x<e.x})},_rmAllTooFar:function(t,e){var n=ue.get();if(0!=n.length){for(var i=n[0],r=1;r<n.length;r++)t(n[r],i)&&(i=n[r]);for(var r=0;r<n.length;r++)e(n[r],i,W["int"](Kt.get("insertRange")))&&(n.splice(r,1),r--)}},_crSmCr:function(t){return function(e,n){return e[t]<n[t]}},_crBgCr:function(t){return function(e,n){return e[t]>n[t]}},_crSmValidC:function(t,e){return function(n,i,r){return n[t]<i[t]+r*e}},_crBgValidC:function(t,e){return function(n,i,r){return n[t]>i[t]+r*e}},rmAllTooBottomFromMostTop:function(){this._rmAllTooFar(this._crSmCr("y"),this._crBgValidC("y",1))},rmAllTooTopFromMostBottom:function(){this._rmAllTooFar(this._crBgCr("y"),this._crSmValidC("y",-1))},rmAllTooRightFromMostLeft:function(){this._rmAllTooFar(this._crSmCr("x"),this._crBgValidC("x",1))},rmAllTooLeftFromMostRight:function(){this._rmAllTooFar(this._crBgCr("x"),this._crSmValidC("x",-1))}});var K=function(){this._crs=[],this._nextFlushCb=null};n(K,{eq:function(t,e){return t.side==e},isInitial:function(t){return t.itemGUID==B.INITIAL_GUID},create:function(t,e,n,i,r){this._crs.push({type:t,side:e,x:W.toFixed(n,2),y:W.toFixed(i,2),itemGUID:"undefined"==typeof r?B.INITIAL_GUID:r})},count:function(){return this._crs.length},get:function(){return this._crs},set:function(t){this._crs=t},setNextFlushCb:function(t){this._nextFlushCb=t},flush:function(){this._crs=[],"function"==typeof this._nextFlushCb&&(this._nextFlushCb(),this._nextFlushCb=null)},getClone:function(){for(var t=[],e=["type","side","x","y","itemGUID"],n=0;n<this._crs.length;n++){for(var i={},r=0;r<e.length;r++)i[e[r]]=this._crs[n][e[r]];i.crIndex=n,t.push(i)}return t}});var tt=function(){};n(tt,{_mostYClose:function(t,e,n,i,r,s){for(var o=me.get(),a=null,u=Kt.eq("grid","vertical")?r(t):s(t),c=0;c<u.length;c++)for(var l=0;l<u[c].length;l++){var h=o[u[c][l]];(t.x>=h.x1&&t.x<=h.x2||e(t,h))&&n(t,h)&&(null==a?a=h:i(h,a)&&(a=h));
}return a},_crXBgCnX2:function(t,e){return t.x>e.x2},_crXSmCnX1:function(t,e){return t.x<e.x1},_crYBgCnY2:function(t,e){return t.y>e.y2},_crYSmCnY1:function(t,e){return t.y<e.y1},_cnX1BgCnX2:function(t,e){return t.x1>e.x2},_cnX1SmCnX1:function(t,e){return t.x1<e.x1},_cnY2BgCnY2:function(t,e){return t.y2>e.y2},_cnY1SmCnY1:function(t,e){return t.y1<e.y1},_intXCns:function(t){return me.getAllIntXCns(t)},_intXAndUpperCns:function(t){return me.getAllIntXAndTopCns(t)},_intXAndLowerCns:function(t){return me.getAllIntXAndBottomCns(t)},_intYAndLeftCns:function(t){return me.getAllIntYAndLeftCns(t)},_intYAndRightCns:function(t){return me.getAllIntYAndRightCns(t)},mostBottomFromTopOrTopLeft:function(t){var e=this;return this._mostYClose(t,e._crXBgCnX2,e._crYBgCnY2,e._cnY2BgCnY2,e._intXAndUpperCns,e._intYAndLeftCns)},mostBottomFromTopOrTopRight:function(t){var e=this;return this._mostYClose(t,e._crXSmCnX1,e._crYBgCnY2,e._cnY2BgCnY2,e._intXAndUpperCns,e._intYAndRightCns)},mostTopFromBottomOrBottomLeft:function(t){var e=this;return this._mostYClose(t,e._crXBgCnX2,e._crYSmCnY1,e._cnY1SmCnY1,e._intXAndLowerCns,e._intYAndLeftCns)},mostTopFromBottomOrBottomRight:function(t){var e=this;return this._mostYClose(t,e._crXSmCnX1,e._crYSmCnY1,e._cnY1SmCnY1,e._intXAndLowerCns,e._intYAndRightCns)},_mostXClose:function(t,e,n,i,r){var s=me.get(),o=null,a=function(i){t.y>=i.y1&&t.y<=i.y2&&e(t,i)&&(null==o?o=i:n(i,o)&&(o=i))};if(Kt.eq("grid","vertical"))for(var u=i(t),c=0;c<u.length;c++)a(s[u[c]]);else for(var u=r(t),c=0;c<u.length;c++)for(var l=0;l<u[c].length;l++)a(s[u[c][l]]);return o},mostLeftFromRight:function(t){var e=this;return this._mostXClose(t,e._crXSmCnX1,e._cnX1SmCnX1,e._intXCns,e._intYAndRightCns)},mostRightFromLeft:function(t){var e=this;return this._mostXClose(t,e._crXBgCnX2,e._cnX1BgCnX2,e._intXCns,e._intYAndLeftCns)}});var et=function(){};n(et,{recreateForFirst:function(t,e){Kt.eq("append","reversed")?(oe.setLast(M.REV_APPEND),this._recreate(t,e,Pe,"Rev")):(oe.setLast(M.APPEND),this._recreate(t,e,Se,"Def"))},_recreate:function(t,e,n,i){me.reinitRanges(),o("recreateCrs",n)(),Kt.eq("grid","vertical")?ce.rmIntFromBottom():ce.rmIntFromRight()}});var nt=function(){};n(nt,{roundCnPerCr:function(t,e){t.origX1=t.x1,t.origX2=t.x2,t.origY1=t.y1,t.origY2=t.y2;var n=function(t){return ue.eq(e,t)};n(B.BOTTOM.LEFT)||n(B.RIGHT.TOP)?(t.x1=Math.floor(t.x1),t.y1=Math.floor(t.y1)):n(B.LEFT.TOP)||n(B.BOTTOM.RIGHT)?(t.x2=Math.ceil(t.x2),t.y1=Math.floor(t.y1)):n(B.LEFT.BOTTOM)||n(B.TOP.RIGHT)?(t.x2=Math.ceil(t.x2),t.y2=Math.ceil(t.y2)):(n(B.TOP.LEFT)||n(B.RIGHT.BOTTOM))&&(t.x1=Math.floor(t.x1),t.y2=Math.ceil(t.y2))},unroundCnPerCr:function(t,e){t.x1=t.origX1,t.y1=t.origY1,t.x2=t.origX2,t.y2=t.origY2}});var it=function(){this._crs=null};n(it,{attach:function(t){this._crs=t},getSelected:function(){return this._crs},_selectOnlyMostSideCr:function(t,e,n){for(var i=null,r=null,s=this._crs.length;s--;)this._crs[s].side==t&&(null==i||n(this._crs[s][e],r))&&(i=this._crs[s].itemGUID,r=this._crs[s][e]);if(null!=i)for(var s=this._crs.length;s--;)this._crs[s].side==t&&this._crs[s].itemGUID!=i&&this._crs.splice(s,1)},_bgCond:function(t,e){return t>e},_smCond:function(t,e){return e>t},selectOnlyMostBottom:function(t){this._selectOnlyMostSideCr(t,"y",this._bgCond)},selectOnlyMostTop:function(t){this._selectOnlyMostSideCr(t,"y",this._smCond)},selectOnlyMostRight:function(t){this._selectOnlyMostSideCr(t,"x",this._bgCond)},selectOnlyMostLeft:function(t){this._selectOnlyMostSideCr(t,"x",this._smCond)},_selectOnly:function(t,e){for(var n=0;n<this._crs.length;n++)!ue.isInitial(this._crs[n])&&e(this._crs[n].itemGUID)&&t!=this._crs[n].side&&(this._crs.splice(n,1),n--)},selectOnlyFromAppended:function(t){this._selectOnly(t,function(t){return!ie.wasPrepended(t)})},selectOnlyFromPrepended:function(t){this._selectOnly(t,function(t){return ie.wasPrepended(t)})}});var rt=function(){this._crs=null,this._newCrs=null};n(rt,{attach:function(t){this._crs=t,this._newCrs=[]},getNew:function(){return this._newCrs},_createShifted:function(t,e,n){this._newCrs.push({type:n.type,side:B.SHIFTED,x:parseFloat(t),y:parseFloat(e),itemGUID:W["int"](n.itemGUID)})},shiftAll:function(){for(var t=[[B.LEFT.TOP,"LeftTop"],[B.LEFT.BOTTOM,"LeftBottom"],[B.BOTTOM.RIGHT,"BottomRight"],[B.BOTTOM.LEFT,"TopLeft"],[B.TOP.LEFT,"TopLeft"],[B.TOP.RIGHT,"BottomRight"],[B.RIGHT.BOTTOM,"RightBottom"],[B.RIGHT.TOP,"RightTop"]],e=0;e<this._crs.length;e++){this._newCrs.push(this._crs[e]);for(var n=0;n<t.length;n++)if(ue.eq(this._crs[e],t[n][0])){this["_shift"+t[n][1]](this._crs[e]);break}}},_shiftLeftTop:function(t){var e=le.mostBottomFromTopOrTopLeft(t);null!=e?e.y2+1!=t.y&&this._createShifted(t.x,e.y2+1,t):0!=t.y&&this._createShifted(t.x,0,t)},_shiftLeftBottom:function(t){var e=le.mostTopFromBottomOrBottomLeft(t);if(null!=e)e.y1-1!=t.y&&this._createShifted(t.x,e.y1-1,t);else{var n=ve.getMaxY();0!=n&&n-1!=t.y&&this._createShifted(t.x,n-1,t)}},_shiftBottomRight:function(t){var e=le.mostLeftFromRight(t);if(null!=e)e.x1-1!=t.x&&this._createShifted(e.x1-1,t.y,t);else{if(Kt.eq("grid","horizontal")&&t.type==B.PREPEND.DEF)return;t.x!=Jt.x2()&&this._createShifted(Jt.x2(),t.y,t)}},_shiftTopLeft:function(t){var e=le.mostRightFromLeft(t);null!=e?e.x2+1!=t.x&&this._createShifted(e.x2+1,t.y,t):0!=t.x&&this._createShifted(0,t.y,t)},_shiftRightBottom:function(t){var e=le.mostTopFromBottomOrBottomRight(t);if(null!=e)e.y1-1!=t.y&&this._createShifted(t.x,e.y1-1,t);else{var n=ve.getMaxY();0!=n&&n-1!=t.y&&this._createShifted(t.x,n-1,t)}},_shiftRightTop:function(t){var e=le.mostBottomFromTopOrTopRight(t);null!=e?e.y2+1!=t.y&&this._createShifted(t.x,e.y2+1,t):0!=t.y&&this._createShifted(t.x,0,t)},_shiftAllTo:function(t,e,n){this._newCrs=this._crs;for(var i=0;i<this._newCrs.length;i++)this._newCrs[i].side==t&&(this._newCrs[i][e]=n)},shiftAllToRight:function(t){this._shiftAllTo(t,"x",Jt.x2())},shiftAllToLeft:function(t){this._shiftAllTo(t,"x",0)},shiftAllToTop:function(t){this._shiftAllTo(t,"y",0)},shiftAllToBottom:function(t){this._shiftAllTo(t,"y",Jt.y2())}});var st=function(){this._crs=null};n(st,{attach:function(t){this._crs=t},getSorted:function(){return this._crs},_sortForVG:function(t,e){this._crs.sort(function(n,i){return W.areRoundedOrCeiledEq(n.y,i.y)?t?e?n.x>i.x?1:-1:n.x<i.x?1:-1:e?n.x>i.x?1:-1:n.x<i.x?1:-1:t?n.y<i.y?1:-1:n.y<i.y?-1:1})},_sortForHG:function(t,e){this._crs.sort(function(n,i){return W.areRoundedOrCeiledEq(n.x,i.x)?t?e?n.y<i.y?1:-1:n.y>i.y?1:-1:e?n.y<i.y?-1:1:n.y>i.y?-1:1:t?n.x<i.x?1:-1:n.x<i.x?-1:1})},sortForPrepend:function(){var t="default"==Kt.get("prepend");Kt.eq("grid","vertical")?this._sortForVG(!0,t):this._sortForHG(!0,t)},sortForAppend:function(){var t="default"==Kt.get("append");Kt.eq("grid","vertical")?this._sortForVG(!1,t):this._sortForHG(!1,t)}});var ot=function(){this._collectFn=null,this._createCollectFn(),i(this,{collect:this.collect,collectNew:this.collectDisconnected,collectConnected:this.collectConnected})};n(ot,{_createCollectFn:function(){var t=this;this._collectFn=function(e){if(Kt.notEq("class",!1))var n="."+Kt.get("class");else if(Kt.notEq("data",!1))var n="["+Kt.get("data")+"]";else var n=Kt.get("query");return t.filterCollectable(W.find.byQuery(e,n))}},filterCollectable:function(t){return W.filter(t,function(t){return!this.isNotCollectable(t)},this)},markAsNotCollectable:function(t){W.set(t,w.COLL.NOT_COLLECTABLE_DATA,"r")},unmarkAsNotCollectable:function(t){W.rmIfHas(t,w.COLL.NOT_COLLECTABLE_DATA)},isNotCollectable:function(t){return W.has(t,w.COLL.NOT_COLLECTABLE_DATA)},collect:function(){return this._collectFn(Jt.get())},collectByQuery:function(t){return this.filterCollectable(W.find.byQuery(Jt.get(),t))},collectConnected:function(){return jt.filterConnected(this._collectFn(Jt.get()))},collectDisconnected:function(){return jt.filterNotConnected(this._collectFn(Jt.get()))},filter:function(t){for(var e=Kt.getApi("filter"),n=0;n<e.length;n++){for(var i=[],r=0;r<t.length;r++)e[n](t[r])&&i.push(t[r]);t=i}return t},sort:function(t){return this.saveOriginalOrder(t),t.sort(function(t,e){return Kt.getApi("sort")(t,e,Ue,W)}),this.flushOriginalOrder(t),t},saveOriginalOrder:function(t){for(var e=0;e<t.length;e++)W.set(t[e],w.COLL.SORT_INDEX_DATA,e+1)},flushOriginalOrder:function(t){for(var e=0;e<t.length;e++)W.rm(t[e],w.COLL.SORT_INDEX_DATA)}});var at=function(){this._max=9999,this._min=1e4,this._firstPrepended=null};n(at,{reinit:function(){this._max=9999,this._min=1e4},reinitMax:function(t){this._max="undefined"==typeof t||null==t?9999:t},get:function(t){return W["int"](W.get(t,w.GUID_DATA))},set:function(t,e){W.set(t,w.GUID_DATA,e)},rm:function(t){W.rm(t,w.GUID_DATA)},markForAppend:function(t){return W.set(t,w.GUID_DATA,++this._max),this._max},markForPrepend:function(t){return W.set(t,w.GUID_DATA,--this._min),this._min},markIfFirstPrepended:function(t){null==this._firstPrepended&&(this._firstPrepended=W["int"](W.get(t,w.GUID_DATA)))},unmarkFirstPrepended:function(){this._firstPrepended=null},wasPrepended:function(t){return null==this._firstPrepended?!1:W["int"](t)<=this._firstPrepended}});var ut=function(){};n(ut,{markAsConnected:function(t){W.set(t,w.ITEM.IS_CONNECTED_DATA,"y")},unmarkAsConnected:function(t){W.rm(t,w.ITEM.IS_CONNECTED_DATA)},isConnected:function(t){return W.has(t,w.ITEM.IS_CONNECTED_DATA)},filterConnected:function(t){return W.filter(t,function(t){return this.isConnected(t)},this)},filterNotConnected:function(t){return W.filter(t,function(t){return!this.isConnected(t)},this)},toNative:function(t){var e=[];if(W.isJquery(t))for(var n=0;n<t.length;n++)e.push(t.get(n));else if(W.isNative(t))e.push(t);else if(W.isArray(t))for(var n=0;n<t.length;n++)e.push(W.isJquery(t[n])?t[n].get(0):t[n]),W.isNative(e[e.length-1])||r(V.NOT_NATIVE);else r(V.NOT_NATIVE);return e}});var ct=function(){this._eventsData=[];var t=function(t){return function(e,n){var i=this.changeCss(t,e,n);return re.updateAs(),be.fromFirstSortedCn(i),Qt}};i(this,{toggleCss:t("toggle"),addCss:t("add"),rmCss:t("rm")})};n(ct,{changeCss:function(t,e,n){for(var e=jt.filterConnected(jt.toNative(e)),n=W.isArray(n)?n:[n],i=0;i<e.length;i++){for(var r=[],s=[],o=function(t,e){r.push(e),W.css.hasClass(t,e)||W.css.addClass(t,e)},a=function(t,e){s.push(e),W.css.hasClass(t,e)&&W.css.removeClass(t,e)},u=0;u<n.length;u++)"toggle"==t?W.css.hasClass(e[i],n[u])?a(e[i],n[u]):o(e[i],n[u]):"add"==t?o(e[i],n[u]):"rm"==t&&a(e[i],n[u]);this._saveEventData(e[i],r,s)}return e},_saveEventData:function(t,e,n){for(var i=ie.get(t),r=null,s=0;s<this._eventsData.length;s++)if(this._eventsData[s].itemGUID==i){r=this._eventsData[s];break}null==r&&(r={},this._eventsData.push(r)),r.itemGUID=i,r.added=e,r.removed=n},emitEvents:function(t){if(0!=this._eventsData.length)for(var e=0;e<t.length;e++)for(var n=0;n<this._eventsData.length;n++)if(W["int"](t[e].itemGUID)==this._eventsData[n].itemGUID){var i=this._eventsData[n];!function(t,e,n){setTimeout(function(){$t.emit(Y.CSS_CHANGE,t,e,n)},Kt.get("coordsChangeTime"))}(t[e].item,i.added,i.removed),this._eventsData.splice(n,1);break}}});var lt=function(){this._owCache=[],this._ohCache=[],this._nextOwGUID=0,this._nextOhGUID=0,this._isActive=!1,this._owAntialias=0,this._ohAntialias=0};n(lt,{setOuterWidthAntialiasValue:function(t){this._owAntialias=t},setOuterHeightAntialiasValue:function(t){this._ohAntialias=t},_markAsCachedPerOw:function(t,e){W.set(t,[[w.SRM.CACHED_PER_OW_DATA,w.SRM.EMPTY_DATA],[w.SRM.CACHED_PER_OW_ITEM_GUID_DATA,e]])},_markAsCachedPerOh:function(t,e){W.set(t,[[w.SRM.CACHED_PER_OH_DATA,w.SRM.EMPTY_DATA],[w.SRM.CACHED_PER_OH_ITEM_GUID_DATA,e]])},unmarkAsCached:function(t){W.rmIfHas(t,[w.SRM.CACHED_PER_OW_DATA,w.SRM.CACHED_PER_OW_ITEM_GUID_DATA,w.SRM.CACHED_PER_OH_DATA,w.SRM.CACHED_PER_OH_ITEM_GUID_DATA])},_getCachedItemEntry:function(t,e,n){for(var i=0;i<e.length;i++)if(parseInt(e[i].GUID)==parseInt(n))return e[i]},_getOwCachedItemEntry:function(t){return this._getCachedItemEntry(t,this._owCache,W.get(t,w.SRM.CACHED_PER_OW_ITEM_GUID_DATA))},_getOhCachedItemEntry:function(t){return this._getCachedItemEntry(t,this._ohCache,W.get(t,w.SRM.CACHED_PER_OH_ITEM_GUID_DATA))},_isCallCached:function(t,e,n,i){if(!W.has(t,n))return!1;var r=i(t);return e?null!=r.cachedCalls.withMargins:null!=r.cachedCalls.withoutMargins},_isOwCallCached:function(t,e){var n=this;return this._isCallCached(t,e,w.SRM.CACHED_PER_OW_DATA,function(t){return n._getOwCachedItemEntry(t)})},_isOhCallCached:function(t,e){var n=this;return this._isCallCached(t,e,w.SRM.CACHED_PER_OH_DATA,function(t){return n._getOhCachedItemEntry(t)})},startCachingTransaction:function(){this._isActive=!0},stopCachingTransaction:function(){this._isActive=!1;for(var t=0;t<this._owCache.length;t++)this.unmarkAsCached(this._owCache[t].item);for(var t=0;t<this._ohCache.length;t++)this.unmarkAsCached(this._ohCache[t].item);this._owCache=[],this._ohCache=[],this._nextOwGUID=0,this._nextOhGUID=0},_callRealOuter:function(t,e,n,i,r,s,o){var a=this,o=o||!1,u=q.recalcPtWidthFn,c=q.recalcPtHeightFn,l=function(t){return function(e,n,i,r){return a[t](e,n,!0,i,r,!0)}};q.recalcPtWidthFn=l("outerWidth"),q.recalcPtHeightFn=l("outerHeight"),s||q.clearRecursiveSubcallsData();var h=o?"outerHeight":"outerWidth",f=q[h](t,e,i,r);return n||(f-=o?this._ohAntialias:this._owAntialias),q.recalcPtWidthFn=u,q.recalcPtHeightFn=c,f},_callRealOw:function(t,e,n,i,r,s){return this._callRealOuter(t,e,n,i,r,s)},_callRealOh:function(t,e,n,i,r,s){return this._callRealOuter(t,e,n,i,r,s,!0)},_outer:function(t,e,n,i,r,s,o){var a=arguments,o=o||!1;if(a[2]=a[2]||!1,a[5]=a[5]||!1,!this._isActive)return o?this._callRealOh.apply(this,a):this._callRealOw.apply(this,a);var u=null;if(!o&&this._isOwCallCached(t,e)?u=this._getOwCachedItemEntry(t):o&&this._isOhCallCached(t,e)&&(u=this._getOhCachedItemEntry(t)),null!=u){var c=u.cachedCalls;return e?c.withMargins:c.withoutMargins}var l=o?this._callRealOh.apply(this,a):this._callRealOw.apply(this,a);if(!o&&W.has(t,w.SRM.CACHED_PER_OW_DATA)||o&&W.has(t,w.SRM.CACHED_PER_OH_DATA)){var u=o?this._getOhCachedItemEntry(t):this._getOwCachedItemEntry(t);e?u.cachedCalls.withMargins=l:u.cachedCalls.withoutMargins=l}else{o?this._markAsCachedPerOh(t,++this._nextOhGUID):this._markAsCachedPerOw(t,++this._nextOwGUID);var h={withMargins:e?l:null,withoutMargins:e?null:l},f=o?this._ohCache:this._owCache;f.push({GUID:o?this._nextOhGUID:this._nextOwGUID,item:t,cachedCalls:h})}return l},outerWidth:function(t,e,n,i,r,s){return this._outer(t,e,n,i,r,s)},outerHeight:function(t,e,n,i,r,s){return this._outer(t,e,n,i,r,s,!0)},positionTop:function(t){return q.positionTop(t)},positionLeft:function(t){return q.positionLeft(t)},_offset:function(t,e,n,i){var e=e||!1;if(e)var r=this[n](t),s=this[n](t,!0),o=s-r,a=o/2,u=q[i](t)-a;else var u=q[i](t);return u},offsetLeft:function(t,e){return this._offset(t,e,"outerWidth","offsetLeft")},offsetTop:function(t,e){return this._offset(t,e,"outerHeight","offsetTop")},viewportWidth:function(){return document.documentElement.clientWidth},viewportHeight:function(){return document.documentElement.clientHeight},viewportScrollLeft:function(){return window.pageXOffset||document.documentElement.scrollLeft},viewportScrollTop:function(){return window.pageYOffset||document.documentElement.scrollTop},viewportDocumentCoords:function(){return{x1:this.viewportScrollLeft(),x2:this.viewportScrollLeft()+this.viewportWidth()-1,y1:this.viewportScrollTop(),y2:this.viewportScrollTop()+this.viewportHeight()-1}},itemSizes:function(t){return{width:this.outerWidth(t,!0),height:this.outerHeight(t,!0)}},copyComputedStyle:function(t,e){var n=this,i=function(t,e){q.cloneComputedStyle(t,e);for(var r=0;r<t.childNodes.length;r++)if(1==t.childNodes[r].nodeType){i(t.childNodes[r],e.childNodes[r]);var s=q.getComputedCSS(t.childNodes[r]);/.*px.*/.test(s.left)&&(e.childNodes[r].style.left=n.positionLeft(t.childNodes[r])+"px"),/.*px.*/.test(s.top)&&(e.childNodes[r].style.top=n.positionTop(t.childNodes[r])+"px");var o=q.getUncomputedCSS(t.childNodes[r]);e.childNodes[r].style.width=n.outerWidth(t.childNodes[r])+"px",0!=W["int"](o.height)&&(e.childNodes[r].style.height=n.outerHeight(t.childNodes[r])+"px")}};i(t,e)}});var ht=function(){i(this,{disconnect:function(t){var e=this;return t=jt.filterConnected(jt.toNative(t)),setTimeout(function(){be.sync(),e.disconnect(t,w.DISC_TYPES.HARD),be.all()},w.REFLOW_FIX_DELAY),Qt},pop:function(){var t=Qt.first();return null!=t&&Qt.disconnect(t),t},shift:function(){var t=Qt.last();return null!=t&&Qt.disconnect(t),t}})};n(ht,{disconnect:function(t,e){var e=e||w.DISC_TYPES.SOFT,t=jt.filterConnected(jt.toNative(t));if(e==w.DISC_TYPES.HARD)for(var n=0;n<t.length;n++)ne.markAsNotCollectable(t[n]);for(var i=this._findCnsToDisc(t),n=0;n<i.length;n++)me.rm(i[n]),ie.rm(i[n].item);0==me.count()&&this._recreateCrs();for(var n=0;n<i.length;n++)jt.unmarkAsConnected(i[n].item);me.reinitRanges(),this._scheduleRender(i)},_findCnsToDisc:function(t){for(var e=[],n=0;n<t.length;n++)e.push(ve.find(t[n]));return ye.sortForReappend(e)},_recreateCrs:function(){ue.flush(),Kt.eq("append","default")?Se.createInitialCr():Pe.createInitialCr()},_scheduleRender:function(t){var e=He.itemsToBatches(t,w.DISC_BATCH,!0);xe.markAsSchToHide(t);for(var n=0;n<e.length;n++)!function(t,e){setTimeout(function(){xe.hide(t)},w.DISC_DELAY*e)}(e[n],n)}});var ft=function(){};n(ft,{filter:function(){var t=ne.collect(),e=ne.collectConnected(),n=ne.sort(ne.filter(t)),i=this._findConnItemsToHide(e);we.disconnect(i),this._recreateGUIDS(n),this._recreateCns(n)},_findConnItemsToHide:function(t){return W.filter(t,function(t){return 0==ne.filter([t]).length},this)},_recreateGUI